The DataSetManager add-on stays in initialization until a communication timeout occurrs although the DataSetAccess service is running on the target system.
Check if there two configuration files for the DataSetAccess service. If you change the machine identifier of your project there can still be the old configuration file on the target system:
Just delete both folders and deploy the DataSetAccess again. The DataSetAccess service can connect to multiple PLCs. But if you do not have this use case there must only be one configuration file (that means only one GUID folder).
Background: If there are two configuration files with the same target IP, the DataSetAccess service and DataSetManager have a handshake problem.
Additional hint: You should update the service (ORD/NXRD file) at least to V1.0.11 because this fixes a similar problem after activating configuration in TwinCAT. In the documentation of the DataSetManager add-on you will find some more hints to solve problems:
Das DataSetManager Add-on bleibt in der Initialisierung stehen bis eine Kommunikations-Zeitüberschreitung auftritt, obwohl der DataSetAccess Service auf dem Zielsystem läuft.
Prüfen, ob es für den DataSetAccess Service zwei Konfigurationsdateien gibt. Wenn man die Maschinenkennung (machine identifier) eines Projekts ändert, bleibt die alte Konfigurationsdatei trotzdem noch auf dem Zielsystem bestehen:
Einfach beide Ordner löschen und DataSetAccess nochmal deployen. Der DataSetAccess Service kann sich mit mehreren Steuerungen verbinden. Aber wenn man diesen Anwendungsfall nicht hat, darf es nur eine Konfigurationsdatei (das bedeutet nur ein GUID-Ordner) geben.
Hintergrund: Wenn es zwei Konfigurationsdateien mit derselben Ziel-IP gibt, haben DataSetAccess Service und DataSetManager ein Handshake-Problem.
Zusätzlicher Hinweis: Man sollte den Service (ORD/NXRD Datei) mindestens auf V1.0.11 aktualisieren, weil das ein ähnliches Problem nach Aktivieren der Konfiguration in TwinCAT behebt. In der Dokumentation des DataSetManager Add-ons gibt es weitere Hinweise zur Problembehebung:
... View more
Thanks for this hint. We will think about documenting the difference (comment, documentation, ...). Actually the idea behind extending the WorkingCodes was to prevent too many application specific solutions.
Our MES department knows this topic already. Currently I can't tell you anything about the final solution or time line, but I guess it will last some time.
The Bosch division PS has specified our OpconWorkingCode enum (0-28) as standard for new PS projects. I am not sure about the specification of your fuel cell project, but the PS standard specification should apply for it. Maybe the MES colleage doesn't know this?
... View more
Both enumerations are correct 🙂
Nexeed MES knows WorkingCodes 0-15 by default, that means they will be shown with their name in MES. Some WorkingCodes affect the behaviour of the MES communication, e.g. TEST_PART (1) or GOLDEN_DEVICE (15).
These WorkingCodes 0-15 are the same on both sides (MES and OpconWorkingCode enum).
All other WorkingCodes (16ff) of the OpconWorkingCode enumeration do not have a special effect in MES by default and MES just shows the number. The name can be added on MES side to also show the name for the WorkingCodes 16ff (that's at least the current solution/workaround, must be done in every MES project manually: OIS.NET Portal Setup → Internal Text Groups → WorkingCode → Text Group Customization ). But it is also possible to give the WorkingCodes 16ff other meanings in MES than in the PLC enumeration. Actually that is already the case for HDP projects where some WorkingCodes have different numbers:
Control plus (OpconWorkingCode)
For communication with OpconXml (DDL Event add-on) you can use your own enumeration instead of the OpconWorkingCode enumeration (e.g. necessary for HDP projects). But for Public Interface (OPC UA) you have to use the OpconWorkingCode enumeration. Currently it is not possible to provide a basic WorkingCode enumeration that can be extended/changed manually in the projects.
PS: In general all WorkingCodes can have project specific effects (should be defined in the MES specification).
... View more
So your use case would be like case 2. Especially because you always have the full result data structure, but you set only the corresponding part of the result data. Without knowing the detailed situation, my first answer would be: In this case you should add an add-on for each process.
I've been in contact with MES team of BaP/MFT.
... View more
Short answer: Currently you can not change the process number (ParCfg.ProcessNo) of a WorkProcess add-on at runtime.
The term "multi process" can have different meanings:
Usually it means that one process is executed several times with the same process number. This would be possible with the current add-ons.
The WorkProcess add-on is designed to represent one process. Sometimes there are processes in a station that have the same result data. We explicitly don't want to have one WorkProcess add-on for several processes, just because the result data are identical.
One physical process is executed several times with different MES process numbers, e.g. process number 111 for the first time of the cleaning process (afterwards the work piece sees further processes), then process number 222 for the second time of the cleaning process, etc. For this use case a change of the process number would be necessary on PLC side, but currently not possible. That means you need 2, 3 or more add-ons depending on the maximum number of the process cycles. This is not very smart and a PLC update would be necessary everytime a further cycle / process number is added on MES side. The official workaround for such limitations: Add your own ProcessNo variable to the output structure. The MES engineer then must use this process number (that can change in every command) instead of the default process number of the Public Interface profile.
From the fuel cell project there have already been other requests in the past to make the process number changeable in the PLC. Are you also part of this project? Then it makes sense to make a meeting to discuss the current process concept.
... View more