Éducation Société Événements NI Developer Zone Support Solutions Produits et Services Contacter NI MyNI

Type de document: Tutorial
Supporté par NI: oui
Date de publication: 19 févr. 2008


Commentaires


Oui Non

Catégories connexes

Technologie

Liens connexes - Developer Zone

Liens connexes - Products and Services

Construire ou acheter : comprendre le coût total de la conception de systèmes embarqués

4 évaluations | 3.00 sur 5
Lire en | Imprimer

Introduction

Au moment de développer un périphérique embarqué, il est essentiel de choisir la bonne technologie à mettre en œuvre comme contrôleur primaire du système. À part considérer les architectures du processeur, les caractéristiques du système d'exploitation et d'autres éléments, vous devez choisir la partie du système à concevoir et la partie à acheter. En concevant et en construisant un contrôleur personnalisé, vous pouvez complètement personnaliser la solution finale et optimiser les coûts, mais sachez que tout changement ou oubli dans les spécifications de la conception risque d’occasionner des retards coûteux et pénibles. Sinon, l’utilisation d’une plate-forme standard augmente le coût des produits vendus (COGS), et vous risquez de payer pour des fonctionnalités inutiles à votre conception. Néanmoins, les systèmes standards offrent habituellement un cycle de validation plus rapide, et par conséquent, un temps de mise sur le marché plus court. Ce tutorial présente deux façons de développer un nouveau contrôleur : selon que vous le construisiez vous-même ou que vous l’achetiez, et traite des risques techniques et financiers inhérents aux deux options.

Conception embarquée personnalisée : l'option "construction"

Avant le développement, vous devez choisir une technologie pour le processeur, comme les cinq listées ci-dessous, pour le contrôleur primaire du système.

Microcontrôleur: les microcontrôleurs sont d'un très bon rapport qualité/prix et offrent généralement une solution intégrée sur un seul et unique circuit, dont des périphériques d’E/S. Ils ont tendance à contenir de très petites quantités de mémoire sur carte, gage de très peu de complexité et d’évolutivité. En outre, les vitesses d’horloge sont de l’ordre de dixièmes de mégahertz, et, empêchent, par conséquent, d’obtenir des boucles de contrôle performantes.

Microprocesseur: avec un microprocesseur, les vitesses d’horloge sont plus élevées et il y a en général une interface mémoire externe, de sorte que les performances et l'évolutivité ne posent habituellement pas de problème. Mais il se peut que vos applications aient besoin d’un développement de drivers complexes parce qu’il n’y a pas habituellement de périphériques analogiques embarqués/sur carte. En outre, les techniques de conditionnement haute densité comme un boîtier à billes (BGA), peuvent nécessiter des processus de fabrication plus sophistiqués.

DSP (processeur de signaux numériques): un DSP est un microprocesseur spécialisé doté d'instructions supplémentaires pour optimiser certaines fonctions mathématiques comme la multiplication et le cumul. Les DSP sont très utiles pour les applications intensives en calculs, mais vous avez habituellement besoin de connaissances spécifiques pour profiter des caractéristiques logicielles.

