I would like to discuss how to corretly handle object command if peripheral is not ready because of missing EtherCAT connection. I have object containing command Start measurement. If the command is executed it calls StartMeas method of my peripheral. If EtherCAT connection is missing StartMeas is executed but it remains in step 0 waiting for some signal from hardware (e.g. CycleEnd = FALSE). How to handle the state EtherCAT does not work? I have few ideas, but I would like to know what is the best or standard solution. My ideas are: I can ask in object OnExecStart if the device is ready and throw en event for this state. I think I'd rather deal with it on the periphery side. I can put something at the begining of StartMeas peripheral method to ask for EtherCAT state. But how? IF (BusComm, DeviceReady ) from OpconEcSlave???
... View more
Our project has CX2020 with Control Plus V1 and later we bought mPad as a primary display. Now we have some issues related to Data Set Manager. HMI from mPad was not able to get type data files. After few hours I figured out the reason for that is on CX2020 is current user OpconUser but on the mPad we have NexeedUser. Bacause of this system is not able to acces \\PlcTarget\DataSetmanager share. After we tried to map share manually using OpconUser credentials it started to work and it works also after PLC restart. My question is how to corrently handle this situation. Install older version of image to the mPad? Create OpconUser on the mPad? Anything else?
... View more
Hello @nexidator voice of people 😀 says we need: LEFT, RIGHT, MID, REPLACE and maybe some methods know from higher languages like Split, SwapCase, IsDecimal, IsNumeric, IsAscii, Count....
... View more
LEFT, RIGHT string can be substituted by use of OpconStrDelete. You can delete all characters from specified character to right and then content on the left remains and vice versa. But it is not much comfortable. 😡
... View more
In the meantime I found biggest disadvantage of option 2, which is you are not able to use it until you pack it in to the library and add it to references. This is not much comfortable during the development, because I need to continuously work with source code of object, base and peripheral in my project. I do not want to create library everytime I change something.
... View more