Rilevatori di movimento e attuatori lineari

Rilevatori di movimento

I rilevatori di movimento, come suggerisce il loro nome, sono sensori usati per rilevare il movimento. Sono comunemente visti negli allarmi di sicurezza e nei sistemi di illuminazione innescati dal movimento, ma possono essere utilizzati in combinazione con attuatori lineari per una vasta gamma di applicazioni fresche. Un'applicazione comune di Attuatori lineari E i rilevatori di movimento che vengono utilizzati insieme si trovano all'interno di case infestate per le paure del salto. Ma insieme attuatori lineari e rilevatori di movimento possono anche essere utilizzati per una vasta gamma di progetti di automazione domestica.

Sensore di movimento

Quando pensi ai rilevatori di movimento, generalmente pensi a 2 tipi:

  • Infrarosso passivo - che misura i cambiamenti nel calore corporeo (energia a infrarossi) per rilevare il movimento
  • Microonde - che misura i riflessi degli oggetti usando le microonde per rilevare il movimento

Questi due tipi di rilevatori di movimento sono i più comuni in quanto sono spesso utilizzati in applicazioni come i sistemi di sicurezza. Sebbene, ci siano molti altri tipi di rilevatori di movimento disponibili, inclusi i sensori riflettenti dell'area, che utilizzano luce inferita, sensori di vibrazione e sensori ad ultrasuoni [1]. Per l'uso con hobbisti e progetti fai -da -te, il tipo di rilevatore di movimento più comunemente disponibile e usato è il sensore di movimento a infrarossi passivi (PIR). Per questo motivo, il resto di questo blog si concentrerà su come utilizzare un rilevatore di movimento PIR con il tuo attuatore lineare. Mentre ogni tipo di sensore avrà diverse implementazioni, gran parte di ciò che viene descritto di seguito su come controllare un attuatore lineare con un rilevatore di movimento sarà simile per tutti i tipi di rilevatori di movimento.

Che dire dei sensori di prossimità?

I sensori di prossimità non sono rilevatori di movimento in quanto rilevano la vicinanza di un oggetto piuttosto che un movimento. Funzionalmente, a sensore di prossimità Può dirti quanto è vicino un oggetto al sensore se l'oggetto si muove o meno. Mentre i rilevatori di movimento, si innescano solo quando c'è un movimento indipendentemente da quanto sia vicino un oggetto. È possibile utilizzare i sensori di prossimità come rilevatori di movimento poiché l'uscita dei sensori di prossimità cambierà quando un oggetto o una persona si muove di fronte al sensore. Sebbene, i sensori di prossimità rilevano solo quanto sia vicino l'oggetto più vicino al sensore, quindi se qualcosa dovesse spostarsi dietro l'oggetto più vicino, il sensore di prossimità non avrebbe rilevato questo movimento. Mentre si utilizza un sensore di prossimità come rilevatore di movimento, potrebbe non essere la soluzione migliore per il tuo design.

Sensore di prossimità

Impostazione del tuo rilevatore di movimento PIR

Se stai cercando di progettare il tuo robot di spavento per Halloween o avere in mente un altro progetto sensibile al movimento, vorrai utilizzare il tuo rilevatore di movimento PIR come interruttore di input per determinare quando l'attuatore lineare dovrebbe muoversi. Per fare questo, vorrai utilizzare un microcontrollore, come un Arduino, per leggere l'output del rivelatore di movimento PIR e guidare l'attuatore lineare. L'uscita del rilevatore di movimento PIR è simile a un semplice pulsante, quando c'è un movimento il sensore invierà un segnale o una tensione elevata al microcontrollore e quando non c'è movimento invierà un segnale o una tensione bassa. Potresti anche voler testare il sensore PIR prima di installarlo nel tuo design poiché alcuni sensori PIR ti consentono di regolare la sensibilità del sensore per prestazioni migliori.

Sensore PIR collegato ad Arduino 

Come non saprai quando qualcuno camminerà, il tuo rilevatore di movimento, dovrai leggere costantemente l'output del sensore PIR nel ciclo principale del codice o puoi utilizzare interruzioni esterne. Gli interrupt esterni sono pin dell'Arduino che rilevano un cambiamento di tensione e nel nostro caso può essere utilizzato per avvisare l'Arduino che il nostro sensore PIR ha rilevato il movimento. A seconda dell'applicazione, sia il metodo di lettura dell'output del sensore PIR è fattibile, sebbene quest'ultimo sia considerato le migliori pratiche in quanto garantisce che il codice non manchi alcun movimento rilevato dal sensore PIR. Se si prevede di utilizzare un interrupt esterno per rilevare una modifica dal rivelatore di movimento, dovrai consultare la scheda tecnica del tuo Arduino per garantire quali pin del tuo microcontrollore possono essere utilizzati come pin di interruzione. In caso contrario, puoi semplicemente collegare l'output del sensore PIR a uno qualsiasi dei pin di input digitale dell'Arduino. Il sensore PIR dovrà anche essere collegato a una fonte di alimentazione appropriata e a un terreno comune.

Attuatore lineare controllato dal movimento

In entrambi gli esempi seguenti, l'Arduino controlla l'attuatore lineare usando un Driver del motore. Per imparare a guidare un attuatore lineare con un driver del motore o altri componenti intermedi, come relè, puoi controllare il nostro post su Come controllare un attuatore lineare con un Arduino. Inoltre, nessuno dei due esempio di seguito utilizza un Feedback Attuatore lineare O interruttori di limite esterni Nel loro design, il che ti darebbe un maggiore controllo sul tuo attuatore che senza. Se sei interessato a come e quali opzioni di feedback sono disponibili, puoi controllare il nostro post sull'argomento Qui.  

L'esempio del codice sopra mostra come impostare un interrupt nell'IDE Arduino in cui l'interrupt verrà attivato sul bordo di salita dell'impulso di tensione. È possibile impostare l'interrupt per essere attivato in diversi punti in una modifica della tensione e dovresti consultare la scheda tecnica del microcontrollore per determinare le opzioni disponibili. Dopo aver identificato e selezionato un pin di interrupt appropriato, l'ultimo aspetto che devi fare per impostare l'interrupt è scrivere la routine di servizio di interruzione. La routine di servizio di interruzione è una funzione semplice che il codice verrà eseguito ogni volta che viene attivato l'interrupt. Nel nostro caso, la nostra routine di routine di interruzione di routine imposta semplicemente il moto flagdetted su alto quando viene attivato l'interrupt.

Una volta che il tuo Arduino ha letto l'output del tuo sensore PIR, utilizzando un interrupt esterno o semplicemente leggendo l'output, il modo in cui si utilizza questo feedback per controllare l'attuatore lineare dipenderà dalla tua progettazione e dalla tua applicazione. Poiché il sensore PIR fornisce solo un feedback binario, come un pulsante, il livello di controllo sull'attuatore lineare sarà limitato. Un modo per controllare l'attuatore lineare con questo feedback è dire all'attuatore di muoversi ogni volta che viene rilevato il movimento, il che potrebbe essere utile in applicazioni come le paure del salto robotico in una casa infestata. Il codice sopra mostra come è possibile implementare questo progetto. Una volta impostato il flag motiondetected su alto, estendiamo l'attuatore lineare in avanti e dopo 10 secondi, il flag viene ripristinato a Low e l'attuatore si ritrae per il prossimo salto. Dato che usiamo solo il rilevatore di movimento per dire all'Arduino che qualcuno è lì, usiamo un timer per ripristinare la bandiera e aspettare che la persona successiva camminasse.

Un altro metodo è quello di alternare tra posizioni estese e retratte dell'attuatore lineare ogni volta che viene rilevato il movimento, il che può essere utile nelle applicazioni di automazione domestica. L'implementazione di questo approccio è mostrata sopra. Nella routine di servizio di interruzione, il motiondetected Flag viene attivato ogni volta che il sensore PIR rileva il movimento. Quando la bandiera è impostata su alto, l'attuatore lineare viene esteso e quando la bandiera è impostata su basso, l'attuatore viene ritirato. Abbiamo anche aggiunto un altro timerflag di bandiera utilizzato per il ritardo di aggiunta dopo l'attivazione del rilevatore di movimento PIR. Questo flag è impostato quando l'interrupt viene prima attivato e viene inviato solo dopo il ritardo progettato, che è un minuto in questo esempio. Viene inoltre utilizzato per garantire che il valore del motiondetected FLAG non sia interrotto fino a dopo questo ritardo.

Riferimento:

  1. Tross, K. (2019, ottobre). La guida per principianti ai sensori di movimento. Recuperato da: https://www.safewise.com/resources/motion-sensor-guide/
Share This Article
Tags: