Programmation par blocs - Aide et conseils

Bonjour à tous,
Je découvre depuis peu le monde de l'arduino et je n'ai pas de connaissances en programmation.
Enseignant en technologie, mon utilisation se limitera à l'utilisation de logiciels de programmation par blocs avec les élèves.
J'ai passé en revue et pendant de longues heures, l'ensemble des logiciels de ce type disponible sur la toile (IDE - Ardublock, Blocly@rduino, Scracth2A, S4A, mBlock, … et App inventor.
J'ai opté pour le logiciel mBlock qui est le mieux adapté pour moi à la formation des élèves.
Je suis parvenu à programmer un robot suiveur de ligne, à moustaches, à piloter toute sorte de capteurs et actionneurs.
Malheureusement, je suis tombé sur un OS.
Souhaitant réaliser une application android pour piloter ma carte, je me suis équipé d'un module HC-06, mais impossible de réaliser le programme mBlock correspondant. J'ai le sentiment qu'il manque des blocs… J'ai cependant réussi à faire cette programmation avec le logiciel Ardublock. Ce n'est donc pas un problème matériel.
Je précise que je ne dispose pas du robot mBot.
Si quelqu'un peut m'aider à configurer le logiciel, je lui en serai très reconnaissant.
Amicalement.

Souhaitant réaliser une application android pour piloter ma carte, je me suis équipé d'un module HC-06, mais impossible de réaliser le programme mBlock correspondant. J'ai le sentiment qu'il manque des blocs… J'ai cependant réussi à faire cette programmation avec le logiciel Ardublock. Ce n'est donc pas un problème matériel.

en branchant votre HC-06 sur votre carte arduino, j'imagine en croisant les fils Tx et Rx et en alimentant votre carte, ce que vous avez obtenu c'est connecter le port série de l'arduino au monde sans fil. Ensuite depuis votre appareil android, il vous fait un programme capable d'envoyer des commandes à travers Bluetooth vers votre carte (et bien sûr un programme qui attend ces commandes sur l'arduino et qui en fait quelque chose)

Pouvez vous préciser ce que vous souhaitez faire exactement et comment vous avez branché vos cables et quel programme vous utilisez côté android?

(laissez moi deviner: collège en banlieue de Nantes ? :slight_smile: )

Bonjour :slight_smile:
Tout d'abord, un grand merci pour votre aide. Il faut dire que j'y passe pas mal de temps depuis le début des vacances, donc votre aide est vraiment la bienvenue :smiley:
Donc pour répondre à vos questions :

  • Oui j'ai bien croisé les fils Tx et Rx entre le module bluetooth et la carte UNO. Par contre, effectivement, j'utilise les broches 0 et 1 de la UNO mais je ne sais pas comment configurer Ardublock ou mBlock pour en utiliser d'autres.
  • Les programmes réalisés à l'aide d'ardublock et sur App inventor me permettent de piloter un actionneur à l'aide de mon smartphone. Cela fonctionne. Ce que je ne parviens pas à faire, c'est faire la même chose avec le logiciel mBlock que je trouve bien plus simple pour les élèves, car identique à Scratch.
  • Pour le lieu du collège, en fait je suis du Pas de Calais :D. La programmation fait partie intégrante des nouveaux programmes. On doit donc tous s'y mettre :smiley:
    On dit qu'une image vaut mille mots… Voici les captures d'écran de ce qui fonctionne.

App Inventor :

Ardublock :

Amicalement.

comy62:

  • Oui j'ai bien croisé les fils Tx et Rx entre le module bluetooth et la carte UNO. Par contre, effectivement, j'utilise les broches 0 et 1 de la UNO mais je ne sais pas comment configurer Ardublock ou mBlock pour en utiliser d'autres.

bonjour
ça ne pose aucun probleme avec un UNO et un module HC06 d'utiliser le serial hardware (pin 0 RX et 1 TX)
Mais à la condition expresse de ne pas utiliser en exploitation le convertisseur usb/serial embarqué .
la connection est
HC06 UNO
VCC 3.3V
GND GND
TXD RX
RXD TX

donc pendant la phase d'upload du programme , il faut physiquement deconnecter TXD et RXD

Merci pour ton aide Artouste :slight_smile:

Oui, j'avais constaté que lorsque les pins du module TXD et RXD étaient connectées aux pins de la UNO, je ne parvenais pas à uploader le programme dans la UNO. J'ai donc débranché avant, puis rebranché après.

J'aimerai tout de même être capable de programmer d'autres pins de façon à ne pas faire cette manip. Je ne sais juste pas comment faire, même avec ma version d'IDE (1.7.7).

Bonjour,

Tu peux utiliser SoftwareSerial() qui émule un UART par soft (comme son nom l'indique).
Par contre, je ne sais pas si c'est utilisable avec ardublock ou autre.

Hello Kamill,

Désolé, mais je ne comprends pas. Je n'ai pas de formation en programmation. UART c'est quoi ?
Comment cela s'utilise ? Je comprends la programmation par blocs, mais en lignes de code, c'est autre chose :slight_smile:

Merci.

L'UART c'est le composant qui gère la liaison série (dans les cas des arduino, il est incorporé au micro contrôleur).

SoftwareSerial permet d'utiliser (à peu près) n'importe quelle pins comme RX ou TX.

La doc de SoftwareSerial est ici, mais comme je te l'ais dit je ne sais pas si on peut l'utiliser avec la programmation par bloc.

Je suppose que vous êtes tous habitué à taper des lignes de code... Bon pour ma part, j'ai un peu de mal...

Est-ce qu'il y a quelqu'un qui a essayé mBlock ?

comy62:
Je suppose que vous êtes tous habitué à taper des lignes de code... Bon pour ma part, j'ai un peu de mal...

Est-ce qu'il y a quelqu'un qui a essayé mBlock ?

L'IDE ARDUINO est déjà elle meme une simplfication du codage et de l'integration.
Je n'ai jamais utilisé de l'arduino en mode blocks (ma seule experience avec la prog en mode blocks etant AI2)

D'apres ce que j'ai lu (rapidement) le software serial serait utilisable/gerable sous ardublock , mais pas sous mblock

maintenant si mblock genere du code en .ino , une intervention à ce niveau me semble assez simple.