Die Kommunikationsstrecken RS232 & TCP/IP

Benutzeravatar
Lippebahner
User
Beiträge: 48
Registriert: Di 15. Jan 2013, 20:18
Wohnort: Detmold
Kontaktdaten:

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von Lippebahner » So 17. Feb 2013, 21:07

Hallo Rainer,

Danke für den Hinweis, leider alles in meiner lieblingssprache.

Habe mir heute den Beitrag im Spassbahnforum nochmal angesehen von Seite 1- 25 und fündig Geworden.

Möchte aber die Bilder nicht Posten, da ich nicht der Autor bin.

Das mit den Schutzwiederständen habe ich gelesen, aber auch das diese entfernt wurden

Habe heute schon mal das Wiznet mit der Adapterplatine Verbunden.

Bild

unter der Lupe lässt sich das mit der 2mm Spitze gut Löten.

Bild

nach der Documentation sollte das so richtig sein.

Bild

wenn es in Rauch aufgeht wohl eher nicht, aber das Glaube ich nicht.

Bild

Die Belegung des Wannensteckers habe ich auch Dort gefunden

Pin 9 = GND
Pin 10 = 5 VCC

Bild

damit dürfte das Board dann booten.

Die 3,3 Volt die das Wiznet benötigt sollten über die Adapterplatine generiert werden ( so habe ich das Verstanden)

Bitte um Korrektur wenn ich mich Irren sollte, = Menschlich.
Gruß Marcel :D

http://tinypic.com/3ia3l0k3
Mein Kanal :http://www.youtube.com/user/Lippebahner
Meine Kamera : http://lippebahner.selfhost.me/
Zugang für 1ne Stunde : Name =Gast | PW =Gast

IPTRAIN
Senior
Beiträge: 202
Registriert: Di 15. Jan 2013, 20:20
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275: count(): Parameter must be an array or an object that implements Countable

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von IPTRAIN » So 17. Feb 2013, 21:11

Hallo Marcel, hallo alle anderen,

ich sehe, Marcel hat ja schon ganz schön Eigeninitiative entwickelt - mein Respekt, weiter so!

Aber ich denke, auch die anderen konnten diesen Versuch wiederholen.

Ich will auch direkt für ein weiteres Erfolgserlebnis sorgen!

Ihr alle habt in eurer Bestellung (unter anderem) zwei Boards zugesandt bekommen:

* ein 5 Volt Drop Down Board
* und das 2561 Microcontrollerboard (MC)

Mit beiden wollen wir nun weiterexperimentieren. Es geht darum, zwischen dem MC-Board und Eurem PC eine Kommunikation herzustellen. Zur Verwendung kommt natürlich auch wieder das USB-UART Board. Wenn Ihr ein wenig überlegt: Da ich das wiznet610wi nicht erwähnt habe, kann es sich also nur um eine serielle Kommunikation handeln, da ja der MC nur die serielle Kommunikation beherrscht. Für eine TCP/IP Kommunikation bräuchten wir das wiznet.

Wie Ihr Euch erinnert, habe ich auf das MC-Board einen Bootloader als ERSTES Programm (=Bootloader) "geflashed" (=gespeichert). Dieses Programm ist jetzt für immer im Memory des MCs. Es dient Euch als zukünftiges Hilfsprogramm, ohne besondere Hilfsmittel, aktuelle Programversionen zur Lok-Steuerung selbst in den MC zu laden.

Immer wenn man jetzt Strom an das MC-Board legt, wird der Bootloader zuerst gestartet. Er horcht die serielle Schnittstelle ab. Wenn er in den ersten Zehntel-Sekunden keine spezielle Code-Sequenz vom PC zugesandt bekommt, dann übergibt er die Gewalt über die MC-Steuerung an das ZWEITE Programm. Dieses ist immer das für uns wichtige Nutzprogramm, das alle Lokfunktionen steuert. Es bleibt im Memory des MCs permanent gespeichert, auch wenn man den Strom wegnimmt.

Bekommt der Bootloader diese spezielle Codesequenz über die serielle Schnittstelle zugesandt, dann übergibt er nicht an das ZWEITE Programm sondern lässt sich eine neue Version des ZWEITEN Programms vom PC zusenden. Diese neue Version speichert er dann als das aktuelle ZWEITE Programm im Memory. Startet man den MC danach neu (und fehlt jetzt eine Code-Sequenz), dann übergibt dieser Bootloader die Gewalt über den MC an das ZWEITE Programm, also unser Nutzprogramm.

Ich habe Euch ein ZWEITES Programm bereits vorgeladen (es ist noch nicht das eigentliche Steuerprogramm, das kommt noch).

Dieses ZWEITE Programm wollen wir nun mit dem PC kommunizieren lassen. Wie das geht, erkläre ich nun.

Auf dem folgenden Schaubild ...
20130217_195001_1024x768.jpg
seht Ihr im Vordergrund 3 Boards:

1) Das 5 Volt Step Down Board, das aus einer Gleichspannung zwischen 6 Volt und 16 Volt immer eine konstante Ausgangsspannung von 5 Volt erzeugt.
2) Das MC-Board
und
3) das uns bereits bekannte USB-UART Board.

Zusätzlich ein Oszilloskop im Hintergrund, mit dem ich Anschlüsse für uns noch einmal geprüft habe. Ist für Euch nicht wichtig.

Befassen wir uns erst einmal mit dem 5 Volt StepDown Board:

Zuerst müssen wir einen Kennzeichungs- Fehler auf dem Board korrigieren:

Auf der Ausgangsseite sehen wir 3 * 2 Ausgänge, die mit "+" und "-" gekennzeichnet sind. Genau diese Kennzeichung ist leider falsch herum: Dort, wo Plus zu lesen ist, liegt der Massepol des Ausgangs, dort wo Minus zu lesen ist, liegt der PlusPol.

Die Kennzeichnung der Eingangsseite stimmt. Ich habe an sie einen ROTEN Draht für PLUS angelötet und einen BLAUEN Draht für MINUS. An diese beiden Drähte lege ich also eine Eingangsspannung zwischen 6 und 16 Volt an.
20130217_195104_1024x768.jpg
Der GELBE und der BLAUE Draht auf der Ausgangsseite sind schon KORREKT angelötet, sie berücksichtigen also die echte Polung. Ganz links seht Ihr an dem Ausgangspärchen noch das FALSCHE PLUS und MINUS-Symbol.

Korrigiert sähe es also dann so aus:
5Volt DropDown korrigiert.jpg
Das GELBE und BLAUE Kabel dienen nun der stabilisierten Stromversorgung des MC-Boards (unter anderem). Das wird auch später im LOK-Einbau so sein!

Ich würd also die Kabel nicht zu kurz abschneiden (25 cm), um in der Lok entsprechend großzügig positionieren zu können.

Wer nun ein Voltmeter hat, den Messbereich auf Gleichspannung (Volt) einstellen und einmal die Spannung am Eingang und am Ausgang (zur Bestätigung) messen. Das rote Kabel vom Voltmeter also an das GELBE Kabel anschliessen. Das BLAUE Kabel an das schwarze Kabel (Masse) vom Voltmeter!

Fortsetzung folgt!

IPTRAIN
Senior
Beiträge: 202
Registriert: Di 15. Jan 2013, 20:20
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275: count(): Parameter must be an array or an object that implements Countable

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von IPTRAIN » So 17. Feb 2013, 23:12

Wir schauen uns nun die Anschlüsse zum MC-Board an.

Auf dem Board seht Ihr eine Fläche mit 6 (2*3) Löchern, die meisten anderen Stecker-Flächen besitzen 10 (2*5) Löcher.

Diese 6 Löcher sind zur Kommunikation des MCs mit seiner Aussenwelt vorgesehen. Man nennt diesen Anschluß den ISP-Anschluß (In-System-Programming). Er besitzt Doppelbelegungen, die ich nicht erläutere. Nur so viel: Über ihn wird der Chip geflashed (so habe ich diesen Anschluß benutzt, um den Bootloader zu flashen).

Aber auf diesem Anschluß am Board liegt (doppelbelegt) auch eine von zwei UART-Schnittstellen, die sogenannte UART0! Es gibt noch eine zweite UART-Schnittstelle, die interessiert erst einmal nicht.

Für meine Experimente habe ich einen Stecker eingelötet, den ich später evtl wieder auslöte, wenn das Board in eine Lok verbaut wird. An den Stecker habe ich Leitungen angelötet, die Ihr aber direkt an die Kontaktpunkte (in die Löcher) einlöten könnt. Indem ich die Leitungen an die Rückseite angelötet habe, bleibt der Stecker vorn steckbar.

Bei mir sieht dies dann so aus:
20130217_195036_1024x768.jpg
Ich habe 5 Kabel angelötet:

