Download - RIO Application Programming
![Page 1: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/1.jpg)
RIO 471x0 ManualApplication Programming
Hsu Hui-Kuang
![Page 2: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/2.jpg)
Agenda• Program Format
• Executing Programs
• Debugging
• Program Flow Commands
• Math & Functional Expressions
• Variables
• Operands
• Arrays
• Input of Data
• Output of Data
• Programmable I/O
![Page 3: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/3.jpg)
Program Format
• `
• 80 Characters
Program Lines Greater than 40 Characters
![Page 4: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/4.jpg)
Program Format
• PW / ^(cntl)L^(cntl)K
Lock Program Access Using Password
![Page 5: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/5.jpg)
Executing Programs
• XQ #A,n / HX n
• 4 Thread
• IN Command(Only Thread 0)
Multitasking
![Page 6: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/6.jpg)
Debugging
• Trace Command TR1
![Page 7: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/7.jpg)
Debugging
• Error Code
• RAM Memory Interrogation
MG _ED
TC0/TC1
DM?DA?LV/LL/LA/LS
![Page 8: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/8.jpg)
Debugging
• Operand_ED last line of program execution_DL available label_UL available variable_DA the number of available array_DM
![Page 9: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/9.jpg)
Program Flow
• Interrupt
• Event Trigger
II#ININTn
AIJPII
![Page 10: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/10.jpg)
Program Flow
• Condition Jump
• IF, ELSE, ENDIF
JS/JPMultiple Condition Jump|,&,<>,<=,=>
Nesting IF(Up to 255 IF)
![Page 11: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/11.jpg)
Program Flow
• Stack Manipulation
• Automatic SubroutineZS 0/ZS 1
#AUTO#AUTOERR#ININTn#CMDERR#TCPERR#COMINT
![Page 12: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/12.jpg)
Program Flow
• Automatic Subroutine
MultiThread Application handle CMDERRXQ _EDn
_ED1 returns the number of the thread that generated an error_ED2 retry failed command_ED3 skip failed command
XQ _ED2(OR _ED3),_ED1,1
![Page 13: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/13.jpg)
Math & Function Exp
• Math Operator
• Bit-Wise Operator
+,-,*,/,%,()
&,|
![Page 14: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/14.jpg)
Math & Function Exp• Functions
@SIN[n] @RND[n]@COS[n] @SQR[n]@TAN[n] @IN[n]@ASIN*[n] @OUT[n]@ACOS*[n] @AN[n]@ATAN*[n] @AO[n]@COM[n]@ABS[n]@FRAC[n]@INT[n]
![Page 15: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/15.jpg)
Variables
• Variables
126 Variables8 CharactersNumerical range:
4 Byte Integer followed by2 Byte Fraction
![Page 16: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/16.jpg)
Operands
• _
• Special Operands_BN return serial # of the board_DA return the number of array available_DL return the number of available label_DM return the available array memory_UL return the number of available variableTIME real-time clock
![Page 17: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/17.jpg)
Arrays
• 400 elements / 6 arrays
• DM/DA
• QU/QD
• Automatic Data Capture
RARDRC
![Page 18: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/18.jpg)
Input of Data
• IN Instruction
• RS-232 Only
![Page 19: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/19.jpg)
Output of Data
• MG
• {Sn}/{Fn.m}/{Zn.m}/{^n}
• VF Global Variable Formatting
![Page 20: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/20.jpg)
Programmable I/O
• Digital Output
• Digital Input
SB / CBOB / OP
@IN[n]TI
![Page 21: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/21.jpg)
Programmable I/O
• Analog Input@AN[n]AQAA
access from Data Record :
N= (((V-Vlo)*4095)/(Vhi-Vlo))*8
![Page 22: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/22.jpg)
Programmable I/O
• Analog Output
AODQ (RIO-47120)
access from Data Record:
N= ((V-Vlo)*4095)/(Vhi-Vlo)
![Page 23: RIO Application Programming](https://reader033.vdocuments.site/reader033/viewer/2022060204/55a001b41a28ab64058b47a0/html5/thumbnails/23.jpg)
The END