私は床をアンドレイに渡します。
免責事項 :
同僚、私は本当のふりをしていない-私は自分の経験を共有しています。 おそらく彼は誰かに少しの労力と時間を節約するでしょう。 そして、はい、執筆の時点で、Linuxコマンドラインは私の人生で初めて見ました。
以下では、Raspberry Pi 2 Model Bについて説明することに同意しましょう。すべてのスクリーンショットが撮影されたのは、彼との作業中です。
Ubuntu Mateディストリビューションは、たとえばここからダウンロードできます 。
imgファイルがある-ブート可能なSDCardを作成する-このために、Windows 10にインストールしたWin32 Disk Imagerを使用しました。
結果のブートカードをRaspberry Piに挿入し、キーボード、マウス、ディスプレイを接続します。 ダウンロードに成功すると、以下のウィンドウが表示されます。
インストールの直後に、いくつかのコマンドを実行します。
sudo update-rc.d ssh enable
sudo service ssh restart
sudo ifconfig
デバイスのネットワーク設定を表示します
重要な更新およびアップグレードコマンド-システムを更新します。
sudo apt-get update
sudo apt-get upgrade
次に、キーボードにロシア語を追加します。
これは、スイッチキーの組み合わせを変更する方法です(このアイテムを見つけるまで数分かかりました)。
フォーラムの1つで、
sudo raspi-config
コマンドを使用して、I2Cを有効にする必要があることを読みました。
ちなみに、SSH設定は変更できます。
手元にセンサーはありませんが、少なくとも何かをしようとしています... この記事を読んでいます 。
Azureサブスクリプションが必要であるという事実から始めましょう! 試用版はこちらから入手できます 。
次のステップ。
ステップ1
ステップ2
ステップ3
ステップ4
それでは、デバイスに戻りましょう!
node -v
コマンドは、RPIでエラーを返します。
Node.jsをインストールします。 これを行うには、コマンド
sudo apt install nodejs-legacy
。
これで、
node -v
コマンドは現在のバージョンを返します。
念のため。
ここで、NPMが必要です
sudo apt-get install npm
コマンドで
sudo apt-get install npm
。 チームは高速ではありませんが、うまくいきました!
次に、
sudo npm install -g npm@2.x
ます。
次に、最新バージョンのIoT Hubトランスポートパッケージをインストールする必要があります:
sudo npm install -g azure-iot-device@latest
。
そして別のコマンド:
sudo npm install -g azure-iot-device-http@latest
。
IoT Explorerをインストールする必要があります:
sudo npm install -g iothub-explorer@latest
。
次のステップは、このコマンド
iothub-explorer login " "
を実行することです。
次に、デバイスを接続します:
iothub-explorer create muzeyrpi-1 --connection-string
成功しました!
デバイスはAzureポータルに表示されます。
ページからJSスクリプトをデバイスにコピーします 。
var connectionString = '<your device connection string>'; var clientFromConnectionString = require('/usr/lib/node_modules/azure-iot-device-http').clientFromConnectionString; var client = clientFromConnectionString(connectionString); var Message = require('/usr/lib/node_modules/azure-iot-device').Message; var msg = new Message('some data from my device'); var connectCallback = function (err) { if (err) { console.error('Could not connect: ' + err); } else { console.log('Client connected'); var message = new Message('some data from my device'); client.sendEvent(message, function (err) { if (err) console.log(err.toString()); }); client.on('message', function (msg) { console.log(msg); client.complete(msg, function () { console.log('completed'); }); }); } }; client.open(connectCallback);
スクリプト自体は開始されません-次のことを行う必要があります。
- ファイル内のパスで、
/usr/lib
を/usr/local/lib
ます。 - 接続文字列を追加します。 さらに、接続文字列はデバイスに対するものです。
スクリプトは、スクリプトが置かれているフォルダーから
node MyScript.js
して起動されます。
もう一度試してみます-今回はデバイスエクスプローラーで(詳細については記事のダウンロードリンクを参照してください 。
Enterキーを押します... :)
おめでとうございます-RPIからの最初の投稿がAzure IoT Hubに届きました
このマニュアルを改良し、さらに便利なものにしたいと心から願っています! たとえば、 このパスをたどります (BME280センサーの有無にかかわらず)。
読んだ人のために
この演習を自分で試してみるために、Andreyと私はRaspberry Pi 3を2枚演奏することにしました。MicrosoftDeveloperコミュニティのメッセージで次の質問に正しく答える最初の2人が受け取ります。ラズベリーパイ?