Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Dans cette section, nous allons configurer un Raspberry Pi à utiliser avec AWS IoT. Si vous souhaitez connecter un autre appareil, les instructions du Raspberry Pi incluent des références qui peuvent vous aider à adapter ces instructions à votre appareil.
Cela prend normalement environ 20 minutes, mais cela peut prendre plus de temps si vous devez installer de nombreuses mises à niveau du logiciel système.
Dans ce tutoriel, vous apprendrez à :
Important
L'adaptation de ces instructions à d'autres appareils et systèmes d'exploitation peut s'avérer difficile. Vous devez avoir une connaissance suffisante de votre appareil pour être en mesure d'interpréter ces instructions et de les appliquer.
Si vous rencontrez des difficultés lors de la configuration de votre appareil pour AWS IoT, vous pouvez essayer l'une des autres options de l'appareil comme alternative, telle que Créez un appareil virtuel avec Amazon EC2 ouUtilisez votre PC ou Mac Windows ou Linux comme AWS IoT appareil.
Configurez votre appareil
L'objectif de cette étape est de collecter les informations dont vous aurez besoin pour configurer votre appareil afin qu'il puisse démarrer le système d'exploitation (OS), se connecter à Internet et vous permettre d'interagir avec celui-ci via une interface de ligne de commande.
Pour suivre ce didacticiel, vous aurez besoin des éléments suivants :
-
Un Compte AWS. Si vous n'en avez pas, effectuez les étapes décrites dans Configurez Compte AWS avant de continuer.
-
Un Raspberry Pi 3 modèle B
ou un modèle plus récent. Cela peut fonctionner sur les versions antérieures du Raspberry Pi, mais elles n'ont pas été testées. -
Système d'exploitation Raspberry Pi (32 bits)
ou version ultérieure. Nous vous recommandons d'utiliser la dernière version du système d'exploitation Raspberry Pi. Les versions antérieures du système d'exploitation peuvent fonctionner, mais elles n'ont pas été testées. Pour exécuter cet exemple, vous n'avez pas besoin d'installer le bureau avec l'interface utilisateur graphique (GUI) ; cependant, si vous êtes nouveau sur le Raspberry Pi et que votre matériel Raspberry Pi le prend en charge, l’utilisation du bureau avec l'interface graphique peut être plus facile.
-
Une WiFi connexion Ethernet.
-
Clavier, souris, écran, câbles, blocs d'alimentation et autres équipements nécessaires à votre appareil.
Important
Avant de passer à l'étape suivante, le système d'exploitation de votre appareil doit être installé, configuré et en cours d'exécution. L'appareil doit être connecté à Internet et vous devez pouvoir y accéder à l'aide de son interface en ligne de commande. L'accès à la ligne de commande peut se faire via un clavier, une souris et un moniteur directement connectés, ou en utilisant une interface distante de terminal SSH.
Si vous exécutez un système d'exploitation sur votre Raspberry Pi doté d'une interface utilisateur graphique (GUI), ouvrez une fenêtre de terminal sur l'appareil et suivez les instructions suivantes dans cette fenêtre. Sinon, si vous vous connectez à votre appareil à l'aide d'un terminal distant, tel que PuTTY, ouvrez un terminal distant sur votre appareil et utilisez-le.
Installez les outils et bibliothèques requis pour le SDK du AWS IoT périphérique
Avant d'installer le SDK du AWS IoT périphérique et un exemple de code, assurez-vous que votre système est à jour et qu'il dispose des outils et bibliothèques nécessaires pour installer le SDKs.
-
Mise à jour du système d'exploitation et installation des bibliothèques requises
Avant d'installer un SDK de AWS IoT périphérique, exécutez ces commandes dans une fenêtre de terminal de votre appareil pour mettre à jour le système d'exploitation et installer les bibliothèques requises.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install cmake
sudo apt-get install libssl-dev
-
Installez Git
Si Git n'est pas installé sur le système d'exploitation de votre appareil, vous devez l'installer pour installer le SDK du AWS IoT périphérique pour JavaScript.
-
Vérifiez si Git est déjà installé en exécutant cette commande.
git --version
-
Si la commande précédente renvoie la version de Git, cela signifie que Git est déjà installé et vous pouvez passer à l'étape 3.
-
Si une erreur s'affiche lorsque vous exécutez la commande git, installez Git en exécutant cette commande.
sudo apt-get install git
-
Testez à nouveau pour voir si Git est installé en exécutant cette commande.
git --version
-
Si Git est installé, passez à la section suivante. Si ce n'est pas le cas, dépannez et corrigez l'erreur avant de continuer. Vous avez besoin de Git pour installer le AWS IoT Device SDK pour JavaScript.
-
Installer le SDK AWS IoT du périphérique
Installez le SDK du AWS IoT périphérique.
Dans cette section, vous allez installer Python, ses outils de développement et le AWS IoT Device SDK pour Python sur votre appareil. Ces instructions concernent un Raspberry Pi exécutant le dernier système d’exploitation Raspberry Pi. Si vous avez un autre appareil ou utilisez un autre système d'exploitation, vous devrez peut-être adapter ces instructions à votre appareil.
-
Installer Python et ses outils de développement
Le AWS IoT Device SDK pour Python nécessite l'installation de Python v3.5 ou version ultérieure sur votre Raspberry Pi.
Dans une fenêtre de terminal sur votre appareil, exécutez ces commandes.
-
Exécutez cette commande pour déterminer la version de Python installée sur votre appareil.
python3 --version
Si Python est installé, il affichera sa version.
-
Si la version affichée est
Python 3.5
ou supérieure, vous pouvez passer à l'étape 2. -
Si la version affichée est inférieure à
Python 3.5
, vous pouvez installer la bonne version en exécutant cette commande.sudo apt install python3
-
Exécutez cette commande pour vérifier que la bonne version de Python est désormais installée.
python3 --version
-
-
Test pour pip3
Dans une fenêtre de terminal sur votre appareil, exécutez ces commandes.
-
Exécutez cette commande pour voir si pip3 est installée.
pip3 --version
-
Si la commande renvoie un numéro de version, pip3 est installée et vous pouvez passer à l'étape 3.
-
Si la commande précédente renvoie une erreur, exécutez cette commande pour effectuer l'installation de pip3.
sudo apt install python3-pip
-
Exécutez cette commande pour voir si pip3 est installée.
pip3 --version
-
-
Installez le SDK AWS IoT Device actuel pour Python
Installez le SDK AWS IoT Device pour Python et téléchargez les exemples d'applications sur votre appareil.
Sur votre appareil, exécutez ces commandes.
cd ~ python3 -m pip install awsiotsdk
git clone https://github.com/aws/aws-iot-device-sdk-python-v2.git
Installez et exécutez l'exemple d'application
Dans cette section, vous allez installer et exécuter l'pubsub
exemple d'application qui se trouve dans le SDK de l' AWS IoT appareil. Cette application montre comment votre appareil utilise la bibliothèque MQTT pour publier et s'abonner aux messages MQTT. L'exemple d'application s'abonne à une rubrique, topic_1
, publie 10 messages sur cette rubrique et affiche les messages au fur et à mesure qu'ils sont reçus de l’agent de messages.
Installez les fichiers de certificat
L'exemple d'application nécessite que les fichiers de certificat authentifiant l'appareil soient installés sur celui-ci.
Pour installer les fichiers de certificat de l'appareil pour l'exemple d'application
-
Créez un
certs
sous-répertoire dans votrehome
répertoire en exécutant ces commandes.cd ~ mkdir certs
-
Dans le répertoire
~/certs
, copiez la clé privée, le certificat de périphérique et le certificat d'autorité de certification racine que vous avez créés précédemment dans Créez des AWS IoT ressources.La façon dont vous copiez les fichiers de certificat sur votre appareil dépend de l'appareil et du système d'exploitation et n'est pas décrite ici. Toutefois, si votre appareil prend en charge une interface utilisateur graphique (GUI) et dispose d'un navigateur Web, vous pouvez suivre la procédure décrite dans le navigateur Web de votre appareil Créez des AWS IoT ressources pour télécharger les fichiers obtenus directement sur votre appareil.
Les commandes figurant dans la section suivante supposent que vos fichiers de clé et de certificat sont stockés sur l'appareil, comme indiqué dans ce tableau.
Noms des fichiers de certificat Fichier
Chemin d'accès du fichier
Certificat racine de l'autorité de certification
~/certs/Amazon-root-CA-1.pem
Certificat de l'appareil
~/certs/device.pem.crt
Clé privée
~/certs/private.pem.key
Pour exécuter cet exemple d'application, vous avez besoin des informations suivantes :
Paramètre |
Où trouver la valeur |
---|---|
your-iot-endpoint |
Dans la AWS IoT console Sur la page Paramètres du AWS IoT menu. Votre point de terminaison est affiché dans la section Point de terminaison des données de l'appareil. |
La your-iot-endpoint
valeur a le format suivant :
, par exemple,endpoint_id
-ats.iot.region
.amazonaws.coma3qj468EXAMPLE-ats.iot.us-west-2.amazonaws.com
.
Pour installer et exécuter l'exemple d'application
-
Accédez au répertoire de l’exemple d’application.
cd ~/aws-iot-device-sdk-python-v2/samples
-
Dans la fenêtre de ligne de commande, remplacez
your-iot-endpoint
comme indiqué et exécutez cette commande.python3 pubsub.py --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint
your-iot-endpoint
-
Notez que l'exemple d'application :
-
Se connecte au AWS IoT service associé à votre compte.
-
S'abonne à la rubrique du message, topic_1, et affiche les messages qu'il reçoit à cette rubrique.
-
Publie 10 messages dans la rubrique topic_1.
-
Affiche une sortie similaire à celle-ci :
Connecting to a3qEXAMPLEffp-ats.iot.us-west-2.amazonaws.com with client ID 'test-0c8ae2ff-cc87-49d2-a82a-ae7ba1d0ca5a'... Connected! Subscribing to topic 'topic_1'... Subscribed with QoS.AT_LEAST_ONCE Sending 10 message(s) Publishing message to topic 'topic_1': Hello World! [1] Received message from topic 'topic_1': b'Hello World! [1]' Publishing message to topic 'topic_1': Hello World! [2] Received message from topic 'topic_1': b'Hello World! [2]' Publishing message to topic 'topic_1': Hello World! [3] Received message from topic 'topic_1': b'Hello World! [3]' Publishing message to topic 'topic_1': Hello World! [4] Received message from topic 'topic_1': b'Hello World! [4]' Publishing message to topic 'topic_1': Hello World! [5] Received message from topic 'topic_1': b'Hello World! [5]' Publishing message to topic 'topic_1': Hello World! [6] Received message from topic 'topic_1': b'Hello World! [6]' Publishing message to topic 'topic_1': Hello World! [7] Received message from topic 'topic_1': b'Hello World! [7]' Publishing message to topic 'topic_1': Hello World! [8] Received message from topic 'topic_1': b'Hello World! [8]' Publishing message to topic 'topic_1': Hello World! [9] Received message from topic 'topic_1': b'Hello World! [9]' Publishing message to topic 'topic_1': Hello World! [10] Received message from topic 'topic_1': b'Hello World! [10]' 10 message(s) received. Disconnecting... Disconnected!
Si vous rencontrez des difficultés en exécutant l'exemple d'application, veuillez consulter Résoudre les problèmes liés à l'exemple d'application.
Vous pouvez également ajouter le paramètre
--verbosity Debug
sur la ligne de commande afin que l'exemple d'application affiche des messages détaillés sur ce qu'elle fait. Ces informations peuvent vous fournir l'aide dont vous avez besoin pour corriger le problème. -
Afficher les messages de l'exemple d'application dans la AWS IoT console
Vous pouvez voir les messages de l'application d'exemple lorsqu'ils passent par l’agent de messages en utilisant le client de test MQTT dans la AWS IoT console.
Pour afficher les messages MQTT publiés par l'exemple d'application
-
Consultez Afficher les messages MQTT avec le client AWS IoT MQTT. Cela vous permet d'apprendre à utiliser le client de test MQTT dans la AWS IoT console pour afficher les messages MQTT lorsqu'ils transitent par l’agent de messages.
-
Ouvrez le client de test MQTT dans la AWS IoT console.
-
S'abonner à la rubrique, topic_1.
-
Dans votre fenêtre de ligne de commande, exécutez à nouveau l'exemple d'application et observez les messages du client MQTT dans la AWS IoT console.
cd ~/aws-iot-device-sdk-python-v2/samples python3 pubsub.py --topic topic_1 --ca_file ~/certs/Amazon-root-CA-1.pem --cert ~/certs/device.pem.crt --key ~/certs/private.pem.key --endpoint
your-iot-endpoint