Home || Zur XML Code Processor Hauptseite || Hardware Industrieterminals ||


Tutorial:

 

PC Programm TRM Code Generator verwenden -
oder: wie Sie mittels Code Generator eine XML Konfigdatei programmieren...

Vorweg eine Entschuldigung: Überschrift passt nicht richtig! Verzeihung! Mit dem TRM Code Generator programmieren Sie nicht - Sie konfigurieren. In der Praxis erstellen Sie eine neue, eigene XML Konfigurationsdatei für den XML Code Processor. Dieser wiederum "interpretiert" Ihre Konfigurationsdatei und führt sie als Programm aus.

Richtig hätte es demnach heißen müssen: Wie man mit Hilfe des PC Programmes TRM-CODE-GEN.EXE neue XML Konfigurationsdateien für den XML Code Processor erzeugt. Aber ehrlich - ist das eine Überschrift oder ein Roman? Kurzum: die "richtige" Überschrift war mir zu lang und langweilig. Wenn Sie das übrigens schon einmal gemacht haben, werden Sie diesen Text auch als "überaus langweilig" empfinden. Auf der anderen Seite habe ich festgestellt, dass der eine oder andere doch mal gerne einen Einführungstext durchliest - und daher und bevor Sie endlos herumprobieren und spielen - hier das kurze Tutorial.

Ach so - und bevor es losgeht: Wenn Sie mit dem XML Code Processor oder dem TRM Code Generator zum ersten Mal konfrontiert sind: hier finden Sie weitere Informationen!

Die Ausgangsbasis: Ich gehe davon aus, Sie haben ein Industrieterminal TRM/xx Gerät und das PC Programm TRM-CODE-GEN.EXE vorliegen. Sie wollen das PC Programm dafür verwenden, ein kleines Programm für das Industrieterminal zu erzeugen. Das Programm ist ja kein Programm im eigentlichen Sinn, sondern "nur" eine XML Konfigurationsdatei, die vom XML Code Processor auf dem TRM/xx als Programmablauf interpretiert wird.

Doch bevor wir uns in diese Feinheiten verlieren: bitte investieren Sie in ein paar Gedanken, wie Ihr Programm auf dem Industrieterminal aussehen soll. Beispiel: Sie haben ein TRM/416. Das bedeutet, Sie haben ein Display von 4 Zeilen a 20 Zeichen und eine Tastatur, um Texte und Ziffern einzugeben. Sie können jetzt ein Programm erzeugen, das beliebig viele Displays verwendet, die in Abhängigkeit der Benutzereingaben aufgerufen werden.

Gut, um es einfacher zu machen: Ich möchte als Beispiel eine kleine Datenerfassung konfigurieren, bei der ein Benutzer eine Mitarbeiter- und eine Auftragsnummer eingeben soll. Um das Ganze spannender zu gestalten, soll am Anfang des Programmes so etwas wie ein Hauptmenü kommen, aus dem der Benutzer die Datenerfassung starten kann.

Ganz einfach gesprochen, soll Ihr Programm daher zwei Displays erhalten, die so oder so ähnlich aussehen - nicht schön, aber praktisch:

 

 

 

 

Schritt 1: PC Programm TRM-CODE-GEN.EXE auf dem PC starten

Starten Sie das PC Programm. Das Programm "zerteilt" Ihren Bildschirm in zwei Hälften: oben sehen Sie eine XML Datei als Tabellendarstellung (ähnlich Excel), unten die Detailfelder eines XML Datensatzes.

Bei den Detailfeldern finden Sie einige "Blöcke", die auf die ich mich nachstehend immer beziehen werde:

OBJECT-ID/NAME - hier kommt der Objectname hinein. Das ist kein Block, sondern nur ein Feld. Aber ein Wichtiges! Daher seine Alleinstellung.

TEXT - hier wird der Text im Display definiert. Zu jedem Text muss die Position in Zeile und Spalte angegeben werden. Sie können mehrere Texte in einem Display definieren.

INPUT - hier werden Eingaben definiert. Eine Eingabe definieren wir als "Folge von Texten oder Ziffern", um z.B. eine Artikelnummer einzugeben. In diesem Block beschreiben Sie daher, an welcher Stelle im Display die Eingabe erlaubt ist, wie lang sie ist, ob Zahlen / Texte oder Barcode / RFID zulässig sind, ob die Eingabe gespeichert werden soll und ganz wichtig: was das Programm tun soll, wenn die Eingabe erledigt ist.

SONDERTASTEN - hier werden Funktionstasten definiert. Funktionstasten definieren wir als Sondertasten, die der Benutzer anstelle einer Eingabe drücken kann. Auf Ihrem PC heissen die F1 bis F12. Auf dem Industrieterminal können Sie jede Taste als Sondertaste verwenden.

LCD PREVIEW - hier erhalten Sie eine Voranzeige, wie Ihre Eingabe (TEXT und INPUT) im Display aussehen wird. Hier können Sie gar nichts eingeben - aber Sie erhalten eine Voransicht, wie Ihr Display auf dem Industrieterminal voraussichtlich aussehen wird. Der Inhalt der Blöcke TEXT und INPUT wird dazu ausgewert und es wird ein Preview aufgebaut.

Natürlich sind die oberen und unteren Felder im Moment noch leer. Sie haben ja noch keine XML Konfigurationsdatei geladen oder erzeugt. Sie erhalten also eine leere Erfassungsmaske. Daten existieren noch nicht.

Schritt 2: Hauptmenü anlegen, XML Datensatz START

Object-ID / Name:

Zuerst und wie immer im Leben: ein Objekt muss erst einmal einen Namen erhalten, z.B. den Namen START. Diesen Namen tragen Sie unter "ObjectID/Name" ein. Das Ganze ist wenig aufregend. Spannender wird es vielleicht, wenn Sie das Display (also die Anzeige) definieren dürfen. Verwenden Sie dazu die Felder im Block TEXT.

TEXT: CLR/LCD löschen:

Entscheiden Sie zuerst, ob das Display gelöscht werden soll, wenn START aufgerufen wird. Am Programmanfang ist das immer recht sinnvoll, also setzen Sie ein Kreuz in das Feld "CLR/LCD löschen".

TEXT: Zeile / Spalte / Text

Definieren Sie dann den Text, den Sie im Display sehen möchten. Spezifizieren Sie jeweils die Zeile / Spalte und den zugehörigen Text. Beachten Sie dass Sie mehrere Texte im Display definieren können. Sie können das quer und wild durcheinander erledigen. Das Programm sorgt schon selbst dafür, dass hinterher alles richtig aussieht. Sie müssen nur sicherstellen, dass jeweils Zeile / Spalte / Text zusammenpassen und eine halbwegs sinnvolle Sache ergeben. Wenn Sie Ihr Ergebnis ab und zu mal im Display Preview sehen wollen: drücken Sie den Button LCD PREVIEW. (Hierbei wird nichts gespeichert, sondern lediglich eine Voransicht im Display ausgegeben. Sie können also nichts kaputt machen!)

INPUT:

Entscheiden Sie, ob der Benutzer eine Eingabe machen kann. Eingaben sind Text- oder Zifferneingaben, mit denen Sie etwas veranstalten wollen - im einfachsten Fall speichern. Da wir gerade ein Hauptmenü definieren, wird keine Eingabe notwendig. Der Block INPUT bleibt leer.

SONDERTASTEN:

Anders hingegen bei den SONDERTASTEN. Der Benutzer soll im Hauptmenü keine Eingabe tätigen, sondern eine Auswahltaste betätigen, z.B. F1, um die Datenerfassung zu starten. Definieren Sie unter "Key" F1 und "Object" MITARBEITER.

Hinweis: Denken Sie daran, das erste Modul mit einer Exittaste zu versehen. Zumindest in der Programmentwicklung. So können Sie das Programm jederzeit verlassen und eine neue / geänderte XML Konfigdatei ausprobieren. Geben Sie z.B. im Block SONDERTASTEN ein: F4, Exit.

So, das war es. Mehr soll ein Haupt- und Auswahlmenü nicht machen:

Wenn Sie das erste Modul spezifiziert haben: drücken Sie den Button NEUE ZEILE.

Ihre erste XML Datenzeile mit dem Name START wurde nun angelegt. Ihr Programm hat einen Anfang!

Jetzt wollen wir noch ein zweites Modul anlegen, um z.B. die Mitarbeiternummer einzugeben und zu speichern.

Schritt 3: Eingabemodul anlegen, XML Datensatz MITARBEITER

Toll, im Schritt davor haben Sie ein Hauptmenü angelegt, das eine Datenerfassung namens MITARBEITER startet. Die müssen wir jetzt definieren. Blöderweise sind die Detailfelder noch mit den alten Werten gefüllt. Um die Detailfelder zu löschen: drücken Sie den Button X. (Das rote X)

Alle Detailfelder mit Ausnahme des LCD Preview werden gelöscht. Der XML Datensatz bleibt natürlich unverändert. Der LCD Preview bleibt allerdings stehen. Das ist manchmal hilfreich, wenn man mehrere Eingaben in einem Display definieren möchte.

Nun geht es eigentlich weiter wie bisher:

Object-ID / Name:

Legen Sie eine "ObjectID/Name" mit MITARBEITER an. (Zur Erinnung: das haben wir im vorherigen Hauptmenü als Sprungziel für F1 definiert. Achten Sie auf die gleiche Schreibweise.)

TEXT: CLR/LCD löschen:

Entscheiden Sie, ob Sie beim Aufruf dieses Moduls das Display löschen wollen. Setzen Sie dann bitte ein Kreuz im Feld CLR/LCD löschen.

TEXT: Zeile / Spalte / Text

Geben Sie anschließend den Text zur Eingabe eines Mitarbeiters an.

Bis hierher war alles eine Wiederholung des ersten Displays. Jetzt möchte ich Ihre Fantasie anregen und etwas Spaß erzeugen:

Drücken Sie den Button NEUE ZEILE, um diesen halben Datensatz als XML Datensatz MITARBEITER zu speichern.

Sie sehen im oberen Tabellenteil den neuen Datensatz. Der Datensatz ist markiert und wird auch gleich in den Detailfeldern ausgelesen. Bei diesem Datensatz wollen wir nun einen Eingabe im Block INPUT haben.

INPUT:

Die wenigsten Menschen können aus dem Kopf heraus ermitteln, an welcher Stelle im Display sie eine Eingabe haben möchten. Daher: Setzen Sie mit der Mouse den Cursor an die gewünschte Stelle im LCD Preview - und Sie erhalten unter dem LCD Preview eine Information über Zeile und Spalte, z.B. Zeile 1, Spalte 13.

Verwenden Sie diese Werte im Bereich INPUT "Zeile" und "Spalte", um Ihre Eingabe beginnen zu lassen. Definieren Sie anschliessend "Min" und "Max" Ihrer Eingabe, z.B. 1 und 4 für eine 1-4 stellige Mitarbeiternummer. Wählen Sie ob Numerisch oder Mixed Eingabe erlaubt ist. Das Feld Format füllt sich dann automatisch. Sie könnten hier noch Delimeter (Trennzeichen) eingeben, um z.B. eine Uhrzeit o.ä. als __:__ zu spezifizieren.)

Wenn Sie die Eingabe der Mitarbeiternummer speichern wollen: tragen Sie im Block INPUT im Feld "ID" eine Satzart bzw. Kennung ein unter der Sie die Eingabe später in der Erfassungsdatei finden und auswerten wollen, z.B. MA als ID / Satzart.

Und nun last-not-least: teilen Sie dem Programm mit, wohin es springen soll, wenn der Benutzer eine Mitarbeiternummer eingegeben hat. In unserem Fall soll im gleichen Display dann eine Auftragsnummer eingegeben werden. Tragen Sie als Sprungziel im Block INPUT im Feld "weiter nach Eingabe / Next" das Ziel AUFTRAG ein.

Ganz wichtig: Drücken Sie den Button UPDATE um die aktuelle XML Datenzeile zu aktulisieren.

Die Werte werden dann in der XML Datei übernommen, der LCD Preview wird geupdatet. (Wichtig: Vergessen Sie niemals UPDATE zu drücken, wenn Sie Änderungen in den Detailfeldern durchgeführt haben. Nur mit UPDATE werden die Änderungen übernommen!)

Schritt 4: Eingabemodul ändern, XML Datensatz AUFTRAG

Das war es! Sie können jetzt schon eine Mitarbeiternummer eingeben - und Ihr Programm wird dann abstürzen, weil es vergeblich versucht, den XML DAtensatz AUFTRAG auszuführen.

Doch nicht mit uns: Sie können jetzt einen neuen XML Datensatz AUFTRAG eingeben. Sie könnten dazu wieder das rote X drücken, den Text in den Detailfelder eingeben und dann eine NEUE ZEILE anlegen.

Aber: das müssen Sie nicht tun. Das Programm erkennt automatisch, wenn Sie den XML Datensatz AUFTRAG noch gar nicht besitzen! Zu diesem Zweck verwenden Sie den Simulationsmodus!

Der Simulationsmodus sind die kleinen > Schaltflächen neben den Sprungzielen. Drücken Sie drauf und das Programm will zur angegebenen XML Datenzeile springen. Wenn die nicht existiert, meckert das Programm und fragt, ob Sie diese Zeile neu anlegen wollen. (ab Version 1.3.16). In unserem Fall: bestätigen Sie das Gemeckere mit JA - und schon wird die Datenzeile AUFTRAG automaisch angelegt.

TEXT: Zeile / Spalte / Text

Jetzt sind Sie wieder dran: Definieren Sie im Block TEXT, wie Ihre LCD Anzeige aussehen soll. In unserem Beispiel wollen wir die vorherige Mitarbeiternummer im Display stehen lassen und in der zweiten Zeile eine Auftragsnummer eingeben. Geben Sie unter Text dann Zeile 2, Spalte 1 und unter den Text den gewünschten Text ein.

Drücken Sie UPDATE, um die Zeile AUFTRAG zu updaten. Sie erhalten dann sofort den neuen LCD Preview, jetzt fein säuberlich mit Mitarbeiter und Auftrag in Zeile 1 und 2.

INPUT:

Finden Sie heraus, an welcher Stelle im LCD Preview die Auftragsnummer eingegeben werden soll. (Cursor ins Feld LCD Preview setzen, Zeile / Spalte ermitteln.) Verwenden Sie diese Werte im Block INPUT um Zeile / Spalte Ihrer Eingabe zu definieren. Sagen Sie dann wie lang die minimale und maximale Eingabe Ihrer Auftragsnummer ist und ob nur Ziffern oder Ziffern + Text (Mixed) Eingaben erlaubt sind. Da wir bei der Auftragsnummer auch Eingaben über Barcodeleser oder RFID Transpondertag (alles über serielle Schnittstelle) zulassen wollen: setzen Sie ein Kreuz im Feld "Barcode BC".

Nun müssen Sie dem Programm noch zwei Sachen sagen: Unter "ID" die Satzart, wenn Sie die Auftragsnummer speichern wollen, unter "weiter nach Eingabe/Next" das Sprungziel nach erfolgreicher Eingabe. In meinem Beispiel möchte ich nach der Eingabe der Auftragsnummer zurück zum Hauptmenü START springen.

Vergessen Sie nicht, am Schluss Ihrer Änderungen den Button UPDATE zu drücken.

Die Datenzeile AUFTRAG wird übernommen.

Schritt 5: Programmablauf simulieren, Funktion >

Im Bereich INPUT, Feld "weiter nach Eingabe/Next" bzw. SONDERTASTEN hinter "Object" befinden sich mit > beschriftete Buttons.

Ich nenne das den "Simulationsmodus". Nutzen Sie die Schaltflächen, um sich durch Ihr neues Programm zu navigieren. Das Programm "springt" jeweils zum angegebenen Datensatz und zeigt die Werte in der Detailansicht an. Gleichzeitig können Sie im LCD Preview sehen, wir Ihr Display auf dem TRM/xx aussehen wird. Wenn Sie unbekannte XML Zeilen anspringen, können Sie diese anlegen lassen. Siehe Schritt 4.

Schritt 6: XML Datei speichern

Vergessen Sie nicht, Ihr Programm als XML Datei zu speichern. Menü DATEI ==> SPEICHERN UNTER. Geben Sie einen Dateinamen ein und speichern Sie Ihre Datei. (Denken Sie daran von Zeit zu Zeit zu speichern, damit Ihnen im Fall eines wie auch immer gearteten Programmabsturzes keine Daten verloren gehen. Wenn gewünscht können Sie auch den Schnellspeicherbutton XML SPEICHERN drücken.)

