Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Datenübertragung via Laser (https://www.delphipraxis.net/95818-datenuebertragung-via-laser.html)

harry..hirsch 13. Jul 2007 15:52


Datenübertragung via Laser
 
Moin,

und zwar hatte ich mal Lust mir eine Datenübertragung mittels Laser zu bauen (wen es interessiert -> Datenübertragung über Laser). Das funktioniert auch soweit. Die Frage die ich nun habe ist eher Delphi-Unabhängig: Nach was für einem Protokoll könnte ich sinnvoll Daten übertragen? Ich hab mich da mal im Internet etwas informiert, aber das Problem it ja, dass ich ja nur RxD und TxD zur Verfügung habe. Ich denke mal, dass eine asynchrone Übertragung angebracht ist. Was mir aber nicht klar ist, wie ich sicherstellen kann, dass die Daten auch wirklch angekommen sind. Vllt. hat ja jemand Ideen/Erfahrungen.

oki 13. Jul 2007 15:58

Re: Datenübertragung via Laser
 
Hi,

da du deinen Laser an die COM anschließt kannst du jedes gewöhnliche Modemprotokoll verwenden (ZModem ....). Sonnst kannst du auch dein eigenes Protokoll schreiben.

Den ersten Test kannst du ja mal mit HyperTerminal machen.

Gruß oki

arbu man 13. Jul 2007 15:59

Re: Datenübertragung via Laser
 
Toll wäre das ganze wenn es RS232 kompatibel ist.

oki 13. Jul 2007 16:06

Re: Datenübertragung via Laser
 
Zitat:

Zitat von arbu man
Toll wäre das ganze wenn es RS232 kompatibel ist.

ist es doch. Oder hab ich den Link falsch gelesen?

Gruß oki

arbu man 13. Jul 2007 16:09

Re: Datenübertragung via Laser
 
Das ist das System wirklich cool :)

harry..hirsch 13. Jul 2007 16:09

Re: Datenübertragung via Laser
 
Vielen Dank für die schnellen Antworten!

Ich werde mich mal mit dem ZModem-Portokoll beschäftigen. Das Problem bei der Sache ist ja, dass ich ja insgesamt nur zwei Leitungen habe, eine zum Daten senden und eine zum empfangen. Daher kann man die beiden Geräte auch nicht über eine zusätzliche Leitung mit einem Taktsignal synchronisieren. Es wird wohl darauf hinauslaufen, dass ich ein Protokoll selber entwickeln werde, ich denke aber, dass sich im ZModem-Protokoll brauchbares finden lässt.

Also zusammenfassend ist das Problem, dass es zwar prinzipiell an der RS232 Schnittstzelle angeschlossen ist, aber ja nur zwei Leitungen (mit Ausnahem von GND) benutzt werden. Ich will ja keine Lasershow veranstalten :wink: , ein Laser pro Gerät soll eigentlich reichen (so wie es jetzt aufgebaut ist).

oki 13. Jul 2007 16:39

Re: Datenübertragung via Laser
 
Hi,

also entweder ich liege falsch oder Du.

Imho denke ich, dass du pro SR232 einen sender (an TXD) und einen Empfänger (an RXD) benötigst. Das wars schon (gleiches natürlich für die andere Com).

Du kannst dann damit arbeiten wie mit einem Nullmodemkabel (RXD TXD gekreuzt). Du mußt natürlich beachten, dass du dann kein Hardware-Handshake benutzen kannst. Also None oder Software (Steuerleitungen gibt es ja nicht). Das ist schon alles. Die Laser ersetzen eigentlich nur deine beiden Transmit- und Receiveleitungen deines Kabels. Wie gesagt, bau es auf, nehme zwei COM's auf deinem Rechner (oder zwei Rechner), starte Hyperterminal (bei einem Rechner 2 mal), verbinde Hyperterminal mit der COM an der die Lasereinrichtung ist (bei einem rechner einmal auf COM1, einmal auf COM2) und sende Daten. Das ist alles. Wenn du Dateien überträgst, dann kannst du mit ZModem oder ähnlich arbeiten. Das Garantiert den fehlerfreien Empfang.

Also, imho musst du da gar nichts takten. Anschließen und los.

Gruß oki


[edit]

Mann, erst gar nicht gesehen!!!
Wilkommen in der Delphi-Praxis :dp:

Gruß oki

[/edit]

negaH 13. Jul 2007 17:45

Re: Datenübertragung via Laser
 
Es ist so wie Oki sagt.

Du baust alles 2 mal auf und schließt es an den COM Port an. Dann nimmst du eine der vielen COM Port Komponenten für Delphi und öffnest diesen COM Port. Auf beiden Seiten wird die gleiche Baudrate und Software Handshaking eingestellt. Danach kannst du wie über ein normales COM Port Kabel, Null Modem Kabel nennt sich das, Daten austauschen.
Eine "Taktsynchronisierung" ist hierbei nicht nötig da beide Seiten über einen Quartz und mit der gleichen Baudrate arbeiten. Das ist dann defakto schon synchron.

Allerdings ist die Hardwareseitige Umsetzung aus dem besagtem Link eher primitiv und wird längst nicht so gute Ergebnisse erzielen wie eine sagen wir mal "professionelle" Lösung. "Professionell" bezieht sich dabei durchaus auch auf Lösungen die ein Hobbybastler machen kann. Dh. die Elektronik aus dem Link ist wirklich sehr primitiv. Zb. muß eine Laserdiode immer innerhalb ihrer sehr engen Grenzen betrieben werden. Ja nach Laserdiode schätze ich mal das mit obiger Schaltung 90% aller Lasedioden zerstört werden.
Auf Empfängerseite wurde ein simpler CMOS Baustein quasi als "analoger" Verstärker mißbraucht. Desweiteren arbeitet die Elektronik im sogennaten Baseband, dh. ohne Trägersignal. Sowas ist das störanfälligste was es gibt.

Gruß Hagen

harry..hirsch 13. Jul 2007 18:07

Re: Datenübertragung via Laser
 
Vielen Dank für die Antworten! Mir war nicht klar, dass man das praktisch als "normale" RS232 Verbindung nur ohne Hardware-Handshake behandeln kann. Ich werde mir dann nohcmla eine andere Schaltung heraussuchen, die "Diodenschonender" ist.

kiar 13. Jul 2007 18:11

Re: Datenübertragung via Laser
 
moin,

ausserdem sollte man nicht die vergrößerte Schaltung als Grundlage nehmen, da dort die Diode gedreht dargestellt wird :mrgreen:

raik


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:14 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz