Führen Sie das AWS IoT Device SDK für Python auf Raspberry Pi aus

AWS IoT Device SDK for Python Dieses Mal werde ich das an das AWS IoT Device SDK für Python angehängte Beispiel mit Raspberry Pi ausführen und die Daten in S3 speichern.

Was du vorbereitet hast

RaspberryPi 3 Jeder Himbeer-Pi reicht aus

RASPBIAN JESSIE Das Betriebssystem wurde auf den neuesten Stand gebracht

pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.4.13-v7+ #894 SMP Mon Jun 13 13:13:27 BST 2016 armv7l GNU/Linux

AWS-Konto

Vorbereitung auf AWS IoT

In der AWS Management Console festlegen.

Create a thing Mach zuerst etwas. q-ss01s.png

Hier heißt der Name raspi1.

Create a rule Erstellen Sie als Nächstes eine Regel für Dinge.

Wenn Sie auf das zuvor erstellte Element "raspi1" klicken, werden auf der rechten Seite Details angezeigt. Klicken Sie dann unten rechts auf die Schaltfläche Regel erstellen. q-ss02s.png

Dann dieser Bildschirm. q-ss03s.png

Hier lautet der Name der Regel raspi1_rule.

Wo es wie SQL aussieht, können Sie die von Ding gesendeten Daten filtern. Im Beispielcode des SDK wird das Thema "sdk / test / Python" gesendet. Geben Sie hier Folgendes ein.

name value
Attribute *
Topic filter sdk/test/Python

Scrollen Sie auf dem Bildschirm und legen Sie die nächste fest. Wählen Sie eine Aktion aus, in der Sie entscheiden, was mit den empfangenen Daten geschehen soll. q-ss04s.png

Hier speichern wir die Daten in S3.

Geben Sie den S3-Bucket, den Schlüssel und den Rollennamen ein. Sie können es auch im laufenden Betrieb mit Neue Ressource erstellen erstellen und konfigurieren. Daher habe ich einen temporären Bucket zum Testen erstellt. Bitte seien Sie vorsichtig mit Berechtigungen, wenn Sie vorhandene verwenden.

Klicken Sie auf die Schaltfläche Aktion hinzufügen → Erstellen, um die Regel zu vervollständigen.

Connect a device Legen Sie abschließend die Anmeldeinformationen des Geräts fest, das tatsächlich eine Verbindung zum Objekt herstellt.

Klicken Sie rechts neben der Schaltfläche, mit der die Regel erstellt wurde, auf die Schaltfläche Gerät verbinden. q-ss05s.png

Welches SDK verwenden Sie dann? Ich kann wählen, aber ich kann Python nicht finden. q-ss06s.png

Es gibt keine Möglichkeit. Wenn Sie also NodeJS auswählen, wird eine Schaltfläche mit dem Namen Zertifikat und Richtlinie generieren angezeigt. Drücken Sie also darauf. q-ss07s.png

Dieses Mal sehen Sie drei Links und Schaltflächen. q-ss08s.png

Klicken Sie zunächst auf die drei Links von Download, um das Zertifikat herunterzuladen.

Drücken Sie nach dem Herunterladen die Schaltfläche Bestätigen und Verbindung herstellen. q-ss09s.png

Kopieren Sie das Textfeld und fügen Sie es hier ein. Klicken Sie dann auf die Schaltfläche Zurück zum Detail.

Raspberry Pi vorbereiten

Installieren des AWS IoT Device SDK für Python

Da RASPBIAN JESSIE von Saishin pip enthält, installieren Sie es mit pip. sudo pip install AWSIoTPythonSDK Mit oder ohne Sudo.

Laden Sie den Beispielcode herunter

Der Beispielcode ist auch im Quellbaum enthalten. Klonen Sie ihn daher von Github. git clone https://github.com/aws/aws-iot-device-sdk-python.git

Zertifikatsvorbereitung

Zum Ausführen des Beispielcodes sind drei Zertifikatdateien erforderlich. Legen Sie es diesmal im selben Verzeichnis wie den Beispielcode ab.

Senden Sie alle Zertifikate, die bei der Vorbereitung von AWS IoT heruntergeladen wurden, per scp usw. an Raspberry Pi.

--Honyara-certificate.pem.crt --Honyara-private.pem.key

Bereiten Sie als Nächstes die AWS IoT-Stammzertifizierungsstelle vor. curl https://www.symantec.com/content/en/us/enterprise/verisign/roots/VeriSign-Class%203-Public-Primary-Certification-Authority-G5.pem -o rootCA.pem

Es wird als rootCA.pem gespeichert.

Führen Sie den Beispielcode aus

Geben Sie den Endpunkt und verschiedene Zertifikatpfade als Argumente an.

Der Endpunkt ist der AWS-Hostname, und "" Host ":" Irgendwo "" wird im Textfeld angezeigt, das am Ende der AWS IoT-Vorbereitung angezeigt wird. Alternativ wird in der Verwaltungskonsole der Hostname auch im Detail angezeigt, das angezeigt wird, wenn Sie auf etwas klicken (korrekt, da es das Ziel der REST-API ist, nur der Hostname). q-ss10s.png

python basicPubSub.py -e Irgendwo .amazonaws.com -r rootCA.pem -c Honyara -certificate.pem.crt -k Honyara -private.pem.key

Bei der Ausführung wird im Abstand von 1 Sekunde eine Nachricht ausgegeben. Überprüfen Sie das angezeigte Protokoll und wenn es kein Problem gibt, drücken Sie Strg + C in ca. 10 Sekunden.

