Antarmuka untuk Perangkat Crib Swing - Dari Fob Kunci ke Web
Sedikit lebih dari setahun telah berlalu sejak penulisan artikel pertama saya tentang perangkat untuk goyang buaian. Selama waktu ini, saya mengembangkan panel kontrol baru dengan layar, dan kemudian antarmuka web ke perangkat ini. Jika Anda tertarik untuk belajar lebih banyak, selamat datang di kucing.Pada awalnya - beberapa kata tentang perangkat itu sendiri, ringkasan singkat dari seri sebelumnya.Jadi, perangkat ini dirancang untuk mengayunkan boks bayi dengan mekanisme pendulum. Unit drive dengan elektromagnet dan elektronik di dalamnya dipasang pada bagian boks tetap. Magnet neodymium dipasang pada bagian yang bergerak. Terbang di atas elektromagnet, magnet permanen menginduksi EMF, bentuknya yang menentukan saat menghubungkan elektromagnet yang sama ke sumber daya. Dengan demikian, elektromagnet pada waktu yang tepat mendorong magnet permanen dan, karenanya, bagian boks yang dapat bergerak. Pada saat yang sama ketika elektromagnet tidak diaktifkan, ia memainkan peran sensor posisi untuk bagian boks yang dapat bergerak.
Saya membuat salinan perangkat pertama untuk saya sendiri. Kemudian ternyata perangkat tersebut dapat dijual, dan selama lebih dari tiga tahun saya telah melakukan ini dengan berbagai tingkat keberhasilan. Sekarang dalam batch kecil, empat model perangkat ini diproduksi dan dijual melalui salah satu produsen furnitur anak-anak terbesar di Rusia.Pada model pertama perangkat untuk menggoyang buaian, kendali jarak jauh seperti itu digunakan sebagai panel kontrol. Ada empat tombol di atasnya dengan fungsi "Start", "Stop", "Stronger" dan "Weaker". Dengan demikian, menggunakan remote control ini, Anda dapat memulai dan menghentikan ayunan, serta mengubah intensitasnya - pilih satu dari enam level yang memungkinkan. Key fob beroperasi pada frekuensi 433 MHz dan tidak memiliki umpan balik.Setelah beberapa waktu, versi perangkat yang disederhanakan (model 0) dikembangkan, umumnya tanpa panel kontrol. Mereka mengguncang buaian dengan tangannya - dan terus mengayun tanpa batas. Berhenti - berayun berhenti.Dalam mengembangkan model perangkat ayunan berikutnya (model 2), tugas utama adalah menambahkan timer mabuk dan memulai ayunan dari tangisan anak. Dan itu ternyata menjadi masalah.Faktanya adalah bahwa waktu ayunan harus diatur entah bagaimana, dalam jam dan menit. Dan sensitivitas mikrofon juga bagus untuk diatur. Tetapi semua ini membutuhkan antarmuka, dan kendali jarak jauh "buta" dengan empat tombol jelas tidak cukup.Tentu saja, pikiran pertama adalah membuat beberapa indikasi pada case perangkat. Letakkan di sana beberapa LED dan / atau layar kecil. Dan kendalikan juga, dengan bantuan remote kecil ini. Namun, kelemahan dari solusi ini adalah bahwa perangkat umumnya dipasang di tempat yang tidak dapat diakses, di suatu tempat di dinding belakang boks di dinding. Dan indikasi pada kasus dalam hal ini tidak akan terlihat.Jadi diputuskan untuk membuat panel kontrol dengan tampilan. Sedikit kurang dari satu tahun pengembangan - dan perangkat dengan remote control siap!
Di dalam konsol adalah ATMega32A, layar adalah layar dari Nokia 1202, dan transceiver adalah NRF24L01 +. Kasingnya adalah standar siap pakai, keyboard adalah film. Dari remote control, Anda dapat mengatur waktu mabuk, sensitivitas mikrofon, intensitas ayunan, serta memulai dan menghentikan proses. Untuk kasus beberapa tempat tidur di ruangan yang sama, kemungkinan mengubah saluran kontrol disediakan, karena NRF24L01 + dengan mudah memungkinkan hal ini.Konsol dan perangkat selalu saling berdialog. Ini dilakukan untuk umpan balik - status perangkat saat ini ditampilkan di layar, yaitu, apakah proses ayunan sedang berlangsung atau tidak (jika ya, gambar boks pada remote control juga berayun), berapa lama waktu yang tersisa untuk dipompa, apa pengaturan saat ini untuk intensitas mabuk gerakan dan sensitivitas mikrofon. Agar baterai di panel kontrol tidak terkuras terlalu cepat, mode tidur disediakan - jika tidak ada yang menekan tombol pada remote control selama setengah jam, remote control akan "tertidur".Setelah pengembangan dan peluncuran "Model 2", meskipun dalam produksi yang sederhana namun tetap, saya terus berpikir untuk meningkatkan perangkat swing. Itu akan luar biasa, saya pikir, jika Anda dapat mengontrol perangkat dari ponsel! Atau dari tablet. Misalnya, ketika saya tidur, saya meletakkan ponsel di sebelah saya. Ada jam alarm, dan surat, dan Anda dapat membaca sesuatu sebelum tidur. Dan tentu saja banyak orangtua muda juga melakukannya. Mengapa menggunakan remote control terpisah untuk perangkat swing saat ini - hal universal - smartphone atau tablet! Biarkan dia menjadi panel kontrol, pikirku.Apa yang kurang lebih cocok dengan antarmuka radio di smartphone modern? Bluetooth dan Wi-Fi. Pada awalnya, saya mempertimbangkan untuk mengendalikan perangkat swing melalui Bluetooth. Dari kelebihan - mudah diimplementasikan dari sisi perangkat. Anda dapat menerapkan modul - "jembatan" Bluetooth-UART, dan ini masalahnya.Benar, dari sisi smartphone - masalah terus menerus.Memulai dengan menjaga Bluetooth di ponsel Anda sepanjang waktu adalah ide yang buruk. Selanjutnya, untuk setiap OS Anda harus menulis perangkat lunak Anda sendiri, ini setidaknya dua aplikasi - untuk Android dan untuk iPhone. Tetapi ada juga telepon di bawah Windows Phone ... Setelah mempelajari topik ini lebih dalam, saya menemukan bahwa tidak ada yang dapat bekerja dengan iPhone, sepertinya ada beberapa batasan. Yah, bahkan jika semuanya berhasil. Aplikasi pertama harus ditulis. Kemudian terbitkan di toko yang sesuai. Maka mereka harus dipertahankan dalam urutan kerja yang baik, untuk memperbaiki kesalahan, untuk menanggapi komentar pengguna. Masalahnya adalah bahwa saya tidak pernah melakukan semua ini, bagi saya itu adalah "hutan gelap dengan partisan" dan dalam cara yang baik untuk bagian pekerjaan ini Anda perlu mempekerjakan orang yang berpengetahuan. Dan untuk mempekerjakan tidak satu kali, dan kemudian terus-menerus berkolaborasi dengannya dalam hal dukungan program.Nah, atau pelajari semuanya sendiri. Ternyata entah bagaimana mahal, dan secara teknis jelek. Karena itu, Bluetooth menghilang.Dan kemudian saya mengetahui tentang keberadaan ESP8266.Ya, sudah banyak yang menulis tentang modul-modul ini di sini, di samping itu, ada forum berbahasa Rusia yang sangat baik. Kurang dari setahun yang lalu, setelah mulai mempertimbangkan modul ini untuk aplikasi saya, untuk waktu yang lama saya tidak bisa membentuk pendapat tentang kemampuannya. Dan sekarang, dilihat dari pertanyaan pendatang baru di forum yang sama, saya melihat bahwa banyak yang tidak tahu apa modul ini (chip) mampu.Ada hal penting untuk dikatakan di sini - awalnya ESP8266 "dilengkapi" dengan SDK Cina yang sangat "mentah" dan "buggy", dan oleh karena itu chip tersebut tidak dapat digunakan untuk menyelesaikan tugas "pertempuran" yang sebenarnya. Jadi, tentu saja, itu mungkin untuk bermain, mengedipkan LED, tetapi tidak mungkin untuk melakukan sesuatu yang bekerja secara stabil.Namun, selama setahun terakhir, situasinya telah berubah secara mendasar. Pada forum berbahasa Rusia yang didedikasikan untuk chip ini, salah satu pesertanya mengimplementasikan proyek - "Pengembangan 'perpustakaan' server web kecil di ESP8266." Orang penyamaran yang luar biasa bersembunyi di bawah nama panggilan pvvx firmware buatan tangan tunggal untuk ESP8266, yang memungkinkan Anda untuk sepenuhnya mengungkapkan kemampuan chip ini. Kode sumber proyek tersedia untuk akses publik, penulis mengizinkannya untuk digunakan sesuka Anda, termasuk untuk tujuan komersial. Selain itu, pvvx terus melengkapi perakitan dengan fitur-fitur baru, dan, yang sangat penting, secara aktif hadir di forum dan tidak bosan (well, mungkin) menasihati pemula (dan bukan pemula juga).Sebagai akibatnya, saya tidak takut pada pathos, pekerjaan yang luar biasa, menjadi mungkin (di antara banyak hal lainnya) untuk menyediakan perangkat apa pun dengan antarmuka web yang berfungsi penuh dan stabil. Kemampuan chip dan firmware tidak terbatas pada aplikasi ini, tetapi saya harus menyelesaikan masalah ini.Keuntungan menggunakan ESP8266 sudah jelas, dan terlebih lagi, saat ini tidak ada opsi lain yang sebanding dalam harga dan fungsionalitas.Memang, dengan harga sekitar 170 rubel pada modul ESP8266, Anda dapat mengatur server web dengan antarmuka kontrol perangkat, yang memungkinkan Anda untuk tidak menulis program sama sekali di bawah sistem operasi apa pun, cukup buat antarmuka web sekali saja. Modul ini dapat beroperasi sebagai titik akses dan sebagai stasiun, serta secara bersamaan dalam dua mode ini. Misalnya, dengan menyambungkan ke modul sebagai titik akses, Anda dapat mengonfigurasi parameter komunikasinya, dan kemudian, jika diinginkan, sambungkan modul sebagai stasiun ke jaringan Wi-Fi rumah Anda. Perakitan ("dump", sebagaimana penulis menyebutnya dengan hormat) memiliki banyak pengaturan (lebih dari 250) yang tersedia dari antarmuka web.Tentu saja, ada firmware lain untuk ESP8266, tetapi tidak satupun dari mereka memiliki kemampuan seperti itu, stabilitas dan kualitas kerja seperti perakitan dari pvvx (ini adalah pendapat subjektif saya, berkaitan dengan tugas saya).Berdasarkan firmware ini, antarmuka web dikembangkan untuk perangkat goyang buaian. Komponen web itu sendiri ditulis sedemikian rupa sehingga situs ditampilkan dengan benar di berbagai layar dengan ukuran dan resolusi yang berbeda.

Tentu saja, perangkat keras perangkat harus dibuat ulang yang hebat (sebenarnya - dilakukan lagi). Algoritma swing sekarang diimplementasikan pada mikrokontroler Attiny441, berinteraksi dengan ESP8266 via UART. Suplai 3,3 volt dibuat menggunakan ST1S10. Papan opsi dengan kesalahan (diperbaiki oleh pemasangan di permukaan):
Dengan demikian, sekarang menjadi lebih mudah untuk "mengikat" Wi-Fi dan antarmuka web dengan apa pun. Pada saat yang sama, sistem akan bekerja dengan cukup stabil, dan biaya komponen hanya sekitar 250 rubel (jika Anda menghitung seluruh penjilidan, tidak hanya modul ESP8266 itu sendiri).Dan antarmuka web perangkat untuk goyang boks muncul. Source: https://habr.com/ru/post/id386293/
All Articles