Problem mit RS232 ILC 150 ETH

DiMMA90

Level-1
Beiträge
5
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo ihr SPS-Experten! ;) Ich arbeite im Moment an meiner Abschlussarbeit zum staatlich geprüften Techniker und habe ein Problem wo ich einfach nicht weiterkomme. Meine Aufgabe ist es eine Transferanlage um einen Barcodescanner zu erweitern und mit der Phoenix SPS (ILC 150) zu verbinden. Den Scanner habe ich eigentlich schon richtig konfiguriert: Baudrate 9600kBits, 8 Datenbits und 1 Stoppbit; Den RS232-Initialisierungsbaustein habe ich auf die gleichen Parameter eingestellt. Nun ist es so, dass ich kein spezielles RS232-Kabel habe sondern ein Kabel von einer Computermaus verwenden wollte, da es einen PS2-Stecker hat. Am offenen Kabelende habe ich vier kleine Kabel, zu welchen Pins die Kabel gehören habe ich auch schon "entschlüsselt". Als Anhang verschicke ich den Anschlussplan von meiner Scanner-Anschlussbox. Meine Frage ist ganz einfach:eek:: Ist diese Verbindung so wie ich es mir vorstelle überhaupt realisierbar? Kennt vielleicht jemand die Pinbelegung der PS2-Buchse von der SPS? Phoenix SPS ILC 150 ETH SICK Barcode-Scanner CLV503 PC-Worx Version 6.10.65 Für die vielen hilfreichen Antworten bedanke ich mich im Vorraus!!!! Gruß
 

Anhänge

  • Anschluss scanner.jpg
    Anschluss scanner.jpg
    174,9 KB · Aufrufe: 38
Zuviel Werbung?
-> Hier kostenlos registrieren
Hey,
Auf jeden Fall danke für die rasche Antwort. Leider versteh ich nicht genau was du meinst. Ich habe nur einen 6-poligen PS2-Stecker mit offenem Kabelende. D-Subs sind soweit ich weiß 9-polig oder mehr.
Kann ich denn überhaupt die Anschlussbox direkt mit der SPS verbinden? Den INIT-Baustein hab ich eigentlich schon richtig konfiguriert nur leider kommt kein Signal an.
Dein Link funktioniert leider nicht bei mir :|

Gruß Dima
 
