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

Alexa、このランプをオンにする:AmazonEcho用のスマート3Dセンサー

コンポーネントと消耗品

>
Amazon Alexa Amazon Echo
× 1
Walabot Creator
× 1
Arduino Leonardo
× 1
リレー(汎用)
× 2
LattePanda 2G / 32GB(アクティブ化)
× 1
LattePanda7インチ1024x 600IPSディスプレイ
× 1
ランプ
× 2

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

はじめに

Alexaまたはスマートスピーカーを所有していて、スマートホームと統合されている場合は、制御するデバイスの名前を覚えておく必要があるというこの問題が発生しています。私はスマートホームデバイスをたくさん持っていますが、それぞれの名前を覚えるのは難しい場合があります。

時々私は言うでしょう:

3つのことが起こります:

  • Alexaを混乱させ、別のスマートデバイスをオンにすることになりました。
  • Alexaでのののしり(私が話していることはご存知でしょう、認めてください)
  • または、あきらめて、イライラして、彼女にこう言います。「Alexaを忘れて、自分でやります」...しぶしぶスイッチに向かって歩きます。

私の子供たちは通常、「アレクサ、すべてのライトをオンにして」というコマンドを楽しんでいます。そしてもちろん、家全体がクリスマスツリーのようにライトアップされます。誰かが深夜にそれをするのは楽しいことではありません!

方法

アレクサ、このランプをオンにしてください。

<図>

Alexaにデバイスの近くにいる場所を検出してもらいます。そして、それは私が話していることを知っています...これは素晴らしいアイデアではないでしょうか?

考えられる解決策の1つは、カメラを私の部屋に取り付けて、動きなどを監視することです。しかし、それはあまりにも気味が悪いでしょう。家の中にカメラを置いて画像認識をしたくない。

そこでWalabotが登場します:

ワラボット

ワラボットとは何ですか?

Walabotは、DIYエレクトロニクスプロジェクトに最適なプログラム可能な3Dセンサーです。 Walabotは新しい種類の3D画像センサーです。それは無線周波数(RFID)を使用し、あなたの周りの世界に隠されているあらゆる種類のものを明らかにします。ハンドヘルドでプログラム可能で、SDK(ソフトウェア開発キット)にさまざまなイメージング機能が含まれており、APIを使用して独自のカスタムアプリケーションを構築できます。

RFIDを使用して動きを追跡できます。

<図>

LattePanda

LattePandaは、Windows10を実行できるクアッドコアIntelAtomx8300「Cherrytrail」プロセッサを搭載したx86 / x64 SBCです。これには、Bluetooth4.0および802.11n WiFi、1 x USB 3.0、2 xUSBが統合された2GBまたは4GBのRAMが含まれます。 2.0、HDMI出力、統合されたATMega32u4コプロセッサー(Arduino Leonardoにあるような)とGPIOが付属し、すべて1つの手のひらサイズのボードに搭載されています!

<図>

この設定により、LattePandaは多くのシナリオに理想的です。このチュートリアルでは、LattePandaの統合マイクロコントローラーの利点に焦点を当てます。このマイクロコントローラーをIntelAtomプロセッサーと組み合わせて使用​​すると、walabotとarduinoを一緒に接続できます。

<図>

ノード-赤

Node-Redは、TCPメッセージのサブスクライブ、Alexaリクエストのリッスン、データベースの読み取りと書き込み、MQTTブローカーへの公開、HTTPリクエストへの応答など、さまざまなIoTデバイスを処理する独自のロジックをすばやく簡単に構築できるブラウザベースのツールです。 。また、JavaScriptで記述された特定の関数を定義して複雑なロジック操作を提供すると同時に、視覚的で使いやすいドラッグアンドドロップユーザーインターフェイスを使用して、さまざまなコンポーネントやロジックをリンクすることもできます。

Node-Redは、Node.js上に構築された非常に軽量な実行時間であり、イベント駆動型の非ブロッキング操作モデルを最大限に活用しています。

WalabotデータをNode-Redにプラグインさせることができれば、特にホームオートメーションでできる多くのことが可能になります。 AlexaとArduinoを接続するために使用したパッケージはいくつかあります:

  • node-red-contrib-alexa-local:NodeREDフローにAlexa機能を追加するための非常にシンプルなノード。
<図>
  • node-red-node-arduino:Arduinoと通信するNode-REDノード

ここに、firmataのセットアップに使用できるいくつかのドキュメントがあります:https://nodered.org/docs/hardware/arduino.html

仕組み

<図>

ハードウェア

  • ラテパンダ
  • LattePanda用の7インチ1024x600IPSディスプレイ
  • USBワイヤレスキーボードとマウス
  • ワラボット
  • USB電源ハブ
  • リレー
  • ランプ

インストール

ステップ1.Walabot SDK

SDKをダウンロードしてインストールします:https://walabot.com/getting-started

ステップ2.WalabotでArduinoをセットアップする

http://docs.lattepanda.com/content/hardware/accessPinoutsFromVS/

1.オペレーティングシステムで開発者モードを有効にします

<図>

<図>

<図>

ステップ3.Arduinoをセットアップする

1。 Arduinoを開きます。そして、「StandardFirmata」を選択します

<図>

2。 「ArduinoLeonardo」を選択

<図>

3。 COMポートを選択します

<図>

4。スケッチをアップロードする

<図>

5。アップロード完了!

<図>

リレーをLattePandaに接続します。

<図>

ステップ4 。 NodeJSとNode-Redをインストールしてダウンロードする

NodeJSとnode-redに慣れていない場合は、次のリンクを参照してください。

  • https://nodejs.org/en/
  • http://docs.lattepanda.com/content/projects/NodeRED/
  • https://nodered.org/docs/getting-started/installation

ステップ5。 Python3をダウンロードしてインストールします

<図>

ステップ6 。プロジェクトのリポジトリは次のとおりです:https://github.com/rondagdag/smart3DSensorForAlexa

zipファイルをダウンロードして解凍します:

 > npm install> npm start  

ステップ7 。同じWi-Fiを使用していて、Alexaアプリでスマートホームスキルが有効になっていることを確認してください。説明:「アレクサ、デバイスを見つけて」。 Alexaはランプを見つけるでしょう。 Node-Redフローを確認して変更する場合:http:// localhost:8080 / red /

これで、LattePandaのArduinoピンの別のピンに接続できます。または、MQTTまたは他のNode-Redモジュールと接続します。

全体の流れは次のようになります...

3つのステップ:

  • ワラボットサービスの処理 :walabotセンサーからデータを読み取り、tcpポート1890にデータをストリーミングするPythonプログラム
  • Walabotオブジェクトデータを取得して保存する :ポート1890を介してwalabotサービスからデータを読み取り、最後に検出された既知のオブジェクトの場所を保存します
  • Alexaコマンドを処理する :コマンドがAlexaから受信されたときに実行され、最後の既知の場所に基づいて、リレーに接続されているスイッチを切り替えるArduinoピンを決定します。
<図>
  • ワラボットサービスの処理
<図>

<図>

これがWalabotPythonコードです。 Walabotからデータを読み取り、TCP経由でJSON文字列をストリーミングします。

  from __future__ import print_functionfrom sys import platformfrom os import systemfrom imp import load_sourceWalabotAPI =load_source( 'WalabotAPI'、 'C​​:\\ Program Files \\ Walabot \\ WalabotSDK \\ python \\ WalabotAPI.py')import socket、sysif __name__ =='__ main __':WalabotAPI.Init()#WalabotSDKをPythonラッパーにロードしますWalabotAPI.SetSettingsFolder()#エッセンシャルデータベースファイルへのパスを設定しますWalabotAPI.ConnectAny()#WalabotWalabotAPIとの通信を確立します。 SetProfile(WalabotAPI.PROF_SENSOR)#スキャンプロファイルを可能性から除外しますWalabotAPI.SetThreshold(35)WalabotAPI.SetArenaR(50,400,4)WalabotAPI.SetArenaPhi(-45,45,2)WalabotAPI.SetArenaTheta(-20,20,10) WalabotAPI.SetDynamicImageFilter(WalabotAPI.FILTER_TYPE_MTI)#WalabotAPI.Start()を使用するフィルターを指定#スキャンシステムの準備のためにWalabotを起動します( 'cls' if platform =='win32' else'clear ')#端末をクリアしますnumOfTargetsToDisplay =1 if len(sys.argv )==2:TCP_IP ='127.0.0.1' TCP_PORT =int(sys.argv [1])s =socket.socket(socket.AF_INET、socket.SOCK_STREAM)s.bind((TCP_IP、TCP_PORT))s.listen (1)conn、addr =s.accept()while True:WalabotAPI.Trigger()#スキャンを開始して信号を記録しますtargets =WalabotAPI.GetSensorTargets()#識別されたターゲットのリストを提供しますfinds ='{"targets":[ 'index =0 for i、t in enumerate(targets):if i  
  • Walabotオブジェクトデータを取得して保存する

これはポート1890からデータを受け取り、jsonデータを解析してそれに応じてグローバル変数を設定します。

<図>

json配列に変換するコードは次のとおりです

  raw =msg.payload.toString( 'UTF-8')j =JSON.parse(raw); var msg1 ={ペイロード:生}; var msg2 ={ペイロード:j}; if(raw.length> 20){X =msg2.payload.targets [0] .x; Y =msg2.payload.targets [0] .y; Z =msg2.payload.targets [0] .z; global.set( "X"、X); global.set( "Y"、Y); global.set( "Z"、Z); var msg3 ={ペイロード:X}; var msg4 ={ペイロード:Y}; var msg5 ={ペイロード:Z}; } return [msg1、msg2、msg3、msg4、msg5];  
  • Alexaコマンドを処理する

Alexaコマンドを処理するために、を使用しています node-red-contrib-alexa-local。次に、このロジックで、人の最後の既知の位置に基づいてコマンドをルーティングするものを検出します。

<図>

このプロジェクトでAmazonEcho、Walabot、LattePanda、Node-Red、Pythonについてもっと知りたいと思った場合、または素晴らしい1日を過ごしている場合は、[プロジェクトを尊重する]ボタンをクリックしてフォローしてください。これがプロジェクトの構築に役立った場合は、メッセージを残してフィードバックをお寄せください。このプロジェクトがどのように役立ったか聞きたいです。

このプロジェクトで使用されている実際のカスタムAlexaスキルはないことに注意してください。このスキルは、組み込みのAmazon Echoスマートホーム機能を使用しており、すぐにPhillipsHue電球を制御します。 Node-Redのnode-red-contrib-alexa-localノードは、Alexaで制御したいカスタムの「バルブ」をスプーフィングするだけです!

コード

Alexa用のスマート3Dセンサー
https://github.com/rondagdag/smart3DSensorForAlexa

製造プロセス

  1. SmartThingsのモーションセンサーとしてのコンピュータービジョン
  2. ラズベリーパイ用DIY赤外線モーションセンサーシステム
  3. セルラーIoT:スマートゴミ箱
  4. Chromecastを制御するAmazonAlexa
  5. スマート信号機
  6. Raspberry Piロボットの構築:初心者向けの最高のチュートリアル
  7. スマートペン:ECE5725の最終プロジェクト
  8. これはスマートテキスタイルの「キラーアプリ」ですか?
  9. スマートテキスタイル用の超高感度で弾力性のあるセンサー
  10. スマートコンタクトレンズ用超薄型センサー
  11. 航空宇宙用センサーフィルム