VT1422A Command Reference 237Chapter 7
ALGorithm
ALGorithm
The ALGorithm command subsystem provides:
• Definition of user defined control algorithms
• Communication with algorithm array and scalar variables
• Controls to enable or disable individual loop algorithms
• Control of ratio of number of scan triggers per algorithm execution
• Control of loop algorithm execution speed
• Easy definition of algorithm data conversion functions
Subsystem Syntax ALGorithm
[:EXPLicit]
:ARRay ’<alg_name>’,’<array_name>’,<array_block>
:ARRay? ’<alg_name>’,’<array_name>’
:DEFine ’<alg_name>’[,<swap_size>],<program_block>
:SCALar ’<alg_name>’,’<var_name>’,<value>
:SCALar? ’<alg_name>’,’<var_name>’
:SCAN:RATio ’<alg_name>’,<value>
:SCAN:RATio? ’<alg_name>’
:SIZe? ’<alg_name>’
[:STATe] ’<alg_name>’,ON | OFF
[:STATe]? ’<alg_name>’
:TIME? ’<alg_name>’
:FUNCtion:DEFine ’<function_name>’,<range>,<offset>,<block_data>
:OUTPut:DELay <usec> | AUTO
:OUTPut:DELay?
:UPDate
[:IMMediate]
:CHANnel <channel_item>
:WINDow <num_updates>
:WINDow?
ALGorithm[:EXPLicit]:ARRay
ALGorithm[:EXPLicit]:ARRay ’<alg_name>’,’<array_name>’,<array_block>
places values of <array_name> for algorithm <alg_name> into the Update Queue.
This update is then pending until ALG:UPD is sent or an update event (as set by
ALG:UPD:CHANNEL) occurs.
Note ALG:ARRAY places a variable update request in the Update Queue.
Do not place more update requests in the Update Queue than are allowed by the
current setting of ALG:UPD:WINDOW or a "Too many updates – send
ALG:UPDATE command' error message will be generated.