Fortsetzung von ST Problemen

COOLT

Level-1
Beiträge
98
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Gude ich bins schon wieder. Hoffe ich nerv euch nich mit so vielen Problemen in so kurzer Zeit.
Also in meinem ersten Thread habe ich ja diesen C++ Code in ST umgewandelt und das dank euch mit Erfolg nach ähm lasst mich grob schätzen 5 Arbeitstagen des nicht vorankommens. (Hätte ich nur dieses Forum eher entdeckt xD).
So nun is also mein erster FB fertig jetz brauch ich wieder eure Hilfe für die nächsten.
Problem:
Mein Problem ist es nun mittels des TwinCAT PLC Control Programms auf ein anderes auf diesem Rechner befindlichem Programm zuzugreifen. Namentlich HyperTerminal.
Wie mache ich so eine verknüpfung? das TwinCAT mir das Programm öffnet und dann die Daten die dort ankommen direkt an TwinCAT zurückgeschickt werden?

Mfg
COOLT
 
Was willst du denn genau machen? Erklär doch mal bitte deinen Backround. Vllt gibt es ja noch andere Möglichkeiten als die von dir genannte.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich will Mittels eines Kartenlesers eine Verschlüsselte Information abrufen über eine RS232 Schnittstelle. Diese soll über ein CX1500-M310 und CX1100-0002 wo die KL6001(RS232 Schnittstelle) und eine KL6021(RS422 Schnittstelle) von Beckhoff angeschlossen ist mit dem PC Kommunizieren. Und das Programm soll dafür sorgen dieses Hyperterminal zu öffnen wo dann die gescannten Daten hingeschickt werden dechiffriert wieder zurückgeschickt werden und über ein Algorithmus dann zur Personalnummer umgewandelt werden. Und mein Problem nun ist erstmal die Kommunikation zwischen Beckhoff System und Kartenleser anzuschließen und dann das Beckhoff System gleichzeitig noch mit dem Rechner verbunden zu haben. Das nächste Problem dann wäre in dem Programm einen Befehl zu schreiben der mir dieses Hyperterminal auf dem Rechner aufmacht um die Daten dorthin zu übermitteln.

Also wie bekomme ich in mein Programm einen Befehl der mir das Hyperterminal öffnet? Als erste Frage.
 
Das mit Hyperterminal verstehe ich nicht ganz. Die eingehenden Daten werden, wenn Schnittstelle etc. richtig konfiguriert, dort angezeigt. Dann kann der Benutzer etwas eintippen und dies wird dann über die Schnittstelle ausgegeben. Soll der Benutzer etwas machen? Oder soll automatisch etwas ablaufen? Wofür dann HT? Wenn schon, warum nicht HT im Autostart hochfahren?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nein nein HT is ein Programm auf meinem Rechner aber das Programm was ich schreibe wird ja dann am Ende auf das Beckhoff System geladen und soll nur mit dem Kartenleser und dem Rechner Kommunizieren.
Der Kartenleser liest etwas diese Daten sollen an das HT geschickt werden welches über irgendeinen Befehl vom Beckhoff System geöffnet werden soll. Das HT soll lediglich die einkommenden Daten mir anzeigen und diese dann wieder an das Beckhoff System zurückleiten. Wo die ja dann dechiffriert werden mit dem genannten Algorithmus. Der Rest von meiner Aufgabe wird sowieso meinen Horizont übersteigen.
Danke schonmal für die Hilfe im vorraus.

Edit: Ich könnte das HT auch im Autostart hochfahren lassen, aber dann muss ich immer noch für die Kommunikation zwischen dem Programm und der SPS sorgen. Und das is eigentlich der ganze Knackpunkt an der Sache. Weil meine Kollegen wollen mir das nich erklären. Fragt mich nich warum.

EDIT: @bonatus vielen dank ich denke die Funktion wird mir zumindest das aufrufen abnehmen. Jetzt nur noch den Datenverkehr regeln. Ich kann über das HT die Eingelesenen Daten in eine TxT Dateischreiben lassen.
Kann ich den inhalt der TxT datei dann wieder vom TwinCAT auslesen lassen?
 
Zuletzt bearbeitet:
Du willst das HT also nur dafür benutzen deine Daten vom Kartenleser zu visualisieren?

Wieso nimmst du nicht einfach ein kleines Display, das mit dem CX verbunden ist und machst das ganze darüber?

Andere Idee: Du nimmst einen BK statt einem CX und einen Rechner dazu. Dein Programm würde dann auf dem PC laufen und der BK macht nur die Hardware-Anbindung. Dann könntest du direkt auf dem PC dann auch gleich die Daten visualisieren und bräuchtest kein HT.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hab eben schon meinen Beitrag nochmal verändert gehabt ich schreibs nochmal hier dazu:
Jetzt nur noch den Datenverkehr regeln. Ich kann über das HT die Eingelesenen Daten in eine TxT Dateischreiben lassen.
Kann ich den inhalt der TxT datei dann wieder vom TwinCAT auslesen lassen?

Ich brauche die rücksendung der Daten weil diese ja noch dechiffriert werden müssen um danach dann wiederum in einer Tabelle mit anderen verglichen werden aber dazu später mehr. Das is mehr Intern wieder.
Danke schonmal.
 
hm o.k. wenn ich jetz das HT weglasse weil ich eine TxT datei auf der SPS erstellen kann, wie bekomme ich es dann hin das er die Daten von dem Kartenleser empfängt und dann diese TxT Datei erzeugt? weil in dem was du gepostet hast steht nur n FileCopy drin.

EDIT: k. vergiss es wieder ich habs eben gefunden ich meld mich wieder wenn ich weiter probleme habe. VIELEN DANK EUCH

Ich mach jetz erstmal Feierabend xD
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hinweis: Die Txt-Datei kannst du nur erzeugen, wenn du mit einem PC arbeitest. Also sprich BK + PC.

Dann bekommst du deine Daten vom Kartenleser über die KL6001. Diese kannst du dann in die Datei schreiben.
Und zwar folgendermaßen:
Datei öffnen mit FB_FileOpen, Daten schreiben mit FB_FileWrite und danach Datei wieder schließen mit FB_FileClose.

Wenn du noch Interesse hast, kann ich dir mal ein Beispiel-Projekt zum Erzeugen von Dateien zukommen lassen.

Edit:
Wie genau es funktioniert, dass du deine Daten vom Kartenleser über die RS232 bekommst, kann ich dir auch nicht auswendig sagen.
 
Zuletzt bearbeitet:
K einer meiner Kollegen hat mir gerade gesagt so wie ich das machen will mit den ganzen Strings und so geht das überhaupt nicht weil meine Schnittstelle mir nur USINT als Eingangsformat reingibt. Nu muss ich gucken wie ich das ganze auf USINT umschreiben kann. Wir gehen davon aus das die Daten die eingelesen werden direkt als Hex werte eingelesen werden. Ich will das ganze jetz erstmal testen. Hat irgendwer ne Idee wie man bei TwinCAT ne zuweisung mit hex macht? Also:
Code:
aData[0]:=h#6F
oder so. müsste halt ma wissen wie man ne hex zuweisung macht weil bei Zeit
Code:
Time:=T#6s
geht es ja so.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
o.k. danke dir bin zwar jetz noch nich dazu gekommen meinen Algroithmus zu probieren aber ich hab ma das Beispiel Programm aus Beckhoff CX, Probleme mit serieller Schnittstelle und das is genau was ich gebraucht habe. Habe es zwar stark verändert, da ich vorerst nur die KL Abfrage brauche und nicht die ComPort Abfrage und auch keine Strings sende sondern Bytes aber egal jetz erstmal. Das nimmt mir die ganze arbeit schonma ab für das empfangen. Jetzt habe ich nur noch ein Problem mit dem Receive weil irgendwie empfängt das teil andere Daten als das Hyperterminal. Ich muss, denke ich mal, die KL6001 nochma umparametrieren damit ich da genauere daten bekomme. So wie ich se brauche. Sage euch dann Bescheid wenn ich nit mehr weiter weis.
Gruß
COOLT
 
Zurück
Oben