Le simulateur Wokwi

logo_wokwi

Wokwi est un simulateur électronique en ligne opensource gratuit  multi-plateforme

  • Arduino
  • ESP32
  • Raspberry Pi Pico
  • STM32

Multi-langage

  • Arduino
  • MicroPython


Connexion au simulateur Wokwi

wokwi_interface


Dans votre navigateur, saisir l’adresse https://wokwi.com

Il n’est pas nécessaire de créer un compte pour utiliser le simulateur Wokwi

Mais la création d’un compte est recommandée, car cela vous permettra de retrouver «en ligne» vos sketchs


Pour s’inscrire et créer un compte, 

Cliquer sur le bouton [S’inscrire] en haut/droite.

Et laissez-vous guider pour la création de votre compte ….



Paramétrage de votre interface

wokwi_parametre


Cliquer sur votre Avatar, pour ouvrir la fenêtre ci-contre

  • Mes projets
    • Accès à tous vos projets (sketch)
  • Profile
    • Nommer votre profil
  • Language
    • Mettre en Français
  • Déconnection
    • Pour vous déconnecter ...

Créer un nouveau projet

  • wokwi_carte_arduino
  • wokwi_carte_raspberry
  • wokwi_carte_esp32
  • wokwi_carte_stm32


Cliquer sur « + NEW PROJECT »

Sélectionner le type de carte que vous souhaitez utiliser

  • Arduino
  • Raspberry Pi Pico
  • ESP32
  • STM32
  • etc ...



Nouveau projet Arduino

  • Wokwi_projet
  • wokwi_simulation-1


Votre interface comprends deux zones

A droite: La carte et les composants pour votre projet

A gauche: Le code (ino, json et librairie)

  • Onglet « sketch.ino »
    • Votre code (void setup et void loop)
  • Onglet « diagram.json »
    • Propriétés des composants
  • Onglet « Library Manager »
    • Installation des librairies nécessaires dans votre sketch

Dans la barre "Wokwi" à gauche, vous avez deux boutons 
  • [Sauvegarder] pour sauvegarder votre projet
  • [Partager] pour partager votre projet

Dans la barre "Wokwi" à droite, vous avez [Docs] et votre Avatar
  • [Docs] pour accéder à la documentation en ligne
  • [Votre Avatar] pour accéder à vos projets et au paramétrage

Dans la zone de la carte et des composants, vous avez 3 boutons
  • Bouton  vert : Démarrer la simulation
  • Bouton  bleu : Ajouter des composants
  • Bouton  gris : Zoom, grille, aide; etc ...
Une fois la simulation lancée, les trois boutons deviennent:
  • Bouton  vert : Redémarrer la simulation
  • Bouton  gris : Stopper la simulation
  • Bouton  gris : Mettre en pause la simulation puis cliquer sur le bouton  jaune  pour reprendre la simulation

simulation-1
Lancer la simulation
Ajouter des composants
Zoom, grille, etc ...

simulation-2
Relancer la simulation
Stopper la simulation
Mettre en pause la simulation
simulation-3

Relancer la simulation
Stopper la simulation
Reprendre la simulation



Ajouter un composant

wokwi_bouton+


Cliquer sur le bouton 

 [ + ] 



Dérouler la liste des composants 

ou saisir le nom du composant ...


Puis cliquer sur le composant pour l'ajouter ...


wokwi_liste_composants
Liste des composants
wokwi_servomoteur

exemple: Servomoteur

Les LEDs

wokwi_composant


  • Couleur des LEDs
    • Cliquer sur la couleur
  • Inversion du composant
    • Effet miroir
  • Rotation  du composant
    • Sens des aiguilles d'une montre
  • Suppression du composant
    • Cliquer sur la corbeille
  • Documentation
    • Cliquer sur le point ?




Les résistances

wokwi_resistance

  • Value
    • Définir la valeur de la résistance
  • Units
    • Ohm, KOhm, MOhm
  • Rotation
    • Sens des aiguilles d’une montre
  • Suppression
    • Suppression du composant, cliquer sur la corbeille
  • Documentation
    • Cliquer sur le ? 


 Certains composants n’ont pas de configuration. (Exemple: Le servomoteur)

Seul l’accès à la documentation avec le point ? est présent

Pour supprimer ce type de composant, utiliser la touche [Suppr] du clavier de votre ordinateur



wokwi_servomoteur

Pour effectuer une rotation de ce type de composant (Servomoteur), vous ajoutez la commande rotate dans le fichier diagram.json


Cliquer sur l’onglet «diagram.json»
Repérer la ligne "servo x" du composant servomoteur
Ajouter la commande "rotate":-90,

Respecter bien l’écriture ...

Mettre la commande rotate entre des crochets " "
Puis les deux points : 
Mettre l’angle de rotation en + ou -
Terminer la commande par une virgule , 

"rotate": -90, 



wokwi_rotate

Nommage des broches des composants

 

Afin de vous aider, les broches et les pins des composants sont nommées lorsque vous approchez le pointeur de la souris

uno+5v
+VCC + 5v
uno_D7
Pin Digitale D7
uno_A2
Pin Analogique A2
resistance
Résistance
resistance-1
resistance-2
led
LED
led_anode
Anode
led_cathode
Cathode
servo_gnd

Servomoteur GND



servo_vcc

Servomoteur V+

servo_pwm

Servomoteur PWM

Les fils de liaisons

wokwi_fil_liaison


Pour ajouter des fils de liaison, cliquer sur une patte d'un composant (la patte est repérée par un petit carré vert) puis déplacer la souris pour créer un fil de liaison, jusqu'à une patte d'un autre composant ou une broche de la carte.


Quand vous sélectionnez un fil de liaison, vous pouvez changer la couleur et des points d’accroches s’affichent, ce qui vous permet de déplacer le fil de liaison pour une meilleure compréhension du schéma.





wokwi_liaison

Repérage de connexion

 Un point fort de Wokwi, est le repérage des connexions.

Exemple, si vous utilisez un servomoteur – 3 broches de connexion

  • V+ sur le +5V de l’Arduino
  • GND sur une GND de l’Arduino
  • Signal sur une broche PWM de l’Arduino


Suivant la broche du servomoteur que vous avez sélectionné, Wokwi vous affiche en surbrillance (Blanc) la (ou les) broche(s) de l’Arduino sur laquelle vous pouvez connecter le servomoteur

VCC

V+



gnd

GND

pwm

PWM

Écriture du code


Dans l’onglet sketch.ino, vous pouvez écrire votre code

Wokwi, vous affiche automatiquement différentes propositions de la commande dès que vous saisissez les 3 premiers caractères

Sélectionner la commande proposée

La commande est automatiquement insérée dans votre code.


 L’écriture de votre code est ainsi plus facile ...

  • int
  • output
  • pinmode_output
  • pinmode
  • void
code_blink

Les onglets de l'espace de codage

wokwi_onglet


  • Onglet sketch.ino
    • Contient votre code xxxxx.ino
    • Votre code ino (à la création il se nomme sketch.ino - Vous pouvez le renommer) 
  • Onglet Diagram.json
    • Chaque projet contient un fichier diagram.json
    • Ce fichier définit les composants qui seront utilisés pour la simulation, leurs propriétés et les connexions entre les composants
  • Onglet Librarie.txt
    • Liste les librairies et la documentation des librairies utilisées
  • Onglet Library Manager
    • Pour inclure une librairie (exemple: servo.h pour l'utilisation des servomoteur) 



Renommer votre projet

  • wokwi_renommer_projet
  • wokwi_renmmer_projet-1


Pour renommer votre projet, cliquer sur le crayon

Puis nommer votre projet

Vous pouvez (ou non) le rendre "Public"


Renommer votre Code (stekch.ino)

wokwi_renommer_sketch


Pour renommer le fichier sketch.ino

Sélectionner l'onglet "sketch.ino"

Cliquer sur la flèche "bas", puis "renommer"


 NE PAS RENOMMER LES AUTRES ONGLETS 

  • diagram.json
  • librairies.txt
  • Library Manager 



Ajout du moniteur série dans votre projet


 Le moniteur série n’est pas configuré automatiquement dans votre projet.

Vous devez installer le moniteur série dans l'onglet diagram.json, chaque fois que votre projet aura besoin du moniteur série.

Dans le fichier diagram.json, ajouter la ligne ci-dessous


"serialMonitor":{"display":"auto","newline":"lf","convertEol":false},


La ligne doit être dans l’entête du fichier diagram.json

{

"version": 1,
"author": "Claude",
"editor": "wokwi",
"serialMonitor":{"display":"auto","newline":"lf","convertEol":false},
"parts": [ { "type": "wokwi-arduino-uno", "id": "uno", "top": 0, "left": 0, "attrs": {} } ],
"connections": [],
"dependencies": {}
}


 Puis dans le fichier sketch.ino, vous pouvez configurer le moniteur série

void setup() {
//Initialisation du moniteur série
Serial.begin(9600);
}

void loop() {
//Affichage du message dans le moniteur série
Serial.println("Moniteur série");
}




Ajouter un label à vos composants

wokwi_label_composant


 Vous pouvez ajouter un label à vos composants.

Dans l'onglet "diagram.json"

Ajouter les lignes suivantes (exemple):

{

      "type": "wokwi-text",    Attribut texte
      "id": "joystick1",     
Nom du composant auquel est lié le label
      "top": -250,           
Position
      "left": -30,             Position
      "attrs": { "text": "Bras2 + Pince" }   Label
    }



La documentation

  • wokwi_servomoteur
  • servo_exemple
  • servo_broche


Pour accéder à la documentation générale, cliquer sur [Docs] dans la barre Wokwi

Pour accéder à la documentation d'un composant, cliquer sur le point ? du composant



Sélectionner un composant, un cadre en pointillé entoure le composant et un point ? s’affiche
Cliquer sur le point ? pour afficher la page d’information et d’aide du composant

Vous y trouverez

  • des explications sur le câblage
  • des explications sur le fonctionnement du composant
  • des exemples de codes




Personnaliser

Google Analytics

Google Analytics est un service utilisé sur notre site Web qui permet de suivre, de signaler le trafic et de mesurer la manière dont les utilisateurs interagissent avec le contenu de notre site Web afin de l’améliorer et de fournir de meilleurs services.

Facebook

Notre site Web vous permet d’aimer ou de partager son contenu sur le réseau social Facebook. En l'utilisant, vous acceptez les règles de confidentialité de Facebook: https://www.facebook.com/policy/cookies/

Twitter

Les tweets intégrés et les services de partage de Twitter sont utilisés sur notre site Web. En activant et utilisant ceux-ci, vous acceptez la politique de confidentialité de Twitter: https://help.twitter.com/fr/rules-and-policies/twitter-cookies