Sommario:
- Passaggio 1: Distinta base
- Passaggio 2: inizia a costruire una base in legno e perpex
- Passaggio 3: il distributore di gettoni
- Passaggio 4: rilevare se è stato erogato un token
- Passaggio 5: elettronica
- Passaggio 6: scheda sensore LoRaWAN
- Passaggio 7: TTN: la rete delle cose
- Passaggio 8: software
- Passaggio 9: avvio
- Passaggio 10: aggiunta/rimozione di un tag
- Passaggio 11: alcuni video che mostrano il funzionamento di Coin-O-Matic
Video: Distributore di gettoni Coin-O-Matic: 11 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Presso la nostra sede disponiamo di un distributore automatico che può accettare sia soldi veri che gettoni. La direzione ha deciso che avremmo potuto ottenere dei dolci gratuiti (entro limiti) per renderci felici e contenti dei bassi stipendi che guadagniamo. Il problema era, come lo avresti controllato? Il distributore automatico appartiene a un'azienda esterna, quindi le modifiche al distributore erano fuori discussione.
Entra nel Frankenstein Coin-O-Matic, una creazione della mia mente malata. Decidendo come farlo, ho pensato che i tag RFID sarebbero stati i migliori, dare a ogni dipendente un tag RFID e tenere traccia di quante volte il tag RFID viene strisciato. Quando il tag viene strisciato, viene erogato un gettone da utilizzare con il distributore automatico (uno sfogo libero). Ogni volta che il TAG viene strisciato, registra le informazioni su una scheda SD. Il numero di TAG viene anche caricato sul "cloud" utilizzando LoraWAN. Ho già giocato con LoRaWAN e thethingsnetwork (TTN) con alcuni sensori di temperatura e umidità, quindi abbiamo un gateway TTN. Il gateway TTN è un Raspberry PI 3 con un concentratore IMST connesso a TTN.
Passaggio 1: Distinta base
- Perspex da 3 mm
- Perspex da 1 mm
- Arduino Mega
- Arduino Pro Mini
- RFM95 Lora Radio
- Piccolo modulo I2C dell'orologio in tempo reale RTC DS1307
- LCD grafico a colori TFT da 2,2 pollici 240x320 ILI9341
- Convertitori di livello bidirezionali a 2 x 4 canali
- NeoPixel Ring 24 - LED RGB WS2812
- Kit di avvio RFID 13,56 MHz
- Modulo WiFi scheda di prova ESP8266 ESP12
- Modulo scheda SD
- 5 x pulsanti
- 2 x LED a tre colori
- Un sacco di fascette per cavi
- Un sacco di ponticelli breadboard
- legno 40mm x 40mm
- Modulo relè a 2 canali 5V 10 AMP
-
Modulo sensore fotoelettrico a raggio di luce a infrarossi 5VDC
Passaggio 2: inizia a costruire una base in legno e perpex
Iniziato con la costruzione di una scatola per ospitare tutta l'elettronica in Perspex da 3 mm, il Perspex e il logo sono stati tagliati utilizzando una macchina CNC. Il coperchio anteriore della scatola ospita lo schermo, i pulsanti e alcuni LED lampeggianti. I LED sono normali LED tricolore che alternano i colori, vedere BOM
Ho quindi usato un blocco di legno da 40 mm x 40 mm per costruire uno spazio per il distributore di monete e uno scivolo in cui far cadere il gettone. Il distributore di gettoni è composto da 3 piastre rotonde in perspex, quella superiore e quella inferiore sono in perspex da 3 mm e quella centrale che porta il gettone è in perspex da 1 mm. Il modo in cui funziona è che il piatto centrale si gira e prende un gettone dalla pila e lo trascina nel foro nel piatto inferiore e il gettone cade nello scivolo dei gettoni nelle mani sporche di un impiegato affamato.
L'impilatore di gettoni è un vecchio tubo dell'irrigatore che avevo in giro e il diametro era esattamente lo stesso dei gettoni. Ho praticato alcuni fori nel tubo dell'irrigatore in modo da poter vedere quanti gettoni sono impilati per la ricarica, se necessario. Il tubo dell'irrigatore è stato super incollato alla piastra superiore in Perspex.
Passaggio 3: il distributore di gettoni
Il motore per azionare la piastra centrale è un motore sincrono a 220 V CA di …. Non ne ho idea, l'ho trovato nella mia scatola dei ricambi, purché sia lento e forte. L'asta è stata incollata alla piastra centrale con una colla epossidica chiamata Pratex. Il modulo relè è attivato e il filo sotto tensione è collegato per far funzionare il motore. Ho praticato dei fori nella piastra inferiore per contrastare l'attrito, se fa la differenza, non lo so. Sono stati praticati 2 fori su entrambi i lati della piastra centrale per "afferrare" i gettoni. Il diametro dei fori è appena un po' più grande del diametro dei gettoni, quindi c'è un margine di errore quando si afferrano i gettoni.
Passaggio 4: rilevare se è stato erogato un token
Ho usato un modulo sensore fotoelettrico per questo, non vogliamo ostracizzare un dipendente, se non ha ricevuto un token dopo aver scansionato un tag. ora dovremmo?. Il record viene scritto solo sulla scheda SD, quando il rilevamento del token ha esito positivo, se non è stato rilevato alcun token, il display va su tutte le furie, incolpando il servizio in azienda e che il servizio fa schifo.. Nessun record è scritto in il caso in cui non ci siano gettoni da erogare. Ho incollato il fototransistor sul fondo dello scivolo in modo che il gettone spezzi il raggio quando passa attraverso il raggio
Passaggio 5: elettronica
Arduino Mega - Questo è il cervello del Coin-o-Matic, tutti i sensori ecc. sono collegati al Mega
Arduino Pro Mini e RFM95 Lora Radio - L'Arduino Pro Mini e l'Arduino Mega sono collegati tra loro tramite il bus seriale, quando viene scansionato un tag, il numero del tag viene inviato sul bus seriale dal Mega al Pro Mini. Il Pro Mini è sempre in loop, non appena viene ricevuto qualcosa sul bus seriale del Pro Mini, il numero di tag viene caricato su thethingsnetwork (TTN) utilizzando LoraWan. Non ho fatto alcuna integrazione su questo, ma il piano sarebbe avere un'istanza AWS per archiviare e ordinare le informazioni. Vedere il passaggio successivo per ulteriori informazioni.
Piccolo modulo I2C dell'orologio in tempo reale RTC DS1307 - Quando il Coin-O-Matic si avvia, accederà alla rete WiFi e otterrà l'ora da un server NTP tramite il modulo WiFi della scheda di test ESP8266 ESP12 e quindi imposterà l'ora RTC di conseguenza
LCD grafico a colori TFT da 2,2 240x320 ILI93412 - Il display principale, normalmente mostra un orologio e darà alcune parole di pensiero all'utente
Convertitori di livello bidirezionale a 4 canali - Poiché i pin digitali del Mega sono 5V, avevo bisogno che i convertitori comunicassero a un livello sicuro con alcuni dei moduli
NeoPixel Ring 24 RGB LED WS2812 - Fai un po' di luce per stordire e confondere l'utente
RFID Starter Kit 13,56 MHz - Il lettore RFID
Modulo scheda SD: scrivi il numero del tag, la data e l'ora per ogni passaggio del tag
Pulsanti - L'amministratore che ha il tag master, caricherà nuovi tag e io uso uno dei pulsanti per mettere in pausa la visualizzazione finché non possono copiare il numero del tag e registrare chi ha il tag. Gli altri 4 pulsanti sono cablati ma non vengono utilizzati in questo momento
LED tricolore - Più luce per stordire e confondere gli utenti
Un sacco di fascette per cavi: cerca di mettere ordine in tutti i fili
Un sacco di ponticelli per breadboard - Collega il materiale
Modulo relè 5V a 2 canali 10 AMP 5VDC - Un relè viene utilizzato per alimentare il motore del distributore di monete e l'altro per alimentare il modulo ESP8266, anche il programma del modulo ESP8266 è in loop, non appena si accende, lo farà accedi alla rete WiFi ed esegui una chiamata a tempo NTP. Per ridurre al minimo le chiamate di tempo NTP, ho deciso di alimentarlo con il relè, IE attivare il relè, attivare il modulo ESP, il modulo ESP prendi l'ora e il relè riaccende il modulo … E fa anche dei bei clic
Modulo sensore fotoelettrico a raggio di luce a infrarossi - Per rilevare se è stato erogato un gettone
Passaggio 6: scheda sensore LoRaWAN
I file di progettazione Eagle sono allegati, la tavola è di mia fabbricazione, ma io uso un'azienda per produrre la tavola stessa. Questa scheda può essere utilizzata anche come scheda sensore LoRAWAN, è estremamente piccola, ~ 37 mm x 54 mm, si adatta a un sensore di temperatura e umidità DHT 22 o DHT 11 così com'è.
Passaggio 7: TTN: la rete delle cose
Ci sono molte informazioni su questo su
www.thethingsnetwork.org/
Fondamentalmente, il Coin-O-Matic parla tramite LoraWAN (l'Arduino Pro Mini con la radio RFM95) a un gateway (Raspberry Pi con concentratore IMST) che è connesso a TTN via Internet, da TTN puoi fare molte integrazioni, IE Swagger, AWS, http ecc., l'immagine sopra mostra alcuni passaggi di tag in ufficio
Passaggio 8: software
Il software è diviso in 3 parti
getNTPtime_instructables - Il programma ESP8266, devi cambiare ssid, password e ntpServerName prima del caricamento. Uso un programmatore di base FTDI, collego terra, TX e RX. Ricordati di scegliere il modulo ESP nell'IDE Arduino e di sistemare i pin sull'ESP per metterlo in modalità di programmazione
Coin-O-Matic_instructables - Il programma Coin-O-Matic. Questo viene caricato su Arduino Mega, le modifiche necessarie qui è il numero del tag principale -
byte masterCard[cardSize] = {121, 178, 151, 26};
pro_mini_instructables - Il programma LoRaWAN. Questo viene caricato sul Pro Mini, vedere lo schema per maggiori dettagli su come cablare la radio e quali PIN utilizzare. L'indirizzo del dispositivo, la chiave della sessione di rete e la chiave della sessione dell'app devono essere modificati dopo aver effettuato la registrazione del dispositivo su TTN, se si utilizza ABP
static const PROGMEM u1_t NWKSKEY[16] = { };s]
static const u1_t PROGMEM APPSKEY[16] = { };
statico const u4_t DEVADDR = 0x; // <-- Cambia questo indirizzo per ogni nodo!
Passaggio 9: avvio
Il video mostra l'attivazione del relè (relè 1), il modulo ESP8266 accede alla rete WiFi, invia un segnale orario getNTP e ottiene l'ora dal server NTP, dopo che l'ora è stata aggiornata con successo, il relè si disattiva e rimuove l'alimentazione al ESP8266. Se qualcosa va storto e l'aggiornamento dell'ora non è riuscito, Arduino Mega si riavvia e riprova. Il modulo ESP8266 e l'Arduino Mega sono collegati tra loro tramite le porte seriali (Serial2 sul Mega), l'Arduino Mega ascolta una risposta dall'ESP8266, il messaggio si presenta così "UNX [e il timestamp dell'epoca]", Sono in GMT+2, quindi nel codice Arduino Mega, aggiungo GMT+2 come segue
time_t gmtTimeVar = newTimeVar+7200;
rtc.adjust(DateTime(gmtTimeVar));
Passaggio 10: aggiunta/rimozione di un tag
Il tag master viene scansionato e il display indica che questo è il tag master. Il nuovo tag viene scansionato e il numero del tag viene visualizzato sullo schermo e dà all'utente il tempo di prendere nota del numero e registrare chi ha il nuovo tag. Il numero del tag verrà scritto nel database non appena l'utente preme il pulsante sinistro. La stessa procedura viene seguita per rimuovere un tag dal database
Passaggio 11: alcuni video che mostrano il funzionamento di Coin-O-Matic
Ho usato node-red per integrarmi con Telegram, node-red ha un modulo di integrazione per TTN, quindi cosa succede quando scansioni un tag?
- Il tag viene scansionato
- txt sulla scheda SD viene letto per vedere se è un tag valido
- Se il tag è valido, viene scritto un timestamp con il numero del tag in un file txt sulla scheda SD
- Il numero del tag viene inviato tramite LoRaWAN e il gateway Raspberry PI alla rete TTN
- Node-red si iscrive ai messaggi MQTT sulla rete TTN
- Node-Red invia il numero di tag da HEX a DEC decodificato a un file di script bash in esecuzione su un server localmente
- Lo script bash scansiona un file txt con TAG NUMBERS e NAMES
- Il file script bash carica il messaggio su un Telegram BOT con curl contenente il TAG NUMBER e il nome della persona
Bello e complesso, adoro come un compito così semplice diventi così complesso
Fatemi sapere cosa ne pensate nei commenti qui sotto
Consigliato:
Distributore automatico di farmaci: 5 passaggi
Distributore automatico di farmaci: questo progetto è destinato all'uso in campo medico, in cui i pazienti anziani devono disporre di un modo affidabile per porzionare e dispensare i farmaci. Questo dispositivo consente di porzionare i farmaci fino a 9 giorni in anticipo e di essere dispensati automaticamente a piacimento
Gettoni vivavoce: 15 passaggi (con immagini)
Token a mani libere: Hey Geeks, ora sto studiando in +2 che equivale a 12th Grade. Sono molto interessato all'informatica e anche la mia materia principale è quella. Ho dedicato molto tempo allo sviluppo di progetti Embedded. Ho circa 3 anni di esperienza nell'incorporamento
DISTRIBUTORE AUTOMATICO DI PET FOOD: 9 passaggi
DISTRIBUTORE AUTOMATICO DI ALIMENTI PER ANIMALI: Hai mai avuto voglia di perdere troppo tempo a dare da mangiare al tuo animale domestico? Hai mai dovuto chiamare qualcuno per dare da mangiare ai tuoi animali domestici mentre eri in vacanza? Ho cercato di risolvere entrambi questi problemi con il mio attuale progetto scolastico: Petfeed
Distributore automatico di caramelle: 5 passaggi
CandyVendingMachine: il distributore automatico di caramelle funziona davvero
Gettoni del carrello della spesa: 8 passaggi
Gettoni per carrello della spesa: - Questo tutorial ti mostrerà come creare un gettone per carrello della spesa semplice ma efficace tagliato al laser o stampato in 3D- Questo prodotto è utile da avere sulle chiavi o come regalo per familiari e amici.- Questo prodotto è realizzato al meglio su Tinker specifiche CAD