Daftar Isi:
- Perlengkapan
- Langkah 1: Bagaimana Cara Kerjanya?
- Langkah 2: Apa Fungsi Utamanya?
- Langkah 3: Membangun Bahan
- Langkah 4: Unduh Kode Gateway
- Langkah 5: Mari Lakukan Konfigurasi Gateway
- Langkah 6: Unduh Contoh Kode Arduino
- Langkah 7: Mari Lakukan Sisi Server
- Langkah 8: Untuk Melangkah Lebih Jauh
Video: Serial UDP/IP Gateway untuk Arduino Berbasis ESP8266 Shield: 8 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:55
Saya sudah menerbitkan pada tahun 2016 instruksi ini "Cara membuat gateway Wifi Anda sendiri untuk menghubungkan Arduino Anda ke Jaringan IP". Karena saya melakukan beberapa perbaikan kode dan saya masih menggunakan solusi ini.
Namun demikian sekarang ada beberapa perisai ESP8266 yang memungkinkan melakukan hal yang sama tanpa menyolder selama Anda tidak menggunakan papan Mikro atau Nano.
Instruksi ini akan menjelaskan cara menggunakan perisai ESP82 ini sebagai gateway UDP/IP serial.
Ini mengambil bagian dari infrastruktur otomatisasi rumah global yang dapat Anda lihat di sini
Informasi lebih lanjut tentang perisai dengan instruksi ini
Perlengkapan
1 Arduino Mega (yang terbaik adalah memiliki setidaknya 1 Mega untuk pengembangan dan 1 Uno untuk fase berjalan)
1 Rokoo ESP8266 ESP-12E UART WIFI Convertisseur
1 FTDI 3.3v
2 kabel papan tempat memotong roti
Langkah 1: Bagaimana Cara Kerjanya?
Gateway didasarkan pada modul ESP8266
Modul ini terhubung dari satu sisi dengan tautan serial dari sisi lain ke jaringan IP dengan Wifi.
Ini bertindak sebagai kotak hitam. Paket data yang berasal dari link serial dikirim ke port IP/Udp dan sebaliknya.
Anda hanya perlu mengatur konfigurasi Anda sendiri (IP, WIFI …) setelah pertama kali Anda menyalakan Gateway.
Itu dapat mentransfer data ASCII mentah dan biner (tanpa HTTP, JSON …)
Ini dirancang untuk menghubungkan objek dengan perangkat lunak buatan server yang membutuhkan transfer paket data pendek yang cepat dan sering.
Langkah 2: Apa Fungsi Utamanya?
Sebagian besar adalah kotak hitam yang mengubah data serial ke paket UDP dengan dua cara.
Tetapi gateway juga dapat bertindak sendiri dengan mengirimkan informasi internal ke server dan menerima beberapa perintah dari server.
Arduino dapat mengirim dan menerima pesan ke / dari server yang terhubung melalui Internet hanya dengan mencetak / membaca tautan serial. Pengembang Arduino tidak perlu repot dengan protokol IP.
Selain itu, ia menyediakan GPIO yang dapat digunakan oleh Arduino untuk memeriksa apakah Gateway terhubung dengan benar ke WIFI dan Gateway dapat secara otomatis beralih antara 2 SSID yang berbeda jika terjadi kegagalan.
Gateway memiliki 2 mode berjalan berbeda yang dipilih dengan menyetel GPIO
Mengatur GPIO ke ground dan Gateway masuk dalam mode konfigurasi.
Mengatur GPIO gratis dan Gateway masuk dalam mode menjalankan gateway.
Selain itu, konfigurasi Gateway UDP/IP dapat dimodifikasi dari jarak jauh
Langkah 3: Membangun Bahan
Sangat sedikit hal yang diperlukan
1 ESP8266 Shield - Saya menemukan UNO R3 ESP8266 Serial WiFi Shield Extend Board Module ini dengan harga kurang dari € 9
1 UNO yang menjadi target target Arduino
1 Mega yang merupakan alat pengembangan arduino (Anda dapat melakukannya tanpa tetapi cukup sulit untuk di-debug)
1 FTDI 3.3/5v untuk pengembangan
Beberapa kabel
Langkah 4: Unduh Kode Gateway
Selama langkah ini Arduino hanya digunakan untuk memberi daya (dengan USB atau sumber daya lainnya) pada pelindung ESP8266
Hubungkan ESP8266 GPIO4 ke ground (untuk masuk ke mode konfigurasi)
Berhati-hatilah untuk mengatur FTDI ke 3.3v seperti yang dipersyaratkan oleh perisai
Hubungkan FTDI ke pelindung (RX ke TX)
Setel sakelar pelindung ke 1: mati 2: mati 3: hidup 4: hidup
Hubungkan sisi USB FTDI ke komputer Anda
Setel ulang pelindung dengan tombol tekan ESP-RST
Unduh kode Gateway di sana di GitHub
Buka Arduino IDE
- Pilih port monitor FTDI
- Buka IDE Serial Monitor - Atur kecepatan ke 38400
- Pilih papan modul ES8266 Generik
- Tingkatkan firmware pelindung dengan kode gateway
Setel sakelar 3: mati 4: mati
Buka Monitor Serial IDE
Setel ulang pelindung dengan tombol tekan ESP-RST
Anda harus melihat pesan di monitor yang dimulai dengan "Inisialisasi EEPROM" "Inisialisasi selesai"….
Saatnya melakukan konfigurasi
Langkah 5: Mari Lakukan Konfigurasi Gateway
Saat mengunduh kode gateway untuk pertama kalinya, ESP8266 Eeprom akan diinisialisasi dengan nilai default. Anda akan melihat pesan seperti ini "set parameter: x size: yy"
Anda dapat menemukan nilai-nilai ini di dalam definisi kode paramValue. Tentu saja Anda dapat mengubah nilai default ini sebelum mengunduh kode, tetapi Anda juga dapat mengatur konfigurasi Anda dengan perintah nanti. Ini lebih baik jika Anda berencana untuk memiliki gateway multipe dan hanya menyimpan satu versi kode.
Gunakan port serial monitor untuk mengirim perintah (diatur ke NL dan CR).
Karena SSID saat ini tidak ditentukan, tunggu "Tidak dapat terhubung ke coba ulang detik Anda: 5"
Kemudian pemindaian WIFI akan dimulai secara otomatis
Saatnya untuk mengatur SSID Anda dengan perintah berikut:
- SSID1=pilihan Anda1
- PSW1=psw1 Anda
- SSID2=pilihan Anda2
- PSW2=psw2 Anda
- SSID=1 (untuk memilih SSID yang akan digunakan)
- Mulai ulang Wifi
Setelah beberapa detik Anda dapat memeriksa koneksi dengan perintah "ShowWifi". Anda harus melihat alamat IP yang didapat gateway dari server DNS Anda. Jika demikian, inilah saatnya untuk melangkah lebih jauh
Saatnya menentukan alamat IP server Anda dengan memasukkan 4 subalamat (server yang akan menjalankan kode uji Java). Contohnya:
- "IP1=192"
- "IP2 = 168"
- "IP3=1"
- "IP4 = 10"
Dengan mengirim perintah kosong, Anda akan melihat semua perintah yang didukung yang dapat Anda gunakan nanti agar sesuai dengan kebutuhan Anda. Semua nilai parameter disimpan di Eeprom dan perlu reboot untuk diperhitungkan.
Lepaskan kabel konfigurasi
Perisai sekarang berjalan sebagai gerbang
Langkah 6: Unduh Contoh Kode Arduino
Pertama unduh kode Arduino utama di GitHub
Kemudian unduh kode Arduino definisi perintah ini dan kode tautan serial ini ke perpustakaan Anda
Kemudian buka kode utama dengan Arduino IDE baru
Setel sakelar pelindung 1 dan 2 untuk membebaskan tautan serial Arduino 0 untuk koneksi USB
Setel ulang perisai
Hubungkan kabel FTDI ke Mega Serial 2 (TX FTDI ke RX Mega dan seterusnya)
Mulai Arduino IDE baru (atau alat TTY), sambungkan Usb FTDI dan mulai pantau tautan serial
Unggah kode Arduino di dalam Mega
Atur sakelar pelindung 1 dan 2 untuk menghubungkan tautan serial Arduino 0
Setel ulang perisai
Anda harus melihat pesan ini "mulai cetak usb" di monitor
Langkah 7: Mari Lakukan Sisi Server
Contoh server adalah program Java yang dapat Anda unduh di sini di GitHub
Jalankan saja dan lihat konsol Java dan lihat monitor FTDI
Anda akan melihat pertukaran data antara server dan Arduino
Langkah 8: Untuk Melangkah Lebih Jauh
Contoh kode Arduino ini didasarkan pada bagian kerangka kerja infrastruktur otomatisasi rumah saya.
Jika Anda tertarik dengan infrastruktur ini, beri tahu saya. Saya akan menerbitkan sumber.
Jika Anda hanya ingin menggunakan gateway, Anda dapat menyederhanakan kode Arduino.
Setelah mengembangkan dan menguji kode Anda pada Arduino Mega, Anda dapat dengan mudah menggantinya dengan Uno !
Selain itu Anda dapat menghubungkan kabel antara Arduino GPIO 7 dan ESP8266 GPIO 5 jika Anda ingin Arduino Anda memeriksa koneksi Wifi
Direkomendasikan:
Transmisi Data NBIoT Cara Menggunakan Perisai Berbasis Modem BC95G - Uji UDP dan Pensinyalan Status Jaringan: 4 Langkah
Transmisi Data NBIoT Cara Menggunakan Perisai Berbasis Modem BC95G - Uji UDP dan Pensinyalan Status Jaringan: Tentang proyek ini:Uji kemampuan jaringan NB IoT dan transmisi data mentah UDP menggunakan xyz-mIoT oleh itbrainpower.net shield yang dilengkapi dengan modem Quectel BC95G.Waktu yang diperlukan: 10-15 menit.Kesulitan: menengah.Remarque: keterampilan menyolder diperlukan
Membuat Port USB Boards Berbasis SAMD21 Menjadi Port Serial Perangkat Keras!: 3 Langkah
Menjadikan Port USB Boards Berbasis SAMD21 Menjadi Port Serial Perangkat Keras!: Saat ini menggunakan port USB board Arduino (atau kompatibel lainnya) sebagai port Serial yang ditiru merupakan standar. Ini sangat berguna untuk men-debug, mengirim, dan menerima data dari papan yang kami sukai. Saya sedang mengerjakan uChip ketika, menelusuri datash
Termometer Inframerah Non Kontak Berbasis Arduino - Termometer Berbasis IR Menggunakan Arduino: 4 Langkah
Termometer Inframerah Non Kontak Berbasis Arduino | Termometer Berbasis IR Menggunakan Arduino: Hai teman-teman dalam instruksi ini kami akan membuat Termometer non-kontak menggunakan arduino. Karena terkadang suhu cairan / padat terlalu tinggi atau terlalu rendah dan kemudian sulit untuk melakukan kontak dengannya dan membacanya suhu kemudian dalam adegan itu
Generator Musik Berbasis Cuaca (Generator Midi Berbasis ESP8266): 4 Langkah (dengan Gambar)
Weather Based Music Generator (ESP8266 Based Midi Generator): Hai, hari ini saya akan menjelaskan cara membuat generator Musik berbasis Cuaca kecil Anda sendiri. Ini didasarkan pada ESP8266, yang mirip dengan Arduino, dan merespons suhu, hujan dan intensitas ringan. Jangan berharap untuk membuat seluruh lagu atau program akord
Pengontrol Servo Serial Berbasis Arduino: 6 Langkah
Pengontrol Servo Serial Berbasis Arduino: Ini adalah pengontrol serial sederhana untuk beberapa servos berdasarkan Arduino. (instruksi pertama saya juga :)) Sebagian besar pekerjaan dalam hal ini berasal dari mendapatkan perangkat lunak untuk berbicara dengan arduino dan membuat protokol untuk data yang akan dilewati. Sebagai