Parmi les bricoleurs, Arduino est une plateforme open source très appréciée pour les projets qui nécessitent un microcontrôleur. La plateforme se compose de cartes de développement faciles à utiliser qui sont programmées à l’aide de l’IDE Arduino. Avec seulement une carte Arduino et quelques composants supplémentaires, il est possible de réaliser un grand nombre de projets intéressants !
Parfois, il est préférable de tester votre projet avant d’acheter tous les composants et d’investir beaucoup de temps dans l’assemblage. Ça tombe bien, c’est exactement ce que se propose de faire un simulateur Arduino : il simule virtuellement les composants physiques et les cartes Arduino afin que vous puissiez tester le circuit que vous avez conçu (et même son code !) avant de l’assembler dans la réalité.
Recourir à un simulateur est souvent l’approche la plus productive pour le prototypage et dans les premières étapes d’une conception. Cela dit, cela a aussi ses inconvénients, dont nous vous parlons un peu plus loin.
Dans cet article, nous présenterons quelques-uns des meilleurs simulateurs Arduino disponibles (en ligne et hors ligne), les facteurs que nous avons pris en compte pour les sélectionner et la manière de choisir le simulateur idéal pour vos besoins.
C’est parti !
Pour commencer, étudions les options disponibles en ligne. Pour les simulateurs qui suivent, vous aurez simplement besoin d’un navigateur et d’une bonne connexion internet. Aucun programme à télécharger !
Microsoft MakeCode, permet de créer des simulations pour diverses cartes (Arduino compris) à l’aide de blocs, une méthode accessible à tous, même sans expérience du code. On peut également opter pour la programmation en Python ou JavaScript. Dans cet environnement, tout est très intuitif : une fois que vous aurez assimilé les concepts de base, vous serez en mesure de créer d’excellentes simulations.
Bien qu’il s’agisse d’une plateforme en ligne, il est également possible de relier des appareils physiques. Vous pouvez accéder à une grande variété d’extensions pour les capteurs et autres composants très utiles pour les simulations. En plus des fonctions de base, il existe aussi des extensions avancées que vous trouverez en bas du menu principal. Elles donnent accès à des fonctionnalités supplémentaires, comme un joystick, des capteurs, ou même des commandes pour la prise en charge de clés USB et de mémoires flash.
L’interface utilisateur est assez simple : à gauche, une partie animée de la carte, et à droite, la zone de programmation en bloc. Certaines commandes affichent des résultats même sans qu’un Arduino ou un composant soit connecté, notamment les sorties audio. Vous pouvez aussi imprimer le schéma de câblage électronique pour vous aider lors de l’assemblage réel.
Voyons un exemple de base :
Tinkercad Circuits est un service en ligne gratuit d’Autodesk lancé en 2017. C’est probablement le simulateur Arduino le plus facile à utiliser. Vous pouvez facilement concevoir vos propres circuits, créer un programme au format bloc ou texte, puis le déboguer.
La simulation des cartes Arduino et des interfaces IO et l’interaction avec le code fonctionnent à merveille. Le code peut par ailleurs être téléchargé et partagé avec d’autres makers.
Bien sûr, il ne peut pas non plus tout faire. Par exemple, Tinkercad Circuits ne permet pas de créer ou d’ajouter vos propres pièces et composants, et il n’existe que six bibliothèques Arduino, que vous ne pouvez pas compléter.
Si vous voulez essayer Tinkercad Circuits, vous devez d’abord vous inscrire. Il existe trois sortes de comptes : formateur, étudiant, et particulier.
Pour vous faire une idée de ce programme sans vous inscrire, testez ce mètre ruban virtuel. Une fois que vous avez ouvert le lien :
Et ça marche ! La distance qui apparaît sur l’écran LCD correspond à celle indiquée par le capteur. Pour en savoir plus, n’hésitez pas à consulter notre article sur la conception et la simulation de circuits sur Tinkercad.
Wokwi était à l’origine basé sur AVR8js, une implémentation JavaScript de l’architecture AVR 8 bits. Il s’agit de la même famille de microcontrôleurs que celle utilisée par les Arduino Uno, Nano et Mega. Ces dernières années, plusieurs plateformes populaires ont aussi été intégrées, comme ESP32, STM32, et RP2040 (Raspberry Pi Pico). La liste complète du hardware pris en charge peut être consultée sur le site web de Wokwi.
Pour commencer, le plus simple est d’aller sur la page d’accueil, où vous pouvez choisir la plateforme que vous voulez tester (Arduino, par exemple). De là, vous pouvez explorer les projets présentés et les simuler. Vous pouvez également modifier le code et le schéma du circuit en éditant le fichier diagram.json ou en faisant simplement glisser le nouveau composant désiré dans le circuit. Pour plus de conseils et d’instructions, il existe un guide assez bien fait sur l’utilisation de l’éditeur de diagrammes.
Si vous souhaitez sauvegarder votre travail, vous devrez d’abord vous inscrire à l’aide de votre compte Google ou GitHub. Après avoir ouvert une session, vous verrez un petit menu (dans le coin supérieur droit de l’écran) proposant la section « My Projects », où vous pouvez créer et organiser vos projets.
Wokwi permet de créer ou d’ajouter des composants personnalisés, mais aussi de télécharger des bibliothèques personnalisées, ce qui est expliqué plus en détail dans sa documentation. Les utilisateurs avancés pourront aussi utiliser un débugueur interactif et un analyseur logique pour mieux corriger leur code.
Le développeur et la communauté sont très actifs, et Wokwi a évolué rapidement grâce à son modèle open source, qui encourage un environnement collaboratif. Pour poser vos questions et demander de l’aide, rendez-vous sur le canal Discord et sur le groupe LinkedIn, tout le monde sera prêt à vous apporter son soutien, y compris le développeur !
En termes de prix, Wokwi propose une version gratuite pour les projets open source. Attention, cela signifie que tout le monde peut voir les fichiers de votre projet. Cette option devrait suffire à la plupart des utilisateurs, bien qu’il ne soit pas possible de télécharger des bibliothèques personnalisées.
Pour les bricoleurs plus expérimentés, les versions payantes Hobby et Hobby+ offrent des fonctionnalités supplémentaires, notamment la possibilité de créer des projets privés, de télécharger des bibliothèques personnalisées et de bénéficier de l’intégration de Visual Studio Code. Enfin, la version Wokwi Pro est adaptée aux projets commerciaux. Elle permet, entre autres, de concevoir plus rapidement un projet et d’exécuter une passerelle IoT privée.
Vérifions notre programme de test :
Et ça marche ! La distance qui apparaît sur l’écran LCD correspond quasiment à celle indiquée par le capteur.
Les simulateurs de cette catégorie peuvent aussi bien être utilisés en ligne qu’hors ligne, pour répondre à tous vos besoins.
Virtual Breadboard est une application du Windows Store. Son interface est conviviale et il est très facile de concevoir vos propres circuits (avec des outils type glisser-déposer). Vous pouvez également télécharger vos sketchs au format HEX depuis l’IDE Arduino, Arduino Create, PlatformIO, Visual Studio, etc.
Cette appli permet notamment de simuler une carte Arduino, des interfaces IO et l’interaction de programme. Par ailleurs, il est possible d’exporter vos projets en format SVG et KiCad. Virtual Breadboard a ceci de particulier qu’elle allie du matériel réel à des composants et circuits virtuels, qu’il est possible de modifier.
Le simulateur est un peu limité; dans la mesure où vous ne pouvez pas créer ou ajouter vos propres pièces et composants ni produire vos propres programmes à partir de l’interface logicielle. Enfin, il n’est pas non plus possible d’exporter les cartes et les schémas pour produire des circuits imprimés.
Pour tester le mètre ruban virtuel, téléchargez le logiciel et installez-le sur votre PC. Vous pouvez ensuite commencer à utiliser la boîte à outils pour ajouter vos composants, en cliquant dessus et en les faisant glisser sur la zone de travail. Par exemple : Toolbox > Integrated circuits > ATMega328p (« Boîte à outils > Circuits intégrés > ATMega328p).
Vous pouvez ensuite charger votre fichier HEX en le faisant simplement glisser, mais vous recevrez le message d’erreur suivant :
Unlicensed components: ATMega328Uno
Consider purchasing a license to enable these components at runtime
Pour vérifier si le programme d’essai fonctionne, vous aurez besoin d’une licence. Ensuite, suivez les indications :
Et ça marche ! La distance qui apparaît sur l’écran LCD correspond à celle indiquée par le capteur.
Si vous ne souhaitez pas souscrire un abonnement, vous pouvez essayer les exemples bêta en ligne.
PICSimLab est un émulateur en temps réel de cartes de développement avec débogueur MPLAB X/AVR-GDB intégré. Il prend en charge certains microcontrôleurs PICSim et Simavr. Pour la programmation des cartes microcontrôleurs, PICSimLab bénéficie d’une intégration avec MPLAB X Arduino IDE.
Vous pouvez concevoir vos propres circuits, charger des fichiers HEX, ou télécharger directement depuis l’IDE Arduino. Il est également possible de simuler les interfaces IO de l’Arduino et l’interaction des programmes. Les utilisateurs plus chevronnés peuvent créer ou ajouter leurs propres pièces et composants, mais une fois de plus, vous ne pourrez pas concevoir de cartes et de schémas et les exporter pour produire des circuits imprimés.
Enfin, pour boucler la boucle, voici quelques simulateurs que vous devrez télécharger et installer. Cette fois-ci, aucune connexion n’est requise !
Flowcode est une plateforme de programmation graphique dotée d’un IDE intégré compatible avec divers contrôleurs, notamment PIC, AVR, ARM, ESP ou Raspberry Pi. En plus de simuler facilement les cartes Arduino, elle offre une large gamme de composants de test et de visualisation d’environnements 3D ou 2D. Il suffit de sélectionner et faire glisser des blocs de commande modifiables dans un organigramme pour tester votre Arduino, sans même changer d’écran ! Regardez cette vidéo YouTube créée par StudentCompanion Electronics pour voir le programme en action.
Flowcode est assez intuitif et convient aussi bien aux utilisateurs qui débutent qu’à ceux qui bénéficient déjà d’une certaine expérience. Le programme se distingue par sa capacité à importer des modèles 3D aux formats MESH, STEP et OBJ, ce qui est idéal pour tester des systèmes électromécaniques dans lesquels les moteurs, les servos et les actionneurs peuvent tous être intégrés dans la représentation numérique.
Une version gratuite de Flowcode est disponible pour les makers et les amateurs, à condition de créer un compte. Elle offre de nombreuses possibilités et ne limite pas la taille des projets. Les versions Pro et Academic, quant à elles, présentent quelques caractéristiques spéciales liées à la correction des erreurs, aux paradigmes et à la documentation. Vous trouverez un comparatif détaillé des différentes versions sur le site de Flowcode. Le programme est proposé en six langues.
Au-delà du guide de démarrage et de la vidéo d’instruction pour les débutants, voici un petit exemple d’utilisation du programme :
SimulIDE est un simulateur de circuit électronique en temps réel qui inclut la simulation PIC, AVR, et Arduino. SimulIDE possède une interface sobre destinée à être rapide, simple et facile à utiliser.
Vous pouvez concevoir vos propres circuits et les programmer avec un éditeur de code et un débogueur pour GcBasic, Arduino, PIC et AVR. SimulIDE dispose également de sa chaîne YouTube qui comprend plus de 45 vidéos.
Comme pour les exemples précédents, vous ne pouvez pas créer vos propres pièces ou composants (mais vous pouvez toujours demander sur le forum ou sur Patreon). Il n’est pas non plus possible de concevoir des cartes et des schémas et de les exporter pour produire des circuits imprimés.
Pour cet exemple, nous utiliserons la version gratuite. Il existe deux méthodes :
Malgré son nom, le simulateur Arduino IO est plutôt destiné à tester des composants et nécessite qu’un Arduino physique soit connecté à l’ordinateur. Lorsque vous exécutez un code ou un exemple sur l’Arduino connecté au PC, vous pouvez interagir avec cet Arduino par le biais des capteurs et des composants du simulateur. Dans la version gratuite, vous devez être connecté via un câble USB et utiliser un port COM, mais dans la version Pro, il est possible d’émuler des ports via le protocole TCP et donc de se connecter via le wifi. Bonne nouvelle, la version Pro est actuellement disponible gratuitement.
Ce programme permet de réaliser un test même si vous n’avez pas accès à tous les composants, ou de vérifier rapidement le comportement de votre code. Tout est bien documenté, et vous trouverez notamment un manuel d’instructions ainsi qu’un guide d’installation qui explique ce dont vous avez besoin pour l’installation de Java. Le programme propose plusieurs exemples à tester, mais aussi des bibliothèques pour utiliser plus facilement les composants. Arduino IO Simulator est par ailleurs un outil très pratique pour l’apprentissage.
Pour utiliser ce programme :
UnoArduSim est un outil pédagogique gratuit qui permet de concevoir vos propres circuits (en cliquant sur Configure > I/O Devices), vos programmes (seulement du texte, ou en chargeant des fichiers Arduino), déboguer du code et simuler les interfaces IO Arduino et l’interaction des programmes.
Notez que vous ne pouvez pas créer ou ajouter vos propres pièces et composants, ni glisser-déposer des composants, ni concevoir des cartes et des schémas, ni en exporter en vue de produire des circuits imprimés.
Vérifions notre programme de test :
Proteus VSM pour Arduino AVR est de loin l’option la plus chère de la liste. Cela dit, en plus de tous les éléments de base, il offre quelques particularités que l’on ne retrouve pas sur d’autres simulateurs. Par exemple, vous aurez accès à des milliers de modèles de périphériques, et vous pourrez glisser et déposer des dizaines de shields (des cartes d’extension) dans vos simulations.
Nous n’avons pas pu tester notre exemple car la version de démonstration professionnelle est assez limitée, mais de nombreuses personnes sur YouTube utilisent le même projet basique de mètre ruban.
Si vous voulez l’essayer, il existe de nombreux exemples de projets :
Il faut se rappeler que les simulateurs n’offriront jamais une expérience aussi fluide et fiable que le vrai hardware. N’attendons pas non plus la lune ! Pour le reste, le simulateur idéal devra présenter les caractéristiques suivantes :
Licence : Le texte de l'article "Les meilleurs simulateurs Arduino (dont 5 en ligne)" écrit par All3DP est publié sous la licence Creative Commons Attribution 4.0 International (CC BY 4.0).