Schauen Sie sich den S3-Eimer an

Die Datei wird dieses Mal im Bucket-Set erstellt. Es ist erfolgreich, wenn der Inhalt für die Anzahl der Sekunden aktualisiert wird, in denen der Beispielcode ausgeführt wird. New Message 10

Recommended Posts

Führen Sie das AWS IoT Device SDK für Python auf Raspberry Pi aus
Lassen Sie einen Servomotor mit Python auf Raspberry Pi 3 laufen
Flottenbereitstellung mit AWS IoT SDK für Python v2
Zugriff auf Google Spreadsheets Verwenden von Python mit Himbeer-Pi (für sich selbst)
Führen Sie Python planmäßig auf AWS Lambda aus
boto3 (AWS SDK für Python) Hinweis
Verwenden Sie das Kintone API SDK für Python mit Raspberry Pi (speichern Sie Daten einfach in Kintone von Raspberry Pi).
Erkennen Sie "Helligkeit" mit Python auf Raspberry Pi 3!
Adafruit Python BluefruitLE arbeitet mit Raspeye.
[Python] Führen Sie Headless Chrome unter AWS Lambda aus
Ermitteln Sie die Temperatur mit Python auf Raspberry Pi 3!
Arbeiten mit GPS in Python für Raspberry Pi 3
Führen Sie regelmäßig Python-Programme auf AWS Lambda aus
Erkennen Sie Schiebeschalter mit Python auf Raspberry Pi 3!
Erkennen Sie Magnetschalter mit Python auf Raspberry Pi 3!
Senden Sie Daten von Raspberry Pi mit AWS IOT
Einfache Verbindung zwischen Raspberry Pi und AWS IoT
Stellen Sie DHT11 mit Raspeye + Python zur Verfügung (Hinweis)
Python-Mock, um AWS IoT Device Shadow auszuprobieren
Cross-Compilierung für Raspberry Pi Zero unter Ubuntu gestartet
Lassen Sie den Summer mit Python auf Raspberry Pi 3 erklingen!
(Für mich) AWS_Flask_3 (Flask auf AWS installieren / ausführen)
Beispiel für ein Raspberry Pi und AWS IoT-Verbindungsprogramm
Rufen Sie Polly aus dem AWS SDK für Python auf
Stellen Sie mit Python auf Raspberry Pi eine Verbindung zu MySQL her
Erstellen Sie eine Python-Entwicklungsumgebung auf Raspberry Pi
Pigpio auf Himbeer-Pi
Cython auf Raspberry Pi
Von Boto3 verwendete Anmeldeinformationen (AWS SDK für Python)
Führen Sie die LED-Matrix interaktiv mit Raspberry Pi 3B + auf Slackbot aus
[AWS IoT] Registrieren Sie Dinge in AWS IoT mithilfe des AWS IoT Python SDK
Versuchen Sie, Python auf Raspberry Pi mit Visual Studio zu debuggen.
Unterstützung für Python 2.7-Laufzeit auf AWS Lambda (ab 2020.1)
Ubuntu 20.04 auf Himbeer-Pi 4 mit OpenCV und mit Python verwenden
Installieren Sie pyenv auf Raspberry Pi, um Python zu verwalten
Entwicklung des AWS SDK für Python (Boto3) in Visual Studio 2017
Ausgabe auf "7 Segment LED" mit Python mit Raspberry Pi 3!
Verwenden Sie das AWS SDK für Python (boto) in einer Proxy-Umgebung
[Hinweis] Die Geschichte des Einrichtens des SDK für Python von Azure IoT Hub unter Linux
Installieren Sie PyCall auf Raspberry PI und versuchen Sie, die GPIO-Bibliothek für Python von Ruby zu verwenden
Skript zum einfachen Erstellen einer Clientgeräteumgebung für AWS IoT (Python v2-Version)
Führen Sie Openpose unter Python (Windows) aus.
VScode Intelligence funktioniert unter Raspeye OS 64bit nicht! (Python)
Aktualisieren Sie Raspberry Pi Python mit pyenv auf 3.7 oder höher
Raspberry Pi + Python + IoT-Gerät, Umgebungskonstruktionsverfahren zum Starten der Bildverarbeitung und des maschinellen Lernens
Installieren Sie das AWS SDK für PHP mit AWS EC2 (PHP7.2 + Apache2.4.41 + OPCashe + Composer).
Cross-Compilierung für Raspberry Pi Zero unter Debian-Try unter Verwendung einer gemeinsam genutzten Bibliothek
Verwenden Sie Python auf Raspberry Pi 3, um "Temperatur (mit A / D-Wandler)" zu erkennen!
Führen Sie Tensorflow 2.x unter Python 3.7 aus
Führen Sie den Python-Beispielcode BNO055 mit I2C (Raspberry Pi 3B) aus.
Raspeye + Python + OpenGL-Memo
Führen Sie Pythons CGI auf CORESERVER aus
Führen Sie den Unix-Befehl auf Python aus
Himbeere pi 1 Modell b, Python
Führen Sie YOLO v3 unter AWS v2 aus
Pyenv auf Raspberry Pi eingeführt
Verwenden Sie NeoPixel mit Himbeerkuchen
Installieren Sie OpenCV4 auf Raspberry Pi 3
Installieren Sie TensorFlow 1.15.0 auf Raspberry Pi
Führen Sie YOLO v3 unter AWS aus