Tartalomjegyzék:

Fényvezérelt léptetőmotor + fali konzol/állvány: 6 lépés
Fényvezérelt léptetőmotor + fali konzol/állvány: 6 lépés

Videó: Fényvezérelt léptetőmotor + fali konzol/állvány: 6 lépés

Videó: Fényvezérelt léptetőmotor + fali konzol/állvány: 6 lépés
Videó: Использование драйвера шагового двигателя L298N Для управления 4-проводным шаговым двигателем 2024, November
Anonim
Fényvezérelt léptetőmotor + fali konzol/állvány
Fényvezérelt léptetőmotor + fali konzol/állvány

Ez az állvány egy Arduino vezérelt léptetőmotor elhelyezésére szolgál, amelyet úgy terveztek, hogy automatikusan vezérelje a függönyt a helyiség fényszintjének megfelelően. LCD kijelzőt is hozzáadhat a fényerő nyomtatásához. A 3D fogaskerék csak bemutató jellegű, valódi fogaskerékre lehet szükség a gyakorlati alkalmazásokhoz, például a függönyhöz, de bármilyen más alkalmazáshoz is.

1. lépés: Hozzávalók

A projekt elindításához szüksége lesz;

- 2 Arduino chipkészlet- Arduino motorpajzs- Arduino LCD-képernyő- 1 kenyérlap- 1 kétpólusú léptetőmotor- 1 D akkumulátor- 1 fényfüggő ellenállás- 1 10 kΩ-os ellenállás- 10 férfi-férfi vezeték- 6 férfi- női vezetékek- Hozzáférés egy 3D nyomtatóhoz

2. lépés: Az Arduino építése

Arduino építése
Arduino építése

Először illessze be a motorpajzsot az Arduino csapokkal, és ha már sorban vannak, helyezze le határozottan. Ezután csatlakoztassa a léptetőmotor vezetékeit a motorpajzs 8., 9., 10. és 11. csapjához. Ezután csatlakoztassa a D akkumulátort a nyílásokba az ábrán látható módon. Ezután meg kell szerezni a 6 vezetéket (férfi -nő) az LCD képernyőt, és csatlakoztassa őket a másik Arduino egységhez az áramköri rajz szerint. Ezután állítsa be az LDR -t a fentiek szerint, az ellenállással a negatív sorhoz csatlakoztatva. Az LDR hozzáadásakor az ellenállás oldalán adja hozzá az A0 csatlakozókon, és az ellenkező oldalon, adjon hozzá 1 5 V -os bemenetet minden egyes használt kártyához, tehát ha 2 táblát használ, akkor mindegyiken legyen 5V és A0 érintkező az LDR -hez.

Csatlakoztassa az összes vezetéket, hogy megegyezzen a diagrammal- 2 bemenet az LDR-hez- 2 kimenetek az LDR-ből és egy ellenállás, amely a földhöz csatlakozik- 8 vezeték az LCD-hez, 1 5 V, 1 földelés és 6 bemenet- 4 vezeték a csatlakozóhoz léptető- 2 csatlakozás az akkumulátorhoz- A kenyérlap földelését csatlakoztatni kell

3. lépés: Az Arduino kódolása

Arduino kódolása
Arduino kódolása

Íme néhány mintakód a fogaskerék állapotának megváltoztatásához az LDR alapján

Ez a kód lehetővé teszi a projekt számára, hogy automatikusan vezéreljen egy függönyt. A fenti fotó elmagyarázza a beágyazott IF -utasítások különböző útjait a függöny felfelé, lefelé vagy ott maradása szempontjából. (kattintson a képre a teljes megtekintéshez, mivel formázási problémák vannak)

#defineLDRA0 // Az "LDR" változót határozza meg A0 pin#include// Tartalmazza a léptetőmotor kódját

constintstepsPerRevolution = 200; // Amikor a léptetőmotor aktiválva van, teljes forgása 200 lépéssel egyenlő

SteppermyStepper (stepsPerRevolution, 8, 9, 10, 11); // Meghatározza a léptető bemenetét 8, 9, 10, 11 tűként

voidsetup () {myStepper.setSpeed (60); // Beállítja, hogy a motor milyen gyorsan forgassa el a rotpinpinMode (LDR, INPUT); // Az "LDR" változót adja meg bemenetként Serial.begin (9600); // Soros leolvasást indít }

voidloop () {intlightlevel = analogRead (LDR); // A "lightlevel" változót műveletként határozza meg, amely beolvassa az "LDR" Serial.print ("Light Level:") értékét; Serial.println (lightlevel); // Kinyomtatja a "lightlevel" értékét a fenti felirattal

/* Most már van egy hurok, amely minden irányban érzékeli a fényszintet* 3 lehetőség áll rendelkezésre, menjen fel, le, maradjon ugyanabban a helyzetben* Úgy tervezték, hogy ha a fényszint ugyanaz marad, akkor maradjon változatlan, ha nem, akkor megváltozik * azaz ha 950, akkor 952 -re megy, semmi sem fog történni, azonban ha 950 -ről 600 -ra emelkedne, felhúzná a függönyt, és fordítva * Minden lépést egy betű jelez a lépés előtt, hogy nyomon kövesse, hol van a hurokban a soros monitoron keresztül */

if (lightlevel> = 900) {Serial.println ("A"); // Melyik lépés a loopmyStepper.step (3*stepsPerRevolution); // A léptető 3 fordulatot tesz előre. Ha negatív, akkor visszafelé halad (30000); // 5 percig ott hagyja; // kinyomtatja a szöveget a Serial.println (lightlevel) változó elé // Kinyomtatja a fényszint értékét

if (lightlevel> = 900) {Serial.println ("B"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (könnyű szint);

if (lightlevel> = 900) {Serial.println ("C"); myStepper.step (3*-stepsPerRevolution); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (világos szint);}

else {Serial.println ("D"); myStepper.step (3*-stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);}}

else {Serial.println ("E"); myStepper.step (3*-stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

if (lightlevel> = 900) {Serial.println ("F"); myStepper.step (0); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (könnyű szint);}

else {Serial.println ("G"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);}}

}

else {Serial.println ("H"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

if (lightlevel> = 900) {Serial.println ("I"); myStepper.step (3*stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Soros.println (világos szint);

if (lightlevel> = 900) {Serial.println ("J"); myStepper.step (3*-stepsPerRevolution); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (világos szint);}

else {Serial.println ("K"); myStepper.step (3*-stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

}}

else {Serial.println ("L"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

if (lightlevel> = 900) {Serial.println ("M"); myStepper.step (0); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (könnyű szint);}

else {Serial.println ("N"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);

}}

}

}

4. lépés: Opcionális: LCD képernyő

Ezzel kinyomtatná az LDR által észlelt fényszintet az LCD -képernyőn.

#befoglalni

  • // Hozzáadja a folyadékkristályos könyvtárat további kóddal#define ldr A0 // Az "ldr" változót határozza meg az A0 érintkezőhöz

    LiquidCrystal LCD (8, 9, 4, 5, 6, 7); // inicializálja a könyvtárat az interfész csapok számával

    voidsetup () {// a startlcd -n egyszer futó kód.begin (16, 2); // az LCD oszlopok és sorok beállítása, illetve pinMode (ldr, INPUT); // Az ldr -t bemeneti pin -ként határozza megSerial.begin (9600); // Elindítja a kommunikációt a soros monitorral

    }

    voidloop () {// folyamatosan ismétlődő kódSerial.println (analogRead (ldr)); // Kinyomtatja az olvasott értéket, amelyet az ldr felvesz (0-1023 közötti szám) a soros monitorlcd.setCursor (6, 0); // állítsa a kurzort a 6. oszlop 0lcd.print sorára (analogRead (ldr)); // Ezt az értéket kinyomtatja az LCD kijelzőn (1000); // A következő parancsot egy másodpercre késlelteti

    }

    5. lépés: Nyomtatott alkatrészek

    Használja az alábbi fájlokat az állvány és a felszerelés nyomtatásához. A fogaskereket személyre szabhatja saját céljaira, és a konzol segítségével falra vagy kijelzőre szerelheti. Mivel a 3D fogaskerék gyenge, valódi fogaskerék használható helyettesítőként, amennyiben illeszkedik az általa vezérelt függönyhöz.

    Ha a 3D nyomtatott fogaskereket fogja használni, akkor a fogaskerék egyik fogát eltávolították, hogy egy rögzítőcsavar rögzíthesse a motorhoz.

    A fali konzol elülső 2 lába is eltávolítható, ha falra szerelik. Csak azért adtak hozzá, hogy álljon, amíg tesztelünk vele.

    6. lépés: Elhelyezés

    Most, hogy minden alkatrész készen áll, ideje elkezdeni a végső elhelyezést.

    Először helyezze a léptetőmotort az állványon található dobozba, és tegye a fogaskereket a tengelyre. Ezután mozgassa a vezetékeket úgy, hogy az állvány mögé menjenek. Végül helyezze az arduino -t és az akkumulátort az állvány mögé.

    A táblának most úgy kell kinéznie, mint a fenti képen.

    Gratulálunk!

    A fogaskerék automatikus függönyökhöz vagy bármilyen más dologhoz használható, amelyet az LDR szabályoz.

    Kész vagy. Élvezze új alkotásait.

Ajánlott: