
Rutin adalah bidang besar untuk otomasi. Jika tugas tersebut membutuhkan banyak energi, membutuhkan ketekunan dan mengulanginya sendiri dari waktu ke waktu - ini adalah tanda yang pasti bahwa perlu mengambil beberapa langkah untuk mengurangi rasa sakit yang berulang ini. Dan Anda dapat mengubah implementasinya menjadi technofanchik yang baik.
Hari ini saya akan berbicara tentang otomatisasi sistem peringatan, pemantauan, dan peringatan. Di bawah luka, flasher Polandia pada tahun 1984 dan tidak ada tembakan yang meleset. Kode dan instruksi perakitan disertakan.
Baru-baru ini saya berusia 8 tahun. 8 tahun sejak saya bekerja di 2GIS. Pada kesempatan ini, seorang teman bertanya: “Bagaimana Anda bertahan begitu lama? Tidak ada keinginan untuk mencoba sesuatu yang baru? "
Muncul. Dan masih muncul. Dan masih berusaha. Saya mencoba sendiri dalam peran, tim, teknologi baru. Kenapa tidak Lagi pula, pekerjaan tidak hanya dan tidak banyak tentang "datang jam 9:00, buka task manager dan ambil tugas lain, pulang jam 18:00," dan bahkan tidak "Ah !!! Kami lagi-lagi DDoS'yat, mari kita push request_limit di sini, dan di sini kita membingungkan IP, dan di sini ... Oh, bagaimana ini sudah jam 3 pagi? " Ini semua salah. Pekerjaan adalah tentang tim, hubungan, pertemuan malam di dapur. Tentang tugas-tugas menarik dan lingkungan hidup yang nyaman. Semuanya membunuh ketidakpedulian dan rutinitas. Saya tidak tahu cara bekerja dengan yang pertama, saya tidak memperhatikannya sendiri, tetapi saya akan memberi tahu Anda tentang yang kedua.
Hari ini kita akan keluar jalur: lampu lalu lintas di kantor , dan satu lagi ; dan mengotomatiskan lansiran, pemantauan, dan lansiran. Tetapi untuk membuat lampu lalu lintas berikutnya untuk membangun server - ia pergi. Kami memiliki banyak bangunan, cabang, dan tes, tetapi tidak ada keinginan untuk merampok gudang polisi lalu lintas untuk selusin lampu lalu lintas. Kami akan memvisualisasikan "api"!
Sistem pemantauan standar

Berikut ini adalah layar khas yang tergantung di kantor kami. 95% dari waktu, itu menunjukkan betapa hidup proyek kami dan apa yang terjadi padanya. Secara paralel, ada saluran di Slack dengan pemberitahuan rilis dan bug.
Agar tidak mengganggu seluruh tim, seorang petugas jaga ditunjuk selama seminggu, yang bertindak sebagai master pembebasan dan menembak dirinya sendiri jika sesuatu yang buruk terjadi. Tugasnya adalah mencari tahu apa yang terjadi, dan memperbaikinya sendiri, atau menemukan seseorang yang akan memperbaikinya.
Kami juga menggunakan monitor ini untuk rapat harian - kami membuka Dewan Kanban di Jira dan kami pun pergi.
Apa yang salah
Status tugas tidak membatalkan tugas kerja. Jika orang yang bertanggung jawab atas kebakaran berkeliaran terlalu jauh ke lorong-lorong pikirannya, hasilnya mungkin kurang operasional daripada yang dibutuhkan. Ini mengarah pada gagasan bahwa untuk kebahagiaan lengkap kita membutuhkan peringatan yang lebih signifikan daripada pemberitahuan tanpa akhir dari Slack.
Otomatiskan itu!
Idenya semakin kuat ketika sebuah flasher Polandia vintage tahun 1984 yang sangat baik ditemukan di Avito. Jika ada api di suatu tempat, maka biarkan benda ini hidup! Hal itu dijanjikan bahkan dalam kondisi hampir bekerja. 500 rubel dan dia ada di ranselku. Jadi mari kita tambahkan dia sedikit hype dan arduino sketsa IOT.

Rencana aksi
Rencananya sederhana dan cemerlang! Kami mengambil catu daya 12 volt, menambahkan Sonoff SV - esp8266 dengan relay dan semua daya ikat yang diperlukan dan daya dari 12 volt. Kami memasang sesuatu seperti http://wifi-iot.ru/ , kami menangkap cahaya yang berkedip - untung! Kami memiliki perangkat yang terhubung melalui Wi-Fi dengan API REST dan 1000 fitur lainnya.
Tentang biaya

Kabel listrik dengan steker datar dari radio nenek atau dari pasar terdekat untuk produk radio - 60 rubel
Catu daya 12v 10w dengan Aliexpress atau semua produk radio yang sama - 260 rubel
Sonoff SV - $ 4,85 + pengiriman
Flasher vintage - tak ternilai (500 rubel)
Opini Wi-Fi Perusahaan
Untuk tindakan berani seperti itu, Wi-Fi korporat dengan sertifikat EAP-PEAP dan kata-kata menyeramkan lainnya mengatakan "Anda tidak akan lulus!".

Anda dapat menyingsingkan lengan baju Anda, google https://github.com/esp8266/Arduino/issues/1032 , ambil SDK baru dan tulis semuanya sendiri dengan cepat. Tapi kemudian technofanch berubah menjadi penggalian panjang dan debag. Saya akan menunda opsi ini sampai rilis versi 2.0, diperbaiki dan diperbaiki.
Produk lunak
Ambil olartamonov Arduino yang tercinta, hamburan dari apa yang telah berdebu di laci selama N tahun, dan kumpulkan monster Frankenstein. Gudang komponen rumah akan cukup untuk memeriksa kelayakan MVP dan membuang setelah debugging versi 2.0 yang indah dan mengkilap.

Solusinya canggung: Arduino terhubung ke jaringan melalui Ethernet, menerima IP melalui DHCP, mendengarkan permintaan HTTP dan berkedip "LED". Siapa pun di malam hari dapat menyusun solusi seperti itu dari Contoh Arduino IDE (tetapi tidak pernah, dengar, tidak pernah menggunakannya! Ini adalah neraka).
Apa yang harus digunakan?Bagi mereka yang masih menangis, menusuk, tetapi masih makan kaktus, saya sarankan mentransfer ke setidaknya PlatformIO (diinstal pada Atom atau VSCode), tetapi lebih baik tidak menggunakannya sama sekali, tetapi membaca kursus kuliah tentang STM32 atau sesuatu yang lebih berguna. Dan saya, seperti digigit anak-anak oleh para arduin, akan menyelesaikan perbuatan kotor saya :)
Kode diposting di github , tidak ada otorisasi, API bercabang dan halaman html yang indah. Hanya MVP, hanya hardcore! Gunakan dengan risiko Anda sendiri, saya memperingatkan.
Produk padat
Ketika perangkat lunak ditulis, saatnya untuk memulai lampu berkedip. Di bawah ini adalah diagram yang seharusnya membantu untuk memahami perangkat.
Menunggu:

Realitas:

Jadi ganti Sonoff SV dengan:
Arduino UNO + wiznet w5100 + Relay
Koneksi dengan pin:
DIGITAL 10 - SS
DIGITAL 11 - MOSI
DIGITAL 12 - MISO
DIGITAL 13 - SCK
GND - GND
5V - 5V
Kami menghubungkan relai lebih mudah: pin sinyal pada DIGITAL 4, kabel daya ke flasher yang kami kaitkan ke celah pada C (umum) dan NC (biasanya tertutup).
Achtung!
Lihat dokumentasi untuk perangkat Anda. Bukan fakta bahwa dengan menghubungkan papan Ethernet ke 5 volt Anda tidak akan mendapatkan asap lucu saat pengujian! Dalam kasus saya, semuanya normal, dan modul ini dirancang untuk daya dari 5 volt.
Produk plastik
Pengumuman tentang Avito mengatakan flasher sudah hampir operasional. Selama bertahun-tahun, hanya satu detail yang mati di dalamnya - roda gigi memutar reflektor.

Kami menghembuskan napas, mengambil Fusion360 ke tangan kami, mensimulasikan yang baru dan mencetaknya pada printer 3D kantor.
Proses Pemodelan GigiKami memeriksa jari-jari dan karakteristik lain dari roda gigi, kami bertarung dengan parameter ekstrusi dan alat pengiris yang kurang

Kami terus memodelkan

Kami mencetak, coba

Kustomisasi lebih banyak dan cetak lagi. Paku keling asli dibor dan diganti dengan kombinasi sekrup M3 konvensional dan mur pengunci sendiri. Jangan lupa menambahkan kursi untuk mereka.


Lumasi roda gigi, ganti kabel, pasang kembali - ini bekerja!
Akan menyenangkan untuk mencetak roda gigi dari nilon, tetapi cetakan halus pertama gagal, dan probe kedua dari Bestfilament tidak lagi cukup untuk yang kedua.
Untuk apa kita - tidak peduli apa!

Bagaimana cara menyalakan flasher ketika sesuatu yang tidak biasa terjadi?
SD! Kami menggunakan Grafana di kantor, jadi kami baru saja memulai Saluran Pemberitahuan baru dengan jenis WebHook, yang mengirimkan permintaan untuk menyalakan lampu darurat sesuai dengan kriteria tertentu. Dia mematikan dirinya setelah beberapa detik, agar tidak meningkatkan suasana lebih lagi.
Berapa banyak waktu yang dibutuhkan semua kekacauan ini? Beberapa malam, jika tidak terganggu. Ditambah setengah hari kerja untuk mengatur integrasi dengan sistem internal lainnya.
Technofanchik berhasil, tim membawa manfaat, foto-foto proses perakitan akhirnya disajikan.
Ini dia di depan kita, flasher dengan kabel