一、使用pdisp轨迹偏移
1.有下图两个产品,右边产品的轨迹就完成了。左边的产品一样,怎么快速生成左边的轨迹?
2.完成右轨迹示教的path30。出发点是Target是20。
3.完成左侧的示教,Targetref_start,下面的图。
注:若左侧产品轨迹旋转,则示教Targetref_start对左边的产品的姿势是Target u。20对右边的产品姿势一致。(左边的产品旋转30°,示教的角度z方向旋转30°。)
MoveJ pHome,v 1000,z 100,tWeld GunWObj:=wobj 0;移动到起始位置
path_30;执行右边产品的轨迹。
MoveJpHome,v 1000,z 100,tWeld GunWObj:=wobj 0;回站台
MoveJTargetref_去左边的产品的起点。
Conf JOff;//使用偏移将轴设定监视器设为OFF。使用原来的设定参数,位置偏移可能会导致ConfLOff错误。使用偏移将轴设定监视器设为OFF。使用原始设置参数,位置偏移,可能会发生错误。
pDisp OnRot,Target_20,tweld Gun;//当前位置和Target设置。关于20的偏差关系(包括平移和旋转),机器人为Target因为停止了。ref_起始点设置左轨迹和右轨迹的整体偏移关系。使用ot计算平移和旋转。如果不使用ot,只使用平移计算旋转。
path_30;运行已有轨迹,此时的轨迹参考坐标移动关系,机器人实际走左边产品的轨迹。
pDispOff;//轨迹完成,关闭平行移动关系。
MoveJ pHome,v 1000,z 100,tWeld GunWObj:=wobj 0;
二、单人间多预约程序
机器人在站台上等。有人按di信号,机器人开始执行。人工可以一次预约好几次。也就是说,一次按3次,机器人执行3次。
3.我们通过中断来实现。
4.中断的意思是机器人的背景扫描(类似pLC)。不会与机器人的前台相撞。后台实时扫描信号后会执行设置的中断程序。中断程序中没有运动命令。
5.新建定期程序,tr这样命名。1,注意:中断类型选择(trap)
6.进入中断程序,当机器人执行中断程序时,中断命令在记录次数上加1。
7.进入主程序,设置中断及对应的io信号。
37行的意思是,无论什么时候di就是说。当1信号0为1时,tr执行。中断1个程序后,flag1为真。
35-37行的程序执行一次就可以了。与设定开关相似。无需重复执行。
8.主要步骤如下。也就是说,如果reg1=0,则机器人在站台上等。
三、通过robot studio制作2台机器人的socket连接。
1.什么是socket通信?
是TCp/Ip通信,没有合同,微软环境下称为socket。
可以收发制作的数据。包含sting字符串、byte排列等。
3.制作socket机器人需要什么样的选项?
机器人需要616-1pC-NTERFACE选项。
通信网线插在哪个网口?
Service口(Ip固定:)或Wan口都可以。
5.client端的创建示例
通常机器人和相机通信,机器人作为清洁终端发挥作用。
a、创建新的机器人系统,注意在系统构建时添加pc-interface选项。
b、为了防止上一个连接断开,首先插入socketclose命令,之后的sockett1是为自己新建的socketdev类型的变量。
c,然后插入连接的socketCreate。
d、为了建立连接,需要插入SocketConnect,然后制定Server的ip和端口。如果要连接到计算机和其他虚拟控制器,建议将ip设置为“”,自定义端口,不使用默认1025。
该步骤由机器人与Server连接。如果不成功的话我会一直等着。成功了就继续。
e,在这里测试。成功后,插入TpWrite命令,在示教器中可以看到socketclient connect success ful。
f,接下来可以收发数据。这里,client先向server发送数据,然后接收从server发送的数据。
在g、SocketSend之后可以发送string或byte排列,具体而言可以选择不同的可选变量。
h,发送完成后,client将从server接收回送的数据,并写入屏幕。
6.以下是server终端的例子。
a、重新制作工作站。创建时,请不要忘记添加pcinter face选项。
b、作为server,机器人需要制作两个socketdev变量。
c、为了避免上一个连接未闭合,同样建议先进行socketclose。
e,然后创建socketCreatemp。socket服务器端socketdev。
f、SocketBind是监视连接socket的ip和端口,如果是虚拟模拟,则ip是端口的定制(与client端设定一致)。
g、SocketListen监视机器人server是否有client连接。
h、socketAccept是为了接受client的连接。
i、建立连接后,机器人可执行死周期。也就是说,经常处于收发状态。
因为之前的client程序是先给client发送后再接收的,所以server先接收后再发送。
如果你把所有的水手都写完了,你就可以开车了。运行保护程序端。也就是说,保护机器人处于监控状态。
来自机器人的信息如下。
9.来自client机器人的信息如下所示。
人工完成一宿后按按钮说di。1(不带按钮。即,用手离开信号为0。)机器人焊接1个。
在这个过程中,人工上下两个步骤,完成后di按。3预约结束了。(无需等到机器人完成一项作业。)
因为机器人完成一宿后,收到过di。2通过预约信号,机器人自动完成2。
3.我们通过中断来实现。
4.中断的意思是机器人的背景扫描(类似pLC)。不会与机器人的前台相撞。后台实时扫描信号。执行设置的中断程序。中断程序中没有动作命令。前置机器人不会停止,不会影响动作。
5.新建定期程序,tr这样命名。1,注意:中断类型选择(trap)
6.进入中断程序后,插入命令。也就是说,当机器人执行中断程序时,在书本的量上设置真。
同样道理设定第二个中断程序。
7.进入主程序,设置中断及对应的io信号。
37行的意思是,无论什么时候di就是说。当1信号0为1时,tr执行。中断1个程序时,flagG1为真。
35-40行的程序执行一次就可以了。无需像设定开关那样反复执行。
8.主要步骤如下。如果没有人给数字信号灯,机器人就在起始位置等。
五、与相机通信的插口发送接收数据处理和提取。
1.相机通常会向机器人发送字符串。例如,“、”、“x、y、z的角度以D为结束符,数据之间用“、”隔开。
2.机器人接收到上述字符串后,该如何提取字符串并支付给变量deltaX、deltaY和theetaZ?
3.创建一些num变量以存储进程数据,例如StartBit1。表示x的数据是从第几个开始的?Endbit1表示x的数据***后是第几个?Lenbit1表示x数据的长度。s1表示提取的x值的字符串。
5.首先假设x的位为1,向Startbit1分配1。
6.插入函数streafind,查找“”,第几位得到EndBit1的值?
减去StartBit1后是x的数据长度。
9.用同样的道理得到y和theta的信息
10.通过Strpart函数,提取从StartBit1到LenBit1的字符串,即x值的字符串。
12.用同样的道理得到y和z的字符串
13.通过Str ToVal函数将s1转换为num型,支付delta.x、Str ToVal函数的反馈值为boll量,即转换为真但未成功则为假。
14.用同样的道理得到三角洲。y和德尔塔
15.成功后可以进行屏幕测试。
将相同数据类型的元素按一定顺序排列的集合
例如,您可以创建一个robtarget类型的排列p aray。aray,p aray有10个点。您可以在10的位置上使用以下代码。非常简单。
FOR_FROM 1 TO 10 DO
Movel p_array{i},v 500,z 1,tool 0;
3.哪些类型的数据可以创建矩阵?
所有数据类型都可以创建矩阵。
ABB机器人“ABB机器人排列大三次元!
5.数组的起始编号是0还是1?
b.选择类型,例如Robtarget
c.设定新制作、名称、次元(这里是一维的例子),各维的要素数(例如10)
d.制作后,有10个数据。p_array,
e.修改点位,单击上面有图的行,修正位置。也就是说,修改了数组中元素的位置。
- 下一篇:ABB电动汽车底盘的智能制造和加工
- 上一篇:ABB机器人坐标系——ABB机器人