Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Komponen dan Perlengkapan

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah
Arduino UNO
× 1
Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah
Espressif ESP8266 ESP-01
× 1

Aplikasi dan Layanan Online

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah
Arduino IDE
Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah
Microsoft Visual Studio 2017

Tentang Proyek Ini

Dalam proyek ini, kita akan belajar cara membuat koneksi antara layanan internet dan papan Arduino. Pada akhir artikel ini, Anda akan:

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Google Assistant & Applet IFTTT

Google Assistant adalah asisten virtual yang dikembangkan oleh Google yang didukung oleh kecerdasan buatan dan terutama tersedia di perangkat seluler dan smart home. Berbeda dengan asisten virtual sebelumnya perusahaan, Google Now, Google Assistant dapat terlibat dalam percakapan dua arah. Ia dapat mengenali kata-kata Anda lebih baik dari perangkat apa pun dan merespons perintah Anda dengan cepat dan benar. Pengguna terutama berinteraksi dengan Google Assistant melalui suara alami, meskipun input keyboard juga didukung. Dalam sifat dan cara yang sama dengan Google Now, Assistant mampu mencari Internet, menjadwalkan acara dan alarm, menyesuaikan pengaturan hardware pada perangkat pengguna, dan menampilkan informasi dari akun Google pengguna. Google juga telah mengumumkan bahwa Assistant akan dapat mengidentifikasi objek dan mengumpulkan informasi visual melalui kamera perangkat, serta mendukung pembelian produk dan pengiriman uang, serta mengidentifikasi lagu.

If This Then That, juga dikenal sebagai IFTTT, adalah layanan web gratis untuk membuat rantai pernyataan kondisional sederhana, disebut applet. Sebuah applet dipicu oleh perubahan yang terjadi dalam layanan web lainnya seperti Gmail, Facebook, Telegram, Instagram, atau Pinterest. Misalnya, sebuah applet dapat mengirim pesan email jika pengguna bertwitter menggunakan hashtag, atau menyalin foto di Facebook ke arsip pengguna jika seseorang menandai pengguna dalam foto. Selain aplikasi berbasis web, layanan ini berjalan di iOS dan Android. Pada Februari 2015, IFTTT mengubah nama aplikasi aslinya menjadi IF, dan merilis serangkaian aplikasi baru yang disebut Do, yang memungkinkan pengguna membuat aplikasi pintasan dan tindakan. Sejak 2015, pengguna IFTTT membuat sekitar 20 juta resep setiap hari. Semua fungsionalitas serangkaian aplikasi Do telah terintegrasi ke dalam aplikasi IFTTT yang dirancang ulang.

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Webhook & Konten JSON

Webhook dalam pengembangan web adalah metode untuk memperluas atau mengubah perilaku halaman web, atau aplikasi web, dengan callback kustom. Callback ini dapat dipelihara, dimodifikasi, dan dikelola oleh pengguna dan pengembang pihak ketiga yang mungkin tidak terafiliasi dengan situs web atau aplikasi asli. Istilah “webhook” diciptakan oleh Jeff Lindsay pada tahun 2007 dari istilah pemrograman komputer hook.

Dalam komputasi, JavaScript Object Notation (JSON) adalah format file standar terbuka yang menggunakan teks yang dapat dibaca manusia untuk mentransmisikan objek data yang terdiri dari pasangan atribut–nilai dan tipe data array (atau nilai serializable lainnya). Ini adalah format data yang sangat umum digunakan untuk komunikasi browser–server asinkron, termasuk sebagai pengganti XML dalam beberapa sistem gaya AJAX.

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Google Assistant ke Arduino

Dalam proyek ini, kita ingin mengendalikan berbagai bagian Arduino seperti pin I/O, PWM, port Serial dan sebagainya dengan mengirim string dari Google Assistant ke port Serial Arduino. Pertama-tama, kita perlu mendefinisikan beberapa frasa spesifik untuk Google Assistant untuk mengetahui apa yang kita maksud. Kemudian kita akan membuat applet di situs web IFTTT dan membuat koneksi antara Google Assistant dan database kita. Setelah itu kita membaca data dari database dengan modul ESP8266 dan mengirimkannya ke Arduino. Mari kita mulai!

Rangkaian

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Implementasi

Pertama-tama, Anda perlu sebuah perangkat untuk menjalankan Google Assistant Anda. Kunjungi assistant.google.com dan lihat semua perangkat yang mendukung asisten. Dalam proyek ini, kami menggunakan ponsel pintar Android. Buka ifttt.com dan buat akun. Setelah masuk, Klik My Applets lalu klik New Applet. Sekarang Anda dapat menambahkan layanan Anda sebagai THIS di applet Anda. Klik THIS dan cari Google Assistant. Anda memiliki 4 pilihan untuk mendefinisikan frasa Anda untuk google assist. Pilih frasa dengan bahan angka. Di halaman berikutnya Anda dapat menambahkan frasa Anda. Misalnya Anda ingin mengatakan “Set PWM of pin 9 to 255”. Ketikkan saja sebagai frasa Anda dan ganti “255” dengan simbol “#”. Anda dapat menambahkan lebih banyak frasa dengan arti yang sama seperti “PWM 9 to 255”. Sekarang tambahkan respons sehingga Google Assistant dapat memberi tahu Anda bahwa perintah Anda dipahami dan tindakan yang diperlukan telah dilakukan, misalnya “The PWM is updated”. Ketika selesai klik Create Trigger. Di bagian “THAT” dari applet Anda Anda memiliki banyak layanan untuk dipilih cari “Webhooks” dan pilih itu. Klik “Make a web request.” Tambahkan URL Server Anda untuk menerima data. Setel metode ke POST dan pilih Application/json untuk jenis konten. Sekarang Anda harus menambahkan isi konten. Seperti ini: {“Number”:”{{NumberField}}”}. Sekarang klik “Create action.”

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Server dan Database

