Konflikt OSCAT 3.11 mit System Bibliothek IecSfc in CoDeSys 3.4

Begonnen von tufelix367, 14. Dezember 2010, 08:30:03

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

tufelix367

Ich verwende die OSCAT-Bibliothek für Codesys erst seit ein paar Tagen und bin auf folgendes Problem gestoßen:

Die OSCAT-Bibliothek 3.11 und die Systembibliothek IecSfc verwenden beide den Gleichen Namen für die Globale Variablenliste (Globale_Variablen).
Als ich die Konstante PI aus der OSCAT-Bibliothek einsetzen wollte bekam ich Fehlermeldungen beim Übersetzen, die sich auf die doppelte Verwendung  des Namens der Globalen Variablenliste beziehen.

Gibt es hierfür eine Lösung.

Danke im Voraus

Andy

peewit

öffne die bibliothek als projekt und ändere den namen

tufelix367

Danke, so funktionierts.

Aber,

sollte es nicht irgendwo eine Absprache geben, damit nicht 2 freigegebene Bibliotheken gleiche Namen verwenden?

peewit

im prinzip ja, aber keine firma wird sich nach oscat richten
die einzige möglichkeit ist, das oscat die probleme behebt

der klügere gibt immer nach :-)

hugo

naja das mit dem klügeren ist wohl richtig, aber besethende namen ändern würde bedeuten das die wirklich zahlreichen oscat user beim upade auf die nase fallen würden.

denke wir sind uns einig das wir das auch nicht wollen.

mir ist aber das problem noch nicht klar, die konstante PI kann es auch nicht sein den die heist bei uns genau aus diesem grund math.pi und das dürfte sicherlich eindeutig sein.

die globale_variablen checke ich, das sollte aber auch nicht das problem sein oder ?
stört die PI ? oder globale_variablen ?????

peewit

#5
was hast du denn genau jetzt geändert, das die meldung nicht mehr kommt

wenn du den name "globale_variablen" geändert hast, so hat es keinerlei rückwirkungen !

"oscat_globale_variablen" wäre z.b. ein sinnvoller eindeutiger name

tufelix367

Ich habe den Namen von Globale_Variablen geändert:
Die Konstante PI habe ich wie folgt eingegeben (mit neuem Namenfür die Globale Variablenliste der Bibliothek):
Globale_Variablen_1.MATH.PI
So funktioniert auch meine Anwendung.
Natürlich wie Ihr geschrieben habt ist es nicht gut die OSCAT-Bibliothek zu ändern, da es schon viele Anwender gibt.
Hat sonst niemand OSCAT und SFC in Verwendung? Oder mache ich noch etwas falsch?

peewit

hallo

probiere doch mal direkt im programm nur "math.pi" das sollte doch auch gehen
wenn eine variable nicht lokal deklariert ist, wird sie automatisch als globale variable auch gesucht, wenn vorhanden auch einfach verwendet
so war es zumindest bei codesys 2.x

kann es aber momentan nicht prüfen , da ich kein codesys 3.4 installiert habe..


tufelix367

Danke,

Ich habe immer die Eingabe mit F2 gemacht und da schreibt mir das Programm die Variable wie oben genannt.

Nur MATH.PI funktioniert.

Danke für Eure Zeit und Hilfe

Leider noch Änfänger in CoDeSys