Forum: Mikrocontroller und Digitale Elektronik Galvanisch getrennter Bus billig ohne Quarz


von Kim S. (Gast)


Lesenswert?

Kennt jemand zufällig einen Buß der sich gut galvanisch trennen läßt, 
nur zwei Leitungen benötigt und beim Atmel ohne Quarz auskommt?
Übertragungsgeschwindigkeit ist sekundär.
SPi fällt aus, da, soweit ich es vertanden habe, für jeden Slave eine 
Leitung mehr dazu kommt.
Wenn ich also mehr als 16 slaves habe komme ich da nicht mehr mit 2 oder 
3 Leitungen aus...
Billig muss es natürlich ebenfalls sein, ich kann nicht 16 CAN Chips + 
galvanische Trennung verbauen.

von Peter D. (peda)


Lesenswert?

Irgendein IR-Code, z.B. RC5

Peter

von Rene S. (Firma: BfEHS) (rschube)


Lesenswert?

Wenn du 16 Slaves und 1 Master hast geht doch RS232 (o.ä.)...

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Kim Schmidt schrieb:
> Kennt jemand zufällig einen Buß
Was ist ein Buß?

> der sich gut galvanisch trennen läßt,
> nur zwei Leitungen benötigt
Nimm RS485 Transciever...

> und beim Atmel ohne Quarz auskommt?
Wie kommt jetzt hier der Quarz ins Spiel? Meinst du wegen der Baudrate 
und deren Abweichung?

> Übertragungsgeschwindigkeit ist sekundär.
Wie sekundär? Reichen 300 Bit/s aus?

Du mußt deine Aufgabe trennen:
1. wie entkopple ich meinen Bus?
2. wie bekomme ich meine Daten da drüber.

Am einfachsten dürfte RS232 (in der unidirektionalen differentiellen 
Zweidrahtversion als RS485 bekannt) sein. Hier bekommst du eine 
Entkopplung günstig an jeden Ecke...

Wenn du das mal hast, dann mußt du nur noch dafür sorgen, dass deine 
RC-Oszillatoren die Übertragung nicht behindern. Und hier empfiehlt sich 
eine Auto-Baud Initialisierung der seriellen Schnitte. Der Master sendet 
ein bestimmtes Zeichen, jeder Slave misst die Bitzeiten aus und trägt 
den passenden Reloadwert ins Baudratenregister ein. Fertig.

von Bankswitch operator from hell (Gast)


Lesenswert?

Kim Schmidt schrieb:
> Kennt jemand zufällig einen Buß der sich gut galvanisch trennen läßt,
> nur zwei Leitungen benötigt und beim Atmel ohne Quarz auskommt?

I2C

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Bankswitch operator from hell schrieb:
>> Kennt jemand zufällig einen Buß der sich gut galvanisch trennen läßt,
> I2C
Das ist garantiert kein Bus, den ich verwenden würde, wenn eine 
galvanische Trennung wegen gößerer Abstände nötig ist. Ursprünglich ist 
dieser Bus für die Kommunikation zwischen ICs ausgelegt worden. Und die 
waren von der Idee her nicht weiter als einen halben Meter voneinander 
entfernt (Fernseher, Autoradio, Videorecorder, usw)...

von ... .. (docean) Benutzerseite


Lesenswert?

Glasfaser geht auch...

einen Kreis rund um alle Sklave und du hast eine super galvanische 
Trennung

von ... (Gast)


Lesenswert?

Kim Schmidt schrieb:
> Kennt jemand zufällig einen Buß

...

... ... schrieb:
> Glasfaser

Ja der gute Glasfaserbus... schon besser als der Kupferbus. Früher hatte 
man sogar einen Alubus hab ich mir sagen lassen.

von Peter D. (peda)


Lesenswert?

IR-Codes brauchen keinen Quarz, da sie auf jedes Bit neu 
synchronisieren.
20% Abweichung sind kein Problem.
Außer Manchester gibt es z.B. Pulslängenmodulation:
4*T = Startbit
2*T = 1-Bit
1*T = 0-Bit
Der Empfänger detektiert dann bei 1,5*T und 3*T.

