MOVs - Modbus RS485

I have one query on Modbus connectivity on MOVs.

We are doing commissioning of SWRO Plant where all the MOVs are Modbus RS485 operated. In one loop there are 12-14 nos. of MOVs connected in series. Each MOV was tested individually from the PLC by forcing through soft an it was working fine. However when this was tested in logic, it gave problem when the third Step was to be operated.

For e.g there are 11 MOV in one skid. and the valve are operated in some sequence.

Step1: MOV-1, MOV-4 :ON. Step-1 will be for 10 min

Step2: MOV-1 remain ON, MOV-4: OFF, MOV-3 ON. Step-2 will be for 15 min

Step3: MOV-1 remain ON, MOV-2:ON, MOV-3:ON. Step-3 will be for 5 min.

Until step-2 the logic will work fine but when it comes to step-3, MOV-2 will not come to ON.

What might be the problem and what is the solution for it.

1 Reply

  • There is a huge difference between a Pseudo code description of what you are trying to do and the actual implementation that is actually trying to execute this logic. I would think the issue has nothing to do with the described sequence. It is the implementation we have to look at.

    Are you on a PLC or on a DeltaV controller? In either case, you have to look at the logic. Maybe you are not writing to the correct valve in Step 3, or there are communication issues or the value is not correct, or what ever.

    I generally try to separate the Device specific logic from the Sequence logic. that way, the sequence commands the Device specific logic to open or close the valve. It is always the same logic that performs this task and that avoids creating multiple commands to the same "register". It also separates logic problems from communication issues. You always have one place to look to see how the device is responding to commands.

    In DeltaV we would create a control module for each MOV. This is where we map the Modbus registers of the devices and control the position of the valve. In a separate Sequence module (Equipment Module, SFC, etc.) we write logic to open and close the valves by writing to the control modules we set up. I can then look at the control modules' outputs to see if the sequence correct commanded the right value to open or close. I can over write the sequence at each module.

    good luck.

    Andre Dicaire