Πίνακας περιεχομένων:

Coin-O-Matic Token Dispenser: 11 Βήματα
Coin-O-Matic Token Dispenser: 11 Βήματα

Βίντεο: Coin-O-Matic Token Dispenser: 11 Βήματα

Βίντεο: Coin-O-Matic Token Dispenser: 11 Βήματα
Βίντεο: BREAKING NEWS: BONE SHIBA SWAP TOKEN MINTS OUT FINAL 20 MILLION TOKEN 2024, Ιούλιος
Anonim
Image
Image

Στο γραφείο μας έχουμε έναν αυτόματο πωλητή που μπορεί είτε να πάρει πραγματικά χρήματα είτε μάρκες. Η διοίκηση αποφάσισε ότι θα μπορούσαμε να πάρουμε μερικά δωρεάν γλυκά (εντός ορίων) για να είμαστε ευχαριστημένοι και ικανοποιημένοι με τους χαμηλούς μισθούς που κερδίζουμε. Το πρόβλημα ήταν, πώς θα το ελέγξετε; Το μηχάνημα αυτόματης πώλησης ανήκει σε εξωτερική εταιρεία, επομένως δεν ήταν δυνατή η τροποποίηση του αυτόματου πωλητή.

Μπείτε στο Frankenstein Coin-O-Matic, δημιουργία του άρρωστου μυαλού μου. Αποφασίζοντας πώς να το κάνουμε αυτό, σκέφτηκα ότι οι ετικέτες RFID θα ήταν οι καλύτερες, θα έδιναν σε κάθε υπάλληλο μια ετικέτα RFID και θα κρατούσαν αρχείο πόσες φορές θα σαρώνεται η ετικέτα RFID. Όταν σύρετε την ετικέτα, ένα διακριτικό διανέμεται για χρήση με τον αυτόματο πωλητή (μία δωρεάν έξοδος). Κάθε φορά που σύρετε το TAG, καταγράψτε τις πληροφορίες σε μια κάρτα SD. Ο αριθμός TAG μεταφορτώνεται επίσης στο "σύννεφο" χρησιμοποιώντας το LoraWAN. Έχω ήδη παίξει με το LoRaWAN και το thethingsnetwork (TTN) με κάποιους αισθητήρες θερμοκρασίας και υγρασίας, οπότε έχουμε μια πύλη TTN. Το TTN Gateway είναι ένα Raspberry PI 3 με συμπυκνωτή IMST συνδεδεμένο στο TTN.

Βήμα 1: Λογαριασμός Υλικών

  1. Κάποια Perspex 3 χιλιοστών
  2. Περίπου 1mm Perspex
  3. Arduino Mega
  4. Arduino Pro Mini
  5. RFM95 Lora Radio
  6. Tiny RTC DS1307 Ρολόι πραγματικού χρόνου I2C
  7. Γραφικό χρώμα 2.2 "TFT LCD 240x320 ILI9341
  8. Μετατροπείς επιπέδου διπλής κατεύθυνσης 2 x 4 καναλιών
  9. NeoPixel Ring 24 - RGB LED WS2812
  10. Κιτ εκκίνησης RFID 13,56MHz
  11. ESP8266 ESP12 Δοκιμαστική μονάδα WiFi μονάδα
  12. Ενότητα κάρτας SD
  13. 5 x Κουμπιά
  14. 2 x LED τριών χρωμάτων
  15. Πολλά και πολλά καλώδια
  16. Πολλοί βραχυκυκλωτήρες
  17. 40mm x 40mm ξύλο
  18. Μονάδα ρελέ 2 καναλιών 5V 10 AMP
  19. Μονάδα φωτοηλεκτρικού αισθητήρα υπέρυθρης δέσμης 5VDC

Βήμα 2: Ξεκινήστε να χτίζετε μια βάση από ξύλο και Perpex

Ξεκίνησε να χτίζει μια βάση από ξύλο και Perpex
Ξεκίνησε να χτίζει μια βάση από ξύλο και Perpex

Ξεκίνησε με την κατασκευή ενός κουτιού για να φιλοξενήσει όλα τα ηλεκτρονικά από Perspex 3mm, το Perspex και το λογότυπο κόπηκαν χρησιμοποιώντας μια μηχανή CNC. Το μπροστινό κάλυμμα του κουτιού περιέχει την οθόνη, κουμπιά και μερικά LED που αναβοσβήνουν. Οι λυχνίες LED είναι κανονικές λυχνίες τριών χρωμάτων που κυκλώνουν τα χρώματα, δείτε BOM

Στη συνέχεια χρησιμοποίησα ένα ξύλινο μπλοκ 40mm x40mm για να φτιάξω μια θέση για τον διανομέα νομισμάτων και μια τρύπα για να πέσει το διακριτικό. Ο διανομέας διακριτικών αποτελείται από 3 στρογγυλές πλάκες Perspex, η επάνω και η κάτω είναι 3 mm Perspex και η μεσαία που φέρει το διακριτικό είναι 1 mm Perspex. Ο τρόπος με τον οποίο λειτουργεί είναι ότι η μεσαία πλάκα γυρίζει και αρπάζει ένα διακριτικό από τη στοίβα και το σέρνει στην τρύπα στο κάτω πιάτο και το διακριτικό πέφτει στο διακριτικό αυλάκι στα χάλια χέρια αναμονής κάποιου πεινασμένου υπαλλήλου.

Το στοίβαγμα συμβόλων είναι ένας παλιός σωλήνας ψεκασμού που είχα τοποθετήσει και η διάμετρος ήταν ακριβώς η ίδια με τα μάρκες. Άνοιξα μερικές τρύπες στο σωλήνα του ψεκαστήρα, ώστε να μπορείτε να δείτε πόσες μάρκες στοιβάζονται για επαναπλήρωση, αν χρειαστεί. Ο σωλήνας ψεκασμού κόλλησε υπερβολικά στην άνω πλάκα Perspex.

Βήμα 3: Ο διανομέας διακριτικών

Ο διανομέας διακριτικών
Ο διανομέας διακριτικών
Το διανομέα διακριτικών
Το διανομέα διακριτικών
Το διανομέα διακριτικών
Το διανομέα διακριτικών

Ο κινητήρας που οδηγεί τη μεσαία πλάκα είναι ένας σύγχρονος κινητήρας εναλλασσόμενου ρεύματος 220V από…. Δεν έχω ιδέα, το βρήκα στο ανταλλακτικό μου, αρκεί να είναι αργό και δυνατό. Ο άξονας ήταν κολλημένος στη μεσαία πλάκα με κάποια εποξειδική κόλλα που ονομάζεται Pratex. Η μονάδα ρελέ ενεργοποιείται και το καλώδιο είναι συνδεδεμένο για να λειτουργήσει ο κινητήρας. Άνοιξα μερικές τρύπες στην κάτω πλάκα για να αντισταθώ στην τριβή, αν κάνει τη διαφορά, δεν ξέρω. 2 οπές κόπηκαν εκατέρωθεν της μεσαίας πλάκας για να «αρπάξουν» τα μάρκες. Η διάμετρος των οπών είναι λίγο μεγαλύτερη από τη διάμετρο των μάρκων, έτσι ώστε να υπάρχει κάποιο περιθώριο σφάλματος κατά την αρπαγή των μάρκων.

Βήμα 4: Ανίχνευση εάν διανεμήθηκε ένα διακριτικό

Ανίχνευση εάν διανεμήθηκε ένα κουπόνι
Ανίχνευση εάν διανεμήθηκε ένα κουπόνι
Ανίχνευση εάν διανεμήθηκε ένα κουπόνι
Ανίχνευση εάν διανεμήθηκε ένα κουπόνι

