Daftar Isi:

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, Juli
Anonim
Image
Image

Di kantor kami, kami memiliki mesin penjual otomatis yang dapat mengambil uang asli atau token. Manajemen memutuskan bahwa kami bisa mendapatkan beberapa permen gratis (dalam batas) untuk membuat kami senang dan puas dengan gaji rendah yang kami peroleh. Masalahnya adalah, bagaimana Anda mengendalikan itu? Mesin penjual otomatis milik perusahaan luar, jadi modifikasi mesin penjual otomatis tidak mungkin.

Masukkan Frankenstein Coin-O-Matic, ciptaan pikiran saya yang sakit. Memutuskan bagaimana melakukan ini, saya pikir tag RFID akan menjadi yang terbaik, berikan setiap karyawan tag RFID dan catat berapa kali tag RFID digesek. Saat tag digesek, token dibagikan untuk digunakan dengan mesin penjual otomatis (satu ventilasi gratis). Setiap kali TAG digesek, catat informasinya di kartu SD. Nomor TAG juga diunggah ke "cloud" menggunakan LoraWAN. Saya sudah bermain dengan LoRaWAN dan thethingsnetwork (TTN) dengan beberapa sensor suhu dan kelembaban, jadi kami memiliki Gateway TTN. Gateway TTN adalah Raspberry PI 3 dengan konsentrator IMST yang terhubung ke TTN.

Langkah 1: Daftar Bahan

  1. Beberapa Perspex 3mm
  2. Beberapa Perspex 1mm
  3. Arduino Mega
  4. Arduino Pro Mini
  5. Radio Lora RFM95
  6. Modul I2C RTC DS1307 Jam Waktu Nyata Kecil
  7. Warna Grafis 2.2" LCD TFT 240x320 ILI9341
  8. Pengonversi Tingkat Dua Arah Saluran 2 x 4
  9. Cincin NeoPixel 24 - LED RGB WS2812
  10. Kit Pemula RFID 13.56MHz
  11. Modul WiFi Papan Uji ESP8266 ESP12
  12. Modul Kartu SD
  13. 5 x Tombol tekan
  14. 2 x LED tiga warna
  15. Banyak dan banyak ikatan kabel
  16. Banyak jumper papan tempat memotong roti
  17. Kayu 40mm x 40mm
  18. Modul Relai 2 Saluran 5V 10 AMP
  19. Modul Sensor Fotolistrik Sinar Cahaya Inframerah 5VDC

Langkah 2: Mulai Membangun Basis dari Kayu dan Perpex

Mulai Membangun Basis dari Kayu dan Perpex
Mulai Membangun Basis dari Kayu dan Perpex

Dimulai dengan membuat kotak untuk menampung semua barang elektronik dari Perspex 3mm, Perspex dan logo dipotong menggunakan mesin CNC. Sampul depan kotak menampung layar, tombol, dan beberapa LED yang berkedip. LED adalah LED tiga warna normal yang berputar melalui warna, lihat BOM

Saya kemudian menggunakan beberapa balok kayu 40mm x40mm untuk membangun tempat dispenser koin dan saluran untuk memasukkan token. Dispenser token terdiri dari 3 pelat bundar Perspex, bagian atas dan bawah adalah Perspex 3mm dan bagian tengah yang membawa token adalah Perspex 1mm. Cara kerjanya adalah pelat tengah berputar dan mengambil token dari tumpukan dan menyeretnya ke lubang di pelat bawah dan token itu jatuh ke saluran token ke tangan beberapa karyawan yang lapar dan kotor.

Penumpuk token adalah tabung penyiram tua yang saya letakkan di sekitar dan diameternya persis sama dengan token. Saya mengebor beberapa lubang di tabung sprinkler sehingga Anda bisa melihat berapa banyak token yang ditumpuk untuk diisi ulang jika diperlukan. Tabung sprinkler direkatkan ke pelat Perspex atas.

Langkah 3: Token Dispenser

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

Motor untuk menggerakkan pelat tengah adalah motor sinkron AC 220V dari …. Saya tidak tahu, menemukannya di kotak suku cadang saya, asalkan lambat dan kuat. Poros direkatkan ke pelat tengah dengan lem epoksi yang disebut Pratex. Modul relai dipicu dan kabel langsung terhubung untuk membuat motor berjalan. Saya mengebor beberapa lubang di pelat bawah untuk melawan gesekan, jika ada bedanya, saya tidak tahu. 2 lubang dipotong di kedua sisi pelat tengah untuk "mengambil" token. Diameter lubang hanya sedikit lebih besar dari diameter token, sehingga ada beberapa margin kesalahan saat mengambil token.

Langkah 4: Mendeteksi Jika Token Diberikan

Mendeteksi Jika Token Diberikan
Mendeteksi Jika Token Diberikan
Mendeteksi Jika Token Diberikan
Mendeteksi Jika Token Diberikan

Saya menggunakan Modul Sensor Fotolistrik untuk ini, kami tidak ingin mengucilkan seorang karyawan, jika dia tidak menerima token setelah memindai tag. sekarang akan kita?. Catatan hanya ditulis ke kartu SD, ketika deteksi token berhasil, jika tidak ada token yang terdeteksi, tampilan menjadi marah, menyalahkan layanan di perusahaan dan layanan itu menyebalkan.. Tidak ada catatan yang tertulis di kasus di mana tidak ada token untuk dibagikan. Saya merekatkan transistor foto ke bagian bawah saluran sehingga token akan mematahkan balok ketika melewati balok

Langkah 5: Elektronik

Elektronik
Elektronik

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

Arduino Pro Mini dan Radio Lora RFM95 - Arduino Pro Mini dan Arduino Mega terhubung satu sama lain melalui bus serial, ketika tag dipindai, nomor tag dikirim pada bus serial dari Mega ke Pro Mini. Pro Mini berada dalam lingkaran sepanjang waktu, segera setelah sesuatu diterima di bus serial Pro Mini, nomor tag diunggah ke jaringan sesuatu (TTN) menggunakan LoraWan. Saya belum melakukan integrasi apa pun tentang itu, tetapi rencananya adalah memiliki instance AWS untuk menyimpan dan mengurutkan informasi. Lihat langkah berikutnya untuk informasi lebih lanjut.

Tiny RTC DS1307 Real Time Clock I2C Module - Ketika Coin-O-Matic boot, ia akan masuk ke jaringan WiFi dan mendapatkan waktu dari server NTP melalui Modul WiFi Papan Tes ESP8266 ESP12 dan kemudian mengatur waktu RTC yang sesuai

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

4 Channel Bidirectional Level Converters - Karena pin digital Mega adalah 5V, saya membutuhkan konverter untuk berkomunikasi pada tingkat yang aman ke beberapa modul

NeoPixel Ring 24 RGB LED WS2812 - Membuat beberapa cahaya membingungkan dan membingungkan pengguna

RFID Starter Kit 13.56MHz - Pembaca RFID

Modul Kartu SD - Tulis nomor tag, tanggal, dan waktu untuk setiap gesekan tag

Tombol tekan - Administrator yang memiliki tag master, akan memuat tag baru dan saya menggunakan salah satu tombol untuk menjeda tampilan hingga mereka dapat menyalin nomor tag dan mencatat siapa yang memiliki tag. 4 tombol lainnya terhubung tetapi tidak digunakan saat ini

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

Banyak dan banyak ikatan kabel - Coba dan pesan semua kabel

Banyak jumper papan tempat memotong roti - Pasang semuanya

2 Channel 5V Relay Module 10 AMP 5VDC - Relay yang satu digunakan untuk menyalakan motor coin dispenser dan yang lainnya untuk menyalakan modul ESP8266, program modul ESP8266 juga dalam satu lingkaran, segera setelah mendapat daya, ia akan masuk ke jaringan WiFi dan lakukan panggilan get NTP time. Untuk meminimalkan panggilan waktu NTP, saya memutuskan untuk menyalakannya dengan relai, yaitu mengaktifkan relai, mengaktifkan modul ESP, modul ESP mendapatkan waktu dan relai mematikan modul lagi… Dan itu membuat suara klik yang bagus juga

Modul Sensor Fotolistrik Sinar Cahaya Inframerah - Untuk mendeteksi jika token dibagikan

Langkah 6: Papan Sensor LoRaWAN

Papan Sensor LoRaWAN
Papan Sensor LoRaWAN

File desain Eagle terlampir, papan adalah buatan saya, tetapi saya menggunakan perusahaan untuk memproduksi papan itu sendiri. Papan ini juga dapat digunakan sebagai papan sensor LoRAWAN, ukurannya sangat kecil, ~37mm x 54mm, cocok untuk Sensor Suhu dan Kelembaban DHT 22 atau DHT 11 apa adanya.

Langkah 7: TTN - Jaringan Hal

TTN - Jaringan Hal
TTN - Jaringan Hal

Ada banyak informasi tentang ini di

www.thethingsnetwork.org/

Pada dasarnya, Coin-O-Matic berbicara melalui LoraWAN (Arduino Pro Mini dengan radio RFM95) ke gateway (Raspberry Pi dengan konsentrator IMST) yang terhubung ke TTN melalui internet, dari TTN Anda dapat melakukan banyak integrasi, IE Swagger, AWS, http dll, gambar di atas menunjukkan beberapa gesekan tag di kantor

Langkah 8: Perangkat Lunak

Perangkat lunak ini dibagi menjadi 3 bagian

getNTPtime_instructables - Program ESP8266, Anda harus mengubah ssid, kata sandi dan ntpServerName sebelum mengunggah. Saya menggunakan programmer dasar FTDI, menghubungkan ground, TX dan RX. Ingatlah untuk memilih modul ESP di Arduino IDE dan memilah pin pada ESP untuk memasukkannya ke mode pemrograman

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

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

pro_mini_instructables - Program LoRaWAN. Ini dimuat di Pro Mini, lihat skema untuk detail lebih lanjut tentang cara menyambungkan radio dan PIN mana yang digunakan. Alamat Perangkat, Kunci Sesi Jaringan, dan Kunci Sesi Aplikasi harus diubah setelah pendaftaran perangkat dilakukan di TTN, jika Anda akan menggunakan ABP

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

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

konstanta statis u4_t DEVADDR = 0x; // <-- Ubah alamat ini untuk setiap node!

Langkah 9: Booting

Video menunjukkan relai sedang diaktifkan (relai 1), modul ESP8266 masuk ke Jaringan WiFi, mengirim sinyal waktu getNTP dan mendapatkan waktu dari server NTP, setelah waktu berhasil diperbarui, relai dinonaktifkan dan melepaskan daya ke ESP8266. Jika terjadi kesalahan dan tidak ada pembaruan waktu yang berhasil, Arduino Mega akan reboot dan mencoba lagi. Modul ESP8266 dan Arduino Mega terhubung satu sama lain melalui port serial (Serial2 pada Mega), Arduino Mega mendengarkan jawaban dari ESP8266, pesannya terlihat seperti ini "UNX[and the epoch time stamp]", Saya dalam GMT+2, jadi dalam kode Arduino Mega, saya menambahkan GMT+2 sebagai berikut

time_t gmtTimeVar = newTimeVar+7200;

rtc.adjust(DateTime(gmtTimeVar));

Langkah 10: Menambahkan/menghapus Tag

Image
Image

Tag Master dipindai dan layar menunjukkan bahwa ini adalah tag master. Tag baru dipindai dan nomor tag ditampilkan di layar dan memberi pengguna waktu untuk mencatat nomor dan mencatat siapa yang memiliki tag baru. Nomor tag akan ditulis ke database segera setelah pengguna menekan tombol kiri. Prosedur yang sama diikuti untuk menghapus tag dari database

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

Saya menggunakan node-red untuk berintegrasi dengan Telegram, node-red memiliki modul integrasi ke TTN, jadi apa yang terjadi ketika Anda memindai tag?

  • Tag dipindai
  • file txt pada kartu SD dibaca untuk melihat apakah itu adalah tag yang valid
  • Jika tag valid, cap waktu dengan nomor tag ditulis ke file txt di kartu SD
  • Nomor tag dikirim melalui LoRaWAN dan Raspberry PI Gateway ke jaringan TTN
  • Node-red berlangganan pesan MQTT di jaringan TTN
  • Node-Red mengirim kode HEX ke nomor tag DEC ke file skrip bash yang berjalan di server secara lokal
  • Skrip bash memindai file txt dengan NOMOR TAG dan NAMA
  • File skrip bash mengunggah pesan ke BOT Telegram dengan curl yang berisi NOMOR TAG dan nama orang tersebut

Bagus dan kompleks, saya suka bagaimana tugas yang begitu sederhana menjadi sangat rumit

Beri tahu saya pendapat Anda di komentar di bawah

Direkomendasikan: