> Site STI de l’académie d’Orléans-Tours
site du ministere
site de l académie
Vous êtes ici : Accueil > Ressources pour STI2D > Spécialité SIN > [STI2D-SIN] - Microcontrôleur et programmation orientée objet (POO)[Partie (...)
Publié : 31 août 2011

[STI2D-SIN] - Microcontrôleur et programmation orientée objet (POO)[Partie 1]

Une carte de prototypage rapide programmée en C# ou Visual Basic pour illustrer les centres d’intérêt STI2D SIN. [Article en cours de mise à jour le 24/10/2015]

Les cartes FEZ permettent d’illustrer les centres d’intérêts proposés en STI2D SIN.

Extrait du document d’accompagnement

Le prototypage et la réalisation de maquettes en spécialité SIN s’intéressent à la mise en œuvre effective de solutions techniques à partir :
- des systèmes des laboratoires (instrumentation, évolution par développement de solutions) ;
- des composants ou sous-systèmes permettant la concrétisation de la solution :
- cartes d’évaluation de circuits spécifiques proposés directement par les fournisseurs industriels (microcontrôleur, FPGA) ou des sociétés spécialisées dans le matériel didactique (module GPS, LCD) ;
- composants d’entrées/sorties, d’instrumentation ;
- composants de communication et réseaux spécialisés : routeurs, switches manageables,modules Wifi, bluetooth ;

- ... »

Centres d’intérêt abordables

- C.I 2 : Instrumentation/Acquisition et restitution de grandeurs physiques,
- C.I 3 : Communication de l’information au sein d’un système,
- C.I 4 : Gestion de l’information...,
- C.I 5 : Communication entre systèmes,
- C.I 6 : Traitement analogique de l’information.

Qu’est-ce qu’une carte FEZ (Freaking Easy) ?

Les cartes FEZ de la société GHI Electronics sont compatibles avec les shields Arduino. Elles sont dotées d’un microcontrôleur 32 bits et de périphériques d’entrées / sorties. Plusieurs modèles existent. Les cartes FEZ Panda III et FEZ COBRA III, présentées ci-dessous, sont distribuées par Mouser Electronics.

FEZ PANDA III FEZ COBRA III
JPEG - 19.9 ko
FEZ PANDA III
Distribuée par Mouser
JPEG - 9.3 ko
FEZ COBRA III
Distribuée par Mouser
Processeur Cortex-M4 Cortex-M3
Fréquence 180MHz 120MHz
Flash 256KB 2,87MB
RAM 156KB 13,67MB
GPIO 53 60
PWM 17 7
Analog In 16 8
Analog Out 2 non
UART 4 5
SPI, I2C, CAN oui oui
1-Wire, RTC oui oui
Controller LCD natif non oui
Système de fichiers FAT16/FAT32 FAT16/FAT32
Hôte USB oui oui
Carte mémoire oui oui

Connexion avec les modules Gadgeteer

Un pont permet de connecter les modules Gadgeteer aux cartes FEZ et notamment un afficheur LCD tactile à la carte FEZ COBRA III.

L’écran tactile (320 x 240) de 3,5 pouces est de bonne qualité. L’éditeur graphique en ligne Glide permet de créer facilement une IHM.

Comment programme-t-on le processeur des cartes FEZ ?

En C# (syntaxe C, langage perçu comme une amélioration de Java) ou en Visual Basic dans l’environnement de développement (IDE) Microsoft Visual Studio Community ou professionnel enrichi du Micro Framework .NET et du SDK associé à la carte ciblée.

JPEG - 68.7 ko
Visual Studio Community 2013

Fonctionnalités particulièrement appréciables de l’IDE Microsoft Visual studio :

  • Environnement de développement intégré complet pour créer des applications Web, Windows Desktop et cross-plateforme iOS, Android et Windows
  • Coloration syntaxique,
  • Autocompletion (Intellisense),
  • Template de code,
  • Debugger in situ (exécution du programme en pas à pas dans la carte avec retour de la valeur des variables dans l’IDE)
  • Ajout d’autres langages : Python

Microsoft Visual Studio est GRATUIT dans sa version Community.

Exemples de code C# : une aide pour les projets !

  • Lecture d’une entrée analogique (thermomètre GHI)
  • Transmission d’une donnée ou accès à un afficheur LCD (ELCD-162) par une liaison RS232. Gestion de l’émission et de la réception d’une donnée avec un module XBEE.
  • Accès à une IHM (LCD Batron à PCF2119 + PCF874) ou à des capteurs (température TMP102, luminosité TSL2561, distance SRF08, directionHMC6352) par l’intermédiaire d’un bus I2C.
  • Accès à des capteurs 1 fil (température DS18B20, température humidité DHT11).
  • Commande de deux motoréducteurs équipés de codeurs avec une carte MD25.
  • Commande d’actionneurs (servomoteur, moteur pas à pas avec un module EasyDriver 4.4, moteur CC en PWM).
  • Génération d’un signal analogique (rampe).
  • Visualisation d’une page Web embarquée dans la carte FEZ-PANDA2.
  • Publication de grandeurs physiques sur un site Web.
  • Envoi par mail / sms de l’état ouvert/fermé d’une porte.

Remarque : Les classes des exemples associés à un lien sont maintenues sur Github. L’ensemble des documents et les répertoires des projets sont téléchargeables en bas de l’article.

Exemple de projet réalisé en SSI  : Robot solaire d’exploration

Objectif : Réaliser un robot autonome capable de se déplacer dans une zone de 4m x 4m, selon un parcours pré établi afin de détecter une zone colorée.

Autres articles sur la technologie .NET
- STI2D SIN : Microcontrôleur et POO (Partie 2) [Mis à jour le 6/10/2015]
- STI2D SIN : "Serious games" TP en 1ère SIN avec Microsoft Robotics Developer Studio (1ère partie)
- STI2D SIN : "Serious games" TP en 1ère SIN avec Microsoft Robotics Developer Studio (2ème partie)
- "Serious games" et applications robotiques avec Microsoft Robotics Developer Studio
- Technologie .NET en STI2D et S SI

A voir  : De SysML au prototype, WebGe, GHI ELECTRONICS

Documents joints

  • Archives 2, Zip, 4.6 Mo - Téléchargé 643 fois

    Manips_avec_les_cartes_FEZ_PANDA2_et_Connect_Shield.pdf

  • Archives 1, Zip, 3.5 Mo - Téléchargé 349 fois

    FEZ_Internet_of Things_Book.pdf French_Beginner_Guide_ebook1.03.pdf Guide_installation_outils_pour_panda2.pdf

  • Archives Code C# Visual Studio 2010 pour PANDA 2 (16/7/2014), Zip, 4.1 Mo - Téléchargé 365 fois

    Répertoire des projets associés aux exemples :
    - Lecture d’une entrée analogique (thermomètre GHI)
    - Transmission d’une donnée ou accès à un afficheur LCD (ELCD-162) par une liaison RS232. Gestion de l’émission et de la réception d’une donnée avec un module XBEE.
    - Accès à une IHM (LCD Batron à PCF2119 + PCF874) ou à des capteurs (température TMP102, luminositéTSL2561, distance SRF08, direction HMC6352) par l’intermédiaire d’un bus I2C.
    - Accès à des capteurs 1 fil (température DS18B20, température humidité DHT11).
    - Commande de deux motoréducteurs équipés de codeurs avec une carte MD25.
    - Commande d’actionneurs (servomoteur, moteur pas à pas avec un module EasyDriver 4.4, moteur CC en PWM).
    - Génération d’un signal analogique (rampe).
    - Visualisation d’une page Web embarquée dans la carte FEZ-PANDA2.
    - Publication de grandeurs physiques sur un site Web.
    - Envoi par mail / sms de l’état ouvert/fermé d’une porte.

  • Documentation pour la carte Panda III, Zip, 1.4 Mo - Téléchargé 300 fois

    Manuels de l’utilisateur et schéma de la carte.

  • Documentation pour la carte Cobra III, Zip, 1.8 Mo - Téléchargé 325 fois

    Manuels de l’utilisateur et schéma de la carte.