Hallo zusammen,
habe bei mir ein grosses Problem.
Ich habe als Entwicklungsumgebung für meine Beckhoffkomponenten eine Urversion von TwinCat X64 (Tc211x64Engineering_2110_2034) benutzt. Als ich Anfangs mit der libery von OSCAT 311 Version in die TwinCat PLC eingefügt habe gab es keine Probleme beim übersetzen. Nun habe ich mir die neue Version von TwinCat herunter geladen und nun kommt beim Übersetzen die Fehlermeldung ERROR 3117:
(-1): Expression too complex. No more register available.
Nun kann ich auch leider meinen CX9010 nicht mehr mit dem Programm bespielen.
Viele sagen jetzt sicher dann benutze das alte Programm, dass geht leider nicht , weil man mit dieser Version leider kein zweites SPS Bootprojekt unter dem Systemmanager einstellen kann. Die anderen Versionen von Beckhoff gehen leider auch alle nicht habe ich schon getestet . Diese haben andere Bags die das Safetyfile aufspielen auf eine EL6900 nicht ermöglichen.
Zu guter letzt habe ich beim Support von Beckhoff nachgefragt. Dort haben Sie mir am Anfang nicht geglaubt, nach Wochenlangen hin und her hat mir ein Entwickler geschrieben, (ich zitiere)
ich habe von unserem Support gehört, dass Sie Probleme bei der Verwendung der OSCAT Lib in Zusammenhang mit TwinCAT haben. Folgendes haben wir festgestellt:
- Sollte nur auf den ARM Plattformen auftreten.(Habe ich)
- Bei ARM ist die Anzahl der Register die vom Compiler verwendet werden können begrenzt.
- In älteren Version hat der Compiler das nicht streng geprüft. Ob und welche Konsequenzen das gehabt haben mag, kann nur 3S beantworten.
- In neueren Compilerversionen werden jetzt die Register kontrolliert. D.h. wenn die Anzahl der vom Compiler her notwendigen Register größer ist als die zur Verfügung stehenden, wird der Compile mit Fehler abgebrochen.
- Einzige Chance besteht in einer Änderung des Codes (d.h. in der OSCAT Lib). D.h. es müssen an den Stellen mit sehr komplexen Ausdrücken Zwischenvariablen eingefügt werden.
Das gleiche Problem besteht bei der OSCAT Basic 333
Wo soll ich da in der OSCAT Lib ansetzen? Habt Ihr Anregungen?
Vielen Dank
Gruss bergheimerfuchs