Schritt 7: FTP Transfer zum TRM/xx

Stellen Sie sicher, dass Sie im Menü FTP die richtigen FTP Werte für den File Transfer zum TRM/xx eingetragen haben. Im Menü FTP können Sie Ihre Verbindung gefahrlos testen.

Wenn alles läuft, drücken Sie den Button FTP TRM, um Ihre Datei an das TRM zu übertragen.

Schritt 8: Programm am TRM/xx ausprobieren. Fertig!

Nehmen Sie ein TRM/xx mit dem XML Code Processor, beenden Sie die laufende Anwendung (typischerweise mit der Exit Taste, die wir in unserem Beispiel im Schritt 1 unter SONDERTASTEN angelegt haben).

Starten Sie dann die Anwendung neu durch Drücken von ENTER. Wenn Sie alles richtig gemacht haben, sollte Ihre neue Anwendung nun im TRM/xx erscheinen uns ausgeführt werden.

Das war es schon! Sie können jetzt Ihr XML Programm beliebig modifzieren, erweitern oder was auch immer.

Die XML Datei zu diesem Beispiel

  <?xml version="1.0" encoding="Windows-1252" ?>
- <NewDataSet>
- <datacode>
  <Nr>0</Nr>
  <Object-ID>START</Object-ID>
  <CLR>1</CLR>
  <Text1-row>1</Text1-row>
  <Text1-col>1</Text1-col>
  <Text1>Betriebsdaten</Text1>
  <Text2-row>2</Text2-row>
  <Text2-col>1</Text2-col>
  <Text2>F1=BDE</Text2>
  <Text3-row>3</Text3-row>
  <Text3-col>1</Text3-col>
  <Text3>Bitte eingeben</Text3>
  <Input-BC>0</Input-BC>
  <Key1>F1</Key1>
  <Key1-next>MITARBEITER</Key1-next>
  <Key2>F4</Key2>
  <Key2-next>EXIT</Key2-next>
  </datacode>
- <datacode>
  <Nr>1</Nr>
  <Object-ID>MITARBEITER</Object-ID>
  <CLR>1</CLR>
  <Text1-row>1</Text1-row>
  <Text1-col>1</Text1-col>
  <Text1>Mitarbeiter:</Text1>
  <Input-row>1</Input-row>
  <Input-col>13</Input-col>
  <Input-min>1</Input-min>
  <Input-max>4</Input-max>
  <Input>____</Input>
  <Input-mode>N</Input-mode>
  <Input-BC>0</Input-BC>
  <ID>MA</ID>
  <Object-next>AUFTRAG</Object-next>
  </datacode>
- <datacode>
  <Nr>2</Nr>
  <Object-ID>AUFTRAG</Object-ID>
  <CLR>0</CLR>
  <Text1-row>2</Text1-row>
  <Text1-col>1</Text1-col>
  <Text1>Auftrag:</Text1>
  <Input-row>2</Input-row>
  <Input-col>9</Input-col>
  <Input-min>1</Input-min>
  <Input-max>8</Input-max>
  <Input>________</Input>
  <Input-mode>M</Input-mode>
  <Input-BC>1</Input-BC>
  <ID>AU</ID>
  <Object-next>START</Object-next>
  </datacode>
  </NewDataSet>
Die XML DateI zum Download
(Rechte Mousetaste, Speichern unter...)
Alle Dokumente zu diesem Thema:

XML Code Processor auf dem Gerät - auspacken und loslegen
XML Code Generator - PC Programm TRM-CODE-GEN.EXE Einführung
TRM-CODE-GEN - Installation und erste Schritte.
Tutorial: ein eigenes Programm erzeugen.
Expertenmodus - so gibt es mehr Funktionen
Exkurs - Variablen und Subroutines
TRM-CODE-GEN.exe - Programmbedienung ab Vers. 1.4.x
TRM-CODE-GEN.exe - Programmbedienung ab Vers. 1.5.x
- neu 2008-01
Beispiele und HowTos.


Technische Angaben auf diesen Seiten ohne Gewähr. Letzte Änderung: 01.09.2010
(c) hjw 2008 für
www.terminal-systems.de