Outils pour utilisateurs

Outils du site


cours:picaxe1

Ceci est une ancienne révision du document !




Découverte de la programmation des objets (PICAXE)

Pour aller plus loin dans les activités de programmation, nous allons quitter Scratch et ses animations sur l'ordinateur pour la programmation d'objets domotiques grâce à Blockly pour Picaxe.

Compétence(s)

  • CT 1.2 Mesurer des grandeurs de manière directe ou indirecte.
  • CT 4.2 Appliquer les principes élémentaires de l’algorithmique et du codage à la résolution d’un problème simple.
  • CT 5.5 Modifier ou paramétrer le fonctionnement d’un objet communicant.

J’ai acquis la(les) compétence(s) si :

  • J'ai réussi à faire réagir les maquettes en fonction des instructions données
  • J'ai réussi à analyser l'environnement pour résoudre les problèmes posés

Dans cette activité, nous allons programmer des objets simples de la vie quotidienne, une sonnette, un clignotant, un interrupteur d'éclairage manuel et un automatique.

La domotique regroupe l'ensemble des techniques et technologies permettant d'automatiser, de programmer et de gérer les tâches de confort, de sécurité, de maintenance et plus généralement de services dans l'habitat individuel ou collectif.
Le mot est un néologisme, formé à partir du mot latin domus , (le domicile), et du suffixe -tique signifiant relatif à, que l'on retrouve dans électronique, électrotechnique, robotique et l'informatique.

Présentation de la maquette

Nous allons utiliser une carte programmable PICAXE AXE092 qui comporte un microcontrôleur PICAXE 08M2.

Toutes les broches d'un microcontrôleur ne sont pas équivalentes.

Il faut déterminer quel capteur (entrée) ou quel actionneurs (sortie) on peut lui connecter en fonction du type de l'information logique ou analogique.

C.0 C.1 C.2 C.3 C.4 C.5 Utilisation
X X X X Sortie numérique (SN)
X X X X X Entrée numérique (EN)
X Sortie analogique (SA)
X X X Entrée analogique (EA)

:

Br Ty Nom Utilisation
C.0 SN LED rouge Visualisation d'une information
C.1 SN LED jaune Visualisation d'une information
C.2 SN LED verte Visualisation d'une information
C.3 EN Bouton poussoir Demande d'une action
C.4 EA LDR Mesure de la lumière
  • Un bouton poussoir est activé si on appuie dessus, et il se désactive seul si on le relâche (ressort).
  • Un actionneur garde la dernière information reçue mais il ne peut pas “être lu” par le microcontrôleur.

L'application utilisée pour la programmation est Blockly pour Picaxe (voir l'utilisation si besoin). Un simulateur est disponible sur la même page si l'on ne dispose pas de la maquette réelle.

Configuration

  • Blockly : Il faut créer un nouveau projet et définir le PICAXE 08M2 (Paramètres - Type de PICAXE - 08M2).
  • Simulateur : Il faut charger la maquette Axe092 (Fichier - Ouvrir - Maquettes - Découverte - Axe092).

Exercices

Sur une feuille de copie ayant pour titre “Découverte de la programmation des objets”, vous devez pour les 4 exercices :

  • Indiquer leur nom (titre de chapitre)
  • Recopier le problème
  • Trouver et écrire l'algorithme
  • Le traduire en programme avec Blockly et coller la solution sur la feuille
  • Le tester (maquette ou simulateur) pour vérifier le fonctionnement et le corriger si besoin (algorithme et programme).
  • Faire voir le résultat au professeur qui vous remettra la solution imprimée à coller sur la feuille.

Il s'agit, en plus que d'apprendre à programmer, d'apprendre à travailler en autonomie et à augmenter seul ses compétences.

  • Vous devez utiliser vos cours dans votre classeur pour vous aider.
  • Essayer de faire les exercices sans lire les “Coups de pousse”. Ne les utiliser qu'en cas de difficulté.
  • Relisez-vous et contrôler votre montage et votre programme.
  • N'appeler le professeur que lorsque l'exercice est réussi ou pour de gros problèmes.
  • Faites bien attention à ce que vous venez de réaliser, cela rendra plus facile les exercices suivants ou vous rencontrerez les mêmes demandes.

====Exercice 1 : La sonnette lumineuse====

Coups de pousse |

  • Il faut une boucle “Répéter indéfiniment” (ou synonyme) pour que le programme n'ai pas de fin.
  • Il faut tester un/une capteur/entrée pour savoir si l'on doit allumer ou éteindre.
  • Il faut modifier un/une actionneur/sortie pour allumer ou éteindre.
  • Un signal électrique est dit à désactivé/0/bas s'il est absent/éteint/relâché et à activé/1/haut s'il est présent/allumé/appuyé.

{{:cours:soluce.jpg?20

Solution type |

ALGORITHME

Répéter indéfiniment
    Si bouton appuyé
        Allumer led rouge
    Sinon
        Éteindre led rouge

PROGRAMME

Repérez bien les indentations de l'algorithme et leur traduction dans le programme, les différentes catégories de blocs disponibles et leur couleur :

  • Sortie pour réaliser les actions
  • Entrée pour avoir des informations
  • Boucles pour les répétitions

++++ ====Exercice 2 : Le clignotant==== {{ :cours:clignotant.jpg?100

Coups de pousse |

  • Attention au nombre de clignotements. Il faut utiliser une variable pour faire un compteur.
  • Pour un compteur, il faut fixer sa valeur à 0 au début, ajouter 1 à chaque itération et s'arrêter de répéter à la valeur finale.
  • Pour voir les clignotements, il faut ralentir le fonctionnement du microprocesseur en fonction du temps désiré (attention clignoter = 1/2 allumé et 1/2 éteint).

====Exercice 3 : L'interrupteur==== {{ :cours:interrupteur.jpg?100

Coups de pousse |

  • D'une répétition du programme à l'autre, il faut se rappeler si la LED est allumée ou pas. Il faut donc le noter dans une variable.
  • Il faut 2 instructions conditionnelles, une pour un capteur et l'autre pour une variable.
  • Pour éviter que la led clignote, il faut faire attendre le programme jusqu'à ce que le bouton soit relâché (Attendre jusqu'à).

====Exercice 4 : L'interrupteur crépusculaire==== {{ :cours:crepuscule.jpg?100

Coups de pousse |

  • Une entrée analogique donne une valeur (nombre) compris entre 0 et 1023. Il faut donc utiliser un opérateur pour pouvoir la comparer. 0 correspond à la nuit noire et 1023 au plein soleil, il faut donc décider du niveau de lumière à partir duquel la LED doit s'allumer (100 par exemple).

++++

Pour aller plus loin

Pour vous entrainer à la maison sans avoir de maquette, vous pouvez utiliser le simulateur disponible ici.

cours/picaxe1.1710062449.txt.gz · Dernière modification: 2024/03/10 10:20 de mrcjl