generating "OK to start" functionality outside the DDC function

Andy 3 years ago updated 3 years ago 0

Hi People

I'm only relatively new to IQAN Design and am stuck and need help.

In a design I'm working initially without a display I was using a Digital Digital Compare function to test that a Joystick was centered and that the mode of operation for the joystick wasn't changed while the Joystick was anything but centered. The DDC function worked absolutely fine including detecting JS being uncentered at startup and preventing machine motion until it was released.

I added a display and the DDC caused an error message to appear on a display whenever in simulation I did something like start the system with the JS uncentered. I looked for a switch in the DDC functions properties where I could switch off the creation of the display error but couldn't find one. I don't want the error displaying because I believe that building the error handling means that the issue is no longer a system error which Ive handled with a separate on screen pop up message that says something like " center Joystick to re-enable motion" which is far more user friendly than the default error message the system puts up on a display.

So I built my own equivalent of DDC using "latching OR" functionality which does everything I want but unfortunately doesn't detect the 1 bad instance of a JS being uncentered at startup time, thereafter its does detect it being uncentered when an operating mode change is made that would be unsafe to do without the JS being centered before allowing motion to occur.

So my question is, is there a function or variable that is exposed to us and available in QCode or as a function object that is TRUE while in startup and False when not. In Ladder Logic for PLC there is usually a Data register or Coil that is true for the first loop of the code and false thereafter.

Alternatively if I was to set a digital parameter as default True and then programmatically set it as false after the first time a JS centered is detected and could then use that as an additional latched OR input into my safety function. However I don't seem to be able to programmatically change the value of a digital parameter in QCode and the manual defines the use of variables, even if named the same as an existing channel to be then treated within the QCode as a separate Local variable with the same ...confusing...name as the existing channel. Having read that the QCode editor advise "Hint at Position 5: Expression unused" that the defined variable is unused now makes sense.

I hope that's clear:-

In Summary:-

1) Can I turn off the error message on the display for when a specific compare function fails the comparison, especially if I'm not comparing physical inputs like voltage or current that would suggest a hardware failure, for which the resulting error message is entirely appropriate. Not looking to turn of all error mesasages, just those associated with specific compare instances

2) Is there a system parameter or function I can test that shows whether the system is in startup or moved to steady state?

3) Can I use Qcode to change the stored values of digital parameters DP or Function Parameter Channels FP

Happy for any advice you can provide