Les programmes
Tout est écrit en Python.
C'est un language très accessible, Open Source, qui fonctionne aussi bien sur Windows que Linux et encore beaucoup d'autres machines.
Il permet une programmation "objet". C'est un language interprété, parfois un peu lent.
Trois fichiers comportent tous les programmes:
- Calc.py comporte tous les calculs et les divers objets:
- TX = les caractéristiques de l'émetteur du point de vue du signal PPM
- TXSignal = enregistre un signal audio et le transforme en signal par canal (en msec )
- servo = classe de base qui définit tout ce qui est commun aux commandes:
- servo
- gouverne et guignol
- getControl() fait tous les calculs: les positions du servo, du guignol, en fonction du signal de l'émetteur
- getCan() dessine le résultat
- servo_rod hérite tout ceci de la classe servo, et ajoute seulement la liason entre servo et guignol. C'est une tige rigide.
- servo_flexrod hérite également de la classe servo et ajoute une liaison par gaîne flexible
- Gui.py comporte les dialogues . C'est souvent assez long à écrire.
- main est le programme principal. Il comporte le menu.
Une
particularité: pour enregistrer le son il faut lancer la lecture et
lancer un "thread" qui dans 100msec arrêtera la lecture et enregistrera
le son. - Newton.py
est la méthode d'interpolation pour résoudre une équation non linéaire
f(x)=0. Elle est utilisée pour la liaison entre le servo et la gouverne.
- plot fait une mise en graphique très simple (emprunté à Grayson, auteur d'un livre Python and Tkinter programming)
Les programmes ont été écrits avec l'outil de développement ERIC4 http://www.die-offenbachs.de/eric/index.html .