Kami menulis kode contoh untuk Server untuk mendapatkan data dari IFTTT dan menyimpannya di database. Anda dapat mengubah model untuk membuat data disimpan sesuai minat Anda. Unduh dari Sini.

ESP8266 & Kode Arduino

Pertama kami menulis kode untuk ESP-01 untuk mendapatkan data dari database dan mengirimkannya ke Arduino melalui port Serial. Kemudian kami menulis kode lain untuk Arduino untuk mendapatkan data dari ESP-01 dan mengeksekusi perintah (misalnya mengubah PWM). Anda dapat menggunakan Arduino IDE untuk mengkompilasi kedua kode dan mengunggahnya ke papan.

Sebelum dapat menggunakan perpustakaan ArduinoJson, Anda harus memastikan perpustakaan terinstal di komputer Anda. Untuk melakukan pemeriksaan cepat, buka pengelola perpustakaan di Arduino IDE (Sketch > Include Library > Manage Libraries) dan ketik “ArduinoJson” di kotak teks, jika Anda melihat label berwarna hijau “INSTALLED” di samping nama perpustakaan, itu berarti Anda siap melanjutkan ke langkah berikutnya. Jika Anda tidak melihat label, klik kotak/divisi sekali dan Anda akan melihat tombol “Install”. Klik install dan Anda siap untuk langkah berikutnya.

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Sekarang, Unggah kode ini ke ESP-01

#include "ESP8266WiFi.h" #include "ESP8266HTTPClient.h" #include "ArduinoJson.h" // WiFi Parameters const char* ssid = "YOUR_SSID"; const char* password = "YOUR_PASSWORD"; void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("Connecting..."); } } void loop() { // Check WiFi Status if (WiFi.status() == WL_CONNECTED) { HTTPClient http; //Object of class HTTPClient http.begin("https://yourip/api/Home/GetAllApp"); int httpCode = http.GET(); //Check the returning code if (httpCode > 0) { // Get the request response payload String payload = http.getString(); // TODO: Parsing Serial.println(payload); } http.end(); //Close connection } // Delay delay(3000); } 

Dan ini adalah kode untuk Arduino untuk menerima perintah dari Google Assistant dan mengeksekusinya.

String inputString = ""; // a String to hold incoming data String buff; bool stringComplete = false; // whether the string is complete bool id; int f,buf; char x; void setup() { // initialize serial: Serial.begin(9600); // reserve 200 bytes for the inputString: inputString.reserve(200); } void loop() { // print the string when a newline arrives: if (stringComplete) { while (f < 100) { if (inputString.substring(f) == "id") { id = true; break; } f++; } if (id == true) { x = inputString.charAt(f + 4); } if (x == '4') { f = 0; while (f < 100) { if (inputString.substring(f) == "number") { f += 9; for (int i = 0; i < 3; i++) { if (inputString.charAt(f + i) == '"') i = 3; else buff += inputString.charAt(f + i); } buf = buff.toInt(); analogWrite(9, buf); break; } f++; } } // clear the string: inputString = ""; stringComplete = false; } } void serialEvent() { while (Serial.available()) { // get the new byte: char inChar = (char)Serial.read(); // add it to the inputString: inputString += inChar; // if the incoming character is a newline, set a flag so the main loop can // do something about it: if (inChar == '\n') { stringComplete = true; } } } 

Kendalikan Arduino Anda dengan Google Assistant – Tutorial Lengkap Langkah demi Langkah

Apa Selanjutnya?

Anda dapat meningkatkan proyek ini sesuai keinginan Anda. Berikut beberapa saran:


Proses manufaktur

  1. Sistem Kontrol Akses Terintegrasi QR, RFID, dan Verifikasi Suhu
  2. Membuat Remote Android Universal dengan Arduino, 1Sheeld & Kontrol IR
  3. Bangun Tabung Pintar: Kendalikan Penerima Koin dengan Arduino Nano
  4. Kontrol LED melalui Bluetooth dengan Arduino – Panduan DIY Sederhana
  5. Kendalikan Dua Motor Stepper dengan Arduino Nano dan Joystick – Tutorial Sederhana
  6. Arduino & MPU6050: Kontrol Servo Motor Presisi dengan SG90 & MG996R
  7. Peralatan Rumah Tangga Diaktifkan Suara: Kontrol Bluetooth dengan Google Assistant
  8. Modul GPS u-blox LEA-6H 02: Panduan Integrasi Arduino & Python
  9. Menguasai Pengenalan dan Sintesis Ucapan pada Arduino Due
  10. ThimbleKrox: Kontrol Mouse Berbasis Jari dengan Arduino Micro & MPU-6050