Χρησιμοποίησα μια μονάδα φωτοηλεκτρικού αισθητήρα για αυτό, δεν θέλουμε να απομακρύνουμε έναν υπάλληλο, εάν αυτός/αυτή δεν έλαβε ένα διακριτικό μετά τη σάρωση μιας ετικέτας. τώρα θα κάναμε;. Η εγγραφή γράφεται μόνο στην κάρτα SD, όταν η ανίχνευση του διακριτικού είναι επιτυχής, εάν δεν εντοπιστεί κανένα διακριτικό, η οθόνη γίνεται έξαλλη, κατηγορώντας την υπηρεσία στην εταιρεία και ότι η υπηρεσία είναι χάλια. στην περίπτωση που δεν υπάρχουν μάρκες για διανομή. Έχω κολλήσει το τρανζίστορ φωτογραφιών στο κάτω μέρος του αγωγού έτσι ώστε το διακριτικό να σπάσει τη δέσμη όταν περνάει από τη δέσμη

Βήμα 5: Ηλεκτρονικά

ΗΛΕΚΤΡΟΝΙΚΑ ΕΙΔΗ
ΗΛΕΚΤΡΟΝΙΚΑ ΕΙΔΗ

Arduino Mega-Αυτός είναι ο εγκέφαλος του Coin-o-Matic, όλοι οι αισθητήρες κλπ συνδέονται με το Mega

Arduino Pro Mini και RFM95 Lora Radio - Το Arduino Pro Mini και το Arduino Mega συνδέονται μεταξύ τους μέσω του σειριακού διαύλου, όταν σαρώνεται μια ετικέτα, ο αριθμός ετικέτας αποστέλλεται στο σειριακό δίαυλο από το Mega στο Pro Mini. Το Pro Mini βρίσκεται σε βρόχο όλη την ώρα, μόλις ληφθεί κάτι στο σειριακό δίαυλο του Pro Mini, ο αριθμός ετικέτας ανεβαίνει στο thethingsnetwork (TTN) χρησιμοποιώντας το LoraWan. Δεν έχω κάνει καμία ενσωμάτωση σε αυτό, αλλά το σχέδιο θα ήταν να έχουμε ένα παράδειγμα AWS για αποθήκευση και ταξινόμηση των πληροφοριών. Δείτε το επόμενο βήμα για περισσότερες πληροφορίες.

Tiny RTC DS1307 Real Time Clock I2C Module-Όταν ξεκινήσει το Coin-O-Matic, θα συνδεθεί στο δίκτυο WiFi και θα λάβει το χρόνο από έναν διακομιστή NTP μέσω της μονάδας WiFi ESP8266 ESP12 Test Board WiFi και, στη συνέχεια, θα ρυθμίσει ανάλογα την ώρα RTC

Γραφικό χρώμα 2.2 TFT LCD 240x320 ILI93412 - Η κύρια οθόνη, εμφανίζει κανονικά ένα ρολόι και θα δώσει μερικές σκέψεις στον χρήστη

Μετατροπείς επιπέδου διπλής κατεύθυνσης 4 καναλιών - Καθώς οι ψηφιακές ακίδες του Mega είναι 5V, χρειαζόμουν τους μετατροπείς να επικοινωνούν σε ασφαλές επίπεδο με ορισμένες μονάδες

NeoPixel Ring 24 RGB LED WS2812 - Κάντε λίγο φως για να ζαλιστείτε και να μπερδέψετε τον χρήστη

Κιτ εκκίνησης RFID 13.56MHz - Ο αναγνώστης RFID

Ενότητα κάρτας SD - Γράψτε τον αριθμό ετικέτας, την ημερομηνία και την ώρα για κάθε σάρωση ετικέτας

Κουμπιά - Ο διαχειριστής που έχει την κύρια ετικέτα, θα φορτώσει νέες ετικέτες και χρησιμοποιώ ένα από τα κουμπιά για να θέσω σε παύση την οθόνη μέχρι να μπορέσουν να αντιγράψουν τον αριθμό ετικέτας και να καταγράψουν ποιος έχει την ετικέτα. Τα άλλα 4 κουμπιά είναι ενσύρματα, αλλά δεν χρησιμοποιούνται αυτήν τη στιγμή

LED τριών χρωμάτων - Περισσότερο φως για να θαμπώσει και να μπερδέψει τους χρήστες

Πολλά και πολλά καλώδια - Δοκιμάστε και παραγγείλετε όλα τα καλώδια

Πολλοί βραχυκυκλωτήρες - Συνδέστε τα πράγματα

