发那科六轴机械手码垛实例笔记

发那科六轴机械手码垛实例笔记,第1张

                    发那科六轴机械手码垛实例笔记

这次码垛的目标是一个6*3*1的测试工装板,利用一体式两段气缸,配合拧紧工具,对每个工滑码并位进行拧紧

如下图,刚开始程序肯定进行复位,等待位

检测原位传感器,然后置位一级气缸,使吸钉管到吸钉位,打开吸真空阀,检测压力传感器是否满足,如果有就保持,下一步到码垛程序

如下图,按F1指令,添加码垛指令,有4种类型

PALLETIZING B_i  --对应所有工件的姿势一定,堆上时的底面(最底下的面)形状为直线(工件都在xyz一直线上),或底面为平行四边形的情形,堆积模式简单,路径模式一种

注解:路径模式指的是码垛时的接入点以及逃点的路径,设定时一般设定一个点,系统会自动计算其他模拿点位的接入点及逃点,仅针对一种路径的情况

PALLETIZING BX_i -- B_i的升级版,都是针对堆积模式简单的码垛,但是这种提供多种路径模式多种

PALLETIZING E_i -- 堆积模式较为复杂,路径模式一种,工位没有在XYZ的一条直线上,当然也能兼容B的码垛功能,也能使用在堆积模式简单的情况

PALLETIZING EX_i--针对E_i的升级版,当需要多种路径模式,并且堆料模式复杂的情况

3.1 如下图,这里设置的是PALETIZING_1[B]_1(1代表的是码垛堆积编号(码垛寄存器),可以设置1-16个码垛模型),具体设置属性如下:

类型:码垛和拆垛,堆上堆下

INCR:每隔几个堆,是一个一个依次堆,还是隔几个堆

码垛寄存器:不能设置相同的寄存器

顺序:按照先行再列再层,还是其他顺序,RCL代表行列层的顺序

行:每行有几个工位点

列:每列有几个工位点

层:一共有几层

辅助位置:一般针对底面为梯形的情况,这时要多定位一点,梯形的话只能用E,EX指令

接近点数量,RTRT(逃点数量)

设置好后,按F5完成

出现如下画面就是设置底部,因为设置的是一层的底面为长方形,所有测长方形测4个角的点,如果是多层的,要测一个角的点,然后基于这个点,y向Z向x向的3个点,如果是梯形要加个辅助位置点位,下图中1#点P[1,1,1]代表XYZ的第一个原点,2#点[6,1,1]代表X行数的第六个(因为行是设置的6,6就是X最边上一个点),Y列数的第一列,Z层数的第一层,3#点就代表第一行第三列第一层的一点

5. 当设置好底部后,接下来就要设置码垛路径,如下图,这是唯一路径的设置画面,因为比较简单,只要设置3个点,A_1为接信迹入点,BTM为堆上点(堆上点就是在工位点的上方而底部点则在工位内侧,比如拧紧,底部点应该在螺纹孔上方平面之下,而堆上点应该在平面之上),R_1为逃点,这里比较简单,逃点跟堆上点可以设置成1个坐标,路径设置好后,码垛指令就设置好了,接下来看看实际应用

5.1 针对多式样路径的,会有如下的式样设置

式样1:是直接指定式样,针对的是第一列,第二层的点位用式样1的方式

式样2:是直接指定式样,针对是第二层所有XY向点位,用式样2的方式

式样3:是余数指定式样,针对当前列数除以3余数为2的列(如0*3+2=2,1*3+2=5,2*3+2=8),当前层数除以4余数为1的层数(如0*4+1=1,5,9),用式样3的方式

式样4:是余数指定模式,针对当前层数除以4余数为1的层(如1,5,9),针对这些层数所有XY向工位

式样5:同式样4,他针对的是(1,3,5层)

式样6:是任意路径

优先顺序:指定优先》余数指定(M值大的优先)

6. 如下图,当程序进入122标签,开始码垛程序,先进入A_1的接入点,然后到BTM堆上点,拧紧气缸和工具置位,等待500ms和拧紧完成信号,复位气缸和工具,等待原位传感器信号,然后移动到R_1的逃点,IF PL[1]=[6,3,1],JMP LBL[99]这句话一定要放到END_1之前,不然程序会默认加1,到下一个点,这里来判断是否是最后一点,如果是就复位PL[1]=[1,1,1]初始化为1#点

了解最新工控PLC,上位机,机器人,通讯等实例测试笔记~~请关注百家号或头条号--老王工控笔记

x0为启动按钮,x1为停止按钮。y0~y7为8盏灯。程序在按下启动按钮后,灯1先亮,1秒(T0延时)后灭,1秒后(T1延时)灯2亮,依次循环。当按下x1后,循环结束。州配

按下x0后,m0得电为1并自保持,此时1秒计时器T0计时,1秒后T0常开点闭合1秒计时器T1计时,再过1秒T1计时结束常闭点断开T0线圈,

T0失电复位并断开T0常开点,此时T1线圈也失电复位,T1常闭点又闭合,T0得电重复上述计时过程。

第二个程序块:

当M0为1时,在T0触点的上升沿来时k3M10这个二进制数乘以2再写入k3M10中。

K3M10代表M10~M21共12个辅助继电器的组合,那么可以将K3M10看作是一个二进制数。程序未启动时,M10~M21均为0,那么这个二进制数为0;当程序启动时冲塌,在下一个程序块中利用了M0的上升沿置位M10,此时M10~M21为1,当T0触点的上升沿来时k3M10(此时为1)这个二进制数乘以2再写入k3M10中(写入后为2),2在二进制数中为10,此时散迹圆M10失电,M11得电,可以认为M10把"1"交给了M11,以此类推。当第8个M17得电时,完成了一次循环。下一个T0上升沿来到时,M18得电,M17失电。此时下面的程序块利用了M18的上升沿重新置位M10并且将M18复位。这样程序又从M10得电开始循环下去了。

这个程序块的作用就是每次T0的上升沿来到时,“1”在M10~M17之间转移。

看你选用怎样的伺服系统。。用的电机是步进电机还是伺服电机,所选用的伺服电机驱动器是什么智能的还是非智能的(是否内建了DSP芯片的)。。你只负责单轴还是所有轴全部控制?你是需要这个机器人同一时间只有一个动作,还是需要它同一时间几个轴同时动作? 你老师带你们做的这个项目所有设备已经选好了,还是自主选择设备? 如果你要做一个很优秀的机器人,只用PLC来控制是非常困难的,其最关键的是控制算法、多橘键轴反馈、多轴联动的插补运算,因此,你还应该有多轴控制卡,或者不用多轴卡的话,可以一个轴一个轴的运动,等某一轴运动完毕再动另一轴。关于单轴控制,你的伺服电机应该有伺服驱动器,可选择脉冲方向的位置控制模式,用PLC给你粗脊的伺服电机驱动器发送位置控制脉冲和方向控制脉冲,就可实现位置控制。如果是智能伺服岩伍渗就更简单,可直接把运动程序编入驱动器,由PLC给开关信号就好了。。。如果有需要更多的帮助可联系我。。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12535897.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存