[[PageOutline]] = Sinus demo = Cette page explique comment compiler et tester un programme utilisant Fl-AIR. De plus, ce programme est suffisamment commenté pour permettre de comprendre comment programmer avec le Framework. Il faut aussi se référer à la documentation [https://devel.hds.utc.fr/svn/flair-dev/trunk/doc/Flair/index.html ici]. Le programme génère un signal sinusoidal et on y ajoute un filtre passe bas. Le tout est configurable via la station sol. Le but de cette démo est notamment de montrer comment s'imbrique les différents filtres et le moyen de déporter l'affichage d'une application sur la station sol. NB: Les sources des librairies Filter et !SensorActuator peuvent aussi être un bon point de départ pour voir comment on programme avec le Framework. Attention tout de même car ces librairies utilisent le [http://c2.com/cgi/wiki?PimplIdiom pimpl idiom], ce qui peut rendre la lecture plus difficile que cet exemple. == Compilation == Les programmes vont être compilés pour la cible et pour le PC. Pour cela le script ''cmake_codeblocks.sh'' va faire un projet !CodeBlocks pour le PC dans le répertoire ''build'' et un projet pour la cible dans le répertoire ''build_arm''. {{{ $ cd $FLAIR_ROOT/flair-src/demos/Sinus $ $FLAIR_ROOT/flair-dev/scripts/cmake_codeblocks.sh $ cd build $ make $ cd ../build_arm $ make }}} Chaque appel à la commande ''make'' va compiler à la fois la version temps réel et la version non temps réel du programme. __NB__: you can also use the script of this [wiki:compile_all page] to compile the programs. == Exécution du programme sur le PC == === station sol === {{{ $ $FLAIR_ROOT/flair-bin/tools/scripts/launch_FlairGCS.sh }}} === programme === Ouvrir un terminal et exécuter le programme via son script: {{{ $ cd $FLAIR_ROOT/flair-src/demos/Sinus/build/bin $ ./Sinus.sh }}} Ce script, comme pour la station sol, permet de lancer le programme avec un certain nombre d'arguments. A noter que ce script détecte également la présence ou non de Xenomai afin de lancer le bon programme (temps réel ou non temps réel). ==== réglages ==== A l’exécution du programme, la station sol doit se construire et faire apparaître les réglages et les graphes. == Exécution des programmes sur la cible == === copie des fichiers sur la cible === A adapter en fonction de l'adresse de votre cible: {{{ $ scp $FLAIR_ROOT/flair-src/demos/Sinus/build_arm/bin/* root@192.168.6.1: }}} === exécution === ==== coté PC (station sol) ==== {{{ $ $FLAIR_ROOT/flair-bin/tools/scripts/launch_FlairGCS.sh }}} ==== coté cible ==== Ouvrir un terminal sur la cible et exécuter le programme via le script: {{{ # ./Sinus.sh adresse_PC }}} Où ''adresse_PC'' est a remplacer par l'adresse IP de votre PC. Ce script, comme pour la station sol, permet de lancer le programme avec un certain nombre d'arguments. A noter que ce script détecte également la présence ou non de Xenomai afin de lancer le bon programme (temps réel ou non temps réel). ==== réglages ==== A l’exécution du programme sur la cible, la station sol doit se construire et faire apparaître les réglages et les graphes.