| PrésentationLe WebRobot est construit à partir d'un kit LEGO Robotic 
            Invention System. Le robot est contrôlé par un ordinateur PC sous 
            Windows 98 grâce à un émetteur infra-rouge connecté au port série 
            du PC. Cet émetteur est embarqué sur le robot grâce à un câble de 
            10 mètres.
 Un second câble transmet au robot le courant électrique (9 volts sous 
            1 ampère) pour alimenter le robot LEGO et la caméra video (les phares 
            sont aliméentés par une pile de 4,5 volts embarquée car le câble ne 
            fournit pas assez de puissance pour les alimenter). Ce câble permet 
            au robot de transmettre l'image video de la caméra embarquée vers 
            la carte d'acquisition video du PC et de recevoir les sons générés 
            par le synthétiseur vocal du PC. Le robot peut donc "parler" 
            ou plutôt répéter les phrases écrites par la personne qui prend le 
            contrôle du robot.
 
 Mécanique
 Le robot utilise trois moteurs LEGO. Un moteur pour les 
            deux roues de gauche et un autre moteur pour les deux roues de droite. Il 
            fonctionne à la manière d'un tank. Pour aller en marche avant, les 
            deux moteurs tournent en marche avant. Pour tourner, l'un des moteurs 
            est mis en marche avant et l'autre est mis en marche arrière. Le troisième 
            moteur est utilisé pour orienter la caméra vers le bas ou vers le 
            haut. Un système de levier permet de faire évoluer la caméra de bas 
            en haut à l'infini si le moteur reste en marche (la caméra ne se bloque 
            jamais en bout de course mais repart dans l'autre sens).
 
 Les lampes s'allument et s'éteignent en fonction de la position de 
            la caméra. Si la caméra évolue normalement (c'est à dire qu'elle monte 
            quand on appuie sur le bouton "haut") cela signifie que 
            les phares sont éteints. Si elle évolue "à contre" (c'est 
            à dire qu'elle descend quand on appuie sur le bouton "haut") 
            cela signifie que les phares sont allumés. Ce système relativement 
            compliqué est dû à la limitation du nombre de sorties contrôlables 
            du robot LEGO. Il ne possède que trois "sorties" utilisées par 
            les trois moteurs.
  Mouvement de la caméra et contrôle des
    phares
 
 Le robot 
            se déplace grâce à deux "pieds" enclipsés en porte-à-faux 
            sur les roues. Cela lui donne une démarche instable assez amusante 
            à regarder.Le gobelet argenté qui se trouve sur le devant du robot est un cylindre 
            de carton au milieu duquel se trouve un petit haut-parleur permettant 
            au robot de parler. Le carton sert à amplifier le son du haut-parleur.
 Deux pare-chocs situés devant et derrière le robot lui permettent 
            de s'arrêter au contact d'un obstacle. Un capteur de choc est relié 
            à chacun des pare-chocs. Ces deux capteurs sont reliés au robot LEGO 
            à deux de ses trois "entrées" disponibles. Ils sont contrôlés directement 
            par le robot (et non par le PC) grâce à un programme RCX écrit en 
            NQC (proche du langage C). Le robot peut donc être contrôlé à la fois 
            par le programme embarqué (détection des collisions) et par le PC. 
            La priorité est donné au programme embarqué.
 
 Programmation
 Le PC fait office de serveur internet.
 Cependant, le PC 
            étant connecté à internet par le câble (NoosNet), son adresse IP est 
            susceptible de changer. Pour contrer ce problème, le PC envoie tous 
            les jours son adresse IP sur le site en créant dynamiquement une page HTML qui redirige les visiteurs sur 
            la page actuelle "index.htm" qui se trouve sur le PC dans 
            le dossier contenant la page à exécuter par défaut.
 La retransmission 
            des images se fait par l'un des différents systèmes 
            testés : Applet Java (sans streaming), Applet Java IVista (avec 
            streaming), Real Player (streaming) ou Windows Media Player (streaming). 
            Chaque système vidéo possède ses avantages et 
            ses inconvénients (voir la page principale).
 Pour contrôler le robot, il faut se connecter sur le site internet : www.andreani.net/robot. Un écran de contrôle apparaît alors à l'écran avec une vue vidéo de ce que voit le robot. Cliquez ici pour voir une photo de l'écran de contrôle. Des boutons permettent de donner des ordres (commandes) au robot. Les commandes disponibles sont : avancer d'un pas, reculer d'un pas, tourner d'un pas à gauche, tourner d'un pas à droite, stopper, prononcer vocalement une phrase que l'on vient d'écrire, faire monter la caméra vers le haut, la faire descendre, arrêter le mouvement de la caméra. Pour diriger le robot, une application serveur spécifique a été écrite 
            en Visual Basic. Cette application tourne sur le PC qui est relié au robot par un fil. Elle scrute sur un port spécifique du PC les entrées 
            internet correspondant à une commande. Si la commande est valide (AVANT, 
            GAUCHE, PRONONCER BONJOUR, etc.) elle est envoyée au robot et exécutée.Le serveur utilise deux ActiveX Microsoft :
 Le Winsok Control pour la partie Client-Serveur.
 L'Agent Microsoft pour la synthèse vocale TTS (Text-To-Speech).
 
 Les commandes au robot sont envoyées par n'importe quel navigateur 
            internet qui suppporte les applets Java. L'interface comporte une 
            image video et plusieurs boutons permettant de commander le robot. 
            Chaque bouton est une applet Java qui émet sa commande vers l'adresse 
            IP d'où l'applet à été téléchargée (le PC) et sur un port spécifique 
            (le même que celui qui est scruté par le serveur). Les applets Java 
            ont été développés par Olivier Petilon.
 
 Photos
 Cliquez sur les photos ci-dessous pour les agrandir 
                :
 
   
 Important1) Les phares fonctionnant sur piles, il est important 
            de les éteindre avant de quitter le site. Les phares sont contrôlés 
            par le biais de la caméra. Vérifiez que lorsque vous cliquez sur le 
            bouton "Haut" de la caméra, celle-ci monte. Si c'est le 
            cas, les phares sont éteints. Par contre, si lorsque vous cliquez 
            sur le bouton "Haut" de la caméra, celle-ci descend, c'est 
            que les phares sont allumés. Pour les éteindre, il faut ré-appuyer 
            sur le bouton "Haut" de la caméra jusqu'à ce qu'elle finisse 
            par monter ! De nuit, il est facile de savoir si les phares sont éteints 
            ou non, mais de jour, le seul moyen de les éteindre (s'ils ont été 
            allumés par erreur) est de s'assurer que la caméra monte quand on 
            appuie sur le bouton "Haut" puis de cliquer tout de suite 
            sur le bouton "x" pour stopper la caméra (sinon elle risque 
            de refaire un demi-tour et de rallumer les phares !).
 
 2) "NoosNet" limite la quantité de données émises par un 
            PC relié au câble internet. Donc, envoyer des images du robot vers 
            un navigateur internet risque de me faire dépasser le forfait autorisé 
            de 250 Mo par mois. Pour cette raison, le site n'est ouvert que le 
            soir à partir de 19 heures en général...
 
 
 Retour
         |