Aperçu des sections

    • Ce THEMA informatique propose un apprentissage de l'informatique par problèmes sur environ 58h réparties tout au long de l'année en séances de 3 heures.

      Deux objectifs sont visés :

      • L'apprentissage de l'utilisation et la programmation des cartes ARDUINO en utilisant le langage C++
      • l'apprentissage du langage Python en utilisant des IDE conventionnelles ou le mode Jupyter notebbok qui permet de manipuler des cahiers IPython.

      Notions de base algorithmiques et compréhension de l'arborescence disque d'un ordinateur.


      Apprentissage par problèmes et projets, en classe entière.

      QCM, tests 'questions courtes / réponses courtes' et exam sur PC.

  • Architecture des systèmes informatiques

    Documents vus en TD ou à voir chez vous ...

  • Mon ordinateur portable pour le travail en THEMA-INFO

    Vous allez utiliser votre ordinateur portable pour les séances THEMA-Info et les autres activités du Bachelor...

  • Atelier ARDUINO / 1re partie : découverte de l'ARDUINO

    Présentation du kit ARDUINO

    Le kit ARDUINO comprend tous les composants permettant de réaliser des expériences de base avec un micro-contrôleur de la famille ARDUINO :

    • allumage/extinction de LEDs avec les entrée/sorties numériques,
    • acquisition de tensions analogiques (capteur de température, photo-résistances, potentiomètre...),
    • sortie PMW (Pulse Width Modulation) pour piloter la luminosité d'une LED, un servomoteur....

    Le site officiel d'ARDUINO est ici

    Objectifs de l'atelier ARDUINO - 01

    1. Savoir utiliser l'ARDUINO et sa plaque d'expérimentation (breadboard) pour réaliser des montages utilisant des capteurs et des actionneurs.


    2. Vous familiariser avec :
      • le concept des micro-contrôleur (ARDUINO UNO dans notre cas),
      • la programmation C/C++

    3. Réaliser le travail de câblage et de programmation demandé dans l'Atelier ARDUINO-01 / 2e partie qui constituera votre premier jalon.

    Ressources à utiliser impérativement


    Pour réaliser les objectifs, vous disposez des ressources suivantes :

    • Télécharger l'IDE ARDUINO (IDE : Integrated Development Environement, environnement de développement intégré en français) sur la page https://www.arduino.cc/en/Main/Software
    • Lire le tutoriel L'univers Arduino disponible sur le site developpez.com (en ligne HTML  ou à télécharger  PDF).
      Ce document d'initiation au micro-contrôleur ARDUINO et  à la programmation est à lire en en premier pour une introduction sur les aspects matériel ou logiciels.

    • Le "livre de projets ARDUINO" du starter-kit :

      • montre comment monter le micro-contrôleur avec sa plaque d'expérimentation,
      • explique le téléchargement, l'installation et l'utilisation de l'environnement de développement,
      • donne des informations sur l'utilisation des composants électroniques (LED, bouton poussoir, résistances...),
      • décrit différentes expériences à réaliser (schéma électrique, câblage, programmation...).

    Autres ressources

  • Atelier ARDUINO / 2e partie : Piloter un servo-moteur avec un bouton poussoir

    Description

    Ce jalon doit vous permettre de vérifier que vous êtes capables :

    • de comprendre le schéma électronique du pilotage d'un servomoteur par ARDUINO,
    • de comprendre l'algorithme (vu en séance) décrivant le pilotage d'un servomoteur avec de 2 boutons poussoir,
    • de réaliser le programme C/C++ correspondant en utilisant l'environnement de développement ARDUINO.

    Fonctionnement attendu

    • On démarre avec le servomoteur à la position 90°.
    • Un appui sur le bouton poussoir "+" permet de faire tourner le servomoteur en augmentant l'angle et d'allumer la LED "+" .
      Tant qu'on laisse le bouton appuyé sur le bouton poussoir "+", la LED "+" reste allumée, et l'angle augmente, jusq'à 180 degrés au maximum. Lorsqu'on relâche le bouton poussoir "+", la LED "+" s'éteint et le servomoteur arrête de tourner.
    • Un appui sur le bouton poussoir "-" permet de faire tourner le servomoteur en diminuant l'angle et d'allumer la LED "-" .
      Tant qu'on laisse le bouton appuyé sur le bouton poussoir "-", la LED "-" reste allumée et l'angle diminue, jusqu'à 0 degrés au minimum. Lorsqu'on relâche le bouton poussoir "-", la LED "-" s'éteint et le servomoteur arrête de tourner.
    • Si on appuie sur les 2 boutons en même temps, le servomoteur prend la position 90 degrés et les 2 LEDs s'allument tant que les 2 boutons poussires sont appuyés.

    Schéma électrique et maquettage ARDUINO

    (vus en séance THEMA-Info)
    pilotage servomoteur


    L'algorithme et le programme C++ sont vus en séance THEMA-Info.

  • Atelier ARDUINO - Un bouton poussoir, deux LEDs

    Objectifs :

    Comprendre comment concevoir et proghrammer un automatte à états finis.

    Cahier des charges :

    On dispose d'un automate comportant un bouton poussoir et deux LEDs (rouge et verte) pilotées par l'automate.

    Le fonctionnement attendu est le suivant:

    • à l'état initial, l'automate est à l'état WAIT :  la LED rouge est éteinte et la LED verte est allumée.
    • l'appui sur le bouton poussoir fait passer l'automate dans l'état START :  la LED rouge s'éteint, la LED verte se met à clignoter,
    • un nouvel appui sur le bouton poussoir fait passer l'automate de l'état START à l'état STOP : la LED rouge s'allume, la LED verte s'éteint,
    • les appuis successifs font passer successivement de l'état START et l'état STOP, et de l'état STOP et l'état START.

    Diagramme des états

    Le diagramme ci-dessous montre les changements d'états vis à vis de l'événement BPA (bouton poussoir a été appuyé puis relâché) :

    Tableau des états de l'automate

    Le tableau ci-dessous montre l'état des LEDs  en fonction des états de de l'automate :

    état LED R LED V
    WAIT  OFF  ON
    START  OFF  BLINK
    STOP  ON  OFF

    Montage électrique

    Le bouton poussoir branché sur l'entrée 3 de l'ARDUINO est câblé de façon à donner un niveau LOW au repos, et un niveau HIGH quand on appui dessus :

    Algorithme

    Écrire l'algorithme textuel faisant apparaître :
    0/ Les variables globales, les constantes globales et la configuration des E/S,.
    1/ La gestion des périphériques qui fournissent une entrée susceptible de déclencher un événement de l'automate.
    2/ Le traitement des événements entrainnant une transition d'état.
    3/ Le traitement des états.

    Programmation

    En déduire le programme ARDUINO correspondant.
    Mettre au point le programme.

  • Auto test ARDUINO

  • Atelier ARDUINO : Utilisation d'une Fourche optique

  • Atelier ARDUINO : Acquisition d'une tension analogique

  • Atelier ARDUINO : Pilotage d'un électro-aimant

  • Atelier ARDUINO : Utilisation d'un accéléromètre