Datenübertragung via Versorgung

Gast #4693556
Lesenswert?

Hallo,

ich möchte Daten auf der Vcc Leitung übertragen - ähnlich 1-wire.
Dazu habe ich mir folgende Schaltung überlegt (nach längerem googlen und 
Forensuche hier) -siehe Anhang-

Randbedingungen:

Bastelprojekt, zum Lernen, im Endausbau vll. 8 Exemplare geplant
Datenrate 8 Bit / s
Länge der (Daten+Vcc)-Leitung 0.5m
Strombedarf des Receivers: max 30mA
Receiverteil (rechts der gestr. Linie) seeehr raumbeschränkt.
Sender ist ein selbst programmierter Atmega - als HW und SW (Protokoll) 
ist hier alles möglich was dieser und ich können.
[hoffe ich habe nix relevantes vergessen]


Erläuterung des Schaltplanes / meiner Idee:

Auf der Sendeseite wird über C1 ein Signal mit Rechteckflanken (vor C1) 
mit der Konstantspannung addiert. Schottkydiode D1 (muss nat. nicht 
BAS40, nur symbolisch) verhindert Rückwirkung.

Auf der Receive-Seite wird der Spike auf der Vcc-Leitung mittels C2 
abgetrennt, das Ergebnis mit passendem Spannungsteiler (R2) dem 
AnalogComparator+ des Attiny zugeführt. Wenn man es hinkriegt, dass dies 
Spannung lange genug > 1.1V wird, kann man direkt mit Vref(Attiny 
intern) vergleichen - das wäre aber nur Sahnehäubchen. Spannungsteiler 
aus 2 Rs an AnComp- geht auch.

Ansonsten liefert die Leitung über Tiefpass R1/C3 Vcc für den Attiny.

angedachte Werte: C1 = ?, C2 = C1, R2 > 10k passend (s.o.), R1 = 47, C1 
= 4u7, D1 Schottky fast egal.

Ich habe über 1-wire gelesen, da wird das so ähnlich gemacht, allerdings 
sind die Receiver dort monolithisch (und btw für mich viel zu groß).
Auch machen die Modelleisenbahner was ähnliches - allerdings mit viel 
mehr Aufwand, da dort richtig Power übertragen werden muss für die Loks.

Meine Fragen an die Gurus (bevor ich ans Steckbrett gehe und eventuell 
Rauch für 2 Euro aufsteigt oder ich Stunden am Oszi hänge...)

- kann das so klappen oder völliger Unsinn?
- zu simpel / zu kompliziert?
- Hat jemand sowas (ähnliches) schon mal gemacht?
- andere bessere Ideen?
- Protokollvorschläge (ich dachte an sowas wie Manchester o. ä. - macht 
das Sinn?)

Bin für jeden Kommentar dankbar.
Angehängte Dateien:
(Firma: matzetronics) #4693566
Lesenswert?

Das grosse Problem bei deiner Idee wird die Schwelle des Komparators 
sein, die schwer einzustellen ist und auch auf jede Störung reagieren 
wird.

Durch die Diode am Sender wird der Pegel sowieso schon stark begrenzt. 
Was gehen könnte, wäre FSK (zwei Frequenzen umtasten) und diese dann per 
ADC am Empfänger auswerten. Dazu gibt es verschiedene Methoden, AVR hat 
Application Notes für den DTMF Empfang, die für dich geeignet wären. 
Auch ein Görtzel Algorithmus könnte klappen.
Gast #4693579
Lesenswert?

danke für den Kommentar.

Du hast sicher recht mit der Komparator-Schwelle. Ich dachte, wenn ich 
R2 hochohmig genug mache, dann kann ich auch die Schwelle hoch genug 
setzen um Störungen los zu werden.

Und bei der geringen Bit-Rate kann ich CRCs mitsenden und/oder in 
höheren Schichten die Datenintegrität sichern - dachte ich.
FSK hatte ich auch schon angedacht - sollte relativ robust sein.

ADC am Empfänger hat den Nachteil, dass dieser (selbst wenn freilaufend) 
relativ langsam ist - ich befürchte, damit kann ich die Spikes leicht 
verpassen.

SW-Idee ist: AnComp -> IntCapture, 9 Absolutzeiten in ne Tabelle, die 
nach Ende des Bursts ausgewertet wird.

DTMF finde ich ne gute Idee. Werde ich ich anschauen.
Görtzel-Alg. kenne ich bis jetzt nicht - werde googlen.
Gast #4693667
Lesenswert?

Nach dem Gleichrichter braucht es keinen großen elko, die kapazität kann 
bei gleicher datenrate kleiner sein als bei aufmodulieren von ac- 
signalen, da die Spannung am Gleichrichter 99% der zeit vcc ist. wenn es 
gerne dirty sein darf, dienen 2 portpins als gleichrichter und einer 
davon als input, dann muss nurnoch ein cap zwischen vcc und gnd.
#4693673
Lesenswert?

Flip schrieb:
> Nach dem Gleichrichter braucht es keinen großen elko, die kapazität kann
> bei gleicher datenrate kleiner sein als bei aufmodulieren von ac-
> signalen, da die Spannung am Gleichrichter 99% der zeit vcc ist.


Da hast du Recht - das hatte ich nicht bedacht.

wenn es
> gerne dirty sein darf, dienen 2 portpins als gleichrichter und einer
> davon als input,


Das verstehe ich nicht. Könntest du das erläutern?


>Dann muss nurnoch ein cap zwischen vcc und gnd.

Das wiederum ist mir klar.

Deine Idee ist mir sympathisch, weil "dirty" für mich okay ist, wenn es 
nur Bauteile=Platz spart.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren