Python soll selber probieren
Verfasst: Sonntag 17. Juni 2018, 17:58
Hallo zusammen,
ich habe eine relativ alte Anlage, die sich nur über die COM Schnittstelle Programmieren lässt. Leider gibt es kein wirkliches Handbuch dafür und auch selber ist die Anlage nicht besonders gesprächig.
Im Prinzip bleibt nur testen bis man die richtigen Befehle findet.
Ich habe in handschriftlichen Aufzeichnungen gefunden, dass die Anlage Befehle in folgendem Muster entgegennimmt:
.m1ud=5
das kann ich aus testen und funktioniert soweit. .m1ud ist dabei der Parameter der gesetzt werden soll und 5 der Wert. Leider brauche ich Befehle wo ich nicht mal genau weiß ob diese existieren.
Was aber ein kleiner Lichtblick ist, wenn ich z.B. nur .m1ud eingebe, bekomme ich ein kleine Erklärung zurück. Bei einem Befehl, die die Anlage nicht kennt, gibt es keine Antwort.
Meine Idee ist jetzt: einmal durchprobieren, da der der das System gebaut hat nicht mehr nicht mehr greifbar ist.
Aller Wahrscheinlichkeit nach bestehen alle befehle und Parameter aus einem 1-6 Zeichen langen String auf Buchstaben und Zahlen.
Ich bin also angefangen und wollte ein Python Script schreiben welches alle möglichen Kombinationen erzeugt und dann einmal testet, eine Sekunde wartet und dann weiter macht. Wenn ein Treffer erfolgt ist, wird das ganze dokumentiert.
Mit ist bewusst, das das ganze wahrscheinlich Tage bis Wochen dauern kann bis alle Kombinationen durchprobiert sind, ist aber immer noch die angenehmere alternative als die Anlage neuprogrammieren zu lassen bzw. zutauschen.
Leider habe ich eine kleine Gedankenblockade beim schreiben des Erzeugen der Werte.
Hat jemand eine Idee, wie der Code aussehen muss, wenn ich oben die möglichen Zeichen und die Max Länge angeben und unten sollten dann nacheinander alle möglichen Werte rauskommen. Bei mir kommt immer nichts richtiges bei raus. Im Prinzip dürften es ja nur mehrere Schleifen sein, ich bekomme die aber nicht auf die Reihe...
Der Restliche Ablauf ist fertig und funktioniert, nur eben das erzeugen der werte noch nicht.
Vielen Dank für Eure Hilfe.
ich habe eine relativ alte Anlage, die sich nur über die COM Schnittstelle Programmieren lässt. Leider gibt es kein wirkliches Handbuch dafür und auch selber ist die Anlage nicht besonders gesprächig.
Im Prinzip bleibt nur testen bis man die richtigen Befehle findet.
Ich habe in handschriftlichen Aufzeichnungen gefunden, dass die Anlage Befehle in folgendem Muster entgegennimmt:
.m1ud=5
das kann ich aus testen und funktioniert soweit. .m1ud ist dabei der Parameter der gesetzt werden soll und 5 der Wert. Leider brauche ich Befehle wo ich nicht mal genau weiß ob diese existieren.
Was aber ein kleiner Lichtblick ist, wenn ich z.B. nur .m1ud eingebe, bekomme ich ein kleine Erklärung zurück. Bei einem Befehl, die die Anlage nicht kennt, gibt es keine Antwort.
Meine Idee ist jetzt: einmal durchprobieren, da der der das System gebaut hat nicht mehr nicht mehr greifbar ist.
Aller Wahrscheinlichkeit nach bestehen alle befehle und Parameter aus einem 1-6 Zeichen langen String auf Buchstaben und Zahlen.
Ich bin also angefangen und wollte ein Python Script schreiben welches alle möglichen Kombinationen erzeugt und dann einmal testet, eine Sekunde wartet und dann weiter macht. Wenn ein Treffer erfolgt ist, wird das ganze dokumentiert.
Mit ist bewusst, das das ganze wahrscheinlich Tage bis Wochen dauern kann bis alle Kombinationen durchprobiert sind, ist aber immer noch die angenehmere alternative als die Anlage neuprogrammieren zu lassen bzw. zutauschen.
Leider habe ich eine kleine Gedankenblockade beim schreiben des Erzeugen der Werte.
Hat jemand eine Idee, wie der Code aussehen muss, wenn ich oben die möglichen Zeichen und die Max Länge angeben und unten sollten dann nacheinander alle möglichen Werte rauskommen. Bei mir kommt immer nichts richtiges bei raus. Im Prinzip dürften es ja nur mehrere Schleifen sein, ich bekomme die aber nicht auf die Reihe...
Der Restliche Ablauf ist fertig und funktioniert, nur eben das erzeugen der werte noch nicht.
Vielen Dank für Eure Hilfe.