Daftar Isi:
- Langkah 1: Bahan
- Langkah 2: Konstruksi Arduino
- Langkah 3: Mengkode Arduino
- Langkah 4: Opsional: Layar LCD
- Langkah 5: Bagian yang Dicetak
- Langkah 6: Penempatan
Video: Motor Stepper Terkendali Ringan + Braket Dinding / Penyangga: 6 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Dudukan ini digunakan untuk menampung motor stepper yang dikendalikan Arduino, yang dirancang untuk mengontrol tirai secara otomatis sesuai dengan tingkat cahaya di dalam ruangan. Anda juga dapat menambahkan layar LCD untuk mencetak tingkat cahaya. Perlengkapan 3D hanya untuk demonstrasi, perlengkapan nyata mungkin diperlukan untuk aplikasi praktis seperti tirai tetapi juga aplikasi lain yang dapat Anda pikirkan.
Langkah 1: Bahan
Untuk memulai proyek ini Anda perlu;
- 2 chip-set Arduino- Sebuah pelindung motor Arduino- Layar LCD Arduino- 1 Breadboard- 1 Motor Stepper bi-polar- Baterai 1 D- 1 Light Dependent Resistor - 1 10k Resistor- 10 Kabel Male-male- 6 Male- kabel wanita- Akses ke printer 3D
Langkah 2: Konstruksi Arduino
Pertama-tama sejajarkan pelindung motor dengan pin Arduino dan setelah dipasang, letakkan dengan kuat. Selanjutnya pasang kabel motor stepper ke pin 8, 9, 10 dan 11 dari pelindung motor. Setelah itu sambungkan baterai D di slot seperti yang ditunjukkan pada diagram. Selanjutnya Anda akan ingin mendapatkan 6 kabel (jantan ke betina) untuk layar LCD dan hubungkan ke unit Arduino lain seperti yang ditunjukkan pada diagram rangkaian. Kemudian atur LDR seperti yang ditunjukkan di atas, dengan resistor yang terhubung ke baris negatif. Saat menambahkan LDR, di sisi dengan resistor, tambahkan koneksi A0 dan di sisi yang berlawanan, tambahkan 1 input 5V untuk setiap papan yang Anda gunakan, jadi jika Anda menggunakan 2 papan, Anda akan ingin masing-masing memiliki pin 5V dan A0 yang menuju ke LDR.
Hubungkan semua kabel sehingga sama dengan diagram- 2 Input ke LDR- 2 Output dari LDR dan resistor yang terhubung ke ground- 8 kabel ke LCD, 1 5V, 1 Ground dan 6 input- 4 kabel yang terhubung ke stepper- 2 koneksi ke baterai- Tanah papan tempat memotong roti harus terhubung
Langkah 3: Mengkode Arduino
Berikut adalah beberapa contoh kode untuk mengubah status gigi berdasarkan LDR
Ini adalah kode yang memungkinkan proyek mengontrol tirai secara otomatis. Foto di atas menjelaskan jalur yang berbeda melalui pernyataan IF bersarang dalam hal tirai naik, turun atau tetap di tempatnya. (klik pada gambar untuk melihatnya secara penuh karena ada masalah pemformatan)
#defineLDRA0//Mendefinisikan variabel "LDR" ke pin A0#include
constintstepsPerRevolution=200;//Saat motor stepper diaktifkan, putaran penuhnya sama dengan 200 langkah
SteppermyStepper(stepsPerRevolution, 8, 9, 10, 11);//Mendefinisikan input ke stepper sebagai pin 8, 9, 10, 11
voidsetup(){myStepper.setSpeed(60);//Menyetel seberapa cepat motor melakukan rotasipinMode(LDR, INPUT);//Mendefinisikan variabel "LDR" sebagai input Serial.begin(9600);//Memulai pembacaan serial }
voidloop(){intlightlevel=analogRead(LDR);//Mendefinisikan variabel "lightlevel" sebagai tindakan yang membaca nilai "LDR"Serial.print("Light Level: ");Serial.println(lightlevel);// Mencetak nilai "lightlevel" dengan keterangan di atas
/* Sekarang ada loop yang mendeteksi level cahaya di setiap titik * 3 opsi tersedia, naik, turun, tetap di posisi yang sama* Ini dirancang agar jika level cahaya tetap sama, itu akan tetap sama, jika tidak maka akan berubah* yaitu jika 950, kemudian menjadi 952, tidak akan terjadi apa-apa, namun jika berubah dari 950 menjadi 600 akan menarik tirai ke atas dan sebaliknya * Setiap langkah ditandai dengan huruf di depan langkah untuk melacak di mana ia berada di loop melalui monitor serial */
if(lightlevel>=900){Serial.println("A");// Langkah mana yang ada di loopmyStepper.step(3*stepsPerRevolution);//Stepper membuat 3 putaran maju. Jika negatif, ia berjalan ke belakangdelay(30000);// Meninggalkannya di sana selama 5 menit intlightlevel=analogRead(LDR);// Mendefinisikan variabel "lightlevel" sebagai pembacaan terbaru dari LDRSerial.print("Light Level: ");//Mencetak teks di depan variabel Serial.println(lightlevel)// Mencetak nilai level cahaya
if(lightlevel>=900){Serial.println("B");myStepper.step(0);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println (tingkat cahaya);
if(lightlevel>=900){Serial.println("C");myStepper.step(3*-stepsPerRevolution);delay(500);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: "); Serial.println(tingkat cahaya);}
else{Serial.println("D");myStepper.step(3*-stepsPerRevolution);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println(lightlevel);}}
else{Serial.println("E");myStepper.step(3*-stepsPerRevolution);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println(lightlevel);
if(lightlevel>=900){Serial.println("F");myStepper.step(0);delay(500);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println (tingkat cahaya);}
else{Serial.println("G");myStepper.step(0);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println(lightlevel);}}
}
else{Serial.println("H");myStepper.step(0);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println(lightlevel);
if(lightlevel>=900){Serial.println("I");myStepper.step(3*stepsPerRevolution);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Light Level: ");Serial.println(tingkat cahaya);
if(lightlevel>=900){Serial.println("J");myStepper.step(3*-stepsPerRevolution);delay(500);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: "); Serial.println(tingkat cahaya);}
else{Serial.println("K");myStepper.step(3*-stepsPerRevolution);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println(lightlevel);
}}
else{Serial.println("L");myStepper.step(0);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println(lightlevel);
if(lightlevel>=900){Serial.println("M");myStepper.step(0);delay(500);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println (tingkat cahaya);}
else{Serial.println("N");myStepper.step(0);delay(10000);intlightlevel=analogRead(LDR);Serial.print("Tingkat Cahaya: ");Serial.println(lightlevel);
}}
}
}
Langkah 4: Opsional: Layar LCD
Ini akan mencetak tingkat cahaya yang terdeteksi oleh LDR pada layar LCD.
#termasuk
-
//Menambahkan library kristal cair dengan kode tambahan#define ldr A0 //Mendefinisikan variabel "ldr" ke pin A0
LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // inisialisasi perpustakaan dengan nomor pin antarmuka
voidsetup() { //kode yang dijalankan sekali pada startlcd.begin(16, 2); // mengatur jumlah kolom dan baris LCD masing-masingpinMode(ldr, INPUT); // Mendefinisikan ldr sebagai input pinSerial.begin(9600); // Memulai komunikasi dengan monitor serial
}
voidloop() { //kode yang akan diulang terus menerusSerial.println(analogRead(ldr)); // Mencetak pembacaan yang diambil ldr (angka antara 0-1023) pada serial monitorlcd.setCursor(6, 0); // atur kursor ke kolom 6, baris 0lcd.print(analogRead(ldr)); // Mencetak pembacaan ini pada penundaan layar LCD(1000); // Menunda perintah berikutnya selama satu detik
}
Langkah 5: Bagian yang Dicetak
Gunakan file berikut untuk mencetak dudukan dan roda gigi. Anda dapat menyesuaikan roda gigi untuk keperluan Anda sendiri dan Anda dapat menggunakan braket untuk memasangnya di dinding atau sebagai pajangan. Karena roda gigi 3D lemah, roda gigi asli dapat digunakan sebagai penggantinya selama sesuai dengan tirai yang akan dikontrolnya.
Jika roda gigi cetak 3D akan digunakan, salah satu gigi roda gigi telah dilepas sehingga sekrup set dapat memasangnya ke motor.
2 kaki depan braket dinding juga dapat dilepas jika akan dipasang ke dinding. Mereka hanya ditambahkan sehingga akan berdiri saat kami mengujinya.
Langkah 6: Penempatan
Sekarang semua bagian sudah siap, sekarang saatnya untuk memulai penempatan akhir.
Pertama, tempatkan motor stepper ke dalam kotak yang disediakan di dudukan dan pasang roda gigi di asSelanjutnya, pindahkan kabel sehingga berada di belakang dudukan Terakhir, letakkan arduino dan baterai di belakang dudukan
Papan Anda sekarang akan terlihat seperti yang digambarkan di atas.
Selamat!
Gear dapat digunakan untuk tirai otomatis atau hal lain yang ingin Anda kendalikan dengan LDR.
Kamu selesai. Nikmati kreasi baru Anda.
Direkomendasikan:
Dudukan Laptop Braket Sudut: 7 Langkah
Dudukan Laptop Angle Bracket: Saya tidak pernah begitu senang menggunakan laptop datar di atas meja: ini sangat buruk untuk postur tubuh Anda. Saya melihat dudukan laptop dan ada beberapa yang bagus, tapi mahal dan memiliki fitur seperti kemiringan dan putar yang tidak berguna bagi saya. saya sudah coba gan
Braket Pemasangan Tripod ISight: 3 Langkah
Braket Pemasangan Tripod ISight: Saya selalu menemukan diri saya merekam, menopang, atau menggantung berbagai kamera web atau kamera iSight saya dari buku, rak, atau kotak di seluruh rumah- jika saya melakukan proyek selang waktu atau menyiapkan kamera untuk pengawasan video, ini akan menjadi
Dudukan Laptop (berdasarkan Braket IKEA): 5 Langkah
Dudukan Laptop (berdasarkan Braket IKEA): Membuat dudukan ini membutuhkan waktu kurang dari 20 menit. Saya menggunakan dua braket VALTER dari sepotong kayu IKEA, 2 sekrup dan alas mouse bekas
Braket HDD 3,5” untuk Ruang Drive 5,25”: 3 Langkah
3.5” HDD Bracket untuk 5.25” Drive Bay: Sebagian besar dari kita masih memiliki CD/DVD-Rom lama yang sudah tidak Anda butuhkan, tetapi Anda menyesal membuangnya. Petunjuk ini adalah cara menghidupkan kembali CD/DVD-Rom lama Anda