J'ai été affecté à un projet pour trouver la meilleure communication possible entre plusieurs cartes PCB qui ont des microcontrôleurs pour une fonction spécifique. J'ai besoin que tous les microcontrôleurs communiquent avec la carte principale qui contient un CPU.
Je dois envoyer des informations de la carte mère aux contrôleurs et recevoir une réponse des contrôleurs. Chaque carte contrôleur est conçue pour un usage spécifique. Je n'ai pas besoin de communiquer entre les microcontrôleurs, mais même si un microcontrôleur ne parvient pas à communiquer, cela n'aura aucun effet sur les autres. Actuellement, j'ai besoin de faire communiquer six microcontrôleurs, mais à l'avenir plus que cela. Je veux éviter plus de connexions câblées entre la carte mère et les autres contrôleurs (cela devrait être moins).
La communication ne doit pas être affectée par la température (250 ° F (120 ° C)) et la pression (élevée). La distance entre la carte mère et le contrôleur final peut être supérieure à un mètre. Quels types de contrôleurs sont les meilleurs? J'ai besoin d'effectuer quelques calculs et lectures de capteur. Chaque carte ayant plus de deux capteurs. Je dois effectuer des calculs sur les lectures du capteur ou envoyer des valeurs directement.
Je suis nouveau dans ce type de projet. J'ai recherché la meilleure communication, mais je suis confuse laquelle est la meilleure. Certaines personnes me proposent d'utiliser la communication CAN. Si je choisis la communication CAN, quel type de microcontrôleurs est le meilleur? J'ai joint un schéma simple à quoi cela ressemblera, comme indiqué ci-dessous.
la source
Réponses:
Si vous choisissez CAN, le "meilleur" micro est celui avec CAN intégré (beaucoup l'ont, Coldfire MCF5225x en est un exemple).
I2C ou RS485 / RS422 sont également de bons choix, en fonction des caractéristiques électriques de la situation (distance, bruit, puissance). Le reste se résume au protocole que vous utilisez pour communiquer - comment adresser les messages, contrôler le flux, éviter les collisions.
Je vous souhaite bonne chance pour trouver un micro qui fonctionnera à 180 ° C, les spécifications automobiles dépassent à 125 ° C et je ne pense pas que même les spécifications militaires s'améliorent considérablement.
Vous devez commencer par la couche 1 (électrique) pour déterminer ce que l'interface physique doit faire, après quoi c'est principalement un problème logiciel sur la façon dont vous parlez. De nos jours, Ethernet pourrait même être une option viable si les micros ont l'espace pour exécuter un système d'exploitation modeste.
la source
Vous pouvez consulter http://www.keil.com/dd/chip/3648.htm LPC 2129 ARM7TDMI-S avec prise en charge CAN. Cela peut être utile si vous corrigez votre interface en tant que CAN. Vous pouvez également avoir des connecteurs et des câbles de qualité industrielle ou MIL en raison de votre contrainte de température. Découvrez les fournisseurs comme les câbles radiants, la connectivité TE, Amphenol, les connecteurs alliés qui fabriquent des produits destinés à un environnement à haute température. Vous pouvez également consulter certains matériaux résistants à la chaleur tels que le téflon qui aident à protéger l'interface de communication.
la source
Pour CAN (et je conseillerais fortement CAN pour votre configuration), je recommande le LPC11C24 , un ARM Cortex-M0. Je pense que c'est le seul qui a déjà l'émetteur-récepteur incorporé, donc il n'y a pas besoin d'une puce supplémentaire pour implémenter la couche physique (comme c'est habituel dans le reste des microcontrôleurs CAN). Il possède également des bibliothèques C intégrées et agréables à utiliser pour la norme CAN et CANOpen.
la source
La famille Freescale S08D ou certains Kinetis bon marché ont CAN et supportent jusqu'à 125ºC. Cependant, les valeurs de température les plus élevées que vous obtenez uniquement sur des puces de valeur sur Freescale (source: recherche paramétrique). Essayez la recherche paramétrique de tous les sites!
la source
CAN est assez compliqué à implémenter dans les logiciels.
Pourquoi ne pas utiliser RS-485 qui est également un standard industriel? Il existe de nombreux émetteurs-récepteurs RS-485 avec un support de température de 125 ° C.
la source