Sommario:
- Passaggio 1: "A casa da solo" Costruire l'uomo di cartone
- Passaggio 2: "Home Alone" Costruire il controller
- Passaggio 3: "A casa da solo": il software
- Passaggio 4: deterrente antifurto "Home Alone": utilizzo
- Passaggio 5: "A casa da solo" Cosa non ha funzionato……
Video: Dissuasore antifurto "Home Alone" / Usa Attiny13 per guidare un motore passo-passo e un servo: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Questo potrebbe essere uno dei miei progetti più strani:-) Ma anche se non sei interessato a tenere lontani i ladri, questo progetto può essere utilizzato per qualsiasi cosa in cui hai bisogno di guidare un motore passo-passo o un servomotore, o anche diversi motori CC con un Attiny13. La maggior parte di voi ricorderà il film Home Alone, dove McCauly Calkin cerca di fingere ai ladri che in realtà non è solo a casa, mettendo una figura di cartone su un giradischi e mettendo delle corde su un'altra figura di cartone in modo da poter imitare le persone ballare. Dato che sono spesso lontano da casa, sono molto consapevole di lasciare la mia casa come se fosse ancora occupata. Per questo ho precedentemente pubblicato un "Simulatore di casa" che accende le luci in uno schema specifico con abbastanza casualità per sembra che qualcuno sia presente. Ho aggiunto una "Fake TV" che fa sembrare che ci sia una TV in riproduzione. Tutte queste cose aiutano, ma se si tratta di simulare la presenza non c'è niente di meglio del movimento reale. Quindi avevo bisogno di qualcosa che si muovesse e poiché non ho un giradischi e volevo qualcosa che potesse funzionare mentre ero via, avevo bisogno di qualcosa di un po' più solido. Il modo più ovvio per avere una figura di cartone che crea l'impressione di movimento sarebbe ruotarlo di 90 gradi in modo che bloccasse alternativamente la luce e non bloccasse la luce. L'ho fatto prima con un servo economico ma questo ha dato due problemi: era difficile aggiungere una figura di cartone anche non troppo grande, all'asse e una volta L'ho fatto, la resistenza sarebbe stata troppo per quel servo. Un servo più potente ha avuto un aumento di prezzo molto elevato, quindi ho iniziato a pensare a "motore passo-passo". Ne avevo ancora uno che era pesante a causa del dissipatore di calore collegato ad esso, quindi sembrava l'ideale. Un programma per accendere il motore passo-passo è stato facilmente scritto su un Arduino, ma il trascinamento stava ancora causando un po' di problemi poiché la mia figura di cartone aveva le dimensioni di un torso umano (lungo circa 80 cm). O dovevo rinforzare il cartone, rendendolo più pesante, oppure dovevo ridurlo. Quest'ultima sembrava essere la soluzione migliore in quanto potevo semplicemente avvicinarla a una luce. Per tutto quel tempo avevo anche giocato con l'idea di far alzare una figura. Motori, pulegge ecc. mi sono passati per la testa e anche se non ho abbandonato completamente l'idea, per ora ho deciso di aggiungere una piccola caratteristica alla figura di cartone e quella era una testa mobile. La mia idea era di far girare la figura di 90 gradi, così avrebbe proiettato un'ombra completa, e poi avrebbe annuito con la testa. ed è qui che è entrato di nuovo il mio servo. In realtà non volevo sacrificare un intero arduino solo per trasformare una figura di cartone. Al contrario, ho immaginato che un Attiny13 che avevo in giro potesse fare altrettanto bene: 4 pin per lo stepper, 1 pin per il servo. questo è esattamente ciò che un Attiny13 ha da offrire. Ammetto che a volte posso essere molto ottuso perché ho pensato a tutti i tipi di scenari su come far funzionare il contarption per lavorare in un momento specifico, per un momento specifico perché idealmente volevo controllare dal "Simulatore domestico" di cui ho parlato prima. Quindi ho pensato a un cavo, o wireless, ma poi l'Attin13 non era la migliore idea perché ha un problema con Manchestercode e avevo bisogno di un pin per il ricevitore e la sensibilità di quei ricevitori economici non è eccezionale. Quindi ho già pensato solo a un timer commerciale, ma poi ho capito che ero un idiota. Poiché la cosa avrebbe bisogno del proprio alimentatore, perché non prendere un wallwart e inserirlo in un interruttore remoto che potrei già controllare dal mio simulatore At Home. Quindi, ho iniziato a costruire il mio progetto finale. BOM
Un servomotore passo-passo economico Una scatola di cartone Un Attiny13 Una presa IC a 8 pin Un pezzo di stripboard 9 strisce di 17 fori Alcune prolunghe per servoA ULN2003 Una presa IC a 16 pin Una resistenza da 10 k Un tagliere di plastica (o qualche altro pezzo di materiale leggero) Un connettore maschio a 3 pin (per servo) Testata maschio a 6 pin (per motore passo-passo) nastro adesivo (ovviamente)
Inoltre: un modo per programmare Attiny
Solo un'osservazione sul motore passo-passo. Io uso un vecchio 55SI-25DAWC, ma se devi ancora comprarne uno c'è una combinazione di motorini passo-passo/driver molto economica disponibile: il 28BYJ-48. Il motore stesso costa 1,50 euro, ma per 2 euro puoi ottenere lo stesso motore con una scheda driver. quindi è un buon affare
Passaggio 1: "A casa da solo" Costruire l'uomo di cartone
Da una scatola ho tagliato un pezzo di 40x20 cm e un pezzo di 18x18. Ho attaccato i due pezzi insieme come una testa e un busto, usando del nastro adesivo, lasciando un piccolo spazio tra i due pezzi, ma coperto dal nastro adesivo, per formare una cerniera per il collo. (Le immagini lo rendono molto chiaro) Dal vecchio tagliere ho tagliato un pezzo lungo 20 cm, spesso circa mezzo cm (lo spessore del tagliere) e largo circa 1,5 cm. Gli 1,5 cm erano sufficienti per adattarsi all'asse del mio stepper. se hai uno stepper diverso, assicurati che il pezzo che hai tagliato sia abbastanza largo per l'asse del tuo stepper. Ho praticato un foro al centro morto che si adattasse al mio asse. poi ho incollato la plastica alla base del 'Torso' di cartone sotto il 'collo', da pezzi di cartone ho costruito un supporto per il mio servo. Ovviamente questo può essere fatto con un ferro angolare (o di plastica), ma è un po' difficile da attaccare al busto di cartone, quindi ho usato solo il cartone per adattarlo al servo. Ho aggiunto un braccio al servo fatto con un pezzo di plastica 11 x 0,6 x 0,6 dal tagliere e l'ho attaccato al servo. Ancora una volta, guarda le immagini per vedere come è fatto Anche se il mio stepper era abbastanza pesante da trasportare una figura di cartone, la coppia e la resistenza causata dalla sua rotazione avrebbero fatto sì che il motore iniziasse a "camminare" in giro, quindi ho creato una piastra di base con 24*11 cm di tagliere. Ho praticato due fori per collegare il motore passo-passo e ho ancora ampio spazio per il controller. Sebbene il servo giri di 180 gradi, ho posizionato il braccio in modo tale che non renda la testa completamente dritta. In questo modo ricade facilmente quando il servo torna in posizione 0
Passaggio 2: "Home Alone" Costruire il controller
Il controller è An Attiny13, collegato a un ULN2003. Anche se nella mia versione ho usato un po' più di pin per rendere la scheda più flessibile da usare per altri progetti, le uniche intestazioni di cui hai bisogno sono un'intestazione servo maschio a 3 pin e un'intestazione maschio a 6 pin per lo stepper
Passaggio 3: "A casa da solo": il software
EDIT 2019 Il progetto è stato realizzato sulla base del nucleo "Smeezekitty" un tempo popolare per Attiny13. L'ormai spesso usato MicroCore di MCUDude ha apparentemente problemi con le variabili nelle istruzioni delayMicroseconds. Se stai usando quello, sostituisci "delayMicroseconds(300 + p * (2500 / 180));" da "ritardo(5);"
Il programma sopra mostra come guidare il mio particolare stepper e potrebbe essere necessario modificare i valori scritti su PORTB se si dispone di un altro stepper. Poiché Attiny13 ha una memoria piuttosto piccola e non fornisce troppi pin, al programma manca un po' di sofisticatezza. Scrivere direttamente su PORTB è OK, ma in questo caso scriverà anche uno "0" su PB4 e PB5. PB5 non è un grosso problema, ma potresti voler usare PB4. Nel mio caso è lì che metto il mio servo e questo non causa davvero un problema poiché non li uso allo stesso tempo.
Tuttavia, se si desidera utilizzare un altro microcontrollore come un 328 e si desidera evitare di scrivere su PB4 e PB5 e PB6 e PB7, utilizzare una maschera per scrivere solo sul bit 0-3. La maschera per farlo è B00001111.
Se poi vuoi impostare i bit 0 e 2, procedi in questo modo:
Invece di PORTB=5, indicare: PORTB=(PORTB &~mask) | (B00000101);
Per chi lo trova troppo criptico:
prima va in AND il valore di PORTB con NOT mask e in OR il risultato con il valore che vogliamo scrivere e lo assegna a PORTB.
Quindi, supponiamo PORTB= 00010000 e vogliamo scriverci 00000101, non possiamo assegnarlo immediatamente perché cancellerebbe PB4.
Tuttavia, se facciamo come descritto, diventa:
PORTB=(PORTB & 11110000) | 00000101
PORTAB=(00010000 & 11110000) | 00000101
PORTAB=00010000 | 00000101
PORTAB= 00010101
Abbiamo scritto il nostro valore e mantenuto PB4
Quindi, perché non possiamo immediatamente OR PORTB con il valore che vogliamo invece di farlo prima con AND?
Bene, perché questo potrebbe mantenere PB4 e PB5… ma mantiene invariati anche PB3-PB0 se uno di essi conteneva già un '1'
Ovviamente invertire la maschera non sarebbe necessario se la definissimo già invertita, ma è pratica comune farlo così
Passaggio 4: deterrente antifurto "Home Alone": utilizzo
guarda il video per vederlo funzionare (è stato ruotato di -90 gradi, scusa per quello)
L'intenzione di questo dispositivo è quella di proiettare ombre in movimento sulle tende o sui bui. Funziona quindi meglio con le barriere fotoelettriche. Il dispositivo stesso non dovrebbe essere visibile dall'esterno. Assicurati che abbia una fonte di luce da qualche parte dietro di esso. Lo controllo inviando un segnale RF all'interruttore remoto nella presa di corrente che alimenta l'alimentatore wallwart per questo dispositivo, ma potresti anche usare un timer.
Passaggio 5: "A casa da solo" Cosa non ha funzionato……
Questo video mostra uno dei miei primi esperimenti con un busto più grande e solo un semplice servo. Ovviamente non è un buon design
Consigliato:
Antifurto fai-da-te per bici (attivato dagli urti): 5 passaggi (con immagini)
Antifurto per bici fai-da-te (attivato dagli urti): in questo progetto ti mostrerò come creare un semplice lucchetto per bici con allarme attivato dagli urti. Come suggerisce il nome, crea un suono di allarme quando la tua bici viene spostata con il permesso. Lungo la strada impareremo qualcosa sul piezoele
Avvisi push Arduino per campanello, antifurto, rilevatori di fumo ecc: 8 passaggi
Avvisi push Arduino per campanello, allarme antifurto, rilevatori di fumo ecc.: Notifiche IoT dal tuo campanello, allarme antifurto, rilevatori di fumo ecc. utilizzando un Arduino Uno e uno scudo Ethernet. Tutti i dettagli sul mio sito Web qui Informazioni su Arduino Push Alert Box Utilizza un Arduino Uno ed Ethernet Shield basato sul chip Wiznet W5100 per
Usa Arduino per visualizzare gli RPM del motore: 10 passaggi (con immagini)
Usa Arduino per visualizzare gli RPM del motore: questa guida illustrerà come ho utilizzato un Arduino UNO R3, un display LCD 16x2 con I2C e una striscia LED da utilizzare come indicatore di velocità del motore e luce del cambio nella mia macchina da pista Acura Integra. È scritto in termini di qualcuno con una certa esperienza o esposizione
Come far funzionare il motore DC brushless Drone Quadcopter utilizzando il controller di velocità del motore brushless HW30A e il servo tester: 3 passaggi
Come eseguire il motore DC brushless Drone Quadcopter utilizzando il controller di velocità del motore brushless HW30A e il servo tester: Descrizione: questo dispositivo è chiamato Servo Motor Tester che può essere utilizzato per far funzionare il servomotore semplicemente collegandolo al servomotore e alimentandolo. Il dispositivo può essere utilizzato anche come generatore di segnale per il regolatore di velocità elettrico (ESC), quindi è possibile
Usa un motore di azionamento CC per tapis roulant e un controller di velocità PWM per gli strumenti di alimentazione: 13 passaggi (con immagini)
Utilizzare un motore di azionamento CC per tapis roulant e un controller di velocità PWM per utensili elettrici: utensili elettrici come frese e torni per il taglio di metalli, trapani a colonna, seghe a nastro, levigatrici e altro possono richiedere. Motori da 5 HP a 2 HP con la capacità di regolare la velocità mantenendo la coppia .Per coincidenza la maggior parte dei tapis roulant utilizza un motore da 80-260 VDC con