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

Pengukur IoT dengan Arduino, Yaler &IFTTT

Komponen dan persediaan

Arduino Yun
× 1
Servo (Tower Pro MG996R)
× 1
mur &baut M3
× 3
kayu lapis 4 mm
× 1

Alat dan mesin yang diperlukan

Laser-cutter
Pistol lem panas
Ponsel Android atau iOS

Aplikasi dan layanan online

Layanan IFTTT Maker

Tentang proyek ini

(Dari http://www.instructables.com/id/IoT-Gauge-with-Arduino-Yaler-IFTTT/)

Cara membuat Pengukur IoT berbasis Arduino yang mendukung Web dengan REST API, dan menghubungkannya ke platform gabungan IFTTT.com, melalui layanan relai Yaler.net*.

Apa yang menarik tentang ini? Dengan Saluran Pembuat, IFTTT mendukung Webhook khusus, untuk mengintegrasikan proyek IoT DIY. Sudah menunggu itu sejak 2011**.

Terinspirasi oleh WhereDial, Internet of Things klasik DIY, Pengukur IoT menunjukkan lokasi pemiliknya saat ini. Sedikit seperti Weasley Clock di Harry Potter.

Desain dan kode Pengukur IoT bersifat umum dan dapat digunakan juga untuk menampilkan mis. kondisi cuaca. Logikanya ada di Cloud, pengukurnya hanyalah servo dengan API.

Semangat, @tamberg

Unduhan (untuk Uno)

  • Perpustakaan Yaler Arduino, YalerEthernetServer.zip
  • Kode Arduino Uno, IoTGaugeWebService.ino

*) Saya adalah pendiri Yaler.

**) Zapier, platform gabungan lainnya, selalu mendukung Webhook khusus.

Langkah 1:Pemotongan laser dan perakitan Pengukur IoT

Memproduksi suku cadang

  • Unduh file desain Pengukur IoT
  • Desain potong laser dari kayu lapis 4 mm
  • Mengukir nama lokasi (atau apa pun yang Anda butuhkan), atau menambahkannya dengan pena

Merakit Pengukur IoT

  • Tambahkan pelindung Ethernet ke Arduino (untuk Uno)
  • Pasang Arduino ke pelat dasar (perhatikan orientasinya)
  • Tambahkan pelat muka besar ke servo, lalu pelat muka kecil
  • Rekatkan pelat dasar ke kedua pelat muka, pastikan semuanya sejajar
  • Rekatkan indikator ke pelat muka, pastikan arahnya benar
  • Gunakan kabel jumper untuk memasang servo ke pin 9, 5V, dan GND Arduino (atau pelindung)
  • Tambahkan jarum jam (untuk dikalibrasi nanti)

Langkah 2:Mengunggah kode Arduino layanan Web IoT Gauge

Layanan Web sederhana

Mengontrol Pengukur IoT cukup sederhana. Layanan Web (atau REST API) mendengarkan permintaan yang masuk dan mengatur posisi servo yang sesuai. Pengukur IoT hanyalah servo "bodoh". Menjaga logika di Cloud memungkinkan Anda menukar "otak" nanti, mis. untuk menampilkan kondisi cuaca alih-alih lokasi.

Akses jarak jauh ke Arduino

Untuk memberikan akses layanan IFTTT Cloud ke IoT Gauge, Arduino REST API kami harus dapat diakses dan dialamatkan dari Web. Para ahli dapat menambahkan pengecualian ke firewall atau router mereka. Namun karena hal ini cukup merepotkan, kami akan menggunakan layanan relai*.

Memasang Arduino Uno (untuk Yun, lihat di bawah)

  • Instal pustaka YalerEthernetServer.zip seperti yang ditunjukkan di https://yaler.net/arduino
  • Unduh kode Arduino Uno IoTGaugeWebService.ino
  • Pastikan Anda menggunakan alamat MAC yang unik
  • Ganti RELAY_DOMAIN dengan domain relai Anda.(Untuk mendapatkan domain relai, daftar akun uji coba gratis di Yaler.net)
  • Unggah kode ke Arduino Uno Anda