2 Channel 5V Relay Module 10 AMP 5VDC - Το ένα ρελέ χρησιμοποιείται για την τροφοδοσία του μοτέρ διανομής κερμάτων και το άλλο για την τροφοδοσία της μονάδας ESP8266, το πρόγραμμα μονάδας ESP8266 βρίσκεται επίσης σε βρόχο, μόλις πάρει ισχύ, θα συνδεθείτε στο δίκτυο WiFi και κάντε μια κλήση χρόνου NTP. Για να ελαχιστοποιήσω τις κλήσεις χρόνου NTP, αποφάσισα να το τροφοδοτήσω με το ρελέ, IE ενεργοποιήστε το ρελέ, ενεργοποιήστε τη μονάδα ESP, η μονάδα ESP λάβετε το χρόνο και ενεργοποιήστε ξανά τη μονάδα … Και κάνει ωραίο ήχο κλικ επίσης.

Μονάδα φωτοηλεκτρικού αισθητήρα υπέρυθρης δέσμης φωτός - Για να εντοπίσετε εάν διανεμήθηκε ένα διακριτικό

Βήμα 6: Πίνακας αισθητήρων LoRaWAN

Πίνακας αισθητήρων LoRaWAN
Πίνακας αισθητήρων LoRaWAN

Τα αρχεία σχεδίασης Eagle επισυνάπτονται, ο πίνακας είναι της κατασκευής μου, αλλά χρησιμοποιώ μια εταιρεία για την παραγωγή του ίδιου του πίνακα. Αυτός ο πίνακας μπορεί επίσης να χρησιμοποιηθεί ως πίνακας αισθητήρων LoRAWAN, είναι εξαιρετικά μικρός, ~ 37mm x 54mm, εξυπηρετεί έναν αισθητήρα θερμοκρασίας και υγρασίας DHT 22 ή DHT 11 ως έχει.

Βήμα 7: TTN - το Things Network

TTN - το δίκτυο πραγμάτων
TTN - το δίκτυο πραγμάτων

Υπάρχουν πολλές πληροφορίες για αυτό στο

www.thethingsnetwork.org/

Βασικά, η ομιλία Coin-O-Matic μέσω LoraWAN (Το Arduino Pro Mini με το ραδιόφωνο RFM95) σε μια πύλη (Raspberry Pi με συμπυκνωτή IMST) που συνδέεται με το TTN μέσω διαδικτύου, από το TTN μπορείτε να κάνετε πολλές ενσωματώσεις, IE Swagger, AWS, http κ.λπ., η παραπάνω εικόνα δείχνει μερικές μετατοπίσεις ετικετών στο γραφείο

Βήμα 8: Λογισμικό

Το λογισμικό χωρίζεται σε 3 μέρη

getNTPtime_instructables - Το πρόγραμμα ESP8266, πρέπει να αλλάξετε το ssid, τον κωδικό πρόσβασης και το ntpServerName πριν από τη μεταφόρτωση. Χρησιμοποιώ βασικό προγραμματιστή FTDI, συνδέω έδαφος, TX και RX. Θυμηθείτε να επιλέξετε τη μονάδα ESP στο Arduino IDE και να ταξινομήσετε τις καρφίτσες στο ESP για να το θέσετε σε λειτουργία προγραμματισμού

Coin-O-Matic_instructables-Το πρόγραμμα Coin-O-Matic. Αυτό φορτώνεται στο Arduino Mega, οι αλλαγές που απαιτούνται εδώ είναι ο αριθμός Master Tag -

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

pro_mini_instructables - Το πρόγραμμα LoRaWAN. Αυτό φορτώνεται στο Pro Mini, δείτε το σχηματικό για περισσότερες λεπτομέρειες σχετικά με τον τρόπο καλωδίωσης του ραδιοφώνου και τους κωδικούς PIN που θα χρησιμοποιήσετε. Η διεύθυνση συσκευής, το κλειδί συνεδρίας δικτύου και το κλειδί συνόδου εφαρμογής πρέπει να αλλάξουν μετά την εγγραφή της συσκευής στο TTN, εάν χρησιμοποιείτε ABP

στατικό const PROGMEM u1_t NWKSKEY [16] = {}; s]

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

στατικό const u4_t DEVADDR = 0x; // <- Αλλάξτε αυτήν τη διεύθυνση για κάθε κόμβο!

Βήμα 9: Εκκίνηση

Το βίντεο δείχνει το ρελέ να ενεργοποιείται (ρελέ 1), η μονάδα ESP8266 συνδέεται στο δίκτυο WiFi, στέλνει ένα σήμα ώρας getNTP και παίρνει το χρόνο από τον διακομιστή NTP, μετά την επιτυχή ενημέρωση του χρόνου, ο ρελέ απενεργοποιείται και διακόπτει την τροφοδοσία ESP8266. Εάν κάτι πάει στραβά και δεν υπάρξει επιτυχής ενημέρωση ώρας, το Arduino Mega επανεκκινείται και προσπαθεί ξανά. Η μονάδα ESP8266 και το Arduino Mega συνδέονται μεταξύ τους μέσω των σειριακών θυρών (Serial2 στο Mega), το Arduino Mega ακούει μια απάντηση από το ESP8266, το μήνυμα μοιάζει με αυτό "UNX [και η εποχή σφραγίδα]", Είμαι σε GMT+2, οπότε στον κωδικό Arduino Mega, προσθέτω GMT+2 ως εξής

time_t gmtTimeVar = newTimeVar+7200;

rtc.adjust (DateTime (gmtTimeVar));

Βήμα 10: Προσθήκη/αφαίρεση ετικέτας

Image
Image

Η κύρια ετικέτα σαρώνεται και η οθόνη δείχνει ότι αυτή είναι η κύρια ετικέτα. Η νέα ετικέτα σαρώνεται και ο αριθμός της ετικέτας εμφανίζεται στην οθόνη και δίνει στον χρήστη χρόνο να αφαιρέσει τον αριθμό και τις εγγραφές που έχει τη νέα ετικέτα. Ο αριθμός ετικέτας θα γραφτεί στη βάση δεδομένων μόλις ο χρήστης πατήσει το αριστερό κουμπί. Ακολουθείται η ίδια διαδικασία για την αφαίρεση μιας ετικέτας από τη βάση δεδομένων

Βήμα 11: Ορισμένα βίντεο που δείχνουν τη λειτουργία του Coin-O-Matic

Χρησιμοποίησα το node-red για να ενσωματωθώ στο Telegram, το node-red έχει μια ενότητα ενσωμάτωσης στο TTN, οπότε τι συμβαίνει όταν σαρώνετε μια ετικέτα;

  • Η ετικέτα σαρώνεται
  • Το αρχείο txt στην κάρτα SD διαβάζεται για να διαπιστωθεί εάν είναι έγκυρη ετικέτα
  • Εάν η ετικέτα είναι έγκυρη, μια χρονική σφραγίδα με τον αριθμό ετικέτας γράφεται σε ένα αρχείο txt στην κάρτα SD
  • Ο αριθμός ετικέτας αποστέλλεται μέσω του LoRaWAN και του Raspberry PI Gateway στο δίκτυο TTN
  • Ο κόμβος-κόκκινος εγγράφεται στα μηνύματα MQTT στο δίκτυο TTN
  • Ο Κόμβος-Κόκκινος αποστέλλει τον αριθμό ετικέτας HEX σε DEC σε ένα αρχείο δέσμης ενεργειών bash που εκτελείται σε διακομιστή τοπικά
  • Το σενάριο bash σαρώνει ένα αρχείο txt με ΕΤΙΚΕΤΕΣ ΑΡΙΘΜΟΥΣ και ΟΝΟΜΑΤΑ
  • Το αρχείο δέσμης ενεργειών bash ανεβάζει το μήνυμα σε ένα Telegram BOT με μπούκλα που περιέχει τον ΕΤΙΚΕΤΟ ΑΡΙΘΜΟ και το όνομα του ατόμου

Ωραίο και περίπλοκο, μου αρέσει πώς μια τόσο απλή εργασία γίνεται τόσο πολύπλοκη

Πείτε μου τι σκέφτεστε στα παρακάτω σχόλια

Συνιστάται: