Proses manufaktur
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
| ||||
|
|
Hai,
Apakah Anda lelah berakhir setelah setiap proyek selesai dalam situasi seperti ini?
Apakah Anda seorang pria berantakan yang terlalu malas untuk memeriksa kode warna pada setiap resistor untuk mengurutkannya berdasarkan resistansi? Apakah Anda sangat malas bahkan menggunakan multimeter terlalu banyak? Daripada mungkin ada solusi untuk Anda, ohmmeter malas utama!
Yang Anda perlukan untuk membangun ohmmeter sederhana ini yang akan memeriksa nilai resistansi yang tidak disortir adalah sekumpulan resistor (nilai yang diketahui kali ini), Arduino, dan layar (saya menggunakan layar OLED I2C untuk milik saya).
Kami kemudian akan mengandalkan persamaan pembagi tegangan untuk mendapatkan nilai resistor yang tidak diketahui secara seri dengan resistor dengan nilai yang diketahui. Teknik sederhana ini hanya memiliki satu kelemahan. Semakin banyak dua resistor berbeda, semakin tidak akurat pengukuran kami. Untuk mengatasi fenomena ini kita perlu menggunakan beberapa resistor dan menulis kode yang memungkinkan Arduino untuk memilih resistor yang paling cocok untuk perhitungan nilai yang tidak diketahui.
Mengikuti filosofi ini kita dapat membangun Ohmmeter mengikuti skema pada gambar di bawah ini.
Jika Anda menggunakan layar I2C, Anda juga dapat mengikuti skema untuk itu. Arduino Nano menggunakan pin A4 untuk SDA dan A5 untuk SCL.
Sekarang mari kita fokus pada bagian pengkodean. Kode yang saya gunakan dapat dilihat di sini:
#include #include #include [...] int R1 =100;int R2 =1000;int R3 =10000;long R4 =100000;panjang R5 =1000000;Rn panjang;int D2 =2;int D3 =3;int D4 =4;int D5 =5;int D6 =6;float mentah =0;float Vout =0;float Ru =0; int Analogohm =A0;pengaturan batal() { [...]}loop batal() { pinMode(D2, OUTPUT); pinMode(D3, INPUT); pinMode(D4, INPUT); pinMode(D5, INPUT); pinMode(D6, INPUT); digitalWrite(D2, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 1M"); Rn =R5; if (mentah <350 || mentah> 800){ digitalWrite(D2, LOW); pinMode(D2, INPUT); pinMode(D3, OUTPUT); digitalWrite(D3, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 100k"); Rn =R4; if (mentah <350 || mentah> 800){ digitalWrite(D3, LOW); pinMode(D3, INPUT); pinMode(D4, OUTPUT); digitalWrite(D4, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 10k"); Rn =R3; if (mentah <350 || mentah> 800){ digitalWrite(D4, RENDAH); pinMode(D4, INPUT); pinMode(D5, OUTPUT); digitalWrite(D5, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 1000"); Rn =R2; if (mentah <350 || mentah> 800){ digitalWrite(D5, LOW); pinMode(D5, INPUT); pinMode(D6, OUTPUT); digitalWrite(D6, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 100"); Rn =R1; } } } } Vout =5*(mentah/1024); Ru =(Rn*Vout)/(5-Vout); if (Ru <10 || Ru <70) { Ru =10 *bulat(Ru/10); } else if (Ru <100 || Ru <700){ Ru =100 *bulat(Ru/100); } else if (Ru <1000 || Ru <7000){ Ru =1000 *bulat(Ru/1000); } else if (Ru <10000 || Ru <70000){ Ru =10000 *bulat(Ru/10000); } else if (Ru <100000 || Ru <700000){ Ru =100000 *bulat(Ru/100000); } else if (Ru <1000000 || Ru <7000000){ Ru =1000000 *bulat(Ru/1000000); } Perlawanan (Ru); delay(1000);}[...]
Untuk layar OLED, saya hanya menggunakan library Adafruit. Anda hanya perlu mengunduhnya melalui Manajer Perpustakaan Arduino IDE dan menyalin kode yang Anda butuhkan. Saya menggunakan dua bitmap hanya untuk membuat pembacaan lebih bagus, Anda dapat dengan mudah menambahkan bitmap atau mengganti yang saya tambahkan.
Untuk bagian ohmmeter, Anda perlu memahami cara kerjanya karena Anda dapat mengubahnya tergantung pada berapa banyak resistor yang Anda gunakan sebagai nilai referensi.
Setelah kode masuk ke void loop, Arduino akan memeriksa tegangan pada pin A0. Karena dari persamaan pembagi tegangan:
V0 =Vi*R2/(R1+R2)
Jika R1 dan R2 sama, kita harus memiliki V0 mendekati 2.5V (dengan demikian 512 pada pembacaan 10 bit kita).
Jika nilainya jauh dari hasil tersebut, maka kode tersebut berpindah ke nilai berikutnya dan seterusnya sampai kita mendapatkan resistor terdekat. Setelah kondisi "resistensi dekat" terpenuhi, nilainya akan dicetak pada layar.
CATATAN #1: Pada setiap pernyataan IF kita perlu mendefinisikan ulang pinMode dari setiap pin digital, karena jika Anda menyimpannya sebagai output, itu akan berperilaku sebagai pin impedansi rendah dan mengacaukan pengukuran kita pada pin A0.
Setelah resistor yang tepat telah dipilih, nilai resistor yang tidak diketahui (variabel Ru di dalam kode) dihitung menggunakan persamaan pembagi tegangan.
CATATAN #2: Untuk perangkat ini saya hanya menggunakan 5 resistor, tetapi jika Anda suka, Anda dapat memiliki nilai yang jauh lebih banyak untuk setiap pin digital di papan.
Foto di bawah sistem yang dibangun di atas papan tempat memotong roti.
Sekarang untuk aplikasi nyata, kita perlu membuat semacam kotak di mana kita dapat mencolokkan resistor yang tidak diketahui dan hasilnya akan ditampilkan di layar.
Kotak yang saya buat dapat dengan mudah dicetak dengan printer 3D dan semua bagian dapat direkatkan dengan lem. Beberapa penyolderan resistor yang diketahui diperlukan untuk membuat semuanya muat dalam volume kecil.
Tinggal satu hal lagi:colokkan resistor yang belum disortir ke lubang kecil itu dan bersihkan meja kerja Anda!
Selamat bersenang-senang dan sampai jumpa di tutorial berikutnya.
EDIT:Saya memodifikasi bagian pembulatan kode karena dapat menyebabkan kesalahan saat membulatkan resistor 5k. Dengan perubahan ini masalah harus diselesaikan. Bagaimanapun menambahkan resistor 5k di antara referensi harus mencegah masalah sama sekali.
#include#include #include #include #define SCREEN_WIDTH 128 // Lebar layar OLED, dalam piksel#define SCREEN_HEIGHT 64 // Tinggi layar OLED, dalam piksel// Deklarasi untuk layar SSD1306 yang terhubung ke I2C ( SDA, pin SCL)#define OLED_RESET 4 // Reset pin # (atau -1 jika berbagi pin reset Arduino)Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);const unsigned char myLOGO [] PROGMEM ={ 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xf9, 0xff, 0x80 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x00, 0x7f, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x007, 0x00 0xff, 0xff, 0xe0, 0x00, 0x3f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xfc, 0x00, 0x00, 0x0f, 0xfc, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xe0, 0x00, 0x00, 0x03, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff 0x00, 0x00, 0x01, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xfe, 0x00, 0x00, 0xff, 0xc0, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xe0, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff,3f 0xf8, 0x01, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xfc, 0x00, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xfc, 0x00, 0x3f, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00 0x0f, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfc, 0x00, 0x01, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x00, 0x7f, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xfc, 0x 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xc0, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xfc, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xfe, 0x07, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xfe, 0x07 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xfe, 0x03, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x1f, 0xfe, 0x00, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xe0, 0x3f, 0,x 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xfe, 0x0f, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x03, 0xff, 0xff, 0xe7, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x01, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0x80, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xf0, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x01, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};const unsigned char myBitmap [] PROGMEM ={ 0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0 0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0 0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0 0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0 0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x 00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x60, 0x00 0x01, 0xf8, 0x18, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x00, 0x00, 0x07, 0x80, 0x18, 0x00, 0x 00, 0x03, 0xc0, 0x06, 0x00, 0x00, 0x00, 0x01, 0xf8, 0x60, 0x00, 0x00, 0x00, 0xf8, 0x0c, 0x00, 0x00, 0x00, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x 0x18, 0x00, 0x00, 0x00, 0x0f, 0x03, 0x80, 0x00, 0x00, 0x07, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x7c, 0x1c, 0x00, 0x00, 0x00, 0x03, 0xe0, 0xe0, 0x 0x00, 0xf0, 0x38, 0x00, 0x00, 0x00, 0x1e, 0x03, 0x80, 0x00, 0x00, 0x00, 0x3c, 0x60, 0x00, 0x00, 0x00, 0x0e, 0x38, 0x00, 0x00, 0x00, 0x03, 00 0x00, 0x00, 0x00, 0x0f, 0x9c, 0x00, 0x00, 0x00, 0x07, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x38, 0x60, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x80, 0x00, 0,00 0x3f, 0xc0, 0x00, 0x00, 0x00, 0x07, 0x9c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x 00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};int R1 =100;int R2 =1000;int R3 =10000;panjang R4 =100000;panjang R5 =1000000;panjang Rn;int D2 =2;int D3 =3;int D4 =4;int D5 =5;int D6 =6;float raw =0;float Vout =0; float Ru =0;int Analogohm =A0;pengaturan batal() { Serial.begin(9600); if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println(F("Alokasi SSD1306 gagal")); untuk(;;); } tampilan.clearDisplay(); display.drawBitmap(0,0, myLOGO, 128, 64, WHITE); tampilan.display(); delay(2000);}void loop() { pinMode(D2, OUTPUT); pinMode(D3, INPUT); pinMode(D4, INPUT); pinMode(D5, INPUT); pinMode(D6, INPUT); digitalWrite(D2, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 1M"); Rn =R5; if (mentah <350 || mentah> 800){ digitalWrite(D2, LOW); pinMode(D2, INPUT); pinMode(D3, OUTPUT); digitalWrite(D3, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 100k"); Rn =R4; if (mentah <350 || mentah> 800){ digitalWrite(D3, LOW); pinMode(D3, INPUT); pinMode(D4, OUTPUT); digitalWrite(D4, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 10k"); Rn =R3; if (mentah <350 || mentah> 800){ digitalWrite(D4, RENDAH); pinMode(D4, INPUT); pinMode(D5, OUTPUT); digitalWrite(D5, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 1000"); Rn =R2; if (mentah <350 || mentah> 800){ digitalWrite(D5, LOW); pinMode(D5, INPUT); pinMode(D6, OUTPUT); digitalWrite(D6, TINGGI); mentah =analogRead(Analogohm); Serial.println(mentah); Serial.println("ref 100"); Rn =R1; } } } } Vout =5*(mentah/1024); Ru =(Rn*Vout)/(5-Vout); if (Ru <10 || Ru <70) { Ru =10 *bulat(Ru/10); } else if (Ru <100 || Ru <700){ Ru =100 *bulat(Ru/100); } else if (Ru <1000 || Ru <7000){ Ru =1000 *bulat(Ru/1000); } else if (Ru <10000 || Ru <70000){ Ru =10000 *bulat(Ru/10000); } else if (Ru <100000 || Ru <700000){ Ru =100000 *bulat(Ru/100000); } else if (Ru <1000000 || Ru <7000000){ Ru =1000000 *bulat(Ru/1000000); } Perlawanan (Ru); delay(1000);}void Resistance(long Ru) { display.clearDisplay(); tampilan.setTextSize(1); display.setTextColor(PUTIH); display.setCursor(0,0); display.println(F("Hai, ")); display.println(F("Nilai Resistor adalah")); display.setCursor(20,25); display.setTextSize(2); display.setTextColor(PUTIH); display.print(Ru); display.print(F("Ohm")); display.drawBitmap(0,0, myBitmap, 128, 64, PUTIH); tampilan.display(); delay(2000);}
Proses manufaktur
Komponen dan persediaan Arduino UNO × 1 Adafruit LCD Standar - 16x2 Putih di Atas Biru × 1 Sakelar Tombol Tekan SparkFun 12mm × 4 Resistor 10k ohm × 4 Resistor 221 ohm Yah, 220 ohm... × 2 Potensiometer Putaran Tunggal- 100k ohm × 1
Komponen dan persediaan Arduino UNO × 1 Adafruit LCD Standar - 16x2 Putih di Atas Biru × 1 Sakelar Tombol Tekan SparkFun 12mm × 1 Ukuran Setengah Papan Tempat Memotong Roti Perma-Proto × 1 Kabel jumper (generik) × 1 Resistor 1k ohm × 1
Bagaimana Cara Menghitung &Menemukan Nilai Resistor Resistor SMD &EIA-96 SMD? Resistor SMD:Teknologi Pemasangan Permukaan SMD Resistor adalah singkatan dari Resistor “Surface Mount device” (Diambil dari SMT =Surface Mount Technology). Chip kecil ini ditandai dengan tiga (3) atau empat (4) kode di
Kehidupan seorang programmer cukup sulit. Mengapa tidak membuat hidup Anda lebih mudah dan mengalihdayakan kontrol versi proyek Anda ke beberapa layanan khusus? Sebagian besar programmer di dunia IT akrab dengan Git, tetapi untuk beberapa programmer OT di komunitas ini, ini adalah konsep baru. Ketik