Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Kit de démarrage Hologram Nova

Nouveau sur Nova ? Nouveau sur Raspberry Pi ? Nouveau sur Python ? Ce didacticiel accompagne notre kit et vous guide à travers chaque étape.

Histoire

Ce tutoriel fait partie d'un kit que propose Hologram :https://hologram.io/store/nova-starter-kit-for-raspberry-pi-3

Configurer un Raspberry Pi - Sans tête

Remarque :Vous pouvez passer à la section suivante si vous avez déjà installé Raspbian sur une carte SD et pouvez y accéder en SSH ou avoir accès à son terminal.

Configurer un Raspberry Pi sans tête signifie que nous allons configurer un ordinateur sans connecter un moniteur, un clavier ou une souris à l'appareil. Nous allons tout faire à distance depuis notre ordinateur principal.

1. Téléchargez et gravez le système d'exploitation Raspbian sur SD

Notes de démarrage :

Télécharger Raspbian :https://www.raspberrypi.org/downloads/raspbian/

Télécharger/installer Etcher :https://etcher.io/

Gravure de Raspbian sur carte SD :

2. Configurer Raspbian

Une fois Etcher terminé, nous souhaiterons accéder à la carte SD tout en restant monté sur votre ordinateur. Si la carte SD a été éjectée une fois Etcher terminé, débranchez/rebranchez la carte SD et assurez-vous qu'elle est montée.

Ouvrez une application de terminal local. J'aime utiliser Hyper Terminal.

Changez les répertoires vers le lecteur de démarrage, sur un Mac ce serait :

cd /Volumes/boot

Activez SSH en créant un fichier vide.

touchez ssh

Créez et modifiez wpa_supplicant.conf pour pré-configurer le Wi-Fi. Cette configuration permettra au Pi de rejoindre automatiquement un réseau au démarrage si disponible. Le Pi n'a qu'une antenne 2.4Ghz et n'est pas compatible avec les routeurs 5Ghz . Exécutez la commande suivante pour configurer le Wi-Fi :

sudo nano wpa_supplicant.conf

Remarque 1 : Ajout  sudo au début d'une commande vous donnera les droits root (super utilisateur). Ce sujet devient un peu épineux, si vous suivez ces instructions mot à mot, tout ira bien.

Remarque 2 :Qu'est-ce que  nano  ? Nano est un éditeur de texte léger qui fonctionne à l'intérieur du terminal. L'appel de nano suivi d'un fichier ouvrira ce fichier pour modification.

Avec nano ouvert sur un fichier vierge, collez l'extrait suivant - en le modifiant avec vos propres informations d'identification réseau.

country=US ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="**your-wifi**" psk="**your-password **" key_mgmt=WPA-PSK}

Pour les réseaux non sécurisés :

country=US ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="**your-wifi**" key_mgmt=NONE}

Appuyez sur CRTL+X pour quitter, O pour enregistrer, ENTRER pour confirmer et quitter l'éditeur Nano. Éjectez la carte SD de votre ordinateur et insérez-la dans le Raspberry Pi.

3. Connectez-vous au Pi via WiFi SSH

Mettez le Raspberry Pi sous tension via son port d'alimentation micro USB et attendez une minute que l'appareil démarre et se connecte. Vous n'avez pas encore besoin de brancher le Nova. Veuillez vous assurer d'utiliser l'adaptateur secteur fourni, il est important que votre Pi obtienne le 5 V 2,4 A recommandé.

Sur votre ordinateur principal (pas le Pi), ouvrez un terminal, vous pouvez même avoir le terminal ouvert depuis les dernières étapes. Nous allons utiliser SSH (Secure Shell) pour accéder au terminal du Pi à distance depuis votre ordinateur principal. Considérez-le comme un bureau à distance, mais au lieu d'un bureau, c'est un terminal.

Dans le terminal, exécutez :

ssh [email protected]

Le mot de passe est framboise.

Dépannage :

  • Que faire si l'appareil est introuvable ? Le Pi n'est probablement pas sur le réseau. Remettez la carte SD dans votre ordinateur principal et recommencez la dernière étape, en vous assurant que les informations d'identification Wi-Fi sont correctes et que vous vous connectez à un réseau 2,4 Ghz.
  • Et s'il y a plusieurs Raspberry Pi sur mon réseau partageant le même nom d'hôte ? Vous devrez accéder au Pi par adresse IP locale au lieu du nom d'hôte.local. Identifiez l'adresse IP de l'appareil en vous connectant au backend d'administration de votre routeur ou en utilisant une application telle que Bonjour Browser. Trouvez l'adresse IP pour accéder à l'appareil via SSH > ssh [email protected]

Configuration supplémentaire de Pi.

Maintenant, vous devriez être à distance dans le terminal de votre Pi. Nous allons finir de configurer le Pi. À partir de la ligne de commande SSH, exécutez :

sudo raspi-config

Un écran comme celui-ci devrait apparaître :

Passons en revue toutes les choses dont nous avons besoin que vous fassiez ici.

  • Développer le stockage SD : 7 options avancées → A1 Développer le système de fichiers
  • Activer I2C pour lire les capteurs analogiques : 5 options d'interfaçage → SPI
  • Modifier le mot de passe : 1 Modifier le mot de passe utilisateur → saisissez un nouveau mot de passe (rappelez-vous !)
  • Modifier le nom d'hôte : 2 Nom d'hôte → saisissez un nouveau nom d'hôte (rappelez-vous !)
  • Sélectionnez Terminer et approuvez le redémarrage du Pi

Après le redémarrage du Pi, nous reviendrons en SSH sur l'appareil. Assurez-vous d'utiliser le nouveau nom d'hôte et de mettre .local après le nom d'hôte. Exemple : ssh [email protected]

4. Installer les dépendances

Je sais que c'est un peu long mais je jure que nous avons presque fini ! Depuis une session SSH, exécutez les commandes suivantes.

Mettre à jour les bibliothèques de code de votre Pi :

sudo apt-get update

Installez certaines de mes bibliothèques requises préférées :

sudo apt-get install git git-core build-essential python-dev python-openssl python-smbus python3-pip python-pip screen

Installez le SDK Python d'Hologram pour interagir avec le Nova :

curl -L hologram.io/python-install | bash

Vérifiez que la CLI (interface de ligne de commande) de Hologram a été installée. Il devrait renvoyer une version supérieure à 0.6.0.

version hologramme

Félicitations ! Vous avez terminé la configuration de votre Raspberry Pi et vous n'avez jamais branché de moniteur ! Vous êtes maintenant un pro !

Nous allons interagir avec les broches d'entrée/sortie à usage général (GPIO pour faire court). Pour un rappel rapide des principales nuances des broches Pi GPIO, consultez ce StackOverflow. Pour ce projet, nous utiliserons la numérotation BCM.

Publier le brochage ici pour une référence rapide :

Pour ceux qui ne connaissent pas les planches à pain , regardez cette vidéo de ScienceBuddiesTv expliquant comment l'électricité traverse une maquette.

Pour la leçon 1, nous allons définir l'une de nos broches Pi comme sortie, contrôlant l'électricité pour allumer une LED à la demande.

Schéma de câblage

Vous trouverez ci-dessous comment tout connecter. Utilisez une résistance de 220 ohms. La couleur des fils n'a pas d'importance mais généralement le ROUGE représente l'alimentation et le NOIR représente la terre.

Remarque :assurez-vous TOUJOURS de couper l'alimentation du Pi avant le câblage.

Rebranchez l'alimentation, attendez une minute et rétablissez une connexion SSH.

Exécutez le code 🏃💨

J'ai déjà créé le code nécessaire pour faire clignoter la lumière et je l'ai stocké sur GitHub pour que tout le monde puisse y accéder. Nous allons cloner (mot de fantaisie pour copier) le code de mon référentiel GitHub sur votre Pi en exécutant la commande suivante.

clone git https://github.com/benstr/nova-starter-kit.git

Vous devriez maintenant avoir un nouveau dossier sur notre Pi rempli de goodies !

ls nova-starter-kit/

Exécutez le code en lançant la commande suivante.

sudo python nova-starter-kit/01_blink/main.py

Le terminal vous demandera combien de fois vous souhaitez faire clignoter la LED. Entrez un numéro et regardez la lumière s'allumer et s'éteindre. YAY nous contrôlons l'électrique !

Il y a deux fichiers contrôlant la LED. Regardez le code de chaque fichier en envoyant chacune de ces commandes.

cat nova-starter-kit/01_blink/main.py

Main.py référence un autre fichier pour ses commandes LED, myLED.py . Regardons aussi ce fichier.

cat nova-starter-kit/01_blink/myLED.py

Soyez ambitieux !

J'ai ajouté quelques fonctions supplémentaires dans myLED.py auxquelles vous pouvez accéder dans main.py. Allez-y, éditez main.py et appelez d'autres fonctions de myLED.py. Exécutez votre code modifié et voyez ce qui se passe :

sudo nano pi-starter-kit/01_blink/main.py

Leçon 2 – Lire un capteur numérique

Dans cette leçon, nous allons ajouter un capteur numérique et lire sa valeur. Le DHT11 détecte l'humidité et la température et envoie les résultats via un signal numérique. Les broches du Pi peuvent lire les capteurs numériques prêts à l'emploi.

Dans ce dossier de code de cours, nous ajoutons un nouveau fichier appelé myDHT.py . Dans ce fichier, nous définissons une broche comme entrée et créons des fonctions pour des utilisations courantes. La bibliothèque python DHT d'Adafruit est la vraie star, ce qui facilite la lecture du capteur DHT.

Vous pouvez en savoir plus sur les capteurs DHT d'Adafruit : https://learn.adafruit.com/dht

Schéma de câblage

Vous trouverez ci-dessous comment tout connecter. Utilisez une résistance de 10k.

Remarque :N'oubliez pas de mettre le Pi hors tension avant le câblage.

Rebranchez l'alimentation, attendez une minute et rétablissez une connexion SSH.

Exécutez le code 🏃💨

Le code nécessaire pour cette leçon est déjà sur votre Pi, trouvé dans le dossier que vous avez cloné à partir de GitHub à l'étape précédente.

ls nova-starter-kit/02_digital_sensor/

Avant de pouvoir exécuter le code que j'ai créé, vous devez installer la bibliothèque DHT d'Adafruit. Clonez la nouvelle bibliothèque.

clone git https://github.com/adafruit/Adafruit_Python_DHT.git

Exécutez le script d'installation fourni par Adafruit.

installation sudo python Adafruit_Python_DHT/setup.py

Testez la bibliothèque en exécutant la commande suivante. Cela permettra également de vérifier que vous avez correctement câblé le capteur.

Remarque : Notez que nous passons 11 et 21 au script. 11 représente le capteur que nous utilisons (DHT11), 21 représente la broche à laquelle nous avons attaché le capteur.

sudo Adafruit_Python_DHT/examples/AdafruitDHT.py 11 21

Après avoir vérifié que la bibliothèque DHT est installée, nous sommes prêts à exécuter mon script de leçon. Exécutez le code en lançant la commande suivante.

sudo python nova-starter-kit/02_digital_sensor/main.py

Le terminal ne vous posera aucune question, à la place la LED clignotera 3 fois et affichera la température et l'humidité actuelles dans le terminal. Découvrez les modifications que j'ai apportées à main.py

cat nova-starter-kit/02_digital_sensor/main.py

main.py a importé un nouveau fichier, myDHT.py . Regardons aussi ce fichier. Comme myLED dans la leçon précédente, j'ai ajouté quelques fonctions supplémentaires.

cat nova-starter-kit/02_digital_sensor/myDHT.py
Vos compétences s'échauffent !

Leçon 3 - Lire un capteur analogique

Dans la dernière leçon, nous avons lu à partir d'un capteur numérique, un capteur envoyant des 1 et des 0. Il existe un autre moyen pour certains capteurs de communiquer appelé analogique. Les capteurs analogiques peuvent envoyer n'importe quelle valeur.

Certaines cartes, comme l'Arduino UNO, peuvent lire à partir des deux types de capteurs. Malheureusement, le Raspberry Pi ne peut lire que les capteurs numériques. Afin de lire les capteurs analogiques, nous aurons besoin d'un convertisseur analogique-2-numérique entre le capteur analogique et le Pi. Cette puce convertira le signal analogique en une sortie numérique et l'enverra au Pi.

Dans cette leçon, nous mettons en place un MCP-3008, qui convertit la valeur que nous obtenons d'un capteur de lumière (appelé photorésistance) et l'envoie au Pi. Nous ajoutons une autre bibliothèque python Adafruit, cette fois pour la puce MCP.

Encore une note sur le MCP-3008. Il fournit 8 ports, ce qui signifie qu'il peut lire jusqu'à 8 capteurs analogiques. Nous envoyons des données au port 0. Dans main.py, vous remarquerez que nous définissons le port utilisé par la photorésistance comme variable globale.

Schéma de câblage

Vous trouverez ci-dessous comment tout connecter. Il est important que le MCP3008 soit orienté dans le bon sens. Assurez-vous que l'extrémité crantée est à gauche . Il y a beaucoup de fils nécessaires pour le MCP3008, alors prenez votre temps et vérifiez tout.

Remarque :N'oubliez pas de mettre le Pi hors tension avant le câblage.

Rebranchez l'alimentation, attendez une minute et rétablissez une connexion SSH.

Exécutez le code 🏃💨

Le code nécessaire pour cette leçon est déjà sur votre Pi, trouvé dans le dossier que vous avez cloné à partir de GitHub.

ls nova-starter-kit/03_analog_sensor/

Avant de pouvoir exécuter le code que j'ai créé, vous devez installer la bibliothèque MCP d'Adafruit. Clonez la nouvelle bibliothèque.

clone git https://github.com/adafruit/Adafruit_Python_MCP3008.git

Exécutez le script d'installation fourni par Adafruit.

installation sudo python Adafruit_Python_MCP3008/setup.py

Une fois l'installation de MCP terminée, il est temps d'exécuter le script de la leçon. Exécutez le code en lançant la commande suivante.

sudo python nova-starter-kit/03_analog_sensor/main.py

Le terminal ne vous posera aucune question, à la place la LED clignotera 4 fois et affichera la température, l'humidité et maintenant la luminosité dans le terminal.

Découvrez les modifications que j'ai apportées à main.py

cat nova-starter-kit/03_analog_sensor/main.py

main.py a importé un nouveau fichier, myMCP.py . Regardons aussi ce fichier. Comme myDHT dans la leçon précédente, j'ai ajouté quelques fonctions supplémentaires.

cat nova-starter-kit/03_analog_sensor/myMCP.py
L'avenir s'annonce plus radieux que jamais !

Leçon 4 - Déclenchement avec un bouton

Ok, nous avons un ensemble de capteurs entièrement fonctionnel ! Mais, déclencher le script via un terminal dans une session SSH n'est pas idéal. Dans cette leçon, nous avons configuré un bouton pour déclencher une lecture et défini le script pour qu'il boucle en continu après le démarrage du pi.

Schéma de câblage

Câblage de ce bouton devrait être un jeu d'enfant pour vous maintenant :

Rebranchez l'alimentation, attendez une minute et rétablissez une connexion SSH.

Exécuter le code  🏃

Le code nécessaire pour cette leçon est déjà sur votre Pi, trouvé dans le dossier que vous avez cloné à partir de GitHub.

ls nova-starter-kit/04_button/

Exécutez le code en lançant la commande suivante.

sudo python nova-starter-kit/04_button/main.py

Le terminal ne fera rien pendant qu'il attend que vous appuyiez sur le bouton. Vous obtiendrez une lecture à chaque fois que vous appuyez sur le bouton.

Ce qui se passe s'appelle une boucle infinie. Le script ne s'arrêtera pas tant que vous ne l'aurez pas arrêté manuellement. Que fait le script ? Écouter une pression sur un bouton. Quittez la boucle en appuyant sur CTRL + C. Découvrez les modifications que j'ai apportées à main.py

cat nova-starter-kit/04_button/main.py

Exécutez le code… au démarrage ! 🔌 🏃

Nous avons un bouton et des capteurs, oui ! mais nous avons toujours besoin du terminal pour démarrer le script Python. Configurons le Pi pour qu'il exécute automatiquement ce script au démarrage.

Pour ce faire, nous devrons à nouveau éditer un fichier système à l'aide de l'éditeur de terminal NANO.

sudo nano /etc/rc.local

Cela ouvrira un fichier contenant déjà un contenu important. Utilise les flèches pour faire défiler vers le bas du document. Déplacez le curseur avant l'exit0 et ajoutez la ligne suivante :

sudo python /home/pi/nova-starter-kit/04_button/main.py &

Appuyez sur CRTL+X pour quitter, O pour enregistrer, ENTRER pour confirmer et quitter l'éditeur Nano. De retour dans le terminal normal, nous allons redémarrer le Pi.

redémarrage sudo

Après quelques minutes appuyez sur le bouton et si le voyant clignote 4 fois alors ça marche ! Maintenant, chaque fois que vous mettez le Pi sous tension, ce script s'exécutera en arrière-plan.

Leçon 5 – Envoyer des données via le Wi-Fi

Notre script s'exécute au démarrage, super ! Mais nous avons toujours besoin de SSH dans le terminal pour voir les données. Envoyons plutôt les données via WiFi au moteur de données d'Hologram.

Si vous n'avez pas activé votre Hologram SIM, veuillez le faire maintenant : https://dashboard.hologram.io/activate.

Après l'activation, sur le tableau de bord de l'appareil Hologram, cliquez sur l'appareil qui représente votre Nova pour accéder à sa page de détails.

À partir de la navigation latérale de la page de détail, accédez à la sous-page de configuration. Cliquez sur Afficher les informations d'identification du routeur , générez un nouveau code à 8 chiffres et enregistrez-le quelque part pour l'étape suivante.

Connectez-vous à votre Pi via SSH et ouvrez le fichier credentials.json dans l'éditeur NANO.

sudo nano nova-starter-kit/credentials.json 

Remplacez … par la clé à 8 caractères que vous avez obtenue dans le tableau de bord Hologram.

Appuyez sur CRTL+X pour quitter, O pour enregistrer, ENTRER pour confirmer et quitter l'éditeur Nano. Modifiez maintenant les règles de démarrage pour utiliser le fichier main.py dans la leçon 5.

sudo nano /etc/rc.local

Modifier l'avant-dernière ligne de :

sudo python /home/pi/nova-starter-kit/04_button/main.py &

à

sudo python /home/pi/nova-starter-kit/05_cloud/main.py &

Rappelez-vous que cela doit être fait avant exit0 . Appuyez sur CRTL+X pour quitter, O pour enregistrer, ENTRER pour confirmer et quitter l'éditeur Nano. De retour dans le terminal normal, nous allons redémarrer le Pi.

redémarrage sudo

Après quelques minutes appuyez sur le bouton et si le voyant clignote 4 fois alors ça a marché !

Maintenant, pour la vraie magie, allez sur https://dashboard.hologram.io/?drawer=full et si nous l'avons bien fait, vous verrez les résultats du capteur dans le cloud !

Découvrez les modifications que j'ai apportées à main.py pour cette leçon.

cat nova-starter-kit/05_cloud/main.py
nous sommes dans les nuages ​​bruh

Leçon 6 – Envoyer des données par cellulaire

Imaginez que vous vouliez coller cette matrice de capteurs d'environnement quelque part sans WiFi, comme un hangar de stockage ou une maison de vacances.

Dans cette leçon, nous ajouterons du cellulaire au script. Les étapes de cette leçon sont très similaires à la précédente.

Tout d'abord, suivez les instructions de montage du Nova incluses dans l'emballage. Assurez-vous que la carte SIM est correctement insérée et branchez le Nova dans le Pi. Attendez qu'une LED fixe s'affiche sur le Nova, suivie d'un deuxième clignotement. Cela signifie que vous disposez d'un réseau cellulaire auquel vous pouvez vous connecter.

Connectez-vous à votre Pi via SSH et modifiez les règles de démarrage pour utiliser le fichier main.py dans la leçon 6.

sudo nano /etc/rc.local

Modifier l'avant-dernière ligne de :

sudo python /home/pi/nova-starter-kit/05_cloud/main.py &

à

sudo python /home/pi/nova-starter-kit/06_cellular/main.py &

Rappelez-vous que cela doit être fait avant exit0 .

Appuyez sur CRTL+X pour quitter, O pour enregistrer, ENTRER pour confirmer et quitter l'éditeur Nano.

De retour dans le terminal normal, nous allons redémarrer le Pi.

redémarrage sudo

Après quelques minutes appuyez sur le bouton et si le voyant clignote 4 fois alors ça a marché !

Maintenant, pour la vraie magie, allez sur https://dashboard.hologram.io/?drawer=full et si nous l'avons bien fait, vous verrez les résultats du capteur dans le cloud !

Découvrez les modifications que j'ai apportées à main.py pour cette leçon.

cat nova-starter-kit/06_cellular/main.py

Félicitations ! Vous l'avez fait !!

Vous pouvez désormais connecter votre création n'importe où dans le monde et collecter des données sur l'environnement local.

Vous êtes maintenant un fabricant de robots météo… dites au revoir au météorologue.

Source :  Kit de démarrage Hologram Nova


Processus de fabrication

  1. Développement d'applications Web sur le cloud ; Un guide de démarrage
  2. Le kit fournit la plate-forme de développement mmWave
  3. Guide de branchement du kit de démarrage Raspberry Pi 3
  4. Interrupteur d'alimentation AC contrôlé par SMS Raspberry Pi/Hologram
  5. Hébergez votre propre site Web .onion gratuit en utilisant Raspbian sur RPi3
  6. Création du kit robot MonkMakes Raspberry Pi
  7. Intellisaurus – Kit Robot Dinosaure
  8. Présentation des kits de démarrage HARTING MICA®
  9. Présentation des kits de démarrage HARTING MICA®