Logo Mon Club Elec

Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.

Le pcDuino est une plateforme de développement open source qui permet aux développeurs de créer des applications et des programmes pour leurs projets. Avec Pyduino, un langage de programmation Python spécialement conçu pour le pcDuino, il est possible d’ajouter des lignes à intervalle régulier dans un fichier texte. Dans cet article, nous allons vous expliquer comment ajouter une ligne à intervalle régulier dans un fichier texte en utilisant Pyduino.

Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.

Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.

Ce que l’on va faire ici

  • Dans ce code, je vous montre comment ajouter une ligne dans un fichier à intervalle régulier.
  • Une fois de plus, la simplicité est au rendez-vous : pas besoin de shield SD externe, les données vont être enregistrées dans un fichier du système. D’autre part, la fonction timer() de la librairie Pyduino permet d’implémenter simplement un appel régulier d’une fonction et les fonctions « temps réel » permettent un horodatage sans avoir besoin d’utiliser de librairie externe complé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
  • D’autre part, vérifier que le répertoire utilisé pour le stockage des données existe, à savoir ~/data/text/ (ici, le ~ symbolise le répertoire /home/user/). Si le répertoire n’existe pas, le créer graphiquement ou le faire avec la commande :
$ mkdir data/text/
  • Noter qu’il est également possible de le faire directement depuis le code Pyduino…

Schéma fonctionnel

  • Le code Pyduino lance écrit des données dans un fichier texte
Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.

Matériel nécessaire

Système

  • Le pcDuino
  • On pourra utiliser au choix le stockage en mémoire NAND interne (par défaut), ou bien sur une carte SD ou une clé USB. Le chemin sera à adapter en conséquence.

E/S

  • Pas utilisées.

Instructions de montage

  • Aucun montage.

Le montage à réaliser

  • Aucun montage

Le fichier *.yno

Copier/coller ce code dans l’IDE Pyduino

Le fichier *.py

Copier/coller ce code dans l’éditeur Geany :

#!/usr/bin/python
# -*- coding: utf-8 -*-

# exemple pyDuino – par X. HINAULT – www.mon-club-elec.fr
# Juin 2013 – Tous droits réservés – GPLv3
# voir : https://github.com/sensor56/pyDuino

# ecriture d’une ligne 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

        myFile=open(filepath,‘a’) # ouverture pour ajout de texte

        #– ajout de chaines au fichier
        myFile.write(str(compt)+« : »+nowdatetime()+« \n« ) # ecriture d’une ligne
        print (« ajout ligne : «  + str(compt)+« : »+nowdatetime()) # 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/WriteTimer.py

Utilisation

  • Réaliser le montage et connecter le clavier sur le port USB
  • Appuyer sur le bouton exécuter dans Geany
  • Une fenêtre de Terminal doit apparaître : une ligne s’affiche toutes les secondes correspondant à la ligne ajoutée au fichier.
Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.
  • On pourra à tout moment ouvrir le fichier pour voir son contenu :
Programmer le pcDuino : Pyduino : Fichier : Ajouter une ligne à intervalle régulier dans un fichier texte.

Discussion technique

  • Difficile de faire plus simple !
Noter cet article

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Archive Mon Club Elec

Articles populaires

Newsletter

Inscrivez-vous maintenant et bénéficiez d'un soutien continu pour réaliser vos travaux électriques en toute sécurité.