Ich bin hier am verzweifeln. Hab jetzt alles angeschlossen, aber es kommt immer noch nichts an :(.
RS232_Para.jpg
Sind die Bausteine so richtig? S1 ist bei mir ein Schalter. Unten bei DATA haben ich bei der Variable "Daten" den Datentyp BYTE; in der Hilfe zum FB steht aber dass das ARRAY of Byte sein muss ich finde dazu aber keine Datenstruktur. Oder muss ich vielleicht einen anderen Datentyp auswählen?


Gruß Dima
 
Gibt es Vorlagen für solche Datentypen wie z.B. für den T_RS232 ?
Wann bzw. wie sehe ich denn ob überhaupt etwas an der SPS angekommen ist?

Hab das hier bei Wiki gefunden:

"Zur Vermeidung von Datenverlusten muss der Empfänger die Datenübertragung anhalten können, wenn keine weiteren Daten mehr verarbeitet werden können. Dieser sogenannte Handshake kann auf zwei Arten realisiert werden, entweder softwareseitig über bestimmte Steuercodes oder über spezielle Leitungen (Hardware-Handshake)."

"Beim Software-Handshake sendet der Empfänger zur Steuerung des Datenflusses spezielle Zeichen an den Sender. Entsprechend werden für die Datenübertragung lediglich drei Leitungen (RxD, TxD und Gnd) benötigt, aber diese Art Handshake ist nur dann möglich, wenn die beiden Steuercodes in den Nutzdaten nicht vorkommen."

Ist so ein Software-Handshake an der SPS überhaupt möglich?

Sorry wenn ich zu viel Frage:rolleyes:. Mach sowas zum ersten mal. Ich bin eigentlich Zerspaner.

Gruß Dima
 
In der Hilfe zu RS232_INIT steht es.
Code:
TYPE
	T_RS232 : STRUCT
		protocol        :INT; (* 0: Transparent, Datenübertragung ohne Protokoll *)
		baudrate        :INT; (* 3: 1200kBit, 5: 2400kBit, 6: 4800kBit, 7: 9600kBit, 8: 19200kBit, 9: 38400kBit, 10: 57600kBit, 11: 115200kBit *)
		databits        :INT; (* 4: 8 Datenbits, gerade Parität *)
		stopbits        :INT; (* 1: 1 Stopbit *)
		flowcontrol     :INT; (* 0: nicht unterstützt *)
		error_pattern   :INT; (* nicht unterstützt *)
		first_delimiter :INT; (* nicht unterstützt *)
		second_delimiter:INT; (* nicht unterstützt *)
		XON_pattern     :INT; (* nicht unterstützt *)
		XOFF_pattern    :INT; (* nicht unterstützt *)
	END_STRUCT;
END_TYPE
Und das Array of Byte ist ja einfacher.
Code:
TYPE
	Testarray : ARRAY[0..9] OF BYTE;
END_TYPE
Ob du jetzt 10 Felder hast oder mehr willst, musst du natürlich entscheiden.
Musst mal schauen bei dem Scanner. Evtl. verlangt er CR, LF, EOT oder ETX oder so, was du dann ans Ende packen musst. Das ist dann quasi das Handshake.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hab es jetzt hingekriegt... Die Pinbelegung meines RS232-Steckers hat nicht zur Buchse der SPS gepasst. Hätte ich das bloß vorher gewusst :ROFLMAO:!
Danke für die Hilfe @Mobi!!!

Eine Frage hätte ich noch: Ich will das ganze jetzt noch ordentlich über WebVisit visualisieren. Habe das Schema schon soweit fertig und hab auch ein paar "Buttons" eingefügt. Wie kriege ich es hin diese "Buttons" wie Taster arbeiten, sprich der Button soll nur so solange an sein wie ich drauf drücke und nicht erst dann aus gehen wenn ich ein 2tes mal draufdrücke.

Gruß Dima
 
Gibt es zum Thema PC Worx und RS232 Schnittstellen eigentlich eine Anleitung, BA oder ähnliches? Ich konnte bis jetzt noch nichts wirklich brauchbares finden.

@ Mobi dein Link im zweiten Post ist leider nicht mehr Aktuell!
 
Der Link funktioniert leider auch nicht(verschieden Rechner und Browser probiert).

Anwendungsbeispiele? Ich finde beim Hersteller (IB IL RS 232-PAC - 2861357) nur die Funktionsbausteine aus den man wenigsten etwas herausnehmen kann. Aber wie man diese in ein Laufendes Projekt einfügt hab ich noch nicht herrausgefunden.

Beim Versuch mit den Im PC Worx implementierten Bausteinen zu verwirklichen kommt bei mir z.B. folgende Fehlermeldung.

"Firmenware POE RS232_init nicht gefunden! wahrscheinlich nicht implementiert für Prozessortyp ILC330ET_395."



MfG Vektorhektor
 
Such einfach nach dem Artikel 2730611 bei Phoenix.
Ich mal gehört zu haben, dass man nur von der ILC 1xx Serie die Onboard-RS232 nutzen kann für eigene Zwecke. Bei der ILC 3xx ist diese nur zum programmieren vorgesehen. Also kannst du dann nur das über die Klemmen machen.
Also kannst du RS232_Init garnicht nutzen, weil dieser und RS232_Send und RS232_Receive sind ja nur für die Onboard-Schnittstelle.
Und für die IB IL RS 232-PAC musst du dann die Funktionsbausteine aus der Bibliothek nutzen.
Aber wie man diese in ein Laufendes Projekt einfügt hab ich noch nicht herrausgefunden.
Bibliothek einfügen und die Bausteine einfach reinziehen???
Die Anwendungsbeispiele findest du bei der jeweiligen Steuerung unter Downloads, also in deinem Fall bei der ILC 330 ETH.
Dort gibt es "pc_worx_5_x_examples_comserial_v1_30.exe".
Da wird zwar mit der PRO-Variante der IB IL RS 232 gearbeitet, aber es hilft dir denke ich mal trotzdem weiter.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bibliothek einfügen und die Bausteine einfach reinziehen???

Ja genau so würde jeder vorgehen, klappt nicht da ja PC Worx als Bibliotheken nur *.fwl Dateien akzeptiert. Bei den Funktionsbausteinen die man vom Hersteller laden kann sind zwar viele Dateien dabei aber solche natürlich nicht. Oder muss man da wie für das Firmenware update der 150 ETH Dateinamen abändern.:confused:


Also kannst du RS232_Init garnicht nutzen, weil dieser und RS232_Send und RS232_Receive sind ja nur für die Onboard-Schnittstelle.

Wie soll man das, als neuer Benutzer, wissen?
Kann man solche Sachen nicht in der integrieren Hilfe mit reinschreiben. Da sind doch auch die I/Os der jeweiligen Bausteine erklärt.

MfG Vektorhektor
 
Hallo VektorHektor,

im Download Bereich bei Phoenix Contact, findest du eine Bibliothek für die RS232 Klemme.
Die Bibliothek lautet: Serielle Kommunikation (Version 1.14)
Hier der Link zum Download Bereich https://www.phoenixcontact.com/onli...ff65becb/19da74bb-7f89-4c8e-9911-f903ff65becb

Diese Bibliothek kannst du in deinem PC Worx Projekt als Anwenderbibliothek einfügen (Rechtsklick links im Projektbaum-Fenster auf Bibliotheken).
Anschließend kannst du dann die Bausteine, per Drag&Drop, in dein Programm reinziehen. Die Anwendungsbeispiele z.B. "pc_worx_5_x_examples_comserial_v1_30.exe" sind nicht als Baustein-/Anwenderbibliotheken gedacht.

Bitte nicht Firmwarebibliotheken (*.fwl) mit Bausteinbibliotheken (*.mwt) verwechseln.

Ich hoffe dir damit geholfen zu haben.

MfG
Philipp
 
Deswegen heißen sie ja auch Beispiele und nicht Bibliotheken.
Und das mit der dürftigen Hilfe kenn ich. Deswegen einfach Try-And-Error ;).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das mit den Bibliotheken bzw. Beispielen wollte ich nur noch mal erwähnen, da ich den Eindruck hatte, als ob hier versucht wurde die Beispiele als Bibliothek einzubinden.
Die Hilfe könnte manchmal durchaus etwas umfangreicher sein, wobei ich sagen muss, bis jetzt haben wir das immer alles hinbekommen. ab und zu auch mal nach der Methode von Mobi :ROFLMAO:

