Sie sind auf Seite 1von 13

Architecture et programmation

de robots autonomes
Emmanuel Dard - Denis George

04/10/01

Architecture et programmation d un

-1-

Objectifs
Contrles du robot
Contrle de 3 moteurs asservis
Commande de sorties TOR
Commande de servo-moteurs

Interactions avec lextrieur


Lecture d entres TOR

04/10/01

Architecture et programmation d un

-2-

Choix du type de systme


Contraintes:

Volume et poids
Rapidit de dmarrage
Fiabilit
Maintenance simple
Systme adapt

Solution
Carte mre sur mesure avec micro-contrleur adapt

04/10/01

Architecture et programmation d un

-3-

Nos contraintes
Programmation par liaison srie
Interaction directe avec la CM par LS
Capacit de stockage importante
mmoire programme (FLASH)
mmoire volatile (RAM)

Capacit de calcul
Prennit
04/10/01

Architecture et programmation d un

-4-

Rsultat

04/10/01

Architecture et programmation d un

-5-

Rsultats
Processeur
Micro-contrleur 80C537 (famille 8051)
Frquence : 14Mhz

Stockage
32Ko de ROM
16Ko de SRAM
32Ko de Flash

04/10/01

Architecture et programmation d un

-6-

Suite...
3 contrles de moteurs:
Composants permettant dasservir les moteurs

Une Horloge Temps Rel


Une liaison srie 38400 bauds:
Tlchargement des programmes
Dialogue avec la carte mre

2 modes de fonctionnement
04/10/01

Architecture et programmation d un

-7-

Procdure
Dveloppement du programme

Compilation

Tlchargement sur la flash

Excution
04/10/01

Architecture et programmation d un

-8-

Spcificits du C
Adressage 16 bits
interne au C (registre interne)
externe au C (mmoires externes, autres composants)

Mmoire et calculs limits


Dbugage complexe
Pas daffichage

Mono-processus
Interruptions dclenches par:
Evnements internes ou externes
04/10/01

Architecture et programmation d un

-9-

Utilisation des Interruptions


Fonction lie
l interruption

Programme Principal
Dbut

Dbut

Traitement de
lventuelle interruption
Positionnement
d un FLAG

Excution de
l'action
OUI

Autre action?
NON

Fin

04/10/01

Fin

Architecture et programmation d un

-10-

Langages de programmation
Assembleur
Optimis
Dveloppement trop long

Compilateur bas niveau pour C


Exemple: C, Basic, Pascal
Spcifique chaque famille de C (8051, PIC,)

04/10/01

Architecture et programmation d un

-11-

Programmation pour C
Peu de librairies existantes
Utilisation de composants spcifiques

Lecture et criture des composants:


int *ptr = 0x5050;
char toto;
*ptr = 0x05; //criture
toto = *ptr; //lecture

04/10/01

Architecture et programmation d un

-12-

Conclusion
Une alternative au PC
Contraintes physiques fortes
Calculs et mmoire limits

Dveloppement spcifique
Trs li au hardware
Optimis

04/10/01

Architecture et programmation d un

-13-

Das könnte Ihnen auch gefallen