Zerlegung String

Mike D
Beiträge: 529
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Zerlegung String

Beitrag von Mike D »

Nein, COM ist so eingestellt, das es durch das CR LF erkennt, dass eine Zeile zu Ende ist und gibt sie dann als String am Ausgang aus, ohne CR LF.
Am Ausgang erscheneinen also beide Strings abwechselnd.
Mit 2 $Hold könnte man diese beiden Strings jetzt einzeln speichern, als Trigger könnte man das "T" und "a" am Anfang der Strings benutzen. Hinter den $Holds kann dann jeweils $Part die einzelnen Werte rausfriemeln.
tmm
Beiträge: 392
Registriert: Montag 23. Februar 2009, 06:38

Re: Zerlegung String

Beitrag von tmm »

Hallo,

so wie MikeD das beschrieben hat würde ich es (jetzt, nachdem ich auch gemerkt habe, dass ASCII 10 & 13 in dem String gar nicht mehr drin sind :roll: ) auch machen.
Nach den $Hold-Bausteinen könnte man die Teilstrings zu einem String addieren und danach wie schon vorher beschrieben zerlegen.

Gruß MM
Mike D
Beiträge: 529
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Zerlegung String

Beitrag von Mike D »

warum erst zusammenführen um sie dann wieder zu trennen?
IKT
Beiträge: 554
Registriert: Mittwoch 4. November 2009, 18:32

Re: Zerlegung String

Beitrag von IKT »

Mike D hat geschrieben:warum erst zusammenführen um sie dann wieder zu trennen?
Naja, vielleicht, um eine konstante Ausgangsbasis zu schaffen, damit ein und dieselbe Zerlege-Routine eingesetzt werden kann?
++++++
Gruss/regards IKT
Mike D
Beiträge: 529
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Zerlegung String

Beitrag von Mike D »

so?
Dateianhänge
Zerlegung_Strings.prj
(5.21 KiB) 1111-mal heruntergeladen
tmm
Beiträge: 392
Registriert: Montag 23. Februar 2009, 06:38

Re: Zerlegung String

Beitrag von tmm »

Hi,

ja, ich habe es lieber einheitlich, deshalb würde ich aus den "Teilstrings" zuerst einen einzigen String machen.
Jetzt muss nur noch der Inhalt vom $Hold geleert werden, bevor neu eingelesen wird - nicht, dass da "alte" und "neue" Teilstrings gemischt werden.

Gruß MM
IKT
Beiträge: 554
Registriert: Mittwoch 4. November 2009, 18:32

Re: Zerlegung String

Beitrag von IKT »

