![UCL-IIOT - Sistem Penggera Dengan Pangkalan Data dan Node-red: 7 Langkah UCL-IIOT - Sistem Penggera Dengan Pangkalan Data dan Node-red: 7 Langkah](https://i.howwhatproduce.com/preview/how-to/10438080-ucl-iiot-alarm-system-with-database-and-node-red-7-steps-0.webp)
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:01
![UCL-IIOT - Sistem Penggera Dengan Pangkalan Data dan Node-red UCL-IIOT - Sistem Penggera Dengan Pangkalan Data dan Node-red](https://i.howwhatproduce.com/images/003/image-6783-1-j.webp)
![UCL-IIOT - Sistem Penggera Dengan Pangkalan Data dan Node-red UCL-IIOT - Sistem Penggera Dengan Pangkalan Data dan Node-red](https://i.howwhatproduce.com/images/003/image-6783-2-j.webp)
Tujuan pembinaan ini adalah untuk mengajar tentang menghubungkan Arduino dengan Node-red dan pangkalan data, sehingga anda dapat log data dan juga mengumpulkannya untuk digunakan nanti.
Untuk membina ini saya menggunakan sistem penggera arduino sederhana yang mengeluarkan 5 nombor data, masing-masing dipisahkan dengan koma.
Tidak semestinya jumlah data yang tepat dan program boleh menjadi apa-apa.
Bahagian pentingnya ialah data dipisahkan dengan koma seperti yang dilihat pada tangkapan skrin ini.
Contohnya, outputnya seperti ini: "324, 0, 0, 1, 1"
(pengaturcaraan dan arahan selesai untuk pembuatan arduino ada di bahagian bawah tutorial ini)
Langkah 1: Bermula dengan Node-red
![Bermula dengan Node-red Bermula dengan Node-red](https://i.howwhatproduce.com/images/003/image-6783-3-j.webp)
Untuk tutorial ini, kami menganggap anda sudah memasang Node-red, tetapi ada beberapa palet tambahan yang digunakan untuk projek ini yang kami perlukan untuk berfungsi
Cari butang "Urus Palet" dan pasangkan palet berikut.
- papan pemuka simpul-merah
- node-red-node-mysql
- node-red-node-arduino
- node-red-node-serialport
Ia harus menunjukkan beberapa palet baru di sisi menu butang Node-red.
Langkah 2: Memisahkan Data dengan Node-red
![Memisahkan Data dalam Node-red Memisahkan Data dalam Node-red](https://i.howwhatproduce.com/images/003/image-6783-4-j.webp)
Sekarang Node-red sudah siap, kita harus mulai dengan membahagikan data kita menjadi beberapa bahagian.
Inilah sebabnya mengapa kami memastikan untuk memisahkannya dengan koma di dalam kod Arduino.
Mula-mula mari kita mulakan dengan meletakkan nod Input Arduino, yang terdapat di panel sebelah kiri.
Anda perlu memastikan ia mempunyai port bersiri (Tambang menggunakan COM4) dan kadar Baud yang betul (dalam program saya, saya menggunakan 9600 kadar baud)
Sekiranya disiapkan dengan betul, ia harus dinyatakan bahawa ia disambungkan.
Seterusnya kami membuat blok fungsi Javascript dan menyambungkannya selepas simpul input Arduino. Blok ini membolehkan kami memprogram dalam Javascript, dan di sini kami menulis kod yang dapat membahagikan data kami untuk setiap koma.
Dalam blok fungsi ini saya membahagikan 5 data saya menggunakan kod berikut:
var m1 = {topic: "light1", payload: msg.payload.split (",") [0]}; var m2 = {topic: "light2", payload: msg.payload.split (",") [1]}; var m3 = {topic: "light3", payload: msg.payload.split (",") [2]}; var m4 = {topic: "millis", payload: msg.payload.split (",") [3]}; var m5 = {topic: "onoff", payload: msg.payload.split (",") [4]}; pulangan [m1, m2, m3, m4, m5];
(ubah kod yang diperlukan)
Pastikan simpul ditetapkan ke 5 output (atau setara anda)
Seperti yang dilihat dalam tangkapan skrin, kita sekarang mempunyai 5 output yang masing-masing menghubungkan ke simpul debug dan simpul papan pemuka teks. Ini akan berguna apabila kita perlu melihatnya di UI.
Langkah 3: Pangkalan Data Dengan Wampserver
![Pangkalan Data Dengan Wampserver Pangkalan Data Dengan Wampserver](https://i.howwhatproduce.com/images/003/image-6783-5-j.webp)
Agar pangkalan data kami berfungsi, anda perlu memasang Wampserver. Setelah dipasang dan ditunjukkan sebagai ikon hijau (setelah anda memulakan semua perkhidmatan), anda harus membuka "phpMyAdmin" yang akan membawa anda ke skrin log masuk. Kecuali anda mempunyai sebelumnya mengubahnya, masukkan "root" pada nama pengguna dan log masuk.
Tekan butang phpmyadmin di bawah alat di bar kiri dan ia akan membuka menu pangkalan data, yang kelihatan seperti yang ditunjukkan dalam gambar di atas.
Buat pangkalan data baru dan namakan sesuatu yang berkaitan dengan projek anda, nama saya dinamakan "alarmsystem" (nama-nama ini akan peka huruf besar kecil)
Di bawah pangkalan data itu, buat jadual baru dan beri nama, saya diberi nama "alarmdata"
ia akan bertanya sama ada anda mahu menggunakan "latin1_swedish_ci" dan kami menyimpannya seperti itu.
Sekarang anda membuat 6 jadual (1 lebih banyak daripada data yang kita ada)
Jadual pertama perlu menggunakan jenis data "longtext"
dan selebihnya set data menggunakan "mediumtext"
Pastikan namakannya. (set data pertama harus diberi nama "time"
Langkah 4: Pangkalan Data
![Pangkalan data Pangkalan data](https://i.howwhatproduce.com/images/003/image-6783-6-j.webp)
Set data Wampserver semestinya kelihatan seperti ini.
(tetapi tanpa data sebenarnya, karena kami belum mengetahuinya)
Langkah 5: Node-red ke Wampserver
![Node-red ke Wampserver Node-red ke Wampserver](https://i.howwhatproduce.com/images/003/image-6783-7-j.webp)
Sekarang kami mahu data yang kami keluarkan dari arduino kami pergi ke Wampserver kami.
Mulakan dengan membuat blok fungsi Javascript yang lain dan sambungkannya ke nod input arduino kami.
Dalam blok skrip ini, kami sekali lagi membahagikan data kami, tetapi kami memasukkannya ke dalam pangkalan data kami juga.
var data = msg.payload.split (","); var Green1 = data [0]; var Green2 = data [1]; var Penggera = data [2]; var Millis = data [3]; var IsActive = data [4]; var out = "INSERT INTO alarmsystem.alarmdata (Time, Green1, Green2, Alarm, Millis, IsActive) NILAI ('" + Tarikh baru (). toISOString (). slice (0, 19).replace (' T ',' ') + "', '" + Hijau1 + "', '" + Hijau2 + "', '" + Penggera + "', '" + Millis + "', '" + IsActive + "')"; msg.topic = keluar; kembalikan msg;
Perhatikan saya memasukkan "INSERT INTO alarmsystem.alarmdata", ini adalah nama yang kami berikan pangkalan data dan jadual kami, pastikan anda menulis nama yang tepat yang anda berikan dalam pangkalan data anda.
Sekarang sambungkan blok Javascript ke nod debug dan juga nod "mysql" yang terdapat di bawah palet simpanan di sebelah kiri.
di bawah blok mysql anda namakan sama dengan pangkalan data anda "alarmsystem"
ubah pengguna menjadi "root" (nama yang kami gunakan untuk log masuk ke pelayan kami)
host, port dan pangkalan data harus diisi dengan:
Tuan rumah: 127.0.0.1
Pelabuhan: 3306
Pangkalan Data: sistem penggera
Sekiranya semuanya dilakukan dengan betul, ia harus disambungkan setelah anda menerapkan perubahan anda.
Anda juga harus dapat melihat bahawa pangkalan data sekarang mencatat data anda dari Arduino secara langsung.
Langkah 6: Menggunakan Data Dari Wampserver ke Node-red
![Menggunakan Data Dari Wampserver ke Node-red Menggunakan Data Dari Wampserver ke Node-red](https://i.howwhatproduce.com/images/003/image-6783-8-j.webp)
![Menggunakan Data Dari Wampserver ke Node-red Menggunakan Data Dari Wampserver ke Node-red](https://i.howwhatproduce.com/images/003/image-6783-9-j.webp)
Untuk jangka akhir kami ingin melihat apakah kami dapat mengambil data yang telah kami simpan dan memasukkannya semula ke dalam Node-red kami dan diharapkan dapat memaparkannya.
Mulakan dengan meletakkan nod "suntik"
Di bawah topik dalam node ini kami meletakkan kod: SELECT * FROM alarmsystem.alarmdata
Ini akan dapat mencari pangkalan data kami semasa kami menekannya.
Sambungkan nod suntikan ke susunan simpul "mysql" baru sama seperti yang kami lakukan pada langkah sebelumnya.
Sambungkan nod mysql ke nod debug dan nod templat yang terdapat di bawah papan pemuka.
Nod templat akan menjadi jadual kami yang dapat kami kemas kini untuk menunjukkan data dari pangkalan data semasa ia dihasilkan.
Masukkan kod yang ditunjukkan pada tangkapan skrin di atas (ubah mengikut keperluan) dan sekarang ia harus menunjukkan jadual data di UI Node-red kami.
Kami juga boleh menambah butang papan pemuka untuk mengemas kini jadual dari UI itu sendiri.
Mulakan dengan membuat simpul butang.
sambungkan simpul butang ke blok fungsi Javascript.
di blok fungsi kita memasukkan kod berikut.
msg.topic = "SELECT * FROM alarmdata ORDER BY Green1 DESC LIMIT 20"; kembalikan msg;
(Green1 menjadi pemboleh ubah data pertama dalam jadual)
blok fungsi ini kemudiannya perlu disambungkan ke input nod mysql yang kita buat sebelumnya dalam langkah ini.
Langkah 7: Memuktamadkan
![Memuktamadkan Memuktamadkan](https://i.howwhatproduce.com/images/003/image-6783-10-j.webp)
Sekarang UI kami harus menyertakan kemas kini langsung data kami dan jadual dengan data dari pelayan kami sendiri.
Ini bermakna kita telah membuat hubungan antara Arduino, program berasaskan UI dan pangkalan data.
Sekiranya anda berminat dengan cara Sistem Penggera Arduino saya berfungsi, saya telah menambahkan dokumen yang menerangkan cara pengaturcaraan dan penyediaannya.
Serta eksport penuh pengaturcaraan simpul-merah.
Disyorkan:
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: 10 Langkah (dengan Gambar)
![Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: 10 Langkah (dengan Gambar) Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: 10 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/007/image-19330-j.webp)
Jam Penggera Pintar: Jam Penggera Pintar Dibuat Dengan Raspberry Pi: Adakah anda pernah mahukan jam pintar? Jika ya, ini adalah penyelesaian untuk anda! Saya membuat Jam Penggera Pintar, ini adalah jam yang boleh anda ubah waktu penggera mengikut laman web. Apabila penggera berbunyi, akan ada bunyi (bel) dan 2 lampu akan
Jam Penggera Jalan Sesame DIY (dengan Penggera Kebakaran!): 6 Langkah (dengan Gambar)
![Jam Penggera Jalan Sesame DIY (dengan Penggera Kebakaran!): 6 Langkah (dengan Gambar) Jam Penggera Jalan Sesame DIY (dengan Penggera Kebakaran!): 6 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/004/image-10897-2-j.webp)
Jam Penggera Jalan Sesame DIY (dengan Fire Alarm!): Hai semua! Projek ini adalah yang pertama saya. Sejak hari lahir pertama sepupu saya akan datang, saya ingin membuat hadiah khas untuknya. Saya mendengar dari bapa saudara dan ibu saudara bahawa dia ke Sesame Street, jadi saya memutuskan dengan adik-beradik saya untuk membuat jam penggera berdasarkan
Seni 2D Dengan LED yang Dapat Diprogramkan dan Pangkalan dan Logo yang Dapat Disesuaikan: 5 Langkah (dengan Gambar)
![Seni 2D Dengan LED yang Dapat Diprogramkan dan Pangkalan dan Logo yang Dapat Disesuaikan: 5 Langkah (dengan Gambar) Seni 2D Dengan LED yang Dapat Diprogramkan dan Pangkalan dan Logo yang Dapat Disesuaikan: 5 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/004/image-11104-j.webp)
Seni 2D Dengan LED yang Dapat Diprogramkan dan Pangkalan dan Logo yang Dapat Disesuaikan: Selamat datang di instruksional! Hari ini, saya akan menunjukkan cara membuat Projek Seni 2D dengan logo dan reka bentuk keseluruhan pilihan anda. Saya membuat projek ini kerana dapat mengajar orang tentang banyak kemahiran seperti pengaturcaraan, pendawaian, pemodelan 3D, dan lain-lain. Ini
Cara Mengambil Data Dari Pangkalan Data Firebase di NodeMCU: 7 Langkah
![Cara Mengambil Data Dari Pangkalan Data Firebase di NodeMCU: 7 Langkah Cara Mengambil Data Dari Pangkalan Data Firebase di NodeMCU: 7 Langkah](https://i.howwhatproduce.com/images/005/image-13259-28-j.webp)
Cara Mengambil Data Dari Pangkalan Data Firebase di NodeMCU: Untuk petunjuk ini, kami akan mengambil data dari pangkalan data di Google Firebase dan mengambilnya menggunakan NodeMCU untuk penghuraian lebih lanjut.KEPERLUAN PROJEK: 1) NodeMCU atau Pengawal ESP82662) G-Mail akaun untuk membuat pangkalan data Firebase.3) Muat turun
Jam Penggera Sunrise LED Dengan Penggera Lagu yang Disesuaikan: 7 Langkah (dengan Gambar)
![Jam Penggera Sunrise LED Dengan Penggera Lagu yang Disesuaikan: 7 Langkah (dengan Gambar) Jam Penggera Sunrise LED Dengan Penggera Lagu yang Disesuaikan: 7 Langkah (dengan Gambar)](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10967865-led-sunrise-alarm-clock-with-customizable-song-alarm-7-steps-with-pictures-0.webp)
Jam Penggera Matahari LED Dengan Penggera Lagu yang Dapat Disesuaikan: Motivasi Saya Musim sejuk ini teman wanita saya menghadapi banyak masalah untuk bangun pada waktu pagi dan kelihatannya menderita SAD (Gangguan Afektif Musim). Saya bahkan menyedari betapa sukarnya bangun pada musim sejuk kerana matahari belum datang