Projet, problèmes de capteurs & programmation

Bonjour / Bonsoir à tous!

Je suis en Terminale S SI, et je participe activement à la création d'un robot suiveur de ligne. Pour parvenir à mon but j'utilise le matériel suivant:

  • Arduino Uno
  • Dual DC Motor Shield Microbot.it
  • 2 moteurs DC
  • 3 capteurs Sharp GP2Y0D810Z0F + 3 câbles pour relier à l'arduino uno
  • Alim externe 9V

Ca c'est le matériel. J'ai lu le Datasheet concernant les capteurs. ( https://boutique.semageek.com/fr/index.php?controller=attachment&id_attachment=20 )

Voici le programme que j'utilise: // integrer capteursint capteurg = 1;int capteurm = 2;int capteurd = 3; - Pastebin.com

Je rencontre quelques soucis malheureusement au niveau de la fonction PinMode. J'ai trouvé sur le net ça: http://www.jayconsystems.com/tutorial/MC33932-Dual-Motor-Shield/

Je ne sais pas comment intégré cette fonction dans mon programme pour parvenir à faire tourner les moteurs. Car je ne parviens même pas à compiler mon programme actuellement.

J'ai aussi une dernière question concernant le branchement des 3 capteurs sur la carte Arduino. Je sais comment en brancher un seul mais je n'ai aucune idée concernant le branchement de 3 de ces capteurs. Je n'ai pas trouvé d'infos là dessus sur internet.

J'aimerais vraiment avancer dans mon projet, je ne cherche pas à avoir la solution toute faite entre mes mains, ce n'est pas le but. Si j'ai été un peu flou, n'hésitez pas à me le demander. Je suis à votre écoute, je ne dispose de pas beaucoup de temps pour finir ce projet mais je compte bien m'investir dans ce que je fais! Je n'ai pas vraiment de bases dans la programmation en C mais j'ai une bonne culture informatique à la base donc je ne suis pas totalement débutant non plus.

En esperant une réponse de votre part. Pensez vous que ça vaille le coup si j'explique aussi mon projet sur les forums en anglais?

3 capteurs Sharp GP2Y0D810Z0F

Ce sont des capteurs de distance par des capteurs pour détecter une ligne.

Ton erreur de compilation vient sans doute d'un pb de syntaxe. Il faut utiliser une virgule dans la fonction pinMode.

Comme ça: pinMode(1,0); //moteur1 sur la broche 1 à l'état 0
Alors que toi tu écris ça: pinMode(1;0); //moteur1 sur la broche 1 à l'état 0

@+.

Bonjour,

cyantifique:
J'aimerais vraiment avancer dans mon projet, je ne cherche pas à avoir la solution toute faite entre mes mains, ce n'est pas le but. Si j'ai été un peu flou, n'hésitez pas à me le demander. Je suis à votre écoute, je ne dispose de pas beaucoup de temps pour finir ce projet mais je compte bien m'investir dans ce que je fais! Je n'ai pas vraiment de bases dans la programmation en C mais j'ai une bonne culture informatique à la base donc je ne suis pas totalement débutant non plus.

Vous aviez certainement du temps pour ce projet.
Pour en savoir plus, tu peux consulter les tutos : Tutoriel d'Eskimon - #9 by Eskimon - Tutoriels et cours - Arduino Forum

fdufnews:

3 capteurs Sharp GP2Y0D810Z0F

Ce sont des capteurs de distance par des capteurs pour détecter une ligne.

Arf... Je pensais que quand ces capteurs allaient détecter la ligne noire ils allaient renvoyer une valeur différente. Du coup je vais voir si y'a pas des capteurs qui puissent faire ce genre de taches. Merci beaucoup de l'info!

Lumaso:
Ton erreur de compilation vient sans doute d'un pb de syntaxe. Il faut utiliser une virgule dans la fonction pinMode.

Comme ça: pinMode(1,0); //moteur1 sur la broche 1 à l'état 0
Alors que toi tu écris ça: pinMode(1;0); //moteur1 sur la broche 1 à l'état 0

@+.

Merci beaucoup, je vais corriger la syntaxe de mon programme.

icare:
Bonjour,

cyantifique:
J'aimerais vraiment avancer dans mon projet, je ne cherche pas à avoir la solution toute faite entre mes mains, ce n'est pas le but. Si j'ai été un peu flou, n'hésitez pas à me le demander. Je suis à votre écoute, je ne dispose de pas beaucoup de temps pour finir ce projet mais je compte bien m'investir dans ce que je fais! Je n'ai pas vraiment de bases dans la programmation en C mais j'ai une bonne culture informatique à la base donc je ne suis pas totalement débutant non plus.

Vous aviez certainement du temps pour ce projet.
Pour en savoir plus, tu peux consulter les tutos : Tutoriel d'Eskimon - #9 by Eskimon - Tutoriels et cours - Arduino Forum

J'avais en effet du temps mais des problèmes personnels m'ont empêchés de mener à terme mon projet. Je te remercie pour les tutos je vais fouiller tout ça, ça m'aidera à avancer!

et pinMode() défini comme son nom l'indique le mode du pin : entrée ou sortie. Pas son état

Re! Je crois que je vais abandonner l'idée d'utiliser le PinMode. J'ai utilisé un code lambda qui a l'air compatible avec mon matériel:

J'ai fait le montage suivant: Arduino branchée sur le pc via usb, alim externe 9v branchée sur mon Dual DC shield, moteur DC branché sur le M1 de mon dual dc shield. J'ai compilé, téléverser le programme et mon moteur tournait! Du coup je pense qu'il serait plus simple pour moi de réussir à intégrer ce code dans mon programme. Vous en pensez quoi?