Zwei Kabel kommen vom DropDown Board (Stromversorgung 5 Volt GELB und Masse BLAU), sowie ein weiteres BLAUES Massekabel, das zum USB-UART Board an seinen MassenPin führt und zwei Kabel GRÜN-WEISS und GELB-WEISS, das sind die beiden Datenkabel, die ebenfalls zum USB-UART Board führen.

Weil man die Anlötungen im obigen Bild schlecht erkennen kann, habe ich ein zweites Board genommen, dieses um 180° gedreht und schematisch den ISP-Anschluß mit den belegten Kabelfarben (wie im Bild) dargestellt:
ISP-Anschluß.jpg
Nun soll in diesem Projekt immer die folgende Konvention gelten:

Die Kommunikationskabel (der seriellen Schnittstellen) kennzeichne ich immer durch "gefleckte" Litzen. GELB-WEISS für das Tx Kabel (Transmit = SENDEN), aus dem das betrachtete Board (der betrachtete Kommunikationspartner) seine Daten WEGSENDET und GRÜN-WEISS für das Rx Kabel (Receive=EMPFANGEN), durch das der Kommunikationspartner seine Daten EMPFÄNGT!

Bitte dieses unbedingt zu beachten, da das Tx Kabel (GELB-WEISS) immer aktiv Spannung führt, Hält man es gegen MASSE (oder gegen PLUS), wenn eine Datenübertragung aktiv ist, dann zerstört man den Treiberausgang des Boards und die Schnittstelle ist irreparabel defekt. Folgt man dieser Konvention generell, dann wird klar, dass auf den anderen Seite (beim UART-USB Board), auch Tx durch GELB-WEISS gekennzeichnet wird und Rx durch GRÜN-WEISS.

Wenn man also die Farben in der Mitte kreuzt, dann hat man alles richtig gemacht, denn Tx des einen Boards muss in Rx des anderen Boards münden und umgekehrt. Wenn Ihr diese Regel beachtet, seid Ihr einigermassen sicher, dass Ihr bei der Tx / Rx Verkabelung keinen Fehler macht. Wenn man nämlich Tx an Tx anschliessen würde, dann würden sich die beiden Boards gegenseitig zerstören!
(Die "Fleckung" soll übrigens die Bitströme assoziieren.)

Schaut Ihr auf diese Bild, dann seht Ihr, wie die beiden Farben sich in der Mitte der Verbindung (bei den Klemmspitzen des Oszilloskops) kreuzen:
20130217_194937_1024x768.jpg
Achtung, die beiden Kabel an der Kreuzungsstelle mit Isolierband (oder Schrumpfschlauch) gegeneinander schützen.

Ihr seht auf diesem Bild auch, dass ein BLAUES Kabel noch an den Masse-Pin des USB-UART Boards führt.
Achtung: ich habe nur einen Stecker mit 3 Anschlüssen verlötet, obwohl das USB-UART Board 5 Pins hat. Aber die restlichen Pins werden wir nicht brauchen. Bitte beachtet also immer das USB-UART Board Schaubild von zuvor, in dem die Kennzeichnungen der Anschlüsse gnerell dargestellt werden.
(Tx ist dort GELB - durchehend, Rx ist dort GRÜN durchgehend, Masse ist dort BLAU).

Generell gilt: ALLE BOARDS in der Lok, müssen unbedingt mit (mindestens) einem (BLAUEN) Masse-Kabel untereinander verbunden, da mit alle Boards das gleiche Masse Potential haben. Fahrlässigkeiten bei der Masseverkabelung können (schlimmstenfalls) zur Zerstörungen von empfindlichen Boards durch Überspannung führen.

Achtung: Das USB-UART Modul ist sehr empfindlich - es kann sehr leicht durch Überspannungen defekt werden.

ES GILT AUCH IMMER: WENN GELÖTET WIRD, MÜSSEN ALLE STROMZUFÜHRUNGEN ZU UNSERN SCHALTUNGEN ENTFERNT WERDEN - UNBEDINGT BEACHTEN! ALSO: AUCH DAS USB-KABEL AUS DEM PC ABZIEHEN!

Habt Ihr alles verbunden, sieht das Ganze so aus:
20130217_194951_1024x768.jpg
Wenn Ihr nun noch das USB-Kabel vom USB-UART Board in den PC einstöpselt, eine Spannung von 6 -16Volt an das DropDown Board anlegt und das bekannte Terminal Program aufruft (mit <CONNECT> verbinden - nicht vergessen !!!), dann solltet Ihr in Eurem Empfangsbereich ungefähr diese Nachricht sehen:
20130217_195241_1024x768.jpg
Die Kommunikation in obigem Beispiel ist aber unidirektional. Das Programm im MC sendet nur, es empfängt keine Nachrichten von Euch.

