Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial Internet of Things >> Embarqué

Qu'est-ce que le RTOS NuttX et pourquoi devriez-vous vous en soucier ?

Il existe une pléthore de systèmes d'exploitation en temps réel (RTOS) disponibles sur Internet (Cliquez ici pour voir une « petite » liste). Cependant, bon nombre de ces offres sont maintenant des projets morts/non maintenus.

Parmi ceux qui restent, la plupart prennent en charge un seul microcontrôleur ou une seule famille de microcontrôleurs. En filtrant encore plus, vous verrez que même ceux qui prennent en charge plusieurs microcontrôleurs n'ont généralement pas toutes les fonctionnalités dont vous avez besoin :USB, Ethernet, Wi-Fi, 6LoWPAN, LCD graphique, carte SD, système de fichiers FAT, bus CAN, RS485, etc.

En comparaison, le NuttX RTOS prend en charge toutes ces fonctionnalités et tout est déjà intégré dans le système. Par exemple, vous n'avez pas besoin de passer votre temps à porter un système de fichiers FAT pour le faire fonctionner sur RTOS, ou FreeModBus, ou Micropython, etc. Tout est déjà inclus dans le package et vous ne payez rien de plus pour cela. Attendez! J'ai dit « Payer ? » En fait, vous n'avez rien à payer car NuttX est un RTOS entièrement gratuit et open source. Il utilise une licence BSD, donc aucune clause spéciale ou exception GPL n'existe.

NuttX est un RTOS POSIX. Vous n'avez pas besoin d'apprendre une nouvelle API pour la programmer. Vous pouvez écrire une application dans un système d'exploitation POSIX comme Linux ou MacOS, la valider, puis la compiler pour l'exécuter sur NuttX. Si vous ne voulez pas créer une application à partir de zéro, vous pouvez récupérer quelques petites bibliothèques Linux et effectuer quelques modifications mineures pour les faire fonctionner sur NuttX.

NuttX possède également de nombreux sous-systèmes qui ressemblent à des sous-systèmes équivalents sous Linux. Par exemple, Virtual File System (VFS), Memory Technology Device (MTD), sous-système audio, système USB avec prise en charge USB Composite, et bien d'autres. Bien que similaires dans leurs caractéristiques, ils présentent une grande différence (ou devrais-je dire une « petite différence » ?), car NuttX est intrinsèquement petit. En fait, vous pouvez exécuter une version de base de NuttX sur des microcontrôleurs à faible coût avec moins de 32 Ko de Flash et moins de 8 Ko de RAM. Bien sûr, si vous souhaitez inclure des fonctionnalités supplémentaires dans votre firmware — USB, Ethernet/WiFi avec IPv6, CAN, etc. — alors il sera préférable d'utiliser un microcontrôleur avec plus de 64 Ko de Flash et au moins 32 Ko de RAM.

Tous ces faits expliquent pourquoi de nombreuses entreprises utilisent déjà NuttX. Avez-vous entendu parler du smartphone Moto Z ? L'utilisateur peut attacher des couvertures intelligentes (appelées Snaps), transformant ainsi leurs téléphones en projecteurs numériques, caméras True Zoom, systèmes audio ou tout ce qu'ils veulent. Seriez-vous surpris d'apprendre que ces Snaps Moto Z fonctionnent avec NuttX ! De plus, Sony produit des enregistreurs audio et d'autres appareils avec NuttX ; Samsung utilise NuttX (ou un fork de celui-ci, puisqu'ils ont changé sa licence de BSD à Apache2) dans leur nouveau TizenRT; 3DRobotics utilise NuttX dans ses drones (ou UAV comme certains préfèrent le dire afin d'éviter toute confusion avec les versions militaires); et beaucoup, beaucoup d'autres entreprises déploient NuttX dans leurs produits.

Il est également important de noter que NuttX n'est en aucun cas un "nouveau venu dans le quartier". La première version de NuttX est sortie il y a plus de 10 ans (février 2007). Le cerveau derrière NuttX est Gregory Nutt (Linus → Linux; Nutt → NuttX; quelle coïncidence !). Greg a passé de nombreuses années à développer des systèmes embarqués pour des entreprises aérospatiales et pour des imprimantes HP. Il a également travaillé au développement de systèmes embarqués Linux pour de nombreuses entreprises (par exemple, AMD, ATI, Motorola) et a été co-fondateur d'une société qui a développé des systèmes embarqués Linux au début des années 2000. Ainsi, lorsque Greg a regardé autour de lui et a remarqué qu'un petit RTOS avec un pedigree POSIX manquait, il a décidé de le faire.

Pourquoi n'avez-vous pas entendu parler de NuttX jusqu'à maintenant ? Eh bien, cela peut être dû au fait que Greg était tellement occupé à travailler sur ce projet qu'il n'a pas eu le temps de le promouvoir. Heureusement, le système devient de plus en plus populaire en raison de son riche ensemble de fonctionnalités. L'ajout récent de 6LowPAN, par exemple, fait de NuttX une option naturelle pour les systèmes IoT complexes où des fonctionnalités de communication sophistiquées sont requises.

Alors qu'est-ce que tu attends? C'est maintenant à votre tour de sortir un lapin du chapeau.

Comment démarrer avec NuttX :

Alan Carvalho de Assis diplômé en informatique et titulaire d'une maîtrise en génie électrique. Alan a commencé à travailler avec des systèmes embarqués en 1998 (PIC MCU) et avec Linux embarqué (uCLinux) en 2001. Il a travaillé au développement de systèmes embarqués Linux chez Freescale (maintenant NXP) et d'autres sociétés locales au Brésil. En 2010, il a découvert NuttX RTOS en lisant un article dans le Linux Journal et a commencé à l'utiliser pour développer des projets pour de nombreuses entreprises différentes. Alan tient à remercier Rich Pennington et Marcelo Barros pour l'avoir aidé à réviser cet article.


Embarqué

  1. L'usine numérique :qu'est-ce que c'est et pourquoi c'est important
  2. IoT dans les soins de santé :ce que vous devez savoir
  3. Pourquoi l'industrie 4.0 est importante et pourquoi les fabricants devraient s'en soucier
  4. Que sont les limiteurs de couple et pourquoi en avez-vous besoin
  5. Changement d'équipement dans l'industrie ferroviaire et ce que vous devez savoir
  6. Pourquoi surveiller les compétences des travailleurs ?
  7. Pourquoi devriez-vous vous soucier de l'anti-fatigue et que faire à ce sujet
  8. Qu'est-ce qu'une machine de ferronnerie et pourquoi en avez-vous besoin ?
  9. Le soudage de l'acier HY et les précautions à prendre