Comme discuté ici, on peut simuler une carte Arduino Uno dans Tinkercad Circuits.

Après la simulation, il peut être intéressant d'essayer le tout avec du vrai matériel, donc de téléverser le programme dans une carte. Voici les liens discutés dans la vidéo plus bas :

  1. Exemple de simulation sur Tinkercad.
  2. Arduino IDE (à installer)
  3. mBlock en ligne (on peut aussi l'installer)
  4. mLink (à installer et à démarrer en arrière plan pour pouvoir téléverser le programme dans la carte depuis le navigateur ).

Note : voici les trois lignes  à ajouter dans le programme de mBlock pour que la compilation fonctionne :

#include <Arduino.h>
#include <Wire.h>
#include <SoftwareSerial.h>

Vidéo : 5 min 57 s



Voici le programme final utilisé dans la vidéo.

#include <Arduino.h>
#include <Wire.h>
#include <SoftwareSerial.h>
/* Utilisation du capteur Ultrason HC-SR04 */
//Source : http://www.locoduino.org/spip.php?article52
// définition des broches utilisées
int trig = 11; //on peut utiliser n'importe quelle broche numérique
int echo = 10;
//https://www.arduino.cc/en/Reference/Long
long lecture_echo; //durée de l'aller-retour du signal
long cm;
 
void setup()
{
pinMode(trig, OUTPUT); //sortie vers la broche trig pour démarrer le capteur
digitalWrite(trig, LOW);
pinMode(echo, INPUT); //broche d'entrée pour l'echo
Serial.begin(9600); //démarre la connexion avec le moniteur série
}
void loop()
{
digitalWrite(trig, HIGH); //on démarre le signal
delayMicroseconds(10); // durée du signal trig de 10 microsecondes
digitalWrite(trig, LOW); //On arrête le signal
lecture_echo = pulseIn(echo, HIGH); //la durée de cette lecture est proportionnelle au temps d'aller-retour du signal
cm = lecture_echo / 58; // comment on arrive à cette formule?
Serial.print("Distance en cm : ");
Serial.println(cm);
delay(1000); //on attend 1 s avant la prochaine mesure
}


Modifié le: jeudi, 29 août 2024, 08:38