Comment faire plusieurs actions simultanément ?

Bonjour,

Nous sommes en train de programmer un robot avec l'outil Ardu Blocks du logiciel Duinoedu, pour préparer le concours Collège Robofesta.
Le robot doit pouvoir suivre une ligne tout en effectuant d'autres actions en même temps comme attraper une cannette ou détecter une couleur...
Le robot suit très bien la ligne lorsque le programme ne comporte que le suivi de ligne mais dès que nous rajoutons dans la boucle les autres fonctions, il est perturbé et ne suis pas la ligne quand il teste les autres conditions. J'ai donc fait des recherches sur le multitâche de la programmation informatique mais concrètement j'ai compris qu'il faudrait deux cartes Arduino ! Pas très pratique !
Sinon j'ai aussi tenté de lui faire exécuter plusieurs boucles mais bien sur impossible de téléverser : "Plusieurs boucles trouvées !".
Je ne vois donc pas de solution, quelqu'un connait-il une fonction pour avoir des programmes en simultané ? Merci d'avance pour vos réponses ! :slight_smile:

Si vous voulez réaliser vos fonctions avec un seul processeur (ou contrôleur), le "simultané vrai" n'existe pas. Pour autant, vous pouvez découper le temps en rondelles. Le problème est de savoir de quelle épaisseur minimum vous avez besoin. C'est très certainement votre boucle de suivi de ligne qui va donner la mesure. Après, le découpage se fait avec des machines d'état.

Cordialement.

Pierre

La fonction millis() peut être intéressante pour gérer plusieurs actions en même temps

Je te laisse te renseigner dessus.