本文介绍Print, RobotInfo的使用. 主要总结如下:
-
Print可以向串口、网口、手操器TP1,RC软件等发送数据
-
RobotInfo$(4)可以得到机器人序列号。用于防止程序下载到其他机器人上。
-
CX, CY, CZ可以返回点的XYZ坐标值。 RealPos得到当前实际位置
一、具体函数介绍
1.Print函数(将数据输出到指定的文件、通信端口、显示装置)
Print #portNumber, [expression [ , expression... ]
|-------------------|-------------------|
| Print #1 "hello" | 向串口1输出"Hello" |
| Print #21 "hello" | 向RC软件打印"hello" |
| Print #24 "hello" | 向TP1手操器上打印"Hello" |
2.RobotInfo$函数,返回机器人的信息:
其中RobotInfo$(4)可以得到机器人序列号。
为了放置机器人程序下错,可以判断下序列号,如果异常则报错。代码如下:

- 关于点的函数
RealPos 函数,用于返回指定机器人当前位置
CurPos:返回机器人的当前的动作目标位置
CX 是返回指定点数据X坐标值
CY 是返回指定点数据Y坐标值
CZ 是返回指定点数据Z坐标值
CU 是返回指定点数据U坐标值
CV 是返回指定点数据V坐标值
CW 是返回指定点数据W坐标
CR 是返回指定点数据R坐标值
CS 是返回指定点数据S坐标值
CT 是返回指定点数据T坐标值
Agl 是返回指定关节的角度的函数。
RealPls 返回已指定关节的脉冲值
二、代码样例:
vbnet
Boolean bTP1 'TP1 is active
Boolean bRC 'RC+ is active
'初始化的打印功能,指定是显示到TP1还是RC。
Function initDisplay(x_bTP1 As Boolean, x_bRC As Boolean)
' Local paramter 局部变量
String l_sMessage$
bTP1 = x_bTP1
bRC = x_bRC
l_sMessage$ = "Robot Start: " + Date$ + " " + Time$ + CRLF
If bTP1 Then
Print #24, l_strTemp$
EndIf
If bRC Then
Print #21, l_strTemp$
EndIf
Fend
'打印函数,
Function printMessage(x_sMessage$ As String, x_iRobot As Integer)
' local variables
String l_sMessage$
'
If x_iRobot > 4 Then
Error Err_NumRob
EndIf
' get message
l_sMessage$ = "Rob" + Str$(x_iRobot) + ": " + x_sMessage$
' using TP1
If bTP1 Then
Print #24, l_sMessage$
EndIf
' using RC
If bRC Then
Print #21, l_sMessage$
EndIf
Fend
'检查当前机器人的实际序列号是否与程序中设定的序列号一致
Function checkSerialNo(x_sSerialNo$ As String, x_iRobot As Integer)
' local variables
Integer l_iRobot
String l_sMessage$
'select robot
Robot x_iRobot
'Check serial number
l_sMessage$ = CRLF
l_sMessage$ = l_sMessage$ + "name: " + RobotInfo$(0) + CRLF
l_sMessage$ = l_sMessage$ + "model: " + RobotInfo$(1) + CRLF
l_sMessage$ = l_sMessage$ + "serial-no.: " + RobotInfo$(4) + CRLF
l_sMessage$ = l_sMessage$ + "expected serial-no.: " + x_sSerialNo$ + CRLF
' Print information
printMessage(l_sMessage$, x_iRobot)
' check for errors
If RobotInfo$(4) <> x_sSerialNo$ Then Error Err_WrongSerial ' connected robot is not the target system
Fend