Ich wurde einem Projekt zugewiesen, um die bestmögliche Kommunikation zwischen mehreren Leiterplatten mit Mikrocontrollern für eine bestimmte Funktion zu finden. Ich muss alle Mikrocontroller mit der Hauptplatine kommunizieren lassen, die eine CPU enthält.
Ich muss einige Informationen vom Mainboard an die Controller senden und eine Antwort von den Controllern erhalten. Jede Controller-Karte ist für einen bestimmten Zweck ausgelegt. Ich muss nicht zwischen den Mikrocontrollern kommunizieren, aber selbst wenn ein Mikrocontroller nicht kommuniziert, hat dies keine Auswirkungen auf andere. Derzeit müssen sechs Mikrocontroller kommunizieren, aber in Zukunft mehr. Ich möchte mehr Kabelverbindungen zwischen dem Mainboard und den anderen Controllern vermeiden (es sollte weniger sein).
Die Kommunikation sollte nicht durch Temperatur (120 ° C) und Druck (hoch) beeinflusst werden. Der Abstand zwischen dem Mainboard und dem endgültigen Controller kann mehr als einen Meter betragen. Welche Art von Controllern ist am besten? Ich muss einige Berechnungen und Sensorablesungen durchführen. Jede Karte hat mehr als zwei Sensoren. Ich muss einige Berechnungen für Sensorwerte durchführen oder Werte direkt senden.
Ich bin neu in dieser Art von Projekt. Ich habe nach der besten Kommunikation gesucht, aber ich bin verwirrend, welche am besten ist. Einige Leute schlagen mir vor, CAN-Kommunikation zu verwenden. Wenn ich mich für CAN-Kommunikation entscheide, welche Art von Mikrocontrollern ist am besten? Ich habe ein einfaches Diagramm angehängt, wie es aussehen wird, wie unten gezeigt.
quelle
Antworten:
Wenn Sie sich für CAN entscheiden, ist das "beste" Mikro eines mit integriertem CAN (viele haben dies, Coldfire MCF5225x ist ein Beispiel).
I2C oder RS485 / RS422 sind ebenfalls eine gute Wahl, abhängig von den elektrischen Eigenschaften der Situation (Entfernung, Rauschen, Leistung). Der Rest hängt von dem Protokoll ab, das Sie für die Kommunikation verwenden - wie Sie Nachrichten adressieren, den Fluss steuern und Kollisionen vermeiden.
Ich wünsche Ihnen viel Glück bei der Suche nach einem Mikro, das bei 180 ° C funktioniert. Die Fahrzeugspezifikation liegt bei 125 ° C und ich glaube nicht, dass sich die militärische Spezifikation drastisch verbessert.
Sie müssen mit Schicht 1 (elektrisch) beginnen, um herauszufinden, was die physische Schnittstelle zu tun hat. Danach handelt es sich hauptsächlich um ein Softwareproblem bei der Art und Weise, wie Sie sprechen. Heutzutage ist Ethernet möglicherweise sogar eine praktikable Option, wenn die Mikros über ausreichend Speicherplatz für ein bescheidenes Betriebssystem verfügen.
quelle
Sie können einen Blick auf http://www.keil.com/dd/chip/3648.htm LPC 2129 ARM7TDMI-S mit CAN-Unterstützung werfen. Dies kann hilfreich sein, wenn Sie Ihre Schnittstelle als CAN reparieren. Aufgrund Ihrer Temperaturbeschränkung können Sie auch Steckverbinder und Kabel in Industrie- oder MIL-Qualität verwenden. Schauen Sie sich Anbieter wie Radiant-Kabel, TE-Konnektivität, Amphenol und Allied Connectors an, die Produkte für Hochtemperaturumgebungen herstellen. Sie können auch einige hitzebeständige Materialien wie Teflon prüfen, die zum Schutz der Kommunikationsschnittstelle beitragen.
quelle
Für CAN (und ich würde CAN für Ihr Setup dringend empfehlen) empfehle ich den LPC11C24 , einen ARM Cortex-M0. Ich denke, es ist der einzige, in den der Transceiver bereits integriert ist, sodass kein zusätzlicher Chip erforderlich ist, um die physikalische Schicht zu implementieren (wie es bei den übrigen CAN-Mikrocontrollern üblich ist). Es hat auch einige nette und einfach zu bedienende C-Bibliotheken, die in ROM für CAN- und CANOpen-Standard integriert sind.
quelle
Die Freescale S08D-Familie oder ein billiger Kinetis hat CAN und unterstützt bis zu 125 ° C. Die höchsten Temperaturwerte erhalten Sie jedoch nur bei wertvollen Chips auf Freescale (Quelle: parametrische Suche). Versuchen Sie die parametrische Suche aller Websites!
quelle
CAN ist in der Implementierung in Software ziemlich kompliziert.
Warum nicht RS-485 verwenden, das auch Industriestandard ist? Es gibt viele RS-485-Transceiver mit 125 ° C Temperaturunterstützung.
quelle