EPSON LS3-401S机器人学习笔记 8 - TCPIP通信编程
工作视频
柔性上料设备
上位机
在上位机启动一个TCP/IP SERVER端,设置端口号为2000。
EPSON控制器
配置控制器的IP地址与上位机在同一个网段,使用相同的子网掩码。
配置TCP/IP的IP地址为上位机的地址,端口号为上位机的端口号。
上位机与EPSON控制器通讯协议
上位机发送Ready到控制器,控制器接收到Ready,发送Ready响应;握手成功;
上位机发送位置信息:[email protected]@[email protected],控制器接收后分解位置,移动到位置,打开真空吸附工件,然后移动到放开工件位置,释放工件;然后发送位置请求信息:[email protected];循环这个步骤;
控制器代码
代码不太严谨,只作为一个示例,正在改进中。
Function main
RobertInit
Jump SafePoint
Xqt ComTcpip
Fend
Global String InData$, OutData$
Function ComTcpip
SetNet #201, "192.168.100.123", 2000, CRLF, NONE, 0
OpenNet #201 As Client
WaitNet #201
Print "TCPIP Connected."
Do
If (ChkNet(201) > 0) Then
Input #201, InData$
If (Indata$ = "Ready") Then
Print #201, "Ready"
Else
GetPart InData$
EndIf
ElseIf ChkNet(201) < 0 Then
CloseNet #201
OpenNet #201 As Client
WaitNet #201
EndIf
Loop
Fend
Function GetPart(InData2$ As String)
String data$
data$ = InData2$
String iData$(10)
ParseStr data$, iData$(), "@"
Integer i
If (iData$(1) = "NAK") Then
Exit Function
Print "Exit Function"
EndIf
Real iX, iY, iU
iX = Val(iData$(1))
iY = Val(iData$(2))
iU = Val(iData$(3))
Print iX, " ", iY, " ", iU
Jump XY(iX, iY, -39, iU) ! D60; On Vacuum !
Jump ReleasePart ! D60; Print #201, "[email protected]" !
Off Vacuum
Wait .1
Jump SafePoint
Fend
Function RobertInit
Motor On
Power High
Speed 40
Accel 40, 40
SpeedS 100
AccelS 100, 100
Tool 0
Fend