Mike D hat geschrieben:so?
Nee, da fehlt noch der $Add (hinter den beiden Hold's), dann die 'einfache', kaskadierte String-Zerlegung ...
So wie tmm's Vorschlag.

Mögliche Alternative, für diese Ausgangslage, kann auch $Buffer sein? (da lesen/schreiben, unabhängig initiiert sind)
Zuletzt geändert von IKT am Donnerstag 14. Dezember 2017, 16:23, insgesamt 1-mal geändert.
++++++
Gruss/regards IKT
Mike D
Beiträge: 529
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Zerlegung String

Beitrag von Mike D »

wenn man sie erst mit add zusammen hängt, und der Speicherfühlerwert ist nicht da, sind alle folgenden Werte um einen verschoben.
Spart man sich das add bleiben die Werte vom CAN Modul an den richtigen Plätzen.
tmm
Beiträge: 392
Registriert: Montag 23. Februar 2009, 06:38

Re: Zerlegung String

Beitrag von tmm »

Hallo,

wenn die die Möglichkeit besteht, dass "mittendrin" Werte fehlen könnten, dann würde ich die zerlegten Strings anhand der vorangestellten Buchstaben zuordnen und nicht anhand der gesendeten Position.

So wie ich die Ausgangsfrage verstehe gibt es "nur grün" , "grün und blau" oder "grün, blau und rot" aber nicht "grün und rot" oder "blau und rot" oder so :roll:

Gruß MM
Marmelot
Beiträge: 31
Registriert: Samstag 9. Dezember 2017, 10:39

Re: Zerlegung String

Beitrag von Marmelot »

Danke für die Vorgaben. Ich werde mich heute Abend mal drüber her machen und testen.

Gruß Thomas
Marmelot
Beiträge: 31
Registriert: Samstag 9. Dezember 2017, 10:39

Re: Zerlegung String

Beitrag von Marmelot »

Die erste Zeile wird richtig zerlegt. Egal ob grün oder grün und blau. Danach kommt immer der Wagenrücklauf. Erst mit rot klemmt die Säge. Ich teste dann
Marmelot
Beiträge: 31
Registriert: Samstag 9. Dezember 2017, 10:39

Re: Zerlegung String

Beitrag von Marmelot »

So, ich habe das ganze etwas umgestrickt, aber irgendwo scheint noch ein Fehler zu sein :?:
Die Anwendung spinnt nach wie vor.
Dateianhänge
Neuer Entwurf.PNG
Neuer Entwurf.PNG (41.02 KiB) 29218 mal betrachtet
tmm
Beiträge: 392
Registriert: Montag 23. Februar 2009, 06:38

Re: Zerlegung String

Beitrag von tmm »

Hi,
der $Multiplexer muss weg, dann sollte es funktionieren.

Gruß MM
Marmelot
Beiträge: 31
Registriert: Samstag 9. Dezember 2017, 10:39

Re: Zerlegung String

Beitrag von Marmelot »

Guten Morgen,

ich habe den Multiplexer umgangen, doch es geht trotzdem nicht. Langsam bin ich am verzweifeln. $CONST5 habe ich auf T und $CONST6 auf a eingestellt. Kommt der String einzeilig geht es, wird er zweizeilig spinnt die Anwendung.

Gruß Thomas
Marmelot
Beiträge: 31
Registriert: Samstag 9. Dezember 2017, 10:39

Re: Zerlegung String

Beitrag von Marmelot »

Jetzt habe ich den String erstmal simuliert, wie Mike in seinem Pjojekt. Was bei Ihm läuft, läuft bei nicht. :?: Es leitet die erste Zeile auf §Part1 und $Part2, und dann die zweite Zeile auf beide
Dateianhänge
String simuliert.PNG
String simuliert.PNG (56.34 KiB) 29202 mal betrachtet
Mike D
Beiträge: 529
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Zerlegung String

Beitrag von Mike D »

zeig mal bitte was links von $mux2 ist, ich verstehe nicht wofür der da ist.
Und der erste String hat doch nur 14 Werte, dann kann aus Ausgang 15 nix mehr kommen und $Part3 ist da falsch.
Marmelot
Beiträge: 31
Registriert: Samstag 9. Dezember 2017, 10:39

Re: Zerlegung String

Beitrag von Marmelot »

Der $MUX war nicht angschlossen.
Dateianhänge
Test String.prj
(20.23 KiB) 975-mal heruntergeladen
Mike D
Beiträge: 529
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Zerlegung String

Beitrag von Mike D »

das ist ein Timingproblem das in manchen PL Projekten vorkommt.
Da hilft z.B. die $Delay-dll von IKT.
http://forum.abacom-online.de/viewtopic.php?f=42&t=4069

vor den $Hold muss die dll eingefügt werden.
Dateianhänge
Test String.prj
(21.13 KiB) 1082-mal heruntergeladen
Mike D
Beiträge: 529
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Zerlegung String

Beitrag von Mike D »

UPS, das nächste Problem.
Die dll ist auf 40 Zeichen beschränkt, das dürfte zu kurz sein.
Marmelot
Beiträge: 31
Registriert: Samstag 9. Dezember 2017, 10:39

Re: Zerlegung String

Beitrag von Marmelot »

Ein Timing Problem? Aber was ist denn bei test string.prj anders als bei zerlegung_strings.prj.?
Der String kommt aller 5 sekunden über den COM Port neu rein. Vieleicht hilft das.

Gruß Thomas
Antworten

Zurück zu „STRING-Verarbeitung“