Présentation

## Présentation de DOCoMETRe

<<
>>

Ce logiciel permet donc d'acquérir et éventuellement de perturber le mouvement, selon des critères définis graphiquement par l'utilisateur. Pour ces raisons et compte tenu du fait que le laboratoire travaille dans le domaine du mouvement, l'ensemble « système ADwinPro » et « logiciel » se nomme Dispositif d'Observation et de Contrôle du Mouvement en Temps Réel.

On poura saisir le protocole expérimental, simuler la ou les programmes temps réel (appelés "séquences type"), régler les options d'exécution (enregistrements et visualisation), programmer automatiquement le système temps réel pour réaliser l'expérience et inspecter les données sauvegardées.

La saisie du protocole expérimental consiste, entre autres, à spécifier la cadence du timer interne et les entrées/sorties utilisées (Etape Paramètres généraux & configuration hardware), à décrire, pour chaque condition expérimentale si nécessaire les séquences types (Etape Description) et à organiser le protocole en terme de Sessions/Essais en associant une séquence type à chaque essai (Etape Organisation).

Il est aussi possible de simuler les séquences type pour une éventuelle mise au point des algorithmes.

La programmation automatique permet de traduire les différentes séquences types en un langage compréhensible par l'ADWinPro (ADBasic compilé).

La mise en oeuvre du protocole passe par la configuration des options d'exécution où l'on spécifie les canaux à enregistrer et/ou à visualiser. Il sera aussi possible de visualiser "offline" les données enregistrées.

Avant de se lancer dans la description des ces différentes étapes, il nous faut d'abords regarder la structure de la boucle temps réel de l'ADWinPro.

### Structure de la boucle temps réel

Les phases d'initialisation et finalisation - "Début" et "Fin" - (segments LOWINIT et FINISH en ADBasic) permettent de mettre ou laisser les sorties du système dans un état déterminé. Une phase de traitements qualifiée de "bouclée" (segments EVENT en ADBasic) parce que, contrairement au deux phases précédentes qui ne sont exécutées qu'une seule fois, celle-ci l'est à chaque déclenchement du timer interne au système. La phase d'initialisation est exécutée lors du premier déclenchement du timer. Le traitement en boucle suit alors et est exécuté à chaque déclenchement tant qu'une condition d'arrêt n'est pas rencontrée. Lorsque cette condition est vérifiée la phase de finalisation a alors lieu.

Les phases porteront le nom de «blocs» dans la suite de ce texte. Le contenu des blocs (les calculs concrètement réalisés) sera rempli par des boîtes à outils prédéfinies. Les séquences types auront donc toujours des blocs "Début" et "Fin". Entre ces blocs particuliers viendrons s'ajouter d'autres types de blocs, au moins un, de façon à composer globalement le traitement temps réel désiré.