用户可以通过M440-M455变量判断当前机器人是否进入对应干涉区。
客户希望能在机器人进入/离开对应干涉区时在信息栏给出提示,如上图所示。
客户可以加载以下lua代码并运行即可。
-- author:chenliao@elibot.cn -- 20220705 local recv, ret, recv2 local m = {} local m_pre = {} function Init() recv ,ret=get_robot_register (55) recv2 ,ret=get_robot_register (56) for i = 1, 8, 1 do if (recv & (2 ^ (i - 1)) > 0) then m[i] = 1 else m[i] = 0 end end for i = 1, 8, 1 do if (recv2 & (2 ^ (i - 1)) > 0) then m[i + 8] = 1 else m[i + 8] = 0 end end for i=1,16,1 do m_pre[i] = m[i] end end Init() while true do recv ,ret=get_robot_register (55) recv2 ,ret=get_robot_register (56) for i = 1, 8, 1 do if (recv & (2 ^ (i - 1)) > 0) then m[i] = 1 else m[i] = 0 end end for i = 1, 8, 1 do if (recv2 & (2 ^ (i - 1)) > 0) then m[i + 8] = 1 else m[i + 8] = 0 end end for i=1,16,1 do if(m[i]==1) and (m_pre[i]==0) then elite_print('Robot Enter InterZone'..i) elseif(m[i]==0) and (m_pre[i]==1) then elite_print('Robot Leave InterZone'..i) end end for i=1,16,1 do m_pre[i] = m[i] end sleep(0.5) end