(更新) WebSocketsでリアルタイムであなたのインテルエジソンを制御してください!

4176 ワード

(注:これらの記事は以前のmedium.comブログから移行されます)
インテルエジソンは、次のiOTプロジェクトをプロトタイピングするための優れたプラットフォームです.この小さな小さなデバイスは、インテル™ SoCデュアルコアCPUと統合された無線LAN、Bluetooth LEモジュールが含まれます.このチュートリアルでは、インテルEdisonで始まる「Hello World」を実行します.その後、さらに一歩を踏み出すとWebSocket経由でWebインターフェイスでLEDを制御します.レッツゴー!

1 .インテルエジソンボードの設定


このチュートリアルでは、インテルのEdisonとArduinoのブレイクアウトキットを使用します.インテルEdisonボードを組み立てて設定するには、以下の手順に従います.
これは、すべての必要なライブラリをダウンロードするには、インターネット接続を必要とする重要なステップであるだけでなく、外部の世界との通信(iOTで私は!)!一度Wi - Fiが設定されている場合は、IPアドレスを訪問して接続を確認してください.
https://communities.intel.com/docs/DOC-23147

注:Wi - Fiの設定が完了した後、私はブラウザのIPアドレスを訪問したときの設定ページがロードされませんでした.インテルEdison上で手動でサーバを起動しなければなりませんでした.
configure_edison --server

2 .ボードI / Oピンとのインタフェース


インテルEdison Arduinoブレイクアウトボードは20のI/Oピンを持ちます.そして、6はアナログです、そして、14はデジタルです.これらは、任意のセンサ入力(すなわちポテンショメータ、フォトダイオード、温度等)または出力(例えば、デジタルピンでPWM信号を有するモータ/サーボを制御する)に使用することができる.I/Oピンとその番号を次の表に示します.

これらのI/Oピンとのインタフェースには、APIを提供するライブラリをインストールする必要があります.インテルは、「GNU/LinuxプラットフォームでのIO通信用の低レベルのスケルトンライブラリ」である.ライブラリはオープンソースであり、Githubで利用可能です.
ライブラリをインストールするだけで、これらのコマンドをインテルEdisonで実行します.
echo "src mraa-upm http://iotdk.intel.com/repos/1.1/intelgalactic" > /etc/opkg/mraa-upm.conf
opkg update
opkg install libmraa0

ライブラリがインストールされたら、Github Repoで見つけた点滅LEDの例を実行してみてください.
< div >
< OL >
  • < p >上記のスニペットをファイルに保存します(例えば、link . js ).

  • <高橋潤子>p >
    node blink.js
    
  • < OL >
    <堀田>

    https://github.com/intel-iot-devkit/mraa Express / socketをインストールします。WebSocket通信用のIO


    < tt >急行とソケットをインストールします.私たちのインテルエジソンとWebSocket通信を許可するIOライブラリ.ExpressはNodeJsのためのWebフレームワークです、それは我々の静的資産(コントロールインターフェースを備えたウェブページ)を提供して、HTTP Serverインスタンスを提供しますソケット.IO *は選択のWebSocketライブラリになります.p >
    < OL >

  • < p >以下のコマンドを実行してこれらのライブラリをインストールします(保存フラグはpackage . jsonファイルにこれらのライブラリを追加します).
    npm install express --save
    npm install socket.io --save
    
    < OL >
  • 同じディレクトリに次の2つのコードスニペットを作成して保存します.
    < OL >
  • < OL >
    <高橋><高橋潤子>
    < div class ="LagagCount - gig - Link - tag "
    "スクリプトのID "https://gist.github.com/w4ilun/41b9959e98f3eeac5aa6.js//>
    < div >
    < p >< em >インデックス.HTML


    < div class ="LagagCount - gig - Link - tag "
    "スクリプトのID "https://gist.github.com/w4ilun/ae5445bec820d086ef7b.js//>
    < div >
    注意: IPアドレスをインデックスに置き換えてください.HTML .また、3000以外のポートも使えます.< em > < em >
    < OL >

  • コードを実行し、ブラウザを訪問します.
    node blinkWithSockets.js
    
  • < OL >
    <堀田>
    < OL >
  • の周りのスライダを移動し、LEDの点滅を参照してください、より遅く!
  • < OL >
    <堀田>
    < OL >
  • < em > LANの外からデバイスを制御する方法についてはを参照してください!EM>
  • < OL >
    そして、それはそれです!現在の設定では、インテルEdisonにWebSocketを介してデータを送信することができます.ソケット.IOライブラリは双方向のコミュニケーションを可能にします.そして、それはまた、同様にリアルタイムでクライアントにI/Oピンからセンサーデータを中継することができることを意味します!将来のチュートリアルでは、これをどうやって実現できるか、サードパーティAPIにも組み込むことができます.p >
    ご質問や提案のために手を差し伸べる自由を感じる☺