mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Verständnisfrage Max485 oder Vorschläge für Kommunikation von 1 Master und 10 Slaves über 50m


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: bastler24 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Zuerst mal zu meinem Problem . Ich habe 10 Sensormodule ,die mir seriell 
die gemessenen Daten übergeben. Diese stehen in verschiedenen Räumen.

Ich würde mir die Daten aber gerne gesammelt an einer Stelle anzeigen 
lassen (PC oder MCU).

Aufgrund der Entfernung scheidet Rs232 aus und außerdem bräuchte ich 
dann auch 10 UARTs , da sich die Sender eventuell überlappen könnten 
(senden willkürlich alle 10 Sekunden)

Ich habe da an ein Bussystem gedacht. Rs485 mit Max485 als Treiber. Ich 
habe jetzt schon einiges gegoogelt ,aber irgendwie werde ich nicht 
schlau darauß.

-Wie werden die Max485 im Slave Modus adressiert? (ich hätte gerne feste 
Adressen- und da bin ich nicht schlau geworden wie die übergeben werden)

-Braucht jeder Slave zusätzlich zu den beiden Busleitungen auch noch ein 
extra Enable Leitung?

-Kann der Max485 serielle Zeichen zwischenpuffern und dann senden,wenn 
ich ihn anspreche? oder brauche ich als Slave eine MCU in Kombination 
mit einem Max485?


Oder habt ihr andere Vorschläge wie man das realisieren könnte? Ich muss 
eigentlich nichts an die Sensormodule senden,ich möchte eigentlich nur 
koordiniert über 50m empfangen und damit sichergehen,dass keine 
kauderwelsch entsteht,und sich keine Daten überlappen können.

Vielen Dank für die Hilfe!


Gruß

Andreas

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bastler24 schrieb:

> Ich würde mir die Daten aber gerne gesammelt an einer Stelle anzeigen
> lassen (PC oder MCU).
Guter Ansatz :-)

> Aufgrund der Entfernung scheidet Rs232 aus und außerdem bräuchte ich
> dann auch 10 UARTs , da sich die Sender eventuell überlappen könnten
> (senden willkürlich alle 10 Sekunden)

Die müssen ja nicht willkürlich senden, oder? Mit moderaten Baudraten 
geht auch RS232, aber optimal ist es nicht, da es eigentlich nichts als 
Bus konzipiert ist.

> Ich habe da an ein Bussystem gedacht. Rs485 mit Max485 als Treiber. Ich
> habe jetzt schon einiges gegoogelt ,aber irgendwie werde ich nicht
> schlau darauß.
>
> -Wie werden die Max485 im Slave Modus adressiert? (ich hätte gerne feste
> Adressen- und da bin ich nicht schlau geworden wie die übergeben werden)
Der MAX485 besitzt weder eine Adresse noch irgeneine sonstige 
Intelligenz, ist ein sturer Pegelumsetzer.
>
> -Braucht jeder Slave zusätzlich zu den beiden Busleitungen auch noch ein
> extra Enable Leitung?
>
nein.

> -Kann der Max485 serielle Zeichen zwischenpuffern und dann senden,wenn
> ich ihn anspreche? oder brauche ich als Slave eine MCU in Kombination
> mit einem Max485?

nein, ja.
>
> Oder habt ihr andere Vorschläge wie man das realisieren könnte? Ich muss
> eigentlich nichts an die Sensormodule senden,ich möchte eigentlich nur
> koordiniert über 50m empfangen und damit sichergehen,dass keine
> kauderwelsch entsteht,und sich keine Daten überlappen können.
Vom Prinzip her wäre CAN dann die ideale Lösung. Jeder kann rumsenden 
wie er will - bis die Busbandbreite erschöpft ist.

Autor: bastler24 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo crazy horse,

Vielen Dank für die Antwort - hat mir sehr geholfen und gezeigt,dass ich 
ich voll auf dem Schlauch stand...

Ich habe mich von den max. 32 Teilnehmer bzw. 128 (...) täuschen lassen 
und gedacht,es müsste dann auch folglich jeder Chip eine Adresse 
bekommen/haben.

Ich brauch also nur alle Treiber an den Bus zu klemmen und dahinter eine 
MCU ,die prüft ob sie nun angesprochen wird oder nicht...

Wenn ich vom Master sende, hören alle Slave-Teilnehmer zwangsläufig mit 
und nur der Angesprochene schreibt dann (- wenn richtig programmiert) 
etwas auf den Bus zurück?!

Soweit richtig?


Gruß Andreas

Autor: Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bastler24 schrieb:
> Soweit richtig?

Jep.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Wenn ich vom Master sende, hören alle Slave-Teilnehmer zwangsläufig mit
>und nur der Angesprochene schreibt dann (- wenn richtig programmiert)
>etwas auf den Bus zurück?!

An welche Controller hast du denn gedacht? AVRs haben einen 
Multiprozessor-Mode. Da hören die Slaves nur die Adresse. Von der 
eigentlichen Kommunikation bekommen die nicht adressierten Slaves nichts 
mit.

MfG Spess

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.