- Komponen yang Dibutuhkan:
- Penjelasan Kerja:
- Penjelasan Sirkuit:
- Penjelasan Pemrograman:
- Desain Sirkuit dan PCB menggunakan EasyEDA:
- Menghitung dan Memesan PCB secara online:
Kita sering melihat fluktuasi tegangan pada suplai listrik di rumah kita, yang dapat menyebabkan kerusakan pada peralatan AC rumah kita. Hari ini kami sedang membangun Sirkuit Perlindungan Tegangan Tinggi dan Rendah berbiaya rendah, yang akan memutus suplai daya ke peralatan jika terjadi tegangan Tinggi atau Rendah. Ini juga akan menampilkan pesan peringatan pada LCD 16x2. Dalam proyek ini, kami telah menggunakan Mikrokontroler PIC untuk membaca dan membandingkan tegangan input ke tegangan referensi dan mengambil tindakan yang sesuai.
Rangkaian ini telah kami buat pada PCB dan menambahkan rangkaian tambahan pada PCB untuk tujuan yang sama, namun kali ini menggunakan op-amp LM358 (tanpa mikrokontroler). Untuk tujuan demonstrasi, kami telah memilih batas Tegangan Rendah 150v dan batas tegangan tinggi 200v. Di sini, di proyek ini, kami belum menggunakan relai apa pun untuk terputus, kami hanya mendemonstrasikannya menggunakan LCD, periksa Video di akhir Artikel ini. Tetapi pengguna dapat memasang relai dengan sirkuit ini dan menghubungkannya dengan GPIO PIC.
Periksa lebih lanjut proyek PCB kami yang lain di sini.
Komponen yang Dibutuhkan:
- Mikrokontroler PIC PIC18F2520
- PCB (dipesan dari EasyEDA)
- IC LM358
- Konektor Terminal 3 pin (opsional)
- LCD 16x2
- BC547 Transistor
- Resistor 1k
- Resistor 2k2
- SMD resistor 30K
- 10rb SMD
- Kapasitor- 0.1uf, 10uF, 1000uF
- Dasar IC 28 pin
- Pencuri jantan / betina
- 7805 Regulator tegangan- 7805, 7812
- Programmer Pickit2
- LED
- Dioda Zener- 5.1v, 7.5v, 9.2v
- Transformer 12-0-12
- Kristal 12MHz
- Kapasitor 33pF
- Pengatur tegangan (pengatur kecepatan kipas)
Penjelasan Kerja:
Pada Rangkaian Cut Off Tegangan Tinggi dan Rendah ini, kita telah membaca tegangan AC dengan menggunakan mikrokontroler PIC dengan bantuan rangkaian trafo, penyearah jembatan & pembagi tegangan dan ditampilkan di atas LCD 16x2. Kemudian kami telah membandingkan tegangan AC dengan batas yang telah ditentukan dan menampilkan pesan peringatan melalui LCD yang sesuai. Seperti jika tegangan di bawah 150v maka kita telah menunjukkan "Tegangan Rendah" dan jika tegangan di atas 200v maka kita telah menampilkan teks "Tegangan Tinggi" di atas LCD. Kami dapat mengubah batasan tersebut dalam kode PIC yang diberikan di akhir proyek ini. Di sini kami telah menggunakan Fan Regulator untuk meningkatkan dan menurunkan tegangan masuk untuk tujuan demonstrasi di Video.
Pada rangkaian ini, kami juga telah menambahkan Rangkaian Perlindungan Tegangan Bawah dan Lebih Sederhana tanpa menggunakan mikrokontroler. Dalam rangkaian sederhana ini kami telah menggunakan komparator LM358 untuk membandingkan tegangan input dan referensi. Jadi di sini kami memiliki tiga opsi dalam proyek ini:
- Mengukur dan membandingkan tegangan AC dengan bantuan trafo, penyearah jembatan, rangkaian pembagi tegangan dan mikrokontroler PIC.
- Deteksi tegangan over dan under dengan menggunakan LM358 dengan bantuan trafo, penyearah, dan komparator LM358 (tanpa Mikrokontroler)
- Deteksi tegangan di bawah dan di atas dengan menggunakan komparator LM358 dan masukkan outputnya ke mikrokontroler PIC untuk mengambil tindakan dengan kode.
Di sini kami telah menunjukkan opsi pertama dari proyek ini. Di mana kami telah menurunkan tegangan input AC dan kemudian mengubahnya menjadi DC dengan menggunakan penyearah jembatan dan kemudian memetakan kembali tegangan DC ini ke 5v dan akhirnya memasukkan tegangan ini ke mikrokontroler PIC untuk perbandingan dan tampilan.
Di mikrokontroler PIC kita telah membaca tegangan DC yang dipetakan ini dan berdasarkan nilai yang dipetakan itu kita telah menghitung tegangan AC yang masuk dengan bantuan rumus yang diberikan:
volt = ((adcValue * 240) / 1023)
di mana adcValue adalah nilai tegangan input DC ekuivalen pada pengontrol PIC pin ADC dan volt adalah tegangan AC yang diterapkan. Di sini kami telah mengambil 240v sebagai tegangan input maksimum.
atau sebagai alternatif kita dapat menggunakan metode yang diberikan untuk memetakan nilai input DC yang setara.
volt = peta (adcVlaue, 530, 895, 100, 240)
dimana adcValue adalah nilai tegangan input DC ekuivalen pada pin ADC kontroler PIC, 530 adalah ekuivalen tegangan DC minimum dan 895 adalah nilai ekivalen tegangan DC maksimum. Dan 100v adalah tegangan pemetaan minimum dan 240v adalah tegangan pemetaan maksimum.
Berarti input 10mV DC pada pin PIC ADC sama dengan nilai ekuivalen 2.046 ADC. Jadi di sini kami telah memilih 530 sebagai sarana nilai minimum, tegangan pada pin ADC PIC adalah:
(((530 / 2.046) * 10) / 1000) Volt
2.6v yang akan dipetakan nilai minimum 100VAC
(Perhitungan yang sama untuk batas maksimum).
Periksa fungsi peta diberikan dalam kode program PIC pada akhirnya. Pelajari lebih lanjut tentang Rangkaian Pembagi Tegangan dan pemetaan Tegangan menggunakan ADC di sini.
Mengerjakan proyek ini mudah. Dalam proyek ini, kami telah menggunakan regulator kipas tegangan AC untuk mendemonstrasikannya. Kami telah memasang regulator kipas ke input trafo. Dan kemudian dengan meningkatkan atau menurunkan resistansinya, kami mendapatkan output tegangan yang diinginkan.
Dalam kode, kami telah menetapkan nilai tegangan maksimum dan minimum untuk deteksi tegangan tinggi dan tegangan rendah. Kami telah memperbaiki 200v sebagai batas tegangan berlebih dan 150v sebagai batas tegangan rendah. Sekarang setelah menyalakan rangkaian, kita dapat melihat tegangan input AC di atas LCD. Ketika tegangan input meningkat maka kita dapat melihat perubahan tegangan di atas LCD dan jika tegangan menjadi lebih dari batas tegangan maka LCD akan mengingatkan kita dengan “Peringatan Tegangan TINGGI” dan jika tegangan turun dari batas bawah tegangan maka LCD akan memperingatkan kita dengan menunjukkan “ Pesan LOW Voltage Alert. Dengan cara ini dapat juga digunakan sebagai Pemutus Sirkuit Elektronik.
Kami selanjutnya dapat menambahkan relai untuk memasang peralatan AC apa pun ke pemutusan otomatis pada tegangan rendah atau tinggi. Kita hanya perlu menambahkan sebaris kode untuk mematikan alat, di bawah pesan peringatan LCD yang menunjukkan kode. Cek di sini untuk menggunakan Relay dengan peralatan AC.
Penjelasan Sirkuit:
Pada Rangkaian Proteksi Tegangan Tinggi dan Rendah, kami telah menggunakan op-amp LM358 yang memiliki dua buah keluaran yang dihubungkan ke 2 dan 3 pin nomor mikrokontroler PIC. Dan pembagi tegangan digunakan untuk membagi tegangan dan menghubungkan keluarannya pada pin nomor 4 mikrokontroler PIC. LCD terhubung ke PORTB dari PIC dalam mode 4-bit. RS dan EN terhubung langsung di B0 dan B1 dan pin data D4, D5, D6 dan D7 dari LCD masing-masing terhubung di B2, B3, B4 dan B5. Dalam proyek ini, kami telah menggunakan dua regulator tegangan: 7805 untuk suplai mikrokontroler dan 7812 untuk rangkaian LM358. Dan trafo step-down 12v-0-12v juga digunakan untuk menurunkan tegangan AC. Komponen lainnya ditunjukkan pada diagram rangkaian di bawah ini.
Penjelasan Pemrograman:
Bagian pemrograman dari proyek ini mudah. Pada kode ini, kita hanya perlu menghitung tegangan AC dengan menggunakan peta tegangan 0-5v yang berasal dari Rangkaian Pembagi Tegangan dan kemudian membandingkannya dengan nilai yang telah ditentukan. Anda dapat memeriksa kode PIC lengkap setelah proyek ini.
Pertama, dalam kode, kami telah menyertakan header dan mengkonfigurasi bit konfigurasi mikrokontroler PIC. Jika Anda baru mengenal pengkodean PIC, pelajari Mikrokontroler PIC dan bit konfigurasinya di sini.
Kemudian kita telah menggunakan beberapa fungsi untuk menggerakkan LCD, seperti void lcdbegin () untuk menginisialisasi LCD, void lcdcmd (char ch) untuk mengirim perintah ke LCD, void lcdwrite (char ch) untuk mengirim data ke LCD dan void lcdprint (char *) str) untuk mengirim string ke LCD. Periksa semua fungsi dalam kode di bawah ini.
Di bawah fungsi yang diberikan digunakan untuk memetakan nilai:
peta panjang (x panjang, masuk_min panjang, waktu masuk_maks lama, waktu habis_min, batas maksimum_luar) {return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; }
Diberikan int analogRead (int ch) fungsi digunakan untuk menginisialisasi dan membaca ADC:
int analogRead (int ch) {int adcData = 0; jika (ch == 0) ADCON0 = 0x03; // adc saluran 0 lain jika (ch == 1) ADCON0 = 0x0b; // pilih saluran adc 1 lain jika (ch == 2) ADCON0 = 0x0b; // pilih saluran adc 2 ADCON1 = 0b00001100; // pilih analog i / p 0,1 dan 2 saluran ADC ADCON2 = 0b10001010; // eqisation time holding cap time while (GODONE == 1); // mulai konversi adc value adcData = (ADRESL) + (ADRESH << 8); // Simpan keluaran 10-bit ADON = 0; // adc off return adcData; }
Garis yang diberikan digunakan untuk mendapatkan sampel ADC dan menghitung rata-ratanya dan kemudian menghitung tegangan:
sementara (1) {long adcValue = 0; volt int = 0; untuk (int i = 0; i <100; i ++) // mengambil sampel {adcValue + = analogRead (2); penundaan (1); } adcValue / = 100; #if metode == 1 volt = (((float) adcValue * 240.0) /1023.0); #else volt = map (adcValue, 530, 895, 100, 240); #endif sprintf (hasil, "% d", volt);
Dan akhirnya fungsi yang diberikan digunakan untuk mengambil tindakan yang dihasilkan:
jika (volt> 200) {lcdcmd (1); lcdprint ("Tegangan Tinggi"); lcdcmd (192); lcdprint ("Peringatan"); penundaan (1000); } lain jika (volt <150) {lcdcmd (1); lcdprint ("Tegangan Rendah"); lcdcmd (192); lcdprint ("Peringatan"); penundaan (1000); }
Desain Sirkuit dan PCB menggunakan EasyEDA:
Untuk merancang Rangkaian Detektor Tegangan TINGGI dan RENDAH ini, kami telah memilih alat EDA online yang disebut EasyEDA. Kami sebelumnya telah menggunakan EasyEDA berkali-kali dan merasa sangat nyaman digunakan dibandingkan dengan pabrikan PCB lainnya. Periksa di sini semua proyek PCB kami. EasyEDA tidak hanya solusi satu atap untuk pengambilan skema, simulasi sirkuit dan desain PCB, mereka juga menawarkan layanan Sumber Prototipe dan Komponen PCB berbiaya rendah. Mereka baru-baru ini meluncurkan layanan sumber komponen di mana mereka memiliki stok besar komponen elektronik dan pengguna dapat memesan komponen yang diperlukan bersama dengan pesanan PCB.
Saat mendesain sirkuit dan PCB, Anda juga dapat membuat desain sirkuit dan PCB Anda menjadi publik sehingga pengguna lain dapat menyalin atau mengeditnya dan dapat memanfaatkannya, kami juga telah mempublikasikan seluruh rangkaian Sirkuit dan PCB untuk Tegangan Tinggi dan Rendah ini. Sirkuit Perlindungan, periksa tautan di bawah ini:
easyeda.com/circuitdigest/HIGH_LOW_Voltage_Detector-4dc240b0fde140719c2401096e2410e6
Di bawah ini adalah Snapshot dari Top layer layout PCB dari EasyEDA, Anda dapat melihat Layer (Top, Bottom, Topsilk, bottomsilk dll) dari PCB dengan memilih layer dari Window 'Layers'.
Anda juga dapat melihat tampilan Foto PCB menggunakan EasyEDA:
Menghitung dan Memesan PCB secara online:
Setelah menyelesaikan desain PCB, Anda dapat mengklik ikon output Fabrikasi di atas. Kemudian Anda akan mengakses halaman urutan PCB untuk mengunduh file Gerber dari PCB Anda dan mengirimkannya ke produsen mana pun, juga jauh lebih mudah (dan lebih murah) untuk memesannya langsung di EasyEDA. Disini anda bisa memilih jumlah PCB yang ingin anda pesan, berapa lapisan tembaga yang anda butuhkan, ketebalan PCB, berat tembaga, bahkan warna PCB. Setelah Anda memilih semua opsi, klik "Simpan ke Keranjang" dan selesaikan pesanan Anda, kemudian Anda akan mendapatkan PCB Anda beberapa hari kemudian. Pengguna juga dapat pergi dengan vendor PCB lokal mereka untuk membuat PCB dengan menggunakan file Gerber.
Pengiriman EasyEDA sangat cepat dan setelah beberapa hari memesan PCB, saya mendapat sampel PCB:
Di bawah ini adalah gambar - gambar setelah menyolder komponen pada PCB:
Inilah cara kita dengan mudah membangun sirkuit proteksi tegangan rendah-tinggi untuk rumah kita. Selanjutnya Anda hanya perlu menambahkan relai untuk menghubungkan peralatan AC apa pun ke sana, untuk melindunginya dari fluktuasi tegangan. Cukup sambungkan relai dengan Pin tujuan umum PIC MCU dan tulis kode untuk membuat pin itu Tinggi dan rendah bersama dengan kode pesan peringatan LCD.