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


von bastler24 (Gast)


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

von crazy horse (Gast)


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.

von bastler24 (Gast)


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

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


Lesenswert?

bastler24 schrieb:
> Soweit richtig?

Jep.

von spess53 (Gast)


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

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
Noch kein Account? Hier anmelden.