Arduino nano
L’Arduino est un microcontrôleur extrêmement populaire pour les projets de bricolage matériel open source. Il existe de nombreux modèles d’Arduino, et pour ce projet, nous utiliserons un Arduino UNO. Tous les Arduino ont une interface GPIO bien définie qui supporte des cartes “Shield” fournissant des capacités personnalisées. Les broches GPIO peuvent être connectées à votre matériel de bricolage, ou à des Shields tiers, pour lesquels il existe de nombreux fournisseurs. C’est ce qui rend l’Arduino si intéressant pour les gens ordinaires comme vous et moi. Il existe toute une série de puces microcontrôleurs et de cartes destinées aux systèmes commerciaux et industriels. Ce n’est pas ce que nous sommes, nous bricolons dans une chambre d’amis.
Il y a un tas de matériel Arduino disponible. La première simplification que nous proposons est de prendre un Arduino UNO. C’est un système suffisant pour réaliser des projets utiles sans se ruiner. La dernière chose à faire à ce stade est de se perdre en pesant entre les UNO, les Zero et les MegaWhatever. Il existe des kits de démarrage Arduino UNO qui sont livrés avec quelques pièces utiles supplémentaires, et cela peut valoir le coup.
Feedback geben
Le projet de mesure de température par serveur web Arduino peut facilement être testé sur un réseau local, mais vous voudrez peut-être pouvoir accéder à la page web Arduino depuis Internet à l’aide d’un smartphone, d’une tablette ou d’un ordinateur externe – c’est-à-dire utiliser le projet pour surveiller la température à distance sur Internet.
Une carte Ethernet Arduino et deux capteurs de température MCP9700 sont utilisés comme exemple de serveur Web pour ce tutoriel. Le tutoriel devrait fonctionner pour d’autres cartes Arduino avec un blindage Arduino Ethernet et tout autre ordinateur ou carte disposant d’une connexion Ethernet.
La mesure de la température est utilisée à des fins de démonstration, mais d’autres projets peuvent tout aussi bien être connectés à Internet de la même manière, par exemple la mesure de la tension, un interrupteur de lumière, la commande d’un relais, etc.
Vous devez vous connecter à votre routeur à l’aide d’un navigateur Web, puis configurer et activer le transfert de port. Après avoir configuré la redirection de port, vous serez en mesure de charger votre page Web Arduino à partir d’un appareil connecté à Internet et externe à votre propre réseau.
Connecter arduino uno au pc
from time import sleepL’étape suivante consiste à créer un objet appelé board qui sera la connexion de notre Pi à l’Arduino. Pour cela, nous devons utiliser les informations sur le périphérique USB provenant de dmesg . Dans notre cas, notre Arduino était sur ttyUSB0. board = Arduino(‘/dev/ttyUSB0’)Une variable appelée led est utilisée pour stocker le numéro de broche de l’Arduino. Vous la créez en ajoutant la ligne:led = 12À l’intérieur d’une boucle while True, nous pouvons écrire le code qui allumera et éteindra la LED toutes les 0,2 secondes. Nous allons appeler l’objet board, avec une classe pour contrôler le pin numériquement (0,1) et ensuite écrire 1 au pin pour l’allumer. Notez que nous utilisons la variable led pour identifier le pin. Ensuite, nous dormons pendant 0,2 secondes, avant d’éteindre la broche et de dormir à nouveau. while True :
sleep(0.2)Sauvegardez le code et exécutez-le depuis votre éditeur (IDLE Run > Run Module/Thonny Run > Run Current Script). Après quelques secondes, la LED connectée à l’Arduino clignotera, prouvant que la connexion fonctionne. Le script python final devrait ressembler à ceci:from pyfirmata import Arduino, util
Premiers pas avec Arduino
Plutôt que de se battre avec les broches d’E/S non protégées du Raspberry Pi et le manque de performances en temps réel sous Linux, la configuration idéale pour de nombreux projets d’interface avec le monde réel est Raspberry Pi + Arduino.
Après avoir évalué une multitude de combinaisons de cartes microcontrôleur et d’adaptateurs Wifi, j’ai trouvé que le Raspberry Pi + USB Wifi + Arduino est le meilleur rapport qualité-prix absolu si vous avez besoin à la fois d’un accès Internet sans fil et d’une manipulation facile des données des capteurs. (Note : Je vais bientôt étudier le Beaglebone Black pour voir comment il se compare).
Les étapes de base sont identiques à celles décrites ici. En termes de matériel Vous connectez les broches 3.3V/GND/TX/RX sur le Raspberry Pi via un convertisseur de niveau aux broches 5V/GND/RX/TX sur un Arduino. Vous pouvez également acheter un Arduino 3.3V et éviter le besoin d’un convertisseur de niveau. J’ai alimenté l’Arduino séparément pour éviter de surcharger les broches du RPi (cela semble causer des problèmes intermittents avec le démarrage du RPi).
Malheureusement, ce n’est toujours pas suffisant pour pouvoir programmer l’Arduino à partir de l’IDE fonctionnant sur la RPi. Nous devons être en mesure de basculer la broche de réinitialisation sur l’Arduino pour lancer la programmation. Normalement, cela est fait par les adaptateurs USB-Série ou la puce USB-Série sur les Arduinos les plus chers. Pour faire cela dans notre configuration, il faut suivre les instructions ici où l’un des outils Arduino est enveloppé dans un script qui fait basculer la broche au bon moment. En résumé :