Sommario:
- Passaggio 1: materiale necessario
- Passaggio 2: parte di programmazione
- Passaggio 3: assemblaggio elettronico
- Passaggio 4: acquisizione dati
- Passaggio 5: banca dati
- Passaggio 6: dimostrazione
Video: Braccialetto di orientamento connesso: 6 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Questo progetto accademico, il braccialetto di orientamento connesso, è stato realizzato da quattro studenti della scuola di ingegneria Polytech Paris-UPMC: Sébastien Potet, Pauline Pham, Kevin Antunes e Boris Bras.
Qual è il nostro progetto?
Durante un semestre, abbiamo dovuto creare un braccialetto connesso che sarà utilizzato da un corridore. Il suo percorso di gara sarà orientato da più punti in cui taggherà, e questo permetterà di registrare il suo percorso. Questi dati verranno archiviati su un cloud in tempo reale.
Questo prodotto può fornire la temperatura, l'umidità e l'orientamento. Inoltre, abbiamo tre pulsanti di cui uno che invia una posizione GPS nel caso in cui il corridore abbia un problema (pulsante SOS), ecco perché ne abbiamo bisogno in tempo reale. Il secondo permette di taggare e l'ultimo di spegnere il braccialetto perché vogliamo un prodotto a basso consumo.
Avevamo un budget di 120€. Per realizzare un braccialetto di orientamento connesso, segui il nostro tutorial!
Passaggio 1: materiale necessario
Elenco dei componenti:
- STM32L432KC-Nucleo Ultra Low Power
- Modulo SigFox TD1208
- Lettore RFID 125kHz
- Sensore di temperatura/umidità HTU21D
- Modulo accelerometro 3 assi ADXL345
- Modulo bussola 3 assi HMC5883L
- Schermo OLED ADA938
- Modulo GPS Grove 31275
- Batteria 1,5 V LR6
- Regolatore di tensione Pololu 3.3V U1V11F3
- Alcuni pulsanti di controllo
Passaggio 2: parte di programmazione
Prima di tutto, abbiamo programmato ogni componente con il sito per sviluppatori mbed. Per questo, abbiamo utilizzato un microcontrollore STM32L476RG-Nucleo a basso consumo.
Lo schermo, il sensore di temperatura/umidità e la bussola funzionano in comunicazione I²C. Il lettore RFID e l'accelerometro funzionano in comunicazione seriale. Per ogni componente, dovevi aggiungere la propria libreria.
Per il sensore di temperatura/umidità, la bussola e l'accelerometro, è necessario chiamare una funzione definita sulla loro libreria per ottenere i dati.
Il lettore RFID funziona su comunicazione seriale, bisogna usare la funzione "getc()" perchè il tag restituisce i dati in char.
Tutti i codici sono disponibili come file, eccetto il codice dello schermo OLED.
Passaggio 3: assemblaggio elettronico
Dopo aver programmato ogni componente, abbiamo preso una piastra labdec e li abbiamo cablati sull'STM32L432KC-Nucleo. Seguire lo schema elettrico in allegato per assemblare tutti i componenti, oppure ogni PIN è dettagliato sull'assieme del codice.
Abbiamo aggiunto tre pulsanti con tre resistenze da 10 Kilo ohm: uno invia la posizione GPS in caso di pericolo, uno per accendere/spegnere e l'ultimo per consentire al corridore di marcare il punto. Abbiamo aggiunto un segnale acustico quando premi il pulsante SOS.
Il file "braceletOrientation" in allegato è il nostro progetto su Fritzing. Questo è un file riassuntivo dei nostri componenti e del nostro cablaggio su labdec e su PCB. Inoltre, abbiamo aggiunto il codice assembly di tutti i componenti.
Passaggio 4: acquisizione dati
Actoboard
Actoboard è uno strumento basato su dashboard. Visualizza tutti i dati inviati dal modulo Sigfox. Invierà quindi tramite URL questi dati a nodered per essere inseriti nel database.
Invia i dati:
Per inviare i dati tramite il tuo codice devi prima dichiarare il PIN (Tx, Rx) del modulo Sigfox (lo trovi nel nostro codice). Successivamente, grazie a questo comando: "sigfox.printf("AT$SF=%02X%02X%02X%02X%02X%02X \r\n", lat_deg, long_deg, lat_10s, long_10s, lat_100s, long_100s);", questo esempio invia i dati del GPS ad Actoboard.
Ricevi i dati:
Dopo aver configurato le origini dati in relazione al modulo Sigfox, è necessario impostare il formato dati per ricevere i dati dal codice. Per lo stesso esempio di prima (GPS) devi impostare il formato dei dati in questo modo: "lat_deg::uint:8 long_deg::uint:8 lat_10s::uint:8 long_10s::uint:8 lat_100s::uint:8 long_100s::uint:8".
Fai attenzione al tipo e al numero di bit, devi avere esattamente la stessa lunghezza. Quindi ti consiglio di inserire i tuoi dati nel tuo codice in questo modo: "lat_deg = (int8_t)lat_deg;".
Fai attenzione anche al numero di cifre, in questo esempio trasmettiamo solo dati con 2 cifre max. Ma se vuoi trasferire dati più grandi come "%04X" potresti sapere che Actoboard invertirà la cifra. Ad esempio, se trasmetti 0x3040, Actoboard capirà 0x4030. Quindi è necessario invertire la cifra prima di inviare un formato dati che superi le 2 cifre.
Modifica dashboard:
Per modificare i tuoi dati in una Dashboard su Actoboard, devi solo aggiungere un widget. C'è un elenco di widget, devi scegliere quello che corrisponde al meglio per il tuo sistema. E dopo devi solo scegliere quali dati andranno a riempire quale widget.
Trasmetti a nodered:
Per trasferire tutti i dati che ricevi su Actoboard a nodered tramite URL, devi solo compilare la casella "URL di inoltro" nelle tue impostazioni con l'URL del tuo progetto nodered. Ad esempio, abbiamo riempito la casella con "https://noderedprojet.mybluemix.net/projet".
Passaggio 5: banca dati
Bluemix
- Nodato:
- Ricevi il modulo dati Actoboard
Per ottenere il modulo dati Actoboard, devi aggiungere un input "websocket" che devi impostare il metodo tramite "POST" e specificare il tuo URL (esempio nella foto).
Formattazione dei dati
Devi estrarre i dati che vuoi aggiungere nel tuo database (cloudant) e formattarli. per questo, è necessario aggiungere un blocco "funzione". Guarda la foto in allegato per capire come farlo.
Puoi aggiungere elementi geometri su una mappa, ad esempio, abbiamo una funzione che aggiunge un punto con la coordinata GPS su una mappa e li collega. Usiamo questa funzione per creare la gara e dopo, cambiamo l'altra funzione che creerà un poligono attorno al punto se controlli un TAG RFID.
Invia a cloudant
Dopo la formattazione dei dati, è necessario inviarli al DataBase cloudant. Per questo, devi aggiungere un blocco di archiviazione "cloudant" e specificare le impostazioni come il nome del tuo DataBase, l'operazione "inserisci" vedi il nostro esempio in allegato.
Non dimenticare di "distribuire" il tuo nodo affinché il tuo sistema funzioni.
Nuvoloso:
Nel tuo database cloudant, ora puoi vedere tutti i dati che hai inviato con il sigfox e la formattazione nel nodo rosso. Puoi scegliere quali informazioni vuoi vedere come "data, dispositivo, TAG RFID, GPS".
E puoi visualizzare le cose geomtry che hai creato nella funzione nodered nel menu "gps Geospatial Indexes"
Passaggio 6: dimostrazione
Per riassumere, avevamo quattro Interfacce Uomo-Macchina controllate da quattro pulsanti.
L'interfaccia di base indica la temperatura, l'umidità, il numero del tag, un cronometro e la direzione magnetica.
Su uno dei pulsanti di azione, troverai una vera bussola dell'interfaccia. Verrà disegnato un cerchio sullo schermo con la direzione ben posizionata.
Su un'altra azione del pulsante, invierai un messaggio SOS che invierà la tua posizione al database. Inoltre ascolterai un messaggio SOS in codice morse.
Inoltre, all'ultima azione del pulsante riattiverai il tag RFID. Dopodiché hai cinque secondi per contrassegnare il tuo punto di attraversamento. Quindi sentirai un segnale acustico. Questa azione aumenta un contatore sul display e invia il tag con l'ora sul nostro database. Infine, tutti i tag disegneranno la corsa su una mappa.
L'autonomia del nostro orologio è di circa 4h30 (circa 660mA/h). Dipende dal numero di tag selezionato.
Per concludere dopo la gara, troverai tutte le azioni del corridore sul nostro database bluemix.
Consigliato:
Braccialetto LED: 8 passaggi (con immagini)
Braccialetto LED: cuci il tuo braccialetto LED e indossalo! Il tuo braccialetto si illuminerà quando lo farai scattare insieme e chiuderai il circuito. Cuci il tuo circuito e poi decoralo come preferisci! Se stai insegnando questo come seminario, usa il mio file pdf di un foglio qui sotto. Dai un'occhiata
Braccialetto Musical Circuit Playground Express: 5 passaggi
Braccialetto Musical Circuit Playground Express: per creare questo braccialetto musicale avrai bisogno di The Circuit Playground Express Un computer Un ago da cucito Filo Un pezzo di feltro lungo Forbici
Studiare l'orientamento con Raspberry Pi e MXC6226XU usando Python: 6 passaggi
Studiare l'orientamento con Raspberry Pi e MXC6226XU utilizzando Python: i rumori sono semplicemente una parte del funzionamento di un veicolo. Il ronzio di un motore di un veicolo molto sintonizzato è un suono magnifico. Il battistrada dei pneumatici mormora contro la strada, il vento strilla mentre gira intorno agli specchietti, pezzi di plastica e pezzi nel cruscotto producono l
Orientamento della mappa tramite server Web: 6 passaggi
Orientamento della mappa tramite server Web: Internet of Things (IoT) è uno degli argomenti più popolari sul pianeta in questo momento. E sta crescendo rapidamente di giorno in giorno con Internet. L'Internet delle cose sta trasformando le semplici case in case intelligenti, dove tutto, dalle luci alle serrature, può
Progettazione e Realizzazione di un Sistema di Orientamento dei Pannelli Fotovoltaici: 5 Step
Progettazione e Realizzazione di un Sistema di Orientamento Pannelli Fotovoltaici: Progettazione e Realizzazione di un Sistema di Orientamento Pannelli Fotovoltaici