Ceci est une ancienne révision du document !
Cours - 4ème - CI5_programmation - La programmation [TH]
Nous avons déjà découvert la programmation les années précédentes à travers SCRATCH et Arduino. Nous savons qu'il faut trouver l'algorithme (la solution) à mettre en œuvre avant de commencer à programmer.
Cette année nous allons utiliser mBloc, un dérivé de Scratch, permettant la programmation de carte Arduino en mode graphique. Après un rappel sur la programmation et Arduino, nous nous intéresserons à la programmation des déplacement d'un robot comportant 2 moteurs.
Un algorithme est une méthode générale pour atteindre la solution d'un problèmes. C'est une suite finie et non ambigüe d’opérations permettant de le résoudre. Il est exprimé en langage naturel (français) et en respectant certaines règles comme les indentations et les pseudo instructions.
Un programme informatique est un ensemble d'opérations destinées à être exécutées par un ordinateur. C'est la traduction de l'algorithme.
Il n'existe qu'un langage (le code machine) compréhensible par l'ordinateur. Il faut donc un interpréteur (traduction ligne par ligne) ou un compilateur (traduction en 1 seule fois) pour passer du langage de programmation au code machine.
Un bloc peut correspondre à une ou plusieurs instructions. De plus, le nombre de capteurs et d'actionneurs disponibles étant considérable, il n'est pas possible de regrouper tous les blocs en un seul lieu.
Avant de commencer à programmer, il peut être nécessaire de définir les bibliothèques (ou croquis) à utiliser. Nous utiliserons principalement les bibliothèques “Arduino” et …
La plupart des blocs nécessitent de définir les broches sur lesquelles sont connectés les composants (capteur ou actionneur) puis l'action à effectuer (activer/vrai = 1, désactiver/faux = 0). Une liste des entrées/sorties utilisées et des composants qui leur sont connectés est nécessaire.
Les broches utilisées sont :
L'algorithme et le programme sont :
FAIRE éteindre la led verte
FAIRE éteindre la led orange
FAIRE éteindre la led rouge
RÉPÉTER indéfiniment
SI l'inverseur est sur clignotant
FAIRE allumer la led orange
ATTENDRE 0.5 seconde
FAIRE éteindre la led orange
ATTENDRE 0.5 seconde
SINON
FAIRE allumer la led verte
ATTENDRE 3 seconde
FAIRE éteindre la led verte
FAIRE allumer la led orange
ATTENDRE 0.5 seconde
FAIRE éteindre la led orange
FAIRE allumer la led rouge
ATTENDRE 3 seconde
FAIRE éteindre la led rouge
Programmer un objet n'est pas plus difficile que programmer un jeu. Il faut seulement faire preuve de plus de rigueur car une erreur de programmation peut être plus grave que sur un ordinateur et endommager l'objet ou pire, blesser l'utilisateur.