发布时间: 2026-01-30

传送带跟踪使用


1. 前期准备

硬件型号:编码器:omron E6B2-CWZ6C
协议转换模块:ADAM-6051
SICK对射式光电传感器SG6
带变频调速传送带组件
EC系列机器人整机(需开通传送带跟踪功能)
 
软件:
 

2. 操作流程

1.硬件连接

 
 
 

2.软件配置

EC机器人打开跟踪,路径是 运行准备---工艺配置---[勾选] 跟踪/传送带跟踪
然后可以在 扩展--跟踪 中设定传送带跟踪参数和跟踪标定
协议转换模块ADAM-6051软件配置:
电脑IP与模块的IP设置为同一网段,然后打开软件,按下图操作开始进行
点击第三个设置,勾选前三个IP框,分别设置IP地址,并点击Apply
设置完成后点击下图,勾选前面方框,设置能够控制模块的IP地址,设置完成后点击Apply。
然后配置Modbus Address,把图上的起始位配置成4000.
点击下方6051,会弹出输入密码,密码为00000000,然后依次配置下列接口类型,完成后点击后面Apply mode.
 
 
Modbus地址
通道
描述
读/写
3999-4000
0
信号/计数/频率
4001-4002
1
4003-4004
2
4005-4006
3
4007-4008
4
4009-4010
5
4011-4012
6
4013-4014
7
4015-4016
8
具体操作视频如下

3.机器人传送带跟踪设置和标定

机器人与协议转换模块通过网线相连接
lua脚本
lua脚本示例:
sleep(1)
--modbus slave的IP地址
ip="192.168.1.88"
--modbus slave的端口号
port=502
--获得modbus tcp句柄
ctx=modbus_new_tcp(ip,port)
--连接modbus句柄
conState=modbus_connect(ctx)
 
while (conState==-1)do
	sleep(1)
	elite_print("Connection failed")
	conState=modbus_connect(ctx)
end
 
-- 获取脉冲计数
function getCounter(ctx)
    local reg0 = 4009
    local reg1 = 4010
    retLst = modbus_read_registers(ctx,reg0,2)
    if (retLst == nil) then
        elite_print("Read register error.")
    else
        set_global_variable("D111",retLst[1])
        set_global_variable("D112",retLst[2])
        cnt=math.floor(retLst[1] + retLst[2]*(2^16))
    end
    return cnt
end
 
--  清除脉冲计数
function resetCounter(ctx)
    ret = modbus_write_bit (ctx , 85 , 1)
    if (ret < 0) then
        elite_print("Failed to reset counter, please check the connection.")
    end
    return ret
end
 
-- 获取当前的脉冲频率,单位 HZ
function getFrequency(ctx)
    ret, freq=modbus_read_register(ctx, 4011)
    if (ret < 0) then
        elite_print(ret)
        elite_print("Failed to get frequency, please check the connection.")
    end
    freq = freq // 10    -- 除以10得到实际频率
    --set_global_variable("B9",freq)
    return freq
end
 
elite_print("Start")
m_timer = 0
while true do
    sleep(0.004)
    pos0 = getCounter(ctx)			--*拿取传送带数据
    set_global_variable("D110",pos0)
    set_track_encoder_count(pos0)
    m_timer = m_timer + 1
    if (m_timer >= 0) then
	    m_timer = 0
        fre = getFrequency(ctx)
        set_global_variable("D109",fre)
	    set_track_encoder_speed(fre)
    end
end
 
jbi脚本
导入jbi和lua文件后,打开lua并运行跟踪脚本。
jbi程序:
跟踪指令
含义
RUNIOCUTIN RIC#(1) 
运行IO检测,这里会一直监测M528寄存器,所以开关触发时PLC关联M528 
TRACK GETDATA#(1) 
等待产品进入实际跟踪窗口范围,得到当前需要跟踪产品的数据
TRACK START#(1) 
跟踪开始
TRACK END#(1) 
跟踪结束
运行lua脚本,INDEX= 选择第几个脚本,传送带跟踪脚本放的位置。
用户PLC中添加传感器信号控关联M528线圈

4.跟踪标定

传送带速度控制在100-200mm/s最佳,精度在±1mm(目测)
如下图所示,示教跟踪点和跟踪标定
在机器人的 扩展---跟踪---参数设置 中修改需要用到的跟踪参数。
有效范围开始点:有效范围开始点设置不同的值后,机器人跟踪时会在距离起点相应的距离开始进行跟踪
有效范围结束点:有效范围范围点设置不同的值后,机器人跟踪后会在距离起点相应的距离处退出跟踪
检测范围:检测范围设置不同如100mm,将两个检测物体的间隔设置小于100mm时,系统会提示两个物体离的太近,大于100mm时不会有提示
 
然后单击下一步,选择直线跟踪,点击开始标定。
标定步骤:将物品放到传送带上缓慢开动传送带使物品经过传感器(此时日志窗口显示“io标定结束”)到达A点后,停止传送带运动,将机械臂移动尖点至A点并记录A点和程序中的“P002”,此时可以退出标定页面进入程序示教跟踪轨迹(示教图中应避免晃 动物品)
 
 
示教完跟踪轨迹后将传送带缓慢开动一段距离后(设定的有效结束距离400mm以内,最优300-350mm),停止传送带运动(传送带速度保持不变),将机械臂移动至B点并记录B点(A点B点需戳向同一个特征点记录),记录A点和B点时,下面会显示编码器数值,
将机械臂移动至参考点(参考点做在跟踪坐标系A点和B点水平垂直的Y轴方向)并记录参考点,点击计算完成整个标定过程;
 
整体标定好后,运行JBI程序,将钥匙旋钮转到PLAY模式,速度要放到100%,才能跟上传送带速度,然后上伺服,启动。

 

 
提交反馈