Come costruire una piattaforma di panoramica e inclinazione della telecamera Pi senza fili

Con il rilascio del modulo della fotocamera Raspberry Pi, scattare foto di alta qualità o video, con il Pi è diventato molto semplice.

In questo tutorial, ti mostrerò come collegare il modulo fotocamera Pi al tuo Pi e controllare in modalità wireless una piattaforma pan tilt. Nel processo, tratterò argomenti che includono il collegamento del modulo fotocamera Pi, il collegamento e il controllo dei servi con il Pi, il controllo della riga di comando della telecamera e alcuni comandi di streaming video di basso livello.


Raccogli i componenti

  • Raspberry Pi Model B
  • Alimentazione elettrica
  • scheda SD
  • Modulo fotocamera Raspberry Pi
  • Staffa di panoramica / inclinazione
  • Due servi
  • Fili di aggancio maschio-femmina
  • Pi fotocamera mount
  • Modulo WiFi USB
  • 6-32 vite per collegare il supporto alla staffa (o qualsiasi cosa funzioni per voi. Vedere le istruzioni di seguito).
  • Mattoncini Lego
  • Tastiera / mouse USB (per l'installazione È disponibile solo una USB per entrambi, quindi è consigliato un hub USB o una combinazione tastiera / mouse.)
  • Monitor HDMI (per impostazione)

Imposta la piattaforma Pi

Impostare e assemblare i componenti Pi di base con i seguenti passaggi.

  • Masterizzare l'ultima immagine Raspbian sulla scheda SD seguendo le istruzioni del tutorial Come eseguire il flashing di una scheda SD per Raspberry Pi
  • Collegare il mouse / tastiera USB alla porta USB inferiore
  • Collegare l'adattatore USB Wifi alla porta USB. L'antenna può essere posizionata per piegarsi.
  • Collegare il monitor HDMI alla porta HDMI
  • Collega il potere al Pi

Configura Pi e Abilita supporto telecamera

Al momento dell'avvio, il Pi eseguirà la prima configurazione di avvio di raspi-config. Ci sono molte opzioni riguardanti la partizione della scheda SD, la regione, la tastiera, ecc. Che non sono trattate qui. Seleziona le opzioni appropriate per la tua configurazione e paga una nota speciale alle seguenti opzioni:

  • Per ora, scegli di avviarlo su un desktop, in quanto semplifica la configurazione del wifi in un secondo momento
  • Selezionare Abilita fotocamera per abilitare questa opzione
  • Selezionare Opzioni avanzate> SSH per abilitare l'accesso alla riga di comando della rete
  • Selezionare la fine e consentire al Pi di riavviarsi

Configura Wifi e riconfigura le preferenze di avvio

Dopo il riavvio di Pi su un desktop, seguire queste istruzioni su come utilizzare lo strumento GUI per configurare la rete Wi-Fi. Assicurati di annotare l'indirizzo IP che il tuo Pi è assegnato per un uso futuro quando si usa SSH per il controllo remoto. Infine, segui i passaggi seguenti per riconfigurare il Pi per avviare una console di testo. L'ambiente grafico grafico non sarà necessario.

  • Aprire una finestra del terminale facendo doppio clic sull'icona LXTerminal.
  • Esegui il comando sudo raspi-config
  • Seleziona il Abilita avvio su Desktop / Scratch> Console di testo console, che richiede l'accesso (impostazione predefinita) opzione
  • Selezionare finire e non permettere al Pi di riavviarsi
  • Spegni il Pi e scollega l'alimentazione prima di continuare con i passaggi successivi

Assemblare il supporto per videocamera

Il supporto per videocamera è dotato di minuscoli elementi di fissaggio in plastica che si inseriscono attraverso i quattro fori con i dadi che si avvitano su di essi dal retro. Fare riferimento alle immagini del prodotto sul sito Web del fornitore per vedere da vicino le immagini di come questi componenti combaciano.

  • Attaccare il modulo della videocamera alla piastra anteriore del supporto della telecamera usando gli elementi di fissaggio attraverso i quattro fori. Ho scoperto che usare un rig manuale era il modo più semplice per tenere la montatura e lasciare abbastanza dita libere per mettere in fila questi minuscoli componenti. Non stringere i dadi fino in fondo mentre li si collega. Una volta che tutti e quattro sono a posto, puoi stringere se necessario.
  • Inserisci le due sezioni del supporto della videocamera insieme a 90 gradi in modo che assomiglino alle foto del prodotto. Le sezioni si incastrano dolcemente.

Assemblare il Pan Tilt Bracket

La staffa è dotata di tre parti metalliche e un set di viti e rondelle. Seguire la guida di assemblaggio per mettere insieme la staffa. Ti offrirò alcuni suggerimenti da considerare mentre segui le istruzioni.

  • Mentre si fissano le staffe insieme, non serrare completamente i bulloni e le viti fino a quando tutte le parti non sono state assemblate in modo lasco. Mantenerlo allentato renderà più facile la regolazione.
  • Non serrare eccessivamente le viti che collegano il segnalatore acustico (rotella) alla staffa. Queste corna sono fatte di plastica morbida e possono essere facilmente rimosse. Stringere delicatamente queste viti.
  • Ho trovato che tre rondelle tra le due staffe viste sul lato sinistro del punto quattro nelle istruzioni erano la soluzione migliore per il mio assemblaggio. Queste rondelle aggiuntive riempivano lo spazio e lasciavano allineare le staffe meglio di una rondella singola. Le rondelle extra sono fornite nel kit.

Costruisci la base

La staffa non si regge da sola perché è supportata solo dal piccolo servo. Qualsiasi metodo per fissare l'asse inferiore o il servo di panoramica è accettabile. Lego può essere utilizzato per creare una base facile e veloce. Prenditi del tempo per costruire una base per il servo in basso che la manterrà saldamente in posizione e consentire alla staffa di girare liberamente.

Fissare il servo nella base prima di collegare il supporto della videocamera alla base. Ciò renderà molto più semplice il collegamento della fotocamera al Pi. Puoi vedere nella foto qui sotto che sono stato in grado di costruire un semplice supporto di base usando un set di Lego piatto e due alte pareti in mattoni con uno spacco largo a due prigioni. Perno è il termine ufficiale per i dossi su un mattoncino Lego secondo il sito web di Lego. Il vocabolario accurato è importante qui.


Lego Base Close Up

Collega la fotocamera al Pi

Il processo per connettere il modulo della videocamera è molto semplice. C'è un video dettagliato con le istruzioni sulla pagina ufficiale del modulo fotocamera Raspberry Pi. Riassumerò i passaggi qui:

  • Individuare il connettore direttamente dietro la porta Ethernet sul Pi
  • Usando due dita sollevare delicatamente le linguette di plastica su entrambi i lati del connettore
  • Orientare il cavo a nastro in modo che i fili di stagno esposti puntino lontano dal connettore ethernet sulla scheda
  • Far scorrere delicatamente il cavo nel connettore in modo che si adatti saldamente e perfettamente alla scheda
  • Usando due dita fai scorrere il connettore di plastica chiuso

Attaccare il supporto per videocamera alla staffa

Usando la vite 6-32, avvitare il foro di montaggio nel supporto della telecamera nella staffa. Utilizzare la fessura più piccola nella staffa per fissare la fotocamera vicino alla parte anteriore piuttosto che al grande foro centrale. Ho usato il 6-32 perché dopo molte prove ed errori ho scoperto che non avevo una combinazione di dadi / bulloni abbastanza piccola e in un ultimo sforzo per evitare un viaggio nel negozio di ferramenta ho provato alcune viti del telaio del PC che avevo messo in giro . È successo infilarsi perfettamente nella parte superiore della staffa e non ha richiesto un bullone. Quindi fai ciò che funziona per te.


Attacca il supporto della videocamera a questo slot

Connetti i Servo al Pi

I servi hanno tre fili per il collegamento a un controller. I fili rosso, nero e bianco servono per collegare rispettivamente potenza, massa e segnale. Per queste istruzioni farò riferimento al servo di controllo in basso o in pan come servo 0 e al servo di controllo in alto o tilt come servo 1. Questa distinzione è importante e diventerà più chiara nella sezione Servoblaster del tutorial. Il diagramma di pinout su elinux.org ha dei dettagli sui perni e sui loro scopi. L'immagine sotto mostra i ponticelli M / F colorati collegati ai pin corretti per questo tutorial.

Per il montaggio, collegare l'estremità maschio del ponticello al cablaggio del servo femmina per ciascuno dei tre colori, rispettivamente. Dato che il mio jumper pack non aveva il bianco, usavo il giallo. Usa un colore coerente nel tuo schema per assicurarti di non confondere le funzioni.

  • Collega il cavo di alimentazione rosso del servo 0 al pin 2 (+ 5v), il pin più a destra nell'immagine qui sotto
  • Collegare il cavo di massa nero del servo 0 al pin 6 (terra), il terzo pin dalla parte superiore sulla colonna destra
  • Collegare il cavo del segnale bianco / giallo del servo 0 al pin 7 (GPIO 4), il quarto pin in basso sulla colonna sinistra
  • Collegare il cavo di alimentazione rosso del servo 1 al pin 4 (+ 5v), il secondo pin in basso a destra
  • Collegare il cavo di terra nero del servo 1 al pin 14 (massa), il settimo perno in basso sulla colonna destra
  • Collegare il cavo del segnale bianco / giallo del servo 1 al pin 11 (GPIO17), il sesto pin in basso sulla colonna sinistra

Pins connessi
Assemblea completata

Installa Servoblaster

Ora che l'hardware è tutto assemblato e connesso, è necessario il software per controllare il servo. Il sito github di servoblaster ha una buona documentazione sul software se vuoi saperne di più.

In sostanza, l'installazione di servoblaster aggiunge uno script init per avviare il processo servoblaster all'avvio. Il processo servoblaster crea a / Dev / servoblaster entrata che quando indirizzata controlla correttamente il segnale PWM che controlla la posizione del servomotore. Dalla console Pi o dalla sessione SSH, eseguire i comandi seguenti per scaricare e installare il software.

 wget https://github.com/richardghirst/PiBits/zipball/master mv master pibits.zip unzip pibits.zip #unzip il codice cd richardghirst-PiBits-ab34d81 / ServoBlaster / utente sudo make install #install il software #change timeout da Da 2000 a 500 /etc/init.d/servoblaster sudo pico /etc/init.d/servoblaster sudo reboot

Invia comandi ai servi

Dopo che il Pi è stato riavviato con il processo servoblaster ora in esecuzione, è possibile provare alcuni comandi per spostare la parentesi. SSH nel tuo Pi e prova i comandi sottostanti.

Il seguente comando sposta il pan o il servo dell'asse sinistro / destro, servo 0. Sostituisci X con un valore compreso tra 60 e 240. Questo farà muovere il servo in giro. Prova alcuni valori diversi.

echo 0 = X> / dev / servoblaster

Il seguente comando sposterà il servo di inclinazione o su / giù, servo 1. Sostituisci Y con un valore compreso tra 60 e 240. Questo farà muovere il servo in giro. Prova alcuni valori diversi.

echo 1 = Y> / dev / servoblaster

Scatta foto e video con la fotocamera

Fotografare con il Pi è molto semplice. Prova il comando seguente per scattare una foto sul file denominato output.jpg. Dovrai scpare il file dal Pi al tuo computer per vederlo, ma ottieni l'immagine.

raspistill -o output.jpg

Per fare un video, il comando di base è anche abbastanza semplice. Di seguito viene creato un file video con codifica h264 della durata di 10000 millisecondi o 10 secondi. Ancora una volta, è necessario scp per copiare questo dal Pi e visualizzarlo.

raspivido -o video.h264 -t 10000

Scripting Movements and Pictures

Ora che hai le basi per spostare la videocamera tramite la staffa di panoramica / inclinazione e i servi così come i comandi per scattare le foto, è piuttosto semplice scrivere uno script che sposterà la fotocamera su angoli predefiniti e catturerà immagini o immagini. Se si imposta apache sul Pi, è possibile rilasciare queste immagini o video nel / Var / www / directory per la visione successiva.

È anche possibile creare un'attività cron per eseguire lo script a intervalli periodici. Hai tutte le basi per un progetto di osservazione di animali o natura. Di seguito è riportato uno script di esempio che ho scritto per testare il progetto e un video del sistema in azione.

 #! / bin / bash #go per avviare possition echo 0 = 60> / dev / servoblaster sleep 1 echo 1 = 135> / dev / servoblaster sleep 1 raspistill -o step1.jpg echo 0 = 240> / dev / servoblaster sleep 1 raspistill -o step2.jpg echo 0 = 130> / dev / servoblaster sleep 1 raspistill -o step3.jpg echo 0 = 60> / dev / servoblaster sleep 1 echo 1 = 60> / dev / servoblaster sleep 1 raspistill -o step4. jpg echo 1 = 140> / dev / servoblaster sleep 1 raspistill -o step5.jpg echo 1 = 220> / dev / servoblaster sleep 1 raspistill -o step6.jpg echo 1 = 135> / dev / servoblaster sleep 1 raspistill -o step7 .jpg

Il video mostra la staffa di panoramica / inclinazione che risponde allo script sopra:


Come costruire una piattaforma di panoramica e inclinazione della telecamera Pi senza fili

Esempio di video in streaming

Le immagini fisse sono divertenti, ma nel prossimo esperimento sarai in grado di riprodurre video in streaming dalla videocamera al tuo computer attraverso la rete. A seconda della velocità della tua rete Wi-Fi, la qualità può variare. Ho usato un computer Linux come destinazione o ricevitore video. Mplayer e Netcat esistono sia per Windows che per OS X, tuttavia alcune sintassi possono variare a seconda dei sistemi operativi. Usa ifconfig, ipconfig o ipconfig per determinare il tuo indirizzo IP su Linux, Windows o OS X rispettivamente. In questo esempio 192.168.1.100 è l'indirizzo del portatile di destinazione.

Il comando seguente ascolterà sul computer di destinazione per il video in arrivo sulla porta 5001 e lo visualizzerà:

nc -k -l 192.168.1.100 5001 | mplayer -fps 31 -cache 1024 -

Il comando seguente inizierà a registrare video sul Pi e lo trasmetterà al computer di visualizzazione di destinazione:

raspivid -t 100000 -o - | nc 192.168.1.100 5001 &

Il & al termine del comando sul Pi rilascia le istruzioni sullo sfondo in modo da poter utilizzare il terminale aperto per impartire comandi di movimento. Prova alcuni comandi servo come quelli qui sotto e guarda come risponde il video.

echo 0 = 60> / dev / servoblaster echo 1 = 60> / dev / servoblaster echo 1 = 140> / dev / servoblaster
Mancia: L'emissione di comandi ai servo che li facessero funzionare entrambi allo stesso tempo ha causato qualche instabilità della rete per me. Per risultati migliori, potrebbe essere necessario un alimentatore esterno da 5 V per non sovraccaricare il Pi.

Sommario

Congratulazioni! Ora disponi di una fotocamera wireless, panoramica / inclinabile che puoi scrivere e modificare per le tue esigenze specifiche. Come passo successivo, potresti provare ad ottimizzarlo costruendo un case full lego per Pi e la staffa insieme. Un altro esercizio potrebbe essere quello di impostare un cron job per scattare foto in determinati orari e indicazioni e inviarle via email.

Questo tutorial ti ha insegnato le basi su come collegare e configurare il modulo fotocamera Pi, come connettere e controllare più servi, come prendere il controllo da riga di comando della fotocamera per immagini fisse e video e infine come testare la tua configurazione con alcuni bassi comandi di streaming video di livello. Con questi strumenti di base ora puoi aggiungere una versatile piattaforma per fotocamera ai tuoi progetti futuri.