RS-232 synchronisiert nur alle 10 Bits, muß also 10-mal stabiler sein.


Peter

von Detlev T. (detlevt)


Lesenswert?

Man könnte in Richtung Manchesterkodierung denken, wo Daten und Takt 
gemeinsam auf einer Leitung laufen. Es stellt sich die von dir noch 
unbeantwortete Frage, ob du das Protokoll in Software implementieren 
kannst oder Hardwareunterstützung brauchst, weil der µC zwischendurch 
etwas anderes macht.

von MaWin (Gast)


Lesenswert?

Im Prinzip tut es jeder.

Einzige Bedingung: Die Slaves müssen ihre Taktfrequenz messen und ihre 
delay Verzögerungszeiten auf den Master hin korrigieren.

Das geht z.B. in dem die Salves beim Strtaimpuls der eine definierte 
Länge haben müsste (sagen wir 1msec) ermitteln wie lange der auf ihrer 
Sicht dauert (sagen wir 1200 Zyklen) und ab dann eben wissen, daß 1200 
Zyklen 1 msec entsprechen. Dann hönnen sie jedes serielle Signal 
decodieren.

Ein Beispiel wäre KNX/EIB(Freebus), aber auch normale serielle 
Kommunikation geht (z.B. mit 9600bd) und diese sogar wenn der uC sie mit 
Hardware-UART decodiert. Er muss nur den Teiler nach der Messung der 
Pulslänge entsprechend einstellen, denn nach der Messung weiß der uC, 
mit welcher (relativ zum Master) Frequenz sein RC-Oszillator arbeitet.

Und bis zur nächsten Synchronisation wird sie ausreichend stabil sein.

von Kim S. (Gast)


Lesenswert?

hm, derzeit habe ich halt RS232(UART) nur ohne Qaurz hatte ich es nicht 
stabil hinbekommen.
Auch herschen Temperatur von -20 bis +50° also soll alles draußen 
funktionieren...
Ich werde mir das mal mit der Manchester Kodierung ansehen ob das egth 
wie ich es mir vorstelle...

von Reinhard Kern (Gast)


Lesenswert?

Kim Schmidt schrieb:
> hm, derzeit habe ich halt RS232(UART) nur ohne Qaurz hatte ich es nicht
> stabil hinbekommen.

Natürlich nicht. Aber bei Quarzpreisen von 1..2 Euro ist die Frage ja 
auch völlig lächerlich. Sogar Chinesen benutzen Quarze.

Gruss Reinhard

von MaWin (Gast)


Lesenswert?

> Aber bei Quarzpreisen von 1..2 Euro


WIE teuer ?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sogar in der Conrad-Apotheke gibts die für 35 Cent...
http://www.conrad.de/ce/de/overview/1207073/Quarze-SMD-Bauform

> Sogar Chinesen benutzen Quarze.
Mir scheint, es ist sogar eher so, dass nur die Deutschen auf die 
verwegene Idee kommen, eine V24 Schnitte mit einem RC-Oszillator 
anzufahren... :-/

... und dann verzweifelt nach einem anderen Bussystem suchen, das damit 
klarkommt.

von Kim S. (Gast)


Lesenswert?

oder man versucht einfach die Bauteilanzahl so gering wie möglich zu 
halten , da die Schaltung viel Rüttelei ausgesetzt ist.
Daran mal gedacht?
Oder da die Schaltung nachgebaut werden soll, möglichst wenige Bauteile 
einzuplanen...
Oder den Gesammptreis einer sochen Platine unter 10€ inkl einem kleinen 
Gewinn zu halten...
Oder aus Paltzgründen..
Oder weil die Schaltung schon so exitstiert und man nun nach einem 
Workaround sucht...
Weil die Pins vom Atmega für was anderes benötigt werden und kein PIN 
meh frei sit für ein Quarz...
Vielelicht stelle auch viele eine solche Frage des lehrnens wegen, 
einfach um zu wissen wie man es macht..
oder oder oder
Kann es sein, das manchereiner sich was dabei denkt was er tut.
Die jungens aus dem Roboternetz stellen solchen fragen gar nicht erst.
Sonst hätte ich die Frage doch wohl kaum gestellt, wenn es keinen Grund 
gäbe.

von Lehrmann M. (ubimbo)


Lesenswert?

... schrieb:
> Kim Schmidt schrieb:
>> Kennt jemand zufällig einen Buß
>
> ...
>
> ... ... schrieb:
>> Glasfaser
>
> Ja der gute Glasfaserbus... schon besser als der Kupferbus. Früher hatte
> man sogar einen Alubus hab ich mir sagen lassen.

Also ich finde, dass Glasfaser / LWL inzwischen wirklich eine gute 
Alternative geworden ist.

- gute Isolation etc.
- super Übertragungsraten
- geringe Probleme mit Störeinflüssen gerade in kritischen 
Anwendungsbereichen
- lange Strecken bewältigbar
- Doppeladern 95cent/Meter, Halogenfrei, flammwidrig nach IEC 332-1 für 
Innen
- Doppeladern 1,70€/Meter, metallfreier Nagetierschutz, für direkte 
Erdverlegung geeignet - also für Aussenbereich.

Ich habe so unseren Pool (=Pumpenanlage+Heizung) mit 250m Innenraumkabel 
im Leerrohr im Erdreich verbunden. DIY-Lösung:

UART TX -> LWL-Sendeeinheit -> LWL-Ader I-> LWL-Empang -> PIC UART RX
UART RX <- LWL-Empfangseinheit <- LWL-Ader II <- LWL-Sende <- UART TX

Keine Störung, keine Verluste auch bei hohen Baudraten.

Fazit: auf lange Strecken etwas teurer (aber gute Kabel kosten auch) und 
gerade im Innenraum (HV-Anwendungen, etc.) einfach nur genial.

von Detlev T. (detlevt)


Lesenswert?

LWL ist zwar schön, aber erst einmal nur eine Punkt-zu-Punkt-Verbindung 
und kein Bus. Eine Ring-Topologie könnte damit gehen, wenn man bis auf 
den Master den Eingang immer wieder auf den Ausgang gibt - verodert mit 
dem eigenen Signal.

Das Onewire-Protokoll kann man sich da auch noch einmal ansehen.

von Michael Ohlhorst (Gast)


Lesenswert?

Díe galvanische Trennung lässt sich brauchbar bei I2C mit dem ADuM1250 
realisieren - bekommt man bei elpro für kelines Geld.

V24 ohne Quarz geht mit vielen PIC Controllern mit 1% internem RC 
Oszylator ohne nennenswerte Probleme über den ganzen temperaturbreich.

mfG
Michael_O

von Lehrmann M. (ubimbo)


Lesenswert?

Michael Ohlhorst schrieb:
> V24 ohne Quarz geht mit vielen PIC Controllern mit 1% internem RC
> Oszylator ohne nennenswerte Probleme über den ganzen temperaturbreich.

Kann ich in dieser Form nur bestätigen.

von MaWin (Gast)


Lesenswert?

> Also ich finde, dass Glasfaser / LWL inzwischen
> wirklich eine gute Alternative geworden ist.

Klar, und dann legst du zu jedem Anschluss eine 230V Leitung um die 
Elektronik dort zu versorgen.

Wirklich eine klasse Lösung.

von Olaf (Gast)


Lesenswert?

> Kann ich in dieser Form nur bestätigen.

Das geht bei Renesas auch. Manche Controller haben ein Korrekturbyte vom 
Hersteller in einem Register das man auslesen und in ein anderes 
reinschreiben muss. Ich bin mir jetzt nicht ganz sicher, aber ich glaube 
sogar der Controller hat zwei fuer unterschiedliche Temperaturen.

Aber der OP will den Bereich von -20 bist +50Grad benutzen. Da wuerde 
ich auch einen Quarz verwenden oder aber nach Mawins Vorschlag 
syncronisieren wenn man einen Quarz aus anderen Gruenden nicht verwenden 
kann.

Olaf

von Frank K. (fchk)


Lesenswert?

