机器人码垛编程方法与技巧
私信小编 “ 电工全套 ” 获取 三菱+西门子+电工全套电子学习资料(软件、案例、文档、电子书)!
机器人码垛应用非常常见,那我们先来认识认识码垛是什么吧?
码垛机是将已装入容器的纸箱,按一定排列码放在托盘、栈板(木质、塑胶)上,进行自动堆码,可堆码多层。
在一些的工程师中,拿到了码垛项目时,匆忙下手编程与调试,到头来自己忙的不可开交,而且效率还不高,那针对码垛这类的项目或者案例我们有没有什么方法能使我们高效编程呢?
答案是有的!(以ABB机器人举例介绍)
首先,我们来分析一下,我们码垛产品的时候是有行有列的(或者说横向纵向),那么这时候我们就可以联想到数组也刚好有这一特性。
由此,我们可以利用数组对机器人进行编程!要想编好程序,我们应该先理解数组了。
所谓数组,是有序的元素序列。
若将有限个类型相同的变量的集合命名,那么这个名称为数组名。
组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。
各位工控人,点击下方 “进入圈子”,技成电工课堂每天14:30 分享一些干货趣闻, PLC、电工、变频器、制造业技术人才分享交流! (此处已添加圈子卡片,请到今日头条客户端查看)举例:
int a[10]; 说明数组a,有10个元素。若要表示第10个元素,则使用a[9]。第一个则是a[0]。
float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。
char ch[20]; 说明字符数组ch,有20个元素。
在ABB机器人中,数组分为一维数组、二维数组、三维数组,那它们的区别在哪里呢?我们编程需要用到几维数组呢?那我们来看看例子:
注意: ABB机器人中第一个元素为:num1{1},而非num1{0},所以num1中有三个元素,第一个元素值为5,而非第0个元素值为5。
理解完了数组之后,我们来看一下,具体编程案例吧!如图中,有4个点需要计算,以第1点为基准。(每个方块的长宽都是200mm*200mm)
接下来我们来看一下在示教器里怎么编辑吧!(新建一个数组 reg6{4,3}),建立好了数组之后编程就按上述方式即可!
1.新建一个4行3列的数组,名称为reg6。
2.把计算出来的偏移值填进去。{1,1}代表第一个产品X轴偏移值,{1,2}代表第一个产品Y轴偏移值,{1,1}代表第一个产品z轴偏移值。
如果是两层的码垛(8个产品),则只需要建立reg6{8,3}数组,XY值不变,只是Z轴位置改变了。最后我们看到的程序就是这样的:
那么关于码垛的知识就给大家讲解到这里哦,大家有理解吗?欢迎大家探讨哦。
来自技成-郭彪老师原创文章,违者必究! #智能机器人编程##科技智能##科技潮玩#
编写PLC程序时,何为接力棒式控制?
「图文详解」S7-1200CPU做IO共享设备的配置方法!
指令表(IL)、梯形图(LD)都是PLC 的常用编程语言?图文详解
·END·
分享多一点,知识更多一点
⇣⇣⇣ 读者福利,点击抽奖!
「案例解析」ABB机器人码垛编程方法与技巧
机器人码垛应用非常常见,那我们先来认识认识码垛是什么吧?
码垛机是将已装入容器的纸箱,按一定排列码放在托盘、栈板(木质、塑胶)上,进行自动堆码,可堆码多层。
在一些的工程师中,拿到了码垛项目时,匆忙下手编程与调试,到头来自己忙的不可开交,而且效率还不高,那针对码垛这类的项目或者案例我们有没有什么方法能使我们高效编程呢?答案是有的!(以ABB机器人举例介绍)
首先,我们来分析一下,我们码垛产品的时候是有行有列的(或者说横向纵向),那么这时候我们就可以联想到数组也刚好有这一特性。由此,我们可以利用数组对机器人进行编程!要想编好程序,我们应该先理解数组了。
所谓数组,是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。
举例:
int a[10]; 说明整型数组a,有10个元素。若要表示第10个元素,则使用a[9]。第一个则是a[0]。
float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。
char ch[20]; 说明字符数组ch,有20个元素。
在ABB机器人中,数组分为一维数组、二维数组、三维数组,那它们的区别在哪里呢?我们编程需要用到几维数组呢?那我们来看看例子:
一维数组:
当数组中每个元素都只带有一个下标时,称这样的数组为一维数组。
注意:ABB机器人中第一个元素为:num1{1},而非num1{0},所以num1中有三个元素,第一个元素值为5,而非第0个元素值为5。
二维数组:
理解完了数组之后,我们来看一下,具体编程案例吧!如图中,有4个点需要计算,以第1点位基准。(每个方块的长宽都是200mm*200mm)
数组建立
接下来我们来看一下在示教器里怎么编辑吧!(新建一个数组 reg6{4,3}),建立好了数组之后编程就按上述方式即可!
1.新建一个4行3列的数组,名称为reg6。
2.把计算出来的偏移值填进去。{1,1}代表第一个产品X轴偏移值,{1,2}代表第一个产品Y轴偏移值,{1,1}代表第一个产品z轴偏移值。
如果是两层的码垛(8个产品),则只需要建立reg6{8,3}数组,XY值不变,只是Z轴位置改变了。最后我们看到的程序就是这样的:
CASE 1:
pick := Offs(p10,reg6{1,1},reg6{1,2},reg6{1,3});
CASE 2:
pick := Offs(p10,reg6{2,1},reg6{2,2},reg6{2,3});
CASE 3:
pick := Offs(p10,reg6{3,1},reg6{3,2},reg6{3,3});
CASE 4:
pick := Offs(p10,reg6{4,1},reg6{4,2},reg6{4,3});
CASE 5:
pick := Offs(p10,reg6{5,1},reg6{5,2},reg6{5,3});
CASE 6:
pick := Offs(p10,reg6{6,1},reg6{6,2},reg6{6,3});
CASE 7:
pick := Offs(p10,reg6{7,1},reg6{7,2},reg6{7,3});
CASE 8:
pick := Offs(p10,reg6{8,1},reg6{8,2},reg6{8,3});
那么关于码垛的知识就给大家讲解到这里哦,大家有理解吗?欢迎大家探讨哦。
相关问答
ABB伺服PLC控制方法?
[回答]电机在一个方向上比另一个方向跑得快(1)故障原因:无刷电机的相位搞错。处理方法:检测或查出正确的相位。(2)故障原因:在不用于测试时,测试/偏差开关...
人类历史上最早的机器人有哪些?
关于历史上的机器人,我想从以下几点阐述:机器人的定义现在人普遍人同的关于机器人的定义是:靠自身动力和控制能力来实现各种功能的一种机器。它包括两部分,...