[Pause Tech] Créer un boîtier IOT piloter en C++
Écrit par Florian Dordain, Publié le 21 avril 2021
Avant de commencer
Avant propos
Pourquoi créer un boîtier IOT embarquant sur C++ ?
- Récupérer des données de façon distante.
- Créer des applications C++ pour des systèmes embarqués.
- Gérer ces processus de production au plus proche de la réalité.
Ce tutoriel va nous permettre de configurer un IDE sous windows qui compilera des applications pour un boîter embarquant l'OS raspbian stretch (linux).
Le matériel
Le matériel utilisé est le suivant :
- Un boîter BB400 (http://fr.brainboxes.com/product/bb-400/industrial-edge-controller-powered-by-pi-dio-serial-bt-wifi-nfc-usb-ethernet )
- Le framework Qt ( https://www.qt.io/download )
- Un switch
- Une alimentation 24V pour le boîtier
Le framework QT
Installer Qt
https://doc.qt.io/qt-5/gettingstarted.html
Configurer la version de Qt
Copier la version de Qt
Aller dans le dossier d'installation de QT puis dans le dossier => [version de Qt]\[version de compilateur]\mkspecs\devices
Copier le dossier linux-rasp-pi2-g++ et le renommer en linux-bb400-g++
Compiler la version de Qt
Créer un Device Linux
Installer Qt sur le BB400
Ouvrez, un terminal ou powershell, placez grâce à la commande "cd" dans le répertoire de build de votre version (dans notre exemple C:\arm-linux-gnueabihf\sysroot\usr\local\qt5), puis exécuter les commandes de transfère suivante :
Dans le terminal du BB400 :
cd /usr/local
sudo mkdir qt5
Dans le terminal de votre ordinateur :
scp -r C:\arm-linux-gnueabihf\sysroot\usr\local\qt5 /usr/local/qt5
Configurer QtCreator
Pour configurer votre kit de compilation pour le BB400, allez dans "outils" puis "option"
Allez dans l'onglet "Appareils mobiles", puis "ajouter", puis "Generic Device Linux"
Entrez les informations relatives à votre machine :
- Adresse IP du bb400
- username, par défaut bb
Maintenant nous devons créer une clé de connexion afin de sécuriser les échanges entre le BB400 et QtCreator.
Cliquez sur "suivant", puis "Create new pair", sélectionnez RSA | 1024. Puis "Générer et sauvegarder la paire de clés".
En revenant maintenant sur la fenêtre de l'assistant, cliquez sur "Deploy public key", il faudra entrer le username (bb) et le password par défaut (4 derniers caractères de l'adresse mac).
Bravo ! 🎉👏 Vous avez terminé la configuration permettant le déploiement d'application Qt depuis votre PC vers le BB400.
Paramétrer le compilateur
Pour configurer votre kit de compilation pour le BB400, allez dans "outils" puis "option"
Allez dans l'onglet "Kits", puis "ajouter"
Détaillons les différents paramètres :
- Nom : Nom de votre kit
- Device type : Votre appareil
- Sysroot : le chemin de la variable$ROOTFS
- Compiler : Ici, j'ai choisi un compilateur cross-platform MinGW pour compiler depuis windows vers linux, mais cela dépends de votre OS et de votre application.
- Debbugger : J'ai choisi GDB
- Qt version : Correspond à votre version de Qt, celle que l'on a compilée précédemment
- CMake tool : choisissiez la version qui correspond à votre version de Qt.
Dans le menu tout à gauche allez dans "Projects" puis ajouter le nouveau kit à votre projet.
Vous pouvez désormais compiler votre application Qt pour le BB400 et la déployer au travers de QtCreator.
Le boîter BB400
Installer un pare-feu logiciel
Installer le pare-feu ufw
Pour ouvrir le terminal, dans le menu tout à gauche, cliquez sur l'icône disque dur puis dans le menu contextuel naviguer dans l'onglet "terminal".
Pour installer le pare-feu entrez la commande suivante :
sudo apt-get install ufw
Paramétrer le pare-feu ufw
Pour se faire un certain nombres de paramètres peuvent être règler. Vous pouvez également définir des politiques par défaut
sudo ufw default deny incoming => permet d'interdire les entrées
sudo ufw default allow outgoing => permet d'autoriser les sorties
Si vous souhaitez piloter le BB400 à distance le paramètre suivant permet d'autoriser les connexions SSH :
sudo ufw allow ssh
Si vous utilisez des ports de connexion spécifique vous pouvez les ouvrir grâce à la commande suivante :
sudo ufw allow [VOTRE_PORT]
Une fois vos paramétrages fini vous pouvez démarrer UFW :
sudo ufw enable
Sources : How to set up a firewall with UFW
Créer une application node red
Pour ouvrir node red, dans le menu tout à gauche, cliquez sur l'icône "Apps" puis cliquez sur open.
Les identifiants de connexion par défaut sont :
id : bb
mdp :[4_DERNIERS_CARACTERES_ADRESSE
A partir de node red, il est possible de gérer l'ensemble des composants du BB400 :
- Entrées / sorties
- Communication série RS422/485
- Script linux
- Envoi/réception de données vers/depuis le cloud (Azure, GCloud, AWS, ...)
- Node red comprend également des fonctions de programmation avancées (trigger, switch, ...).
Paramétrer les IOs
Pour ouvrir la fenêtre de configuration des IOs, dans le menu tout à gauche, cliquez sur l'icône "IO".
Vous pourrez ensuite, sélectionner le mode output / Input / not set /unsed. Il est également possible de compter le nombre d'activation ou de désactivation de la DIO. Pour cela il faudra paramètrer les compteurs sur Falling edge (désactivation) ou sur Rising edge (activation).
Cela permet de sortir rapidement et presque sans aucune configuration des statistiques.
🎉👏 BRAVO🎉👏
Vous êtes prêt à déployer votre solution à plus grande échelle !
Contacts
- Patrick Roberge
- p.roberge@atemation.com
- +33 (0)1 34 65 72 02
- +33 (0)6 07 54 49 33
Aucun commentaire pour l'instant
Dites-nous ce que vous en pensez