formation à l'utilisation de · pdf file1 formation pegase: la plate-forme wireless du...

Download Formation à l'utilisation de · PDF file1 Formation PEGASE: La plate-forme wireless du LCPC Formation à l'utilisation de PEGASE : Plate-forme Experte Générique pour Applications

If you can't read please download the document

Upload: dinhnga

Post on 06-Feb-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 1

    Formation PEGASE : La plate-forme wireless du LCPC

    Formation l'utilisation de PEGASE : Plate-forme Experte Gnrique pour

    Applications Sans-fil EmbarquesVincent Le Cam( Mathieu Le Pen William Martin Laurent Lemarchand )

    Ingnieur de recherche, enseignement et expertise

    Responsable de la Cellule lectronique et Informatique Industrielle (CEII)

    Dpartement MACS(Mesure Auscultation Calcul Scientifique)

    IFSTTAR

    Version V3.0 Novembre 2011Tous droits rservs

  • 2

    Formation PEGASE sur 3 jours - Sommaire :

    Journe 1Contexte / Dcouverte / Prise en main

    1. Rappels des objectifs de la formation (10 mn)

    2. Prsentation et cours gnraux ( j)- lectronique sans-fil et OA - Contexte de PEGASE (Cours de V. Le Cam)- Les systmes GNU/ Linux (Cours de Ph. Le Gal)- Le noyau Linux et les pilotes de priphriques / drivers (Cours de Ph. Le Gal)- Langage C : un tutoriel et quelques grands rappels

    3. Mise en route et dcouverte de PEGASE ( j)- Appropriation des principales fonctions et caractristiques physiques et logicielles

  • 3

    Formation PEGASE sur 3 jours - Sommaire :

    Journe 2Dcouverte et modification des exemplesMes premires applications sur PEGASE

    4 - Excution et modification des programmes d'exemple fournis dans le kit PEGASE ( j)

    Prsentation du contenu de la librairie PEGASEFocus sur le fonctionnement vnementiel : mcanisme des CallbacksMise en uvre et modification des programmes d'exemple

    5 - Dveloppement d'applications orientes mtier (1,5j)Application 1 : Envoi TCP/IP/WiFi de donnes d'un capteur (Acclro MEMS3D) vers un Superviseur en Labview Application 2 : Sensor GPS : envoi d'alarme SMS/GSM sur dtection de dplacement GPS. Serveur TCP/WiFi. Mise en oeuvre d'un automate d'tatApplication 3 : Mise en uvre des fonctions DSP: FFT, min/max/mean, etc.

  • 4

    Formation PEGASE sur 3 jours - Sommaire :

    Journe 3Dveloppement d'applications sur PEGASE

    Etude de vos use-case

    5 - Dveloppement d'applications orientes mtier (1,5j)Application 4 : Mise en oeuvre du watchdog sur PEGASE Application 5 : Utilisation de la librairie XML sur PEGASE Application 6 : utiliser la carte fille 8 voies d'entres analogiques : GBF en entre + FFT + envoi TCP vers un serveur Labview Application 7 : Customiser le serveur web intgr sur PEGASE Application 8 : PEGASE et l'nergie : autonomie, CSolarManager, etc. Application 9 : Dvelopper en C++ sur PEGASE

    6 Debugage d'applications : gdb, cross-debugage, manip, ...7 tude de vos use-case (1h)......

  • 5

    PARTIE 1

    PARTIE 1 :

    Rappels des objectifs de la formation

  • 6

    1 - Rappel des objectifs de la formation :

    Objectifs: Prsenter le concept PEGASE en dtail Rendre utilisateur capable d'installer et d'utiliser la plateforme PEGASE en qqs heures

    dans son labo A tout le moins : le savoir ncessaire pour comprendre et maintenir une application sur

    PEGASE Transfert de connaissance IFSTTAR RST, Ecoles, Universits, entreprises..... Un avoir faire plus gnral que le simple cadre PEGASE : dveloppement en C en

    Linux l'embarqu. Connaissances applicables pour de nombreux autres systmes Pour un public averti :

    Sensible (ou aime) l'lectronique, l'info. Indus., embarqu... Connat (ou pourrait) le minimum vital du linux : ls, man, gcc... Connat (ou devra) savoir dvelopper en C standard ...voire en C++

  • 7

    PARTIE 2

    PARTIE 2 :

    Prsentation et cours gnral

  • 8

    2 - Prsentation et cours gnral

    1) Prsentation gnrale de :- lectronique sans-fil et ouvrages d'art 1h (cours V. Le Cam)

    2) Prsentation gnrale de :- Les systmes GNU/ Linux 3/4h (cours de Ph. Le Gal)

    3) Prsentation gnrale de :- Le noyau Linux et les pilotes de priphriques 1/2h (cours de Ph. Le Gal)

    4) Le Langage C : (1/2h) (Mathieu Le Pen)- THE tutoriel de rfrence : "Le Langage C" / Richie et Kernighan- Quelques grands rappels sur le langage C

  • 9

    2 - Prsentation et cours gnral

    Il existe de trs nombreux tutoriels sur le langage C sur internet !

    Pages de Man :> manSous Google

    Exemple :http://www.siteduzero.com/tutoriel-3-14189-apprenez-a-programmer-en-c.html

  • 10

    2 - Prsentation et cours gnral

    C-Rappel : if/else

  • 11

    2 - Prsentation et cours gnral

    C-Rappel : do-while

  • 12

    2 - Prsentation et cours gnral

    C-Rappel : for

  • 13

    2 - Prsentation et cours gnral

    C-Rappel : printf

  • 14

    2 - Prsentation et cours gnral

    C-Rappel : open/close/read/write

  • 15

    3 - Mise en route et dcouverte de PEGASE

    PARTIE 3 :

    Mise en route de PEGASE

  • 16

    3 - Mise en route et dcouverte de PEGASE

    Prambule : Tout au long de la formation (et aprs dans votre labo), toujours se rfrer au Guide Mise en Oeuvre de PEGASEVersion V1.F :

  • 17

    3 - Mise en route et dcouverte de PEGASE

    En suivant le Guide de Mise en Oeuvre de PEGASE V1.F (G.U. = Guide Utilisateur) \ chapitre 3 Dmarrage rapide :

    Connecter PEGASE une source 8/24 V Relier PEGASE votre PC par un cordon RS232 / USB Configurer un outil de gestion des ports com sur PC : minicom -s

    configurer : 115200 bauds 8N1 Lancer: minicom Faire vrifier le cblage par le formateur Mettre sous tension Observer la squence de boot de PEGASE

  • 18

    3 - Mise en route et dcouverte de PEGASE

    Booter et re booter la carte (bouton reset) ou taper reboot

    Dtecter la squence du boot loader A quoi sert-elle ? Explications du formateur Voir dans le G.U. Le partitionnement de PEGASE ( 5.2). Explications

    Se promener sur la carte, vrifier les commandes Linux de base : cd /lcpc ls -l cat /version echo toto Etc. Avec l'Aide mmoire des commandes Unix , vrifier que vous retrouvez

    les grands principes d'un systme Linux.

  • 19

    3 - Mise en route et dcouverte de PEGASE

    Vrifier le partitionnement de PEGASE expliqu en 5.1 du G.U. La partition mtd1 est la partition de boot (volatile)La partition mtd2 est la partition mtier (prenne)

    Crer un fichier dans / : Echo test1 > foo1 Crer un fichier dans /lcpc : Echo test2 > foo2 Rebooter la carte Tentez de retrouver les fichiers foo1 et foo2

    Que s'est il pass ??? Si votre application doit gnrer et stocker des fichiers de donnes, o

    enregistrer vos fichiers de data ? O placer votre future application Monitoring.exe ?

  • 20

    3 - Mise en route et dcouverte de PEGASE

    /lcpc : bien se rappeler que ce n'est pas un rpertoire comme les autres (pointe sur une mmoire FLASH)

    Contrairement /XXX , LCPC pointe sur la FLASH et non la RAM (mtdblock2) Il est donc prenne (rappel) Il est propre PEGASE (produit @ Ifsttar ) et il est cr volontairement pour y

    stocker des applications et des donnes Prparer un sous rpertoire de travail de votre choix :

    mkdir APPLI cd APPLI echo c parti > foo Rebooter PEGASE Retourner dans /LCPC/APPLI Afficher foo cat foo

    Is it OK ???

  • 21

    Mise en route de PEGASE

    Dcouvrir les autres principaux rpertoires de la distribution Linux sur PEGASE : /bin : explorer et retrouver tous les binaires que vous utilisez sous le Linux

    embarqu sur PEGASE Principales commandes Linux : ls -l, cd, ifconfig,... Les fichiers Example_XXX

    Comment LINUX sait que les binaires se trouvent ds ce rp. ? Afficher et comprendre la valeur de la variable systme : PATH En tapant la commande: echo $PATH Idem sur tout PC sous Linux

    Aller dans le rpertoire /proc et afficher le contenu du fichier meminfo cat /proc/meminfo Contenu = informations importantes sur taille de la RAM Similairement, taper : free

  • 22

    3 - Mise en route et dcouverte de PEGASE

    /xxx : explorer rapidement les autres rpertoires la racine de / (autres que /LCPC )

    Noter que : il s'agit des sous-rpertoires classiques d'un systme Linux (ici d'un uClinux adapt PEGASE)

    Sur votre PC sous Linux (ex. : Ubuntu) : retrouver ~ les mmes rpertoires, ~les mmes commandes, et mme logique d'arborescence universelle des systmes GNU/Linux (cf. le cours)

    Analogie :Systmes Linux

  • 23

    3 - Mise en route et dcouverte de PEGASE

    A la racine / : afficher le contenu du fichier version cat /version Qu'affiche ce fichier selon vous ? A quoi correspondent la date et l'heure affiches ?

    Dans /lcpc : afficher puis complter le contenu du fichier autorun.sh en suivant la question Q2 de la FAQ du GU (P.53)

    root:/> cat /lcpc/autorun.shroot:/> cat >> /lcpc/autorun.shecho cette formation PEGASE est super ifconfigps

    root:>Rebooter

    Que se passe -t-il ? A quoi sert ce fichier selon vous ? Pour bien comprendre : afficher le contenu de rc : cat /etc/rc

  • 24

    3 - Mise en route et dcouverte de PEGASE

    Dcouvrir les autres principaux rpertoires de la distribution Linux sur PEGASE Zoom sur un rpertoire important : /dev /dev => Devices = matriels / priphriques Aller dans /dev et lister le contenu ls -l Retrouver des priphriques qui ont t prsents sur PEGASE:

    Les timers : ... Le port SPI : ... Le port I2C : null Les ports flags : sous quels noms retrouve-t-on les 48 GPIO ? Les 2 ports srie : ttyBF0 et ttyBF1 A quoi correspond le dev console

    Faire echo salut > /dev/console depuis un Terminal en Telnet et regarder ce qui se passe sur un Terminal avec Minicom

    Faire echo bonjour > /dev/ttyBF0 Que se passe-t-il ? Comment l'expliquer ? Qu'est ce qui est cbl en dur sur ttyBF1 ?

  • 25

    3 - Mise en route et dcouverte de PEGASE

    Zoom s