Ich würde gerne eine optische Übertragung zwischen z.B. zwei AVR umsetzen. Dabei geht es mir gar nicht um hohe Datenraten mit Verschlüsselung usw., sondern einfach nur um die Übertragung von Zuständen über ein paar einsen und nullen. Auf beiden Seiten gibt es sowohl LED (Sender) als auch Fotodiode (Empfänger). Nur wie synchronisiere ich die beiden am einfachsten/besten, wenn es keine direkte Verbindung per Kabel gibt?
und wie willst du Fremdlicht ausblenden? ich würde eher an IRMP denken mit eigenen Codes oder an RS232 Funkbrücke beides hier im Forum wieso synchron?
Über Lichtleiterkabel oder durch die Luft? Wenn es durch die Luft gehen soll würde ich das Licht modulieren damit die Sache unempfindlich gegenüber Fremdlicht wird. Ansteuern mit der seriellen COM-Schnittstelle. Auf der Sendeseite die Trägerfrequenz an und ausschalten. Auf der Empfangsseite einen selektiven Verstärker, und dann gleichrichten. Trägerfrequenz vielleicht so 50kHz bis 100kHz.
Günter Lenz schrieb: > Trägerfrequenz vielleicht > so 50kHz bis 100kHz. zu niedrig. Das ist fast im Schaltnetzzteilbereich von LED-Beleuchtungen. Besser mal auf >500kHz hoch Alternativ über PSK nachdenken, ist nicht so störungsempfindlich wie ein einfaches Ein/Aus-System
Kann ich fremdlicht nicht ausfiltern? Da wollte ich dann etwas rumprobieren, kenne mich aber auch nicht wirklich auf dem Gebiet aus. Ich bin da noch am Anfang. Vemutlich wird es für mich ein Problem werden zu unterscheiden, in welchem Bit sich der jeweilige Teilnehmer befindet. Das könnte ich ja über z.B. über eine steigende Flanke sychronisieren, oder was denkt ihr? Zwei Pulslängen und eine einheitliche Pausenlänge war mein Plan für den Anfang. Das muss nicht auf Anhieb 100% stabil laufen. Mir würde es auch schon reichen, wenn es für den Anfang bloß bei Dunkelheit klappt.
Um den Start zu synchronisieren verwendet man Startsequenzen, Präambel genannt. Google mal danach. Oder Pausen bestimmter Mindestlänge zwischen den Übertragungen und dann ein Starbit als Taktstart.
Globo schrieb: > Ich bin da noch am Anfang. Vemutlich wird es für mich ein Problem werden > zu unterscheiden, in welchem Bit sich der jeweilige Teilnehmer befindet. > Das könnte ich ja über z.B. über eine steigende Flanke sychronisieren, > oder was denkt ihr? Ich denke, du vermischt da 2 Dinge. Das eine ist die technische Kommunikationseben, bei der auf dem Trägermedium Licht eine entsprechende Information über den Zustand 0 bzw. 1 aufgebracht wird. Das andere ist die bereits eine Schicht drüber, wie man dann mit dem was die physikalische Transportschicht zur Verfügung steht, eine Kommunikation aufbaut. Auch ein Kabel einer seriellen Schnittstelle hat nur 2 Zustände: entweder der Pegel ist auf +12V oder er ist auf -12V. Dementsprechend wird diesen Spannungszuständen eine logische 0 bzw. 1 zugeordnet. Und darüber sitzt dann wieder dieselbe Schicht, die mit diesen Zuständen zb. eine serielle Schnittstelle aufbaut. Entscheidend ist doch, dass diese darüber liegende Schicht von der physikalischen Repräsentierung völlig unabhängig ist, solange mir dieser physikalische Layer nur 2 gesicherte Zustände bereit stellt. Wenn ich will, könnte das auch "Wasser fliesst" bzw. "Wasser fliesst nicht sein" oder "Sirene hoher Ton" bzw. "Sirene tiefer Ton", "Klospülung läuft"/"Klospülung läuft nicht", ..... sein. 2 eindeutig unterscheidbare physikalische Zustände, mehr braucht es auf dieser Ebene nicht. > Zwei Pulslängen und eine einheitliche Pausenlänge war mein Plan für den > Anfang. Ist eine Möglichkeit. Aber warum was neues erfinden, wenn Datenübertragung per UART schon erfunden wurde? > Das muss nicht auf Anhieb 100% stabil laufen. Mir würde es auch schon > reichen, wenn es für den Anfang bloß bei Dunkelheit klappt. Da bist du jetzt wieder in der physikalischen Schicht. Je nach Gegebenheiten ist auch eine 'Richt-Licht' Verbindung aufbaubar. Gerade Licht lässt sich eigentlich recht gut bündeln bzw. dem Empfänger eine Richtcharakteristik mitgeben. Durch Einbau in Röhrchen lässt sich so empfängerseitig schon vieles ausblenden, während Taschenlampen bzw. Laserpointer vormachen, wie man einen Lichtstrahl gezielt in eine bestimmte Richtung lenkt. Interessant wird es, wenn eine derartige Richtwirkung nicht erwünscht ist.
:
Bearbeitet durch User
Globo schrieb: > Nur wie synchronisiere ich die beiden am > einfachsten/besten, wenn es keine direkte Verbindung per Kabel gibt? Benutze doch den UART. Du musst dich ja nicht auf die üblichen Baudraten festlegen, wenn du willst kannst du auch mit einer Baudrate von 1 arbeiten.
Globo schrieb: > Ich bin da noch am Anfang. Vemutlich wird es für mich ein Problem werden > zu unterscheiden, in welchem Bit sich der jeweilige Teilnehmer befindet. > Das könnte ich ja über z.B. über eine steigende Flanke sychronisieren, > oder was denkt ihr? > Zwei Pulslängen und eine einheitliche Pausenlänge war mein Plan für den > Anfang. Du solltest dich mal in 2 Themen einlesen (googeln) RS232 und IR-Fernbedienung.
jemand schrieb: > Du solltest dich mal in 2 Themen einlesen (googeln) RS232 und > IR-Fernbedienung. gut das du das bestätigst (erwähnte ich das nicht schon?) Beitrag "Re: Kommunikation zwischen LED - Fotodiode"
'Ich habe mal eine RC5 Kommunikatino aufgebaut, das ist ein "standart" codec für Fernbedienungen. Eine Photodiode empfängt das ganze und den Code gibt es glaube ich für sehr viele Sprachen ( ich habs in C mit MSP430 realisiert). Das war eigentlich sehr schwer,der Teufel steckt halt immer im Detail. Dein Empfänger synchronisiert sich ja dann automatisch die Photodiode wird verstärkt direkt auf den µC gegegeb, aber da kann ich mich auch täuschen udn noch ein IC steckt dazwischen, dann kommen nur 0 und 1 an und die Kommunikation steht.
All das gibt es schon so lange das es bereits fast wieder ausgestorben ist. :-) Nennt sich IRDA. http://www.societyofrobots.com/electronics_irda_tutorial.shtml Ich wuerde dringend empfehlen sich daran zu halten. Dann koennte man naemlich fertige Transciever wie z.B den TFBS4711 von Vishay verwenden. Oder auch mal was altes irgendwo ausschlachten. (alte Nokia/Handys, Palmpiloten) Oder man koennte auch auf die Idee kommen mit einem Laptop oder Palmpiloten an der Kommunikation teilzuhaben. Es gibt Mikrocontroller die haben es bereits eingebaut das man den UART in den IRDA-Mode schalten kann. (STM32L152) Wenn man das nicht will mussm an natuerlich etwas kreativer sein, geht aber auch. Olaf
Olaf schrieb: > All das gibt es schon so lange das es bereits fast wieder ausgestorben > ist. :-) > Nennt sich IRDA. top, schon fast vergessen!
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.