Isi kandungan:

Bagaimana Membuat Gerbang WIFI Sendiri untuk Menghubungkan Rangkaian Arduino Anda ke IP?: 11 Langkah (dengan Gambar)
Bagaimana Membuat Gerbang WIFI Sendiri untuk Menghubungkan Rangkaian Arduino Anda ke IP?: 11 Langkah (dengan Gambar)

Video: Bagaimana Membuat Gerbang WIFI Sendiri untuk Menghubungkan Rangkaian Arduino Anda ke IP?: 11 Langkah (dengan Gambar)

Video: Bagaimana Membuat Gerbang WIFI Sendiri untuk Menghubungkan Rangkaian Arduino Anda ke IP?: 11 Langkah (dengan Gambar)
Video: Membuat Alat Kontrol Peralatan Listrik Jarak Jauh - ARDUINO PROJECT INDONESIA 2024, November
Anonim
Bagaimana Membuat Gerbang WIFI Anda Sendiri untuk Menghubungkan Rangkaian Arduino Anda ke IP?
Bagaimana Membuat Gerbang WIFI Anda Sendiri untuk Menghubungkan Rangkaian Arduino Anda ke IP?

Sebilangan besar orang yang anda fikir Arduino adalah penyelesaian yang sangat baik untuk melakukan automasi rumah dan robot

Tetapi dari segi komunikasi, Arduino hanya datang dengan pautan bersiri.

Saya sedang mengusahakan robot yang perlu dihubungkan secara kekal dengan pelayan yang menjalankan kod kecerdasan buatan. Saya cuba menggunakan rangkaian RF seperti yang biasa saya lakukan untuk domain tetapi ia tidak cukup cekap. Semasa robot bergerak, saya tidak dapat menggunakan Ethernet Arduino Shield. Arduino Wifi Shield mahal dan nampaknya saya reka bentuk lama.

Saya memerlukan sesuatu yang dapat menukar data dengan cara yang sangat mudah dan cekap dengan pelayan.

Itulah sebabnya saya memutuskan untuk merancang Gateway berdasarkan mikrokontroler ESP8266 yang sangat murah dan cekap kuasa

Di sini anda dapat mengetahui cara membina komponen elektronik dan memuat turun perisian.

Saya menggunakan pintu masuk ini untuk automasi Rumah dan untuk Robotik.

Ini mengambil bahagian dari infrastruktur automasi rumah global yang boleh anda lihat di sini

Saya membuat instruksi lain yang menggunakan perisai ESP8266 dan mengelakkan pematerian

Bekalan

Saya menulis arahan lain mengenai topik ini

Langkah 1: Bagaimana Ia Berfungsi?

Bagaimanakah ia berfungsi ?
Bagaimanakah ia berfungsi ?

Gateway berdasarkan modul ESP8266

Modul ini dihubungkan dari satu sisi dengan pautan bersiri dari sisi lain ke rangkaian IP dengan Wifi.

Ia bertindak sebagai kotak hitam. Paket data yang berasal dari pautan bersiri dihantar ke port IP / Udp dan sebaliknya.

Anda hanya perlu menetapkan konfigurasi anda sendiri (IP, WIFI…) sekali kali pertama anda akan menggunakan Gateway.

Ia boleh memindahkan data ASCII mentah dan binari (tidak ada HTTP, JSON…)

Ia dirancang untuk menghubungkan objek dengan perisian buatan rumah pelayan yang memerlukan pemindahan paket data pendek yang cepat dan kerap.

Paling mudah digunakan dengan Arduino Mega yang memiliki lebih dari satu UART (misalnya Arduino Mega) tetapi dapat dijalankan juga dengan UNO.

Langkah 2: Apakah Fungsi Utama?

Kebanyakannya adalah kotak hitam yang menukar dan menghantar data bersiri ke paket UDP dengan dua cara.

Ia memiliki 3 LED yang menunjukkan status dan lalu lintas Gateway.

Ini menyediakan GPIO yang dapat digunakan oleh Arduino untuk menunggu Gateway disambungkan WIFI dan IP.

Ia berjalan dalam 3 mod berbeza yang diatur dengan suis:

  • Mod gerbang yang merupakan mod biasa
  • Mod konfigurasi yang digunakan untuk menetapkan parameter
  • Mod debug iaitu untuk mod debug

Sebilangan besar parameter boleh diubah suai untuk memenuhi keperluan anda.

Langkah 3: Pembinaan Bahan

Binaan Bahan
Binaan Bahan

Di atas Arduino anda, anda akan memerlukan

  • 1 x modul ESP8266 - Saya memilih MOD-WIFI-ESP8266-DEV dari Olimex yang berharga sekitar 5 euro yang cukup mudah digunakan.
  • Sumber kuasa 1 x 5v
  • Pengatur kuasa 1 x 3.3v - Saya menggunakan LM1086
  • Kapasitor 1 x 100 mikrofarad
  • 1 x modul APL ULN2803 (boleh diganti dengan 3 x transistor)
  • 8 x perintang (3 x 1K, 1 x 2K, 1 x 2.7k, 1x 3.3K, 1x 27K, 1x 33k)
  • 3 x LED (merah, hijau, biru)
  • 1 x Breadboard PCB
  • beberapa wayar dan penyambung

Anda hanya memerlukan langkah pembinaan sahaja

  • 1 x FTDI 3.3v untuk konfigurasi
  • Pateri besi dan timah

Sebelum memateri adalah penting untuk memasang semua komponen pada papan roti dan pastikan semuanya baik-baik saja.

Langkah 4: Mari Mulakan Dengan Elektronik di Breadboard

Mari Mulakan Dengan Elektronik di Breadboard!
Mari Mulakan Dengan Elektronik di Breadboard!

Susun atur elektronik boleh didapati dalam format Fritzing

Anda boleh memuat turunnya di sini langkah 1:

github.com/cuillerj/Esp8266IPSerialGateway/blob/master/GatewayElectronicStep1.fzz

Lakukan seperti skema dengan menjaga voltan.

Ingat bahawa ESP8266 tidak menyokong voltan lebih tinggi daripada 3.3v. FTDI mesti ditetapkan ke 3.3v.

Langkah 5: Mari Pergi ke Perisian

Mari Pergi ke Perisian!
Mari Pergi ke Perisian!

Mari mulakan dengan sisi Gateway

Saya menulis kod dengan Arduino IDE. Oleh itu, anda memerlukan ESP8266 untuk dikenali sebagai papan oleh IDE. Pilih papan yang sesuai dengan menu Alat / papan.

Sekiranya anda tidak melihat ESP266 dalam senarai itu bermakna anda mungkin perlu memasang ESP8266 Arduino Addon (anda boleh dapatkan di sini prosedurnya).

Semua kod yang anda perlukan ada di GitHub. Sudah tiba masanya untuk memuat turunnya!

Kod utama Gateway ada:

Di atas standard Arduino dan ESP8266 termasuk kod utama yang memerlukan 2 ini termasuk: LookFoString yang digunakan untuk memanipulasi rentetan dan ada:

ManageParamEeprom yang digunakan untuk membaca dan menyimpan parameter di Eeprom dan ada:

Sebaik sahaja anda mendapat semua kod, sudah tiba masanya untuk memuat naiknya ke dalam ESP8266. Pertama sambungkan FTDI ke port USB komputer anda.

Saya cadangkan anda memeriksa sambungan sebelum cuba memuat naik.

  • Tetapkan monitor bersiri Arduino ke port USB baru.
  • Tetapkan kelajuan ke 115200 kedua cr nl (kelajuan lalai untuk Olimex)
  • Kuasa pada papan roti (ESP8266 dilengkapi dengan perisian yang berkaitan dengan perintah AT)
  • Hantar "AT" dengan alat bersiri.
  • Anda mesti mendapat "OK" sebagai balasannya.

Sekiranya tidak, periksa sambungan anda dan lihat spesifikasi ESP8266 anda.

Sekiranya anda mendapat "OK" anda sudah bersedia untuk memuat naik kodnya

  • Matikan papan roti, tunggu beberapa saat,
  • tekan pada swith mikro hitam ESP8266. Adalah normal untuk mendapatkan sampah di monitor bersiri.
  • Tekan pada IDE muat naik untuk Arduino.
  • Setelah muat naik ditetapkan, kelajuan siri menjadi 38400.

Anda akan melihat sesuatu seperti dalam gambar.

Tahniah anda berjaya memuat naik kod!

Langkah 6: Mari Lakukan Konfigurasi

Mari Lakukan Konfigurasi!
Mari Lakukan Konfigurasi!

ConfigGPIO mesti diatur ke 1 untuk masuk dalam mod konfigurasi

Mula-mula mengimbas WIFI dengan memasukkan arahan: ScanWifi. Anda akan melihat senarai rangkaian yang dikesan.

  • Kemudian tetapkan SSID anda dengan memasukkan "SSID1 = yournetwork"
  • Kemudian tetapkan kata laluan anda dengan memasukkan "PSW1 = kata laluan anda"
  • Kemudian masukkan "SSID = 1" untuk menentukan rangkaian semasa
  • Masukkan "Restart" untuk menyambungkan Gateway ke WIFI anda.
  • Anda boleh mengesahkan bahawa anda mendapat IP dengan memasukkan "ShowWifi".
  • LED biru akan menyala dan LED merah berkelip.

Sudah waktunya untuk menentukan alamat pelayan IP anda dengan memasukkan 4 subadress (pelayan yang akan menjalankan kod ujian Java). Contohnya:

  • "IP1 = 192"
  • "IP2 = 168"
  • "IP3 = 1"
  • "IP4 = 10"

Langkah terakhir yang diperlukan adalah menetapkan port mendengar pelayan UDP dengan memasukkan "listenPort = xxxx".

Masukkan "ShowEeprom" untuk memeriksa apa yang baru anda simpan di Eeprom

Sekarang pasangkan GPIO2 ke tanah untuk meninggalkan mod konfigurasi

Gerbang anda sudah siap berfungsi

Terdapat beberapa arahan lain yang anda dapati dalam dokumentasi.

Langkah 7: Mari Lakukan Bahagian Arduino

Mari Lakukan Bahagian Arduino!
Mari Lakukan Bahagian Arduino!
Mari Lakukan Bahagian Arduino!
Mari Lakukan Bahagian Arduino!

Mula-mula sambungkan Arduino

Sekiranya anda mempunyai Mega, ini adalah yang paling mudah untuk dimulakan. Walaupun begitu anda boleh menggunakan Uno.

Untuk memeriksa kerja anda yang terbaik adalah menggunakan contohnya.

Anda boleh memuat turunnya di sana:

Ia merangkumi kod SerialNetwork yang terdapat di sini:

Muat naik kod di dalam Arduino anda.

LED hijau berkelip setiap kali Arduino menghantar data.

Langkah 8: Mari Lakukan Bahagian Pelayan

Mari Lakukan Bahagian Pelayan!
Mari Lakukan Bahagian Pelayan!
Mari Lakukan Bahagian Pelayan!
Mari Lakukan Bahagian Pelayan!

Contoh pelayan adalah program Java yang boleh anda muat turun di sini:

Jalankan sahaja

Lihatlah konsol Java.

Lihatlah monitor Arduino.

Arduino menghantar 2 paket yang berbeza.

  • Yang pertama mengandungi status pin 2 hingga 6 digital.
  • Yang kedua mengandungi 2 nilai rawak, tahap voltan A0 dalam mV dan kiraan kenaikan.

Program Java

  • mencetak data yang diterima dalam format heksadesimal
  • balas data jenis pertama dengan nilai on / off rawak untuk menyalakan / mematikan LED Arduino
  • balas data jenis kedua dengan kiraan yang diterima dan nilai rawak.

Langkah 9: Sudah tiba masanya untuk melakukan Pematerian

Sudah tiba masanya untuk melakukan pematerian!
Sudah tiba masanya untuk melakukan pematerian!
Sudah tiba masanya untuk melakukan pematerian!
Sudah tiba masanya untuk melakukan pematerian!
Sudah tiba masanya untuk melakukan pematerian!
Sudah tiba masanya untuk melakukan pematerian!

Ia berfungsi di papan roti!

Sudah tiba masanya untuk menjadikannya lebih mantap dengan menyolder bahagian pada PCB

Di atas apa yang anda buat dengan papan roti, anda mesti menambah 3 penyambung.

  • C1 1 x pin satu yang akan digunakan untuk memasuki mod jejak rangkaian.
  • C2 3 x pin yang akan digunakan untuk beralih antara mod berjalan dan konfigurasi.
  • C3 6 x pin yang akan digunakan untuk menghubungkan Gateway sama ada ke Arduino atau FTDI.

C1 yang disambungkan ke GPIO2 harus dibumikan secara manual jika anda ingin mengaktifkan jejak rangkaian.

C2 yang disambungkan ke GPIO 4 dapat diatur dalam 2 kedudukan yang berbeza. Satu yang ditetapkan ke mode berjalan normal dan satu set ke 3.3v untuk masuk dalam mod konfigurasi.

Tetapkan semua komponen pada PCB mengikut gambarajah dan selepas itu mulakan pematerian untuk mendapatkan produk akhir!

Langkah 10: Mari Lakukan Ujian Akhir

Image
Image

Mulakan program ujian Java.

Sambungkan Arduino.

Kuasa di Pintu Gerbang.

Dan lihatlah konsol Java, monitor Arduino, Arduino LED dan Gateway LED.

Langkah 11: Anda Boleh Menyesuaikan Reka Bentuk Ini dengan Keperluan Anda Sendiri

Mengenai perkakasan

  • Sekiranya anda memilih ESP8266 yang lain, anda perlu menyesuaikan dengan spesifikasi.
  • Sekiranya anda memilih pengatur 3.3v yang lain, ia mesti menghasilkan lebih daripada 500mA dan anda perlu menyesuaikan kapasitor.
  • Anda boleh mengubah perintang LED untuk menyesuaikan kecerahan.
  • Anda boleh menekan semua LED tetapi saya mengesyorkan agar sekurang-kurangnya merah menyala.
  • Anda boleh mengganti ULN2803 dengan 3 transistor (atau kurang saya pilih anda tidak menyimpan 3 LED).
  • Saya memang menguji tetapi di sana mesti berfungsi dengan papan Arduino 3.3v. Cukup sambungkan Tx Rx ke penyambung 3.3v.

Mengenai konfigurasi

  • Anda boleh menyimpan 2 SSID dan pertukaran yang berbeza
  • Anda boleh mengubahsuai GPIO yang digunakan

Mengenai perisian

Disyorkan: