Mundarija:
- 1 -qadam: ingredientlar
- 2 -qadam: Arduino qurilishi
- 3 -qadam: Arduino -ni kodlash
- 4 -qadam: ixtiyoriy: LCD displey
- 5 -qadam: Bosilgan qismlar
- 6 -qadam: joylashtirish
Video: Yorug'lik bilan boshqariladigan qadam dvigatel + devor qavslari/stend: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Bu stend xonadagi yorug'lik darajasiga qarab pardani avtomatik boshqarish uchun mo'ljallangan Arduino boshqariladigan step motorini o'rnatish uchun ishlatiladi. Bundan tashqari, yorug'lik darajasini bosib chiqarish uchun LCD displey qo'shishingiz mumkin. 3D tishli qurilmalar faqat namoyish qilish uchun mo'ljallangan, pardalar kabi amaliy qo'llanmalar uchun haqiqiy uskunalar kerak bo'lishi mumkin.
1 -qadam: ingredientlar
Ushbu loyihani boshlash uchun sizga kerak bo'ladi;
- 2 ta Arduino chip-to'plami- Arduino dvigatel qalqoni- Arduino LCD displeyi- 1 ta taxta paneli- 1 ta ikki qutbli qadam dvigateli- 1 D batareya- 1 yorug'lik qarshiligi- 1 10 k ayol simlari- 3D printerga kirish
2 -qadam: Arduino qurilishi
Avval dvigatel qalqonini Arduino pinlari bilan bir qatorga qo'ying va ular bir qatorga joylashgach, mahkam joylashtiring. Keyin qadam motorining simlarini dvigatel qalqonining 8, 9, 10 va 11 -gachasi pinlariga ulang, shundan so'ng D batareyasini diagrammada ko'rsatilgandek uyalarga ulang, keyin siz 6 ta simni (erkakdan ayolga) olmoqchisiz. LCD displey va ularni boshqa diagrammada ko'rsatilganidek Arduino -ning boshqa qurilmasiga ulang, so'ngra qarshilikni manfiy qatorga ulab, LDR -ni yuqorida ko'rsatilgan tarzda o'rnating. A0 ulanishlari va qarama -qarshi tomondan, har bir taxtaga 1 ta 5V kirishni qo'shing, shuning uchun agar siz 2 ta taxtadan foydalansangiz, ularning har birining LDRga 5V va A0 pinli bo'lishini xohlaysiz.
Barcha simlarni diagramaga o'xshash qilib ulang- LDRga 2 kirish- LDRdan 2 chiqish va erga ulangan rezistor- 8 simli LCD, 1 5V, 1 topraklama va 6 kirish- 4 sim step- batareyaga 2 ta ulanish- non taxtasi ulangan bo'lishi kerak
3 -qadam: Arduino -ni kodlash
LDR -ga asoslangan vites holatini o'zgartirish uchun ba'zi bir namuna kodi
Bu kod loyihaga pardani avtomatik boshqarishga imkon beradigan kod. Yuqoridagi fotosuratda ichki o'rnatilgan IF bayonotlari orqali turli yo'llar, pardaning yuqoriga, pastga yoki turgan joyida qolishi tushuntiriladi. (rasmni to'liq ko'rish uchun bosing, chunki formatlash muammolari mavjud)
#defineLDRA0 // "LDR" o'zgaruvchisini A0 piniga#kiritish uchun belgilaydi
constintstepsPerRevolution = 200; // step motorini ishga tushirganda, uning to'liq aylanishi 200 qadamga teng bo'ladi.
SteppermyStepper (stepsPerRevolution, 8, 9, 10, 11);
voidsetup () {myStepper.setSpeed (60); // Dvigatelning aylanish tezligini belgilaydi (LDR, INPUT); // "LDR" o'zgaruvchisini Serial.begin (9600) kirish sifatida belgilaydi; // Seriyali o'qishni boshlaydi }
voidloop () {intlightlevel = analogRead (LDR); // "yorug'lik darajasi" o'zgaruvchisini "LDR" qiymatini o'qiydigan harakat sifatida belgilaydi Serial.print ("Yorug'lik darajasi:"); Serial.println (engil daraja); // Yuqoridagi yozuv bilan "yorug'lik darajasi" qiymatini chop etadi
/* Hozirda har bir nuqtada yorug'lik darajasini aniqlaydigan halqa mavjud* 3 variant mavjud, yuqoriga, pastga tushing, bir xil holatda qoling* Agar yorug'lik darajasi o'zgarmasa shunday bo'ladi. bir xil qoling, aks holda u o'zgaradi * ya'ni 950 bo'lsa, 952 ga o'tadi, hech narsa bo'lmaydi, lekin agar u 950 dan 600 gacha bo'lsa, pardani yuqoriga ko'tarib, aksincha * har bir qadam harf bilan belgilanadi qadam oldida *ketma -ket monitor orqali uning qayerda ekanligini kuzatish uchun */
if (lightlevel> = 900) {Serial.println ("A"); // loopmyStepper.step (3*stepsPerRevolution) da qaysi qadam; // qadam 3 oldinga burilish qiladi. Agar manfiy bo'lsa, u kechiktiriladi (30000); // uni 5 daqiqaga qoldiradi intlightlevel = analogRead (LDR); // "yorug'lik darajasi" ni LDRSerial.print ("Yorug'lik darajasi:") ning so'nggi o'qishi sifatida belgilaydi.; // Matnni Serial.println (lightlevel) o'zgarmaydigan oldida chop etadi // Yorug'lik sathining qiymatini chop etadi.
agar (yorug'lik darajasi> = 900) {Serial.println ("B"); myStepper.step (0); kechikish (10000); intlightlevel = analogRead (LDR); Serial.print ("Yorug'lik darajasi:"); Serial.println (engil daraja);
agar (yorug'lik darajasi> = 900) {Serial.println ("C"); myStepper.step (3*-stepsPerRevolution); kechikish (500); intlightlevel = analogRead (LDR); Serial.print ("Nur darajasi:"); Serial.println (engil darajali);}
boshqa {Serial.println ("D"); myStepper.step (3*-stepsPerRevolution); kechikish (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);}}
boshqa {Serial.println ("E"); myStepper.step (3*-stepsPerRevolution); kechikish (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);
agar (yorug'lik darajasi> = 900) {Serial.println ("F"); myStepper.step (0); kechikish (500); intlightlevel = analogRead (LDR); Serial.print ("Yorug'lik darajasi:"); Serial.println (engil daraja);}
boshqa {Serial.println ("G"); myStepper.step (0); kechiktirish (10000); intlightlevel = analogRead (LDR); Serial.print ("Nur darajasi:"); Serial.println (engil daraja);}}
}
boshqa {Serial.println ("H"); myStepper.step (0); kechiktirish (10000); intlightlevel = analogRead (LDR); Serial.print ("Nur darajasi:"); Serial.println (engil daraja);
agar (yorug'lik darajasi> = 900) {Serial.println ("Men"); myStepper.step (3*stepsPerRevolution); kechikish (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (engil darajali);
agar (yorug'lik darajasi> = 900) {Serial.println ("J"); myStepper.step (3*-stepsPerRevolution); kechikish (500); intlightlevel = analogRead (LDR); Serial.print ("Nur darajasi:"); Serial.println (engil darajali);}
boshqa {Serial.println ("K"); myStepper.step (3*-stepsPerRevolution); kechikish (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);
}}
boshqa {Serial.println ("L"); myStepper.step (0); kechikish (10000); intlightlevel = analogRead (LDR); Serial.print ("Nur darajasi:"); Serial.println (engil daraja);
agar (yorug'lik darajasi> = 900) {Serial.println ("M"); myStepper.step (0); kechikish (500); intlightlevel = analogRead (LDR); Serial.print ("Yorug'lik darajasi:"); Serial.println (engil daraja);}
boshqa {Serial.println ("N"); myStepper.step (0); kechiktirish (10000); intlightlevel = analogRead (LDR); Serial.print ("Nur darajasi:"); Serial.println (engil daraja);
}}
}
}
4 -qadam: ixtiyoriy: LCD displey
Bu LCD displeyda LDR tomonidan aniqlangan yorug'lik darajasini bosib chiqaradi.
#qo'shing
-
// suyuq kristall kutubxonasini#kodini qo'shimcha lddr A0 bilan qo'shadi // A0 piniga "ldr" o'zgaruvchisini aniqlaydi.
LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // kutubxonani interfeys pinlari raqamlari bilan ishga tushiring
voidsetup () {// startlcd.begin (16, 2) da bir marta ishlaydigan kod; // LCD -ning ustun va satrlar sonini mos ravishda pinMode (ldr, INPUT) ni sozlash; // ldr -ni kirish pinSerial.begin (9600) sifatida belgilaydi; // Seriya monitor bilan aloqani boshlaydi
}
voidloop () {// doimiy ravishda takrorlanadigan kodSerial.println (analogRead (ldr)); // llr o'qishni (0-1023 oralig'ida) monitorlcd.setCursor (6, 0) ketma-ket o'qilishini bosib chiqaradi; // kursorni 6 -ustunga, 0lcd.print qatoriga (analogRead (ldr)) o'rnating; // Ushbu ko'rsatkichni LCD displey ekranida (1000) chop etadi; // Keyingi buyruqni bir soniya kechiktiradi
}
5 -qadam: Bosilgan qismlar
Stend va jihozlarni chop etish uchun quyidagi fayllardan foydalaning. Siz vitesni o'zingizning xohishingizga ko'ra sozlashingiz mumkin va uni devorga yoki ekran sifatida o'rnatish uchun qavsdan foydalanishingiz mumkin. 3D tishli kuchsiz bo'lgani uchun, agar u boshqaradigan pardaga to'g'ri kelsa, uning o'rniga haqiqiy vites ishlatilishi mumkin.
Agar 3D bosma tishli quti ishlatilsa, vintni dvigatelga mahkamlashi uchun tishli tishlari olib tashlangan.
Qavsning old 2 oyog'i, agar u devorga o'rnatilsa, olib tashlanishi mumkin. Ular faqat biz uni sinovdan o'tkazayotganimizda o'rnidan turishi uchun qo'shilgan.
6 -qadam: joylashtirish
Endi barcha qismlar tayyor, oxirgi joylashtirishni boshlash vaqti keldi.
Birinchidan, qadam motorini stenddagi qutiga joylashtiring va vitesni o'qga qo'ying Keyingi, simlarni stend orqasida ketadigan qilib siljiting Oxir -oqibat, arduino va batareyani stend orqasiga qo'ying.
Sizning taxtangiz endi yuqoridagi rasmga o'xshash bo'lishi kerak.
Tabriklaymiz!
Vites avtomatik pardalar yoki LDR tomonidan boshqariladigan boshqa narsalar uchun ishlatilishi mumkin.
Siz tugadingiz. Yangi ijodingizdan rohatlaning.
Tavsiya:
TheSUN, Arduino bilan ishlaydigan devor soati: 6 qadam (rasmlar bilan)
TheSUN, Arduino bilan ishlaydigan devor soatlari: Salom, yana instruktiv odamlar! Men, xuddi o'sha manzilli LED chiziqlar kabi (NEOP deb ham ataladi
Dakboard devor displeyi Pi Zero W bilan: 6 qadam (rasmlar bilan)
Dakboard devor displeyi Pi Zero W bilan: Men IT sohasida ishlayman. Ko'pincha biz eski to'plamini olib tashlashimizni xohlaydigan mijozlarga murojaat qilamiz. Bu, odatda, bizni bir dasta qoldiq bilan qoldiradi, va monitorlar biz topgan narsalardan biridir. Uyda men o'z monitorlarimni yangiladim va bu mening eski qurilmamni qoldirdi
Yurak shaklidagi masofadan boshqariladigan orqa yoritilgan devor bezagi: 8 qadam (rasmlar bilan)
Yurak shaklidagi masofadan boshqariladigan orqa yoritilgan devor dekorasi: Ushbu DIY uy bezaklarini sovg'a qilish bo'yicha qo'llanmada biz kontrplak taxtasi yordamida devor shaklidagi orqa devorga osilgan panelni yasashni va masofadan boshqarish pulti va yorug'lik yordamida boshqariladigan yorug'lik effektlarini qo'shishni o'rganamiz. Sensor (LDR) Arduino yordamida. Siz
Devor devori devor soati: 5 qadam
Devorli devor soati: atrofida tasodifiy elektron platalar ko'pmi? Yaxshi maqsadda ularni qayta ishlashni xohlaysizmi? Bu salqin va bezakli elektron platali devor soati, ozgina materiallardan yasalgan
IPhone zaryadlovchi devor stend/dock: 4 qadam
IPhone zaryadlovchi devor stend/dock: iPhone/iPod uchun devor zaryadlovchi, USB kabeli va kesilgan shampun yordamida DIY zaryadlovchi devor stendini yarating. Bu ko'rsatma ommabop fanlarning DIY bo'limida 5 daqiqali loyiha sifatida ko'rsatildi. Sizga kerak: shampunli shisha (bu