设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
ABB机器人和PLC仿真通信运行和位置传输
返回列表
发新帖
[AB]
ABB机器人和PLC仿真通信运行和位置传输
[复制链接]
28627
|
0
|
2024-12-10 08:18:42
|
显示全部楼层
|
阅读模式
video:
https://mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&action=mpvideo&auto=0&vid=wxv_3737240922505920524
ABB机器人的编程软件是所有机器人软件中仿真功能最强大的,我搭了个简单的拆垛机器人动作模型,机器人将托盘上的物品通过吸盘或夹具1个个夹起,放到输送带上。
拆垛一般会用到视觉,由于没有视觉实物,所以我想的是把PLC当做控制中心,视觉拍托盘上的物体,得到位置坐标,发送给PLC,PLC把位置坐标发送给机器人,并给出运行ready信号,机器人按照接收的位置,抓取和放置。视觉先不弄了,把它当成1个传感器就好,打通PLC和机器人先。
上面的演示中,我写了个简单的机器人动作流程程序,机器人准备就绪打到自动模式时,先回原点,然后运行到待机位置,PLC给出ready信号后,机器人开始抓取物体,并按照路径运行,放置到输送带上,完成后发出done信号给plc,PLC再发送新的位置和运行信号,进行下一周期的运动。
机器人和plc的通信仿真用的是R
SConnectDIOToSnap7/R
SConnectGIOToSnap7这个插件,具体用法网上可查询。
PLC和机器人采用的S7通信,所以PLC也可以无实物,直接plcsim advanced就行。实际的ABB机器人应该是不支持S7通信的,有PN通信板可选安装。
仿真插件设置好,点播放后,就可以实现PLC和机器人的实时读写。下面可以看到PLC发送给机器人的ready,PLC接受机器人的tool信号都是OK的。
这种bool数据的通信还是比较简单的,不过要PLC发送位置数据给机器人就繁琐很多。第一个就是机器人位姿数据有很多,有坐标trans数据xyz,有角度rot四元数q1 q2 q3 q4,一般在PLC发送时也可以用欧拉角ex ey ez发送,在机器人进行转换。
第二个麻烦之处在于,机器人位姿的浮点数和plc浮点数传输时字节顺序不同,需要进行转换。
上面是我找的一些资料,然后写的转换函数,实际测试是可行的,经过这个转换后,PLC可以直接发位姿的浮点数到机器人的robtarget数据类型上。
上面的图片可以看到plc的xyz坐标发送到机器人后,机器人的robtarget点位pauto的xyz相同,经过多番测试,是可行的。另外分享下机器人循环运行的主程序部分,这是比较简陋的,实际项目可能需要优化。在循环动作中加了1个中断程序,中断程序为暂停动作,任何时候PLC可以发出暂停信号,机器人即暂停,取消暂停,机器人继续当前的动作运行。停止运行信号取的系统启停,将系统自带的启停和IO关联起来,给出停止信号机器人急停。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
pxling
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』