11
votes

Configuration minimale à exécuter Linux incorporé sur un processeur de bras?

J'ai besoin de produire une conception de bras intégrée qui a des exigences pour faire de nombreuses choses qui l'incorporaient Linux. Cependant, la conception est sensible au coût et n'a pas besoin d'énormes quantités de puissance de chevaux. La plupart du temps parleront à des interfaces série. Idéalement, j'aimerais utiliser l'un des bras bas de bout. Quelle est la configuration la plus basse d'un bras que vous avez utilisé avec succès intégré Linux.

EDIT:

L'application nécessite un système de fichiers sur une sorte de périphérique flash et la possibilité d'exécuter des applications pour traiter les données. Certaines des applications pourraient être écrites par d'autres que moi. J'ai également besoin de pouvoir charger de nouvelles applications ou mettre à jour les anciennes applications à l'aide des ports série pour accepter les applications.

Quand j'ai examiné d'autres systèmes d'exploitation intégrés, ils semblent être plus d'une solution de filetage en temps réel que de pouvoir exécuter des applications. Je suis ouvert à ce qui sera jamais fait le travail.


1 commentaires

Pourriez-vous fournir des informations supplémentaires sur l'application? Si vous ne faites vraiment que parler à quelques périphériques série et que vous passez des informations autour et ARM + Linux est probablement excessive de coût et de complexité, surtout si vous ne connaissez pas déjà les chaînes d'outils et la configuration du système d'exploitation sur un tel appareil.


6 Réponses :


2
votes

J'ai eu le succès même sur Arm7TDMI, je ne pense donc pas que vous allez avoir des problèmes. Si vous avez un système à faible exigences, vous pouvez utiliser n'importe quel type d'exécutif en temps réel léger et avoir une meilleure expérience de la meilleure expérience que vous pourrez travailler Linux.


0 commentaires


2
votes

uClinux est conçu spécifiquement pour les objectifs contraints de ressources, mais peut-être plus important encore pour les cibles sans MMU. < / p>

Cependant, vous devez avoir une bonne raison d'utiliser Linux sur un tel système plutôt que d'un petit exécutif en temps réel. La mise en réseau hors de la boîte, les pilotes et les piles de protocoles facilement disponibles pour le matériel complexe et la prise en charge du code existant Legacy ou open source sont quelques-uns. Toutefois, si vous n'avez pas besoin de cela, Linux est toujours important, et vous risquez de gaspiller des ressources sans bénéfice réel. Dans la plupart des cas, vous aurez toujours besoin de SDRAM hors puce et flasher si vous choisissez Linux de toute saveur.

Je ne considérerais pas les E / S série en tant que «matériel complexe», de sorte que vous n'exécutez à un protocole complexe, mais standard, votre brève description ne semble pas justifier l'utilisation de Linux IMO


0 commentaires

2
votes

pendant plusieurs années, j'utilise A GUMSTIX pour faire du prototypage et des tests et j'ai eu de bons résultats avec ce. Je ne sais pas si le processeur qu'ils utilisent (Intel PXA255 sur mon conseil d'administration) est considéré comme peu coûteux, mais toute la ligne Verdex semble assez bon marché pour un appareil adaptable.


0 commentaires

13
votes

Je pense que vous devez peser vos options de coûts ici.

ARM + Linux est une option, mais vous allez payer une surcharge de fonctionnement très élevée pour un ensemble de fonctionnalités simples (à partir de votre description). Vous ne pouvez pas simplement regarder le coût de la puce de bras, mais vous devez également envisager des béliers externes qui seront très probablement nécessaires ainsi que Flash pour obtenir suffisamment d'espace disponible pour exécuter les applications du noyau +.

Remarque: Vous pourrez peut-être éviter les exigences externes avec un noyau très minimal et des applications simples combinées à une UC avec de grandes ressources internes.

Une deuxième option est un microcontrôleur beaucoup plus simple avec un système d'exploitation léger. Cela permettra de réduire vos coûts matériels sur la CPU et vous pouvez probablement exécuter quelque chose comme celui-ci sans RAM externe ni flash (en fonction de l'application de la RAM et de l'espace de programme)

Troisième option: Je ne vois rien dans vos exigences qui exigent que tout système d'exploitation soit utilisé. Les systèmes de fichiers de base sont très simples, par exemple, il existe même des chauffeurs de graisse pour 8 bits. L'interface sur une carte SD nécessite uniquement un port SPI et un circuit externe minimal.

Le bit d'application pourrait être simple ou complexe. J'ai construit des systèmes autour de Pic18 microcontollers qui exécutent un serveur Web et permettent des mises à jour de programme via un écran de téléchargement simple, il stocke simplement le nouveau programme dans une EEPROM ou Flash, redémarre dans un chargeur de démarrage et copie le nouveau programme dans la mémoire du programme interne. Vous pouvez probablement concevoir un moyen de le faire sans le redémarrage via un type d'architecture multitâche coopératif. De toute façon, vous allez les programmeurs écrivant que les applications devront avoir la connaissance de l'architecture et de l'accès aux bibliothèques / pilotes que vous écrivez. Votre meilleur pari pour simplifier cela est de fournir une API aussi simple que possible et d'essayer d'automatiser le processus de construction.

La troisième option sera le "moins chère" en termes de matériel car il y aura très peu de frais générales dans le traitement de vos applications vous permettant de vous éloigner avec une puissance et une mémoire de traitement minimales. Il faudra probablement une autre programmation / architecte de logiciels de votre part, mais ne nécessitera pas presque la recherche que vous devrez entreprendre pour que Linux soit up et à utiliser en plus d'apprendre à écrire les pilotes de périphérique nécessaires sous un paradigme Linux.

Comme toujours, vous devez inclure les coûts de développement logiciels dans le coût de construction de l'appareil. Si vous envisagez de construire 10 000+ de ceux-ci, il est probable que vous amélioriez le contenu du matériel et de mettre plus d'énergie à concevoir une solution logicielle permettant à ce que le matériel réponde aux objectifs de conception. Si votre bâtiment 10 d'entre eux, il est préférable de passer de 15 à 20 dollars supplémentaires sur le matériel s'il peut réduire vos coûts de développement logiciel. Par exemple, un bras avec MMU avec support de noyau Linux complet et pilotes de périphérique disponibles.

Je pense que votre choix de choisir le pire des deux mondes pour le moment, votre paiement supplémentaire pour obtenir un UC, vous pouvez exécuter Linux, mais en le faisant également en sélectionnant une partie qui sera probablement la plus complexe d'obtenir Linux et courir sur, surtout n'ayant pas travaillé avec Linux sur des plates-formes embarquées avant.


0 commentaires

0
votes

Mon routeur DLink Dir-320 exécute Linux à l'intérieur.

Et je connais des handymen, clignotez-le avec un logiciel de connexion USB et de connexion USB, HDDS, USB-Flash et bien plus encore.

C'est prêt à être prêt à utiliser "plate-forme". (Si vous n'avez pas besoin de production de masse). Mais peut-être plus puissant que nécessaire.

En outre, il peut être configuré sans fil via une interface Web même via votre PDA :)


0 commentaires