Daftar Isi:
- Langkah 1: Persyaratan Perangkat Keras
- Langkah 2: Mikrokontroler CloudX M633
- Langkah 3: Pin Koneksi
- Langkah 4: Diagram Sirkuit
- Langkah 5: Prinsip Operasi
- Langkah 6: Program Perangkat Lunak
Video: Voltmeter Digital Dengan CloudX: 6 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Baterai memberikan bentuk daya DC (arus searah) yang lebih murni ketika digunakan di sirkuit. Tingkat kebisingannya yang rendah selalu membuatnya sangat cocok untuk beberapa sirkuit yang sangat sensitif. Namun, pada saat level tegangannya turun di bawah titik ambang tertentu, sirkuit (yang dimaksudkan untuk memberi daya), mungkin masuk ke dalam perilaku yang tidak menentu; terutama ketika mereka tidak dirancang dengan baik untuk menangani itu.
Oleh karena itu, timbul kebutuhan untuk secara teratur memantau tingkat daya baterai untuk memandu kita dengan tepat kapan waktunya untuk penggantian total, atau pengisian daya dalam kasus baterai yang dapat diisi ulang. Oleh karena itu, pada DIY (Do It Yourself) kali ini, kami akan mendesain pengukur tegangan baterai sederhana menggunakan CloudX –menggunakan 7Segment sebagai tampilan kami.
Langkah 1: Persyaratan Perangkat Keras
Modul Mikrokontroler CloudX
CloudX USB
SoftCard
Tampilan 7Segmen
Resistor
Unit Catu Daya
Papan tempat memotong roti
Kabel Jumper (Menghubungkan)
Langkah 2: Mikrokontroler CloudX M633
Modul Mikrokontroler CloudX
Modul CloudX adalah alat perangkat keras desain elektronik yang memungkinkan Anda berinteraksi dengan dunia fisik dengan lebih nyaman dan mudah melalui papan mikrokontroler sederhana. Seluruh platform didasarkan pada komputasi fisik sumber terbuka. Kesederhanaan IDE (Integrated Development Environment) benar-benar membuatnya sangat cocok untuk pemula, namun tetap mempertahankan fungsionalitas yang cukup untuk memungkinkan pengguna akhir tingkat lanjut menavigasi jalan mereka. Singkatnya, CloudX menyediakan proses penanganan mikrokontroler yang jauh lebih disederhanakan dengan mengabstraksikan detail kompleks normal yang terkait dengannya; sementara pada saat yang sama menawarkan platform pengalaman pengguna yang sangat kaya. Ia menemukan aplikasi yang luas memotong seluruh papan: sekolah, sebagai alat Pendidikan yang hebat; produk industri dan komersial; dan sebagai alat utilitas yang hebat di tangan seorang penghobi.
Langkah 3: Pin Koneksi
Pin 7-segmen: A, B, C, D, E, F, G, 1, 2 dan 3 terhubung ke pin1 CloudX-MCU, pin2, pin3, pin4, pin5, pin6, pin7, pin8, pin9, pin10 dan pin11 masing-masing.
Langkah 4: Diagram Sirkuit
Modul mikrokontroler, yang menjadi pusat perhatian di sini, dapat dinyalakan:
baik melalui titik Vin dan Gnd (yaitu menghubungkannya ke terminal +ve dan –ve unit catu daya eksternal Anda masing-masing) di papan tulis;
atau melalui modul kartu lunak USB CloudX Anda
. Lebih dari itu, seperti dapat dengan mudah dilihat dari diagram rangkaian di atas, tegangan baterai input dihubungkan dengan modul MCU (mikrokontroler) sedemikian rupa sehingga titik – dari jaringan pembagi tegangan (dibentuk oleh dan) terhubung ke A0 dari pin MCU.
dan dipilih sedemikian rupa untuk:
membatasi jumlah arus yang mengalir melalui jaringan;
batas dalam kisaran aman (0 – 5)V untuk MCU.
Menggunakan rumus: VOUT = (R2/(R1+R2)) * VIN; dan dapat dengan mudah dievaluasi.
Voutmaks = 5V
dan untuk proyek ini, kami memilih: Vinmax = 50V;
5 = (R2/(R1+R2)) * 50 R1 = 45/5 * R2 Mengambil R2 = 10kΩ misalnya; R1 = 45/5 * 10 = 90kΩ
Langkah 5: Prinsip Operasi
Ketika tegangan input terukur dibaca melalui titik VOUT jaringan pembagi tegangan, data diproses lebih lanjut di MCU untuk dievaluasi ke nilai aktual akhir yang ditampilkan pada unit segmen. Ini (desain sistem) adalah placer titik desimal otomatis, dalam hal itu (titik desimal) benar-benar menggeser posisi pada unit tampilan itu sendiri sesuai dengan apa yang ditentukan oleh nilai float pada titik waktu tertentu. Kemudian, seluruh unit tampilan 7-Segmen perangkat keras dihubungkan dalam mode multipleks. Ini adalah pengaturan khusus dimana bus data yang sama (8-pin data) dari MCU mengumpankan tiga segmen 7 aktif di unit tampilan. Mengirim pola data ke masing-masing bagian komponen dicapai dengan proses yang disebut sebagai Scanning. Pemindaian adalah teknik yang melibatkan pengiriman data ke masing-masing komponen 7-segmen; dan mengaktifkan (yaitu menyalakan) secara berurutan saat data masing-masing tiba. Tingkat pengalamatan masing-masing dilakukan sedemikian rupa sehingga berhasil menipu penglihatan manusia menjadi percaya bahwa semuanya (bagian komponen) diaktifkan (ditangani) pada saat yang bersamaan. Ini (pemindaian) sederhana, pada dasarnya, menggunakan fenomena yang dikenal sebagai Persistence Of Vision.
Langkah 6: Program Perangkat Lunak
#termasuk
#termasuk
#termasuk
#tentukan segmen1 pin9
#tentukan segmen2 pin10
#tentukan segmen3 pin11
float batt_voltage;
int desimalPoint, batt;
/*array yang menyimpan pola-segmen untuk setiap digit yang diberikan*/
char CCathodeDisp = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};
char CAnodeDisp = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90};
int disp0, disp1, disp2;
menampilkan() {
karakter i yang tidak ditandatangani;
if(titik desimal < 10) {
disp0 = (int)batt_voltage /100; //mengambil MSD (Digit Paling Penting)
//menjadi bobot tertinggi
/* mengambil digit berbobot berikutnya; dan seterusnya */
disp1 = ((int)batt_voltage % 100)/10;
disp2 = ((int)batt_voltage % 10);
}
lain {
disp0 = (int)batt_voltage /1000;
disp1 = ((int)batt_voltage % 1000)/100;
disp2 = ((int)batt_voltage % 100)/10;
}
/*Pola dituangkan untuk ditampilkan; dan karakter 0x80 menambahkan titik desimal
jika kondisi terkait benar*/
untuk(i=0; i<50; i++) {
pin9 = pin10 = pin11 = TINGGI;
if(titik desimal < 10)
portWrite(1, CCathodeDisp[disp0] | 0x80);
else portWrite(1, CCathodeDisp[disp0]);
segmen1 = RENDAH;
segmen2 = TINGGI;
segmen3 = TINGGI;
delayMs(5);
pin9 = pin10 = pin11 = TINGGI;
if((titik desimal >= 10) && (titik desimal < 100))
portWrite(1, CCathodeDisp[disp1] | 0x80);
else portWrite(1, CCathodeDisp[disp1]);
segmen1 = TINGGI;
segmen2 = RENDAH;
segmen3 = TINGGI;
delayMs(5);
pin9 = pin10 = pin11 = TINGGI;
if (titik desimal >= 100)
portWrite(1, CCathodeDisp[disp2] | 0x80);
else portWrite(1, CCathodeDisp[disp2]);
segmen1 = TINGGI;
segmen2 = TINGGI;
segmen3 = RENDAH;
delayMs(5);
}
}
setup(){ //setup disini
pengaturan analog(); //port analog diinisialisasi
portMode(1, OUTPUT); //Pin 1 hingga 8 dikonfigurasi sebagai pin output
/* pin pindai dikonfigurasi sebagai pin keluaran */
pin9Mode = KELUARAN;
pin10Mode = KELUARAN;
pin11Mode = KELUARAN;
portWrite(1, RENDAH);
pin9 = pin10 = pin11 = TINGGI; // pindai pin (yang aktif-rendah)
// dinonaktifkan di awal
loop(){ //Program di sini
batt_voltage = analogRead(A0); //mengambil nilai terukur
batt_voltage = ((batt_voltage * 5000) / 1024); //faktor konversi untuk 5Vin
batt_voltage = (batt_voltage * 50)/5000; //faktor konversi untuk 50Vin
desimalPoint = batt_voltage; //menandai di mana titik desimal muncul
//nilai asli sebelum manipulasi data
menampilkan();
}
}
Direkomendasikan:
Waveshare E-ink Display Precise Voltmeter (0-90v DC) Dengan Arduino Nano: 3 Langkah
Waveshare E-ink Display Precise Voltmeter (0-90v DC) Dengan Arduino Nano: Dalam Instruksi ini, saya menggunakan tampilan Waveshare E-Paper 2,9 '' dengan Arduino Nano, pembagi tegangan, dan ADS1115 untuk menampilkan voltase presisi hingga 90 volt DC pada Tampilan E-Paper. Instruksi ini menggabungkan dua proyek sebelumnya:- Ardui
Voltmeter AC Menggunakan Arduino: 3 Langkah (dengan Gambar)
Voltmeter AC Menggunakan Arduino: Ini adalah rangkaian sederhana untuk memastikan tegangan AC menggunakan Arduino UNO tanpa voltmeter AC!! NIKMATI
Voltmeter Arduino Digital: 3 Langkah
Digital Arduino Voltmeter: Voltmeter atau Pengukur Tegangan adalah alat ukur yang digunakan untuk mengukur tegangan
Voltmeter Digital Isi Ulang Menggunakan ICL7107 ADC: 7 Langkah (dengan Gambar)
Voltmeter Digital Rechargeable Menggunakan ICL7107 ADC: Dalam tutorial ini saya akan menunjukkan cara membuat voltmeter digital super sederhana yang dapat mengukur tegangan dari 20 mV hingga 200V. Proyek ini tidak akan menggunakan mikrokontroler seperti arduino. Sebagai ganti ADC, yaitu ICL7107 akan digunakan dengan beberapa passi
Voltmeter Digital: 5 Langkah
Voltmeter Digital: Ini adalah Voltmeter DIY yang Mudah digunakan dan Murah. Total biaya pembuatan proyek ini kurang dari INR 200 atau $2,5 saja