Transmit rate in GFOUT does not accept integer parameter
The description for the GFOUT Transmit rate says it will accept constant and constant channels. Type is integer unit ms.
I do believe constant Channel do not specifically exist. Description for the integer parameter does refer to them as constant channel.
Yet the Transmit rate box does not seem to accept it. What am I doing wrong?
Thanks
Answer
To make that work you must use an integer parameter that is in an initialization group. Initialization group parameters are only updated after a power cycle if you are making it adjustable.
Hello
I have a situation where the GFOUT is send in a Transmission rate of 1000ms. When the cylinder is moving I have to switch to 20ms. How do I do this??
Regards
Andy Pauly
You can define two GFOUT channels, one with a transmit rate of 1000ms and the other with a transmit rate of 20ms. Then put them in their own function group:
You can then map the common GPOUT channels to both of the GFOUT channels. Easiest way is to use Protected scope on the GPOUT channels.
Finally, use internal digital channels with appropriate logic to enable the correct transmission rate.
Note: If you want a transmission rate of 20ms, you will need to set your application cycle time to be a multiple of 20 ms. Also, you will be limited to the number of CAN messages that you can transmit faster than the application cycle time.
This works if the CAN frame in is in the same application. What about having CAN frame in that lives in a External Function? I am not able to link the Timeout to a FGI in this situation. The same happens in the main application file. The work around in this situation would be to change the channel scope to public, but this doesn't resolve the External Function situation.
With the CAN channels in an external function, you would need the constant channels to be in the external functions too.
Constant channel linking in External Function / Software / IQAN
This is not possible in version 6, but will be in version 7.00
Customer support service by UserEcho
To make that work you must use an integer parameter that is in an initialization group. Initialization group parameters are only updated after a power cycle if you are making it adjustable.