Tentang proyek ini
Pendahuluan
Ingin mencampur minuman dengan menekan tombol? 6-Shooter dapat mencampur dan mencocokkan kombinasi 6 minuman berbeda dengan satu pompa! Cukup pilih minuman Anda dari daftar, tekan tombolnya, lalu tuangkan minuman Anda dan berikan pertunjukan cahaya, tidak kurang! Dalam tutorial ini kita akan membuat sesuatu yang mirip dengan Somabar. Perhatikan bahwa ini adalah proyek yang cukup mahal , tapi itu benar-benar mengejutkan di pesta-pesta. Ingin membuat sendiri? Mari kita mulai!
Langkah 1:Pengkabelan
Ini terlihat seperti beberapa kabel yang cukup kuat, dan ini sedikit berantakan, tetapi sebenarnya proses yang sama diulang beberapa kali.
Untuk menghubungkan Katup Solenoid Anda ke Relai:
- Siapkan Relay, Solenoid Valve, DC Female Jack Pigtail, dan mur kawat Anda
- Pasang kabel dari Solenoid Valve ke terminal tengah pada Relay Anda
- Pasang kabel Ground Anda dari Jack DC ke NO atau Biasanya Terbuka pada Relay Anda
- Pasang kabel lainnya dari Solenoid Valve Anda ke kabel Tegangan dari Jack DC, baik dengan menggunakan mur kawat atau menyolder sambungannya. Kami menggunakan mur kawat karena kami penggemar cepat dan kotor, tetapi Anda akan mendapatkan sambungan listrik yang lebih baik dengan menyolder.
Proses yang sama seperti yang tercantum di atas berlaku untuk pompa, dengan memperhatikan bahwa kabel Negatif (Hitam, Ground) menuju terminal tengah pada Relai, dan kabel Positif (Merah, Tegangan) menuju kabel Tegangan Jack DC.
Bangun . Anda Panel Kontrol LCD dan Stasiun Minuman RobotGeek sebelum memasang kabel.
Pasang komponen Anda ke Sensor Shield:
Langkah 2:Perakitan
Atur komponen Anda sehingga kabel tidak tegang dan elektronik bebas dari bahaya cairan. Pertimbangan lain adalah menjaga kekacauan kawat yang terkandung di antara dua pelat meja kerja. Lihat gambar untuk inspirasi dalam mengatur komponen Anda, dan lihat diagram yang indah (sepuluh ribu jam dalam MS Paint) untuk memastikan Anda menjalankan saluran cairan Anda dengan orientasi yang tepat untuk berfungsi dengan pompa.
Langkah 3:Pemrograman dan Pengujian
Anda harus mengambil Perpustakaan dan Alat RobotGeek. Termasuk semua perpustakaan yang digunakan untuk 6-Shooter, dan kode demonstrasi untuk membuat Anda berjalan. Letakkan di folder Arduino Anda, buka IDE, dan muat:
robotGeekLibrariesAndtools-master.zipFile → Sketchbook → RobotGeekSketches → Demos → drinkStation
Dan mari kita lihat kodenya:
// SelectionsString selectionLine[14] ={ " ", //buffer line. Pergi dari sini atau alami teror. "1. Merah", "2. Hijau", "3. Biru", "4. Kuning", "5. Putih", "6. Hitam", "7. Merah &Kuning", "8. Hijau &Biru ", "9. Hitam &Putih ", "10. Hitam &Kuning ", " ", //garis penyangga. Pergi dari sini atau alami teror. " ", //garis penyangga. Pergi dari sini atau alami teror. "Akhir Daftar" //baris penyangga. Pergi dari sini atau alami teror. };
Ini daftar minumannya. Nama-nama ini akan muncul di layar LCD, dan dapat digulir untuk dipilih. Anda dapat mengubahnya untuk mencerminkan minuman dan campuran yang tersedia secara akurat.
int PUMP_TIME =2500; //Waktu stasiun pompa bekerja dalam milidetik
Ini adalah waktu pengoperasian pompa default. Anda dapat mengubah ini untuk menghasilkan bidikan yang lebih besar secara default.
LiquidCrystal_I2C lcd (0x27, 20, 4); //I2C 4 Baris 20 Col Layar LCD pada 0x27//LiquidCrystal_I2C lcd (0x3F, 20, 4); //I2C 4 Baris 20 Col Layar LCD pada 0x3F
Di sinilah kita menyebut layar. Beberapa layar ditangani secara berbeda dari yang lain, jadi jika layar tidak menampilkan daftar saat Anda memuat sketsa, ubah alamatnya di sini.
if ( debounce[2].fell() ) { switch (drinkSelectCounter) { case 1:// Merah lcd.setCursor(0, 0); lcd.print(promptLine[2]); colorWipe(strip.Color(255, 0, 0), 50); // Red digitalWrite(PUMP_RELAY_PIN, HIGH); // Hidupkan pompa digitalWrite(SELECTED_RELAY_PIN[0], HIGH); // Buka katup Solenoid 1 penundaan(PUMP_TIME); // Jalankan selama waktu yang ditentukan digitalWrite(SELECTED_RELAY_PIN[0], LOW); // Tutup katup Solenoid 1 digitalWrite(CLEAN_RELAY_PIN, HIGH); // Buka penundaan katup Solenoid 7 (PUMP_TIME); // Jalankan selama waktu yang ditentukan digitalWrite(CLEAN_RELAY_PIN, LOW); // Tutup katup Solenoid 7 digitalWrite(PUMP_RELAY_PIN, LOW); // Matikan pemutus pompa;
Ini adalah panggilan untuk minuman, dan operasi untuk minuman pertama dalam daftar. Anda dapat menambahkan atau mengubah setiap wadah sesuai keinginan Anda untuk minuman yang ingin Anda campur. Setiap kasus adalah serangkaian tindakan, dimulai dengan mengubah prompt di layar, diikuti dengan menyalakan lampu, diikuti dengan urutan membuka katup yang tepat dan menjalankan pompa. Anda hanya boleh menjalankan pompa jika setidaknya satu katup terbuka.
Unggah kode ke mikrokontroler Anda dan putarlah! Kami menyarankan untuk mengujinya dengan air terlebih dahulu, untuk berjaga-jaga jika ada sesuatu di build Anda yang funky. Pastikan untuk menguji setiap katup satu per satu sebelum menguji campuran. Setelah Anda puas dengan operasinya, mulailah merencanakan pesta!
Langkah 4:Berpesta!
Sekarang Anda memiliki bartender otomatis! Tamu Anda akan membalik ketika mereka mendapatkan minuman yang dibuat dengan sempurna dari robot dengan menekan sebuah tombol! Apa yang dapat Anda lakukan dari titik ini? Bagaimana dengan menambahkan fungsionalitas Bluetooth dan membuat aplikasi untuk tamu Anda untuk memilih minuman dari ponsel mereka (MIT App Inventor adalah alat yang hebat untuk ini)? Bagaimana kalau menambahkan lengan robot untuk mengantarkan minuman ke beberapa gelas dan benar-benar menjatuhkan kaus kaki mereka? Mungkin Anda bisa menemukan cara untuk menempatkan bocah nakal ini di atas rover dan menikmati minuman yang menyajikan droid di sekitar rumah Anda? Seperti biasa, kami akan senang mendengar ide Anda!
Kode
- Cuplikan kode #2
- Cuplikan kode #5
Cuplikan kode #2Teks biasa
// SelectionsString selectionLine[14] ={ " ", //garis penyangga. Pergi dari sini atau alami teror. "1. Merah", "2. Hijau", "3. Biru", "4. Kuning", "5. Putih", "6. Hitam", "7. Merah &Kuning", "8. Hijau &Biru ", "9. Hitam &Putih ", "10. Hitam &Kuning ", " ", //garis penyangga. Pergi dari sini atau alami teror. " ", //garis penyangga. Pergi dari sini atau alami teror. "Akhir Daftar" //baris penyangga. Pergi dari sini atau alami teror. };
Cuplikan kode #5Teks biasa
if ( debounce[2].fell() ) { switch (drinkSelectCounter) { case 1:// Merah lcd.setCursor(0, 0); lcd.print(promptLine[2]); colorWipe(strip.Color(255, 0, 0), 50); // Red digitalWrite(PUMP_RELAY_PIN, HIGH); // Hidupkan pompa digitalWrite(SELECTED_RELAY_PIN[0], HIGH); // Buka katup Solenoid 1 penundaan (PUMP_TIME); // Jalankan selama waktu yang ditentukan digitalWrite(SELECTED_RELAY_PIN[0], LOW); // Tutup katup Solenoid 1 digitalWrite(CLEAN_RELAY_PIN, HIGH); // Buka penundaan katup Solenoid 7 (PUMP_TIME); // Jalankan selama waktu yang ditentukan digitalWrite(CLEAN_RELAY_PIN, LOW); // Tutup katup Solenoid 7 digitalWrite(PUMP_RELAY_PIN, LOW); // Matikan pemutus pompa;
Github
https://github.com/robotgeek/robotGeekLibrariesAndtools/archive/master.ziphttps://github.com/robotgeek/robotGeekLibrariesAndtools/archive/master.zip