Programmation d'un robot, demande de confirmation

:hello:

Donc voilà, je vous explique mon problème (qui soit dit en passant, n’en est pas réellement un) : Étant en 1ère S-SI, moi ainsi que deux camarades devons réaliser un projet dans le cadre du Travail Personnel Encadré (TPE).
Nous désirons réaliser un robot qui se déplacerai sur une table sans tomber de celle-ci, à l’aide d’un capteur infrarouge et de deux roues motrices (+ une roue folle).

Le robot est donc composé de deux roues motrices indépendantes (donc chacune ayant un moteur), une roue folle, un capteur infrarouge, et d’un micro contrôleur de modèle PIC 16F628.
Voilà la référence des composants si il y a besoin :
-Roues : www.gotronic.fr… Roues GMPW pour moteurs série GM
-Moteurs : www.gotronic.fr… Motoréducteurs Solarbotics série GM
-Capteur Infrarouge : www.gotronic.fr… Capteur IR à réflexion 1103

*Voilà le schéma électrique :

img705.imageshack.us… (Excusez l’aspect brouillon )

*Et voilà donc le programme du robot en Basic, programmé avec MikroBasic :

img411.imageshack.us…
(on ne voit juste pas le “end” à la fin ^^)

On voudrait que le robot soit initialement placé au coin inférieur droit d’une table (table assez grande ^^), dès que le robot arrivera au bout de la table, le capteur enverra l’information au PIC, le moteur gauche s’arrêtera pour effectuer une rotation, ensuite le robot reprendra sa route, dès que celui-ci arrivera à l’autre bout de la table, le capteur enverra l’information au PIC et le moteur droit s’arrêtera …etc et ainsi de suite !

Donc voilà, nous aimerions avoir votre avis pour ce qui est du programme, si vous pensez qu’il peut fonctionner avec nos critères ^^ !

Merci d’avance !

première question : comment allez vous détecter que vous êtes au bord de la table ? :smiley:
le capteur IR est très utile pour détecter des obstacles proches mais je ne pense pas qu’il intègre la notion de ‘profondeur’.
En y pensant, vous le mettez sous le robot ? (le capteur IR)
Il y a un risque que le temps de détection + le temps de traitement + le temps de ‘virage’ soit trop grande et précipite le robot dans une chute inexorable. à tester.

deuxièmement, si vous partez du bord inférieur droit, votre robot ne doit, à chaque angle de la table, faire qu’un virage à 90° sur la gauche ; votre programme s’en trouve simplifié.

bon courage.

  1. Dès que le capteur ne reçoit plus de signal, il bascule. Nous le mettrons le capteur à distance du robot, et à - de 10 cm de la table.
    Pour le temps de traitement, justement nous ne savons pas trop à quelle distance placer le capteur, c’est pour cela qu’on veut procéder à quelques tests. ( avec protection bien entendu :wink: )

  2. Le problème c’est que le robot devrait faire toute la table et non seulement les bords.

Ou alors je ne saisis pas très bien ce que tu viens de dire ^^"

Merci :jap: