Piloter un robot Arduino en bluetooth avec une application Android (AppInventor) publié le 23/05/2016

Piloter un robot Arduino en bluetooth avec une application Android (AppInventor)

Dans cet article, vous découvrirez une application pour piloter un robot motorisé en bluetooth. L’application AppInventor est relativement simple à créer et aucune installation spécifique n’est requise sur l’ordinateur. En revanche, pour la programmation du robot, il est préférable de connaître des méthodes et des logiciels liés à Arduino.

La technologie et les mathématiques peuvent s’associer dans un tel projet. Les élèves ont la possibilité d’améliorer cette réalisation en ajoutant un curseur pour contrôler la vitesse du robot, en utilisant des capteurs sur le robot, en ajoutant des boutons pour dessiner des trajectoires prédéfinies (cercles, carrés, recouvrement de zone...)

Pour ceux qui souhaiteraient développer ce genre d’application sur Android en Python, je vous conseille Kivy.
 Piloter un Robot Arduino en Bluetooth (EDR ou BLE) par une application Android-Kivy

Le résultat

Voici une vidéo qui montre le résultat de ce projet :

Piloter un robot arduino en bluetooth avec android

Piloter un robot arduino en bluetooth avec android (AppInventor)

Si vous ne connaissez pas AppInventor, je vous conseille de commencer par là :

 Premiers pas avec AppInventor

L’idée générale de ce projet est d’envoyer des nombres par bluetooth vers le robot afin qu’il réagisse :

  1. avancer
  2. tourner à gauche
  3. tourner à droite
  4. stop
  5. reculer

Bien évidemment, vous pouvez choisir d’autres valeurs.

Voici un document de Claude Bodin, professeur de technologie au collège Joachim du Bellay présentant l’ensemble du projet (Matériels, application Android, projet Ardublock...) :

Ressource AppInventor Arduino Bluetooth (PDF de 1 Mo)

Ressource AppInventor Arduino Bluetooth

Côté Android

Voici une vidéo présentant rapidement la création et l’utilisation d’une connexion Bluetooth dans AppInventor :

AppInventor connexion bluetooth

AppInventor, créer et utiliser une connexion bluetooth

Une image des codes correspondants :

Blocs de connexion bluetooth avec AppInventor

Blocs de connexion bluetooth avec AppInventor

Attention ! AppInventor ne gère aujourd’hui que le mode EDR, c’est à dire le mode classique de connexion bluetooth. Il existe en effet un autre type de connexion bluetooth, BLE (Bluetooth Low Energy), non supportée par AppInventor.

Côté Arduino

Il faut installer toutes les librairies et mettre à jour Ardublocks :

 Télécharger les librairies et les mises à jour Ardublocks

Nous avons aujourd’hui la version 0.57 BETA.

Une petite vidéo pour expliquer le programme :

Ardublock pour ShieldBot en bluetooth

Ardublock pour piloter un ShieldBot en bluetooth

Voici en image le programme :

Ardublocks pour communication bluetooth avec le robot

Ardublocks pour communication bluetooth avec le robot

Remarque :

Pour tourner à gauche ou à droite, on peut aussi utiliser deux vitesses différentes sur les deux moteurs et faire avancer "tout droit" le robot. Par exemple, une vitesse de 400 sur le moteur gauche associée à une vitesse de 1000 sur le moteur droit va provoquer un virage à gauche.