Indholdsfortegnelse:

Coin-O-Matic Token Dispenser: 11 trin
Coin-O-Matic Token Dispenser: 11 trin

Video: Coin-O-Matic Token Dispenser: 11 trin

Video: Coin-O-Matic Token Dispenser: 11 trin
Video: How they Steal from Laundromats - FREE WASHERS? or Criminal Behavior? 2024, Juli
Anonim
Image
Image

På vores kontor har vi en automat, der enten kan tage rigtige penge eller tokens. Ledelsen besluttede, at vi kunne få nogle gratis slik (inden for grænser) for at holde os glade og tilfredse med de lave lønninger, vi tjener. Problemet var, hvordan ville du kontrollere det? Automaten tilhører en ekstern virksomhed, så ændringer af automaten var udelukket.

Indtast Frankenstein Coin-O-Matic, en skabelse af mit syge sind. Da jeg besluttede mig for, hvordan jeg skulle gøre dette, tænkte jeg, at RFID -tags ville være de bedste, give hver medarbejder et RFID -tag og registrere, hvor mange gange RFID -mærket bliver fejet. Når mærket stryges, bliver der udleveret et token til brug i automat (en gratis udluftning). Hver gang TAG bliver fejet, skal du registrere oplysningerne på et SD -kort. TAG -nummeret uploades også til "skyen" ved hjælp af LoraWAN. Jeg har allerede leget med LoRaWAN og netværket (TTN) med nogle temperatur- og fugtighedsfølere, så vi har en TTN Gateway. TTN Gateway er en Raspberry PI 3 med en IMST -koncentrator forbundet til TTN.

Trin 1: Stykliste

  1. Nogle 3 mm Perspex
  2. Nogle 1 mm Perspex
  3. Arduino Mega
  4. Arduino Pro Mini
  5. RFM95 Lora Radio
  6. Lille RTC DS1307 I2C -modul i realtid
  7. Grafisk farve 2,2 "TFT LCD 240x320 ILI9341
  8. 2 x 4 kanals tovejs niveauomformere
  9. NeoPixel Ring 24 - RGB LED WS2812
  10. RFID -startsæt 13,56MHz
  11. ESP8266 ESP12 Test Board WiFi -modul
  12. SD -kortmodul
  13. 5 x trykknapper
  14. 2 x trefarvet LED
  15. Masser og masser af kabelbindere
  16. Masser af brødbrætter
  17. 40 mm x 40 mm træ
  18. 2 kanal 5V relæmodul 10 AMP
  19. 5VDC Infrarød lysstråle fotoelektrisk sensormodul

Trin 2: Startede med at bygge en base af træ og Perpex

Startede med at bygge en base af træ og Perpex
Startede med at bygge en base af træ og Perpex

Startede med at bygge en kasse til al elektronik fra 3 mm Perspex, Perspex og logoet blev skåret ved hjælp af en CNC -maskine. Kassens forside dækker skærmen, knapper og nogle blinkende lysdioder. Lysdioderne er normale trefarvede lysdioder, der cykler gennem farverne, se BOM

Jeg brugte derefter en 40 mm x 40 mm træklods til at bygge et sted til møntautomaten og en sløjfe, hvor token kunne falde ind. Token dispenser består af 3 Perspex runde plader, den øverste og nederste er 3 mm Perspex og den midterste, der bærer token, er 1 mm Perspex. Den måde, det fungerer på, er, at midterpladen vender og griber et brik fra stakken og trækker det til hullet i bundpladen, og brikken falder ned i token -slisken i en grådig ventende hænder på en sulten medarbejder.

Tokenstabler er et gammelt sprinklerrør, som jeg havde lagt rundt, og diameteren var nøjagtig den samme som tokens. Jeg borede nogle huller i sprinklerrøret, så du kunne se, hvor mange tokens der er stablet til genopfyldning, hvis det er nødvendigt. Sprinklerrøret blev overlimet til den øverste Perspex -plade.

Trin 3: Token dispenser

Token Dispenser
Token Dispenser
Token Dispenser
Token Dispenser
Token Dispenser
Token Dispenser

Motoren til at drive midterpladen er en 220V AC synkron motor fra …. Jeg aner ikke, fandt den i min reservedelsboks, så længe den er langsom og stærk. Skaftet blev limet til midterpladen med noget epoxylim kaldet Pratex. Relæmodulet udløses, og den spændingsførende ledning tilsluttes for at få motoren til at køre. Jeg borede nogle huller i bundpladen for at modvirke friktion, hvis det gør en forskel, ved jeg det ikke. Der blev skåret 2 huller på hver side af den midterste plade for at "gribe" tokens. Diameteren på hullerne er bare en smule større end tokensens diameter, så der er en vis fejlmargin, når man tager fat i tokens.

Trin 4: Registrering af, om der blev udleveret et symbol

Opdager, om der blev udleveret et symbol
Opdager, om der blev udleveret et symbol
Opdager, om der blev udleveret et symbol
Opdager, om der blev udleveret et symbol

Jeg brugte et fotoelektrisk sensormodul til dette, vi ønsker ikke at udrydde en medarbejder, hvis han/hun ikke modtog et token efter at have scannet et mærke. nu ville vi ?. Rekorden skrives kun til SD -kortet, når detekteringen af tokenet er vellykket, hvis der ikke blev opdaget noget token, går displayet i raseri og bebrejder tjenesten i virksomheden, og at tjenesten er stødt.. Ingen registrering er skrevet i tilfælde, hvor der ikke er nogen tokens til at udlevere. Jeg limede fototransistoren til bunden af renden, så token bryder strålen, når den passerer gennem strålen

Trin 5: Elektronik

Elektronik
Elektronik

Arduino Mega-Dette er hjernen i Coin-o-Matic, alle sensorer osv. Er forbundet til Mega

Arduino Pro Mini og RFM95 Lora Radio - Arduino Pro Mini og Arduino Mega er forbundet med hinanden via den serielle bus, når et mærke scannes, sendes tagnummeret på seriebussen fra Mega til Pro Mini. Pro Mini er i en loop hele tiden, så snart der modtages noget på Pro Mini's serielle bus, uploades tagnummeret til thethingsnetwork (TTN) ved hjælp af LoraWan. Jeg har ikke foretaget nogen integration om det, men planen ville være at have en AWS -instans til at gemme og sortere oplysningerne. Se næste trin for mere information.

Tiny RTC DS1307 Real Time Clock I2C-modul-Når Coin-O-Matic starter op, logger det på WiFi-netværket og henter tiden fra en NTP-server via ESP8266 ESP12 Test Board WiFi-modulet og indstiller derefter RTC-tiden i overensstemmelse hermed

Grafisk farve 2,2 TFT LCD 240x320 ILI93412 - Hoveddisplayet viser normalt et ur og giver brugeren nogle tanker.

4 -kanals tovejs niveauomformere - Da Megas digitale ben er 5V, havde jeg brug for, at konvertere kunne kommunikere på et sikkert niveau til nogle af modulerne

NeoPixel Ring 24 RGB LED WS2812 - Lav noget lys for at forbløffe og forvirre brugeren

RFID Starter Kit 13,56MHz - RFID -læseren

SD -kortmodul - Skriv tagnummer, dato og klokkeslæt for hvert tagstryg

Trykknapper - Administrator, der har master -tagget, indlæser nye tags, og jeg bruger en af knapperne til at sætte displayet på pause, indtil de kan kopiere tagnummeret og registrere, hvem der har tagget. De andre 4 knapper er tilsluttet, men bruges ikke på nuværende tidspunkt

Trefarvet LED - Mere lys for at dæmpe og forvirre brugerne

Mange og mange kabelbindere - Prøv at få ordnet alle ledningerne

Masser af brødbrætter - Træk tingene op

2 -kanals 5V relæmodul 10 AMP 5VDC - Det ene relæ bruges til at drive møntautomatens motor og det andet til at tænde ESP8266 -modulet, ESP8266 -modulprogrammet er også i en loop, så snart det får strøm, vil det log på WiFi -netværket, og foretag et NTP -opkald. For at minimere NTP -tidsopkald besluttede jeg at tænde det med relæet, IE aktivere relæet, aktivere ESP -modulet, ESP -modul få tiden og relæet slukke modulet igen … Og det giver også gode kliklyde

Infrarødt lysstråle fotoelektrisk sensormodul - Til at registrere, om der blev udleveret et token

Trin 6: LoRaWAN Sensor Board

LoRaWAN Sensor Board
LoRaWAN Sensor Board

Eagle -designfilerne er vedhæftet, tavlen er af min fremstilling, men jeg bruger et firma til at producere tavlen selv. Dette kort kan også bruges som et LoRAWAN -sensorbræt, det er ekstremt lille, ~ 37 mm x 54 mm, det passer til en DHT 22 eller DHT 11 temperatur- og fugtighedsføler som den er.

Trin 7: TTN - Things Network

TTN - Things Network
TTN - Things Network

Der er mange oplysninger om dette kl

www.thethingsnetwork.org/

Grundlæggende taler Coin-O-Matic-samtalen via LoraWAN (Arduino Pro Mini med RFM95-radioen) til en gateway (Raspberry Pi med IMST-koncentrator), der er forbundet til TTN via internettet, fra TTN kan du lave en masse integrationer, IE Swagger, AWS, http osv., Billedet ovenfor viser nogle strygninger af tags på kontoret

Trin 8: Software

Softwaren er opdelt i 3 dele

getNTPtime_instructables - ESP8266 -programmet, du skal ændre ssid, adgangskode og ntpServerName, før du uploader. Jeg bruger en FTDI basic programmerer, tilslut jord, TX og RX. Husk at vælge ESP -modulet i Arduino IDE og sorter pinsene på ESP for at sætte det i programmeringstilstand

Coin-O-Matic_instructables-Coin-O-Matic-programmet. Dette bliver indlæst på Arduino Mega, nødvendige ændringer her er Master Tag -nummeret -

byte masterCard [cardSize] = {121, 178, 151, 26};

pro_mini_instructables - LoRaWAN -programmet. Dette indlæses på Pro Mini, se skematisk for flere detaljer om, hvordan du tilslutter radioen, og hvilke PIN -koder der skal bruges. Enhedsadressen, netværkssessionnøglen og appsessionnøglen skal ændres, efter at enhedsregistreringen er udført på TTN, hvis du vil bruge ABP

statisk const PROGMEM u1_t NWKSKEY [16] = {}; s]

statisk const u1_t PROGMEM APPSKEY [16] = {};

statisk const u4_t DEVADDR = 0x; // <- Skift denne adresse for hver node!

Trin 9: Start op

Videoen viser relæet, der aktiveres (relæ 1), ESP8266 -modulet logger på WiFi -netværket, sender et getNTP -tidssignal og får tiden fra NTP -serveren, efter at tiden er blevet opdateret, deaktiverer relæet og fjerner strøm til ESP8266. Hvis noget går galt, og der ikke er nogen vellykket tidsopdatering, genstarter Arduino Mega og prøver igen. ESP8266 -modulet og Arduino Mega er forbundet med hinanden via de serielle porte (Serial2 på Mega), Arduino Mega lytter efter et svar fra ESP8266, meddelelsen ligner denne "UNX [og epoken tidsstempel]", Jeg er i GMT+2, så i Arduino Mega -koden tilføjer jeg GMT+2 som følger

time_t gmtTimeVar = newTimeVar+7200;

rtc.adjust (DateTime (gmtTimeVar));

Trin 10: Tilføjelse/fjernelse af et mærke

Image
Image

Master -mærket scannes, og displayet angiver, at dette er master -tagget. Det nye mærke scannes, og mærkenummeret vises på skærmen, og det giver brugeren tid til at fjerne nummeret og registrere, hvem der har det nye mærke. Tagnummeret skrives til databasen, så snart brugeren trykker på den venstre knap. Den samme procedure følges for at fjerne et tag fra databasen

Trin 11: Nogle videoer, der viser funktionen af Coin-O-Matic

Jeg brugte node-rød til at integrere med Telegram, node-red har et integrationsmodul til TTN, så hvad sker der, når du scanner et tag?

  • Mærket scannes
  • txt -fil på SD -kort læses for at se, om det er et gyldigt tag
  • Hvis tagget er gyldigt, skrives et tidsstempel med tagnummeret til en txt -fil på SD -kortet
  • Tagnummeret sendes via LoRaWAN og Raspberry PI Gateway til TTN -netværket
  • Node-rød abonnerer på MQTT-meddelelser på TTN-netværket
  • Node-Red sender det afkodede HEX til DEC-tagnummer til en bash-scriptfil, der kører på en server lokalt
  • Bash -scriptet scanner en txt -fil med TAG NUMBERS og NAMES
  • Bash script -filen uploader meddelelsen til en Telegram BOT med curl indeholdende TAG NUMBER og personens navn

Dejligt og komplekst, jeg elsker hvordan sådan en simpel opgave bliver så kompleks

Lad mig vide, hvad du synes i kommentarerne herunder

Anbefalede: