Le pcDuino est un système informatique à carte unique qui offre une puissance de traitement et une connectivité sans précédent. Il est capable de gérer des tâches complexes et de fournir des résultats précis et fiables. Dans cet article, nous allons vous montrer comment programmer le pcDuino pour enregistrer une mesure analogique dans un fichier texte à intervalle régulier. Nous expliquerons les étapes à suivre pour configurer le pcDuino et le logiciel nécessaire pour effectuer cette tâche. Nous verrons également comment analyser les données enregistrées et comment les utiliser pour prendre des décisions.
Programmer le pcDuino : Fichiers : Enregistrer une mesure analogique dans un fichier texte à intervalle régulier.
Ce que l’on va faire ici
- Dans ce code, je vous montre comment enregistrer une mesure analogique dans un fichier texte en ajoutant une ligne à intervalle régulier. Ici, nous utilisons une simple résistance variable pour symboliser un capteur analogique qui pourra être de toute sorte.
- Ce code pose les bases de l’enregistrement de données (datalogging) !
- Par comparaison avec Arduino :
- pas besoin de shield à carte SD : votre mini-PC intégre déjà un système de fichier utilisable !
- le nom du fichier n’est pas obligatoirement de type 8.3 ce qui autorise un nommage horodaté du fichier
- vous pouvez lire le fichier directement sur le mini-PC via l’accès VNC, toujours sans shield supplémentaire !
Pré-requis
- un mini-PC (pcDuino conseillé) avec système Lubuntu opérationnel. Voir si besoin la page d’accueil du pcDuino
- Langage Python (2.7) et l’IDE Pyduino ou l’éditeur Geany installés. Voir si besoin : Logiciel pour développer avec Pyduino
- ma librairie pyDuino installée : voir si besoin : Télécharger et installer Pyduino sur le pcDuino
Schéma fonctionnel
- On utilise ici une entrée analogique et l’écriture dans le fichier texte.
Matériel nécessaire
Système
- Le pcDuino seul
- +/- une clé USB ou une carte SD si on souhaite enregistrer les données sur un support externe.
E/S
- une plaque d’essai pour montage sans soudures,

- des straps,

- une résistance variable,

Instructions de montage
- Connecter la sortie variable de la résistance variable à la broche A2, la deux autres broches de la résistance variable étant connectées entre le 0V et le 3.3V.
Le montage à réaliser
Le fichier *.py
Copier/coller ce code dans l’éditeur Geany :
# -*- coding: utf-8 -*-
# exemple pyDuino – par X. HINAULT – www.mon-club-elec.fr
# Juillet 2013 – Tous droits réservés – GPLv3
# voir : https://github.com/sensor56/pyDuino
# enregistrer une mesure analogique dans un fichier a intervalle regulier
from pyduino import * # importe les fonctions Arduino pour Python
# entete declarative
noLoop=True
compt=0 # compteur
filepath=« »
#— setup —
def setup():
global filepath
myDataPath=(« data/text/ »)
path=homePath()+myDataPath # chemin du répertoire à utiliser
filename=« data »+today()+« .txt » # nom du fichier
filepath=path+filename # chemin du fichier
print filepath
if exists(filepath):
print « Le fichier existe »
else :
print « Le fichier n’existe pas : creation du fichier »
myFile=open(filepath,‘w’) # création du fichier
myFile.close()
loop() # premier appel loop
# — fin setup —
# — loop —
def loop():
global filepath, compt
#mesure analogique
mesure=analogRead(A2) # mesure sur voie A2
mesuremV=analogReadmV(A2) # mesure en Mv sur voie A2
myFile=open(filepath,‘a’) # ouverture pour ajout de texte
#– ajout de chaines au fichier
out=(str(compt)+« : »+nowdatetime()+« : « + str(mesure)
+ » soit « + str(mesuremV) + » millivolts. »)
myFile.write(out+« \n« ) # ecriture d’une ligne
print (« ajout ligne : « + out) # message console
myFile.close() # fermeture du fichier en ecriture
compt=compt+1 # incrémente compteur
timer(1000, loop) # auto appel de loop toutes les secondes
# NB : ouvrir le fichier dans l’editeur pour verifier son contenu
# — fin loop —
#— obligatoire pour lancement du code —
if __name__==« __main__ »: # pour rendre le code executable
setup() # appelle la fonction main
while not noLoop: loop() # appelle fonction loop sans fin
Ce code est également disponible ici : https://raw.github.com/sensor56/pyduino-exemples/master/SD/WriteTimerAnalogRead.py
Utilisation
- Vérifier au préalable que le répertoire utilisé existe sur le système et le créer graphiquement au besoin.
- Appuyer sur le bouton exécuter dans Geany
- Une fenêtre de Terminal vide doit apparaître : lors d’un appui sur le bouton poussoir, un message indique qu’une ligne est ajoutée dans le fichier texte :

- On peut fermer ou non le programme et ouvrir le fichier texte séparément à partir de Geany ou autres éditeur de texte, voire même du navigateur et constater que le fichier contient bien les lignes ajoutées.

- Simple et efficace.
Discussion technique
- En pratique, il sera préférable de formater la ligne pour un usage simplifié en séparant les éléments utiles par des , simples et saut de ligne de fin de ligne. De cette façon, le fichier sera directement utilisable avec un tableur par exemple.
- D’autre part, on pourra préférer enregistrer les données sur une clé USB ou sur une carte SD plutôt que dans le mémoire NAND système si les quantités de données peuvent être importantes.
Articles similaires:
- Programmer le pcDuino : Fichiers : Enregistrer une mesure analogique dans un fichier texte à intervalle régulier. – compatible Dygraphs
- Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.
- Programmer le pcDuino : Fichiers : Enregistrer une mesure analogique dans un fichier texte à intervalle régulier avec journalisation automatique des données – compatible Dygraphs
- Programmer le pcDuino : Fichiers : L’appui sur un BP ajoute une ligne dans un fichier texte.
- Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne de donnée horodatée à intervalle régulier dans un fichier texte, pendant une durée voulue.
Articles Liés
- Javascript : Graphique Dygraphs simple
Le Javascript est un langage de programmation très populaire et puissant qui permet aux développeurs…
- Javascript : Afficher 6 widgets graphiques fournis par une librairie graphique externe.
Le Javascript est un langage de programmation très populaire qui permet aux développeurs de créer…
- Javascript : Graphique Dygraphs : afficher date à partir unixtime
Le langage de programmation Javascript est très populaire et est utilisé pour créer des applications…