Kim Schmidt schrieb:
> Kennt jemand zufällig einen Buß der sich gut galvanisch trennen läßt,
> nur zwei Leitungen benötigt und beim Atmel ohne Quarz auskommt?
> Übertragungsgeschwindigkeit ist sekundär.

LIN ist dafür gemacht, dass nur der Master einen einigermaßen genauen 
Takt braucht. Die LIN-Slaves synchronisieren sich auf das SYNC-Feld im 
Header jedes Pakets und messen damit immer die Bitzeiten aus. Und LIN 
ist dafür gemacht, dass es mit einem normalen UART realisiert werden 
kann, auch wenn es AVRs gibt, die die LIN-Spezialitäten in Hardware 
unterstützen. (ATTiny167 automotive zB)

http://www.lin-subbus.org

fchk

von Arc N. (arc)


Lesenswert?

Lothar Miller schrieb:
> Sogar in der Conrad-Apotheke gibts die für 35 Cent...
> http://www.conrad.de/ce/de/overview/1207073/Quarze-SMD-Bauform
>
>> Sogar Chinesen benutzen Quarze.
> Mir scheint, es ist sogar eher so, dass nur die Deutschen auf die
> verwegene Idee kommen, eine V24 Schnitte mit einem RC-Oszillator
> anzufahren... :-/

Es gibt auch vernünftige Controller ala SiLabs C8051F58x, da 
funktioniert das mit dem internen Oszillator von -40 °C bis 125 °C 
(+-0.5% Abweichung)....

> ... und dann verzweifelt nach einem anderen Bussystem suchen, das damit
> klarkommt.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Arc Net schrieb:
> Es gibt auch vernünftige Controller ala SiLabs C8051F58x
Lass bei der vermurksten/veralteten 8051er Architektur doch bitte das 
Wort vernünftig weg...
Oder hat Silabs das Ding soooo grundlegend umgekrempelt?


Kim Schmidt schrieb:
> oder oder oder
> Kann es sein, das manchereiner sich was dabei denkt was er tut.
Oder eben auch nicht... :-/

> Die jungens aus dem Roboternetz stellen solchen fragen gar nicht erst.
> Sonst hätte ich die Frage doch wohl kaum gestellt, wenn es keinen Grund
> gäbe.
Du glaubst nicht, was alles grundlos gefragt wird.... :-/
Was ist jetzt eigentlich dein Grund bei der Geschichte? Denn sonst 
hätte ich die Frage doch wohl kaum gestellt, wenn es keinen Grund 
gäbe...

von Arc N. (arc)


Lesenswert?

Lothar Miller schrieb:
> Arc Net schrieb:
>> Es gibt auch vernünftige Controller ala SiLabs C8051F58x
> Lass bei der vermurksten/veralteten 8051er Architektur doch bitte das
> Wort vernünftig weg...
> Oder hat Silabs das Ding soooo grundlegend umgekrempelt?

8051er werden nicht "besser" ;-) , Crossbar und solche Features wie der 
genaue interne Oszillator (auch die Ports kann man auf Push/Pull 
umschalten) machen die Teile aber für einige Projekte interessant, zumal 
bei den Taktfrequenzen und Speichergrößen auch meistens problemlos mit C 
gearbeitet werden kann.
Wenn's was moderneres sein soll: PIC24FJ64GB004, dem der interne 
Oszillator auch für USB reicht.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Arc Net schrieb:
> ...der interne Oszillator auch für USB reicht.
Mit der passenden SW geht das sogar mit dem RC-Oszillator   ;-)
http://www.sparkfun.com/commerce/product_info.php?products_id=9147

von Arc N. (arc)


Lesenswert?

Lothar Miller schrieb:
> Arc Net schrieb:
>> ...der interne Oszillator auch für USB reicht,
> Mit der passenden SW geht das sogar mit dem RC-Oszillator   ;-)
> http://www.sparkfun.com/commerce/product_info.php?products_id=9147

Der PIC hat auch nur einen RC-Oszillator, zudem ist das AVR-Projekt 
Low-Speed d.h. es sind nur +-1.5% gefordert, keine +-0.25% wie bei 
FullSpeed oder +-0.05% wie bei HiSpeed...

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.