FiFiWiki2

FiFiWikiの第2版

ユーザ用ツール

サイト用ツール


raspberry_pi:aws_iot

**以前のリビジョンの文書です**

aws チュートリアル

Raspberry Pi の接続

    • AWS Iot コンソールにサインインする
    • done モノを作る
      • done REST APIエンドポイント ag7srsxum1sn0.iot.us-west-2.amazonaws.com
        1. done 証明書の発行
        2. done ポリシーの作成
        3. done 証明書にポリシーをアタッチ
        4. done 証明書にモノをアタッチ
    • 証明書の名前を変更しておく?
    • ディレクトリに証明書番号
      • private.pem.key, public.pem.key, certificate.pem.crt, root-CA.crt
        1. done これで、Raspberry Pi は AWS IoT Device SDK for C を使用して AWS IoT に接続されました。
        2. ルールを作成する
    • iotclient.jsが動かない。nodojsが分からないのでエラーの原因が分からん。古そう。 - here pythonでやってみる。 - AWS IOT SDK - できた!! requre('sys')を消すことでうごいた! - 失敗 DynamoDBの使い方が分からない。基本からチュートリアルをしないとだめ。一旦中断 ## 成功方法 モノを作成 名前:raspi_41_1 ルールを作成 名前:raspiRule_41_1 メッセージのリソース 属性:*, トピックフィルター:topic/sns, 条件:空欄 [アクションの追加]クリック 「SNSプッシュ通知としてメッセージを送信する」を選択 SNSターゲット:iot-sns_test (作成する) 次のページ メッセージ形式:初期値のまま(JSONにした方が良かった?) IAMロール名:[新しいロールの作成]クリック [新しいロールの作成]クリック IAMロール名:aws_iot_sns_test [新しいロールの作成]クリック [ルールを作成する]クリック SNSトピックの作成 SNSターゲットで[新しいリソースを作成する]クリック [Create new topic]クリック Topic name:iot-sns_test [Create Topic]クリック リストから iot-sns_test を選択 [Create subscription]クリック Topic ARN:初期値のまま Protocol:Email Endpoint:(送信先のメールアドレス) [Create subscription]クリック 受信したメールの Confirm Subscription をクリック ポリシーの作成 名前:raspiPolicy アクション:iot:* リソースARN:* 許可:ON [作成]クリック 証明書の作成 1-Click証明書作成の[証明書の作成]クリック 生成された「このモノの証明書」「プライベートキー」をダウンロード ルートCA証明書もダウンロード (名前を rootCA.pem にした) [ポリシーのアタッチ]クリック raspiPolicyを選択して[完了]クリック 左のメニュー セキュリティ/証明書 から証明書を選択 アクション - モノをアタッチする で raspi_41_1 をアタッチ アクション - 有効化 Raspberry Pi 3 からデータ送信 Mosquittoクライアントを使用 sudo apt-get install -y mosquitto-clients 5分毎に気温、気圧、湿度を取得して送信    import time from subprocess import check_call from sense_hat import SenseHat sense = SenseHat() while True: t = round(sense.get_temperature(), 1) p = round(sense.get_pressure(), 1) h = round(sense.get_humidity(), 1) msg = "{'message':" + "'Temperature:%s, Pressure:%s, Humidity:%s'" % (t,p,h) + "}" check_call(["mosquitto_pub", "--cafile", "rootCA.pem", "--cert", "4f2df38695-certificate.pem.crt", "--key", "4f2df38695-private.pem.key", "-h", "ajm28n1yz8oj0.iot.ap-northeast-1.amazonaws.com", "-p", "8883", "-q", "1", "-d", "-t", "topic/sns", "-m", msg]) sense.show_message(msg, scroll_speed=0.05) sense.clear() time.sleep(300)   -> 登録したメールアドレスにメールが送られてきた!   {'message':'Temperature:35.3, Pressure:1016.9, Humidity:46.6'}
raspberry_pi/aws_iot.1508994069.txt.gz · 最終更新: 2017/10/26 05:01 by fifi