Hallo! Ich will eine Kommunikation zwischen 2 Atmel Mega-8 realisieren. Die Daten, welche hin und her gesendet werden, sind nur 2 Temperaturen und ein paar Bits, nichts mehr. Als Kommunikationsleitung kann ich aber leider nur ein fest verlegtes Kabel nehmen (18x0,75), an dem ich noch 3 Adern frei habe. Die anderen Adern sind mit 230V-Signalen beaufschlagt, aber ohne Frequenzumrichter oder ähnliches. Die Leitung ist ca. 25m lang. Meine Frage ist nun, welche Übertragungsart hier am geeignetesten wäre bei dieser vorhandenen Verkabelung? mfg Wolfgang
Stinknormales RS232 mit 9600 bps sollte funktionieren. fchk
Natürlich ist es äußerst unschön, Netzspannung und Signale in einem Kabel zu führen. Das, was sich hierfür anbietet, ist ein Stromschleifenbetrieb, z.B. mit 0mA/20mA. Hierbei sollte mindestens eine Seite galvanisch entkoppelt werden. Optokoppler eignen sich sehr gut zum Ein- und Auskoppeln von Stromschleifensignalen. Wichtig im Sinne der Störunterdrückung sind gut gewählte Schaltschwellen für die 0/1-Erkennung und die Verwendung von Schmitt-Triggern mit hinreichend großer Hysterese. Auf der Bitübertragungsschicht bietet sich eine asynchrone UART-Kommunikation mit niedriger Bitrate an, bedingt durch die Stromschleife natürlich mit einem darüber aufgesetzten Halbduplex-Protokoll. In den Schichten darüber sollte natürlich eine Fehlererkennung mit CRC o.ä. und ggf. Wiederholung der Übertragung erfolgen.
Danke für Eure Antworten! Ich habe mich entschieden es mit der von Euch vorgeschlagenen asynchronen RS232-Kommunikation mit 9600bps oder ev. sogar 4800bps zu probieren. Zur Kommunikation würde ich einem MAX232 nehmen. Als Entstörung habe ich den 6N139 im Sinn. Meine Frage ist nun wie ich den MAX232 und den 6N139 unter einen Hut bekomme? Die galvanische Trennung sollte ja am letzten Punkt sein, d.h. nach dem MAX232 auf der Seite des RS232-Kabels. Der 6N139 braucht aber die Versorgungsspannung von der RS232-Schnittstelle, welche ja höher liegt als 5V und die vom MAX232 generiert wird. Bezüglich dessen wäre es dann besser den 6N139 vor den MAX232 zu setzen, nur müsste dann der MAX vom anderen Mikrocontroller versorgt werden... Was ist der sinnvollste Aufbau bzw. wie macht Ihr das? mfg Wolfgang
Bei Verwendung von Optokopplern macht es wenig Sinn zuerst auf einen RS232-Pegel zu gehen. Zumal der RS232-Pegel nirgends gebraucht wird (kein PC im System).
Aha... ist logisch... Also kurz gesagt: MAX232 raus und bei jedem µC in der TxD-Leitung einen 6N138 oder 6N139 rein. Korrekt? Zusatz-Frage: Kann ich ohne Bedenken auch einen 6N137 nehmen?
Wolfgang Kogler schrieb: > Also kurz gesagt: MAX232 raus und bei jedem µC in der TxD-Leitung einen > 6N138 oder 6N139 rein. Korrekt? Andreas Schweigstill schrieb: > und die Verwendung von Schmitt-Triggern mit hinreichend > großer Hysterese. Lies mal Deinen eigenen Thread aufmerksamer!
Stimmt. - Jetzt wo Du es sagst, wissen auch die anderen, dass Du das bedacht hast.
Damit will ich sagen, dass so ein Thread nicht nur für Deine persönliche Wissensbereicherung da ist, sondern auch anderen helfen soll, die später auf ihn stoßen. Um möglichen Missverständnissen vorzubeugen, hält man bei solchen Fällen nicht mit seinem Wissen hinterm Berg, sondern schreibt in etwas so etwas: "Aha... ist logisch... Also kurz gesagt: MAX232 raus und bei jedem µC in der TxD-Leitung einen 6N138 oder 6N139 rein. Der Schmitt-Trigger am Eingang des ATmega dürfte reichen. Korrekt? Zusatz-Frage: Kann ich ohne Bedenken auch einen 6N137 nehmen?" Und nochwat: Hysteresis of Schmitt Trigger Inputs: 0.05VCC Also 0,25V bei 5V Versorgung, wenn ich das richtig verstanden habe.
Andreas Schweigstill schrieb: > bedingt durch die Stromschleife natürlich mit einem darüber > aufgesetzten Halbduplex-Protokoll. Warum? Die drei Adern, die er frei hat, reichen doch für eine Stromschleife pro Richtung, also Vollduplex. [Edit: Ach, Mist, das macht natürlich die galvanische Trennung kaputt, falls die wirklich gebraucht wird.] Ich würde die Optokoppler übrigens auf die Empfängerseite setzen, wie bei MIDI.
@ Piefke: 1. Das "Aha ist logisch" bezog sich auf vorherigen Beitrag mit "Bei Verwendung von Optokopplern macht es wenig Sinn zuerst auf einen RS232-Pegel zu gehen. Zumal der RS232-Pegel nirgends gebraucht wird (kein PC im System)." Dieser klärt, das man keinen MAX232 braucht für die Kommunikation zwischen zwei Mikroprozessoren. 2. Sorry dafür, dass ich nicht an den Schmitt-Trigger gedacht habe, weil der Beitrag schon um 10:08 da war, ich diesen gelesen habe, mich schlau gemacht habe im Bezug auf Optokoppler, damit ich nicht alles vorgekaut brauche und ich erst jetzt wieder dazu gekommen bin eine Antwort zu schreiben. Und darum habe ich dabei nun wirklich nicht mehr an den Schmitt-Trigger gedacht. Ich finde das ist ein zu schnelles Vorurteil von dir über mich... Interessant ist aber, dass ich von dir ausser Vorwürfe noch keine Antworten (jedenfalls keine Konkreten) auf meine Fragen erhalten habe... R. Max schrieb: > Ich würde die Optokoppler übrigens auf die Empfängerseite setzen, wie > bei MIDI. Kannst du mir (und den anderen) bitte erklären, was die Vorteile davon sind? mfg Wolfgang
Wolfgang Kogler schrieb: > Ich finde das ist ein zu schnelles Vorurteil von dir über mich... Was habe ich denn über Dich geurteilt? ;-) > Interessant ist aber, dass ich von dir ausser Vorwürfe noch keine > Antworten (jedenfalls keine Konkreten) auf meine Fragen erhalten habe... Ach, ich wollte nur eine Runde motzen, so zum Spaß. :-D Die Fragen sind ja soweit geklärt.
6N138 und 6N139 gibt es bei einem lokalen Elektronikstore leider nicht. Die Alternativen dazu sind 6N136 und 6N137. Hab mir dazu 2 Schaltungen rausgesucht (Bild). Welche von den beiden Schaltungen könnt Ihr mir empfehlen bzw. ist besser geeignet für meinen Einsatzzweck und warum? mfg Wolfgang
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.