Isi kandungan:

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

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

Video: Coin-O-Matic Token Dispenser: 11 Langkah
Video: How To Stake Your MATIC Tokens Using The Polygon Wallet! 2024, Julai
Anonim
Image
Image

Di pejabat kami mempunyai mesin layan diri yang boleh mengambil wang atau token sebenar. Pengurusan memutuskan bahawa kami dapat beberapa gula-gula percuma (dalam had) untuk membuat kami gembira dan berpuas hati dengan gaji rendah yang kami perolehi. Masalahnya adalah, bagaimana anda mengawalnya? Mesin layan diri milik syarikat luar, jadi pengubahsuaian pada mesin layan diri tidak perlu dipertimbangkan.

Masukkan Frankenstein Coin-O-Matic, ciptaan minda saya yang sakit. Memutuskan bagaimana melakukan ini, saya berpendapat bahawa tag RFID akan menjadi yang terbaik, berikan setiap tag RFID kepada setiap pekerja dan catat berapa kali tag RFID disapu. Apabila tanda dileret, token dikeluarkan untuk digunakan dengan mesin penjual (satu ventilasi percuma). Setiap kali TAG dileret, catat maklumat pada kad SD. Nombor TAG juga dimuat naik ke "cloud" menggunakan LoraWAN. Saya sudah bermain dengan LoRaWAN dan thethingsnetwork (TTN) dengan beberapa sensor suhu dan kelembapan, jadi kami mempunyai TTN Gateway. TTN Gateway adalah Raspberry PI 3 dengan penumpu IMST yang disambungkan ke TTN.

Langkah 1: Bil Bahan

  1. Sebilangan Perspex 3mm
  2. Sebilangan Perspex 1mm
  3. Arduino Mega
  4. Arduino Pro Mini
  5. Radio Lora RFM95
  6. Modul Jam Real Time DS1307 Tiny RTC I2C
  7. Warna Grafik 2.2 "TFT LCD 240x320 ILI9341
  8. Penukar Tahap Dua Arah Saluran 2 x 4
  9. NeoPixel Ring 24 - RGB LED WS2812
  10. Kit Pemula RFID 13.56MHz
  11. Modul WiFi Papan Ujian ESP8266 ESP12
  12. Modul Kad SD
  13. 5 x butang tekan
  14. 2 x LED tiga warna
  15. Banyak dan banyak ikatan kabel
  16. Banyak penerjun papan roti
  17. Kayu 40mm x 40mm
  18. Modul Relay 2 Saluran 5V 10 AMP
  19. Modul Sensor Fotolistrik Rasuk Inframerah 5VDC

Langkah 2: Mula Membina Pangkalan Keluar dari Kayu dan Perpex

Mula Membina Pangkalan Keluar dari Kayu dan Perpex
Mula Membina Pangkalan Keluar dari Kayu dan Perpex

Bermula dengan membina kotak untuk menempatkan semua elektronik dari Perspex 3mm, Perspex dan logo dipotong menggunakan mesin CNC. Sampul depan kotak menempatkan skrin, butang dan beberapa LED berkelip. LED adalah LED triwarna biasa yang berpusing walaupun warnanya, lihat BOM

Saya kemudian menggunakan sebilangan bongkah kayu 40mm x40mm untuk membina tempat untuk dispenser duit syiling dan pelongsor untuk token jatuh. Dispenser token terdiri daripada 3 plat bulat Perspex, bahagian atas dan bawahnya adalah Perspex 3mm dan bahagian tengah yang membawa token ialah Perspex 1mm. Cara kerjanya ialah plat tengah berpusing dan mengambil token dari timbunan dan menyeretnya ke lubang di piring bawah dan token itu jatuh ke pelongsor token ke tangan menunggu yang mengerikan dari beberapa pekerja lapar.

Token stacker adalah tabung penyiram lama yang saya letakkan di sekelilingnya dan diameternya sama dengan token. Saya menggerudi beberapa lubang di tabung penyiram sehingga anda dapat melihat berapa banyak token yang ditumpuk untuk diisi semula jika diperlukan. Tiub penyiram dimasukkan ke plat Perspex atas.

Langkah 3: Token Dispenser

The Token Dispenser
The Token Dispenser
The Token Dispenser
The Token Dispenser
The Token Dispenser
The Token Dispenser

Motor untuk menggerakkan plat tengah adalah motor segerak 220V AC dari…. Saya tidak tahu, menjumpainya di kotak alat ganti saya, selagi ia perlahan dan kuat. Poros itu dilekatkan pada plat tengah dengan beberapa gam epoksi yang disebut Pratex. Modul relay dipicu dan wayar langsung disambungkan untuk menjadikan motor berjalan. Saya menggerudi beberapa lubang di plat bawah untuk mengatasi geseran, jika ada perbezaan, saya tidak tahu. 2 lubang dipotong di kedua-dua sisi plat tengah untuk "merebut" token. Diameter lubang sedikit lebih besar daripada diameter token, sehingga terdapat sedikit margin untuk kesalahan ketika mengambil token.

