Inna - 2022-03-27

Hello,
I'm using MODBUS over RS232. Currently (for testing purpose)I have only one channel for writing. The channel is defined as "Write Single register(Function code 6)" with cyclic trigger 200 msec as well. The cycle time of the application is 200 msec. According to the codesys help, the cyclic interval should be the same as or a multiple of the cycle time of the application.
I need to write a value each application cycle. So, I increased the value by 1 and I expect to get the value in the table of the MODBUS Slave. The issue is only one from two values is writing by the Master. I checked it by using a protocol analyzer and by printing the values on the Slave side.
I tried to use another type of a trigger- Rising Edge. I found out that if I change a trigger from False to True and from True to Fales in the same cycle, the trigger doesn't work. It seems that the application checks the trigger at the end of the cycle and not immediately after the change is done. So, I can not use this type of trigger for writing the value each application cycle as well.
Is there any way to write values EACH application cycle?

Another question, how to avoid Χ‘ollisions if I have more that one channel?

Thanks