05/12/200 6 Isabelle Colin UNI Informatique informatik http://diuf.unifr.ch/pai Création d’un robot autonome Erschaffung eines selbständigen Roboters
05/12/2006
Isabelle Colin
UNIInformatique
informatik
http://diuf.unifr.ch/pai
Création d’un robot autonomeErschaffung eines selbständigen Roboters
2/3205/12/2006
Introduction / Einführung
La brique RCX, les moteurs et les senseursDer RCX Block, die Motoren und die Sensoren
3/3205/12/2006
Introduction / Einführung
RCX
4/3205/12/2006
Introduction / Einführung
Robot Roboter
5/3205/12/2006
Introduction / Einführung
OrdinateurComputer
Robot Roboter
6/3205/12/2006
Introduction / Einführung
OrdinateurComputer
Robot Roboter
codeKode
7/3205/12/2006
Introduction / Einführung
OrdinateurComputer
Tour infrarouge Infrarot Turm
Robot Roboter
codeKode
8/3205/12/2006
Introduction / Einführung
OrdinateurComputer
Tour infrarouge Infrarot Turm
Robot Roboter
codeKode
9/3205/12/2006
Outline
1. Les éléments / Die Elemente
2. Le code / Der Kode
3. Le logiciel / Das Program
4. Les exercices / Die übungen
5. Le jeu / Das Spiel
10/3205/12/2006
Outline
1. Les éléments / Die Elemente
2. Le code / Der Kode
3. Le logiciel / Das Program
4. Les exercices / Die übungen
5. Le jeu / Das Spiel
11/3205/12/2006
Les éléments / Die Elemente
La brique RCX / Der RCX Block cerveau du robot
Gehirn des Roboters 9 piles
9 Batterien deux boutons importants
2 wichtige Schalter• On-Off:
permet d’allumer et d’éteindre la briqueSchaltet den RCX Block ein und aus
• Run: permet de démarrer le programmeführt das Program aus
12/3205/12/2006
Les éléments / Die Elemente
Les moteurs / Die Motoren
2 moteurs par boite2 Motoren pro Block
Ils se branchent sur la briqueRCX sur les ports A, B ou CSie können an den Block über die Ports A, B oder C angeschlossen werden
13/3205/12/2006
Les éléments / Die Elemente
Le capteur de contact / Der Berührungssensor Il permet au robot de détecter les obstacles
Erlaubt dem Roboter Hindernisse zuerkennen
Il se branche sur la briqueRCX sur les ports S1, S2 ou S3Er lässt sich am RCX Blcok
an die Ports S1, S2 und S3
anschliessen
14/3205/12/2006
Outline
1. Les éléments / Die Elemente
2. Le code / Der Kode
3. Le logiciel / Das Program
4. Les exercices / Die übungen
5. Le jeu / Das Spiel
15/3205/12/2006
Le code / Der Kode
Besoin d’écrire des lignes de codeMan muss Zeilen Kode schreiben
Ouvrir le bloc-notesöffnen des Notepads
Ecrire le corps du programmeSchreiben des Aufbaus des Programms
Enregistrer le fichier avec le nom Robot.javaSpeichern des Kodes unter dem Namen Robot.java
import josx.platform.rcx.*;import josx.util.*;import josx.robotics.*;
public class Robot implements SensorConstants{ public static void main(String [] args) {
}}
Le reste du code ira iciDer Kode kommt hier
16/3205/12/2006
Le code / Der Kode
Les moteurs / Die Motoren
Démarrer le moteur A en avantStarten des Motors A vorwärts
Arrêter le moteur B / Anhalten des Motors B
Démarrer le moteur C en arrièreStarten des Motors C rückwärts
Motor.A.forward();
Motor.C.backward();
Motor.B.stop();
17/3205/12/2006
Le code / Der Kode
Le capteur de contact / Berührungssensor On peut exécuter quelque chose à chaque fois qu’on
appuie sur le capteur ou qu’on le lâcheMan kann etwas ausführen beim drücken oder loslassen des Sensors
Sensor.S2.addSensorListener (new SensorListener() {public void stateChanged (Sensor src, int oldValue, int newValue) {
}});
Le code qui sera exécuté quand l’état du capteur changera, sera ici… Der Kode welcher ausgeführt wird wenn der Zustand wechselt, ...
Ici, le capteur est branché sur S2Hier ist der Sensor am port S2 angeschlossen
18/3205/12/2006
Le code / Der Kode
Divers / Verschiedenes Afficher quelque chose sur le RCX
Etwas auf dem RCX Block anzeigen
Attendre 1 seconde1 Sekunde warten
Faire une boucleEine Schleife machen
TextLCD.print("hello");
try{Thread.sleep(1000);} catch (exception e){};
do {
}while(true);
Le code ira iciHier kommt der Kode
19/3205/12/2006
Outline
1. Les éléments / Die Elemente
2. Le code / Der Kode
3. Le logiciel / Das Program
4. Les exercices / Die übungen
5. Le jeu / Das Spiel
20/3205/12/2006
Le logiciel / Das Program
Le but / Das Ziel
Passer le programme dans le RCXübertragen des Programs auf den RCX
Cliquer sur « Command prompt »Klicken auf « Command prompt »
21/3205/12/2006
Le logiciel / Das Program Les étapes / Die Schritte
1 Aller sur le disque CWechslen auf die Disk C
2 Rentrer dans le dossier « Wins »Wechslen in den Ordner « Wins »
3 Rentrer dans le dossier Robot1Wechslen in den Ordner Robot1
4 Compiler le programmeDas Program kompilieren
5 Envoyer le fichier sur le RCX (allumer le RCX et le mettre devant la tour)Schicken des Programs auf den RCX(Einschalten des RCX und vor den Turm setzen)
12345
22/3205/12/2006
Outline
1. Les éléments / Die Elemente
2. Le code / Der Kode
3. Le logiciel / Das Program
4. Les exercices / Die übungen
5. Le jeu / Das Spiel
23/3205/12/2006
Exercices / übungen
Attention / Achtung Utiliser le dossier Wins
Benutzen des Ordners Wins
Faire un dossier par exercice (nom des dossiers : robot1, robot2, etc)Einen Ordner pro übung erstellen (Name des Ordners : robot1, robot2, etc)
Appeler le fichier Robot.javaAufrufen der Datei Robot.java
24/3205/12/2006
Exercice 1 / übung 1
Enoncé de l’exercice / Die übung
Afficher « hello » sur le RXCAnzeigen von « hello » auf dem RXC
Remarque / Bemerkung• Il faut faire quelque chose pour qu’on ait le temps
de le voir s’afficher• Man muss etwas machen dass man die Zeit hat
etwas zusehen
25/3205/12/2006
Exercice 2 / übung 2
Enoncé de l’exercice / übung
Brancher un moteur sur le RCX en AAnschliessen eines Motors an den RCX auf Port A
Faire tourner ce moteur en avantBringen Sie den Motor dazu vorwärts zu laufen
26/3205/12/2006
Exercice 3 / übung 3
Enoncé de l’exercice / übung
Brancher un moteur sur le RCX en BAnschliessen eines Motors an den RCX auf Port B
Faire tourner ce moteur en avant pendant 3 secondesMotor während 3 Sekunden vorwärts laufen lassen
L’arrêter pendant 3 secondesAnhalten während 3 Sekunden
Le faire tourner en arrière pendant 3 secondesRückwärts laufen lassen während 3 Sekunden
27/3205/12/2006
Exercice 4 / übung 4
Enoncé de l’exercice / übung
Brancher un moteur sur le RCX en CAnschliessen eines Motors an den RCX auf Port C
Faire tourner ce moteur en continuDen Motor unendlich lange laufen lassen
28/3205/12/2006
Exercice 5 / übung 5
Enoncé de l’exercice / übung
Faire afficher quelque chose sur le RCX en continuEtwas unendlich lange auf dem RCX anzeigen
29/3205/12/2006
Exercice 6 / übung 6
Enoncé de l’exercice / übung
Brancher le capteur de contact sur le RCX en S2Berührungssensor auf Port S2 an den RCX setzen
Afficher quelque chose sur le RCX quand on appuie sur le capteurEtwas anzeigen auf dem RCX wenn man den Sensor drückt
30/3205/12/2006
Outline
1. Les éléments / Die Elemente
2. Le code / Der Kode
3. Le logiciel / Das Program
4. Les exercices / Die übungen
5. Le jeu / Das Spiel
31/3205/12/2006
Le jeu / Das Spiel
Construire un robot en suivant les indications du livreKonstruktion eines Roboters wie in der Anleitung beschrieben
Ecrire un programme pour que le robot suive la ligne noireSchreiben eines Programs, so dass der Roboter dem Verlauf einer schwarzen Linie folgt
32/3205/12/2006
The end...