ASIC (circuit intégré spécifique à l'application): un circuit ASIC est conçu pour une application spécifique plutôt que pour des capacités de programmation généraliste. Les ASIC sont communément considérés comme une technologie supérieure en termes de considérations techniques comme la consommation électrique et le coût des produits. Pourtant, le développement et le processus de fabrication extrêmement coûteux des ASIC découragent habituellement tous les développeurs sauf ceux qui possèdent des produits de plus grande envergure.

FPGA (réseau de portes programmable): les FPGA offrent un compromis intéressant entre la conception personnalisée d'un ASIC et les technologies standards. Ils offrent un niveau élevé de spécialisation, mais sont suffisamment reconfigurables pour que vous ne souffriez pas des coûts de fabrication élevés qui gênent leur développement. Bien que vous puissiez utiliser les FPGA pour toute une variété d’applications de traitement, la conception complexe de FPGA est peu répandue, parce que le paradigme de programmation VHDL est étranger à la plupart des développeurs de logiciels embarqués, qui sont plus habitués à la programmation séquentielle en C.

Dans bon nombre de cas, une technologie de processeur simple ne satisfait pas les besoins d’une application. Par conséquent, les architectures hybrides sont devenues de plus en plus populaires ces dernières années. L’une de ces architectures est présentée à la Figure n°1. Le processeur temps réel gère les communications réseau et une interface utilisateur, tandis que le FPGA gère l’interfaçage aux éléments d’E/S et aux tâches de contrôle haute vitesse. Cette architecture hybride se généralise dans la conception embarquée de systèmes.


[+] Agrandir l'image

 

Figure n°1. Dans cette architecture hybride, de plus en plus courante dans la conception embarquée de systèmes, un processeur temps réel gère les communications réseau et une interface utilisateur, pendant que le FPGA gère l’interfaçage aux éléments d’E/S et aux tâches de contrôle haute vitesse.

Une fois la technologie du processeur choisie, vous devez développer les circuits d'E/S. Si l’un des signaux du système embarqué est analogique, vous avez besoin de convertisseurs analogiques/numériques (C A/N), de convertisseurs numériques/analogiques (C N/A) et des drivers logiciels correspondants. Nombreux sont les ouvrages qui traitent de la complexité liée à une bonne conception des circuits analogiques. Par conséquent, ce tutorial met l’accent sur le contrôleur embarqué du système bien que bon nombre de concepts s’appliquent au choix des composants d’E/S également.

Système embarqué standard : l’option “achat” : Une autre alternative est d’acheter une plate-forme standard pour développer le contrôleur. Bien que vous payiez habituellement beaucoup plus que le simple coût des éléments de la carte, vous pouvez vous attendre à arriver sur le marché bien plus rapidement. En outre, ces systèmes présentent des voies d’expansion plus douces, ce qui rend l’inévitable dérive des fonctionnalités après le premier prototype bien moins pénible. Comme avec les technologies de processeur, il existe plusieurs technologies de déploiement à considérer pour votre système embarqué.

Systèmes embarqués nus: disponibles dans plusieurs facteurs de forme différents (Mini-ITX, PC/104, etc.), les systèmes embarqués nus ont tendance à représenter la solution la plus économique pour un déploiement standard. Ces systèmes présentent aussi toute une variété d’architectures de processeurs possibles, un petit ensemble de systèmes d’exploitation ainsi qu’un support des E/S. Pourtant, les outils de développement logiciel pour un tel système ne sont presque jamais intégrés, et ces systèmes ont habituellement besoin d’être vérifiés par rapport aux normes réglementaires, comme les conformités EMI et CE.

Système embarqués conditionnés: en plus de présenter les mêmes éléments que les systèmes embarqués nus, les systèmes embarqués conditionnés offrent des caractéristiques de résistance aux chocs, aux vibrations, une large gamme de température de fonctionnement, ainsi que des certifications environnementales. Ces systèmes sont généralement plus coûteux, mais ils intègrent souvent des outils de développement logiciel et un ensemble plus complet d’options d’E/S.

PC industriels: avec une technologie facilement disponible, les PC industriels offrent les options les plus complètes pour les outils de développement et les caractéristiques d’E/S. Ils offrent bon nombre des mêmes avantages en termes de spécifications et de certifications que les autres systèmes embarqués conditionnés, mais cette capacité a un prix. Ces systèmes coûtent nettement plus cher que les deux autres options.

 


[+] Agrandir l'image

Figure n°2. Le NI CompactRIO est un exemple de système embarqué conditionné.

Le système embarqué conditionné NI CompactRIO s'apparente au diagramme de la Figure n°1. Il utilise un processeur Freescale PowerPC avec le système d'exploitation temps réel VxWorks. Le PowerPC s'interface à un FPGA Xilinx via un bus PCI interne. En outre, le FPGA est directement relié aux connecteurs pour toute une variété de modules d'E/S analogiques et numériques, que vous pouvez connecter aux capteurs, aux actionneurs et aux bus de communication. Si vous avez besoin d’E/S très personnalisées, vous pouvez concevoir votre propre module personnalisé. La Figure n°2 présente le système embarqué conditionné NI CompactRIO, et la Figure n°3 présente une vue du diagramme du système embarqué.

Figure n°3. Diagramme du système CompactRIO

 

Prendre la bonne décision : les coûts cachés de la conception embarquée

Très souvent, les caractéristiques techniques ne sont pas le facteur déterminant au moment de choisir entre la construction et l'achat. En fait, cela revient à une simple analyse financière. Si le retour sur investissement du coût technique impliqué dans le développement du produit est justifié par des profits éventuels, alors, vous avez pris la bonne décision.

Pour prendre une décision réfléchie, vous devez estimer avec précision le coût de la construction de votre propre solution personnalisée. Ce n’est jamais aussi simple qu’il y paraît. Si vous ajoutez le coût des éléments du matériel au temps de développement matériel et logiciel, vous êtes loin d’envisager l’investissement dans sa totalité. Il faut que vous considériez d'autres coûts cachés avant d'estimer avec précision le vrai coût du travail.

Par exemple, les coûts de fabrication et des stocks représentent habituellement entre 20 et 30 % du COGS (coût des produits vendus) du système. En outre, en moyenne, environ 30 % du temps de développement logiciel total s’articule autour du système d’exploitation, du driver et du développement du middleware, bien qu’en choisissant une plate-forme conditionnée avec du matériel et du logiciel intégrés, vous pouvez vous dispenser de l’adaptation de ce matériel. En outre, il faut que vous preniez en compte d'autres coûts cachés comme des règlementations environnementales, la validation, des composants en fin de vie et des changements de spécification de dernière minute qui obligent à des changements de conception et à des reconceptions complètes. Enfin, le coût le moins tangible mais potentiellement le plus conséquent est le coût perdu du temps technique passé à concevoir cet aspect du système plutôt que sur d’autres projets générant un chiffre d’affaires.

 

Équation n°1. Vous pouvez utiliser une simple équation pour calculer le seuil de rentabilité de toute conception personnalisée.

Conclusion

Alors, la morale de l’histoire est-elle de ne jamais développer une carte personnalisée ? Sûrement pas. Lorsque vous estimez que des technologies sont essentielles au succès de vos produits, réservez vos efforts pour les systèmes qui vont atteindre des volumes très importants, nécessiter un facteur de forme extrêmement spécialisé ou avoir des besoins techniques très exigeants (comme une consommation électrique ultrafaible). Dans des domaines où vous pouvez utiliser une technologie standard, laissez vos fournisseurs s’occuper de la logistique et des coûts cachés pour que vous puissiez vous concentrer sur le choix de la technologie en vue d’améliorer votre produit.

En savoir plus sur NI CompactRIO Bluebonnet.

4 évaluations | 3.00 sur 5
Lire en | Imprimer

Législation
Ce tutorial a été développé par National Instruments. Bien qu'un support technique puisse être fourni pour ce tutorial, il n'a pas été complètement testé ni vérifié, et NI ne garantit pas sa qualité, ni qu'il continuera à être supporté pour les nouvelles versions des produits et drivers qui y sont rattachés. CE TUTORIAL EST FOURNI "EN L'ÉTAT" SANS GARANTIE D'AUCUNE SORTE, ET EST SUJET À CERTAINES RESTRICTIONS COMME PLUS SPÉCIFIQUEMENT DÉTERMINÉES DANS LES CONDITIONS D'UTILISATION DE NI.COM (http://ni.com/legal/termsofuse/unitedstates/us/).