Taula de continguts:
- Pas 1: Ingredients
- Pas 2: construcció d'Arduino
- Pas 3: Codificació d'Arduino
- Pas 4: opcional: pantalla LCD
- Pas 5: parts impreses
- Pas 6: col·locació
Vídeo: Motor pas a pas controlat per llum + suport de paret / suport: 6 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
Aquest suport s'utilitza per allotjar un motor pas a pas controlat per Arduino, dissenyat per controlar automàticament una cortina segons el nivell de llum de l'habitació. També podeu afegir una pantalla LCD per imprimir el nivell de llum. L’engranatge 3D només serveix per demostrar, és possible que sigui necessari un engranatge real per a aplicacions pràctiques com la cortina, però també qualsevol altra aplicació que se us pugui imaginar.
Pas 1: Ingredients
Per iniciar aquest projecte necessitareu;
- 2 jocs de xips Arduino- Un escut del motor Arduino- Una pantalla LCD Arduino- 1 placa de pa- 1 motor pas a pas bipolar- 1 bateria D- 1 resistència depenent de la llum - 1 resistència de 10 kΩ- 10 cables masculí-masculí- 6 masculí- cables femella: accés a una impressora 3D
Pas 2: construcció d'Arduino
Primer alineu el blindatge del motor amb els passadors Arduino i, un cop alineats, col·loqueu-lo fermament. A continuació, connecteu els cables del motor pas a pas als passadors 8, 9, 10 i 11 del blindatge del motor. Després, connecteu la bateria D a les ranures tal i com es mostra al diagrama. A continuació, voldreu obtenir els 6 cables (de mascle a femella) per a la pantalla LCD i connecteu-les a l’altra unitat Arduino tal com es mostra al diagrama del circuit. A continuació, configureu el LDR com es mostra a dalt, amb la resistència connectant-se a la fila negativa. Quan afegiu el LDR, al costat de la resistència, afegiu a les connexions A0 i al costat oposat, afegiu 1 entrada de 5V per a cada placa que utilitzeu, de manera que si feu servir dues plaques, voldreu que cadascuna d'elles tingui un pin de 5V i A0 que vagi al LDR.
Connecteu tots els cables de manera que sigui el mateix que el diagrama- 2 entrades a la LDR- 2 sortides de la LDR i una resistència que es connecta a terra- 8 cables a la pantalla LCD, 1 5V, 1 terra i 6 entrades- 4 cables que es connecten a la pas a pas- 2 connexions a la bateria- La terra del tauler ha de ser connectada
Pas 3: Codificació d'Arduino
Aquí teniu un codi de mostra per canviar l’estat de l’engranatge en funció del LDR
Aquest és el codi que permetria al projecte controlar automàticament una cortina. La foto superior explica els diferents camins a través de les declaracions IF imbricades pel que fa a la cortina que puja, baixa o es queda allà on és. (feu clic a la imatge per veure-la completa ja que hi ha problemes de format)
# defineLDRA0 // Defineix la variable "LDR" a A0 pin # include
constintstepsPerRevolution = 200; // Quan el motor pas a pas està activat, la seva rotació completa és igual a 200 passos
SteppermyStepper (stepsPerRevolution, 8, 9, 10, 11); // Defineix l'entrada al stepper com a pins 8, 9, 10, 11
voidsetup () {myStepper.setSpeed (60); // Estableix la velocitat amb què el motor fa una rotaciópinMode (LDR, INPUT); // Defineix la variable "LDR" com a entrada Serial.begin (9600); // Inicia una lectura en sèrie }
voidloop () {intlightlevel = analogRead (LDR); // Defineix la variable "lightlevel" com una acció que llegeix el valor de "LDR" Serial.print ("Nivell de llum:"); Serial.println (lightlevel); // Imprimeix el valor de "lightlevel" amb el títol superior
/ * Ara hi ha un bucle que detecta el nivell de llum en cada punt del camí * Hi ha 3 opcions disponibles, pujar, baixar, mantenir-se a la mateixa posició * Està dissenyat de manera que si el nivell de llum es manté, mantingueu-vos igual, si no, canviarà * és a dir, si és 950, passa a 952, no passarà res, però si passés de 950 a 600 tiraria la cortina cap amunt i tornaria viceversa * Cada pas es significa amb una carta davant del pas per rastrejar on es troba al bucle a través del monitor sèrie * /
if (lightlevel> = 900) {Serial.println ("A"); // Quin pas es troba al loopmyStepper.step (3 * stepsPerRevolution); // El pas fa 3 revolucions cap endavant. Si és negatiu, es retarda endarrere (30000); // El deixa allà durant 5 minuts intlightlevel = analogRead (LDR); // Defineix el "lightlevel" variable com la darrera lectura de LDRSerial.print ("Nivell de llum:"); // Imprimeix el text davant de la variable Serial.println (lightlevel) // Imprimeix el valor del nivell de llum
if (lightlevel> = 900) {Serial.println ("B"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (nivell lleuger);
if (lightlevel> = 900) {Serial.println ("C"); myStepper.step (3 * -stepsPerRevolution); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Nivell de llum:"); Serial.println (lightlevel);}
else {Serial.println ("D"); myStepper.step (3 * -stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Nivell de llum:"); Serial.println (lightlevel);}}
else {Serial.println ("E"); myStepper.step (3 * -stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Nivell de llum:"); Serial.println (lightlevel);
if (lightlevel> = 900) {Serial.println ("F"); myStepper.step (0); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);}
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 ("Nivell de llum:"); Serial.println (lightlevel);
if (lightlevel> = 900) {Serial.println ("I"); myStepper.step (3 * stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Light Level:"); Serial.println (lightlevel);
if (lightlevel> = 900) {Serial.println ("J"); myStepper.step (3 * -stepsPerRevolution); delay (500); intlightlevel = analogRead (LDR); Serial.print ("Nivell de llum:"); Serial.println (lightlevel);}
else {Serial.println ("K"); myStepper.step (3 * -stepsPerRevolution); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Nivell de llum:"); 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 (lightlevel);}
else {Serial.println ("N"); myStepper.step (0); delay (10000); intlightlevel = analogRead (LDR); Serial.print ("Nivell de llum:"); Serial.println (lightlevel);
}}
}
}
Pas 4: opcional: pantalla LCD
Això imprimiria el nivell de llum detectat per l'LDR a la pantalla LCD.
#incloure
-
// Afegeix la biblioteca de cristalls líquids amb el codi addicional # define ldr A0 // Defineix la variable "ldr" al pin A0
LiquidCrystal lcd (8, 9, 4, 5, 6, 7); // inicialitzeu la biblioteca amb els números dels pins de la interfície
voidsetup () {// codi que s'executa una vegada a startlcd.begin (16, 2); // configureu el nombre de columnes i línies de la pantalla LCD respectivamentpinMode (ldr, INPUT); // Defineix ldr com a pinSerial.begin d'entrada (9600); // Inicia la comunicació amb el monitor sèrie
}
voidloop () {// codi que es repetirà contínuamentSerial.println (analogRead (ldr)); // Imprimeix la lectura que recull ldr (un número entre 0-1023) al monitorlcd.setCursor sèrie (6, 0); // configureu el cursor a la columna 6, línia 0lcd.print (analogRead (ldr)); // Imprimeix aquesta lectura a la pantalla LCD (1000); // Retarda la següent ordre durant un segon
}
Pas 5: parts impreses
Utilitzeu els fitxers següents per imprimir el suport i l’engranatge. Podeu personalitzar l’engranatge per als vostres propis propòsits i podeu utilitzar el suport per muntar-lo a la paret o com a pantalla. Com que l’engranatge 3D és feble, es pot utilitzar un engranatge real com a substitut del mateix sempre que coincideixi amb la cortina que controlaria.
Si s’utilitzarà l’engranatge imprès en 3D, s’ha eliminat una de les dents de l’engranatge de manera que un cargol fix podria fixar-lo al motor.
Les 2 potes anteriors del suport de paret també es poden treure si es fixés a la paret. Només es van afegir perquè s’aguantés mentre provàvem amb ell.
Pas 6: col·locació
Ara que totes les parts estan llestes, és hora de començar la col·locació final.
En primer lloc, col·loqueu el motor pas a pas a la caixa proporcionada al suport i poseu l’engranatge a l’eix. A continuació, moveu els cables perquè vagin darrere del suport. Finalment, col·loqueu l’arduino i la bateria darrere del suport.
El tauler hauria de semblar ara al de la imatge superior.
Enhorabona!
L'engranatge es pot utilitzar per a cortines automatitzades o qualsevol altra cosa que vulgueu controlar mitjançant el LDR.
Estàs acabat. Gaudeix de la teva nova creació.
Recomanat:
Suport per iPad per a suport de micròfon de PVC: 4 passos
Suport per iPad per a suport de micròfon de PVC: ara molts músics utilitzen iPads com a fulls lírics / gràfics d'acords. Els titulars comercials, com l’iKlip, poden costar 30 € o més. He fet aquest per 5 dòlars. Vull donar crèdit a replayerreb, el titular de l'iPad que es pot utilitzar mentre el càmping de la tenda era l'inspirador
El suport per a cables de llum: 4 passos
El suport per a cables de llum: aquest manual us mostrarà com fer un suport per a cables de llum mitjançant Tinkercad. Aquest producte es pot utilitzar com una llanterna o un suport per a cables, o ambdós. És molt fàcil de fer i es pot modificar si els cables tenen una mida diferent
Suport per a portàtils / suport d'escriptori Mecano (2 en 1): 4 passos
Suport per a portàtils / suport d'escriptori Mecano (2 en 1): enganxat a casa? Està estret al vostre seient durant tot el dia amb l’ordinador? Aquí teniu la solució perfecta: un suport per a portàtils (convertible en suport d’escriptori). Això es fa amb peces d'una joguina anomenada Meccano, disponibles a gairebé tot arreu (Costco, Walmart, Toys R
Suport d'equips musicals / Suport per a portàtils / Organitzador d'escriptori: 7 passos
Suport d'equips musicals / Suport per a portàtils / Organitzador d'escriptori: aquest manual us mostrarà com convertir una funda antiga per a PC en un bastidor per a equips musicals, un suport per a portàtils i un organitzador d'escriptori
Suport per a portàtils de paper, el suport per a portàtils més barat possible: 4 passos
Paper Laptop Stand, el suport per a ordinadors portàtils més barat possible: A mi m’encanta el terratrèmol3 i em preocupa la durabilitat del meu MacBook. Mai no tinc la idea de comprar aquests suports per a portàtils amb ventiladors, perquè els MacBooks no tenen cap forat a la part inferior. Pensava que aquelles mitges boles potser doblegarien el meu ordinador portàtil