Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
1 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
ACCUEIL
ARDUINO
> S'installer
> Dbuter
> Approfondir
> Tous les programmes
> ATELIERS ARDUINO
Rfrence
Gnrateur de Code
Vidos
Mini-PC embarqus
> pcDuino ****
> RaspberryPi **
> Cubieboard 2 **
> Librairie Pyduino
> ATELIERS PYDUINO
Webapps
> ATELIERS WEBAPPS
Python
> Shell
> PyQt+Arduino
> PyQt apps
> PyQt Lab'
> ATELIERS Python + Qt
IMPRESSION 3D
> Imprimantes Reprap
> ATELIERS I3D
PROCESSING
MATERIEL
OUTILS
TESTS
Plus...
VIDEOS
COMPRENDRE
REFERENCES
CODER
TECHNIQUE
GNU/LINUX
LIENS
Rien voir
Atelier Arduino et Robotique
de Ploemeur
Ma Boutique virtuelle
Toutes les pages
..
1. Prsentation
Ce programme permet de raliser 1000 mesures analogiques intervalle rgulier et d'enregistrer le rsultat dans une SD-Card : les
bases des applications de datalogging (enregistrement de donnes) sont ainsi poses !
Les donnes sont enregistres dans un fichier texte au format dit "CSV", les valeurs tant spares par un ;
Une fois de plus, toute la puissance du langage Arduino apparat ici : pour crire des donnes sur la
SD-Card, on utilise tout simplement l'instruction file.print() ou file.println(), tout comme on le ferait
pour afficher des messages dans le Terminal Srie !
Ensuite, on peut rutiliser ce graphique et les donnes sous toutes les formes de son choix. En rsum : on enregistre les donnes
avec la carte Arduino sur une SD-Card, on les rcupre dans un tableur, on fait tout ce qu'on veut avec ! Simple, souple : qui dit
mieux ?
Ce programme utilise les fonctionnalits suivantes :
Utilise la connexion srie vers le PC
Utilise le module Ethernet Arduino (uniquement pour le connecteur SD Card)
Ressources utiles associes ce programme :
La librairie Serial - pour les communications sries entre la carte Arduino et l'ordinateur ou d'autres composants
La librairie SD - pour utiliser une SD Card
2. Matriel Ncessaire
2.1 L'espace de dveloppement Arduino
... pour diter, compiler le programme et programmer la carte Arduino.
4/13/2015 12:14
2 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
3. Instructions de montage
La connexion srie vers le PC utilise les broches 0 et 1 (via le cble USB)
Le module Ethernet est enficher broche broche sur la carte Arduino
Connecter broche SCLK du module Ethernet sur la broche 13
Connecter broche MISO du module Ethernet sur la broche 12
Connecter broche MOSI du module Ethernet sur la broche 11
Connecter broche Select Ethernet du module Ethernet sur la broche 10
Connecter broche Select SD Card du module Ethernet sur la broche 4
Le module Ethernet est compatible avec la carte Mega via le connecteur ICSP
On connectera la rsistance variable sur la broche analogique 0.
4. Le circuit du montage
4/13/2015 12:14
3 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
5. Explication du programme
Ce programme initialise la SD Card et ouvre le rpertoire racine.
Ensuite, un fichier appel data.txt est cr et ouvert en criture
Une boucle ralise 1000 mesures analogiques
Les donnes sont crites dans la SD-CARD au fur et mesure.
Le droulement des oprations est affich dans un Terminal Srie
4/13/2015 12:14
4 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
Il faut alors rgler le dbit de communication sur la mme valeur que celle utilise par le programme avec lequel nous allons
programmer la carte Arduino :
6.3 Fonctionnement
Ouvrir le Terminal Srie : on obtient une srie de message tmoins du droulement des oprations.
4/13/2015 12:14
5 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
A partir de l, copier l'ensemble du fichier texte dans le presse-papier. Puis ouvrir le tableur de la suite open source Libre Office.
Faire "coller" : le fentre suivante s'ouvre :
Slectionner ; en tant que sparateur puis valider. Ensuite, on obtient les donnes dans le tableur sous la forme :
4/13/2015 12:14
6 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
A partir de l, on peut faire ce que l'on veut avec les donnes obtenues, et notamment crer un graphique. Voici par exemple le
graphique obtenu avec l'enregistrement de 1000 mesures analogiques en faisant varier la rsistance variable :
Ensuite, on peut rutiliser ce graphique et les donnes sous toutes les formes de son choix. En rsum : on enregistre les donnes
avec la carte Arduino sur une SD-Card, on les rcupre dans un tableur, on fait tout ce qu'on veut avec ! Simple, souple : qui dit
mieux ?
// --- Programme Arduino --// Trame de code gnre par le gnrateur de code Arduino
// du site www.mon-club-elec.fr
// Auteur du Programme : X. HINAULT - Tous droits rservs
// Programme crit le : 18/02/1012
4/13/2015 12:14
7 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
//
//
//
//
//
//
//
//
//
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
// ////////////////////
See the
// -------- Que fait ce programme ? --------/* Ce programme teste le stockage de valeurs issues
de mesures analogiques dans un fichier
sur carte mmoire micro-SD
Donnes au format CSV pour utilisation directe
dans un tableur OpenOffice. */
// --- Fonctionnalits utilises --// Utilise la connexion srie vers le PC
// Utilise la conversion analogique numrique 10 bits
// Utilise une carte mmoire micro-SD avec le module Ethernet Arduino
// Utilise une fonction permettant de connaitre la RAM restant disponible
// -------- Circuit raliser --------// La connexion srie vers le PC utilise les broches 0 et 1 (via le cble USB)
// Le module Ethernet est enficher broche broche sur la carte Arduino
// Connecter broche SCLK du module Ethernet sur la broche 13
// Connecter broche MISO du module Ethernet sur la broche 12
// Connecter broche MOSI du module Ethernet sur la broche 11
// Connecter broche Select Ethernet du module Ethernet sur la broche 10
// Connecter broche Select SD Card du module Ethernet sur la broche 4
// Le module Ethernet est compatible avec la carte Mega via le connecteur ICSP
// Broche 14 : Une rsistance variable de 10 KOhms
// /////////////////////////////// 1. Entte dclarative ///////////////////////
// A ce niveau sont dclares les librairies incluses, les constantes, les variables, les objets
utiles...
// --- Dclaration des constantes --// --- Inclusion des librairies --#include <SD.h> // cre automatiquement un objet racine SD reprsentant la carte mmoire SD
// --- Dclaration des constantes utiles --// --- Dclaration des constantes des broches E/S numriques --const int brocheSDCardSelect=4; // broche utilise pour slectionner la SD card
// --- Dclaration des constantes des broches analogiques --const int analog0= A0; // Constante pour la broche analogique 0
// --- Dclaration des variables globales --int mesure_brute=0;// Variable pour acquisition rsultat brut de conversion analogique numrique
float mesuref=0.0;// Variable pour calcul rsultat dcimal de conversion analogique numrique
int test; // Variable utilise pour tester valeur renvoye par fonctions SD Card
// --- Dclaration des objets utiles pour les fonctionnalits utilises ---
4/13/2015 12:14
8 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
/*
Sd2Card card; // cration d'un objet Sd2Card
SdVolume volume; // cration d'un objet SdVolume
SdFile root; // cration d'un objet SdFile pour le rpertoire racine
SdFile file; // cration d'un objet SdFile pour le fichier utilis
*/
File file; // objet file
File root; // objet root pour le rpertoire racine
// --- ici instructions excuter 1 seule fois au dmarrage du programme --// ------- Initialisation fonctionnalits utilises ------Serial.begin(115200); // initialise connexion srie 115200 bauds
// IMPORTANT : rgler le terminal ct PC avec la mme valeur de transmission
//---- initialise l'utilisation de la carte mmoire SD en mode SPI
pinMode(10, OUTPUT); // met la broche 10 (SS) en sortie (ncessaire avec module ethernet)
digitalWrite(10, HIGH); // mais dsactive le
4/13/2015 12:14
9 of 9
http://www.mon-club-elec.fr/pmwiki_mon_club_elec/pmwiki.php?n=MA...
} // fin else
while(1); // stoppe loop
} // fin de la fonction loop() - le programme recommence au dbut de la fonction loop sans fin
// ********************************************************************************
[Obtenir le Code]
View Edit Attributes History Attach Print Search - Page last modified on February 18, 2012, at 02:11 PM
4/13/2015 12:14