Dans un monde qui va sans cesse plus vite, toujours plus loin, les industries comme les particuliers ont besoin de solutions innovantes aussi simples que pratiques. Dans le monde de l’informatique, tous les professionnels courent après le « Time to market » : c’est-à-dire après tout ce qui peut combiner gain de temps et gain d’argent. L’enjeu pour les développeurs est de programmer plus vite pour une mise sur le marché rapide afin d’avoir la possibilité de profiter d’un avantage concurrentiel, tout en étant synchrone avec les nouvelles évolutions technologiques. C’est partie de ce constat que la société AIM a développé et mis sur le marché son nouvel Environnement de Développement Intégré pour microcontrôleurs STM32 embarquables sur de nombreux objets du quotidien : Devtools.
Programmer facilement et rapidement des applications pour les microcontrôleurs STM32 de STMicroelectronics devient une option accessible au plus grand nombre. Diminuer les coûts de développement grâce à des services dédiés spécifiquement à cette gamme de microcontrôleurs en est une seconde. La société grenobloise AIM présente le résultat de ses derniers travaux de recherche : DevTools, un tout nouvel outil qui permet d’accélérer considérablement la programmation des applications embarquées, des interfaces homme-machine ainsi que des systèmes distribués.
L’idée à l’origine de DevTools germe en 2010, lors de travaux effectués dans le cadre d’un projet collaboratif avec la société STMicroelectronics menés au sein du pôle de compétitivité grenoblois Minalogic, financé par le fonds unique interministériel qui soutient la recherche appliquée et les projets de R&D collaboratifs.
Au cours de 3 années de recherches et d’études, la société AIM s’aperçoit que les besoins en programmation sont colossaux dans la majeure partie des projets de R&D et qu’aucune solution de programmation n’est aussi rapide et efficace qu’il le faudrait. La problématique de répondre aux besoins de l’utilisateur en terme d’ergonomie et d’efficacité de programmation est déjà un sujet qui interpelle AIM, travaillant déjà à cet instant sur Agilia, un outil de développement graphique. Elle décide alors de repenser les outils classiques de développement pour y associer sa solution de programmation graphique plus intuitive. DevTools voit peu à peu le jour.
Le projet est clair : DevTools a pour ambition de faciliter la vie des développeurs en leur apportant un ensemble d’outils de programmation efficaces et faciles à utiliser. Il n’est pas normal que ces derniers perdent des heures de leur précieux temps à scruter des lignes de codes interminables et à résoudre des bugs à répétition. Grâce à DevTools et à ses outils performants, il est possible de gagner en efficacité et de réduire les temps d’introduction de ses nouveaux programmes. Le développeur dispose d’assistants intégrés, de nouvelles méthodes de programmation graphique, de tutoriels, d’aides en ligne, d’exemples...
Programmer 10 fois plus vite avec la programmation graphique Aujourd’hui pour un design à base de microcontrôleur, le choix du composant est certes important en termes de fonctionnalités, mais la composante coût de développement devient un critère tout aussi essentiel. Les microcontrôleurs actuels offrent des capacités de mémoire importantes et la mise au point de plusieurs centaines de Koctets de logiciels se chiffrent très rapidement. En divisant par 10 les temps de développement, DevTools apporte une nouvelle dynamique : un développeur peut réaliser 10 projets, là où il n’en développait qu’un !
Grâce aux interfaces intuitives de DevTools, les utilisateurs peuvent configurer leur matériel, choisir leur système embarqué et programmer leur application en quelques clics. Une simplicité d’utilisation qui garde et garantit un haut niveau de fonctionnalités. Pour fonctionner, DevTools se compose de deux suites logicielles, toutes deux développées par AIM : Agilia et μOne. μOne est un plugin d’Eclipse, un environnement de développement universel. Agilia est un outil de programmation graphique dont les fonctionnalités complètent celles de μOne.
La programmation graphique est un facteur de gain de temps important. C’est la démarche de programmation en elle-même qui change. Le développeur crée son programme non pas en écrivant des lignes de codes mais en glissant et en posant des blocs fonctionnels sur une page blanche où il vient glisser et déposer des blocs fonctionnels, dont le code est déjà écrit, et les connecte comme dans un puzzle. L’assemblage final permet de créer l’application embarquée qu’il est ensuite possible de tester sur un kit.
DevTools est par ailleurs fourni gratuitement avec chaque kit proposé par AIM. Les AIM-kits, des solutions pour "maquetter" rapidement La société AIM propose à tous l’achat de ses AIM-kits, un ensemble de cartes d’évaluation développées par la société elle-même à base de microcontrôleur STM32 type F0, F1, F2, F4 ou L1. Le développeur, grâce à son AIM-kit et à DevTools, dispose d’assistants, de tutoriels, d’aides en ligne, de vidéos et d’exemples de tous les outils dont il peut avoir besoin. Chaque AIM-kit intègre la licence DevTools et permet de créer rapidement une interface utilisateur sur son écran tactile. Tous les AIM-kits sont équipés d’un connecteur mini-USB pour alimenter la carte et communiquer en mode debug avec l’AIM-Link embarqué. Des cartes d’extension pour AIM-Kits sont également proposées.
La carte d’évaluation AIM-Kit1-F103 offre un panel d’entrées sorties permettant la réalisation d’automatismes simples à partir des deux suites logicielles μOne et Agilia. Le coeur de la carte est basé sur un micro contrôleur de la famille STM32 ; la carte est accompagnée d’entrées/sorties diverses. Les ports d’extensions sur la carte permettent l’accès aux différentes GPIO du micro contrôleur, facilitant l’ajout de cartes d’extension et de fonctionnalités supplémentaires. Un document technique présente la carte du point de vue électronique en fournissant les différentes informations nécessaires à son utilisation. La carte d’évaluation comprend :
Boutons poussoirs : la carte possède quatre boutons poussoirs pour pouvoir simuler des entrées TOR, et un cinquième pour permettre de faire un reset du microcontrôleur.
LED : la carte possède quatre LED, afin de simuler quatre sorties TOR et permettre un retour visuel.
Potentiomètre : la carte possède un potentiomètre pour simuler des entrées ANA.
Buzzer : la carte possède un buzzer afin d’avoir un retour sonore.
Relais : la carte possède un relais à deux pôles afin de piloter une sortie TOR.
Horodateur : la carte possède un horodateur, qui est embarqué dans le microcontrôleur. Une pile de sauvegarde des données doit y être connectée (réf. CR-1220/VCN).
Communication série : la carte intègre dans ses fonctionnalités deux types de Bus série, la liaison CAN et la liaison RS232. La carte devient ainsi communicante avec d’autres systèmes.
Ecran tactile : la carte possède un écran tactile de taille 2,4 pouces ainsi que la gestion de la dalle tactile pour disposer d’une interface homme-machine.
AIMLink : la carte possède un AIMLink, celui-ci est un debugger, il permet de programmer le microcontrôleur et sert à la mise au point.
Ports d’extensions : la carte possède deux connecteurs de chaque côté de celle-ci, afin de pouvoir y connecter une ou deux cartes d’extension.