Noch kurz eine Anmerkung:
Zitat von Mobi:
Also kannst du RS232_Init garnicht nutzen, weil dieser und RS232_Send und RS232_Receive sind ja nur für die Onboard-Schnittstelle.


Zitat von VektorHektor:
Wie soll man das, als neuer Benutzer, wissen?
Kann man solche Sachen nicht in der integrieren Hilfe mit reinschreiben. Da sind doch auch die I/Os der jeweiligen Bausteine erklärt.

Im PC Worx steht hinter den Bausteinen der Hinweis bzw. die Bschreibung, dass Bausteine RS232_INIT, RS232_RECEIVE und RS232_SEND nur für die lokale serielle Schnittstelle sind.

Grüße
Philipp
 
Danke für die schnelle Hilfe unter Anwenderbibliothek verstehe ich eigentlich was anderes aber egal.

Original Hilfetext lautet

"RS232_INIT

Beschreibung

Mit dem Funktionsbaustein RS232_INIT parametrieren Sie die serielle RS232 Schnittstelle.

Nach der fehlerfreien Parametrierung können Sie die Funktionsbausteine RS232_SEND und RS232_RECEIVE nutzen, um Daten über die serielle Schnittstelle zu senden und zu empfangen."
 
Der Hilfetext ist richtg, den habe ich auch so. Aber rechts im Editor-Assistent, steht hinter dem Namen des Bausteins eine kurze Beschreibung(wozu dieser geeignet ist).
Bei mir steht dort folgendes:
wc IZOx78wmUQAAAABJRU5ErkJggg==


Was verstehst du unter einer Anwenderbibliothek? Unter PC WORX wird damit eine Bausteinsammlung (egal ob selber erstellt oder frei wie OSCAT) gemeint.
 
Zurück
Oben