工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

必要な部品と材料

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する Arduino Yun × 1
サーボ (Tower Pro MG996R) × 1
M3ナット&ボルト × 3
4mm合板 × 1

必要な工具と機械

レーザーカッター
ホットグルーガン
AndroidまたはiOSスマートフォン

アプリとオンラインサービス

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する IFTTT Makerサービス

このプロジェクトについて

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

(出典: Instructables)

REST APIを備えたWeb対応のArduinoベースIoTゲージを構築し、Yaler.netリレーサービス*を介してIFTTT.comマッシュアッププラットフォームと接続する方法を解説します。

何がエキサイティングなのか? Maker Channelにより、IFTTTがカスタムWebhookをサポートし、DIY IoTプロジェクトの統合が可能になりました。これは2011年以来待ち望まれていた機能です**。

DIY IoTの古典であるWhereDialにインスパイアされたIoTゲージは、所有者の現在地を表示します。まるでハリー・ポッターのウィーズリー家の時計のようです。

IoTゲージの設計とコードは汎用的で、天気表示などにも応用可能です。ロジックはクラウド側にあり、ゲージは単なるAPIを持つサーボに過ぎません。

乾杯、@tamberg

ダウンロード (Uno用)

* 筆者はYalerの創業者です。

** Zapierという別のマッシュアッププラットフォームは、以前からカスタムWebhookをサポートしていました。

ステップ1: IoTゲージのレーザーカットと組み立て

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する
Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する
Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する
Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

部品の制作

IoTゲージの組み立て

ステップ2: IoTゲージWebサービスのArduinoコードをアップロード

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

シンプルなWebサービス

IoTゲージの制御はシンプルです。着信リクエストを待ち受けるWebサービス (REST API) がサーボ位置を設定します。IoTゲージは単なる「ダムな」サーボであり、ロジックをクラウド側に置くことで、後から「脳」を入れ替えて天気表示などにも対応できます。

Arduinoへのリモートアクセス

IFTTTクラウドサービスがIoTゲージにアクセスできるよう、ArduinoのREST APIをWebからアクセス可能かつアドレス可能にする必要があります。専門家ならファイアウォールやルーターに例外を追加できますが、手間がかかるためリレーサービス*を利用します。

Arduino Unoのセットアップ (Yunの場合は後述)

Arduino Yunのセットアップ (Unoの場合は上記参照)

なぜYunのコードはUnoと違うのか?

Yunには組み込みのREST API「メールボックス」があります。これをWebからアクセス可能にするため、YalerTunnel Linuxデーモンを使用します (Unoとは異なりSSL暗号化もサポート)。既存の仕組みを活用することでコードを簡素化できます。

両方のプログラムを比較検討してください。YunのメールボックスAPIは完璧ではありません (GETで値を変更できるなど厳密なRESTfulではない) が、YunのLinux側で動作するスクリプトベースのため、Arduino側の貴重なメモリを節約できます。

* リレーサービスを使いたくない場合は削除し、(Unoの場合) ローカルサーバーのコメントを外してください。

ステップ3: curlでArduino Webサービスをテスト

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

curlコマンドラインツールのインストール

Arduino Yun APIの有効化 (Unoの場合はスキップ)

curlでIoTゲージをテスト

なぜcurlでAPIをテストすべきか?

curlは標準的なHTTPクライアントです。ブラウザはGETリクエストのテストに適し、PUT/POSTをテストするオンラインツールもあります。しかしブラウザはリダイレクト追従など「魔法」をかけることがあります。IFTTTから送信されるような基本的なクライアントやサードパーティWebhook呼び出しがWebサービスAPIにアクセスできるか確実にテストするには、curlが最適です。

* Unoの場合、POST /mailbox/pos/3もPUT /servo?pos=3も動作します。リクエスト解析コードが寛容なためです。

ステップ4: ArduinoをIFTTT Makerチャネルに接続

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する
Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する
Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

新しいIFTTTレシピの作成 (既存レシピ追加はスキップ)

IFTTTではトリガーとアクションを繋ぐレシピを作成できます。

既存IFTTTレシピの追加

IFTTTではユーザーがレシピを公開できます。IoTゲージ制御用のレシピが2つあります:

* IFTTTはMakerチャネルのレシピを検索結果に表示しないようです

ステップ5: IoTゲージ用IFTTT Doボタンの作成

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

IFTTT Doアプリ

IFTTTはiOS/Android向けDoアプリを提供しています。手動でアクションをトリガーできるため、他のIFTTTレシピのテストに最適です。

通常のIFTTTレシピと異なり、Doアプリのレシピは (現時点では?) 共有や公開ができません。そのためゼロから作成する必要があります。

新しいIFTTT Doボタンの作成

以上です。お読みいただきありがとうございました。ご質問やご提案があればお知らせください。

コード

Bitbucket

カスタムパーツとエンクロージャ

IoT_Gauge.zip

回路図

Arduino、Yaler、IFTTTでWeb対応IoTゲージを構築する

製造プロセス

  1. Arduinoで作るレトロNumitron管時計:シンプル、信頼性高く、省エネ
  2. Arduino NanoとMPU-6050で作るリアルタイムジャイロスコープゲーム
  3. IoTとAIで水質監視し水生生物を守るシステム
  4. MotionSense: ArduinoとESP8266で作るスマート侵入検知システム
  5. Arduino Nanoとロータリーエンコーダーで作る高精度測定ホイール
  6. Arduinoで作る斥力式磁気浮上装置: シンプル回路とDIYガイド
  7. 高性能 Arduino 気象観測気球データロガーの製作ガイド
  8. ArduFarmBot Part 2:リモートIoT制御ステーションの構築
  9. Arduino Nanoで作る8×8 LEDマトリックスのフリップクロック - 自作リアルタイムクロック
  10. 高度なマイクロコントローラー実験:ESP32、Arduino、PIC、センサーモジュール
  11. Arduino Nanoで作る携帯型ガイガーカウンター