软件风向标,重度软件行业发展门户!

文章更新 | 热门文章
您的位置: 首页  →  攻略 → 《机器人冲突游戏攻略 新手玩部落冲突的攻略

机器人冲突游戏攻略 新手玩部落冲突的攻略

2023-06-01 18:45:13      小编:      我要评论

随着工业机器人的发展和机器人智能水平的提高,机器人的应用范围仍在扩大。那么机器人能做什么呢?自动识别和在线生成包含工艺参数的轨迹和自动操作。


只有你想不到没有他们做不到!今天小编就带大家见识下,ABB机器人风格!

工业机器人的广泛应用不仅可以提高产品的质量和产量,而且对保证人身安全、改善劳动环境、降低劳动强度、提高劳动生产率、节约原材料消耗、降低生产成本具有重要意义。

因为ABB机器人用于焊接、搬运、装配、涂装、机械加工、拾取、包装、堆放、上下材料等,逐渐取代劳动力,在工厂中发挥越来越重要的作用,需要大量的技术人员定期维护机器人系统,及时解决故障问题,使机器人高效生产、高效运行。

下图是ABB机器人基于第一种底漆免教编程技术,为宇通客车打造了第一条智能生产线,实现了小批量、多品种的柔性生产模式。

机器正在进行底漆和涂胶

说了那么多机器人可以操作完成的工作,那下面咱们就一起来看看,ABB机器人六大编程技巧!

Pdisp轨迹偏移使用,单站多次预约,robotstudio创建两台机器人socket连接、双工位预约程序、与相机通讯的Socket收发数据处理与提取,如何创建数组等编程技巧,充满实用干货!


1ABB机器人Pdisp 使用轨迹偏移

1.如果有以下两种产品,右边的产品轨迹已经完成,左边的产品估计是一样的,如何快速生成左边的轨迹(左边的产品可能会平移和旋转)。

2.完成右侧轨迹示教Path_30,如上图所示。Target_20。


3. 完成左起点的教学,为Target_ref_start,如下图。


注:如果左侧产品轨迹旋转,教学Target_ref_start与左边产品的姿势相比,要和Target_与右侧产品相比,20的姿态相同(这里左侧产品旋转30°,z的角度也旋转了30个方向°)



4.插入指令如下:

MoveJ pHome,v1000,z100,tWeldGunWObj:=wobj0;//移动到Home位置



Path_30.//运行右侧产品轨迹;


MoveJpHome,v1000,z100,tWeldGunWObj:=wobj0;//回到Home;


MoveJTarget_ref_start,v1000,fine,tWeldGunWObj:=wobj0;//走到左边产品的起点;


ConfJOff;///由于使用偏移,关闭轴配置监控,否则可能使用原配置参数导致位置失误 ConfLOff; ///由于使用偏移,关闭轴配置监控,否则可能使用原配置参数导致位置失误;


PDispOnRot,Target_20,tWeldGun;//设置当前位置和Target_由于机器人此时停止了20的偏差关系(包括平移和旋转)Target_ref_start起点是设置左轨和右轨的整体偏移关系。 ot计算表示平移和旋转。如果不使用。 ot,只使用平移,不计算旋转;


Path_30.//运行原轨迹,此时轨迹参考坐标移动关系,机器人实际走左边产品轨迹;


PDispOff;//完成轨迹,关闭平移关系;


MoveJ pHome,v1000,z100,tWeldGunWObj:=wobj0;


2ABB机器人单工位多次预约程序

1.机器人有以下程序:

2.工艺流程如下:


机器人在home等待。有人按过di机器人开始执行信号。手动预约可一次多次,即如果手动一次3次,机器人执行三次。


3.我们通过中断来实现。


4.中断的意义是机器人背景不断扫描(类似)PLC),与机器人前台运动没有冲突。当后台实时扫描信号时,将执行设定的中断程序。中断程序中没有运动指令,前台机器人不断运动,不影响运动。


5.新建例行程序,命名tr_1.注意:类型选择中断:(trap)



6.进入中断程序,插入指令如下,即令如下reg1记录次数加1。



7.进入主程序,设置中断和对应io信号。



37行的意思是,任何时候di_1信号0变1,就会触发执行tr_中断程序,即置flag1为true;

35-37行程序只需运行一次,类似于设置开关,无需重复运行;


8. 如下所示。reg1=0,机器人在home等待



3在robotstudio创建两台机器人socket连接

1.什么是socket通讯?

就是TCP/IP通信,无协议,在微软环境下称为socket。


2.socket沟通能做什么?

指定数据可以收发,包括sting字符串,byte数组等。


3.创建socket机器人需要什么选择?

机器人需要616-1 PC-INTERFACE选项。



4.socket哪个网口插入通信网线?

Service口(IP固定:192.168.125.1)或者Wan嘴都可以(可以自己设置)。


5.创建client端的实例

机器人通常用作机器人和相机通信client端。


a、建立新的机器人系统时,注意添加系统pc-interface选项。


b、为避免之前的连接未关闭,先插入socketclose指令,后面的socket为自己新建的socketdev类型变量。


c、然后插入创建连接socketCreate。


d、插入并建立连接SocketConnect,以后需要制定Server的ip如果与端口连接到计算机和另一个虚拟控制器,ip设为“127.0.0.一、端口自定义,建议不要使用默认1025。

这一步作用于机器人和谐server建立连接,如果没有建立成功,就会一直等待,如果成功,就会落实。


e、在这里进行测试,成功建立后插入TPWrite在示教器中可以看到指令socketclinent connect successful。


f、接下来可以收发数据,这里的例子是client先发送数据server,再接受server发送回来的数据。


g、SocketSend后面可以发送string或者byte对于数组,可以选择不同的可选变量。


h、发送完毕后client接收到server并写下发回的数据。


6.以下为server端示例

a、重建工作站时不要忘记添加pcinterface选项。

b、作为server,需要创建两个机器人socketdev变量。

c、为避免之前的连接未关闭,还建议先socketclose。

d、


e、接着创建socketCreatetemp_socket 服务器端socketdev。

f、SocketBind为绑定socket要监控的ip和端口,如果是虚拟仿真,ip为127.0.0.1、端口自定义(和client端设置一致)。

g、SocketListen为机器人server监听是否有client连接。

h、socketAccept为接受client的连接。

i、机器人建立连接后,可以执行死循环,即始终处于收发状态。

j、 之前client程序为client先发后收,所以在这里server先收后发。

7.client和server完成后,可以运行,注意先运行server端,即server机器人处于监控状态

8.server机器人收到的信息如下:


9. client机器人收到的信息如下:



4双工位预约程序

1.生产以下双工位


2.工艺流程如下:


人工完成1#工位上料后按按钮di_机器人焊接1#站(按钮不保持,即手松开信号为0)。


在此过程中,人工上下2#工位,完成后按压di_完成预约(即不需要等待机器人完成1#工作)。


机器人完成1#工作后,收到了di_2预约信号,机器人自动完成2#站


3.我们通过中断来实现。


4.中断的意义是机器人背景不断扫描(类似)PLC),与机器人前台运动没有冲突。当后台实时扫描信号时,将执行设定的中断程序。中断程序中没有运动指令,前台机器人不断运动,不影响运动


5.新建一个例行程序,取名tr_1.注意:类型选择中断:(trap)



6.进入中断程序,插入指令如下,即令如下bool量置true



同样,设置第二个中断程序



7.进入主程序,设置中断和对应io信号



37行的意思是,任何时候di_1信号0变1会触发执行tr_中断程序,即置flag1为true


35-40行程序只需运行一次,类似于设置开关,无需重复运行


主要程序如下:di信号,机器人home位等待。


5.与相机通信Socket处理和提取收发数据

1.相机通常向机器人发送字符串,如1.23,4.56,7.89D”,即x为1.23,y为4.56,z的角度为7.89、以D为结尾符,用,隔开数据。


2.如果机器人收到上述字符串,如何提取并支付变量deltaX,deltaY,和thetaZ?


3.建立若干num存储过程数据等变量StartBit1.表示x数据从第几位开始,Endbit表示x的数据结束是第一位的,Lenbit表示x数据的长度,s1表示提取值字符串

4.


5.假设x的第一个是1,给出Startbit1赋值为1


6.插入函数strfind,找第一个,在第一个,得到EndBit1值


7.


8.EndBit1减去StartBit1是x的数据长度


9.同样得到y和theta的信息



10.通过StrPart提取从函数StartBit1开始到LenBit1结束字符串,即x值字符串


11.


同样得到y和z的字符串


13.通过StrToVal函数,把s1转为num型,付给delta_x, StrToVal函数的反馈值为bool量,即成功转换true不成功为false


14.同理得到delta_y和delta_theta


15.成功后可以写屏幕测试,如下图所示:



6ABB机器人如何创建数组?


1.什么是数组?

按一定顺序排列相同数据类型的元素


2.有什么用?

例如创建一个robtarget类型的数组p_array,p_array有10个点,10个位置后可以使用以下代码,方便简单


FOR i FROM 1 TO 10 DO


MoveL p_array{i},v500,z1,tool0;


ENDFOR


3.哪些数据类型可以创建数组?

所有的数据类型都可以创建数组


4.数组最大几维?

ABB机器人">ABB机器人数组最大三维!


5.数组的起始序号是0还是1?

是1


6.如何创建?

a.程序数据

b.选择类型,例如Robtarget

c.新建、设置名称、维数(这里举例1维)、每个维度的元素数(举例10)


d.创建后,有10个数据p_array,


e.修改点位,点击上图中的一行,修改位置,即修改数组中的元素位置。


为了让大家有更深入的了解ABB机器人编程,可以看看ABB使用与机器人相关的语言基础、课程规划和坐标系,作为初学者,他们不知道如何开始,这将引导每个人一步一步地进步并做好规划。

详细讲解了最基本、最常用的机器人工具坐标系、工件坐标系和基坐标系,让学生彻底理解。

最后,有需要的合作伙伴可以看下图,获取相关机器人编程资料!

  • 发表评论
资讯排行 资讯中心 热门专区 软件评测
软件排行榜 软件攻略 软件下载 软件开测表
软件排行榜 软件礼包 软件下载 新软件测表
安卓排行榜 软件视频 软件下载
苹果排行榜