首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

查表法计算三种颜色工件的码放坐标,简单易懂

现有一台工业机器人码垛工作站,需要完成三种颜色工件的码垛功能。使用的硬件包括工业机器人、PLC、智能相机、5*5的码放平台和红黄蓝三色工件。工作站采用智能相机识别工件的颜色,结果发送给PLC。PLC根据颜色信息完成码放位置的算法,发送控制命令和放置坐标给机器人,工业机器人执行码垛的任务。

一、码放坐标分析

按照图中所示的工件码放位置,以P0(X0,Y0)点为基准点,计算P1至P5五个方格中心点相对P0点的坐标值,五个坐标点进行组合就得出25个方格中心点的坐标值。例如:P1点的X1和P4点Y4组合,得出P14点的坐标。

二、创建变量

1、在PLC中创建自定义数据块,添加数组变量P,赋值P1至P5坐标的起始值。这个表格就是查表法中的表,工件码放坐标值都预设在表格里。

2、添加工件高度H,根据红黄蓝三色工件实际高度赋值起始值。

3、根据放置位置,列举出各颜色工件码放的行列号。以行列号组合的数值赋值起始值,个位数表示列,十位数表示行。例如:红色行列号[1]的值是51,表示5行1列,即P51的位置。

4、三种颜色码放完成数量的计数,赋值初始值为1。每码放完成一个工件,对应的计数变量就加1。

三、查表法算法

根据码放完成的数量,计算出工件放置的行列号,进而计算出码放位置P点的坐标,就可以得出工件码放坐标值。

以红色工件码放坐标计算为例,讲解使用查表法计算码放位置的方法:

定义R表示行,L表示列,X和Y表示工件放置坐标,H表示工件放置高度,T表示当前码放位置的层数。

T=完成数量.红色 / 每层工件数量

R=红色行列号[ T ] / 10

L=红色行列号[ T ] MOD 10

H=T * 工件高度

工件码放位置X=P[R].X

工件码放位置Y=P[L].Y

工件码放位置Z=H

注:/ 表示除法取商,MOD表示取余数,* 表示乘法

例如:红色工件码放完成数量等于1,红色工件每层放置2个,工件高度为20,计算得出:

T=1

R=红色行列号[1] / 10,即:R=5

L=红色行列号[1] MOD 10 ,即:L=1

H=1 * 20,即:H=20

工件码放位置X=P[5].X,即:工件码放位置X=234

工件码放位置Y=P[1].Y,即:工件码放位置Y=26

工件码放位置Z=H,即:工件码放位置Z=20

PLC示例程序:

四、数据传输与执行

PLC把计算得出的工件码放位置发送工业机器人,工业机器人以P0为基准点,进行XYZ方向偏移,完成工件码放功能。

定义PutX表示码放坐标X,PutY表示码放坐标Y,PutZ表示码放的高度。

以ABB机器人使用计算出的码放位置为例,说明机器人怎么进行坐标的偏移。

机器人示例程序:

个人觉得查表法相对比较简单,后期进行坐标数值的修改的也比较方便。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200525A0R8S100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券