Creating and Running Custom Algorithms
119
(or implicitly, in the case of HP E1531&32 SCPs) be tied to the channels. If
your algorithm references an input channel identifier that is not configured
as an input channel, or an output channel identifier that is not configured as
an output channel, the driver will generate an error when your algorithm is
defined with ALG:DEF.
Defining and
Accessing Global
Variables
Global variables are those declared outside of both the main() function and
any algorithms (see Figure 4-1). A global variable can be read or changed by
any algorithm. To declare global variables you use the command:
ALG:DEF ’GLOBALS’,’<
source_code
>’
where <source_code> is Algorithm Language source limited to constructs
for declaring variables. It must not contain executable statements.
Examples:
declare single variable without assignment;
ALG:DEF ’GLOBALS’,’static float glob_scal_var;’
declare single variable with assignment;
ALG:DEF ’GLOBALS’,’static float glob_scal_var = 22.53;’
declare one scalar variable and one array variable;
ALG:DEF ’GLOBALS’,’static float glob_scal_var, glob_array_var[12];’
You access global variables within your algorithm like any other variable.
glob_scal_var = P_factor * I108
NOTES
1. All variables must be declared static float.
2. Array variables cannot be assigned a value when declared.
3. All variables declared within your algorithm are local to that
algorithm. If you locally declare a variable with the same identifier as
an existing global variable, your algorithm will access the local
variable only.
Determining
First Execution
(First_loop)
The HP E1415 always declares the global variable First_loop. First_loop is
set to 1 each time INIT is executed. After main() calls all enabled algorithms
it sets First_loop to 0. By testing First_loop, your algorithm can determine
if it is being called for the first time since an INITiate command was
received. Example:
static float scalar_var;
static float array_var [ 4 ];
/* assign constants to variables on first pass only */
if ( First_loop )
{
scalar_var = 22.3;
array_var[0] = 0;
array_var[1] = 0;
array_var[2] = 1.2;
array_var[3] = 4;
}
Содержание VXI 75000 C Series
Страница 2: ......
Страница 16: ...16 ...
Страница 18: ......
Страница 30: ...30 Getting Started Chapter 1 Notes ...
Страница 32: ...32 Field Wiring Chapter 2 Figure 2 1 Channel Numbers at SCP Positions ...
Страница 44: ...44 Field Wiring Chapter 2 Figure 2 11 HP E1415 Terminal Module ...
Страница 54: ...54 Field Wiring Chapter 2 Notes ...
Страница 61: ...Programming the HP E1415 for PID Control 61 Chapter 3 Programming Overview Diagram ...
Страница 124: ...124 Creating and Running Custom Algorithms Chapter 4 Figure 4 2 Algorithm Operating Sequence Diagram ...
Страница 136: ...136 Creating and Running Custom Algorithms Chapter 4 Notes ...
Страница 152: ...152 Algorithm Language Reference Chapter 5 Notes ...
Страница 304: ...304 HP E1415 Command Reference Chapter 6 Command Quick Reference Notes ...
Страница 308: ...308 Specifications Appendix A Thermocouple Type E 200 800C SCPs HP E1501 02 03 ...
Страница 309: ...Specifications 309 Appendix A Thermocouple Type E 200 800C SCPs HP E1508 09 ...
Страница 310: ...310 Specifications Appendix A Thermocouple Type E 0 800C SCPs HP E1501 02 03 ...
Страница 311: ...Specifications 311 Appendix A Thermocouple Type E 0 800C SCPs HP E1509 09 ...
Страница 312: ...312 Specifications Appendix A Thermocouple Type E Extended SCPs HP E1501 02 03 ...
Страница 313: ...Specifications 313 Appendix A Thermocouple Type E Extended SCPs HP E1508 09 ...
Страница 314: ...314 Specifications Appendix A Thermocouple Type J SCPs HP E1501 02 03 ...
Страница 315: ...Specifications 315 Appendix A Thermocouple Type J SCPs HP E1508 09 ...
Страница 316: ...316 Specifications Appendix A Thermocouple Type K SCPs HP E1501 02 03 ...
Страница 317: ...Specifications 317 Appendix A Thermocouple Type R SCPs HP E1501 02 03 ...
Страница 318: ...318 Specifications Appendix A Thermocouple Type R SCPs HP E1508 09 ...
Страница 319: ...Specifications 319 Appendix A Thermocouple Type S SCPs HP E1501 02 03 ...
Страница 320: ...320 Specifications Appendix A Thermocouple Type S SCPs HP E1508 09 ...
Страница 321: ...Specifications 321 Appendix A Thermocouple Type T SCPs HP E1501 02 03 ...
Страница 322: ...322 Specifications Appendix A Thermocouple Type T SCPs HP E1508 09 ...
Страница 323: ...Specifications 323 Appendix A 5K Thermistor Reference SCPs HP E1501 02 03 ...
Страница 324: ...324 Specifications Appendix A 5K Thermistor Reference SCPs HP E1508 09 ...
Страница 325: ...Specifications 325 Appendix A RTD Reference SCPs HP E1501 02 03 ...
Страница 326: ...326 Specifications Appendix A RTD SCPs HP E1501 02 03 ...
Страница 327: ...Specifications 327 Appendix A RTD SCPs HP E1508 09 ...
Страница 328: ...328 Specifications Appendix A 2250 Thermistor SCPs HP E1501 02 03 ...
Страница 329: ...Specifications 329 Appendix A 2250 Thermistor SCPs HP E1508 09 ...
Страница 330: ...330 Specifications Appendix A 5K Thermistor SCPs HP E1501 02 03 ...
Страница 331: ...Specifications 331 Appendix A 5K Thermistor SCPs HP E1508 09 ...
Страница 332: ...332 Specifications Appendix A 10K Thermistor SCPs HP E1501 02 03 ...
Страница 333: ...Specifications 333 Appendix A 10K Thermistor SCPs HP E1508 09 ...
Страница 334: ...334 Specifications Appendix A Notes ...
Страница 346: ...346 Glossary Appendix C Notes ...
Страница 388: ...388 Generating User Defined Functions Appendix F Notes ...
Страница 438: ...438 Index Writing the algorithm 129 values to CVT elements 120 values to the FIFO 121 Z ZERO CALibration ZERO 194 ...