Memasang Arduino Yun (untuk Uno, lihat di atas)

  • Instal YalerTunnel dan aktifkan akses Web seperti yang ditunjukkan di https://yaler.net/arduino-yun
  • Unduh kode Arduino Yun IoTGaugeMailboxApi.ino
  • Unggah kode ke Arduino Yun Anda

Mengapa kode Yun berbeda dari kode Uno?

Yun menyediakan REST API bawaan yang disebut kotak surat. Untuk membuat API ini dapat diakses dari Web, kami menggunakan daemon YalerTunnel Linux (yang juga mendukung enkripsi SSL, tidak seperti Uno). Dengan membangun apa yang sudah ada, Anda dapat menyederhanakan kode Anda.

Lihatlah kedua program dan putuskan sendiri. API kotak surat Yun tidak sempurna (dan tidak sepenuhnya RESTful, karena memungkinkan GET untuk mengubah nilai), tetapi didasarkan pada skrip yang berjalan di sisi Linux Yun, yang menggunakan lebih sedikit memori berharga di sisi Arduino.

*) Jika Anda tidak senang menggunakan layanan relai, hapus saja dan (untuk Uno) batalkan komentar pada server lokal.

Langkah 3:Menguji layanan Web Arduino dengan Curl

Memasang alat baris perintah Curl di komputer Anda

  • Unduh dan instal Curl dari http://curl.haxx.se/
  • Buka shell di komputer Anda dan uji Curl dengan$ curl -v http://google.com/

Mengaktifkan API Arduino Yun (lewati untuk Uno)

  • Power the Yun, tunggu sebentar, lalu kunjungi http://arduino.local/
  • Masuk dan klik Konfigurasikan
  • Gulir ke bawah dan setel akses REST API ke Buka
  • Klik Konfigurasikan &Mulai Ulang

Menguji Pengukur IoT dengan Curl

  • Pastikan Arduino menyala dan terhubung ke Internet
  • Atur posisi servo ke 3 (atau posisi lain dari 1 hingga 5) dengan*$ curl -vX POST http://RELAY_DOMAIN.try.yaler.io/mailbox/pos/3 (Ganti RELAY_DOMAIN dengan domain relai yang Anda gunakan sebelumnya)
  • Pastikan servo menggerakkan tangan ke posisi yang diinginkan (sesuaikan tangan jika perlu)
  • Pastikan Anda mendapatkan sesuatu seperti 200 Oke sebagai tanggapan atas panggilan curl
  • Jika Anda mendapatkan 504 Arduino tidak online atau ada kesalahan ketik

Mengapa Anda harus menguji API Anda dengan Curl?

Curl adalah klien HTTP standar. Peramban Anda bagus untuk menguji permintaan GET, dan ada alat online untuk juga menguji permintaan PUT dan POST. Namun terkadang browser menambahkan keajaiban, seperti mengikuti pengalihan. Jadi, jika Anda ingin memastikan klien dasar atau panggilan Webhook pihak ketiga seperti yang dikirim dari IFTTT dapat mengakses API layanan Web Anda, Curl sangat bagus.

*) Untuk Uno, POST /mailbox/pos/3 berfungsi sebaik PUT /servo?pos=3 karena kode parsing permintaan cukup memaafkan.

Langkah 4:Menghubungkan Arduino ke saluran IFTTT Maker

Membuat resep IFTTT baru (atau lewati untuk menambahkan resep yang sudah ada)

IFTT memungkinkan Anda membuat resep yang menghubungkan pemicu ke tindakan.

  • Kunjungi https://ifttt.com/myrecipes/personal/new (daftar jika belum)
  • Untuk memilih saluran pemicu, telusuri mis. "Perangkat Android" atau "Lokasi iOS" dan pilih ikon saluran
  • Kemudian pilih pemicu, mis. Menghubungkan ke jaringan WiFi tertentu (untuk Android)
  • Masukkan nama jaringan atau lokasi
  • Saat memilih saluran aksi, telusuri Pembuat saluran dan pilih
  • Kemudian pilih tindakan Buat permintaan web
  • Masukkan URL http://REAY_DOMAIN.try.yaler.io/mailbox/pos/3  (Ganti RELAY_DOMAIN dengan domain relai yang Anda gunakan sebelumnya)
  • Untuk Metode pilih P OST
  • Untuk Content Type pilih application/x-www-form-urlencoded
  • Tubuh bisa dikosongkan

Menambahkan resep IFTTT yang sudah ada

IFTTT memungkinkan pengguna untuk mempublikasikan resep. Berikut adalah dua resep untuk mengontrol Pengukur IoT Anda:

  • Buka resep "Posisi Pengukur IoT dari lokasi WiFi Android" di sini
  • Atau resep "Posisi Pengukur IoT dari lokasi iOS" di sini
  • Atau telusuri* resep "Pengukur IoT", https://ifttt.com/recipes/search?q=IoT+Gauge
  • Untuk menambahkan contoh resep ke resep Anda, klik tombol Tambah tombol
  • Masukkan nama atau lokasi jaringan WiFi (atau apa pun yang diminta resepnya)
  • Ganti RELAY_DOMAIN di URL dengan domain relai yang Anda gunakan sebelumnya
  • Sesuaikan parameter pos di URL dari 1 hingga 5 agar sesuai dengan lokasi Anda
  • Tambahkan contoh lain dari resep untuk setiap lokasi

*) Tampaknya IFTTT belum menambahkan resep saluran Maker ke hasil penelusuran

Langkah 5:Membuat Tombol Lakukan IFTTT untuk Pengukur IoT

Aplikasi IFTTT Do

IFTTT juga menyediakan Lakukan aplikasi untuk iOS dan Android. Aplikasi ini memungkinkan Anda untuk memicu tindakan secara manual. Ini bagus untuk menguji resep IFTTT Anda yang lain.

Tidak seperti resep IFTTT biasa, resep aplikasi Do tidak dapat (belum?) dibagikan atau dipublikasikan. Jadi, Anda harus membuatnya dari awal.

Membuat tombol Lakukan IFTTT baru

  • Dapatkan aplikasi Android atau iPhone Tombol Do di https://ifttt.com/products/do/button
  • Bekerja melalui layar intro (?) yang agak mengganggu tapi wajib
  • Gunakan ikon kecil di kanan bawah untuk menampilkan daftar resep
  • Ketuk tanda, lalu ketuk Saluran dan cari Pembuat saluran
  • Kemudian pilih tindakan Buat permintaan web
  • Masukkan URL http://REAY_DOMAIN.try.yaler.io/mailbox/pos/3  (Ganti RELAY_DOMAIN dengan domain relai yang Anda gunakan sebelumnya)
  • Untuk Metode pilih POST
  • Untuk Jenis Konten pilih application/x-www-form-urlencoded
  • Tubuh boleh dikosongkan
  • Ketuk Tambahkan untuk membuat tombol
  • Setelah dibuat, resep dapat diedit secara online di https://ifttt.com/myrecipes/do

Itu saja - terima kasih telah membaca, dan beri tahu saya jika Anda memiliki pertanyaan atau saran.

Kode

Bitbucket

Suku cadang dan penutup khusus

IoT_Gauge.zip

Skema


Proses manufaktur

  1. Jam IV9 Numitron DIY paling sederhana dengan Arduino
  2. Game Arduino Gyroscope dengan MPU-6050
  3. Menyelamatkan Kehidupan Akuatik &Memerangi Polusi Air dengan IoT &AI
  4. MotionSense
  5. Roda Pengukur Sederhana DIY dengan Rotary Encoder
  6. Arduino Repulsive Electromagnetic Levitation
  7. Datalogger Balon Cuaca Bertenaga Arduino
  8. ArduFarmBot - Bagian 2:Stasiun Jarak Jauh Implementasi IoT
  9. Matriks LED Tunggal Arduino Flip Clock
  10. Lab Mikrokontroler