EPSON 代码程序
1.EPSON SPEL+ 语言代码示例:
//
String RCdata$, InData$, toks$(0), data1$, data2$, data3$ //定义字符型变量名需要添加“$”符号
Integer N, x
Double VX(500), VY(500), VZ(500)
#define delay_Time 0.1
Function main
SetNet #201, "192.168.60.5", 8000, CRLF, NONE //当控制器作为客户端的时候ip-set有效
OpenNet #201 As Server //打开#201服务器端口(作为服务器)
Print "wait Connect ok..."
WaitNet #201 //等待端口打开
Print "Connect#201 ok."
Print #201, "RC.OK"
loop1:
Call communication //pc通信 Input #202, RCdata$
ParseStr RCdata$, toks$(), "," //将字符串按间隔符号" "拆分成多组数据.
Print "指令=", toks$(0)
//解析RCdata$判断控制
If toks$(0) = "CLOSE" Then
Print "接收到控制类型数据."
Call close //关闭机器人
ElseIf UBound(toks$()) >= 1 Then //如果toks$(1)不为空则判断为点数据
Call ParsePoint //解析函数
Call moveP
GoTo loop1
Else
Print "数据无效请重新输入:"
GoTo loop1 // 继续循环
EndIf
Fend
//
Function communication //TCP/IP 网口通信
succRC:
If ChkNet(201) > 0 Then
//Line Input #201, InData$ //从端口接收字符到一个或多个变量中
//Print "InData$=", InData$
Read #201, RCdata$, ChkNet(201) //从端口接收一行以上字符到一个字符串变量中(指定读入的字节数)
Print "RCdata$=", RCdata$
Else
WaitNet #201
Print "等待数据接受"
GoTo succRC
EndIf
Fend
//
Function ParsePoint //解析数据:节点3维坐标点
N = Val(toks$(0)) //获取点数
//VX(1) = Val(toks$(1))
Print "坐标点数N=", N
Integer i
VX(0) = VY(0) = VZ(0) = 0
For i = 1 To N Step 1
VX(i) = Val(toks$(i))
VY(i) = Val(toks$(N + i))
VZ(i) = Val(toks$(2 * N + i))
P(i) = XY(VX(i), VY(i), VZ(i), 0)
Print " X(i) =", VX(i), "Y(i) =", VY(i), "Z(i) =", VZ(i) //显示坐标值
Next
Fend
//
Function WaiteP //移动到待机点
If Motor = Off Then
Motor On //打开电机
Power Low
Speed 50
Accel 30, 30
EndIf
Tool 0 //设置工具坐标系为0
Go waitP
Fend
//
Function moveP
If Motor = Off Then
Motor On
Power Low
SpeedS 50
AccelS 50
EndIf
Call WaiteP //1 回到待机点
Tool 2 //2 设置工具坐标系2
Integer i
Curve "mycurve", O, 0, 4, P(1:N) //3 用自由曲线制作用于 CP 控制的数据与点
Jump P1 -Z(-10) //4 运动到开始点上方10mm处
CVMove "mycurve" //5 执行定义的自由曲线CP 动作
Go P(N) -Z(-10) //6 运动到结束点上方10mm处
//
//Jump P1 -Z(-10) //偏移Z轴坐标Z=P1z-z(-10)mm)移动到P1,如:P1z=-20 则 Z=-10
//CP On //运动CP模式:在多个动作连续进行时
//For i = 1 To N Step 1
//Go P(i)
//Next
//CP Off
//Jump P(N) -Z(-10)
//
Call WaiteP //回到待机点
Fend
Function close //关机
CloseNet #201
If Motor = On Then
Motor Off
EndIf
Fend
//
2.关键函数:
Curve,CVMove 函数
3.代码截图