Open Silicium N°
Numéro
3

ARM + FPGA = Robotique

Temporalité
Juillet/Août/Septembre 2011
Image v3
ARM + FPGA = Robotique
Article mis en avant

Résumé

La robotique expérimentale utilise souvent comme actionneurs des servomoteurs de radiocommande en grand nombre. Leur pilotage demande la génération d’autant de signaux temporellement précis et synchrones.Même si les systèmes embarqués disposent aujourd’hui d’une puissance de calcul impressionnante, elle n’est pas suffisante pour produire des signaux de commandes ayant ces caractéristiques à cause des problèmes de latences du système d’exploitation.Seule une alternative matérielle peut y pallier. Le FPGA est la solution disponible aujourd’hui, polyvalente et facilement accessible.Le projet proposé ici permet de commander jusqu’à 32 servomoteurs de radiocommande avec un système embarqué Armadeus : la puissance d’un ARM9 sous GNU/Linux alliée à celle d’un FPGA.

Dans ce numéro...


Et de trois ! Il paraît que la troisième fois, c'est la confirmation. La première est la tentative, la seconde la vérification et la dernière confirme le projet. Eh bien, nous voici avoir confirmé OpenSilicium.
Le lancement du LaunchPad par Ti (Texas Instruments), une plateforme de développement livrée avec connectique et deux microcontrôleurs basse consommation, n'est sans doute pas sans relation avec le succès de l'Arduino. Également open source et open hardware, LaunchPad se distingue par deux points particuliers. Il s'agit de MSP430, et c'est donc un point d'entrée vers une vaste gamme de microcontrôleurs. Le second point est le fait que le kit est furieusement accessible, moins de $5 pièce !
En mai dernier, lors d'une présentation au Google I/O 2011, trois ingénieurs de Google faisaient l'annonce de l'ADK ou Accessory Development Kit. Cette nouvelle fonctionnalité intégrée dans Android 3.1 et backportée dans 2.3.4 sous forme d'add-on permet à tout un chacun de développer des accessoires pouvant interagir avec un périphérique Android à jour. La documentation officielle présente plusieurs kits basés sur Arduino, d'autres cartes à base Atmel AVR ou encore des kits reposant sur Microchip PIC24F. En y regardant de plus près, on s'aperçoit qu'en réalité, il n'est pas vraiment nécessaire de disposer d'un tel kit pour commencer à développer son accessoire.
Cet article constitue un retour d’expérience sur la création d’une application Android, on va ici détailler quelques problèmes rencontrés et comment ils ont été résolus.
Dans la première partie, nous avons conçu un nouveau périphérique basé sur un FPGA : le contrôleur matériel de servomoteurs. Il est l’équivalent d’un circuit électronique capable d’une concurrence vraie tout en ayant la souplesse d’une conception logicielle.Comme tout périphérique, il nécessite un peu de logiciel pour être utilisable sous un système d’exploitation tel que Linux. Tout d’abord, nous aborderons le pilote de périphérique ou driver. Il est au sein du noyau Linux et assure la communication entre le matériel et l’espace utilisateur. Ensuite, nous verrons le serveur de commandes. Il reçoit les ordres d’un client distant et les exécute. Pour clore le sujet loin des arcanes du mode noyau, un exemple de client graphique Qt est présenté, qui permet de faire bouger les servomoteurs avec une souris.
Eh oui, bientôt 7 ans déjà que l’idée du projet Armadeus a germé dans le cerveau de ses concepteurs. Trois modèles de carte et plus de 300 membres autour du monde, voici un petit historique à destination de ceux qui aimeraient en savoir plus.
Il n'est pas évident de trouver un titre court pour l'article qui va suivre. En résumé, nous allons exposer une technique permettant de programmer l'AVR d'une carte Arduino compatible, via le connecteur ISP, mais sans programmeur spécifique. Certaines cartes Arduino disposent d'un convertisseur USB/série FTDI. Celui-ci peut être utilisé comme programmeur ISP et offre ainsi un accès étendu au microcontrôleur Atmel moyennant une simple poignée de connecteurs et un peu de C.
On pourrait dire que la rédaction surf sur une vague d'inquiétudes populaires sur fond d'écologisme gentil, mais en fait il n'en est rien. Il est des domaines qui sont captivants et aptes à susciter l'intérêt de l'evil scientist qui sommeil en chacun de nous, celui du nucléaire en fait partie. Mais contrairement à l'énergie du vide, à la téléportation ou au contrôle mental à distance, celui-ci peut être touché du doigt.
Les microcontrôleurs de la famille AVR, qu'il s'agisse d'ATtiny ou d'ATmega, disposent tous d'une certaine quantité de mémoire EEPROM intégrée. Ceci permet de stocker des informations qui perdureront après une coupure d'alimentation de votre montage. Malheureusement, même si 128 ou 512 octets peuvent être suffisants pour un certain nombre de développements, il arrive souvent que cette limite pose problème. La solution ? Ajouter une EEPROM externe.
Depuis quelque temps déjà, NETGEAR propose, entre autres modèles, le routeur Wifi WNR3500L. Sa particularité est de proposer, en plus du firmware classique, plusieurs systèmes open source en téléchargement. Fédérée autour du site myopenrouter.com, une communauté d'utilisateurs et de développeurs a été créée. Voyons ce que vaut vraiment cette initiative qui a tout d'un coup d'essai.

Magazines précédents

Arduino
Open-Silicium N°2
Arduino

Les derniers articles Premiums

Les derniers articles Premium

Donnez une autre dimension à vos logs avec Vector

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Avoir des informations précises et détaillées sur ce qu’il se passe dans une infrastructure, et sur les applications qu'elle héberge est un enjeu critique pour votre business. Cependant, ça demande du temps, temps qu'on préfère parfois se réserver pour d'autres tâches jugées plus prioritaires. Mais qu'un système plante, qu'une application perde les pédales ou qu'une faille de sécurité soit découverte et c'est la panique à bord ! Alors je vous le demande, qui voudrait rester aveugle quand l'observabilité a tout à vous offrir ?

Du graphisme dans un terminal ? Oui, avec sixel

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

On le voit de plus en plus, les outils en ligne de commandes s'étoffent peu à peu d'éléments graphiques sous la forme d'émojis UTF8. Plus qu'une simple décoration, cette pointe de « graphisme » dans un monde de texte apporte réellement un plus en termes d'expérience utilisateur et véhicule, de façon condensée, des informations utiles. Pour autant, cette façon de sortir du cadre purement textuel d'un terminal n'est en rien une nouveauté. Pour preuve, fin des années 80 DEC introduisait le VT340 supportant des graphismes en couleurs, et cette compatibilité existe toujours...

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Body