Python/Arduino Serial Controller : Maison haut fourneau (5 / 8 étapes)

Étape 5: Collecte de données et interfaces

* Notez que les fichiers du logiciel ici sont divisées en sections individuelles.

L’interface est une couche de code python qui agit au-dessus du protocole de contrôle en série. Le contrôle série autorisé par le premier logiciel de protocole série de couche et le firmware est beaucoup plus flexible qu’on aurait besoin pour ce projet : J’ai commencé à écrire le python code pour permettre un programme s’exécute sur le PC, en utilisant les ressources informatiques d’un CPU, d’interagir avec le monde extérieur. Avec le code tel qu’il figure à l’étape 1, le PC peut contrôler toutes les quilles numériques, PWM, par le biais de la commande analogWrite() et prendre les données analogiques hors A0 (ou des broches analogiques avec modification du firmware). En outre, le firmware peut être mis à jour pour exécuter n’importe quel segment de code Arduino C simple en ajoutant un bloc de cas/pause supplémentaire au bloc interrupteur général. Par conséquent, il est possible de changer la structure de I/O à la volée (via l’ajout d’un bloc de cas/pause contenant une déclaration de pinMode()), ou ajouter un certain nombre de fonctionnalités utiles. J’ai choisi de garder le firmware relativement simple pour ce projet, soutenant seulement les commandes de base, parce que je savais que je n'aurais pas besoin d’accéder à des fonctions supérieures au cours de la fournaise s’exécute.

En outre, pour rendre la couche supérieure de codage plus lisible, j’ai ajouté un ensemble de fonctions qui encapsulé toutes les fonctions d’e/s spécifiques à ce projet, tels que fanOn() et fanOff() pour le fan de contrôle, permettent au code de GUI exécuter sans avoir directement appeler les programmes de contrôle en série. Cela a permis des tests indépendants des codes d’encapsulation (c.-à-d., j’ai pu tester fanOff(), et une fois que cela a fonctionné, je n’ai pas à vous soucier des problèmes de coordination quand je l’ai appelé depuis le logiciel GUI).

La collecte des données thermocouple n’est pas différente des mécanismes de contrôle : il utilise une fonction d’encapsulation pour recueillir des données analogRead() et sauvegarder les données (pour l’affichage graphique analyse et on-the-fly plus tard). La fonction de capture de données de thermocouple encapsule également les fonctions de collecte de données, afin que les données sont enregistrées et l’enregistrement de l’exécution est mis à jour chaque fois qu’une mesure est prise.

Le GUI est activée par le logiciel graphique de Zelle, un paquet de graphique facile à utiliser, faible consommation pour python. J’ai choisi le paquet Zelle sur python plus sophistiqué des options graphiques pour sa facilité d’utilisation et les besoins en ressources système relativement faible. Le GUI est configuré comme une boucle while() maître, dont la fenêtre est périodiquement interrogée avec checkMouse(), permettant au programme effectuer des actions autonomes (par exemple, lire de temps en temps le thermocouple) en attendant l’entrée d’utilisateur. La fenêtre affiche également le graphique dans le temps de l’ensemble du tirage de données de thermocouple, qui sont mis à jour chaque fois qu’une nouvelle lecture est prise.

À la fin d’une course, le record de la course est enregistré dans un fichier texte par une procédure de file.write simple python. Tout au long de la course, chaque fois qu’une mesure est prise, les statistiques pour ce moment particulier : le temps au cours de laquelle l’enregistrement est effectué, le thermocouple lire, fan État, état d’alimentation en oxygène et nombre d’ajouts de carburant, sont ajoutés à une liste. Lorsque les données en fonction d’économie sont appelées, cette liste est écrite dans un fichier texte pour que la course peut être davantage analysée plus tard.

Articles Liés

Arduino Stick controller

Arduino Stick controller

Dans ce projet je vous aidera à mettre sur pied un simple et de gratter Arduino Stick controller, pour contrôler vos projets (servos et moteurs à courant continu). C'est un guide simple pour aider les nouveaux utilisateurs de Arduino sur leurs projet
Tiré de barbecue de porc fumé à l’intérieur sur un fumeur de haut fourneau

Tiré de barbecue de porc fumé à l’intérieur sur un fumeur de haut fourneau

ni pluie, ni neige ou grésil vous empêchera de profiter de tous vos préférés plats BBQ fumés quand on sait combien il est facile de fumer leur droit sur votre cuisinière intérieure. L'environnement contrôlé sur votre gaz ou la cuisinière électrique c
Comment utiliser l’ARDUINO SERIAL MONITOR