Langkah 4: Mengesan Jika Token Dikeluarkan

Mengesan Jika Token Dikeluarkan
Mengesan Jika Token Dikeluarkan
Mengesan Jika Token Dikeluarkan
Mengesan Jika Token Dikeluarkan

Saya menggunakan Modul Sensor Fotolistrik untuk ini, kami tidak ingin mengucilkan pekerja, jika dia tidak menerima token setelah mengimbas tag. sekarang adakah kita ?. Rekod hanya ditulis ke kad SD, apabila pengesanan token berjaya, jika tidak ada token yang dikesan, paparan menjadi marah, menyalahkan perkhidmatan di syarikat dan perkhidmatan itu menyedihkan.. Tidak ada catatan yang ditulis dalam kes di mana tidak ada token untuk dikeluarkan. Saya menempelkan transistor foto ke bahagian bawah pelongsor sehingga token akan memecahkan balok ketika melewati balok

Langkah 5: Elektronik

Elektronik
Elektronik

Arduino Mega - Ini adalah otak Coin-o-Matic, semua sensor dll disambungkan ke Mega

Arduino Pro Mini dan RFM95 Lora Radio - Arduino Pro Mini dan Arduino Mega dihubungkan satu sama lain melalui bas bersiri, apabila tag diimbas, nombor tag dihantar pada bas bersiri dari Mega ke Pro Mini. Pro Mini sentiasa dalam perjalanan, sebaik sahaja sesuatu diterima di bas bersiri Pro Mini, nombor tag dimuat ke rangkaian kerja (TTN) menggunakan LoraWan. Saya tidak melakukan integrasi dalam hal itu, tetapi rencananya adalah mempunyai contoh AWS untuk menyimpan dan menyusun maklumat. Lihat langkah seterusnya untuk maklumat lebih lanjut.

Modul Jam Real Time RTC DS1307 I2C - Apabila Coin-O-Matic melakukan boot, ia akan masuk ke rangkaian WiFi dan mendapatkan masa dari pelayan NTP melalui Modul WiFi Papan Ujian ESP8266 ESP12 dan kemudian menetapkan masa RTC dengan sewajarnya

Warna Grafik 2.2 TFT LCD 240x320 ILI93412 - Paparan utama, biasanya menunjukkan jam dan akan memberikan beberapa pemikiran kepada pengguna

4 Penukar Aras Dua Arah Saluran - Oleh kerana pin digital Mega berukuran 5V, saya memerlukan penukar untuk berkomunikasi pada tahap selamat ke beberapa modul

NeoPixel Ring 24 RGB LED WS2812 - Buat sedikit cahaya untuk membingungkan dan mengelirukan pengguna

RFID Starter Kit 13.56MHz - Pembaca RFID

Modul Kad SD - Tulis nombor tag, tarikh dan masa untuk setiap sapu teg

Butang tekan - Pentadbir yang mempunyai tag induk, akan memuatkan tag baru dan saya menggunakan salah satu butang untuk menjeda paparan sehingga mereka dapat menyalin nombor tag dan mencatat siapa yang memiliki tag tersebut. 4 butang lain berwayar tetapi tidak digunakan pada masa ini

LED tiga warna - Lebih banyak cahaya untuk mengelirukan dan mengelirukan pengguna

Banyak dan banyak ikatan kabel - Cuba dan dapatkan pesanan ke semua wayar

Banyak penerjun papan roti - Wire barang

2 Channel 5V Relay Module 10 AMP 5VDC - Relay yang satu digunakan untuk menghidupkan motor dispenser duit syiling dan yang lain untuk menghidupkan modul ESP8266, program modul ESP8266 juga berada dalam gelung, sebaik mendapat kuasa, ia akan log masuk ke rangkaian WiFi dan lakukan panggilan masa NTP. Untuk meminimumkan panggilan masa NTP, saya memutuskan untuk menghidupkannya dengan relay, IE mengaktifkan relay, mengaktifkan modul ESP, modul ESP mendapatkan masa dan relay mematikan modul lagi … Dan itu juga menghasilkan bunyi klik yang bagus

Modul Sensor Fotolistrik Sinar Cahaya Inframerah - Untuk mengesan sama ada token dikeluarkan

Langkah 6: Papan Sensor LoRaWAN

Papan Sensor LoRaWAN
Papan Sensor LoRaWAN

Fail reka bentuk Eagle dilampirkan, papannya adalah buatan saya, tetapi saya menggunakan syarikat untuk menghasilkan papan itu sendiri. Papan ini boleh digunakan sebagai papan sensor LoRAWAN juga, ia sangat kecil, ~ 37mm x 54mm, ia memenuhi Sensor Suhu dan Kelembapan DHT 22 atau DHT 11 sebagaimana adanya.

Langkah 7: TTN - Rangkaian Perkara

TTN - Rangkaian Perkara
TTN - Rangkaian Perkara

Terdapat banyak maklumat mengenai perkara ini di

www.thethingsnetwork.org/

Pada asasnya, perbincangan Coin-O-Matic melalui LoraWAN (The Arduino Pro Mini dengan radio RFM95) ke pintu masuk (Raspberry Pi dengan penumpu IMST) yang disambungkan ke TTN melalui internet, dari TTN anda boleh melakukan banyak integrasi, IE Swagger, AWS, http dll, gambar di atas menunjukkan beberapa leretan tanda di pejabat

Langkah 8: Perisian

Perisian dibahagikan kepada 3 bahagian

getNTPtime_instructables - Program ESP8266, anda harus menukar ssid, kata laluan dan ntpServerName sebelum memuat naik. Saya menggunakan programmer asas FTDI, connect ground, TX dan RX. Ingatlah untuk memilih modul ESP di Arduino IDE dan menyusun pin pada ESP untuk memasukkannya ke mod pengaturcaraan

Coin-O-Matic_instructables - Program Coin-O-Matic. Ini dimuat di Arduino Mega, perubahan yang diperlukan di sini adalah nombor Master Tag -

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

pro_mini_instructables - Program LoRaWAN. Ini dimuat di Pro Mini, lihat skema untuk maklumat lebih lanjut mengenai cara memasang radio dan PIN mana yang akan digunakan. Alamat Peranti, Kunci Sesi Rangkaian dan Kunci Sesi Aplikasi mesti diubah setelah pendaftaran peranti dilakukan di TTN, jika anda akan menggunakan ABP

stat statik PROGMEM u1_t NWKSKEY [16] = {}; s]

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

stat statik u4_t DEVADDR = 0x; // <- Tukar alamat ini untuk setiap nod!

Langkah 9: Boot Up

Video menunjukkan relay diaktifkan (relay 1), modul ESP8266 masuk ke Rangkaian WiFi, menghantar isyarat waktu getNTP dan mendapat masa dari pelayan NTP, setelah masa berjaya dikemas kini, relay menyahaktifkan dan melepaskan kuasa ke ESP8266. Sekiranya ada yang salah dan tidak ada kemas kini masa yang berjaya, Arduino Mega menghidupkan semula dan mencuba lagi. Modul ESP8266 dan Arduino Mega dihubungkan antara satu sama lain melalui port bersiri (Serial2 di Mega), The Arduino Mega mendengar jawapan dari ESP8266, mesejnya kelihatan seperti ini "UNX [dan cap waktu zaman]", Saya berada di GMT + 2, jadi dalam kod Arduino Mega, saya menambahkan GMT + 2 sebagai berikut

time_t gmtTimeVar = newTimeVar + 7200;

rtc.adjust (DateTime (gmtTimeVar));

Langkah 10: Menambah / membuang Tag

Image
Image

Tanda Master diimbas dan paparan menunjukkan bahawa ini adalah tag induk. Tag baru diimbas dan nombor tag ditampilkan di layar dan memberi pengguna waktu untuk mencatat nombor dan mencatat siapa yang mempunyai tag baru. Nombor tag akan ditulis ke pangkalan data sebaik sahaja pengguna menekan butang kiri. Prosedur yang sama diikuti untuk mengeluarkan tag dari pangkalan data

Langkah 11: Beberapa Video Menunjukkan Pengoperasian Coin-O-Matic

Saya menggunakan node-red untuk berintegrasi dengan Telegram, node-red mempunyai modul integrasi ke TTN, jadi apa yang berlaku apabila anda mengimbas tag?

  • Tag diimbas
  • fail txt pada kad SD dibaca untuk melihat apakah itu tag yang sah
  • Sekiranya tag itu sah, cap waktu dengan nombor tag ditulis ke fail txt pada kad SD
  • Nombor tag dihantar melalui LoRaWAN dan Raspberry PI Gateway ke rangkaian TTN
  • Node-red melanggan mesej MQTT di rangkaian TTN
  • Node-Red menghantar nombor tag HEX ke DEC yang disahkod ke fail skrip bash yang berjalan di pelayan secara tempatan
  • Skrip bash mengimbas fail txt dengan NOMBOR TAG dan NAMA
  • Fail skrip bash memuat naik mesej ke Telegram BOT dengan curl yang mengandungi NOMOR TAG dan nama orang tersebut

Bagus dan kompleks, saya suka bagaimana tugas yang mudah menjadi kompleks

Beritahu saya pendapat anda dalam komen di bawah

Disyorkan: