Taula de continguts:
- Pas 1: llista de materials
- Pas 2: Començar a construir una base de fusta i perímetre
- Pas 3: el dispensador de token
- Pas 4: detectar si s'ha dispensat un testimoni
- Pas 5: electrònica
- Pas 6: placa del sensor LoRaWAN
- Pas 7: TTN: la xarxa de coses
- Pas 8: programari
- Pas 9: arrencada
- Pas 10: afegir o eliminar una etiqueta
- Pas 11: Alguns vídeos que mostren el funcionament de Coin-O-Matic
Vídeo: Distribuïdor de tokens Coin-O-Matic: 11 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
A la nostra oficina tenim una màquina expenedora que pot agafar diners reals o fitxes. La direcció va decidir que podríem obtenir dolços gratuïts (dins dels límits) per mantenir-nos contents i satisfets amb els baixos salaris que guanyàvem. El problema era, com controlaríeu això? La màquina expenedora pertany a una empresa externa, de manera que les modificacions de la màquina expenedora quedaven fora de dubte.
Entra a la Frankenstein Coin-O-Matic, una creació de la meva ment malalta. En decidir com fer-ho, vaig pensar que les etiquetes RFID serien les millors, donaríeu a cada empleat una etiqueta RFID i fer un registre de la quantitat de vegades que es passés l’etiqueta RFID. Quan es llisca l’etiqueta, es dispensa un testimoni per utilitzar-lo amb la màquina expenedora (un respirador gratuït). Cada cop que es passa el TAG, registreu la informació en una targeta SD. El número TAG també es penja al "núvol" mitjançant LoraWAN. Ja he estat jugant amb LoRaWAN i thethingsnetwork (TTN) amb alguns sensors de temperatura i humitat, de manera que tenim un TTN Gateway. El TTN Gateway és un Raspberry PI 3 amb un concentrador IMST connectat a TTN.
Pas 1: llista de materials
- Alguns Perspex de 3 mm
- Una mica de píxel d'1 mm
- Arduino Mega
- Arduino Pro Mini
- RFM95 Lora Radio
- Tiny RTC DS1307 Mòdul de rellotge en temps real I2C
- Color gràfic LCD TFT de 2,2 "240x320 ILI9341
- Convertidors de nivell bidireccional de 2 x 4 canals
- Anell NeoPixel 24 - LED RGB WS2812
- Kit d'inici RFID a 13,56 MHz
- Mòdul WiFi ESP8266 ESP12 Test Board
- Mòdul de targeta SD
- 5 botons polsadors
- 2 x LED tricolor
- Molts i molts llaços de cable
- Molts ponts de taula
- Fusta de 40 mm x 40 mm
- Mòdul de relé 2 canals 5V 10 AMP
-
Mòdul de sensor fotoelèctric de feix de llum infraroig de 5VDC
Pas 2: Començar a construir una base de fusta i perímetre
Va començar amb la construcció d'una caixa per allotjar tota l'electrònica de Perspex de 3 mm, el Perspex i el logotip es van tallar mitjançant una màquina CNC. La tapa frontal de la caixa conté la pantalla, els botons i alguns LED intermitents. Els LED són LED tricolors normals que circulen a través dels colors, vegeu la llista de materials
Aleshores vaig fer servir un bloc de fusta de 40 mm x 40 mm per construir un lloc per al dispensador de monedes i un canal per deixar caure la fitxa. El dispensador de fitxes consta de 3 plaques rodones de Perspex, la superior i la inferior són de Perspex de 3 mm i la mitjana que porta la fitxa és de Perspex d’1 mm. La forma en què funciona és que la placa central gira i agafa una fitxa de la pila i l’arrossega fins al forat de la placa inferior i la fitxa cau a la canaleta de fitxes fins a les mans malhumorades d’espera d’algun empleat famolenc.
L’apilador de fitxes és un antic tub d’aspersió que tenia al voltant i el diàmetre era exactament el mateix que les fitxes. He foradat alguns forats al tub de l’aspersor per poder veure quantes fitxes s’apilen per tornar-les a omplir si cal. El tub de l’aspersor es va enganxar a la placa superior de Perspex.
Pas 3: el dispensador de token
El motor per accionar la placa central és un motor síncron de 220V CA de … No en tinc ni idea, la vaig trobar a la meva caixa de recanvis, sempre que sigui lenta i forta. L'eix es va enganxar a la placa mitjana amb una mica de cola epoxi anomenada Pratex. S'activa el mòdul de relé i es connecta el cable actiu per fer funcionar el motor. He foradat alguns forats a la placa inferior per contrarestar la fricció, si ho fa, no ho sé. Es van tallar 2 forats a banda i banda de la placa central per "agafar" les fitxes. El diàmetre dels forats és una mica més gran que el diàmetre de les fitxes, de manera que hi ha un marge d’error en agafar les fitxes.
Pas 4: detectar si s'ha dispensat un testimoni
Vaig fer servir un mòdul de sensor fotoelèctric per a això, no volem deixar de banda un empleat si no va rebre cap testimoni després d’escanejar una etiqueta. ara ho faríem ?. El registre només s’escriu a la targeta SD, quan la detecció del testimoni és correcta, si no s’ha detectat cap testimoni, la pantalla s’enfada, culpant el servei de l’empresa i que el servei no funciona. No s’escriu cap registre en el cas en què no hi hagi fitxes per dispensar. He enganxat el transistor fotogràfic a la part inferior de la canaleta perquè la fitxa trenqui el feix quan travessi el feix
Pas 5: electrònica
Arduino Mega: aquest és el cervell del Coin-o-Matic, tots els sensors, etc. estan connectats al Mega
Arduino Pro Mini i RFM95 Lora Radio: l’Arduino Pro Mini i l’Arduino Mega es connecten entre si mitjançant el bus sèrie, quan s’escaneja una etiqueta, el número d’etiqueta s’envia al bus sèrie des del Mega fins al Pro Mini. El Pro Mini està en un bucle tot el temps, tan aviat com es rep alguna cosa al bus serial del Pro Mini, el número de l’etiqueta es penja a la xarxa thethingsings (TTN) mitjançant LoraWan. No hi he fet cap integració, però el pla seria tenir una instància AWS per emmagatzemar i ordenar la informació. Consulteu el següent pas per obtenir més informació.
Tiny RTC DS1307 Real Time Clock I2C Module - Quan arrenca el Coin-O-Matic, iniciarà sessió a la xarxa WiFi i obtindrà l’hora d’un servidor NTP a través del mòdul WiFi ESP8266 ESP12 Test Board i, a continuació, establirà l’hora RTC en conseqüència
TFT LCD de color gràfic de 2,2 240x320 ILI93412 - La pantalla principal, normalment mostra un rellotge i donarà algunes paraules de pensament a l'usuari
Convertidors de nivell bidireccional de 4 canals: com que els pins digitals del Mega són de 5 V, necessitava que els convertidors es comuniquessin a un nivell segur amb alguns dels mòduls
NeoPixel Ring 24 RGB LED WS2812 - Feu una mica de llum per atordir i confondre l'usuari
Kit d'inici RFID 13,56 MHz - El lector RFID
Mòdul de targeta SD: escriviu el número, la data i l’hora de l’etiqueta per a cada lliscament d’etiqueta
Polsadors: l'administrador que té l'etiqueta mestra carregarà etiquetes noves i faig servir un dels botons per posar en pausa la pantalla fins que puguin copiar el número de l'etiqueta i registrar qui en té l'etiqueta. Els altres 4 botons estan connectats però no s’utilitzen en aquest moment
LED tricolor: més llum per atordir i confondre els usuaris
Molts i molts llaços de cable: proveu d’aconseguir una mica de comanda a tots els cables
Molts ponts de taulers de taula: connecteu les coses
Mòdul de relé de 2 canals 5V 10 AMP 5VDC: un relé s’utilitza per alimentar el motor del dispensador de monedes i l’altre per encendre el mòdul ESP8266; inicieu sessió a la xarxa WiFi i feu una trucada horària NTP. Per minimitzar les trucades de temps NTP, vaig decidir alimentar-lo amb el relé, és a dir, activar el relé, activar el mòdul ESP, el mòdul ESP reduir el temps i apagar el mòdul de nou … I també fa bons sons de clic
Mòdul de sensor fotoelèctric de feix de llum infraroja: per detectar si es va dispensar un testimoni
Pas 6: placa del sensor LoRaWAN
Els fitxers de disseny Eagle s’adjunten, el tauler és d’elaboració meva, però faig servir una empresa per produir el tauler mateix. Aquesta placa també es pot utilitzar com a placa sensor LoRAWAN, és extremadament petita, ~ 37 mm x 54 mm, serveix per a un sensor de temperatura i humitat DHT 22 o DHT 11 tal com és.
Pas 7: TTN: la xarxa de coses
Hi ha molta informació sobre això a
www.thethingsnetwork.org/
Bàsicament, la xerrada Coin-O-Matic a través de LoraWAN (l’Arduino Pro Mini amb la ràdio RFM95) a una passarel·la (Raspberry Pi amb concentrador IMST) que es connecta a TTN a través d’Internet, des de TTN podeu fer moltes integracions, IE Swagger, AWS, http, etc., la imatge superior mostra alguns cops d'etiquetes a l'oficina
Pas 8: programari
El programari es divideix en 3 parts
getNTPtime_instructables: el programa ESP8266, heu de canviar el ssid, la contrasenya i ntpServerName abans de carregar-lo. Faig servir un programador bàsic FTDI, connecto terra, TX i RX. Recordeu escollir el mòdul ESP a l'IDE Arduino i ordenar els pins de l'ESP per posar-lo al mode de programació
Coin-O-Matic_instructables: el programa Coin-O-Matic. Això es carrega a l'Arduino Mega, els canvis necessaris aquí són el número de l'etiqueta principal -
byte masterCard [cardSize] = {121, 178, 151, 26};
pro_mini_instructables: el programa LoRaWAN. Això es carrega al Pro Mini; consulteu l’esquema per obtenir més detalls sobre com connectar la ràdio i quins PIN cal utilitzar. L'adreça del dispositiu, la clau de sessió de xarxa i la clau de sessió de l'aplicació s'han de canviar després de fer el registre del dispositiu a TTN, si utilitzeu ABP
static const PROGMEM u1_t NWKSKEY [16] = {}; s]
static const u1_t PROGMEM APPSKEY [16] = {};
static const u4_t DEVADDR = 0x; // <- Canvieu aquesta adreça per a cada node.
Pas 9: arrencada
El vídeo mostra que el relé està activat (relé 1), el mòdul ESP8266 inicia sessió a la xarxa WiFi, envia un senyal horari getNTP i obté l’hora del servidor NTP. ESP8266. Si alguna cosa no funciona i no hi ha cap actualització horària correcta, l'Arduino Mega es reinicia i torna a intentar-ho. El mòdul ESP8266 i l’Arduino Mega estan connectats entre si mitjançant els ports sèrie (Serial2 al Mega), l’Arduino Mega escolta una resposta des de l’ESP8266, el missatge té l’aspecte d’aquest "UNX [i el segell de temps d’època]", Estic a GMT + 2, de manera que al codi Arduino Mega afegeixo GMT + 2 com segueix
time_t gmtTimeVar = newTimeVar + 7200;
rtc.adjust (DateTime (gmtTimeVar));
Pas 10: afegir o eliminar una etiqueta
L'etiqueta mestra s'escaneja i la pantalla indica que aquesta és l'etiqueta mestra. S'escaneja la nova etiqueta i es mostra el número de l'etiqueta a la pantalla i permet a l'usuari temps per eliminar el número i registrar qui té la nova etiqueta. El número de l’etiqueta s’escriurà a la base de dades tan bon punt l’usuari premi el botó esquerre. Es segueix el mateix procediment per eliminar una etiqueta de la base de dades
Pas 11: Alguns vídeos que mostren el funcionament de Coin-O-Matic
He utilitzat node-red per integrar-me amb Telegram, node-red té un mòdul d’integració a TTN, així que què passa quan s’escaneja una etiqueta?
- S'escaneja l'etiqueta
- es llegeix el fitxer txt de la targeta SD per veure si és una etiqueta vàlida
- Si l'etiqueta és vàlida, s'escriu un segell de temps amb el número de l'etiqueta en un fitxer txt de la targeta SD
- El número de l’etiqueta s’envia a través de LoRaWAN i el Raspberry PI Gateway a la xarxa TTN
- Node-red es subscriu als missatges MQTT de la xarxa TTN
- Node-Red envia l'hex descodificat al número d'etiqueta DEC a un fitxer de script bash que s'executa en un servidor localment
- L'escriptura bash escaneja un fitxer txt amb NOMBRES D'ETIQUETES i NOMS
- El fitxer script bash penja el missatge a un BOT de Telegram amb un rínxol que conté el NÚMERO ETIQUETA i el nom de la persona
Bonic i complex, m'encanta com una tasca tan senzilla es torna tan complexa
Feu-me saber què en penseu als comentaris a continuació
Recomanat:
Distribuïdor de sabó de sincronització: 6 passos
Dispensador de sabó de sincronització: amb la situació actual de salut, em vaig adonar que mai no he pensat en quant de temps em rento les mans. Es recomana rentar durant almenys 20 segons, però comptar és molt avorrit i crec que ja n’hem tingut prou de la cançó Happy Birthday
Distribuïdor automàtic de targetes: 7 passos
Distribuïdor automàtic de targetes: he triat un distribuïdor de targetes intel·ligents com a primer projecte perquè m’agrada jugar a un joc de cartes. El que més no m’agrada és repartir cartes. Cal recordar per cada joc quantes cartes rep cada persona. Això es confon quan se sap
Distribuïdor de sabó inspirat en mans lliures inspirat en COVID-19: 3 passos
Distribuïdor de sabó inspirat en mans lliures inspirat en COVID-19: Introducció: Amb el tancament de l’Indian Lockdown 4.0 a punt d’acabar en poques setmanes i amb la reobertura gradual d’oficines i establiments, vaig decidir que faré servir l’últim dels UNO d’arduino que havia de provar fent un dispensador de sabó mans lliures. Què
Distribuïdor de cartes Lego parlador: 20 passos (amb imatges)
Distribuïdor de cartes de Lego parlant: la majoria de la gent juga a jocs de cartes per obtenir un valor entretingut, però també proporcionen diversos avantatges per a la nostra salut emocional i mental. És una de les activitats cobertes més populars. La majoria dels jocs de cartes com Rummy i Poker necessiten un distribuïdor. Així que aquí som
Sistema d’anunci de tokens: 5 passos
Sistema d’anunci de tokens: a la instrucció anterior vam veure com fer que el vostre Arduino parli. Avui explorarem una mica més sobre el mateix tema. Tots hem d’haver trobat en algun moment de la vida un sistema d’anuncis potser en un banc o una estació de tren. Alguna vegada has guanyat