Hallo zusammen!
für mein nächstes Projekt möchte ich gerne zwei Mikrocontroller drahtlos
miteinander verbinden. 115200Baud wären schon nicht schlecht und ich
würde die Daten gerne kontinuierlich übertragen.
Das ganze muss tatsächlich mit zwei Controllern gelöst werden, da das
Device mit einem der beiden Controller immer wieder mal vom anderen
getrennt wird. Kommunikation über RF, also Wifi, BT, etc. fällt raus, da
nicht echtzeitfähig und störungsanfällig. => Bleibt also nur eine
optische Übertragung.
Vorteil ist: Das Design ist mechanisch komplett gekapselt, es gibt also
keinen Einfluss des Umgebungslichts.
Ich habe mich jetzt echt lange in das Thema eingelesen und habe grob
zwei Lösungen gefunden:
- Datenübertragung über IRdA mit 115200 kbit. Nachteil ist, dass das
ganze recht teuer ist (4 USD pro Transceiver) und schon sehr viele
Bauteile abgekündigt sind => Wird nicht unendlich lange verfügbar
sein...
- Eigenes Design mit Photodiode und IR-Empfänger. Günstiger, allerdings
bin ich mir nicht sicher, welchen IR-Empfänger ich verwenden sollte. Die
Klassiker wie TSOP324.. brauchen Frequenzen um 56KHz (maxmiale Baudrate
liegt damit auch irgendwo in dem Bereich) und erlauben keinen
kontinuierlichen Empfang, da irgendwann die AGC dicht macht.
Was meint Ihr? Wie würdet ihr sowas bauen?
Grüßle und einen schönen vierten Advent!
Maik schrieb:> für mein nächstes Projekt möchte ich gerne zwei Mikrocontroller drahtlos> miteinander verbinden.Maik schrieb:> Hallo zusammen!>> Vorteil ist: Das Design ist mechanisch komplett gekapselt, es gibt also> keinen Einfluss des Umgebungslichts.
Nur interessehalber: warum drahtlos? Man könnte doch einfach die beiden
seriellen Schnittstellen miteinander verbinden.
Maik schrieb:> für mein nächstes Projekt möchte ich gerne zwei Mikrocontroller drahtlos> miteinander verbinden. 115200Baud wären schon nicht schlecht und ich> würde die Daten gerne kontinuierlich übertragen.
IrDa wurde schon genannt.
> Das ganze muss tatsächlich mit zwei Controllern gelöst werden, da das> Device mit einem der beiden Controller immer wieder mal vom anderen> getrennt wird. Kommunikation über RF, also Wifi, BT, etc. fällt raus, da> nicht echtzeitfähig und störungsanfällig.
Unsinn.
> => Bleibt also nur eine> optische Übertragung.
Tunnelblick. Siehe Netiquette.
> - Datenübertragung über IRdA mit 115200 kbit. Nachteil ist, dass das> ganze recht teuer ist (4 USD pro Transceiver)
Geht es um Einzelstücke oder Serienprodukte? Wieviele Stück/Jahr?
> und schon sehr viele> Bauteile abgekündigt sind => Wird nicht unendlich lange verfügbar> sein...
Ist schon lange weg vom Fenster, alles was es gibt sind Restbestände und
guer Wille der IC Hersteller.
> - Eigenes Design mit Photodiode und IR-Empfänger. Günstiger, allerdings> bin ich mir nicht sicher, welchen IR-Empfänger ich verwenden sollte. Die> Klassiker wie TSOP324.. brauchen Frequenzen um 56KHz (maxmiale Baudrate> liegt damit auch irgendwo in dem Bereich)
Nö, deutlich darunter, so um die 1kbit/s.
> und erlauben keinen> kontinuierlichen Empfang, da irgendwann die AGC dicht macht.
Stimmt nicht. Bei passender Kodierung kann man dauerhaft senden.
> Was meint Ihr? Wie würdet ihr sowas bauen?
Wir würden erstmal fragen, was denn INSGESAMT gemacht werden soll.
> Grüßle und einen schönen vierten Advent!
Der ist erst in einer Woche, heute ist der 3.
Möglichkeit: 10 Mbit Ethernet über IR. Die Tranceiver spucken schon
Manchestercode aus, das läßt sich spielend senden und empfangen
(gleichspannungsfrei, hohe untere Grenzfrequenz), Standardbauteile, Viel
Reserve.
Die erste und wichtigste Frage ist die physikalische Anordnung. Haben
die beiden Geräte feste Positionen? Gibt es eine Line of Sight, oder
eher Wide Line of Sight? Anhand dessen kannst du eine IR-LED zum Senden
auswählen. Viele Controller z.B. STM32 unterstüzten IRDA Timings bis
115200 Bit/s. Dadurch lässt sich die Sendeleistung deutlich erhöhen.
Ebenfalls aufgrund des Sichtwinkels und der Wellenlänge des Senders
lässt sich eine passende PIN-Photodiode auswählen, deren Signal mit
einem Transimpedanzwandler verstärkt werden kann.
Eine Umgebnungslicht unterdrückung wird laut deiner Aussage ja nicht
benötigt. Ändert sich der Winkel/Distanz der beiden Teilnehmer
zueinander? Wenn ja, Anpassung der Sendeleistung/Verstärkung.
wenn kein Einfluß von Umgebungslicht, würde doch eine diskrete Lösung
mit LED und Photo-Transistor oder -Diode doch auch ausreichend sein,
Bitzeiten von >8µs sind ja kein Hexenwerk
Hi, das ging ja schnell!
Joachim B. schrieb:> IRDA Transmitter?
Ja, hatte ich ja oben schon geschrieben. Problematisch sehe ich hier den
hohen Preis und die schlechte verfügbarkeit der Bauteile.
neugierig schrieb:> Nur interessehalber: warum drahtlos? Man könnte doch einfach die beiden> seriellen Schnittstellen miteinander verbinden.Falk B. schrieb:> Wir würden erstmal fragen, was denn INSGESAMT gemacht werden soll.
Ok, anscheinend waren die Ausgangsinformationen doch noch zu dünn. Also:
Ich habe zwei Devices, diese sollen im Betrieb bidirektional Messwerte
miteinander austauschen. Echtzeitfähig (wenig Jitter und Totzeit) und
115200 baud wären gut.
Beide Devices müssen aber trennbar sein (eins ist vor Ort verbaut) und
wasserdicht sein. Wasserdichter Stecker ist nach unseren Recherchen zu
teuer.
Stückzahlen ca. 10k Pärchen pro Jahr, brauche also 20k Transceiver. Da
machen 2USD pro Stück schon einen Unterschied.
Falk B. schrieb:> Kommunikation über RF, also Wifi, BT, etc. fällt raus, da>> nicht echtzeitfähig und störungsanfällig.>> Unsinn.
So? Aber schwierig abzusichern in Umgebungen mit viel RF Müll in der
Luft... Problem mit der Zertifizierung besteht weiterhin.
Falk B. schrieb:> Möglichkeit: 10 Mbit Ethernet über IR. Die Tranceiver spucken schon> Manchestercode aus, das läßt sich spielend senden und empfangen> (gleichspannungsfrei, hohe untere Grenzfrequenz), Standardbauteile, Viel> Reserve.
Sieht spannend aus, Danke! Werde ich mir anschauen.
aldesser schrieb:> Die erste und wichtigste Frage ist die physikalische Anordnung.
Sende und Empfangsseite haben ca. 10mm Abstand zu einander. Das
bewegliche Device wird mechanisch mit dem festen verbunden und es gibt
einen Rahmen um die Schnittstelle um Streulicht abzufangen.
Die Position zueinander ist genau definiert, Abstand/Winkel/... ändern
sich nicht.
Dann such dir einfach bei Vishay oder Osram passende Leds mit einem
niedrigen Abstrahlwinkel aus. Meistens werden im Datenblatt auf
zugehörige Photodioden mit passendem Spektrum verwiesen. (Oder such dir
eine PIN Diode aus und dann die LED). Ansteuerung des LED entweder mit
vorwiderstand (keine Temperaturänderung der Umgebung) oder Stromquelle.
TIA nach
https://www.digikey.com/en/articles/techzone/2017/jun/how-to-design-stable-transimpedance-amplifiers-automotive-medical-systems
oder Tietze Schenk auslegen.
Wenn du klassische IRDA Timings nutzts (falls dein uC das bietet),
kannst du den (Peak) LED Strom deutlich erhöhen und hast weniger
Stromverbrauch und billigere Dioden. Funktionieren tut das allerdings
auch mit UART Timings, dann bitte aber vor Sender und nach Empfänger
invertieren, damit der Ruhepegel LOW (-> kein Licht) ist.
Optimal wäre, da es bidirektional sein soll, wenn das gehäuse Material
nichts reflektiert, oder beide Strecke optische getrennt sind.
Hallo,
> Maik schrieb:> Sende und Empfangsseite haben ca. 10mm Abstand zu einander. Das> bewegliche Device wird mechanisch mit dem festen verbunden und es gibt> einen Rahmen um die Schnittstelle um Streulicht abzufangen.> Die Position zueinander ist genau definiert, Abstand/Winkel/... ändern> sich nicht.
also hast du doch eine klar definierte Einbausituation und sofern du
nicht noch weitere wichtige Randbedingungen verschwiegen hast, würde ich
sagen:
Die Hardware muß nix anderes sein muß, als 2 popplige Optokoppler, die
sich prinzip bedingt jeweils mit Sendediode und Fotodiode in einigem
Abstand gegenüber stehen?
Da kannst du als Sender fast jede beliebige LED nutzen.
Die speziellen Eigenschaften von IRDA sind da auch überflüssig, oder?
Um die Empfangsbedingungen günstig zu gestalten, sollte die Sende-LED
eine gute Effizienz haben und einen möglichst engen Abstahlwinkel.
IR-LED bieten sich an, aber farbige LED wären auch gut, weil man da
genau sieht, wenn es blinkert und wo das Licht hin strahlt.
Als Empfänger kann man auch jede billige Fotodiode nutzen, mit
nachgeschalteten Verstärker, evtl. auch Fototransistor oder
Fotoempfänger mit eingebauten Verstärker.
Den Verstärker selber entwickeln hat aber den großen Vorteil, daß man
mit billigen Bauelementen sehr flexibel ist und nie Problem bekommen
wird, weil irgend ein exotische Teil allocated oder abgekündigt ist.
Gruß Öletronika
Hallo,
> aldesser schrieb:> Optimal wäre, da es bidirektional sein soll, wenn das gehäuse Material> nichts reflektiert, oder beide Strecke optische getrennt sind.
wenn das konstruktiv so klar definiert ist, wie der TO schreibt, würde
ich meinen, dass extra Maßnahmen zur optischen Trennung nicht notwendig
sein sollten.
Die Strecken für Rx/Tx stehen sich jeweils im Winkel von 180° gegenüber.
Das sollte zwischen dem direkt abgestrahlten Licht und Reflexionen vom
anderen Kanal locker ein Störabstand von 1:50 ...1:100 ergeben, sofern
bei der Konstruktion nicht alles falsch gemacht wird.
Direkte Reflexionen von sehr hellen bzw. blanken Gehäuseteilen müssen
natürlich unterbunden werden.
Gruß Öletronika
Maik schrieb:> Ich habe zwei Devices, diese sollen im Betrieb bidirektional Messwerte> miteinander austauschen. Echtzeitfähig (wenig Jitter und Totzeit) und> 115200 baud wären gut.
Wie wenig? 1us Jitter? 1ms?Wieviel Totzeit?
> Stückzahlen ca. 10k Pärchen pro Jahr, brauche also 20k Transceiver. Da> machen 2USD pro Stück schon einen Unterschied.
OK.
>> Kommunikation über RF, also Wifi, BT, etc. fällt raus, da>>> nicht echtzeitfähig und störungsanfällig.>>>> Unsinn.>> So? Aber schwierig abzusichern in Umgebungen mit viel RF Müll in der> Luft... Problem mit der Zertifizierung besteht weiterhin.
Die Frage kann man nur bei Kenntnis der Rahmenbedingungen beantworten.
Die waren in deiner Anfrage noch unbekannt. Jetzt sieht das anders aus.
> Sende und Empfangsseite haben ca. 10mm Abstand zu einander. Das> bewegliche Device wird mechanisch mit dem festen verbunden und es gibt> einen Rahmen um die Schnittstelle um Streulicht abzufangen.> Die Position zueinander ist genau definiert, Abstand/Winkel/... ändern> sich nicht.
Na da ist das doch ein Klacks. Du kannst mit viel Sendeleistung
reingehen und braucht nicht mal einen superempfindlichen Empfänger. Du
willst eine kontaktlose, wasserdichte Schnittstelle. Wenn kein
Umgebungslicht da ist, braucht man nicht mal IrDa sondern kann
problemlos direkt per UART die Daten ohne zusätzliche Kodierung
raushauen und direkt empfangen. Ein halbwegs schneller OPV als TIA und
fertig. Für 115200 Bit/s ein Klacks. Gibt es in Stückzahlen für
vielleicht 1-2 Euro.
U. M. schrieb:> wenn das konstruktiv so klar definiert ist, wie der TO schreibt, würde> ich meinen, dass extra Maßnahmen zur optischen Trennung nicht notwendig> sein sollten.
Doch, denn das Ganze soll einfach trennbar und wasserdicht sein.
Cyrrus schrieb:> Mein Kandidat #1 wäre ein POF transceiver (Plastikfaser> Sender/Empfänger).
Viel zu teuer und hier gar nicht nötig bzw. ohne Vorteil. Denn einen LWL
will und braucht der OP nicht!
Hi!
U. M. schrieb:> Hallo,>> aldesser schrieb:>> Optimal wäre, da es bidirektional sein soll, wenn das gehäuse Material>> nichts reflektiert, oder beide Strecke optische getrennt sind.> wenn das konstruktiv so klar definiert ist, wie der TO schreibt, würde> ich meinen, dass extra Maßnahmen zur optischen Trennung nicht notwendig> sein sollten.
Optische Trennung sollte klappen, kriegen wir in der Konstruktion hin.
Falk B. schrieb:> Na da ist das doch ein Klacks. Du kannst mit viel Sendeleistung> reingehen und braucht nicht mal einen superempfindlichen Empfänger. Du> willst eine kontaktlose, wasserdichte Schnittstelle. Wenn kein> Umgebungslicht da ist, braucht man nicht mal IrDa sondern kann> problemlos direkt per UART die Daten ohne zusätzliche Kodierung> raushauen und direkt empfangen. Ein halbwegs schneller OPV als TIA und> fertig. Für 115200 Bit/s ein Klacks. Gibt es in Stückzahlen für> vielleicht 1-2 Euro.
Perfekt. Das ist genau das, was ich gesucht hab. IRdA Timings werden wir
verwenden, schadet nicht. Der verwendete STM32 macht das auch in
Hardware, also alles easy.
Sorry für die anfängliche Unklarheit! Ich hasse unklare Anforderungen
auch, dachte aber, dass alles gesagt war. War es offensichtlich nicht :)
Grüße!
Was ich gerade noch sehe bzgl. optischer Trennung:
Sollte die optische Trennung wider Erwarten nicht ausreichen, kann man
ja einfach auf einen Halbduplex Betrieb wechseln. Die ~halbe Datenrate
kann man dann durch doppelte Baudrate wieder ausgleichen.
Wenn ich es richtig verstehe, macht der STM das sogar automatisch im
IRdA Modus:
1
If the Transmitter is busy (i.e. the USART
2
is sending data to the IrDA encoder), any data on the IrDA receive line will be ignored
3
by the IrDA decoder and if the Receiver is busy (USART is receiving decoded data
4
from the USART), data on the TX from the USART to IrDA will not be encoded by IrDA.
Maik schrieb:>> ich meinen, dass extra Maßnahmen zur optischen Trennung nicht notwendig>> sein sollten.>> Optische Trennung sollte klappen, kriegen wir in der Konstruktion hin.
Es gibt aber ein Argument gegen Optik. Nämlich Dreck. Da ist eine
induktive Übertragung nämlich immun. Kriegt man auch relativ preiswert
hin, ist aber mehr Aufwand.
Hallo,
> Falk B. schrieb:> Doch, denn das Ganze soll einfach trennbar und wasserdicht sein.
aber das sind doch nicht wirklich optoelektronische, sondern eher rein
konstruktive Probleme.
Gruß Öletronika