Comment utiliser l’ARDUINO SERIAL MONITOR

L'IDE Arduino possède une fonctionnalité qui peut être une grande aide au débogage des croquis ou commander Arduino du clavier de votre ordinateur.Le Serial Monitor est une fenêtre distincte qui agit comme un terminal distinct qui communique en recev
Arduino Serial commande conduit

Arduino Serial commande conduit

Source : http://www.theorycircuit.com/arduino-serial-command-led/Dans ce projet, nous avons utilisé arduino serial monitor de commander la LED on/off et de connaître l'état de l'état des LEDs. À l'aide de simple mesure mettre codes affaire / alpha to
Arduino IR Automarion maison

Arduino IR Automarion maison

Télécommande IR est qu'un Controller est une manette sans fil en quelques électronique tels que TV, lecteur DVD et autres appareils ménagers.Télécommande IR envoyer des impulsions codées numériquement du rayonnement infrarouge pour contrôler les fonc
Maître de l’accordéon - un synthétiseur de musique python/arduino

Maître de l’accordéon - un synthétiseur de musique python/arduino

Ce projet a été créé par une équipe de trois étudiants de l'Université de Pennsylvanie à MHacks 2014 Detroit (un week-end Hackathon). L'objectif de ce projet est de créer un synthétiseur de musique qui génère des signaux basé sur les gestes de l'util
Python + Arduino, CarControl v.03

Python + Arduino, CarControl v.03

avez-vous déjà acheté quelque chose juste pour démonter ? J'ai acheté cette voiture télécommandée dans l'espoir de conduire de mon ordinateur. J'ai utilisé Python, une carte Arduino et environ 300 lignes de code. M'a fallu quelques heures de travail
Intel Edison Arduino serial pour communication série de processus hôte

Intel Edison Arduino serial pour communication série de processus hôte

L'évasion de Intel Edison Arduino est un mini-ordinateur basé sur linux qui peut être programmé à l'aide de l'IDE Arduino et le cadre. Il peut également être utilisé comme n'importe quel autre système Linux en C/C++, Python, node.js et beaucoup d'aut
Raspberry Pi - Arduino Serial Communication

Raspberry Pi - Arduino Serial Communication

Dans ce projet, nous allons faire une communication entre Arduino et Raspberry Pi qui transfèrent des informations vitales en envoyant des données un bit à la fois.Communication série est essentielles pour chaque Micro-controleurs communiquer entre d
Servant d’Arduino UNO 3-CH haute résolution DACs

Servant d’Arduino UNO 3-CH haute résolution DACs

Dans cette application, nous donnerons une démonstration sur la façon de construire une alimentation de haute précision utilisant le DAC-3000 et une source de référence de haute précision REF4096.Step1:List de matérieladresse de magasin eBay :BUONO U
Arduino MIDI Controller

Arduino MIDI Controller

Un contrôleur MIDI est toute pièce d'équipement qui génère et transmet les données MIDI aux périphériques compatibles MIDI. En bref, si vous avez des boutons de votre contrôleur MIDI, vous pouvez programmer ces boutons à n'importe quel son que vous s
Transformateur d’impulsion de maison haute tension vidéo

Transformateur d’impulsion de maison haute tension vidéo

j'ai fait cela par enroulement beaucoup de 40SWG fil autour d'un tube de PVC et ensuite le couvrant de ruban isolant. J'ai ensuite utilisé certains câble 2,5 mm 2 maison comme une bobine primaire et pulsé 1.2kV DC à l'aide d'un de ces portables bug z
Différentes façons de concevoir votre maison à haut rendement énergétique

Différentes façons de concevoir votre maison à haut rendement énergétique

ce n'est pas exactement une Instructable sur la façon de mettre en place l'isolation, mais quand j'ai décidé de construire ma maison et faire autant de lui que je pourrais en Solo ce sont quelques-unes des mesures que j'ai fait garder mon chauffage u
Fil d’EL - Arduino Mini Controller Module 6 canaux de relais Pro -

Fil d’EL - Arduino Mini Controller Module 6 canaux de relais Pro -

La recherche dans d'autres Instructables, j'ai trouvé plusieurs façons de contrôler EL fil avec arduino, mais pas tous ont été comme je le voulais, alors j'ai décidé de créer ma propre version, peut-être n'est pas parfaite, mais fonctionne.Ce Module