DeltaV SimulatePro "Enable Simulate" command

When using the SimulatePro "Enable Simulate" command (either from the DeltaV SimulatePro application or via OPC), the SIMULATE_D parameter in all DC blocks is set to Enabled, even though no I/O is assigned to the DC block. Since the inputs to the DC block come from other blocks (bits fanned out from serial registers), this effectively means that these motors cannot be correctly simulated without manually reverting SIMULATE_D to Disabled on every DC block in the configuration. Interestingly, this is not the case for PID blocks, where the SIMULATE parameter remains Disabled for PID blocks (EDIT: without I/O assigned with something wired to the IN parameter) even after running the "Enable Simulate" command. I would expect them exhibit the same behaviour. There are workarounds to bulk write the SIMULATE_D parameter on all DC blocks back to Disabled via OPC, but this is tedious.

Books Online says: Enable Simulate - Sets the SIMULATE parameter to Enabled on all blocks with direct input reference on the currently selected node.

This statement isn't clear if it means blocks with the capability to have direct input reference or blocks with actual input reference(s) assigned. And, as noted, the behaviour of PID and DC blocks is different, even though both have no I/O assigned. Does anyone know of a way to not have the Enable Simulate command set SIMULATE_D to Enabled on DC blocks? Does anyone know why the behaviour of the DC and PID blocks is different?

Thanks, Greg.

  • Greg, I have incurred several instances when going to run a simulation where all of my PID blocks are in simulate. For our simulation though, having our DC blocks in simulate is the desired state. Its the PID blocks in simulate that is the undesired state. For a mostly effective work around, going through the IO Reference tab for each controller and selecting the PID blocks and disabling the simulation seems to work. Although tedious I am sure it would work on the DC blocks as well.
  • After further testing, PID blocks respond to the Enable Simulate command from the SimulatePro interface, UNLESS something is wired to the IN parameter. I've tested wiring an AI block, an Internal Read Parameter, and an Input Parameter (Floating Point or External Reference), and in each case it appears the Enable Simulate command no longer sets the SIMULATE parameter to Enabled.

    DC blocks appear to respond to Enable Simulate regardless of whether something is wired to F_IN_D1 through F_IN_D4. I've tried with one input wired, two inputs wired, and 4 inputs wired. I've tried with STATE_MASKS set to use one, two, or four inputs, and with all inputs set to "don't care".

    In many cases the feedback to the DC block is coming from a source external to the DC block, particularly serial registers from a PLC that are fanned out in landing modules, and we would like to simulate the individual I/O points instead of the state of the DC block itself.

    Does anyone know why PID and DC blocks behave differently under these circumstances? Is there any way to make the DC block not follow the Enable Simulate command?

    Thanks, Greg.
  • In reply to NT4MaximusD:

    Thanks for the response. We've used the ability to write to DeltaV from Excel via OPC to bulk set the DC1/SIMULATE_D parameter to Disabled on all DC blocks after using the Enable Simulate command, so there are workarounds available. I'd like to understand why the response of the DC and PID blocks to the Enable Simulate command is different (when something is wired to the IN parameter of the PID block). It seems like in both cases the correct action would be to disable response to the command when the block is using external I/O.

    Regards,
    Greg.
  • Greg,
    I have found that in the Simulate Pro utility, by selecting your node and then the IO Blocks tab, you will see all the modules that can have something simulate. It is tedious but you can go through each module that has a DC block and select disable and bad not connected for a status. The simulation should remember this selection until the module is changed. I think your idea of using EXCEL to bulk edit the simulate enable is more efficient.