Formation Microcontrôleur

Formation Microcontrôleur (µC) sur plateforme de développement

ARDUINO

Préambule:

Après l’avènement des tubes, l’histoire de l’électronique a été marquée par l’invention du transistor, suivie par la création des circuits intégrés. L’évolution a pris un tournant important avec l’apparition des microcontrôleurs (µC) véritables circuits « intelligents » à haute intégration. Le premier microprocesseur est apparu en 1974 !

Aujourd’hui, le microcontrôleur s’incruste partout dans tous les dispositifs électriques et électroniques: électroménager, automobile, outillage électrique, domotique, et bien évidemment multimédia et télécommunications. Maîtriser son fonctionnement, apporte un concept novateur, et programmable sur mesure, qui décuple les performances des applications et montages électroniques conventionnels. Aujourd’hui, ignorer le microcontrôleur, c’était ignorer hier le transistor lors de sa commercialisation, et sa prodigieuse ascension qui a révolutionné le monde de l’électronique.

Pré requis:

La programmation d’un µC est essentiellement destinée à commander toutes sortes de dispositifs, et cette finalité nécessite des connaissances élémentaires d’électronique (théoriques et pratiques). Le µC qui exécute les instructions de son programme, est nécessairement relié aux circuits périphériques qui transmettent les informations d’entrée sortie.  Ces circuits font appel à l’électronique analogique, et numérique dont il faut posséder un minimum de connaissances pour pouvoir développer une application concrète.

Electronique analogique:

Électrotechnique, courant continu et alternatif, semi-conducteurs, amplification, capteurs, commutation, optoélectronique, etc.

Electronique numérique:

Les portes logiques de base, codage, logique combinatoire, bascules, registres, compteurs, codeur décodeur, afficheur etc.

Informatique élémentaire:

Navigation dans les menus, organisation et manipulations des fichiers, type et extension de fichiers, décompactage, installation de programmes, sauvegarde, et notions sur la transmission de données, seront aussi utiles pour aborder le µC.

PS: Les membres du Radio club qui suivent régulièrement les cours d’électronique, possèdent normalement toutes ces connaissances élémentaires enseignées depuis 2004.

Choix de la plateforme de développement:

Le choix a été guidé par le matériel, le logiciel, le prix, la performance, la disponibilité, et la documentation. Aujourd’hui, il existe une multitude de cartes de développement, et le choix s’est porté sur la très populaire platine Arduino qui remporte un succès toujours croissant. Pour moins de 28 Euros, (prix moyen d’un ouvrage d’électronique) nous disposons d’une carte de développement complète, auto alimentée par sa liaison USB, permettant par la même voie, de transférer le programme dans le µC. Côté logiciel, tout y est: éditeur, compilateur, débogeur, et programmateur sans supplément de prix ! La documentation reste toujours un élément capital, car sans cette dernière rien n’est possible ! Après de nombreuses recherches, nous avons trouvé un site web inégalé par la richesse de son contenu sur le sujet, le tout traduit dans la langue de Molière, avec en prime le logiciel Arduino francisé ! Voir les différents liens plus loin.

Lieu, jour et horaire de formation:

Cette formation µC, assurée par notre expert, sera dispensée mensuellement dans la salle mise à disposition du Radio club, à Gondreville 2 rue de la croix Ste Anne, le 1er samedi du mois de 14 à 18h 00 sauf juillet / août. Le jour de formation pourra être décalé d’une semaine, ou plus, en fonction des contraintes imprévues du formateur, et des animations déjà programmées. Chaque séance de formation est confirmée par E-mail dans la semaine en cours, aussi, avant de se déplacer au Radio Club, les élèves devront consulter leur messagerie en matinée du jour prévu, pour vérifier une éventuelle contrainte de dernière heure.

Comme pour les cours d’électronique engagés maintenant depuis 2004, la formation est gratuite pour tout membre adhérent du Radio club F8KGZ ou du RCN-EG (Radio club National EDF).

La formation µC a débuté le samedi 4 Septembre 2010, salle du Radio club à Gondreville

Equipement matériel nécessaire:

Un ordinateur personnel, de bureau ou portable, pour l’apprentissage à la maison entre les séances de formation.

Pour les cours, le PC portable est conseillé, avec système d’exploitation Windows XP ou supérieur, et port USB disponible.

Ce matériel qui constitue la pièce la plus onéreuse, équipe déjà une très forte majorité de radioamateurs. L’investissement pour accéder à la programmation du µC est donc très modeste, et reste à la portée de tous.

La platine de développement Arduino:

Les 2 modèles ci-dessous peuvent être employés, car ils utilisent le même langage de programmation.

La carte Arduino Duemilanove pour bien débuter. Prix environ 30 Euros (2010)

Les principales différences se situent au niveau des ports d’entrée sortie, mémoire disponible, et évidemment le prix.

Où se procurer les cartes Arduino ?

Les cartes Arduino sont distribuées par LEXTRONIC à l’adresse ci-dessous:

http://www.lextronic.fr/R2545-bases-arduino.html

Matériels périphériques:

Microcontrôleur: ATmega 328, alimenté sous 5V. Nombre d’entrées / sorties numériques: 14 dont 6 PWM. Nombre d’entées analogiques: 6. Mémoire flash: 32 Ko dont 2Ko utilisés par bootloader. Mémoire SRAM: 2 Ko. Mémoire EEPROM: 1 Ko. Horloge: 16 MHz.

(à acquérir en complément de la carte Arduino)

Câble USB standard A-B.

Plaque de câblage rapide constituant l’interface de sortie et d’utilisation. Exemple: modèle 1280 contacts. 220×150 mm.

Sachet de filerie adaptée pour le câblage rapide.

Outillage et instruments de base de l’électronicien: Multimètre, Alimentation de labo, sont les compléments souhaitables, ainsi que les composants d’entrée/sortie (capteurs simples, actionneurs, etc,

Carte Arduino MEGA aux performances supérieures, notamment au niveau du nombre d'entées / sorties. Prix: environ 60 Euros (2010)

suivant votre projet personnel).

Matériels disponibles dans les magasins spécialisés en électronique (Electronique diffusion, Conrad, etc.) ou lors du groupement d’achat de composants et matériel électronique proposé par le club.

Aucun programmateur n’est nécessaire, car le logiciel Arduino, intègre l’ensemble des fonctions nécessaires, comme mentionné en plus avant.

Documentation et support d’initiation à la programmation:

Microcontrôleur: ATmega 1280, alimenté sous 5V. Nombre d'entrées / sorties numériques: 54 dont 14 PWM. Nombre d'entées analogiques: 16. Mémoire flash: 128 Ko dont 4Ko utilisés par bootloader. Mémoire SRAM: 8 Ko. Mémoire EEPROM: 4 Ko. Horloge: 16 MHz.

Vous la trouverez sur le site incontournable de Xavier Hinault, qui a réalisé un excellent travail de traduction de la documentation de référence Arduino d’origine en anglais.

Sur le site personnel du créateur, www.mon-club-elec.fr vous trouverez une intéressante collection d’études et réalisations conçues par l’auteur, et aurez aussi un accès direct au site Arduino en Français indiqué ci dessous:

http://www.mon-club-elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.Reference

Pour accéder rapidement au site Arduino depuis le moteur de recherche Google:

Dans le champ requête, tapez simplement : « arduino francais » sans oublier les guillemets !

Le site Référence Arduino Français figure dans les premières lignes de la liste.

Pour compléter votre documentation, vous trouverez ici un livret de bonne présentation pédagogique, concernant l’initiation à la mise en œuvre matérielle et logicielle de l’Arduino. Document de 37 pages au format PDF, prêt à imprimer.

http://www.craslab.org/interaction/files/LivretArduinoCRAS.pdf

En complément, nous vous conseillons l’ouvrage ci dessous:

ELECTRONIQUE ET PROGRAMMATION POUR DEBUTANTS : de M. OHSMANN.

Publié aux éditions Publitronic, cet ouvrage est malheureusement épuisé mais vous le trouverez encore en occasion à moindre prix sur le web. Cet ouvrage de 150 pages, fait le tour des connaissances élémentaires pour aborder l’univers des microcontrôleurs. Expliquées, de façon claire et compréhensibles par tous, elles constituent un atout dans votre documentation.

Le contenu du livre, passe en revue les généralités élémentaires d’électronique numérique, les entrailles d’un microprocesseur, ce qu’il faut savoir sur la programmation, la représentation des nombres, et les outils de programmation et mise au point. Un tour d’horizon bien présenté à la sauce d’Elektor.

Les élèves du groupe Arduino bénéficient du fascicule « référence minimale du langage Arduino en français » repris sur le site de Xavier Hinault, et repaginé pour tenir dans un document de 16 pages, utilisé pour les débuts de la formation µC.

Plan de formation, progression:

L’objectif de cette formation est de maîtriser le langage de programmation dans des applications concrètes. Nous prendrons le temps nécessaire pour bien comprendre ce que l’on fait, et ne pas apprendre « par cœur » sans savoir ce qui se passe du coté « matériel ». Ainsi, la durée de la formation µC est indéterminée, comme celle de la formation électronique.

Les premières séances de formation sont consacrées à l’installation du logiciel Arduino sur les ordinateurs personnels des élèves, puis présentation de la platine de développement et de son microcontrôleur Atmel.

Initiation à la programmation avec l’étude de projets ultra simples (exemple: clignotement d’une Led, temporisation, etc.)

Ensuite, perfectionnement de la programmation avec l’étude de projets plus étoffés, puis étude de projets personnels.

Les thèmes spécifiques seront abordés en cours d’étude, au moment opportun, en ce qui concerne les « périphériques » liés à la programmation (vocabulaire technique, instructions, structure d’un programme, syntaxe, les routines, mémoires, signaux d’horloge, registres, ports d’entrée sortie, convertisseur CAN et CNA, etc.)

Pour bien se préparer

Dans un 1er temps, rassemblez la documentation, et imprimez ce qui vous semble nécessaire. Le classeur à 4 anneaux de format A4 est le mieux adapté pour classer votre documentation et permet aussi d’y insérer vos notes personnelles lors des cours.

Téléchargez le logiciel Arduino francisé disponible sur le site de Xavier Hinault, puis installez le sur votre PC. Suivez les détails d’installation dans le menu « pour débuter » puis instructions pas à pas. Si vous devez travailler sous windows 7, contactez le formateur pour l’installation du pilote USB du port série virtuel.

En possession de votre carte Arduino et du câble USB, testez la communication avec la carte comme expliqué dans la documentation. Dans l’exemple « digital \ blink », modifiez les temporisations « dalay », et vérifiez l’action sur la Led de test implantée sur la platine Arduino.

Attention ! Aucun objet métallique ne doit toucher la carte Arduino. Pour éviter tout court circuit, et une détérioration irréversible de la carte, fixez cette dernière sur une plaquette isolante (bois, plastique, ou dans un petit coffret transparent.)

Vous pourrez aussi commencer à écrire votre 1er petit programme en vous inspirant des nombreux exemples fournis avec le logiciel, façon de se faire la main, pour bien débuter la formation. Si vous ne parvenez pas à installer le logiciel, et dialoguer avec la carte, pas de panique… la résolution du problème interviendra lors de la formation.

PS: Comme pour les cours d’électronique, si vous « prenez le train en marche », il ne sera pas possible de reprendre la formation au début.