Télécommandez un robot par le biais d'une \l;borne d'information\u object\exchange; pour qu'il passe par les 6 croix bleues. Les 3 acteurs principaux de cet exercice sont:
1) Un \l;robot déménageur\u object\botgr; sans pile, donc immobile. C'est lui l'émetteur que vous devez programmer.
2) Une \l;borne d'information\u object\exchange; qui reçoit des informations de l'émetteur puis les transmet au récepteur.
3) Un \l;robot d'entraînement\u object\bottr; qui attend les ordres de la borne. Ce robot est déjà programmé.
L'ordre #1 signifie "move" et l'ordre #2 signifie "turn". Le paramètre est la distance à avancer ou l'angle à tourner. Par exemple, pour demander au robot esclave d'avancer de 20 mètres, il faut écrire:
Le robot esclave attend un ordre puis l'exécute. Lorsque l'exécution est terminée, il supprime l'ordre de la borne. Après avoir envoyé un ordre, le robot émetteur doit donc attendre la disparition de l'ordre dans la borne, signe que l'esclave a terminé sa tâche. Cela s'écrit ainsi, avec l'instruction \c;\l;testinfo\u cbot\testinfo;\n;:
\c;\s; while ( testinfo("order", 100) ) // wait end of work
Comme il faudra donner plusieurs ordres, il est plus simple de créer une \l;fonction\u cbot\function; \c;SendToPost\n; qui se charge d'envoyer un ordre puis d'attendre son exécution: