FHEM Forum

Verschiedenes => Bastelecke => Thema gestartet von: habeIchVergessen am 12 September 2016, 09:45:21

Titel: Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 12 September 2016, 09:45:21
ich suche Unterstützung für die elektro-technische Umsetzung bei der Einbindung einer Gegensprechanlage.

Mittels Oszi habe ich auf dem Audiokanal ein Signal gesehen, das sehr nach Manchester-Codierung aussieht.

techn. Details:

Audio:
- Ruhepegel 4,7 V
- Manchester-Pulse mit Spannung 0V (Low) - 4,7/6,3V (High); 2 ms Pulslänge; 32 bit
- Audio-Kanal offen 5,3V +/- Pegel Audio-Signal

Video:
- 1VPP, 75 Ohm

Audio und Video habe ich schon über einen alten Video-Rekorder an ein TV weitergereicht.

Was will ich:

Stufe 1 (die drei Fragezeichen)
mittels digitalen Eingang das Manchester-Signal dekodieren (Pegel auf 3,3V beschränken, etc).
Audio und Video streamen

Stufe 2
selber Signale auf den Audio-Kanal modelieren

Anhänge:
schematische Darstellung der Schaltung
Pegel Audio-Kanal (wie oben beschrieben)
Manchester-Signal für die drei möglichen Außenstationen
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: juergs am 12 September 2016, 19:24:32
zB. damit:
http://www.diyaudio.com/forums/everything-else/127882-how-protect-sound-card-during-amp-measurements.html (http://www.diyaudio.com/forums/everything-else/127882-how-protect-sound-card-during-amp-measurements.html)
http://www.schaltungen.at/publishedFiles/A2EC722B534DE2F1EF43C5DEE90356DD/PC-Messtechnik-Handbuch12.PC-EingangsspannungsteilerSoundkartepr231.pdf?t=1473701341121 (http://www.schaltungen.at/publishedFiles/A2EC722B534DE2F1EF43C5DEE90356DD/PC-Messtechnik-Handbuch12.PC-EingangsspannungsteilerSoundkartepr231.pdf?t=1473701341121)
und Audacity, wie in diesem Beispiel:
https://forum.fhem.de/index.php/topic,57361.msg487881.html#msg487881 (https://forum.fhem.de/index.php/topic,57361.msg487881.html#msg487881)

http://www.atmel.com/images/atmel-9164-manchester-coding-basics_application-note.pdf (http://www.atmel.com/images/atmel-9164-manchester-coding-basics_application-note.pdf)
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 12 September 2016, 21:33:40
ich möchte keine Sound-Karte als Oszi nutzen. Vielmehr brauche ich Vorschläge, wie das beschriebene in Hardware gegossen werden kann.
- Manchester an digitalen gpio lesen
- Audio & Video capturen
- ggf. eigene Manchester-Signale senden

Meine Kenntnisse in E-Technik sind nicht besonders umfangreich.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 14 September 2016, 11:48:41
barsch? nein.

wie schon erwähnt, habe ich von E-Technik so gut wie keine Ahnung. Respektive bin ich mir über die Auswirkungen nicht im Klaren.

z.B. ein einfacher Spannungsteiler mit 2 Widerständen.
Oder eine Z-Diode + LevelShifter.

Am Ende bleiben bei mir ungeklärte Fragen bzgl.
- Dimensionierung (Widerstände)

und allgemeinere Fragen wie:
- Gesamtbelastung der Schaltung
- Pro und Kontra der Einzelnlösungen

Das würde ich mir gern (Motto Wissenstransfer) von Wissenden (im Vergleich zu mir) aufzeigen lassen.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: Omega-5 am 15 September 2016, 12:40:40
Zitat von: habeIchVergessen am 14 September 2016, 11:48:41

z.B. ein einfacher Spannungsteiler mit 2 Widerständen.
Oder eine Z-Diode + LevelShifter.

Mein Vorschlag:

Widerstand Wert (unkritisch) zwischen 1k und 10k zwischen Audio-Kanal und GPIO. Zenerdiode 3.3V von GPIO (Kathode) nach GND (Anode). Eine Z-Diode mit 200mW reicht aus.
Z.B. Z-Diode MM3Z3V3B Gehäuseart (Halbleiter) SOD-323F Fairchild Semiconductor Zener-Spannung 3.3 V Leistung max. (Ptot) 200
Einen Level Shifter brauchst du hierfür nicht.

Gruß Friedrich
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 15 September 2016, 21:27:38
würde dann so aussehen?
Wie verhält sich die Leistungsaufnahme?
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: Omega-5 am 15 September 2016, 23:34:07
Zitat von: habeIchVergessen am 15 September 2016, 21:27:38
würde dann so aussehen?
Wie verhält sich die Leistungsaufnahme?

Ja.
Leistungsaufname: P=U²/R  --> (6,3-3,3)² / 1000 = 9mW https://de.wikipedia.org/wiki/Elektrische_Leistung (https://de.wikipedia.org/wiki/Elektrische_Leistung)

Gruß Friedrich

Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 16 September 2016, 12:45:55
Werde mal die Teile besorgen und messen.
Hast du noch einen Vorschlag, wie ich ein Signal auf den Audio-Kanal bekomme? Dazu müsste Audio auf 0V gehen. 2-ter gpio schaltet ein Relais wäre meine laienhafte Vorstellung.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 25 September 2016, 14:37:11
an einem 5V USB-Netzteil (DC) verhält sich die Schaltung wie erwartet.
Leider ist das an der Klingelanlage nicht so. Hier fällt die gemessene Spannung (DC) auf ca. 3,9V. Die Funktionalität dieser ist nicht mehr gegeben.
Die einzige Erklärung, die mir einfällt, ist die, dass es Wechselstrom sein muss.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 27 September 2016, 18:38:50
mit 10k ist die Funktionalität der Klingelanlage weiter geben.
nur die Pegel entsprechen nicht der Erwartung.

2,4V sind für den gpio eher am unteren Limit für ein High.
die 4,7V vom Ruhepegel werden auch ordentlich eingedampft (Spannungsabfall an der Z-Diode?).

wäre ein iCoppler eine Alternative? dann müsste nur der Eingang unter 5,5V gehalten werden. Ausgang könnte gleich die 3,3V vom gpio nutzen.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 29 September 2016, 21:55:18
neue Idee mit Transistor. Die Pegel sehen richtig gut aus. Steigende Flanken auch. Nur die fallenden sind etwas verschliffen.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 30 September 2016, 15:28:06
Ein Widerstand parallel zur Z-Diode löst das Problem mit den fallenden Flanken (akt. auch 1,8k).
Vorwiderstand Basis habe ich auf 47k reduziert.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: Omega-5 am 30 September 2016, 15:46:55
Zitat von: habeIchVergessen am 30 September 2016, 15:28:06
Ein Widerstand parallel zur Z-Diode löst das Problem mit den fallenden Flanken (akt. auch 1,8k).
Vorwiderstand Basis habe ich auf 47k reduziert.

Gratuliere,
das sieht doch richtig gut aus.  :)

Zitatwie schon erwähnt, habe ich von E-Technik so gut wie keine Ahnung.
Na na, nicht flunkern.  ;)

Mit einem Transistor könnte ja dann auch das Senden klappen, hängt vom Innenwiderstand der Quelle ab ob du die einfach kurzschließen kannst, ohne sie zu zerstören oder der Strom für den Transistor zu hoch wird.

Gruß Friedrich
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 30 September 2016, 16:31:35
Zitat von: Omega-5 am 30 September 2016, 15:46:55
Na na, nicht flunkern.

so sehr ich es für mich proklamieren möchte, die Anerkennung gebürt einem anderen.
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 01 Oktober 2016, 12:34:19
es ist kein Manchester  :'( da kein long low zu sehen ist.

dafür kann ein arduino nano (SIGNALduino-Sketch) folgendes empfangen:

ein

MU;P0=-32001;P1=2996;P2=-1012;P3=2010;P4=1009;D=012324242424242424242323232323232323242423232324232423232424242324;CP=4;
MU;P0=-32001;P1=2980;P2=-1013;P3=2010;P4=1007;D=012324242424242424242323232323232323242423232324232423232424242324;CP=4;
MU;P0=-32001;P1=3000;P2=-1013;P3=2009;P4=1008;D=012324242424242424242323232323232324242424232324232323232324242324;CP=4;


aus

MU;P0=-32001;P1=2996;P2=-1014;P3=2009;P4=1007;D=012324242424242424242323232323232324242424232323242323232324242423;CP=4;
Titel: Antw:Manchester aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 02 Oktober 2016, 22:05:50
Zitat von: Omega-5 am 30 September 2016, 15:46:55
Mit einem Transistor könnte ja dann auch das Senden klappen, hängt vom Innenwiderstand der Quelle ab ob du die einfach kurzschließen kannst, ohne sie zu zerstören oder der Strom für den Transistor zu hoch wird.

Wenn ich einen 100k Widerstand zwischen Audio und Ground setze und die Spannung daran messe, dann müsste ich doch den Strom ausrechnen können ohne die Klingelanlage zu gefährden?
Ich habe keine brauchbare Idee, wie ich das Senden angehen kann, ohne die Klingelanlage einem unnötigen Risiko auszusetzen. Kann jemand helfen?
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 04 Oktober 2016, 21:55:36
eine Open Collector Schaltung verträgt der Audio-Kanal. Leider sind die steigenden Flanken ganz grausig.

1,8k als Vorwiderstand an der Basis (gpio vom Arduino nano).
Audio am Collector und Ground am Emitter.
Ein Pull-Up auf 5V vom Arduino hat zwar die Pegel verbessert, jedoch nicht das verschliffene Signal signifikant verbessert.

Bin mal wieder ratlos.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 16 Oktober 2016, 13:57:49
habe noch eine Innenstation zum Basteln besorgt.
habe mir mal den Part am Audio-Kanal angeschaut und tatsächlich einen Transistor (Q16) gefunden, der Audio auf Masse zieht.

Kann jemand erklären, welchen Zweck Q15 hat?
Was passiert im LM393? Da scheint Audio als Input durch beide Comparer zu gehen.
habe mal versucht, ein Schaltbild rund um den LM393 anzufertigen. D24 scheint mit der Sperrrichtung den LM393 abzusichern (also nicht Audio als Input). Vielmehr können mehrere Pins vom STC den LM393 steuern.

Ergänzung: V- liegt auch auf GND.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: Omega-5 am 20 Oktober 2016, 22:45:37
Zitat von: habeIchVergessen am 16 Oktober 2016, 13:57:49
Was passiert im LM393? Da scheint Audio als Input durch beide Comparer zu gehen.
habe mal versucht, ein Schaltbild rund um den LM393 anzufertigen. D24 scheint mit der Sperrrichtung den LM393 abzusichern (also nicht Audio als Input). Vielmehr können mehrere Pins vom STC den LM393 steuern.

Der LM393 ist ein Komparator (Vergleicher) Datenblatt http://www.ti.com/lit/ds/symlink/lm2903-n.pdf (http://www.ti.com/lit/ds/symlink/lm2903-n.pdf).
Welche Spannung hast du denn zwischen V+ und V- ? R6/R7 ist ein Spannungsteiler für I1- und legt die Vergleichsschwelle für I1+ fest. O1 ist ein Open-Collector-Ausgang mit R143 als Pull-Up.
Auf Datenblatt Seite 12 / Figure 13 ist das Prinzip zu sehen. Die von mir vermutete Schaltung hängt an.

Viel Erfolg beim weiteren Knobeln,
Friedrich
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 21 Oktober 2016, 11:20:47
Zwischen V+ und V- liegen 5V an. Dank dem Hinweis auf I1- habe ich weitere Verbindungen gesucht (s. Anhang).
Leider sehe immer noch nicht, wie O1 den Audio-Kanal steuert.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: Omega-5 am 21 Oktober 2016, 16:00:23
Zitat von: habeIchVergessen am 21 Oktober 2016, 11:20:47
Zwischen V+ und V- liegen 5V an. Dank dem Hinweis auf I1- habe ich weitere Verbindungen gesucht (s. Anhang).
Leider sehe immer noch nicht, wie O1 den Audio-Kanal steuert.

Falsche Richtung.  ;)  O1 ist ein Ausgang und sollte im Prozessor STC 10F04 als Empfänger verarbeitet werden. Die Diode sorgt dafür dass die Spannung an I1+ nicht größer als V_AUDIO + Durchlassspannung der Diode wird. Wenn die Spannung an I1  +3,3V beträgt, ist der Ausgang O1 = +5V, wenn die Spannung an I1+ kleiner als +3,3V ist. Der Ausgang des STC steuert als Sender über den Transistor Q16 den Audiobus.

Gruß Friedrich
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 22 Oktober 2016, 13:50:07
dann ist das mit einer TTL-Schaltung vergleichbar und letztlich nichts anderes als der Empfangsteil von weiter oben.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: Omega-5 am 22 Oktober 2016, 22:15:10
Zitat von: habeIchVergessen am 22 Oktober 2016, 13:50:07
dann ist das mit einer TTL-Schaltung vergleichbar und letztlich nichts anderes als der Empfangsteil von weiter oben.

Nee, TTL ist eine Digital-Logik-Familie für 5V Versorgungsspannung. Schau mal ins oben schon mal verlinkte Datenblatt.

ZitatDer LM393 ist ein Komparator (Vergleicher) Datenblatt http://www.ti.com/lit/ds/symlink/lm2903-n.pdf.
... Auf Datenblatt Seite 12 / Figure 13 ist das Prinzip zu sehen.

Gruß Friedrich
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 25 Oktober 2016, 10:36:43
hab noch einen Schaltungsteil gefunden, der den Audio-Kanal betrifft.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 21 Januar 2017, 13:45:09
habe den Sender gefunden (rotes Dreieck #2 s. Anhang #2.bmp).
An C102 kommt dann folgendes Signal raus (C102.bmp).

Der Transistor Q16 (Open Collector) hat an der Basis nur ein Signal, wenn gesendet wird.

Nachtrag: #2 + C102/Basis Q16/Audio zusammen gemessen
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 21 Januar 2017, 16:08:25
zwei Pins vom STC 10F04XE sehen von der Logik her auch nicht schlecht aus.

#3 steuert Q16 Y1 npn-Transistor  (Open Collector Transistor)
#4 steuert Q15 t2a pnp-Transistor (kann das jemand erklären?)
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 22 Januar 2017, 14:30:30
am Emitter von Q15 liegen 5V an (pnp als Schalter).
R16 (Emitter und Basis Q15), R141 (Emitter Q15 zu #4) und R10 (Basis Q15 zu #4) verstehe ich noch nicht.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 24 Januar 2017, 23:04:21
senden von "Klingeln Ausseneinheit" wird von einer Inneneinheit akzeptiert (Arduino nano).
Fallende Flanken sehen noch ein wenig lau aus.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 27 Januar 2017, 17:25:02
habe die gesamte Schaltung mal an der prod. Anlage angeschlossen (langer Bus).
Monitor/Kamera konnte ich ein- und ausschalten.

Leider fällt beim Senden die Spannung, die von der ZPD4V7 erzeugt wird, so weit, dass manchmal eine Fehlfunktion detektiert wird (Pegel zu lange unterhalb einer bestimmten Spannung; vermutlich 3,3V).

Für Vorschläge bin ich offen!
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 29 Januar 2017, 13:17:09
habe den Spannungsteiler jetzt mit einem Transistor gebaut (schematische Darstellung - gesamt (Spannungsregel ZPD4V7 + Transistor)).

Oszi-Mitschnitt:
zu Beginn
  D11 LOW
  D12 HIGH

wenn CH1 fällt, dann geht D11 auf HIGH

CH2 ist der Pegel von D12. Wenn dieser fällt/steigt, dann werden D12 und D11 jeweils gleichlaufend geschaltet.

Die fallenden Flanken von CH1 sehen immer noch recht lau aus. Steigend ist akzeptable. Leider werden die erwarteten 4,7V nicht erreicht.

Hat jemand eine Erklärung/Verbesserungsvorschlag?
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 31 Januar 2017, 23:03:47
Aktualisierung Schaltung und Sketch.

Wie kann ich den Empfangsteil (rechts D2) LOW halten, wenn kein Audio-Signal anliegt und der Arduino gestartet wird?
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 04 Februar 2017, 17:07:08
Aktualisierung Schaltung und Sketch.
D11 + D12 werdne zum Senden verwendet (Output).
D10 schaltet den Empfangsteil ein (Output).
D2 Empfang der Signale (Input; Pegel wird in Abhängigkeit von D10 gesteuert).

Aktuell läuft es mit einem Arduino Nano.
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 11 Februar 2017, 11:24:52
Aktualisierung Schaltung
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 12 November 2017, 20:50:54
ich habe die Schaltung mal bei Eagle und KiCad als Schema erstellt.
in KiCad ist es eine Gerber- und Eagle ein Board-Datei geworden.

da dies mein erstes Layout ist, möchte ich gerne von eurem KnowHow profitieren!

Ratschläge für Beginner, Tipps und Kritik werden wohlwollend aufgenommen.

noch 2 Bilder angehängt (KiCad v2)
gerber v2 + pcb v2 aktualisiert
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 17 November 2017, 11:12:33
noch eine 3. Version
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 31 Dezember 2017, 16:53:44
mal ein bestückter Prototyp
Titel: Antw:Steuercode aus Audio-Signal dekodieren (Klingelanlage)
Beitrag von: habeIchVergessen am 12 September 2018, 20:05:41
ich habe mir eine Schaltung mit einem CVBS to CSI-2 Konverter ADV7282-M (http://www.analog.com/media/en/technical-documentation/data-sheets/ADV7282.PDF) zusammengebaut (KiCad v5 Schematic im Anhang). (Evaluation Board (http://www.farnell.com/datasheets/2258667.pdf))

ich könnte etwas Unterstützung bzgl. der Interpretation des Datasheets gebrauchen.
Aktuell habe ich nach meinem Dafürhalten das absolute Minimum an Eingängen beschaltet. Bin mir aber nicht sicher, ob das ausreichend ist.

Bei Interesse auch gern per PM melden bzgl. Aufwand.

Nachtrag: Schaltplan als PDF ergänzt