RoboPro FR
RoboPro FR
RoboPro FR
ROBOPro
1
TABLE DES MATIÈRES
4.4.3 Programme principal Tango........44
1 Introduction – Commander des 4.5 Tango 2 : communication via Bluetooth
maquettes Fischertechnik avec ou RF Data Link...................................45
ROBO Pro............................................. 4 4.5.1 Paramètres radio pour l’interface
1.1 Installation de ROBO Pro...................... 4 Robo............................................50
1.2 Installation du pilote USB ...................... 5 4.5.2 Paramètres Bluetooth pour TX
1.3 Premiers pas ......................................... 8 Controller.....................................53
2 Petit test du matériel avant la 5 Niveau 3: Variables, Panneau de
programmation .................................. 12 commande et Cie...............................56
2.1 Raccordement de l’Interface au PC .... 12 5.1 Variables et commandes.....................56
2.2 Pour que la liaison soit bonne – Mises 5.2 Variables et procédures multiples .......58
au point de l’Interface.......................... 12 5.3 Panneaux de commande.....................59
2.3 La liaison n’est pas bonne – Il n’y a pas 5.4 Timer....................................................63
de liaison avec l’Interface !?................ 13 5.5 Entrées de commande pour sous-
2.4 Tout fonctionne – Test de l’Interface... 14 programme ..........................................64
3 Niveau 1: Mon premier programme de 5.6 Listes (Arrays) .....................................67
commande ......................................... 16 5.7 Opérateurs...........................................69
3.1 Créer un nouveau programme ............ 16 6 Niveau 4 : Commandes définies par
3.2 Les éléments du programme de l’utilisateur .........................................74
commande........................................... 17 6.1 Traitement des commandes dans une
3.3 Ajouter, déplacer et modifier un élément procédure ............................................74
de programme ..................................... 17 6.2 Filtre de commande.............................75
3.4 Lier les éléments de programme......... 20 6.3 Envoyer des commandes au choix aux
3.5 Test du premier programme de sous-programmes................................77
commande........................................... 21
3.6 Autres éléments de programme.......... 23 7 Commander plusieurs Interfaces ....78
3.6.1 Attente......................................... 23 7.1 Commander les extensions.................78
3.6.2 Attendre l’entrée.......................... 24 7.2 Commander ROBO TX Controller et
3.6.3 Compteur d’impulsions ............... 24 ROBO Interface ...................................78
3.6.4 Boucle de comptage ................... 25 7.3 Attribution des Interfaces dans les sous-
3.7 Utilisation en mode Online ou en mode programmes ........................................80
Téléchargement Quelle est la 7.4 Trucs & Astuces ..................................81
différence ?.......................................... 25 7.5 Modifier le numéro de série de
3.8 Trucs et Astuces.................................. 27 l’interface du ROBO Interface .............81
4 Niveau 2: Travailler avec des sous- 8 Aperçu des éléments du programme83
programmes....................................... 29 8.1 Eléments fondamentaux (Niveau 1) ....83
4.1 Mon premier sous-programme............ 30 8.1.1 Démarrer .....................................83
4.2 Bibliothèque des sous-programmes.... 34 8.1.2 Terminer ......................................83
4.2.1 Utiliser la bibliothèque................. 34 8.1.3 Branchement digital ....................83
4.2.2 Utiliser la bibliothèque personnelle35 8.1.4 Branchement analogique ............84
4.3 Traiter les symboles des sous- 8.1.5 Attente.........................................85
programmes ........................................ 36 8.1.6 Sortie Moteur...............................86
4.4 Tango .................................................. 36 8.1.7 Moteur codeur (niveau 1) ............87
4.4.1 Commande de moteur par 8.1.8 Sortie Lampe (Niveau 2) .............87
commutateurs d’impulsions ........ 38 8.1.9 Attendre une entrée ....................89
4.4.2 Commande par moteurs codeurs42 8.1.10 Compteur d’impulsion .................90
1
F
ROBOPro
2
8.1.11 Boucle de comptage ................... 91 8.7 Entrées / Sorties d’Interface,... ..........113
8.2 Envoyer, recevoir (Niveau 2-4)............ 91 8.7.1 Entrée universelle......................113
8.2.1 Emetteur (Niveau 2).................... 91 8.7.2 Entrée de compteur...................114
8.2.2 Récepteur / Branchement à la 8.7.3 Position atteinte du moteur .......115
réception d’une commande 8.7.4 Sortie Moteur.............................115
(Niveau 2).................................... 93 8.7.5 Sortie Lampe .............................116
8.2.3 Récepteur (Niveau 3).................. 94 8.7.6 Entrée du panneau de commande117
8.2.4 Attendre une commande (Niveau 8.7.7 Sortie du panneau de commande118
4) ................................................. 95 8.8 Opérateurs.........................................119
8.2.5 Filtre de commande (Niveau 4)... 96 8.8.1 Opérateurs arithmétiques..........119
8.2.6 Remplacer la valeur de la 8.8.2 Opérateurs relationnel...............119
commande (niveau 4) ................. 96 8.8.3 Opérateurs logiques..................120
8.2.7 I2C Écriture (niveau 4)................. 97 8.8.4 Bits opérateurs ..........................120
8.2.8 I2C Lecture (niveau 4) ................. 98 8.8.5 Fonctions...................................121
8.3 Sous-programme I/O (Niveau 2-3) ...... 99 8.9 ROBO Interface .................................123
8.3.1 Entrée du Sous-programme 8.9.1 Branchement digital (ROBO
(Niveau 2).................................... 99 Interface) ...................................123
8.3.2 Sortie du sous-programme (Niveau 8.9.2 Branchement analogique (ROBO
2) ................................................. 99 Interface) ...................................124
8.3.3 Entrée de commande du sous- 8.9.3 Attendre une entrée (ROBO
programme (Niveau 3) .............. 100 Interface) ...................................125
8.3.4 Sortie de Commande du sous- 8.9.4 Compteur d’impulsion (ROBO
programme (Niveau 3) .............. 100 Interface) ...................................126
8.4 Variable, Liste, ... (Niveau 3) ............. 101 8.9.5 Entrée digitale (ROBO Interface)126
8.4.1 Variable (globale) ...................... 101 8.9.6 Entrée analogique (ROBO
8.4.2 Variable locale........................... 102 Interface) ...................................127
8.4.3 Constantes ................................ 103 8.9.7 Entrée IR (ROBO Interface) ......128
8.4.4 Variable de Timer...................... 103
8.4.5 Liste........................................... 104 9 Aperçu des éléments de commande
8.5 Commandes (Niveau 3) .................... 106 et des panneaux de commande .....130
8.5.1 = (Attribuer) ............................... 107 9.1 Affichages ..........................................130
8.5.2 + ( Plus ).................................... 107 9.1.1 Appareil de mesure ...................130
8.5.3 – ( Moins ) ................................. 108 9.1.2 Affichage textuel........................131
8.5.4 Droite......................................... 108 9.1.3 Lampe de l’affichage .................133
8.5.5 Gauche...................................... 108 9.2 Eléments de commande....................133
8.5.6 Stop........................................... 108 9.2.1 Bouton .......................................133
8.5.7 In ............................................... 108 9.2.2 Régulateur à coulisse................134
8.5.8 Out ............................................ 108 10 Fonctions de dessin........................136
8.5.9 Texte ......................................... 109
8.5.10 Attacher une valeur................... 109 11 Nouvelles fonctions pour le ROBO TX
8.5.11 Supprimer une (des) valeur(s) .. 109 Controller..........................................138
8.5.12 Permuter des valeurs................ 109 11.1 Installation du pilote USB pour le ROBO
8.6 Comparaison, Attente, ... (Niveau 3). 109 TX Controller......................................138
8.6.1 Branchement (avec entrée de 11.2 Environnement (à partir du niveau 1) 138
données) ................................... 110 11.3 Programmation indépendante de
8.6.2 Comparaison avec une valeur fixe110 l’Interface ...........................................139
8.6.3 Comparaison............................. 111 11.4 Conversion de programmes ..............140
8.6.4 Attente....................................... 111 11.5 Entrées universelles, type de capteur et
8.6.5 Attendre..................................... 112 mode d’entrée....................................140
8.6.6 Compteur d’impulsions ............. 112
2
F
ROBOPro
3
11.6 Entrées de compteur rapides et
extension de la commande du moteur141
11.6.1 Moteur codeur (niveau 1).......... 141
11.6.2 Extension de la commande du
moteur dans le niveau 3............ 142
11.7 Display............................................... 144
12 Calcul avec des nombres décimaux –
arithmétique à virgule flottante (à
partir du niveau 3) ........................... 146
12.1 Comparaison de nombres à virgule
flottante.............................................. 146
12.2 Représentation de nombres à virgule
flottante.............................................. 147
12.3 Calcul de la précision ........................ 148
13 Raccordement de plusieurs ROBO TX
Controller à un PC........................... 149
3
F
ROBOPro
4
F
ROBOPro
• Moniteur et carte graphique d’une résolution d’au moins 1024x768 pixels. Pour les moniteurs
à tube cathodique, le taux de rafraîchissement d’image doit s’élever au moins à 85 Hertz afin
que l’image ne scintille pas. Sur les écrans plats TFT, l’image scintille quel que soit le taux de
rafraîchissement d’image de sorte que le taux de rafraîchissement d’image est insignifiant
pour ce type d’écran.
• Microsoft Windows, Version Windows XP ou Vista
• Une interface USB libre pour le raccordement de ROBO TX Controller. Vous devez disposer
d’un port USB libre ou d’une interface RS232 COM1 à COM4 libre pour le raccordement de
ROBO Interface.
Vous devez tout d’abord allumer votre ordinateur et attendre que le système d’exploitation (Win-
dows) soit totalement chargé. ROBO Interface ne doit être raccordé à votre ordinateur que lorsque
l’installation s’est terminée avec succès. Insérez alors le CD d’installation dans votre lecteur CD-
ROM. Le programme d’installation sur le CD se lance alors automatiquement.
• Cliquez sur le bouton Suivant de la fenêtre d’accueil du programme d’installation.
• La seconde fenêtre Informations importantes contient des informations importantes sur
l’installation du programme ou sur le programme en lui-même. Cliquez aussi sur le bouton
Suivant.
• Sur la troisième fenêtre Contrat de licence, vous pourrez lire le contrat de licence ROBO
Pro. Vous devez accepter ce contrat en cliquant sur Oui avant de pouvoir accéder à la fenê-
tre suivante en cliquant sur Suivant.
• Sur la fenêtre suivante Informations Utilisateur, vous devez entrer votre nom.
• Sur la fenêtre Type d’installation, vous pouvez choisir entre Installation Express ou Instal-
lation personnalisée. Dans l’installation personnalisée, vous pouvez décider de ne pas
installer certains des composants de l’installation. Si vous installez une nouvelle version de
ROBO Pro sur une ancienne version et avez modifié certains des programmes d’exemple de
l’ancienne version, vous pouvez ne pas installer les exemples lors de l’installation personna-
lisée. Dans le cas contraire, les programmes d’exemple modifiés seront écrasés sans
avertissement lors de l’installation. Si vous choisissez l’installation personnalisée et cliquez
sur Suivant, une fenêtre supplémentaire apparaît sur laquelle vous pouvez choisir les com-
posants.
• Dans la fenêtre Sélection du dossier d’installation, vous pouvez choisir le dossier ou le
chemin de répertoire où vous souhaitez installer ROBO Pro. Normalement, ce chemin est
C:\Programmes\ROBOPro. Vous pouvez cependant sélectionner un autre répertoire.
• Lorsque, sur la dernière fenêtre, vous cliquez sur Achever, l’installation commence. Dès que
l’installation est achevée – ce qui ne dure généralement que quelques secondes –, le pro-
gramme vous informe que l’installation a été achevée avec succès. En cas de problème, un
message d’erreur s’affiche afin de vous aidez à résoudre ce problème.
5
F
ROBOPro
Pour installer le pilote USB, vous devez d’abord raccorder le ROBO TX Controller ou ROBO
Interface à l’ordinateur au moyen d’un câble USB et l’alimenter en courant. Windows détecte
automatiquement que l’Interface est raccordée et la fenêtre suivante s’affiche :
Vous devez sélectionner Choisir le logiciel dans une liste ou une source et cliquer sur Suivant.
6
F
ROBOPro
Sur la fenêtre suivante, désactivez Parcourir les supports externes et activez Parcourir la
source suivante. Appuyez ensuite sur Parcourir et choisissez le sous-répertoire Installation du
pilote USB dans le répertoire où est installé ROBO Pro (le répertoire habituel est
C:\Programmes\ROBOPro\). Pour ROBO TX Controller, vous choisissez le sous-répertoire
TXController, pour ROBO Interface le sous-répertoire ROBOInterface et ensuite le sous-
répertoire contenant le pilote de votre système d’exploitation, p. ex. WinXP.
Après avoir appuyé sur Suivant, le message suivant peut apparaître sous Windows XP :
7
F
ROBOPro
Le pilote USB est alors contrôlé par Microsoft. Dès que le contrôle est terminé, le pilote est marqué
par Microsoft de sorte que ce message n’apparaisse plus. Afin d’installer le pilote, cliquez sur
Poursuivre l’installation.
Le message suivant apparaît finalement :
8
F
ROBOPro
Vous pouvez désinstaller ROBO Pro au moyen de l’entrée Désinstaller. L’entrée Aide ouvre le
fichier d’aide de ROBO Pro et l’entrée ROBO Pro lance le programme ROBO Pro. Choisissez
maintenant l’entrée ROBO Pro pour démarrer le logiciel.
Sur le haut de la fenêtre, vous trouverez une barre de menu et une barre d’outils avec différents
boutons de commande, ainsi que, sur le côté gauche, une fenêtre avec des éléments de pro-
gramme. Si deux fenêtres superposées apparaissent dans la colonne de gauche, ROBO Pro n’est
pas réglé sur Niveau 1. Pour adapter les fonctionnalités de ROBO Pro aux connaissances crois-
santes de l’utilisateur, ROBO Pro peut être réglé du Niveau 1, pour les Débutants, au Niveau 5,
pour les Experts. Regardez maintenant dans le menu Niveau si Niveau 1 : Débutants est coché.
Si non, sélectionnez Niveau 1.
ROBO Pro est réglé de telle manière que vous pouvez aussi utiliser le ROBO TX Controller
comme interface. Cette fonction est affichée par le bouton ROBO TX de la barre d’outils. Les
explications relatives à la commutation d’un ancien ROBO Interface vous sont données au Chapi-
tre 11.2 Environnement.
9
F
ROBOPro
Vous avez maintenant la possibilité, soit de créer un nouveau fichier de programme, soit d’ouvrir
un fichier de programme déjà existant. Nous créerons un nouveau fichier de programme au chapi-
Ouvrir tre 3 lorsque nous concevrons notre premier programme de commande. Pour apprendre à
connaître l’interface utilisateur, ouvrons un des programmes d’exemple déjà existant. Pour ce faire,
cliquez sur l’entrée Ouvrir du menu Fichier ou utilisez le bouton Ouvrir de la barre d’outils. Les
fichiers d’exemple se trouvent dans le répertoire C:\Programmes\ROBOPro\Programmes
d'exemple
Vous pouvez voir ici à quoi ressemble un programme ROBO Pro simple. Les éléments de pro-
gramme de la fenêtre d’éléments permettent, lors de la programmation dans la fenêtre de
10
F
ROBOPro
11
F
ROBOPro
12
F
ROBOPro
Après avoir choisi le réglage correct, fermez la fenêtre en cliquant sur OK. Ouvrez maintenant la
fenêtre de test de l’Interface en appuyant sur le bouton Test de la barre d’outils :
Test
Cette fenêtre représente les entrées et sorties présentes sur l’Interface. La barre verte en bas à
droite indique le statut de la liaison entre l’ordinateur et l’Interface :
• Raccordement en cours confirme une liaison correcte avec l’Interface
• Raccordement : suspendu signifie que la liaison n’a pas été correctement réglée et que
l’ordinateur ne peut pas établir de liaison avec l’Interface. La barre est alors rouge.
Pour pouvoir modifier le réglage de l’Interface ou de la liaison, vous devez fermer la fenêtre de test
(avec le X en haut à droite) et sélectionner une autre interface ou un autre type d’interface au
moyen du bouton COM/USB de la barre d’outils, comme cela a été décrit plus haut.
Si vous pouvez établir la liaison entre l’ordinateur et l’Interface et que la barre verte apparaît dans
la fenêtre Test, vous pouvez sans problème passer au prochain chapitre.
Dans le cas contraire, les astuces données dans le prochain sous-chapitre pourront peut-être vous
aider.
13
F
ROBOPro
seur de ROBO TX Controller ne fonctionne plus. Dans ce cas, la DEL rouge reste allumée ou
aucune des DELs ne sont allumées. L’écran n’affiche plus rien dans ce cas.
Si la tension est trop basse, vous devez recharger les accus ou utiliser de nouvelles pi-
les/batteries ou tester l’interface avec un bloc d’alimentation, dans la mesure du possible.
• Le pilote USB est-il correctement installé ?
Ce pilote est installé si le programme affiche une entrée fischertechnik USB ROBOT TX Con-
troller pour les raccordements (COM et LPT) dans le gestionnaire de périphériques du
panneau de configuration de Windows et il suffit de contrôler qu’il fonctionne correctement.
Répétez l’installation du pilote USB à supposer qu’il n’y ait pas d’entrée. Dans l’hypothèse de
l’affichage d’une erreur, vous devez désinstaller le pilote (cliquez avec le bouton droit de la
souris sur l’entrée respective) et l’installer à nouveau.
• Y a-t-il un conflit avec un autre pilote sur la même interface (p. ex. un modem) ? Ce pilote
devra éventuellement être désactivé (voir les manuels de Windows et de l’appareil).
• Si la liaison avec l’Interface n’a pas encore pu être établie, celle-ci ou le câble de liaison est
sans doute défectueux. Dans ce cas, adressez-vous au Service Fischertechnik (Adresse: voir
menu „?“ / Info sur).
14
F
ROBOPro
15
F
ROBOPro
Une grande surface blanche sur laquelle vous allez pouvoir saisir votre premier programme appa-
raît alors. Si deux fenêtres superposées apparaissent sur le bord gauche, veuillez tout d’abord
choisir Niveau 1 : Débutants dans le menu Niveau.
16
F
ROBOPro
17
F
ROBOPro
18
F
ROBOPro
cer des éléments d’un programme à un autre programme, vous pouvez, au départ, enfoncer les
touches CTRL+X ou utiliser la fonction Traiter / Couper, plutôt que les touches CTRL+C ou la
fonction Traiter / Copier.
Nota Bene: Si vous raccordez un mini-bouton comme contact de fermeture sur le raccorde-
ment 1 et 3, le branchement du programme ira vers la branche 1 lorsque vous appuierez sur
l’interrupteur ; dans le cas contraire, il ira vers 0.
Si vous raccordez un mini-bouton comme contact d’ouverture sur les raccordements 1 et 2, le
branchement du programme ira vers la branche 1 lorsque vous n’appuierez pas sur
l’interrupteur ; dans le cas contraire, il ira vers 0.
19
F
ROBOPro
20
F
ROBOPro
Nota Bene : Si une des lignes ne devait pas être correctement reliée au raccordement ou à
une autre ligne, un rectangle vert apparaîtrait à la pointe de la flèche. Dans ce cas, vous de-
vez établir la liaison soit en déplaçant la ligne, soit en la supprimant et en la retraçant. Dans
le cas contraire, le déroulement du programme ne pourra pas fonctionner à cet endroit.
21
F
ROBOPro
Avant de tester le programme de commande, vous devez enregistrer le fichier du programme sur
le disque dur de votre ordinateur. Cliquez avec la souris sur la commande Enregistrer sous... du
menu Fichier. La fenêtre de dialogue suivante apparaît alors :
Pour tester le programme, appuyez sur le bouton Start représenté ci-contre de la barre d’outils.
ROBO Pro teste d’abord si tous les éléments de programme sont bien reliés. Si un élément n’était
Start pas correctement relié ou si un autre problème se posait, l’élément posant problème serait marqué
en rouge et un message d’erreur décrivant le type de problème apparaîtrait. Si, p.e., vous avez
oubliez de raccorder la sortie Non (N) au branchement de programme, le message d’erreur serait
le suivant :
Si un message d’erreur apparaît, vous devez tout d’abord corriger l’erreur signalée. Dans le cas
contraire, le programme ne pourra pas démarrer.
Note Bene : Vous trouverez une explication détaillée de ce mode d’utilisation et du mode
d’utilisation „Téléchargement“ au point 3.7 à la page 25
22
F
ROBOPro
3.6.1 Attente
Avant de pouvoir compléter l’organigramme, vous devez effacer la liaison entre
„éteindre le moteur“ et „fin du programme“ et déplacer l’élément de fin vers le
bas. Vous pouvez maintenant ajouter de nouveaux éléments de programme
entre ces deux éléments. La porte de garage doit se refermer automatiquement
après 10 secondes. Pour ce faire, vous pouvez utiliser l’élément de programme
Attente représenté ci-contre. Vous pouvez régler le temps d’attente dans une large mesure selon
votre envie en cliquant, comme d’habitude, sur l’élément avec le bouton droit de la souris. Introdui-
sez alors la durée d’attente souhaitée (10 secondes). Pour fermer la porte de garage, le moteur
doit, bien entendu, tourner dans l’autre sens, donc vers la droite. Le moteur se coupe grâce à un
autre commutateur de fin I3.
23
F
ROBOPro
Symbole
Il est également possible d’utiliser une combinaison d’éléments de branchement ; l’opération est
cependant plus simple et claire avec l’élément Attendre l’entrée.
24
F
ROBOPro
cet élément, vous pouvez déterminer ce qui doit être considéré comme une impulsion (modifica-
tions quelconques ou seulement 0-1 ou seulement une permutation 1-0). Les engrenages
d’impulsion attendent généralement des modifications quelconques, de sorte que l’on atteint une
résolution de 8 étapes par rotation pour les 4 dents.
En Mode Online, vous pouvez également arrêter le programme et le remettre en marche en ap-
puyant sur le bouton Pause. C’est très pratique pour vérifier un point sur une maquette sans
arrêter la totalité du programme. Si vous souhaitez comprendre le déroulement d’un programme, Pause
la fonction Pause peut également être très utile.
Le bouton Etape vous permet de lancer le programme étape par étape, élément par élément. A
chaque fois que vous appuyez sur le bouton Etape, le programme passe à l’élément de pro-
gramme suivant. Si vous avez introduit un élément Attente ou Attendre..., cela peut durer un Etape
moment avant que le programme n’arrive sur l’élément suivant.
Si vous possédez ROBO TX Controller, vous pouvez utilisez le Mode Téléchargement plutôt que
le mode Online. En Mode Online, les programmes sont lancés par votre ordinateur. Votre ordina-
teur envoie des commandes comme „Allumer le moteur“ à l’Interface. Il est nécessaire que Téléchar-
l’Interface soit reliée à l’ordinateur pendant toute la durée du programme. En Mode Télécharge- gement
ment, le programme est lancé par l’ordinateur lui-même. Votre ordinateur enregistre le programme
dans le ROBO TX Controller. Lorsque c’est fait, la liaison entre l’ordinateur et l’Interface peut être
coupée. L’Interface peut alors lancer le programme de commande indépendamment de
l’ordinateur. Le Mode Téléchargement est important, p. ex., pour la programmation de robots
25
F
ROBOPro
mobiles pour lesquels un câble de liaison entre l’ordinateur et le robot représente un vrai handicap.
Cependant, tous les programmes de commande devraient être testés au préalable en Mode
Online car les erreurs possibles peuvent alors être mieux détectées. Le programme testé peut
alors être transféré par téléchargement sur ROBO TX Controller. Le câble gênant peut être rem-
placé par une liaison radio Bluetooth. La maquette est alors totalement mobile même en Mode
Online (voir le mode d’emploi du ROBO TX Controller).
Le Mode Online a cependant également des avantages par rapport au Mode Téléchargement. En
comparaison avec l’Interface, un ordinateur a une mémoire de travail beaucoup plus étendue et
peut calculer beaucoup plus rapidement. Pour des programmes de grande taille, il s’agit là d’un
avantage. Qui plus est, en Mode Online, un ROBO TX Controller et une ROBO Interface peuvent
être commandées simultanément.
Aperçu des deux modes d’utilisation :
26
F
ROBOPro
des années, même si celle-ci n’est pas alimentée en courant. Vous pouvez bien évidemment
écraser des programmes enregistrés sur une mémoire Flash. Le Téléchargement sur la mémoire
RAM est cependant nettement plus rapide et est donc recommandé pour les tests.
Vous pouvez enregistrer plusieurs programmes dans la mémoire Flash, par exemple, des compor-
tements différents pour un même robot mobile. Vous pouvez alors sélectionner, démarrer ou
arrêter les deux programmes via les boutons de sélection du ROBO TX Controller. Lorsque
l’option Lancer le programme après le téléchargement est activée, le programme se lance
directement après le téléchargement. Pour arrêter le programme, appuyez sur le bouton de sélec-
tion gauche sur le TX Controller. L’option Lancer le programme via la touche de l’interface
prend tout son sens pour les robots mobiles. Si vous ne possédez pas d’interface Bluetooth, vous
devez le câble USB avant que votre programme ne puisse mettre le robot en mouvement. Dans ce
cas, vous devez tout d’abord sélectionner le programme souhaité via le bouton de sélection gau-
che sur le TX Controller
Un programme est lancé automatiquement quand l’Interface est alimentée en courant via la fonc-
tion de Démarrage automatique du ROBO TX Controller. Vous pouvez alors, p. ex., alimenter
votre Interface en courant au moyen d’un bloc d’alimentation pourvu d’un minuteur et lancer le
programme chaque jour au même moment. Ainsi, l’Interface ne doit pas rester allumée en perma-
nence et le programme ne doit pas à chaque fois être lancé via le bouton de sélection.
Nota Bene :
Vous trouverez une description détaillée des fonctions du ROBO TX Controller dans le mode
d’emploi joint à l’appareil.
Si la souris se trouve sur une ligne de liaison horizontale, vous pouvez déplacer
l’ensemble de la ligne horizontale en appuyant sur le bouton gauche de la souris.
Si la souris se trouve sur une ligne de liaison oblique, un nouveau point sera ajouté sur la
ligne de liaison si vous appuyer sur le bouton gauche de la souris. Vous devez garder le
bouton droit de la souris enfoncé et ne le lâcher que lorsque la souris se trouve là où le
point doit se positionner.
27
F
ROBOPro
Si la souris se trouve à proximité d’un point d’angle ou d’une extrémité d’une ligne de
liaison, vous pouvez déplacer ce point en appuyant sur le bouton gauche de la souris.
Vous pouvez alors placer un point d’extrémité sur un autre raccordement d’un élément de
programme. Dans ce cas, l’extrémité de la ligne de liaison sera reliée à ce point de raccordement.
Dans le cas contraire, le point ne sera pas déplacé.
28
F
ROBOPro
Pas de panique ! La fenêtre d’éléments est encore là, mais elle est vide. Au Niveau 2, il y a plus
d’éléments de programme, de sorte que ce ne serait pas clair si on les rassemblait tous dans une
fenêtre. A partir du Niveau 2, les éléments sont donc regroupés en groupes d’éléments. Les élé-
ments sont organisés en groupes comme les fichiers dans les dossiers sur un disque dur. Si vous
choisissez un groupe dans la fenêtre supérieure, sur le côté gauche, tous les éléments de ce
groupe apparaissent dans la fenêtre inférieure. Les éléments du Niveau 1 se trouvent dans le
groupe Eléments de programme / Eléments du fond. Etant donné que la fenêtre d’éléments est
diminuée de moitié, vous devez utilisez la barre de défilement à droite de la fenêtre d’éléments afin
de pouvoir accéder aux éléments inférieurs.
Revenons-en au sujet principal : les sous-programmes ! Les organigrammes que nous avons
conçus jusqu’ici ne sont pas encore assez étendus pour que nous puissions perdre une vision
globale de ceux-ci, mais vous pouvez certainement vous imaginer que cela peut très facilement
être le cas pour les projets de grande envergure, avec des organigrammes étendus. Votre feuille
de travail est alors remplie d’éléments, il y a des lignes de liaison partout et, sur l’écran, vous
devez sans cesse allez d’un côté à un autre avec la barre de défilement. "Où était donc telle ou
telle sortie ?" Bref – On frôle le chaos ! Que faire ? N’y a-t-il pas une solution pour remettre de
l’ordre dans tout ça ? Si – Cette solution s’appelle Sous-programme !
29
F
ROBOPro
30
F
ROBOPro
Etes-vous prêt à programmer votre premier sous-programme ? Allons-y ! Mais par quoi peut bien
commencer un sous-programme ? Bonne question ! Vous avez toujours débuté un programme
principal avec un élément de démarrage. Un sous-programme commence avec un élément sem-
blable, l’entrée du sous-programme. Cet élément porte ce nom car le déroulement du programme
passe du programme principal au sous-programme via cet élément. Vous ne pouvez pas utilisez
d’élément de démarrage ici car il ne s’agit pas de démarrer une nouvelle procédure.
31
F
ROBOPro
32
F
ROBOPro
p.e., si vous commandez tout un parc de machines et que vous avez déjà développé des com-
mandes individuelles pour les machines dans des programmes principaux. Le second symbole
porte le nom Ouvrir et est le symbole de votre nouveau sous-programme. Ouvrir est le nom que
vous avez introduit dans la fenêtre des propriétés. Ajoutez maintenant le symbole du sous-
programme dans le programme principal comme vous le faisiez pour les éléments de programme
habituels. C’est aussi simple que ça !
Vous pouvez déjà terminer votre programme principal avec un élément de fin et le tester. La porte
s’ouvre lorsque l’on actionne l’interrupteur I1, mais nous n’avons pas encore programmé la partie
Fermeture. Pour ce faire, il vous faut créer un nouveau sous-programme. Cliquez sur le bouton Nouveau
Nouveau SP de la barre d’outils et introduisez le nom Fermer dans la fenêtre Nouveau Sous- SP
programme. Vous ne devez pas introduire de description mais vous pouvez le faire afin de tou-
jours savoir à quoi sert le sous-programme.
Insérez alors dans la fenêtre de programme du sous-programme Fermer le programme de ferme-
ture de la porte de garage. Commencez à nouveau avec une entrée du sous-programme. Le
moteur M1 doit maintenant tourner vers la droite. Dès que le commutateur de fin sur I3 est fermé,
le moteur M1 doit s’arrêter. Le sous-programme se termine à nouveau par une sortie du sous-
programme.
Basculez à nouveau avec la barre des sous-programmes vers le programme principal. Si vous
avez terminé votre programme principal avec un élément de fin pour pouvoir le tester, l’élément de
fin doit maintenant être supprimé. Après l’ouverture de la porte, celle-ci doit rester ouverte 10
secondes avant de se fermer à nouveau. Après une attente de 10 secondes, ajoutez le symbole
Fermer du sous-programme en allant le chercher dans les groupes d’éléments Programmes
chargés / sans-nom1. Le programme principal et les deux sous-programmes doivent être plus ou
moins semblables à ceci :
33
F
ROBOPro
34
F
ROBOPro
Astuce: Au début, vous pouvez indiquer le dossier dans lequel vous enregistrez vos pro-
grammes ROBO Pro pour la Liste des bibliothèques personnelles. Vous avez ainsi accès
plus rapidement à tous les sous-programmes de tous les fichiers dans votre dossier de tra-
vail.
35
F
ROBOPro
4.4 Tango
Jusqu’ici vous avez seulement découvert des programmes vraiment simples et vous attendez
peut-être impatiemment de découvrir de nouveaux éléments de programme et de nouvelles possi-
bilités. Cependant, avant de nous occuper des variables et autres choses plus compliquées au
chapitre suivant, nous souhaitons tout d’abord voir avec vous ce qu’il est possible de faire avec les
éléments de programmation du niveau 2. Comment pouvez-vous, par exemple, apprendre à
36
F
ROBOPro
danser le tango à votre robot mobile ? Pour les « Nerds »Σ: Le tango se danse sur une musique à
2/4 de temps. Le pas de base comprend 8 pas sur 3 temps. Pour les hommes, les pas
s’enchaînent comme suit :
• Un pas lent vers l’avant avec le pied gauche (1/4 de temps)
• Un pas lent vers l’avant avec le pied droit (1/4 de temps)
• Puis, un pas « de balancier » de 4/8 de temps. Ici, les pieds bougent peu, voire pas du tout ;
seul le poids du corps se déplace. Tout d’abord, le poids du corps passe pendant 1/8 de
temps sur le pied gauche, situé à l’arrière, puis pendant 1/8 de temps sur le pied droit, situé à
l’arrière, et ensuite encore 1/8 de temps sur le pied gauche, situé à l’arrière. Le mouvement
de balancier se termine par une pause de 1/8 de temps.
• Viennent ensuite trois pas rapides : Faire tout d’abord un petit pas vers l’arrière avec le pied
droit, de manière à se retrouver à nouveau à côté du pied gauche. Faire alors un pas latéral
avec le pied gauche et, pour finir, remplacer le pied droit à côté du pied gauche. Ces trois
pas durent chacun 1/8 de temps et se terminent pas une nouvelle pause de 1/8 de temps.
Pour les dames, la suite de pas est symétrique ; cela signifie que la gauche et la droite, ainsi que
les mouvements en arrière et en avant, sont inversés. Répétez le tout jusqu’à ce que la musique
s’arrête, jusqu’à ce que vous ayez atteint l’extrémité de la pièce ou jusqu’à ce que vous commen-
ciez à vous embêter. Dans ces deux derniers cas, demandez conseil à un professeur de danse.
Mais revenons-en à la robotique. Peut-être possédez-vous déjà un jeu de construction fischer-
technik pour robot mobile. Les robots de ces jeux de construction disposent le plus souvent de
deux roues d’entraînement, dotées chacune d’un moteur indépendant. Ces robots sont comman-
dés de la même manière qu’un véhicule chenillé. Lorsque les deux moteurs d’entraînement
tournent dans le même sens, le robot avance tout droit. Lorsqu’un moteur s’arrête, le robot décrit
une courbe.
Bien entendu, il est également possible de faire reculer ces robots en ligne droite ou le long d’une
courbe. Lorsque les deux moteurs d’entraînement tournent dans des sens opposés, le robot
tourne sur lui-même, en restant sur place. Essayez maintenant de traduire les pas du tango en
tours de roue. Un quart de temps doit alors durer un tour de roue. Nous obtenons alors :
• Roue gauche : 1 rotation vers l’avant (généralement : moteur M2 vers la gauche).
• Roue droite : 1 rotation vers l’avant (généralement : moteur M1 vers la gauche).
Vient alors le « mouvement de balancier ». Cependant, notre robot ne peut naturellement pas
bouger son corps sans bouger les « pieds ». Le pas latéral du troisième temps également très
compliqué pour un robot. Nous effectuons donc une légère rotation au 2ème temps et avançons
Σ
Le terme « Nerd » est un terme anglais désignant une personne ne sortant jamais sans
son ordinateur et préférant expliquer à son professeur de mathématiques comment telle
chose fonctionne plutôt qu’aller danser.
37
F
ROBOPro
légèrement au 3ème temps de manière à simuler le pas latéral. Pour le deuxième temps, nous
procédons comme suit :
• Roue gauche : rotation vers l’arrière (généralement : moteur M2 vers la droite).
• Roue droite : rotation vers l’avant.
• Roue gauche : rotation vers l’arrière.
Les commandes « à gauche, vers l’arrière », mais aussi « à droite, vers l’avant » font tourner le
robot vers la gauche. Pour le 3ème temps, nous procédons comme suit :
• Roue droite : ½ rotation vers l’arrière.
• Tout droit : ½ rotation vers l’avant.
• Roue droite vers l’arrière et roue gauche vers l’avant : ½ rotation.
Nous faisons ainsi tourner le robot légèrement vers la droite, puis avançons tout droit (vers l’avant,
à gauche) pour simuler le pas latéral vers la gauche ; pour finir, nous replaçons le robot tout droit.
Essayons maintenant de « traduire » cette « suite de pas » dans ROBOPro. La mise en œuvre
diffère selon que vous utilisez un TX Controller avec moteurs codeurs ou un modèle avec commu-
tateurs d’impulsions. Ces deux cas sont traités séparément dans les deux chapitres suivants :
4.4.1 Commande de moteur par commutateurs d’impulsions à la page 38 et 4.4.2 Commande par
moteurs codeurs à la page 42.
38
F
ROBOPro
• Droite 1/8 R (identique à « Droite 1/8 », mais vers l’arrière, donc moteur de droite)
Les pauses de 1/8 de temps ne peuvent naturellement pas être ajoutées via le
compteur de pulsations car aucune roue ne bouge pendant les pauses. Nous
utilisons ici un temps de renvoi. Sur les maquettes standard du set ROBO Mobile,
4 demi-impulsions correspondent à env. 0,3 secondes. Selon la transmission et
le moteur, cela peut cependant être différent sur votre maquette. Créez égale-
ment un sous-programme pour la pause de 1/8 de temps. Indépendamment de
l’entrée et de la sortie du sous-programme, ce sous-programme ne contient
qu’un seul élément, vous avez cependant besoin de cette pause à deux reprises.
Si vous créez un sous-programme pour cela, vous pouvez légèrement modifier
la durée de la pause.
Vous allez sans doute dire que nous pourrions également utiliser un temps de renvoi et pas de
compteur d’impulsions pour les pas. Vous ne devriez ainsi pas adapter la durée des pauses et la
durée de pas. Il y aurait cependant un inconvénient : les moteurs de gauche et de droite ne tour-
nent pas toujours exactement à la même vitesse ; le robot ne pourrait donc pas danser deux fois
de la même manière. Lorsque vous utilisez le compteur d’impulsions, par contre, vous êtes sûr
que les deux roues parcourent exactement la même distance, même lorsque l’accu est vide ou
lorsqu’une roue tourne un peu plus lentement que l’autre.
Il ne nous manque plus que les sous-programmes pour le pas d’1/8 de temps vers l’avant et pour
la rotation sur place d’1/8 de temps. Pour ce faire, procédez exactement comme pour les autres
pas ; la seule différence est que vous devez allumer les deux moteurs plutôt qu’un seul. La seule
question est la suivante : « Comment faire avec les commutateurs d’impulsions ? » Il n’est pas
possible de simplement placer deux compteurs d’impulsions l’un à la suite de l’autre. Le pro-
gramme attend alors tout d’abord 4 demi-impulsions du premier moteur, puis 4 demi-impulsions de
l’autre moteur. Il serait plus simple d’attendre un seul des deux moteurs ; cela poserait cependant
un problème si les deux moteurs ne tournent pas à la même vitesse. La meilleure solution est de
démarrer les deux moteurs et d’attendre jusqu’à ce qu’un des compteurs d’impulsions change.
Arrêtez alors immédiatement le moteur dont le commutateur de pulsations a changé et attendez
ensuite jusqu’à ce que le second commutateur de pulsations change ; arrêtez alors le second
moteur. Tout cela est malheureusement compliqué car vous ne savez pas si le commutateur
d’impulsions est ouvert ou fermé au départ. Vous avez quatre possibilités lorsque vous utilisez
deux commutateurs d’impulsions : Par chance, un sous-programme existe déjà dans la bibliothè-
que pour cette fonction. Créez un sous-programme « Tout droit 1/8 » et ajoutez le sous-
programme « SyncSchritt » de la bibliothèque du même nom dans le dossier « ROBO Mobile Set
». Si vous ne savez plus comment procéder, veuillez consulter le chapitre 4.2 Bibliothèque des
sous-programmes qui se trouve en page 34.
Les sous-programmes « SyncSchritt » représenté est brièvement expliqué ci-dessous pour les
plus curieuses. Si l’aperçu du sous-programme vous suffit, passez simplement les paragraphes et
tâches suivantes. Vous pouvez très bien utiliser un sous-programme sans comprendre comment il
fonctionne – l’important est de comprendre ce que vous êtes en train de faire.
39
F
ROBOPro
Le sous-programme demande tout d’abord les états des deux commutateurs d’impulsions I1 et I2.
Selon que l’état de I1 et I2 est 0 ou 1, le sous-programme bascule vers 4 branches différentes du
programme. La branche totalement à droite est utile lorsque I1 et I2 ont la valeur 1 au départ. Le
sous-programme doit alors logiquement attendre que I1 ou I2 obtiennent la valeur 0. Ceci est
possible grâce aux deux éléments de branchement de la boucle. Tant que la valeur de I1 et I2 est
1, le programme tourne en rond. Cependant, dès que le statut d’une des deux entrées est 0, le
moteur concerné est immédiatement arrêté. Le sous-programme attend ensuite que le statut de la
seconde entrée soit 0 grâce à un élément « Attendre une entrée » et éteint alors le second moteur.
La boucle dans laquelle les deux entrées sont attendues est nécessaire car vous ne pouvez pas
savoir lequel des deux moteurs tourne plus vite et, par conséquent, la valeur de quel commutateur
d’impulsions changera le plus rapidement. Les 3 autres branches fonctionnent de la même ma-
nière ; ils se basent cependant sur d’autres statuts de départ et attendent donc l’état final opposé à
l’état initial. Dans la seconde branche de gauche, les valeurs de départ sont par exemple I1=1 et
I2=0 ; vous pouvez facilement le vérifier en suivant le chemin des deux premiers éléments du
branchement. La seconde branche attend donc que I1=0 et I2=1. Si vous souhaitez créer le pro-
gramme vous-même, veillez bien à ce que les valeurs initiales du commutateur d’impulsions soient
dans chaque branche et à ce que vous attendez par conséquent.
Si vous avez déjà feuilleté le chapitre suivant pour en savoir plus sur les variables, essayez
d’écrire un sous-programme ayant la même fonction, mais en utilisant des variables. C’est très
simple car vous pouvez au départ enregistrer la valeur des deux commutateurs d’impulsions dans
deux variables avec des éléments de commande = et avez uniquement besoin d’une branche du
programme dans laquelle vous pourrez comparer la valeur actuelle des entrées avec les valeurs
des variables.
40
F
ROBOPro
41
F
ROBOPro
42
F
ROBOPro
• Droite 1/8 R (identique à « Droite 1/8 », mais vers l’arrière, donc moteur de
droite)
Les pauses d’1/8 de temps ne peuvent naturellement pas être ajoutées via le
compteur d’impulsions, car aucune roue ne bouge pendant les pauses. Nous
utilisons ici un temps de renvoi. Sur les maquettes standard du kit « ROBO TX
Training Lab », 37 impulsions correspondent à env. 0,3 seconde. Selon la
transmission et le moteur, cela peut cependant être différent sur votre maquette.
Créez également un sous-programme pour la pause d’1/8 de temps.
Indépendamment de l’entrée et de la sortie du sous-programme, ce sous-
programme ne contient qu’un seul élément, vous avez cependant besoin de cette pause à deux
reprises. Si vous créez un sous-programme pour cela, vous pouvez légèrement modifier la durée
de la pause.
Vous allez sans doute dire que nous pourrions également utiliser un temps de renvoi et pas
d’extension de commande du moteur pour les pas. Ainsi, nous n’aurions pas besoin d’adapter la
durée des pauses et celle des pas. Il y aurait cependant un inconvénient : les moteurs de gauche
et de droite ne tournent jamais exactement à la même vitesse ; le robot ne pourrait donc pas
danser deux fois de la même manière. Lorsque vous utilisez l’extension de la commande du
moteur, par contre, vous êtes sûr que les deux roues parcourent exactement la même distance,
même lorsque l’accu est vide ou lorsqu’une roue tourne un peu plus lentement que l’autre.
Il ne nous manque plus que les sous-programmes pour le pas d’1/8 de
temps vers l’avant et pour la rotation sur place d’1/8 de temps.
L’extension de la commande du moteur offre également la possibilité
de commander deux moteurs en même temps. Pour cela, on dispose
des actions Synchrone et Distance de synchronisation. L’action
Synchrone veille à ce que deux moteurs codeurs tournent
exactement à la même vitesse, ce qui permet au robot d’avancer tout
droit. Toutefois, les moteurs codeurs ne garantissent pas non plus un
mouvement parfaitement droit, car il y a toujours un peu de glissement
au niveau des roues. Dans notre exemple, les moteurs M1 et M2
doivent tourner à la même vitesse sur une distance équivalant à 75
impulsions. Pour ce faire, vous devez utiliser l’action « Distance de
synchronisation ». Dans le cas des moteurs synchronisés, le signal
« But atteint » ne sera émis que lorsque les deux moteurs auront
atteint la position désirée. Il suffit donc d’attendre l’un des deux
signaux « But atteint ». N’oubliez pas d’arrêter les deux moteurs à la
fin !
Essayez et vous constaterez qu’un robot avance vraiment plus droit
avec l’action Distance de synchronisation que lorsque les deux moteurs sont commandés séparé-
ment via l’action Espacement.
Le dernier sous-programme dont nous avons encore besoin doit permettre au robot de faire une
rotation correspondant à 37 impulsions vers la droite, tout en restant à la même place. Pour cela
aussi, nous utiliserons l’extension de la commande du moteur avec l’action Distance de
synchronisation. Dans le cas du sous-programme « Rotation 1/8 » cependant, les deux moteurs
tourneront dans des directions différentes. Pensez au sens de rotation que doivent avoir les
moteurs M1 et M2 pour que le modèle tourne à droite tout en restant à la même place.
43
F
ROBOPro
Vous trouverez le programme Tango terminé dans le répertoire d’installation de ROBOPro, sous :
Programmes d'exemple\Manuel\Tango Moteur codeur\TangoSolo.rpp
Programmes d'exemple\Manuel\Tango Commutateur impulsions\TangoSolo.rpp
Si vous possédez votre propre robot, essayez le programme que vous avez créé ou le programme
déjà terminé.
Vous vous dites sans doute : « C’est bien, mais pour danser, il faut être deux. » C’est très facile
d’écrire un programme exécutant les pas de la dame en fonction des pas de l’homme. Il vous suffit
d’inverser la gauche et la droite, ainsi que les mouvements vers l’avant et vers l’arrière. Chargez
tout d’abord votre programme reprenant les pas de l’homme et sauvegardez-le sous un nouveau
nom, par ex. TangoSoloDame.rpp. Modifiez ensuite les sous-programmes, par ex. Gauche 1/4
en Droite 1/4 A. Pour ce faire, vous devez modifier M2 en M1 et le sens de rotation doit passer de
gauche à droite. Vous pouvez modifier le nom du sous-programme en cliquant sur l’onglet Pro-
priétés et en y saisissant un nouveau nom. Le nom se modifie automatiquement dans le
programme principal dans lequel le sous-programme est lancé.
44
F
ROBOPro
Le sous-programme Touner 1/8 reste identique. Pouvez-vous nous dire pourquoi ? Permutez la
gauche et la droite (M1 et M2 dans le sous-programme), ainsi que les mouvements vers l’avant et
vers l’arrière (moteur gauche/droite) dans Tourner 1/8 et comparez ce sous-programme modifié
avec le sous-programme original.
Si vous possédez deux robots mobiles, chargez maintenant le programme TangoSolo.rpp dans le
premier et le programme TangoSoloDame.rpp dans le second. Si vous ne possédez qu’un robot,
vous pouvez éventuellement faire ce test avec une autre personne possédant également un robot.
Lors du chargement, vous devez indiquer que le programme doit être démarré via une touche de
l’interface. Placez alors les deux robots face à face, avec un léger décalage, comme indiqué sur
l’illustration, et démarrez les deux robots en même temps en appuyant brièvement sur la touche de
démarrage (TX-Controller) ou sur la touche PROG des deux interfaces.
Si vous avez bien démarré les deux robots en même temps, ceux-ci danseront le tango en rythme
pendant un moment. Cependant, si les moteurs ou batteries ne sont pas parfaitement identiques,
les moteurs ne tournent pas exactement à la même vitesse et – tôt ou tard – les robots ne sont
plus en rythme. Vous verrez à la section suivante comment vous pouvez parvenir à ce que les
deux robots restent en rythme pendant une plus longue période.
45
F
ROBOPro
Data Link vous offrent cependant d’autres possibilités : Bluetooth et RF Data Link permettent à
deux robots d’échanger des informations et donc, de communiquer.
Au niveau 2, les éléments de pro-
gramme comprennent un sous-groupe
Envoyer, recevoir avec deux éléments.
L’élément de gauche est l’émetteur et
l’élément de droite, le récepteur.
L’élément émetteur envoie le message
bonjour au TX Controller ou à l’interface
ROBO (ci-après désignée uniquement TX Controller) avec le numéro d’appel radio 1, NAR 1 en
abrégé. Le numéro d’appel radio est une sorte de numéro de téléphone indiquant à quel contrôleur
(Controller) le message doit être envoyé. Vous en apprendrez plus à ce sujet au point Fehler!
Verweisquelle konnte nicht gefunden werden. Paramètres radio pour l’interface Robo à la page
49 et 4.5.2 Paramètres Bluetooth pour TX Controller à la page 53.
Le récepteur, représenté à droite sur l’illustration, fonctionne comme un branchement du pro-
gramme : Si vous recevez le message bonjour, l’élément se connecte sur la sortie Oui (O) ; dans
le cas contraire, il se connecte sur la sortie Non (N).
Supposons que l’élément « Emetteur » est appelé par un programme sur le contrôleur avec le
numéro d’appel radio (numéro de téléphone) 2. Il envoie alors le message bonjour par ondes
radio à l’interface dont le numéro d’appel radio est 1 car celui-ci a été indiqué comme récepteur
dans l’émetteur. L’interface dont le numéro d’appel radio est 1 remarque qu’il a reçu un message «
Hallo ». Lorsqu’un élément « Récepteur » demandera à nouveau à cette interface si elle a reçu un
message bonjour, la réponse sera Oui, puis à nouveau Non jusqu’à ce qu’un nouveau message
bonjour soit reçu. Le récepteur ne peut pas savoir à partir de quelle interface le message a été
envoyé†. Pour pouvoir faire la différence, différents messages doivent être envoyés.
bonjour Le message est un mot au choix, comme - par exemple – bonjour. Cependant, pour des raisons
= techniques, seuls les trois premiers chiffres ou lettres du message sont pris en compte. Vous
bonsoir pouvez indiquer plus de trois caractères ; cependant, « bonjour », « bonsoir » ou « bonbon »
donneront le même message, c’est-à-dire « bon ». Aucun différence n’est également faite entre les
majuscules et les minuscules, ainsi qu’entre les caractères spéciaux (espaces, !?,% et autres). XY!
et XY? équivaudront donc à un message identique. Une différence est faite entre les chiffres : XY1
et XY2 sont donc des messages différents.
La synchronisation des deux robots Tango avec les
éléments « Emetteur » et « Récepteur » est dé-
sormais un jeu d’enfant. Au début du cycle de pas,
le premier robot envoie un message « Voulez-vous
danser » et l’autre robot, un message « Oui, dan-
sons », puis le programme démarre. Etant donné
que les messages ne peuvent pas être aussi longs,
appelons-les SH pour « Synchronisation Homme »
et SD pour « Synchronisation Dame ». Deux sous-
programmes de synchronisation sont représentés à
droite. Le sous-programme de gauche est exécuté
pour le robot « Homme » avec le numéro d’appel
radio 1 et envoie tout d’abord un message SH à la
46
F
ROBOPro
« dame » dont le numéro d’appel radio est 2. L’« homme » attend alors le message SD de la «
dame ».
47
F
ROBOPro
A gauche, vous voyez la fenêtre de propriétés de l’élément « Récepteur ». Comme pour l’émetteur,
vous pouvez y sélectionner une commande (un message). Vous devez encore choisir si le récep-
teur ne doit réagir qu’aux commandes directement envoyées à l’interface, c’est-à-dire avec un
numéro d’appel défini, ou aux commandes envoyées à toutes les interfaces. Vous pouvez égale-
ment sélectionner les deux options. Vous pouvez également sélectionner comment permuter les
raccordements Oui et Non sur chaque élément de branchement.
Jusqu’ici, nous avons parlé de « messages ». Cependant, dans les fenêtres de propriétés de
l’émetteur et du récepteur et, plus tard, au niveau 3, nous utiliserons le terme « Commande ». Ces
termes ont la même signification en ce qui concerne le transfert de données. Le fait qu’un mes-
sage soit une commande ou non dépend de l’interprétation et non du type de transfert. Au niveau
3, vous entendrez beaucoup parler de messages ; il s’agit alors – par exemple – de commandes
permettant de diriger un moteur ou une variable. Dans ROBOPro, le terme « Commande » est
donc généralement utilisé par les messages.
48
F
ROBOPro
49
F
ROBOPro
Dame ». Au début du cycle de pas suivant, la « Dame » a alors déjà reçu un message SH, sans
que l’« homme » ait envoyé de nouveau message. La « dame » n’attend donc plus l’« homme ».
L’« homme » doit donc attendre suffisamment longtemps avant de répéter son message.
L’« homme » peut bien entendu également attendre 1/10 de seconde avant l’envoi et voir s’il a
reçu une réponse. Attendre 10 fois 1/100 de seconde en boucle présente cependant l’avantage
ROBO-IF que l’« homme » peut presque immédiatement reprendre le cours de son programme lorsqu’il
reçoit la réponse de la « dame ». Vérifiez maintenant si le programme fonctionne mieux lorsque
vous modifiez le sous-programme Sync dans TangoSyncHomme.rpp, comme indiqué ci-dessus.
Les robots doivent alors toujours démarrer dès que le programme est lancé sur le second robot,
indépendamment du robot démarré le premier.
Si vous laissez danser vos robots jusqu’à ce que leurs batteries soient vides, une synchronisation
par cycle de pas ne suffit plus. Les robots se synchronisent au début de chaque cycle de pas,
mais – pendant le cycle – vous voyez clairement qu’ils ne sont plus en rythme lorsque les batteries
arrivent en fin de vie. L’idéal est d’intégrer une synchronisation supplémentaire après chaque pas.
Il est cependant clair que les deux programmes s’exécutent de manière à ce que vous puissiez
éviter les répétitions. Pour que la synchronisation de départ et la synchronisation des pas ne se
mélangent pas, vous devez utiliser deux sous-programmes différents Sync1 et Sync2 utilisant
chacun des messages différents, par exemple SH1, SD1 et SH2, SD2. Vous trouverez les pro-
grammes terminées dans le répertoire d’installation de ROBOPro, sous
Programmes d'exemple\Manuel\Tango Moteur codeur\
Programmes d'exemple\Manuel\Tango Commutateur impulsions\
TangoHomme.rpp
TangocDame.rpp
Vous y trouverez un programme TangoMoniteurDeCommande.rpp. Si vous disposez d’un
troisième TX-Controller ou d’une troisième interface dotée d’un module ROBO RF Data Link, vous
pouvez lancer ce programme en mode Online pendant que les deux robots dansent le tango. Le
programme indique alors à l’écran les messages ayant été envoyés. Le programme utilise des
éléments de niveau 3 et vous ne devez actuellement pas chercher à comprendre comment fonc-
tionne le programme.
50
F
ROBOPro
Toutes les interfaces ROBO dotées d’un RF Data Link réglées sur la même fréquence doivent
posséder un numéro d’appel radio différent, compris entre 1 et 8. Le numéro d’appel radio 0 est
attribué au module PC du RF Data Link, la « boîte rouge ». Un maximum de 8 interfaces dotées
d’un module radio intégré et un module PC RF Data Link peuvent donc communiquer. Le numéro
d’appel radio est comme le numéro de téléphone d’une interface sur le réseau radio. Les numéros
1 à 8 peuvent être affectés, selon votre préférence, à un maximum de 8 interfaces.
La case Activer est presque toujours cochée. Vous pouvez cependant désactiver le module radio
d’une interface lorsque vous n’utilisez pas celui-ci dans une maquette et que vous souhaitez
économiser du courant sans démonter le module.
Lorsque vous avez procédé à tous les réglages, vous pouvez sauvegarder ces paramètres au
moyen du bouton Inscrire sur l’interface de l’interface. En règle générale, ces paramètres sont
enregistrés dans la mémoire Flash. Les paramètres sont alors conservés même lorsque vous
éteignez l’interface. Si vous souhaitez juste réaliser un court test, vous pouvez également enregis-
trer les paramètres dans la mémoire temporaire.
Vous ne devez pas vous occuper de la version du microprogramme – c’est-à-dire de la version du
programme de commande interne du RF Data Link. ROBOPro vous demande automatiquement
d’actualisation la version lorsque cela est nécessaire.
Pour faciliter la communication entre les deux robots Tango, connectez tout d’abord un des deux
robots à l’interface USB du PC et ouvrez la fenêtre de test de l’interface. Il se peut éventuellement
que vous deviez tout d’abord appuyer sur le bouton COM-USB et sélectionner l’interface. Basculez
dans l’onglet Info de la fenêtre de test de l’interface et réglez-y la fréquence sur 2 et le numéro
d’appel radio sur 1; enregistrez alors les paramètres au moyen du bouton Inscrire sur l’interface.
Fermez alors la fenêtre de test de l’interface, connectez l’autre robot à l’interface USB et réglez la
fréquence sur 2 et le numéro d’appel radio sur 2.
51
F
ROBOPro
Pour régler la fréquence du module radio PC, raccordez le module PC à l’interface USB du PC.
Vous pouvez alors régler la fréquence via l’onglet Info de la fenêtre de test de l’interface, comme
vous le feriez pour un autre module radio. Si le module radio PC ne peut « joindre » aucune inter-
face dotée d’un module radio intégré – par exemple parce la fréquence n’est pas encore la même
–, vous recevez un message d’erreur lorsque vous ouvrez la fenêtre de test de l’interface. Le
message d’erreur indique cependant uniquement qu’aucune interface n’a été trouvée et que, par
conséquent, aucune entrée ou sortie n’est disponible. Vous pouvez cependant procéder aux
réglages dans la fenêtre Info malgré le message d’erreur.
52
F
ROBOPro
Pourquoi devez-vous tout d’abord modifier les fréquences des interfaces, puis seulement la fré-
quence du module du PC ? Regardez ce qu’il se passe lorsque vous modifiez tout d’abord la
fréquence du module du PC.
Il peut en effet arriver que les modifications ne produisent leurs effets qu’après quelques secondes.
Si la liste de sélection du bouton COM/USB ne correspond pas à la configuration actuelle, ap-
puyez à nouveau sur celui-ci. Si vous ne pouvez plus « joindre » une interface par ondes radio,
connectez-la directement à l’interface USB du PC et contrôlez les paramètres du RF Data Link
pour l’interface.
Paramètres
Bluetooth
Chaque TX Controller reçoit un numéro
d’appel radio propre, compris entre 1 et
8 ; cette valeur peut être configurée dans
la fenêtre des paramètres Bluetooth.
Dans les programmes ROBOPro, le
numéro d’appel radio est utilisé comme
une sorte de numéro de téléphone pour
identifier les différents contrôleurs. Tout
d’abord, vous devez associer toutes les
interfaces au PC en tant qu’appareils
Bluetooth. La marche à suivre est
expliquée dans la notice du TX Controller†.. Votre PC requiert à cet effet une interface Bluetooth
interne ou un adaptateur USB Bluetooth. Connectez tous les contrôleurs ROBO TX au PC et
allumez-les. Lancez ROBO Pro. Appuyez sur le bouton COM / USB et choisissez un contrôleur
ROBO TX qui sera connecté via USB ou Bluetooth avec ROBO Pro en mode en ligne. Ensuite,
ouvrez la fenêtre des paramètres Bluetooth de ROBO Pro a fenêtre des paramètres Bluetooth via
l’option de menu Configuration Bluetooth ou via le bouton de la barre d’outils Bluetooth. La liste
des TX Controllers se charge automatiquement après avoir appuyé sur le bouton Analyse.
Selon l’adaptateur Bluetooth utilisé, il se peut que les noms des interfaces n’apparaissent pas
dans la liste. Dans ce cas, vous pouvez sélectionner consécutivement les interfaces COM
correspondantes avec le bouton COM/USB et identifier les interfaces en effectuant un test
d’interfaces. En plus de cela, vous devez attribuer manuellement un port COM à chaque TX
Controller en utilisant l’option définir port COM. Dans la plupart des cas cependant, cette action
s’effectue de façon automatique.
La liste des TX Controllers reconnus est toujours triée par numéro d’appel radio (NAR, ou RCN en
anglais). Pour modifier les numéros d’appel radio, il suffit de sélectionner une ligne de la liste et
d’appuyer sur le bouton Haut ou Bas. Si vous choisissez par exemple la ligne du numéro d’appel
radio 2 et appuyez sur le bouton Haut, le contrôleur passe à la ligne supérieure et reçoit le numéro
d’appel radio 1. Le contrôleur de la ligne 1 passe, quant à lui, à la ligne inférieure et obtient le
numéro d’appel radio 2. Vous pouvez aussi sélectionner la ligne désirée, puis saisir le NAR dans
le champ situé à côté du bouton Définir sur lequel vous devrez cliquer ensuite.
†
Pour les pros du Bluetooth qui n’ont pas besoin de manuel pour cette opération, la clé principale
’ est 1234.
53
F
ROBOPro
Après avoir configuré les numéros d’appel radio, vous devez indiquer les contrôleurs qui vont être
connectés au réseau de transmission radio. Ceci englobe généralement tous les contrôleurs de la
liste. Il arrive toutefois, notamment dans les écoles, que les contrôleurs d’un autre groupe
expérimental apparaissent dans la liste. Choisissez les contrôleurs avec lesquels votre programme
doit communiquer en cochant les cases situées devant les lignes figurant dans la liste.
Le téléchargement de plusieurs programmes sur
diverses interfaces étant onéreux, ROBOPro vous offre
la possibilité d’attribuer un fichier ROBOPro.rpp à
chaque TX Controller de la liste. Pour ce faire, utilisez
les boutons Assigner et Effacer prévus à cet effet. La
fenêtre de téléchargement possède une option qui
permet de télécharger tous les programmes en une
seule opération.
Central de communication
Central
54
F
ROBOPro
Pour assurer l’échange d’informations entre trois contrôleurs ou plus, on utilise une topologie en
étoile. L’un des contrôleurs joue alors le rôle de Central de communication, tel qu’indiqué dans
l’illustration à gauche. Lorsque le contrôleur numéro 2 souhaite échanger des informations avec le
numéro 3, les messages passent par le central de communication. Le choix du contrôleur jouant le
rôle de central de communication est souvent sans importance. Dans le cas des robots mobiles
qui risquent de se trouver hors de la portée du signal radio, ce choix peut toutefois s’avérer
important. Cette option peut également être configurée dans la fenêtre des paramètres Bluetooth.
Un autre aspect important réside dans la difficulté et le manque de fiabilité de la liaison online
établie avec le central de communication. Ceci est dû au fait que le PC joue le rôle de central pour
la liaison online, et que le contrôleur principal représente le central de communication pour
certaines connexions Bluetooth, alors qu’il ne l’est pas pour d’autres. Comme dit précédemment,
cela fonctionne, mais les temps d’établissement de la connexion sont nettement plus longs.
55
F
ROBOPro
Imaginez-vous que vous découvriez une machine fascinante dans un des recoins inexplorés d’un
musée et que vous vouliez absolument la reproduire avec Fischertechnik. En étudiant la machine,
vous oubliez cependant le temps et ne remarquez pas que tous les autres visiteurs ont quitté le
musée. Ce n’est qu’après la fermeture du musée que vous avez suffisamment étudié la machine
pour pouvoir la reproduire. Mais vous allez devoir passer une mauvaise nuit tout seul dans le
musée avant de pouvoir vous en aller. Pour que cela n’arrive plus, vous demandez au directeur du
musée de programmer un compteur de visiteurs qui compte tous les visiteurs entrant et sortant et
allume une lampe d’alarme rouge tant qu’il y a des visiteurs dans le musée. Mais comment faire ?
Comment compter quelque chose avec ROBO Pro ? La réponse est... avec des Variables.
56
F
ROBOPro
57
F
ROBOPro
58
F
ROBOPro
Des procédures indépendantes sont alors utilisées pour I1 et I2. Lorsque le bouton-poussoir I1 est
enfoncé, la procédure pour I2 reste indépendante et peut continuer à surveiller le bouton-poussoir
I2. Pour envoyer une requête aux valeurs de comptage et pour allumer et éteindre la lampe
d’alarme, une procédure propre est alors utilisée.
Comme vous le voyez, il n’y a pas de problèmes pour accéder à une seule variable au départ de
plusieurs procédures. Vous pouvez envoyer des commandes provenant de plusieurs procédures à
une variable et utiliser la valeur d’une variable dans plusieurs procédures. Les variables sont donc
adaptées aux échanges d’informations entre procédures.
Le directeur du musée est tellement enchanté de votre génial compteur de visiteurs qu’il vous
demande de résoudre un autre problème : le musée a organisé une exposition. Etant donné que
tous les visiteurs veulent voir la nouvelle exposition, il y a une telle foule que plus personne ne
peut rien voir. Le directeur aimerait limiter le nombre de visiteurs de cette exposition à 10. Le
directeur a fait placer des croisillons à l’entrée et à la sortie de l’exposition. Le croisillon d’entrée
peut être verrouillé électroniquement. Maintenant il n’a plus besoin que d’un programmeur compé-
tent... Ce programmeur, c’est vous !
Essayez de développer le programme décrit avec ROBO Pro. A la base, ce programme fonctionne
comme le compteur de visiteurs. Simulez le verrouillage électronique de l’entrée par une lampe
rouge sur M1 ; celle-ci doit s’allumer lorsque 10 personnes se trouvent dans l’exposition.
59
F
ROBOPro
Attention: Un panneau de commande fait partie d’un sous-programme. Si vous avez des
sous-programmes, veillez à enregistrer le panneau de commande sous Programme princi-
pal et pas sous un sous-programme ! Plus tard, il sera intéressant d’enregistrer plusieurs
panneaux de commande.
Si vous avez dessiné un panneau de commande et que celui-ci disparaît soudainement par la
suite, vous avez sans doute sélectionné un sous-programme dans la barre des sous-
programmes. Basculez sur Programme principal et le panneau de commande devrait être
là.
Comme vous le voyez, un élément de commande peut également être utilisé pour envoyer une
commande à deux variables en même temps. La commande - 1 n’est pas envoyée à la variable
Général, car les commandes ne sont transmises le long des lignes orange que dans le sens des
flèches. La commande +1 est quant à elle transmise aux deux variables. Il ne s’agit cependant que
d’un exemple. Généralement, il est plus simple et clair d’utiliser un second élément de commande.
Astuce : Lorsque des lignes orange se branchent, il est souvent plus pratique de dessiner les
lignes de l’objectif à l’origine. Si, dans l’exemple ci-dessus, vous souhaitez tracer la ligne pour
la variable Général, cliquez d’abord sur l’entrée de la variable Général et reliez ensuite la
ligne avec le point de branchement en retournant en arrière. Si, au contraire, vous souhaitez
60
F
ROBOPro
commencer une ligne orange sur une ligne orange existante, vous devez double-cliquez avec
le bouton gauche de la souris à l’endroit où vous voulez débuter la nouvelle ligne.
Essayez ! Dès que vous aurez lancé le programme en Mode Online, l’affichage affichera dans le
panneau de commande le nombre de visiteurs ayant traversé le croisillon de l’entrée.
61
F
ROBOPro
Nota Bene : Si vous voulez utiliser plus d’un affichage dans un panneau de commande, il est
important de donner un nom différent à chaque affichage afin de pouvoir les différencier lors
de la liaison avec le programme. Pour ce faire, cliquez avec le bouton droit de la souris sur
l’affichage dans le panneau de commande. Vous pouvez alors introduire un nom sous le
champ ID / Nom. Si vous reliez ensuite une sortie du panneau de commande avec
l’affichage, ce nom apparaît dans la fenêtre de sélection de la sortie du panneau de com-
mande. Etant donné que, pour le moment, nous n’avons qu’un affichage, le nom n’a pas
d’importance et nous conserverons donc le nom Texte.
Le programme n’est pas encore tout à fait parfait. Il manque encore un bouton-poussoir pour
remettre le compteur à 0. Nous ne devons cependant pas utilisez de bouton-poussoir normal, mais
bien un bouton sur le panneau de commande.
Vous trouverez le bouton de commande dans la fenêtre d’éléments sous le
groupe Eléments de commande / Eléments de commande. Sélectionnez
Panneau de commande dans la barre de fonction et ajoutez un bouton sur
votre panneau de commande à côté de l’affichage textuel. L’inscription Bouton n’est évidemment
pas appropriée, elle peut cependant facilement être modifiée via la fenêtre de propriétés. Pour ce
faire, cliquez sur le bouton avec le bouton droit de la souris, introduisez, p.e. 0000 dans Texte de
l’inscription et confirmez avec OK.
Tout comme pour l’affichage textuel, nous avons besoin d’un élément de
programme reliant le bouton au déroulement du programme. Pour ce faire,
sélectionnez à nouveau Fonction dans la barre de fonctions. Vous trouve-
rez l’élément représenté Entrée du panneau de commande dans la
fenêtre d’élément dans le groupe Entrées, Sorties. Placez cet élément dans le déroulement du
programme sous le déroulement actuel.
Maintenant, vous devez encore relier l’entrée du
panneau de commande avec le bouton. Pour ce
faire, cliquez avec le bouton droit de la souris
sur l’élément Entrée du panneau de commande.
Les éléments de commande sont, comme les
affichages, classés par sous-programmes, car
chaque sous-programme peut avoir un panneau
de commande propre. Sélectionnez le bouton
0000 et confirmez avec OK.
Vous avez peut-être remarqué qu’il est possible
de régler cet élément sur tous les types
d’entrées possibles via la barre d’onglets de la
fenêtre de propriétés. Ceci ne sera cependant
expliqué qu’au prochain chapitre Entrée de
commande pour sous-programmes.
Vous pouvez envoyer une requête à la valeur
envoyée par l’entrée du panneau de commande
avec un élément de branchement. Vous avez déjà utilisé cet élément pour envoyer une requête à
la variable. Le programme terminé, avec remise à zéro, est semblable à la représentation sui-
vante :
62
F
ROBOPro
Tant que le bouton 0000 est enfoncé, le compteur général reçoit une commande = 0 mettant le
compteur à 0.
5.4 Timer
Le directeur du musée ne sait plus quoi faire sans vous et vous nomme son conseiller en informa-
tique. Un tel poste apporte son lot de gloire et d’honneur, mais aussi de travail... Dans le musée, il
y a de nombreuses maquettes se mettant en mouvement par une pression sur un bouton. Certains
visiteurs appuient cependant relativement longtemps sur les boutons de sorte que les maquettes
chauffent et qu’elles doivent souvent être réparées. Le directeur aimerait que les maquettes soient
en mouvement lorsque le bouton est enfoncé, mais seulement pour un maximum de 30 secondes.
Lorsque la maquette a fonctionné une fois, une pause de 15 secondes doit être prévue avant que
cette maquette ne puisse à nouveau être mise en mouvement.
Hmm, pas de problème... C’est sans doute ce que vous pensez : quelques attentes, quelques
branchements de programme et c’est bon... Allons-y calmement ! Après un moment, vous consta-
terez que ce n’est pas si simple, et ce, pour deux raisons :
• Pendant les 30 secondes, le programme doit envoyer une requête au bouton pour savoir si
celui-ci a été relâché avant la fin des 30 secondes. Ce problème peut être résolu en lançant
deux procédures parallèles, voir point 5.2 Variables et procédures multiples à la page 58.
• Si un visiteur relâche le bouton après 5 secondes et réappuie sur celui-ci après 15 secondes,
l’attende de 30 secondes doit être redémarrée. Une attente de 5 + 15 = 20 secondes s’est
cependant déjà écoulée et est encore active. Même avec des procédures parallèles, il est
impossible de redémarrer une attente. Ce serait éventuellement possible avec deux attentes
dans trois procédures que vous pourriez démarrer en alternance, mais on aurait vite des
maux de tête à force de réfléchir.
63
F
ROBOPro
64
F
ROBOPro
Dans la ligne supérieure, vous voyez à chaque fois un élément Moteur du groupe Eléments de
fond. La seconde ligne représente la combinaison d’un élément de commande du groupe Com-
mandes et un élément Moteur du groupe Entrées, Sorties, ayant exactement le même effet. Les
éléments supérieurs ne sont en fait que des raccourcis ou des simplifications des combinaisons de
la ligne inférieure. Les deux envoient au moteur M1 une commande droite, gauche ou stop.
Ceci est également valable pour les requêtes envoyées aux interrupteurs :
Dans la ligne supérieure, vous voyez à nouveau des éléments du groupe Eléments de fond. La
rangée inférieure reprend une combinaison d’une entrée digitale et d’un élément du groupe Bran-
65
F
ROBOPro
chement, Attente,... Vous trouverez l’élément orange Entrée digitale dans le groupe Entrées,
Sorties, comme l’élément Moteur.
Cette astuce vous permet de séparer la logique du déroulement d’un programme des entrées et
des sorties. Il vous manque cependant encore quelque chose. Si les éléments Moteur et Interrup-
teur doivent se trouver dans le programme principal et les commandes, dans un sous-programme,
les éléments Moteur et Interrupteur doivent pouvoir être reliés avec le sous-programme via un
chemin. Les éléments de raccordement nécessaires se trouvent dans le groupe Sous-
programme I/O.
Vous pouvez envoyer des commandes extérieures à un sous-programme via
une entrée de commande de sous-programme. L’élément Entrée digitale
(Interrupteur) envoie sa nouvelle valeur via la ligne orange lorsque le statut
de l’entrée change (avec une „commande =“). Vous pouvez donner un nom à
l’entrée dans la fenêtre de dialogue.
La sortie de commande de sous-programme vous permet d’envoyer des
commandes à partir d’un sous-programme. Vous pouvez ainsi envoyer les
commandes gauche, droite, stop à un moteur à partir d’un sous-programme.
Vous pouvez également donner un nom à cet élément dans la fenêtre de
dialogue.
Vous disposez maintenant de toutes les données pour votre Timer pour plusieurs maquettes
avec sous-programmes :
Le Sous-programme Time est quasiment identique au programme du point précédent. Les élé-
ments Attendre une Entrée digitale I1 au début et dans la boucle sont seulement remplacés par
des éléments Attendre... avec raccordements de données pour les lignes oranges provenant du
groupe Branchement, Attente,.... Les deux sont reliés à l’entrée de commande du sous-
programme Interrupteur. Les deux éléments Moteur au début et à la fin du programme ont été
66
F
ROBOPro
remplacés par des éléments de commande. Les deux envoient leur commande à la sortie de
commande du sous-programme Moteur.
Le sous-programme Time est appelé à quatre reprises dans le Programme principal. L’entrée de
commande du sous-programme Interrupteur a généré automatiquement le raccordement orange
T sur le côté gauche du symbole vert du sous-programme. Le raccordement M sur le côté droit est
généré par la sortie de commande du sous-programme Moteur. Le raccordement T du symbole
de sous-programme est toujours relié avec un des interrupteurs I1 à I4. Un des moteurs M1 à M4
est alors raccordé au raccordement M. De cette façon, chaque appel du sous-programme Time
envoie une requête à un autre interrupteur et commande un autre moteur !
Essayez de reproduire le sous-programme et le programme principal représentés ci-dessus et
testez-les. Vous devez concevoir le sous-programme en premier lieu car celui-ci ne pourra pas
être ajouté au programme principal dans le cas contraire. Si vous avez des problèmes avec le
sous-programme, relisez le chapitre 4 Niveau 2 : Travailler avec des sous-programmes à la page
29.
Nota Bene : Vous trouverez de plus amples informations sur les entrées de commande au
point: 6.3 Envoyer des commandes au choix aux sous-programmes, à la page 77.
67
F
ROBOPro
Pour tester ce programme, il est utile de réduire le temps de la boucle de 5 minutes à une seconde.
Vous vous demandez sans doute comment vous pourrez lire les valeurs enregistrées dans la liste.
Il y a deux possibilités : vous pouvez lire les valeurs comme pour les autres variables et les exploi-
ter dans votre programme. Etant donné que la liste comprend plusieurs éléments, sélectionnez
tout d’abord le numéro de l’élément que vous voulez lire sur l’entrée de données de gauche avec
la description I. La valeur de cet élément est alors envoyée à la sortie de données R, sur la droite.
ROBO Pro peut également
enregistrer toutes les données
de la liste dans un fichier sur
votre ordinateur ; vous pourrez
alors exploiter ces données,
p.ex., dans Excel. Etant donné
que, dans le cas présent, vous
ne voulez que voir et comparer
les luminosités et températures,
cette solution est très pratique.
ROBO Pro enregistre les va-
leurs dans un fichier .CSV
(comma separated values =
valeurs séparées par des virgu-
les). Les fichiers .CSV sont des
fichiers textes comprenant une
ou plusieurs colonnes avec à
chaque fois une rangée de
données. Vous pouvez égale-
ment enregistrer plusieurs
rangées de mesure comme la
température et la luminosité dans différentes colonnes d’un fichier .CSV. Les colonnes sont sépa-
rées par des virgules. Dans les pays dans lesquels 0,5 est écrit avec une virgule et non pas avec
un point (p.e. l’Allemagne), le signe de séparation pour les colonnes est souvent un point-virgule
(;). Si vous avez des problèmes pour échanger des fichiers .CSV entre ROBO Pro et, p.ex., Micro-
soft Excel, vous pouvez modifier le séparateur de colonnes dans la fenêtre de propriétés de la
liste.
68
F
ROBOPro
Vous pouvez régler le nom du fichier .CSV et la colonne dans laquelle le contenu d’une liste doit
être enregistré dans la fenêtre de propriétés de la liste sous Enregistrer un fichier .CSV. Les
données sont enregistrées lorsque le programme s’achève en Mode Online ou lorsque vous
sélectionnez le point Enregistrer des fichiers .CSV dans le menu Fichier pendant que le pro-
gramme est en cours (Online ou Téléchargement). En Mode Téléchargement, vous pouvez
séparer ROBO Interface de votre ordinateur pour l’inscription des données et la raccorder à nou-
veau pour l’enregistrement.
Après avoir lancé le programme ci-dessus en Mode Online, vous pouvez ouvrir le fichier .CSV
créé par ROBO Pro avec les données dans Microsoft Excel ou dans un autre programme de
tableur. Si vous ne possédez pas de programme de tableur, vous pouvez également utiliser le
Windows Editor (Notepad.exe) que vous trouverez le plus souvent dans le menu de démarrage de
Windows sous Accessoires.
Tant que le programme est lancé en Mode Online, vous pouvez également voir les données dans
une liste en cliquant avec le bouton droit de la souris sur l’élément Liste.
5.7 Opérateurs
Votre programme d’inscription de la luminosité et de la température a bien fonctionné, mais vous
constatez que la température dans la salle d’exposition n’a rien à voir avec le soleil. Comme vous
le constatez, certains visiteurs ont confondu la commande de l’air climatisé de la salle d’exposition
avec la commande d’une maquette et ont sans arrêt appuyé sur celle-ci. Ce n’est donc pas un
miracle si la température de la salle d’exposition s’est détraquée !
Mais vous pouvez résoudre ce problème simplement, avec une serrure à combinaison électroni-
que. La serrure à combinaison doit posséder un clavier avec des touches de 1 à 6. Si trois chiffres
sont encodés correctement les uns à la suite des autres, la serrure à combinaison doit libérer le
couvercle de la commande de l’air climatisé via un aimant.
A première vue, une serrure à combinaison de ce type est simple : le
programme attend simplement que les bonnes touches sont enfoncées
dans le bon ordre. Vous voyez un programme de ce type pour la combi-
naison 3-5-2 sur la droite. Lorsqu’on y regarde de plus près, cette
solution présente cependant un problème : Il est possible de forcer cette
serrure très facilement en appuyant 3 fois de suite sur toutes les touches
de 1 à 6. En effet, en procédant ainsi, vous êtes sûr d’appuyer toujours
sur la bonne touche. Comme le disait si bien Albert Einstein : „Pourquoi
faire simple quand on peut faire compliqué“. Le programme doit non
seulement savoir si les bonnes touches sont enfoncées, mais aussi si
une mauvaise touche est enfoncée. Le programme ressemble à ceci :
69
F
ROBOPro
70
F
ROBOPro
Ce programme n’ouvre la serrure que si les touches 3 5 2 sont enfoncées sans qu’une autre
touche ne soit enfoncée entre-temps. Si, par exemple, la touche 3 est enfoncée, le programme
attend d’abord que la touche soit relâchée. Si une autre touche que la touche 5 est ensuite enfon-
cée, le programme recommence au début. Le programme fonctionne donc correctement, mais ce
n’est ni simple, ni clair. Il est également très important de modifier le code. Mais pas de panique,
c’est également très simple grâce aux Opérateurs. Il y a différents types d’opérateurs. Vous les
trouverez dans le groupe Opérateurs sous Eléments de programme. Pour la serrure à combi-
naison, nous avons tout d’abord besoin d’un Opérateur Ou.
71
F
ROBOPro
Les boutons sur les entrées I1 à I6 sont rassemblés par un Opérateur Ou à 6 entrées. Si au moins
un des boutons est actionné, l’opérateur Ou envoie une valeur initiale 1, ou 0. Avec un élément
Attendre..., le programme attend qu’un bouton soit enfoncé. On teste ensuite s’il s’agit du bon
bouton. Si oui, on attend à nouveau qu’une touche soit enfoncée. Si une mauvaise touche a été
enfoncée, le programme reprend au début.
Modifiez le programme ci-dessus de sorte qu’il utilise des éléments de commande du panneau de
commande plutôt que des boutons. Pour ce faire, tracez tout d’abord un panneau de commande
avec 6 boutons portant les inscriptions 1 à 6. Modifiez ensuite les entrées digitales dans la fenêtre
de propriétés. Vous devez remplacer les branchements avec des entrées de données par des
entrées du panneau de commande.
La serrure à combinaison fonctionne maintenant parfaitement, mais ce n’est toujours pas très
facile de modifier le code (3 5 2). Pour ce faire, il faut changer les entrées en trois éléments de
branchement. Pour la commande de l’air climatisé du musée, il n’est pas nécessaire de modifier le
code régulièrement ; cependant, si vous utilisez la serrure à code pour une alarme, il est préféra-
ble de modifier le code régulièrement. Ce serait évidemment plus simple si l’on pouvait enregistrer
72
F
ROBOPro
le code dans une variable. On pourrait alors modifier le code automatiquement. Si, par exemple,
une alarme silencieuse se déclenche dans l’installation, il serait possible de remplacer le code
normal par un code d’alarme défini.
Afin de pouvoir comparer le chiffre introduit avec la variable du code, les chiffres introduits doivent
être enregistrées dans une variable. Au départ, la variable avec la valeur initiale doit avoir une
valeur 0. Si vous appuyez sur la touche 3, le variable doit avoir la valeur 3. Après avoir appuyé sur
la touche 5, la valeur 35 et, finalement, après avoir appuyé sur la touche 2, la valeur 352.
La serrure à combinaison avec variable de code suit deux procédures. Dans la procédure de
gauche, un nombre est attribué à chaque touche avec quelques Opérateurs Multiplication et un
Opérateur Plus. La touche 1, le nombre 1 ; la touche 2, le nombre 2 ; et ainsi de suite. Les touches
envoient une valeur 1 ou 0 et, lorsque l’on multiplie cette valeur par un nombre fixe X, on obtient
une valeur 0 ou X. Etant donné que les valeurs sont 0 lorsque les touches ne sont pas enfoncées,
il est possible d’additionner toutes les valeurs et d’obtenir ainsi un nombre comme valeur de tou-
che. Dès qu’une touche est enfoncée, la variable initiale est attribuée 10 fois à la valeur
précédente additionnée à la valeur de la touche enfoncée. La multiplication par 10 déplace la
valeur précédente de la valeur initiale d’une dizaine (35 donne, par exemple, 350).
La procédure de droite attend que la touche OK du panneau de commande soit enfoncée après
l’introduction du code. La variable de code ayant la valeur 352 lorsque le code est bien introduit est
alors comparée avec la variable initiale. Si les deux ont une valeur semblable, l’aimant d’ouverture
se détache, sinon non. La variable initiale est finalement remise à 0. Les variables Initial et Code
sont comparées en comparant leur différence par rapport à 0 Vous auriez également pu utiliser un
élément de comparaison.
Si vous enfoncez simultanément deux touches, les valeurs de ces deux touches s’additionnent.
Par exemple, si vous enfoncez les touches 3 et 6 simultanément, on obtient la valeur 9. Vous
pouvez ainsi fabriquer une serrure ultrasécurisée pour laquelle il faut parfois appuyer sur plusieurs
touches simultanément. Imaginez sur quelles touches et dans quel ordre vous devez appuyer pour
ouvrir la serrure avec un code de 495. Veillez à ce que l’élément Attendre... continue le pro-
gramme lorsque la valeur s’élève, pas seulement lorsqu’elle passe de 0 à 1.
La serrure à combinaison fonctionne-t-elle aussi pour des codes à deux ou à quatre chiffres ? Si
oui, jusqu’à combien de chiffres fonctionne-t-elle et pourquoi ? Comment cela se passe-t-il avec
les autres programmes de serrure à combinaison ?
73
F
ROBOPro
Au niveau 3, vous vous êtes occupé en détail de la façon dont vous pouvez traiter des données au
moyen de commandes et, par exemple, commander des moteurs. Vous avez ainsi exclusivement
utilisés des commandes, telles que la commande =, ou encore les commandes Droite, Gauche et
Stop. Au niveau 4, ces deux idées – c’est-à-dire l’envoi de commandes via des liaisons orange et
l’utilisation de commandes propres – sont reliées.
74
F
ROBOPro
branche sur la sortie N. Comme vous le savez, dans ROBOPro, une commande se compose d’un
nom et d’un chiffre, la valeur de la commande. Lorsque l’élément « Attendre une commande » a
reçu la commande qu’il attendait, la valeur de la commande est disponible sur la sortie V.
Vous pouvez ainsi créer très facile-
ment le sous-programme souhaité.
Chacune des 5 commandes possi-
bles est alors interrogée par
l’élément « Attendre une com-
mande », dans une boucle sans fin.
Lorsqu’une commande correspon-
dante est reçue, la valeur de la
commande est transmise aux com-
mandes « droite » et « gauche »
envoyées aux deux sorties Moteur
M1 et M2. Lorsque, par exemple, le
sous-programme reçoit une com-
mande « avant » de valeur 8, la
valeur 8 de la sortie V du filtre de
commande est transmise à deux
éléments de commande envoyant
alors aux deux moteurs une com-
mande « droite » dont la valeur
représente la vitesse. Cependant, ce
n’est pas très pratique d’utiliser ici un
seul élément de commande « à
droite » envoyant la commande aux
deux moteurs. Dans de telles cons-
tructions, il est souvent très difficile
de distinguer les lignes de com-
mande des deux moteurs de sorte
que, souvent, d’autres commandes
sont également envoyées aux deux
moteurs.
Dans notre exemple, la sortie V du
filtre de commande « Stop » n’est pas raccordée car l’élément de commande « Stop » n’a besoin
d’aucune valeur.
75
F
ROBOPro
76
F
ROBOPro
Si vous envoyez une commande = à une entrée Commandes au choix, les commandes ne
sont pas répétées au démarrage du sous-programme. Il peut alors arriver que la valeur
transmise par l’entrée du sous-programme ne corresponde pas à la valeur effective de
l’entrée.
77
F
ROBOPro
78
F
ROBOPro
Vous pouvez le faire très facilement en modifiant l’Attribution de l’Interface dans la fenêtre de
propriétés du Programme principal :
79
F
ROBOPro
• La partie droite de la fenêtre est seulement importante si vous avez raccordé plusieurs
Interfaces différentes à un bus USB. Si vous cliquez sur USB sous Interface, vous pouvez
sélectionner une des Interfaces sous Liste des Interfaces USB.
Attention : il faut savoir, en comparaison avec l’ancien ROBO Interface, que vous pouvez
raccorder un seul ROBO TX Controller via USB ou Bluetooth. Ce Controller servira de Master
auquel vous pouvez raccorder jusqu’à 8 ROBO TX Controller comme extensions.
Si vous désirez utiliser plusieurs ROBO Interfaces sur le bus USB, vous devez d’abord attri-
buer un numéro de série à chaque Interface. Normalement, toutes les Interfaces sont
fournies avec le même numéro de série pour éviter tout problème en cas d’échange d’Interfa-
ces. Le système d’exploitation Windows ne reconnaît cependant que des Interfaces avec des
numéros de série différents. Vous en apprendrez plus sur ce sujet dans le point 7.5 Modifier
le numéro de série de l’interface du ROBO Interface à la page 81.
• Dans le champ Indiquer une Interface, vous pouvez choisir comment le programme doit
indiquer l’Interface choisie. Il y deux possibilités : Si vous sélectionnez Numéro de série, le
programme enregistre le numéro de série du ROBO Interface. Même si vous raccordez et
enlevez d’autres ROBO Interface au bus USB, le programme peut retrouvez l’Interface choi-
sie à tout moment au moyen du numéro de série. Cependant, il existe un désavantage : le
programme ne fonctionnera plus qu’avec une Interface ayant un numéro de série identique.
Si vous désirez utiliser une Interface avec un autre numéro de série, vous devrez modifier
l’attribution de l’Interface ou le numéro de série. Pour éviter les problèmes de numéro de sé-
rie, il y a une autre possibilité : Rang. Si vous sélectionnez ce point, le programme enregistre
le rang dans la liste plutôt que le numéro de série. Ceci peut provoquer un certain désordre
lorsque vous ajoutez ou supprimer une Interface sur le bus USB ; le programme fonctionne
cependant de la même façon avec l’une ou l’autre Interface.
80
F
ROBOPro
81
F
ROBOPro
pour une maquette, il peut être peu pratique d’indiquer la totalité des numéros de série. Dans
ce cas, il est plus simple de régler le numéro de série standard de vos Interfaces, p.e., sur 1,
2, 3,... et d’utiliser ce numéro. Après avoir modifié ou sélectionné le numéro de série, vous
devez encore appuyer sur le bouton Inscrire sur l’Interface. Après avoir modifié le numéro
de série, vous devez débrancher l’alimentation en courant et la rebrancher.
Attention : Si le numéro de série est modifié, il se peut que le pilote doive être réinstallé ;
pour ce faire sous Windows, vous devez disposer de droits Administrateur. Si vous modifiez
le numéro de série mais ne pouvez pas réinstaller le pilote car vous n’avez pas de droits Ad-
ministrateur, vous ne pourrez plus avoir accès à l’Interface via l’interface USB. Dans ce cas,
vous pouvez débrancher l’Interface de l’alimentation en courant et gardez le bouton Port en-
foncé lorsque vous reconnectez l’alimentation en courant. L’Interface démarre alors avec le
numéro de série 1 et est reconnue par le pilote déjà installé. Le numéro de série n’est cepen-
dant pas modifié définitivement ; en effet, au prochain démarrage, le numéro de série
précédent sera utilisé si vous n’appuyez pas à nouveau sur le bouton Port. Pour modifier dé-
finitivement le numéro de série, procédez comme nous l’avons vu plus haut.
82
F
ROBOPro
8.1.2 Terminer
Pour terminer une procédure, il faut relier la sortie du dernier élément avec
l’élément de fin. Une procédure peut également se terminer à plusieurs endroits
avec cet élément. Il est également possible de relier les sorties de différents
éléments avec un seul élément de fin. Une procédure peut cependant également
avoir la forme d’une boucle sans fin et ne pas contenir d’élément de fin.
Les propriétés de l’élément de fin ne peuvent pas être modifiées. C’est pourquoi, contrairement à
la plupart des autres éléments, aucune fenêtre de propriétés ne s’ouvre lorsque vous cliquez sur
l’élément avec le bouton droit de la souris.
83
F
ROBOPro
sélection des entrées C1-C4 du ROBO TX Controller comme simples entrées digitales.
• Les boutons M1E-M4E permettent d’interroger une des quatre entrées internes de ROBO
Pro. Les entrées sont placées sur 1 dès qu’un moteur, entré via un élément d’Extension de
la commande du moteur, a atteint la position respective.
• Dans le champ Interface / Extension, vous pouvez choisir si vous souhaitez utiliser une
entrée de l’Interface ou une entrée du module d’extension. Vous trouverez plus
d’informations sur ce sujet au chapitre 7 Commander plusieurs interfaces à la page 78.
• Dans le champ Type du capteur vous pouvez choisir le capteur raccordé à l’entrée. Le plus
souvent, des sondes sont raccordées aux entrées analogiques, mais aussi des transistors
photo et des relais à contacts scellés. ROBO Pro règle la Nature de l’entrée de l’entrée uni-
verselle automatiquement sur le capteur sélectionné. Vous pouvez aussi régler la Nature de
l’entrée indépendamment du capteur à partir du niveau 4.
• Dans le champ Permuter les raccordements 1/0, vous pouvez permuter les positions des
sorties 1 et 0 du branchement. Normalement, la sortie 1 se situe en-dessous et la sortie 0, à
droite. Il peut être pratique d’avoir la sortie 1 à droite. Appuyez sur Permuter les raccorde-
ments 1/0, les deux raccordements seront alors inversés dès que vous cliquerez sur OK
pour fermer la fenêtre.
84
F
ROBOPro
8.1.5 Attente
L’élément Attente vous permet de retarder le
déroulement d’une procédure jusqu’à un moment
donné.
Si vous cliquez avec le bouton droit de la souris sur
l’élément, la fenêtre de propriétés s’affiche. Vous pouvez alors intro-
duire l’attente en secondes, minutes ou heures. L’intervalle de temps
pour l’attente va de 1 milliseconde (un millième de seconde) à 500
heures (presque 3 semaines). Cependant, la précision de la mesure
du temps varie en fonction de la longueur de l’attente.
La liste suivante donne la précision de la mesure pour différentes attentes :
Attente Précision
Jusqu’à 30 secondes 1/1000 de seconde
Jusqu’à 5 minutes 1/100 de seconde
Jusqu’à 50 minutes 1/10 de seconde
Jusqu’à 8,3 heures 1 seconde
Jusqu’à 83 heures 10 secondes
85
F
ROBOPro
86
F
ROBOPro
Astuce : Parfois, un moteur ne peut être actionné que dans un sens, p.e. une bande trans-
porteuse. Dans ce cas, vous pouvez utiliser une Sortie Lampe pour ce moteur ; vous
utiliserez alors un raccordement de moins.
87
F
ROBOPro
qu’un pin de raccordement. Vous pouvez donc commander 8 lampes ou vannes magnétiques
isolées. Raccordez alors l’autre raccordement de la lampe à la douille massique du ROBO TX
Controller (┴).
Astuce: Lorsque vous ne voulez raccorder que quatre lampes, vous pouvez également utili-
sez une sortie Moteur pour des lampes. C’est fort pratique cas ainsi les deux raccordements
de la lampe peuvent être directement raccordés à la Sortie de l’Interface et vous ne devez
pas les relier tous les pôles négatifs séparément à la douille massique.
88
F
ROBOPro
89
F
ROBOPro
Si vous cliquez avec le bouton droit de la souris sur l’élément, la fenêtre de propriétés s’affiche :
• Dans le champ Type d’impulsion, vous pouvez choisir quel type d’impulsion doit être comp-
tabilisé. Si vous choisissez 0 -> 1 (croissant), l’élément attend que le statut de l’entrée passe
de ouvert à fermé (0->1) aussi souvent que vous l’avez défini dans le champ Nombre
d’impulsions. Avec 1 -> 0 (décroissant), l’élément attend que le statut de l’entrée passe de
fermé à ouvert aussi souvent que vous l’avez défini dans le champ Nombre d’impulsions.
Avec les engrenages d’impulsions, on utilise souvent la troisième solution : Ici, l’élément
compte aussi bien les modifications 0 -> 1 que les modifications 1 -> 0, de sorte que 8 impul-
sions sont comptées par rotation de l’engrenage.
• Dans le champ Entrée digitale, vous pouvez définir à laquelle des 8 entrées digitales I1 à I8
doit être envoyée la requête. Vous choisissez une des entrées de comptage via C1D..C4D.
Aucun compteur rapide du matériel ne sera utilisé. La fréquence de comptage maximale at-
teint cependant 100 Hz.
• Dans le champ Interface / Extension, vous pouvez choisir si vous souhaitez utiliser une
entrée de l’Interface ou une entrée d’un module d’extension ou d’une seconde Interface.
Vous trouverez plus d’informations sur ce sujet au chapitre 7 Commander plusieurs interfa-
ces à la page 78.
• Dans le champ Type du capteur vous pouvez choisir le capteur raccordé à l’entrée. Le plus
souvent, des sondes sont raccordées aux entrées digitales, mais aussi des transistors photo
et des relais à contacts scellés. ROBO Pro règle la Nature de l’entrée de l’entrée universelle
automatiquement sur le capteur sélectionné. Vous pouvez aussi régler la Nature de l’entrée
indépendamment du capteur à partir du niveau 4.
90
F
ROBOPro
91
F
ROBOPro
92
F
ROBOPro
sérielle COM de l’interface ROBO. Pour ce faire, vous devez connecter deux interfaces à un
câble nul modem en série.
• Sous Optimisation (à partir du niveau 4), vous pouvez déterminer si des commandes identi-
ques doivent être envoyées à plusieurs reprises. Pour de nombreuses commandes, il n’y
existe aucune différence si la commande est envoyée une ou plusieurs fois. Sans optimisa-
tion, une commande envoyée à plusieurs reprises en boucle remplit le tampon de transfert du
RF Data Links de sorte que d’autres commandes ne peuvent pas être envoyées aussi rapi-
dement. Il est donc utile d’effacer les commandes identiques. Généralement, vous ne
souhaiterez effacer une commande que lorsque celle-ci est identique à la dernière com-
mande sauvegardée dans le tampon. Lorsque, dans ce mode, vous envoyez – par
exemple – 2x Start et 2x Stop, seuls 1x Start et 1x Stop seront transmis. Cependant, si vous
envoyez rapidement des commandes « Start », « Stop », « Start » et « Stop », et non pas
deux commandes identiques à la suite une de l’autre, les commandes sont transmises sans
être modifiées. Vous pouvez cependant également indiquer que les commandes doivent être
effacées lorsqu’elles sont identiques à une commande quelconque sauvegardée dans le
tampon. Pour la plupart des commandes, l’optimisation ne joue cependant aucun rôle impor-
tant et il est recommandé d’utiliser le mode Normal. Un exemple est la commande Ajouter
permettant d’ajouter des éléments à une liste. Dans une liste, il existe une différence si un
élément est ajouté 1x ou 2x. Au niveau 2, l’option Effacer si identique à la dernière com-
mande placée dans le tampon est toujours sélectionnée.
• Dans le champ Type de données vous pouvez choisir si la commande envoyée est un
chiffre entier ou un chiffre à virgule flottante. Voir également le chapitre 12 Calcul avec des
nombres décimaux – arithmétique à virgule flottante (à partir du niveau 3) à la page 146.
93
F
ROBOPro
94
F
ROBOPro
95
F
ROBOPro
standard de 4 commandes doit amplement suffire car un programme traite le plus souvent
les commandes reçues le plus vite possible.
96
F
ROBOPro
97
F
ROBOPro
98
F
ROBOPro
99
F
ROBOPro
100
F
ROBOPro
cet élément est expliquée en détail au point 5.5 Entrées de commande pour sous-programmes à la
page 64.
Fenêtre de propriétés
• Entrez le nom de l’entrée de commande sous Nom. Le pictogramme vert du sous-
programme n’affiche que les deux premiers caractères.
• Sous Type de données vous choisissez si la valeur de la
commande est un chiffre entier ou un chiffre à virgule flottante.
Voir également le Chapitre 12 Calcul avec des nombres déci-
maux – arithmétique à virgule flottante (à partir du niveau 3) à
la page 146.
101
F
ROBOPro
Les limites de valeur allant de -32767 à 32767 viennent du fait que l’ordinateur compte en système
binaire et non décimal comme nous. Dans le système binaire, 32767 est un nombre lisse, comme
9999 dans le système décimal. Mais nous ne devons pas nous occuper de cela car l’ordinateur
transforme tous les chiffres du système binaire en chiffres du système décimal. On ne remarque
donc cette particularité que dans les valeurs maximales des variables et lorsqu’il y a un dépasse-
ment de capacité lors du calcul.
Fenêtre de propriétés des Variables
• Dans le champ Nom, vous pouvez donner un nom à la
variable.
• Dans le champ Valeur Initiale, vous pouvez introduire la
valeur initiale de la variable. La variable conserve cette va-
leur tant qu’elle ne reçoit pas de nouvelle valeur via une
commande =, + ou–.
• Dans le champ Type de données vous pouvez choisir si
la commande envoyée est un chiffre entier ou un chiffre à
virgule flottante. Voir également le chapitre 12 Calcul avec
des nombres décimaux – arithmétique à virgule flottante
(à partir du niveau 3) à la page 146.
• Le point Durée de vie n’est intéressant que pour les
variables des sous-programmes et sera précisément expliqué au point suivant „Variable Lo-
cale“. Pour les variables dans les programmes principaux, les deux réglages ont le même
effet.
102
F
ROBOPro
procédure, une valeur indépendante pour les variables locales. Les variables locales n’existent
que tant que le sous-programme dans lequel elles sont définies tourne. La valeur initiale des
variables locales n’est donc pas attribuée au lancement du programme, mais bien à chaque dé-
marrage du sous-programme en question. Etant donné qu’un sous-programme est généralement
censé être identique à chaque appel, il est bien plus pratique de fixer la valeur initiale des varia-
bles à chaque appel. Les variables locales ne se „souviennent“ pas des appels précédents du
même sous-programme.
Dans le programme principal, les variables locales et globales se comportent de la même façon
car le programme global et le programme principal sont lancés au même moment. Les variables
locales sont cependant plus efficaces dans le déroulement du programme. Les éléments de listes
doivent cependant être plutôt définis de manière globale car la mémoire des variables globales est
plus vaste que celle des variables locales.
8.4.3 Constantes
Une constante a une valeur, comme une variable,
mais cette valeur ne peut pas être modifiée par le
programme. Vous pouvez relier une constante avec
une entrée de données d’un symbole de sous-programme lorsque
le sous-programme doit toujours utiliser la même valeur. Les cons-
tantes sont également très pratiques pour les calculs avec des
opérateurs. Vous trouverez un exemple à la fin du point 5.7 Opéra-
teurs à la page 69.
Fenêtre de propriétés des constantes :
• Sous Type de données vous choisissez si la valeur de la constante est un chiffre entier ou
un chiffre à virgule flottante. Voir également le Chapitre 12 Calcul avec des nombres déci-
maux – arithmétique à virgule flottante (à partir du niveau 3) à la page 146.
• Entrez la valeur de la constante sousValeur.
103
F
ROBOPro
8.4.5 Liste
L’élément Liste correspond à une variable dans laquelle non pas une mais
plusieurs valeurs peuvent être enregistrées. Le nombre maximal de valeurs
pouvant être enregistrées dans une liste est déterminé dans la fenêtre de
propriétés de l’élément.
Vous pouvez attacher ou supprimer des valeurs à la fin de la liste. De plus,
vous pouvez modifier ou lire une valeur quelconque de la liste ou permuter une valeur quelconque
de la liste avec la première valeur de la liste. Il est impossible d’ajouter ou de supprimer directe-
ment une valeur au milieu ou au début de la liste. Il est cependant possible de concevoir un
programme adapté pouvant réaliser ces fonctions.
Les fonctions suivantes d’une liste sont utilisées en envoyant des commandes à l’élément raccor-
dé à l’entrée S (pour Ecrire). Les commandes suivantes peuvent être envoyées à l’entrée S :
104
F
ROBOPro
L’entrée I (pour Index) vous permet de sélectionner un élément précis de la liste. Pour ce faire,
une commande = est envoyée à l’entrée I avec le numéro de l’élément souhaité. Le premier élé-
ment a donc le numéro 0. Il est possible d’attribuer une nouvelle valeur à l’élément sélectionné via
la sortie I en envoyant une commande = avec la nouvelle valeur à l’entrée S.
La sortie R (pour Retour) peut envoyer une requête à l’élément sélectionné via l’entrée I. Si
l’entrée I ou la valeur de l’entrée sélectionnée par l’entrée I est modifiée, la liste envoie la valeur
actuelle de l’entrée sélectionnée à l’élément raccordé à la sortie R.
La sortie I permet de voir si l’index enregistré sur l’entrée I est valable. Si N est le nombre
d’éléments, la valeur enregistrée sur l’entrée I doit être comprise entre 0 et N-1. Si c’est le cas, la
sortie I envoie une commande = d’une valeur N à tous les éléments raccordés ; dans le cas con-
traire, la valeur est 0.
Fenêtre de propriétés des
Listes
• Vous pouvez entrer un
nom pour la liste dans
le champ Nom.
• Dans le champ Taille
Maximale, vous pouvez
déterminer le nombre
maximal d’éléments de
la liste. Cette taille ne
peut pas être dépassée
par les commandes At-
tacher.
• Dans le champ Taille
Initiale, vous pouvez
définir le nombre
d’éléments de la liste au
démarrage.
• Dans le champ Liste
des Valeurs Initiales,
vous pouvez fixer les valeurs initiales de la liste. Vous pouvez retravailler la liste au moyen
des boutons situés à droite de celle-ci.
105
F
ROBOPro
• Dans le champ Charger à partir d’un fichier .CSV, vous pouvez sélectionner un fi-
chier .CSV compatible avec Excel et dans lequel la liste ira chercher ses valeurs. Dans le
champ de sélection du milieu, vous pouvez sélectionner la colonne du fichier .CSV devant
être utilisée. Le fichier est directement chargé et affiché dans le champ Liste des Valeurs
Initiales. Si vous lancez le programme ou réalisez un Téléchargement, ROBO Pro essaie à
nouveau de charger les valeurs actuelles dans le fichier. Si cela ne fonctionne pas, les va-
leurs enregistrées dans le champ Liste des Valeurs Initiales sont utilisées.
• Dans le champ Enregistrer au format .CSV, vous pouvez entrer un fichier dans lequel le
contenu de la liste devra être enregistré à la fin du programme. Ceci ne fonctionne cependant
qu’en Mode Online et pour des listes statiques (voir point suivant). Le contenu de la liste est
inscrit dans la colonne sélectionnée. Dans le champ Séparateur de colonnes, vous pouvez
choisir si les colonnes de la liste doivent être séparées par des virgules ou des points-
virgules. Dans les pays où 0.5 est écrit avec un point, le séparateur de colonnes sera généra-
lement une virgule. Etant donné que, en Allemagne, 0,5 est écrit avec une virgule, on
utilisera généralement un point-virgule comme séparateur de colonnes. Si vous avez des
problèmes pour importer un fichier .CSV ROBO Pro dans Microsoft Excel, p.e., essayez
d’utiliser un autre séparateur de colonnes.
• Dans le champ Liste du type de données vous pouvez choisir si la liste devra contenir des
chiffres entiers ou des chiffres à virgule flottante. Voir également le chapitre 12 Calcul avec
des nombres décimaux – arithmétique à virgule flottante (à partir du niveau 3) à la page 146.
• Dans le champ Durée de vie des données de la liste, vous pouvez décider si les éléments
de la liste sont des variables globales ou locales (voir chapitre 8.4.2 Variable locale à la page
102). Le type Global est recommandé pour les grandes listes (taille maximale de plus de
100 éléments), étant donné que le programme met plus d’espace mémoire à la disposition
des variables globales que des variables locales.
106
F
ROBOPro
8.5.1 = (Attribuer)
La commande = attribue une valeur au récepteur. Généralement, cette
commande est utilisée pour attribuer une valeur aux variables, variables de
Timer, éléments de listes ou sorties du panneau de commande.
La commande = n’est cependant pas envoyée que par des éléments de
commande, mais aussi par tous les éléments de programme ayant des sorties de données. Tous
les éléments envoient des commandes = lorsque la valeur d’une sortie change. Un élément
d’entrée digitale envoie par exemple une commande = 1 lorsque l’interrupteur raccordé à l’entrée
est fermé et une commande = 0 lorsque l’interrupteur est ouvert. Aucun élément de commande
n’est cependant utilisé. Des éléments de commande = sont pour ainsi dire incorporés dans tous
les éléments de programme ayant des sorties de données.
Toutes les entrées de données des éléments de programme ROBO Pro peuvent au minimum
traiter la commande =. La commande = est donc la commande la plus utilisée de ROBO Pro.
8.5.2 + ( Plus )
La commande + est envoyée à des variables ou à des variables de Timer
pour augmenter la valeur de la variable. La commande + permet de trans-
mettre une valeur quelconque qui sera ajoutée à la variable. Etant donné que
la valeur transmise avec la commande peut également être négative, cette
commande peut également diminuer la valeur de la variable. Voir point 8.4.1
Variable à la page 101 et point 8.4.4 Variable de Timer à la page 103.
107
F
ROBOPro
8.5.3 – ( Moins )
La commande – est utilisée comme la commande + décrite ci-dessus. La
seule différence est que cette commande soustrait la valeur transmise de la
valeur de la variable.
8.5.4 Droite
La commande Droite est envoyée à un élément Sortie Moteur pour faire
tourner le moteur vers la droite. Voir point 8.7.4 Sortie Moteur à la page 115.
La valeur est une vitesse comprise entre 1 et 8.
8.5.5 Gauche
La commande Gauche est envoyée à l’élément Sortie Moteur pour faire
tourner le moteur vers la gauche. Voir point 8.7.4 Sortie Moteur à la page
115.
La valeur est une vitesse comprise entre 1 et 8.
8.5.6 Stop
La commande Stop est envoyée à l’élément Sortie Moteur pour arrêter le
moteur. Voir point 8.7.4 Sortie Moteur à la page 115.
Aucune valeur n’est transmise avec la commande Stop.
8.5.7 In
La commande In est envoyée à un élément Sortie Lampe pour allumer la
lampe. Voir point 8.7.5 Sortie Lampes à la page 116. Une commande In peut
également être envoyée à des éléments Sortie Moteur, elle correspond à la
commande Droite. Pour les moteurs, il vaut mieux utiliser la commande
Droite car le sens de rotation est ainsi directement reconnaissable.
La valeur de la luminosité ou de l’intensité va de 1 à 8.
8.5.8 Out
La commande Out est envoyée à un élément Sortie Lampe pour éteindre la
lampe. Voir point 8.7.5 Sortie Lampes à la page 116. Une commande Out
peut également être envoyée à des éléments Sortie Moteur, elle correspond
à la commande Stop.
Aucune valeur n’est transmise avec la commande Out.
108
F
ROBOPro
8.5.9 Texte
La commande Texte est une commande particulière car la commande
envoyée à l’élément raccordé n’est pas un chiffre, mais bien un texte
quelconque. Il n’y a cependant qu’un élément de programme pouvant
traiter la commande Texte : l’affichage textuel d’un panneau de com-
mande. Vous trouvez de plus amples informations au point 9.1.2
Affichage textuel à la page 131.
109
F
ROBOPro
Nota Bene : Cet élément n’existe pas pour les chiffres à virgule flottante, étant donné que les
chiffres à virgule flottante présentent des erreurs d’arrondi et qu’il n’est pas utile de demander
si deux valeurs sont exactement identiques. Vous pouvez procéder à une comparaison sur 2
voies via un branchement de programme. Voir chapitre 8.6.1 Branchement (avec entrée de
données) à la page 110.
110
F
ROBOPro
8.6.3 Comparaison
L’élément de programme Comparaison permet de comparer les
valeurs des deux entrées de données A et B. Selon qu’A est plus petit,
plus grand ou identique à B, l’élément se branche sur la sortie de
gauche, de droite ou centrale. L’utilisation la plus courante de cet
élément est la comparaison d’une valeur théorique avec une valeur
réelle. Selon la position de la valeur théorique par rapport à la valeur
réelle, le moteur peut, p.ex., tourner vers la gauche ou vers la droite et
s’arrêter.
L’élément de programme Comparaison ne peut pas être réglé et n’a donc pas de fenêtre de
propriétés.
Nota Bene : Cet élément n’existe pas pour les chiffres à virgule flottante, étant donné que les
chiffres à virgule flottante présentent des erreurs d’arrondi et qu’il n’est pas utile de demander
si deux valeurs sont exactement identiques. Vous pouvez effectuer une comparaison sur 2
voies avec un opérateur relationnel (voir chapitre 8.8.2 Opérateurs relationnels à la page 119)
et un branchement du programme (voir chapitre 8.6.1 Branchement (avec entrée de don-
nées) à la page 110.
8.6.4 Attente
Cet élément permet de programmer une Attente dans le déroulement du pro-
gramme. L’attente commence lorsque le tour de cet élément arrive dans le
déroulement du programme. Dès que l’attente donnée est terminée, le déroule-
ment continue. Voir également le point 3.6.1 Attente sur la page 22.
111
F
ROBOPro
8.6.5 Attendre...
L’élément de programme Attendre...
retarde le déroulement du programme
jusqu’à ce que l’entrée de données de
l’élément change ou passe à un statut
déterminé. Il existe 5 versions de cet
élément : L’élément de gauche attend jusqu’à ce que la valeur de l’entrée augmente. Toutes les
augmentations sont alors prises en compte, comme un passage de 2 à 3, et pas seulement les
modifications de 0 à 1. Le second élément attend que la valeur de l’entrée diminue et l’élément du
milieu attend une modification, peu importe qu’il s’agisse d’une augmentation ou d’une diminution.
Le troisième élément est souvent utilisé pour les engrenages d’impulsions. Le quatrième et le
cinquième élément n’attendent pas une modification, mais bien que l’entrée ait le statut Oui (>0)
ou Non (<=0). Lorsque l’on se trouve déjà en présence du statut voulu, l’élément n’attend pas. Les
trois premiers éléments attendent par contre toujours une modification de l’entrée.
Fenêtre de propriétés des Attentes de modification
• Dans le champ Type de modification, vous pouvez
choisir entre les 5 types de fonctions décrites ci-dessus.
• Lorsque Reconnaître les modifications lorsqu’inactif
est coché, l’élément reconnaît également les modifica-
tions qui se sont passées lorsque ce n’était pas le tour de
l’élément dans le déroulement du programme. Dans ce
cas, l’élément enregistre la dernière valeur connue.
Lorsque l’élément est à nouveau lancé, le déroulement
du programme se poursuit directement lorsque la valeur
s’est modifiée de la façon voulue entre-temps. De cette façon, il est presque impossible de
rater une modification parce que le programme était en train de faire autre chose.
112
F
ROBOPro
113
F
ROBOPro
qui est particulièrement pratique pour basculer entre Interrupteur, Entrées IR et Entrées de pan-
neau de commande.
114
F
ROBOPro
115
F
ROBOPro
116
F
ROBOPro
117
F
ROBOPro
118
F
ROBOPro
8.8 Opérateurs
Les éléments de programme de ce groupe sont des Opérateurs. Les opérateurs ont une ou plu-
sieurs entrées de données orange. Les valeurs des entrées de données sont reliées à une valeur
par l’opérateur et transmises à la sortie de l’opérateur par une commande =.
Fenêtre de propriétés des Opérateurs
Tous les opérateurs utilisent la même fenêtre
de propriétés. Vous pouvez transformer un
opérateur en un autre opérateur via cette
fenêtre de propriétés.
• Dans le champ Opération, vous pouvez
choisir comment l’opérateur doit relier
ses entrées. Les différentes fonctions
sont décrites dans les deux points sui-
vants.
• Dans le champ Nombre d’entrées, vous
pouvez le nombre d’entrées que doit
avoir l’opérateur.
Lorsque l’opérateur Moins a plus de deux entrées, toutes les valeurs des autres entrées sont
soustraites de la valeur de l’entrée A. Lorsque l’opérateur Moins n’a qu’une entrée, l’opérateur
inverse le signe de la valeur d’entrée.
Lorsque l’opérateur Divisé a plus de deux entrées, la valeur de l’entrée A est divisée par les
valeurs de toutes les autres entrées.
égal inégal Plus petit Plus petit égal Plus grand Plus grand égal
119
F
ROBOPro
Et Ou Non
A>0 et B>0 A>0 ou B>0 A <= 0
Les opérateurs logiques interprètent une valeur plus grande que 0 à l’entrée comme étant oui ou
vraie et une valeur plus petite ou égale à 0 comme étant non ou fausse. Les entrées digitales
fournissent une valeur de 0 ou 1 de sorte que 0 sera interprété comme fausse et 1 comme vraie.
L’opérateur Et envoie une commande = avec une valeur 1 aux éléments raccordés à la sortie
lorsque la valeur est vraie, donc > 0, sur toutes les entrées. Dans le cas contraire, l’élément envoie
une commande = avec une valeur 0.
L’opérateur Ou envoie une commande = avec une valeur 1 aux éléments raccordés sur la sortie
lorsque la valeur d’au moins une des entrées est vraie, donc >0. Dans le cas contraire, l’élément
envoie une commande = avec une valeur 0.
L’opérateur Non envoie une commande = avec une valeur 1 aux éléments raccordés sur la sortie
lorsque la valeur à l’entrée est fausse, donc <= 0. Dans le cas contraire, l’élément envoie une
commande = avec une valeur 0.
Le fonctionnement des opérateurs logiques peut également être reproduit avec plusieurs éléments
de branchement. Il est cependant plus clair de relier plusieurs entrées par des opérateurs.
120
F
ROBOPro
8.8.5 Fonctions
Les fonctions sont similaires aux opérateurs, sauf qu’elles n’ont qu’une seule entrée. Les fonctions
trigonométriques de racine carrée, exponentielle et logarithmique appartiennent à ces fonctions.
Nota Bene 1 : Le calcul des fonctions est très compliqué dans la plupart des cas. Le nombre
de fonctions à interpréter par commande est limité étant donné que le TX Controller garantit
que chaque opération peut exécuter une commande au moins 1000 x par seconde. Les ré-
seaux de lignes de données de couleur orange sont toujours traités dans une commande,
sans qu’ils soient répartis. Il est recommandé, de ce fait, de ne pas afficher trop de fonctions
l’une après l’autre dans un réseau de couleur orange.
Nota Bene 2 : ROBOPro ne se sert pas d’une arithmétique d’une précision élargie pour le
calcul des fonctions. La précision des résultats se situe habituellement environ 2 bits au-
dessous de la précision maximale possible de la virgule flottante 48 bits. La précision des
résultats est estimée approximativement et consignée au résultat.
121
F
ROBOPro
Fonctions de base
Abs Valeur absolue : rend la valeur positive d’une valeur, p. ex. 3,2 -3,2
Sqrt Racine carrée (anglais : square root) : indique la racine carrée d’une valeur, p.
ex. 1,4142... de 2.0
122
F
ROBOPro
123
F
ROBOPro
124
F
ROBOPro
125
F
ROBOPro
126
F
ROBOPro
Les capteurs Fischertechnik habituels (Résistance NTC, Transistor photo et résistance photo)
transforme la taille de mesure (température ou intensité de la lumière) en résistance. Vous devez
127
F
ROBOPro
donc raccorder ces capteurs aux entrées AX et AY. Les entrées de tension A1 et A2 ont été
conçues pour tous les capteurs ayant une tension entre 0 et 10 V.
ROBO Interface n’est pas pourvu d’une douille pour l’entrée AV. Celle-ci est toujours raccordée à
la tension d’alimentation de l’Interface. De cette façon, vous pouvez par exemple surveiller la
tension de votre accumulateur et éteindre votre maquette avant que la batterie ne soit vide.
Des capteurs Fischertechnik spéciaux peuvent être raccordés aux entrées des capteurs de dis-
tance D1 et D2 ; ceux-ci peuvent par exemple mesure la distance par rapport à un obstacle.
Intelligent Interface n’a que deux entrées analogiques, EX et EY. Ces entrées correspondent
aux entrées AX et AY de ROBO Interface. Les autres entrées analogiques ne peuvent pas
être utilisées avec Intelligent Interface !
128
F
ROBOPro
129
F
ROBOPro
Vous pouvez ajouter des éléments de commande dans la surface grise vide. Un panneau de
commande appartient toujours au programme principal ou au sous-programme dans lequel vous
vous trouviez au moment de la création de ce panneau de commande. Il est donc important de
sélectionner le bon sous-programme dans la barre des sous-programmes avant de concevoir le
panneau de commande. Le plus souvent, le panneau de commande est créé dans le Programme
principal.
Les panneaux de commande contiennent des affichages et des éléments de commande. Les
affichages vous permettent d’afficher des valeurs de variables ou des messages textuels. Les
éléments de commande fonctionnent quant à eux comme des boutons supplémentaires ou des
entrées analogiques.
Chaque élément de commande que vous insérez dans le panneau de
commande correspond dans le programme à un élément Entrée du pan-
neau de commande (pour les éléments de commande) ou à une Sortie
du panneau de commande (pour les affichages). Vous pouvez ainsi
établir un lien entre votre programme et votre panneau de commande via
ces éléments de programme. Vous trouverez ceux-ci dans le groupe
d’éléments Entrées, Sorties. Selon le type d’élément de commande avec
lequel vous reliez ces éléments de programme, un symbole différent sera affiché. Il n’y a que deux
éléments dans la liste d’éléments : un pour les affichages et une pour les éléments de commande.
9.1 Affichages
Les affichages sont utilisés comme des sorties de l’Interface. La valeur d’un affichage peut être
déterminée au moyen d’une commande =.
130
F
ROBOPro
Entrées, Sorties.
Vous déterminez la valeur de l’appareil de mesure en envoyant
une commande = à la sortie du panneau de commande appro-
priée du programme. Presque tous les éléments de programme
avec des sorties analogiques envoient une commande = lorsque
leur valeur change. Vous pouvez par exemple relier directement des entrées analogiques ou des
variables avec la sortie du panneau de commande.
Fenêtre de propriété des Appareils de mesure
• Dans le champ ID / Nom, vous devez tout d’abord
introduire un nom pour l’appareil de mesure. Le nom
est important pour que vous puissiez différencier plu-
sieurs appareils de mesure dans votre programme.
• Dans le champ Couleur de l’arrière-plan, vous
pouvez choisir une autre couleur que le blanc.
• Dans le champ Valeur Minimale et Valeur Maximale,
introduisez les valeurs correspondant aux extrémités
gauche et droite de l’échelle de l’indicateur. Si une
des valeurs est plus petite que 0 et l’autre, plus gran-
de que 0, le trait 0 sera plus long que les autres.
• L’échelle se compose de traits longs et de traits courts. Vous pouvez déterminer la longueur
des traits longs et des courts sous Ecart Marques courtes / longues. Si les deux ont la
même valeur, seules des marques longues seront visibles.
131
F
ROBOPro
132
F
ROBOPro
9.2.1 Bouton
L’Elément de commande Bouton peut être utilisé comme un interrupteur
Fischertechnik raccordé à une des entrées de l’Interface.
Le programme envoie une requête au bouton via une Entrée du panneau
de commande. Vous trouverez l’Entrée du panneau de commande dans
le groupe d’éléments Entrées, Sorties.
133
F
ROBOPro
Dès que vous avez relié l’entrée du panneau de commande avec le régula-
teur au moyen de la fenêtre de propriétés, le symbole change et le nom du
panneau de commande (p.e. Principal) et du régulateur apparaissent.
Vous pouvez raccorder l’entrée du panneau de commande appartenant au
régulateur à tous les éléments de programme possédant une entrée de
données, comme c’est le cas pour les entrées analogiques de l’Interface.
Très souvent, le régulateur est raccordé à un élément de commande possé-
dant une entrée de données, de sorte que le régulateur commande la vitesse
d’un moteur, par exemple.
134
F
ROBOPro
135
F
ROBOPro
10 Fonctions de dessin
ROBO Pro dispose des fonctions de dessin habituelles. Vous les trouverez dans la fenêtre des
groupes d’éléments sous Dessiner. Dans le sous-groupe Formes, vous trouverez des outils de
dessin pour différentes formes géométriques de base. Le sous-groupe Texte contient les outils de
texte pour différentes tailles de police. Les autres sous-groupes contiennent des fonctions pour
modifier la couleur et l’épaisseur des traits.
Les fonctions de dessin vous permettent d’illustrer vos panneaux de commande et vos program-
mes afin que leurs différentes fonctions apparaissent plus clairement. Vous trouverez, par exemple,
ci-dessous un panneau de commande pour un robot, dessiné au moyen de ces fonctions :
Les boutons, affichages de coordonnées et lampes des commutateurs de fin sont à chaque fois
indiqués dans la même couleur que les axes eux-mêmes dans la représentation schématique du
robot. Le panneau de commande est ainsi beaucoup plus clair.
L’utilisation des fonctions de dessin ne devrait pas poser de gros problèmes. Seuls quelques
points sont donc expliqués ci-dessous ; il s’agit des points qui pourraient ne pas être clairs à
première vue.
• Les objets graphiques comme les rectangles ou les cercles ne sont pas, comme dans de
nombreux autres programmes, étirés en gardant le bouton de la souris enfoncé, mais bien au
moyen de deux clics sur le bouton de la souris : un dans le coin supérieur gauche et l’autre
dans le coin inférieur droit.
• Le texte n’est pas traité dans une fenêtre de dialogue, mais directement dans la zone de
travail. Lorsque vous ajoutez un objet Texte, celui-ci apparaît tout d’abord sous la forme d’un
cadre bleu clair. Vous pouvez alors simplement taper votre texte et il apparaît directement
dans la zone de travail. Vous pouvez également ajouter du texte provenant du Presse-papier
avec les touches CTRL+V.
• Après avoir dessiné un objet, vous pouvez le retravailler en déplaçant les petites manettes
bleues. Certaines manettes vous permettent également de tourner ou de déformer l’objet. Un
136
F
ROBOPro
rectangle a deux manettes sur son bord supérieur gauche. Si vous déplacez les deux manet-
tes les plus grandes, vous pouvez arrondir les angles du rectangle. Vous pouvez achever les
modifications en cliquant sur le bouton droit de la souris ou avec la touche ESC de votre cla-
vier.
• Si vous voulez retravailler l’objet ultérieurement, sélectionnez la fonction Traiter du menu
Dessiner. Si vous cliquez ensuite sur un objet, les manettes bleu clair apparaissent à nou-
veau.
• De nombreux objets ont deux modes de dessin et de travail ou plus. Vous pouvez basculer
entre les différents modes avec la touche Tabulations de votre clavier pendant que vous des-
sinez ou travaillez le dessin. Pour un cercle, vous pouvez par exemple choisir si vous devez
donner deux points de la circonférence ou bien le point central et un point de la circonférence.
Pour le polygone, vous pouvez basculer entre un travail au moyen de point et des fonctions
comme "tourner". Pour les objets Texte, vous pouvez choisir le travail du texte, ainsi que la
modification de la taille du texte ou l’angle d’inclinaison.
• Dans le menu Dessiner, vous trouverez la fonction Objet à l’avant-plan / à l’arrière-plan.
Ces fonctions vous permettent de faire glisser tous les éléments sélectionnés (marqués en
rouge) vers l’avant ou vers l’arrière, de sorte que les autres objets soient recouverts ou re-
couvrent ces objets.
• Avec la fonction Snap de la trame du menu Dessiner, vous permet d’afficher ou non la
trame du dessin. Veillez cependant à ce que la trame soit affichée lorsque vous travaillez
dans votre programme car tous les éléments sont adaptés à la trame.
• Pour les objets Texte, vous pouvez modifier l’orientation du texte en appuyant sur la touche
CTRL et une touche de 1 à 9 du pavé numérique. Ceci est seulement possible lorsque la
lampe Num-Lock du clavier est allumée. Si ce n’est pas le cas, vous devez d’abord enfoncer
la touche Num-Lock.
137
F
ROBOPro
138
F
ROBOPro
139
F
ROBOPro
Vous pouvez charger le programme sur une ROBO Interface de même que sur un ROBO TX
Controller, si votre programme utilise uniquement les entrées énumérées ci-dessus et si vous avez
aussi attribué le mode d’entrée aux entrées universelles I1-I8 sur le ROBO TX Controller. La
permutation s’effectue alors automatiquement, dès que vous démarrez le programme en Mode
Online ou en Mode de téléchargement. Vous êtes donc parfaitement capable de concevoir un
programme dans l’environnement de la ROBO Interface avec des entrées de la ROBO Interface,
mais de sélectionner un ROBO TX Controller sous COM/USB.
140
F
ROBOPro
Vous pouvez aussi décider du mode d’entrée indépendamment du type de capteur à partir du
niveau 4.
Certains capteurs exigent différents modes d’entrée dans le ROBO TX Controller, bien qu’ils soient
tous raccordables aux entrées I1-I8 de la ROBO Interface. Ceci s’applique principalement au
dépisteur, qu’il est impératif d’exploiter avec le mode d’entrée Digital 10V sur le ROBO TX Control-
ler. ROBOPro utilise l’image du capteur existant jusqu’à présent comme type de capteur pour
choisir le mode d’entrée correct lors de la conversion des programmes et de la programmation
indépendante de l’Interface.
141
F
ROBOPro
Sachez, si vous avez déterminé une distance, que l’élément n’attend pas
jusqu’à l’atteinte de la distance prédéterminée, mais qu’il passe immédiate-
ment au prochain élément du programme. Le programme peut donc
continuer de travailler et stopper les moteurs dès la survenance de certains
événements. Chaque moteur dispose d’une entrée interne M1E à M4E, que
vous pouvez interroger via l’élément de branchement ou l’élément Attendre
une entrée en vue de tester si le moteur a atteint son but.
Les entrées de M1E à M4E deviennent 1, dès que le moteur respectif atteint
le nombre d’impulsions prédéterminé (distance). Les entrées demeurent 1
jusqu’à l’affectation d’une nouvelle distance au moteur. Nous vous recom-
mandons donc d’attendre comme pour l’image sur 1. Si vous commandez 2
moteurs en synchronisation, vous devez uniquement lancer la requête
d’atteinte du but pour le premier moteur et non pour les deux. Les entrées
de moteurs synchronisés ne deviennent 1 qu’après l’atteinte du but par les
deux moteurs.
Vous trouverez un exemple d’utilisation de cet élément au point 4.4 Tango à la page 36.
142
F
ROBOPro
entre eux. La synchronisation n’est pas annulée si vous envoyez la commande Synchrone avec la
valeur 0 au moteur.
La commande Distance permet d’appli-
quer des impulsions à un moteur. Le
moteur freine dès l’atteinte de ce nombre
d’impulsions. Vous pouvez aussi effacer
la distance déterminée à tout moment
par l’entrée de la valeur 0 pour la dis-
tance.
Vous devez envoyer la commande pour
la distance aux deux moteurs si vous
voulez combiner la synchronisation et la
distance. La commande Synchrone n’est
envoyée qu’à un seul moteur, mais avec
le numéro de l’autre moteur en tant que
valeur.
Les commandes Synchrone et Distance ne démarrent cependant pas le moteur. Pour ce faire, le
programme doit disposer d’une commande Gauche ou Droite ou =.
Vous devez patientez jusqu’à l’atteinte de l’objectif comme pour le niveau 1. Il va de soi que le
niveau 3 comprend également des éléments pour les entrées « But atteint ».
Si l’on souhaite à nouveau contrôler le moteur avec des commandes standard, il faudra d’abord
désactiver les commandes Synchrone et Distance en envoyant une commande Synchrone et
Distance à valeur nulle (0). Mais avant de faire cela, il faut envoyer une commande d’arrêt au
moteur. Les commandes Synchrone et Distance n’arrêtent le moteur que tant que les commandes
sont actives. Si on désactive les commandes sans avoir avant arrêté le moteur, celui-ci se remet
en marche.
143
F
ROBOPro
11.7 Display
L’écran Display est une nouveauté du ROBO TX Controller. Cet écran permet de commander des
programmes comme sur un panneau de commande et d’afficher des données d’état. Le dessin
s’affiche comme pour un panneau de commande en cliquant sur l’onglet TX Display :
L’écran est doté d’un régulateur coulissant et d’un bouton comme pour le panneau de commande.
Il dispose d’un affichage textuel des données d’état. La structure de l’affichage se sert d’un élé-
ment de ligne et d’un élément rectangulaire.
Pour modifier la taille d’un élément de commande, vous devez passer par le point de menu
Dessiner / Traiter
La liaison entre les éléments de l’écran et la programme s’effectue via des entrées et sorties
comme pour le panneau de commande.
144
F
ROBOPro
Nota Bene : Vous devez appuyer simultanément sur les deux boutons de l’écran sur l’Inter-
face pour stopper un programme en téléchargement, qui utilise les fonctions du Display.
Chaque sous-programme est attribuable à un autre contenu, comme pour les panneaux de com-
mande. L’affichage change cependant automatiquement dans TX Display dès que vous accédez à
ou que vous quittez un sous-programme. Ceci a pour effet de faciliter considérablement la concep-
tion de commandes de menu compliquées. Il est cependant recommandé de commander tous les
programmes contenus dans le TX Display en se servant d’un seul déroulement. Il se pourrait qu’il
soit difficile, au cas contraire, de prévoir les contenus de TX Display à afficher dans quelle situation.
145
F
ROBOPro
146
F
ROBOPro
A supposer que l’exposant d’un nombre se situe au-dehors de cette zone, ce qui se produit uni-
quement pour les erreurs de calcul dans la plupart des cas, l’erreur est affichée par ?FORMAT?.
Il va de soi que vous pouvez aussi afficher les nombres à virgule flottante via les formats habituels
des ordinateurs et calculatrices de poche. Vous vous servez de la commande Texte dans un tel
cas. Elle vous propose les options suivantes :
147
F
ROBOPro
Exemple :
Deux constantes sont cumulées et le résultat est affiché durant
5 secondes. L’affichage est effacé par la suite (Entrée \c dans
la commande Texte) et le mot "fin" s’affiche.
Veuillez prendre les observations de formatage suivantes en
considération :
• Vous pouvez varier le nombre des décimales valables de
même que le nombre des chiffres dans l’exposant dans
tous les formats.
• Vous pouvez utiliser un point ou une virgule comme
séparateur décimal.
• Le point ou la virgule doit être précédé(e) d’au moins 2 # caractères, un pour le signe et un
pour au moins un chiffre devant la virgule.
ROBOPro utilise les codes suivants pour afficher des situations particulières et des erreurs
• 0 est utilisé pour représenter un 0 exact (sans erreur) ou des nombres par exemple inférieurs
à ±10-2500
• ?FORMAT? L’affichage du nombre est impossible via le format sélectionné.
• ?OVERFLOW? Le calcul a provoqué une transition arithmétique. Une division par 0 a par
exemple menée à une transition.
• ?NAN? „Pas de nombre“ (anglais : Not A Number) est le résultat d’un calcul invalide, tel que
la racine de -1.
• ?UNDEFINED? Cette valeur est par exemple utilisée pour les entrées des sous-programmes
avant de leur attribuer une valeur.
• ?LOST? s’affiche par exemple pour 0/0
• ?CORRUPTED? Ceci ne devrait pas se produire. Si vous disposez d’un programme affichant
cette valeur, nous vous prions de l’envoyer au service de fischertechnik.
• ??.?? Voir chapitre suivant.
148
F
ROBOPro
149