Ist doch einfach - oder ? Ihr seht wie bequem man eine Kommunikation zwischen PC und MC aufbauen kann. Hätte das Smartphone eine UART-Schnittstelle, hätten wir auch ein Smartphone anschliessen können (anstelle eines PCs).

Da das Smartphone aber (nur :D ) TCP/IP über WLAN kann, müssen wir als nächstes das WIZNET dazwischen schalten.

LG vom Karl ;)

(Fortsetzung folgt natürlich)! :mrgreen:

Benutzeravatar
Lippebahner
User
Beiträge: 48
Registriert: Di 15. Jan 2013, 20:18
Wohnort: Detmold
Kontaktdaten:

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von Lippebahner » Mo 18. Feb 2013, 21:03

Hallo Geinde,

Habe heute mein Wiznet an Spannung angeschlossen und siehe da es beginnt zu Blinken.
Auf meinem Laptop und Tablet PC erscheint sofort "WLANAP0" als SSID Name

Laptop auf IP-Adresse bezihen eingestellt und "Verbinden"

Und siehe da Verbunden. Jetzt im Browser die Adresse :192.168.1.254 eingeben

Benutzername :admin
Passwort :admin

Die Startseite erscheint. BINGO , bin drin :-)

Was mich jetzt interessiert ist die anbindung an mein vorhandenes Netzwerk.
Wobei ich das Wiznet modul ja an meine FritzBox anmelden muß, die mit WPA+WPA2 verschlüsselt ist.


Dann habe ich noch gelesen das es sicherungsdateien giebt.
von Karl dem großen :-)

"Wie man dann aus dem ADHOC -Modus wieder in INFRASTRUCTURE kommt, ist ja schon angedeutet worden - mit einer der beiden Sicherungsdateien, die ich Euch geschickt habe."

Der nächste schritt wäre für mich diese Anleitung mit der Ausländischen diktatur mal ins "Deutsch" zu übersetzen OK, Niederländisch geht auch noch.
Gruß Marcel :D

http://tinypic.com/3ia3l0k3
Mein Kanal :http://www.youtube.com/user/Lippebahner
Meine Kamera : http://lippebahner.selfhost.me/
Zugang für 1ne Stunde : Name =Gast | PW =Gast

Benutzeravatar
Lippebahner
User
Beiträge: 48
Registriert: Di 15. Jan 2013, 20:18
Wohnort: Detmold
Kontaktdaten:

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von Lippebahner » Mo 18. Feb 2013, 22:38

Momentaner stand

Bild

Netzwerkadresse aufgerufen

Bild
Gruß Marcel :D

http://tinypic.com/3ia3l0k3
Mein Kanal :http://www.youtube.com/user/Lippebahner
Meine Kamera : http://lippebahner.selfhost.me/
Zugang für 1ne Stunde : Name =Gast | PW =Gast

Benutzeravatar
Koenigsteiner
Anfänger
Beiträge: 21
Registriert: Mi 16. Jan 2013, 11:36
Wohnort: Sächsische Schweiz
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275: count(): Parameter must be an array or an object that implements Countable

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von Koenigsteiner » Mi 20. Feb 2013, 08:46

Hallo zusammen, bin auch gerad dabei die ersten Test's durchzuführen. Hab mir das elv-Modul UM-FT2232H gegönnt.
Den richtigen Treiber findet man hier --> http://www.ftdichip.com/Drivers/VCP.htm

@Marcel (Lippebahner): Hallo Marcel, nach deinen Bildern verwendest du das gleiche elv-Modul wie ich ;) Ich komme aber mit deiner Brücke im Flachbandkabel nicht ganz klar (siehe Bild unten). Laut elv-Doku (S.4 / Bild 3) ist für einen Test Pin 5 mit Pin 19 und Pin 6 mit Pin 20 zu verbinden (RxD mit TxD über Kreuz für beide Kanäle). Schau ich mir deine Brücke an und zähle ab komme ich auf die Pins 11/12 (für nur ein Kanal). Sollte es nicht Pin 5 mit Pin 6 sein (ein Kanal)? Ist das so richtig??? Passt doch irgendwie nicht? Kannst du mir das kurz erklären? Vielen Dank!
Grüße vom Thomas
Lippebahner hat geschrieben:Nun Habe ich zwei seperate Com Port´s , wo nun bei einer Steckerleiste TX und RX verbunden wurden.

Bild

Tony Cannaerts
User
Beiträge: 28
Registriert: Di 15. Jan 2013, 21:50
Wohnort: Blaasveld (Belgien)
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275: count(): Parameter must be an array or an object that implements Countable

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von Tony Cannaerts » Mi 20. Feb 2013, 18:33

Hallo

Weist jemand ob in der step down wandler auch ein gleichrichter drin ist? Also muss man beim anschliessen des step down achten auf die polaritait?

Grussen,

Tony
Deutsch, eine Sprache einfach zum sprechen aber schwer zum schreiben ...

Benutzeravatar
ateshci
Senior
Beiträge: 193
Registriert: Mi 16. Jan 2013, 15:12
Wohnort: Friedberg(Hessen)
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275: count(): Parameter must be an array or an object that implements Countable

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von ateshci » Mi 20. Feb 2013, 18:58

@Tony
Da ist KEIN Gleichrichter drin. Die Poarität muss beachtet werden, sonst könnte es "Rauchbit" geben.
Gruß vom Heizer

Benutzeravatar
Lippebahner
User
Beiträge: 48
Registriert: Di 15. Jan 2013, 20:18
Wohnort: Detmold
Kontaktdaten:

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von Lippebahner » Mi 20. Feb 2013, 20:28

Koenigsteiner hat geschrieben:Hallo zusammen, bin auch gerad dabei die ersten Test's durchzuführen. Hab mir das elv-Modul UM-FT2232H gegönnt.
Den richtigen Treiber findet man hier --> http://www.ftdichip.com/Drivers/VCP.htm

@Marcel (Lippebahner): Hallo Marcel, nach deinen Bildern verwendest du das gleiche elv-Modul wie ich ;) Ich komme aber mit deiner Brücke im Flachbandkabel nicht ganz klar (siehe Bild unten). Laut elv-Doku (S.4 / Bild 3) ist für einen Test Pin 5 mit Pin 19 und Pin 6 mit Pin 20 zu verbinden (RxD mit TxD über Kreuz für beide Kanäle). Schau ich mir deine Brücke an und zähle ab komme ich auf die Pins 11/12 (für nur ein Kanal). Sollte es nicht Pin 5 mit Pin 6 sein (ein Kanal)? Ist das so richtig??? Passt doch irgendwie nicht? Kannst du mir das kurz erklären? Vielen Dank!
Grüße vom Thomas
Lippebahner hat geschrieben:Nun Habe ich zwei seperate Com Port´s , wo nun bei einer Steckerleiste TX und RX verbunden wurden.

Bild
Hallo Thomas,

ich kann es Dir erklären. Es sind in der Tat Pin 5 und 6 gebrückt, nur hat das Kabe 28 Adern und wenn Du richtig draufschaust,
ist zu sehen, das der Stecker übersteht. Du kannst es auch so machen wie in der Anleitung, allerdings bekommst Du auf dem
gleichen Kanal dann keine rückmeldung. Senden auf A rückmeldung auf B
Oder Du machst den Test einzeln mit dieser Brücke, erst Kanal A und dann B

Ich habe es so wie es in der Anleitung steht noch nicht probiert, da das Terminal Programm sich nur mit einem COM Port verbindet.

Hat aber auch einen Vorteil, Du klemmst an die A seite das Wiznet und an die B seite den MC
Gruß Marcel :D

http://tinypic.com/3ia3l0k3
Mein Kanal :http://www.youtube.com/user/Lippebahner
Meine Kamera : http://lippebahner.selfhost.me/
Zugang für 1ne Stunde : Name =Gast | PW =Gast

Benutzeravatar
Koenigsteiner
Anfänger
Beiträge: 21
Registriert: Mi 16. Jan 2013, 11:36
Wohnort: Sächsische Schweiz
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275: count(): Parameter must be an array or an object that implements Countable

Re: Die Kommunikationsstrecken RS232 & TCP/IP

Beitrag von Koenigsteiner » Mi 20. Feb 2013, 20:35

Hi Marcel,
ja...jetzt wo du es sagst seh ich auch das der Stecker übersteht :oops:
Okay, dann kann ich ja unbedenklich weitermachen :D
Und danke für deine schnelle Antwort!!!

Antworten
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1275: count(): Parameter must be an array or an object that implements Countable

Zurück zu „Aktueller Stand“