机器人编程示例

当今的现代工业机器人可用于许多不同的应用。由于能够连接各种不同的末端执行器,机器人几乎可以执行任何任务。工业机器人现在被用于世界上几乎所有的制造业;甚至出现了机器人餐厅,机器人可以在你面前为你准备食物。

对于一个示例任务,我将使用工业自动化中使用的一个常见应用程序,从传送带上挑选一个零件并将其放在旋转表盘上。输送机用于将组件和组件转移到机器的不同部分进行加工。

增加一个旋转表盘表,表盘的一个分度位置将有一个准备加载的空夹具,一个当前准备处理的组件,以及一个待卸载的成品组件。机器人应用是将未完成的组件从传送带送到表盘装载夹具。

主模块是我们将保存所有处理整个机器人功能和任何全局变量的过程或 PROC 的地方。从上到下,我喜欢将相似的数据类型组合在一起并在这里定义它们。在此处声明工具数据和夹具数据,但不声明机器人位置 - 将其保存为运动模块。

while 循环本质上是一个无限循环,它使用来自PLC的一系列程序编号调用不同的机器人功能,如 PICK 或 PLACE 。循环首先将数字输入程序执行变量 (diExe) 视为是/否条件语句。如果编号为零,则我们从 PLC 检索正确的程序编号。一旦程序执行变量不再为零,我们就可以检索并调用特定的机器人函数。

WHILE diExe = 0 DO

! Code to retrieve program # from PLC

ENDWHILE

如果满足条件,另一种循环方法是使用从最后一行到第一行的 GOTO 跳转 - 在这种情况下,条件为 diExe 为假。

LoopStart:

! Code to retrieve program # from PLC

If NOT(diExe) GOTO LoopStart;

现代工业机器人具有以太网/IP、PROFINET 甚至 EtherCAT 选项,向机器人发送程序编号是一项非常简单的任务。我们只需要将现场总线映射中的位、整数甚至浮点数映射到变量。出于错误检查的目的,我喜欢回显 PLC 发送给机器人的值,并有一个执行标志来启动该过程。

当从 PLC 捕获程序编号时,我们想要验证是否获得了正确的编号,因此我们设置了 WHILE 循环以将 PLC 编号保存到变量中,然后将该变量发送回 PLC。然后我们检查execute变量,如果还是0,就再次跳回到循环的开头。当回显与程序编号匹配时,PLC 将执行标志设置为 1。一旦设置了该标志,机器人就可以通过在主 while 循环中创建的状态机调用特定任务。

一些感兴趣的关键命令包括 gi 和 go,指的是组输入和输出,它们是来自 PLC 的离散数字信号组合成一个整数- 当只有几个数字通道可用时,这是命令信号的完美配方。'Command' 是来自 PLC 的输入,而 SetGo 是将 CmdEcho 回复作为组输出发送回 PLC 以供确认的功能。

WHILE diExe = 0 DO

nCmd:=giCommand;

SetGo goCmdEcho, nCmd;

ENDWHILE

或使用 GOTO 的替代示例:

LoopStart:

nCmd:=giCommand;

SetGo goCmdEcho, nCmd;

If NOT(diExe) GOTO LoopStart;

使用 CASE 语句是一种通过程序编号轻松有效地组织各种功能以及在调用无效程序编号时设置故障或示教信息的方法。

TEST nCmd

CASE 1 :

FuncFirst();

CASE 2 :

FuncSecond();

DEFAULT ;

TPWrite('Invalid Program')\Num:=diExe;

ENDTEST

在主模块的底部,我喜欢放置所有的世界区域声明和函数调用。世界区域是在不中断程序流程的情况下告诉 PLC机器人位置的好方法。这些声明也可用于将机器人恢复到已知的安全位置。每个世界区域都需要两种数据类型:wzstationary(机器人允许工作范围的声明)和 shapedata(允许区域的大小)。

一旦定义了区域变量,您需要创建一个调用区域形状函数的过程。区域有三种不同的形状;球体、长方体和圆柱体,每个形状都有一个事件调用。在定义区域并且机器人进入该区域后,可以将输出或变量设置为 true。如果机器人超出允许范围,运动会停止和/或信号会反转。

!****************************************************************

! World Zones

!****************************************************************

! Called by Power_On Event

PROC WorldZones()

WZDOSet\Stat,wzHome\Inside,shpwzHome,doAtHome,1;

WZBoxDef\Outside,shpwzDial,poswzDialLow,poswzDialHigh;

WZDOSet\Stat,wzClearDial\Inside,shpwzClearDial,doClearDial,1;

ENDPROC

ABB 能够定义模块在运行时的行为方式。您可以将模块设置为“无步骤”模块,这意味着用户不能在示教器上一次一行地通过程序。我通常将这种类型的模块用于计算或将返回一些值的函数 - 尽量不要将它用于包含运动的函数。必须测试此模块中的任何代码以确保正确操作,因为您将无法单步调试代码。

!*****************************************************************

! Get Pick Position

!*****************************************************************

FUNC robtarget GetPosition(\switch Pick,\switch Place)

IF Present(Pick) THEN

TEST nPartType

CASE 1:

RETURN pPick_5S3H_RH;

CASE 2:

RETURN pPick_5S5H_RH;

CASE 3:

RETURN pPick_6S5H_RH;

DEFAULT:

BitSet dnFltPend1,2;

SetGO go03FaultBits1,dnFltPend1;

TPWrite('Wrong Part type')\num:=nPartType;

ENDTEST

ENDIF

这是处理移动机器人的所有程序将驻留的地方。运动模块将从初始化程序开始,例如将机器人送回家或服务位置,并根据零件是否在夹具中确保夹具处于正确状态。

接下来,我发出一个“突袭”移动位置,这是一个远离工作站工具但靠近机器人工作区域以减少浪费时间的位置。示教位置时,确保机器人可以移动到任何突袭位置和原始位置,而不会受到任何物理中断。使用偏移命令从突袭位置移动到最终工作位置,最终工作位置为示教位置。

偏移命令只是从示教位置调整机器人在一个或多个笛卡尔轴上的位置。例如,如果您在 x0,y0 处示教位置,则应用 x10,y0 的偏移量,机器人将移动到 x10,y0。到示教拾取位置的最后移动应该是精细的线性移动,机器人程序指针将在该位置等待,直到机器人暂时完全停止。一旦停止,我们可以关闭零件周围的夹具并继续沿着我们的路径返回到突袭位置。

PROC mPickPallet()

!Check Part Present

CheckGripper\Empty;

!If Gripper Faulted End Command

IF dnFltPend1<>0 OR dnFltPend2<>0 THEN

FaultMsg;

SetCmdDone;

RETURN;

ENDIF

!Open Gripper

Gripper\Open;

!If Gripper Faulted End Command

IF dnFltPend1<>0 OR dnFltPend2<>0 THEN

FaultMsg;

SetCmdDone;

RETURN;

ENDIF

!Get Pick Position

pPallet_Pick:=GetPosition(\Pick);

MoveL pPallet_App,v2000,z200,tGrip;

MoveL Offs(pPallet_Pick,-20,0,120),v2000,z50,tGrip\WObj:=wobjPallet;

MoveL Offs(pPallet_Pick,-20,0,-5),v200,z10,tGrip\WObj:=wobjPallet;

MoveL offs(pPallet_Pick,0,0,-5),v200,z10,tGrip\WObj:=wobjPallet;

MoveL pPallet_Pick,v500,fine,tGrip\WObj:=wobjPallet;

Gripper\close;

!If Gripper Faulted End Command

IF bDryCycle=FALSE AND dnFltPend1<>0 OR dnFltPend2<>0 THEN

FaultAck;

gripper\Open;

IF dnFltPend1<>0 OR dnFltPend2<>0 THEN

FaultMsg;

SetCmdDone;

RETURN;

ENDIF

MoveL Offs(pPallet_Pick,0,0,150),v500,z50,tGrip\WObj:=wobjPallet;

MoveL pPallet_App,v2000,z200,tGrip;

MoveL pHome,v2000,z200,tGrip;

ENDIF

setdo do48PartPicked,1;

MoveL Offs(pPallet_Pick,0,0,150),v500,z50,tGrip\WObj:=wobjPallet;

MoveL pPallet_App,v2000,z200,tGrip;

SetCmdDone;

ENDPROC

上述拾取零件并将其移动到新位置的示例是常见的机器人任务,但机器人功能仅受设计者想象力的限制。如果使用正确的末端执行器和正确的机器人模型,机器人几乎可以完成任何任务。

独学而无友,则孤陋寡闻;如今,各行业内卷严重,如果不想被这个时代抛弃,可以加入我们大家庭一起进步,如果想和工控各行业人员交流,并且想获得更多的软件,图纸,程序,可以加入工控老周的粉丝群

如果您想有一个随身的工控128G大U盘,并且里面包含了各种工控图纸,软件,程序,可以购买以下这个U盘

THE END
0.AppStudio与ABB的OmniCore控制器、所有ABB工业机器人、协作机器人无缝协作,并可与ABB的RobotStudio®编程软件集成。 线上学习 开始使用AppStudio AppStudio专家培训 教学视频 AppStudio简介 如何创建网页应用 自定义组件 云库 相关产品 RobotStudio OmniCore Wizard简易编程软件 更多信息 软件 下载AppStudio PDF jvzquC41pg}/ckg0eqs0r{tfwezt1{tdqvodu8j1'K6'KF';6+F9.>6'C>&GA*DF'GG'N9'DD+C88utqf{dvrtp/uisgns
1.ABB机器人离线编程软件RobotStudio6.08中文破解版教程先下载RobotStudio ,一定要选择完整安装(没有软件的可以联系我们) 安装完成后打开RobotStudio,按下快捷键【win+R】,输入【regedit】进入注册表编辑器,按照下面操作找到NoLockdata,点进去之后找到倒数第六行从左到右第六个改成F4就行了 然后重启RobotStudio,进去之后发现试用期延长了八千多天就行了(如果还有什么不懂jvzq<84yyy4bdklh0eun1j4pgyy0i|}y13;40qyon
2.Softwareanddigital|Softwareanddigital|ABB虚拟/增强现实 配合耳机,编程与调试将会更快 防碰撞自动路径规划 下达指令后,机器人将自动到达所需点位 其他售卖工具 工作站查看器、灯光及3D特效 RobotStudio®云端功能* 与团队成员在云端协作完成机器人项目,追溯项目各版本历史 点击此处获得30天免费使用 立即下载 点击此处申请许可证 申请许可证 ABB机器人产品jvzquC41pg}/ckg0eqs0r{tfwezt1{tdqvodu8j1uugv€ftg/gof6ikikzbn8wqdqztv~ikq
3.华航智造PQArt在线教程整个机器人写字流程如下: (1)从工作站库内下载名为“ABB机器人写字(“科”字)”的工程文件 下载位置: A.单击PQArt机器人离线编程软件顶部的功能面板【机器人编程】/【文件】/【工作站】; B.在展开的“选择工作站”界面单击“分类:界面”,找到“ABB机器人写字(“科”字)”工作站; C.单击【插入】按钮,下载jvzquC41zvh/rz6;7;4dqv4u16t
4.ABB喷涂机器人编程ABB喷涂机器人编程招聘猎聘ABB喷涂机器人编程招聘频道为您提供大量的ABB喷涂机器人编程招聘信息,有超过10000多ABB喷涂机器人编程招聘信息任你选寻,招聘ABB喷涂机器人编程人才就来猎聘ABB喷涂机器人编程招聘!求职找工作就用猎聘聊。jvzquC41o0rjgynp0eun1|4lulibfu6swxg8v8
5.ABB机器人官方手册6.xx.txtABB机器人官方手册6.xx,百度网盘下载。ABB机器人官方手册6.xxjvzquC41yy}/k}j{g0ipo8wguq{sen4yw{ocq>788/723?>723
6.ABB机器人有哪些常用软件选项?ABB机器人常用软件选项 1.运动类选项 602-1 Advanced shape turning 用于补偿低速切割时的路径误差,提高路径精度。(小圆等) 补偿切割时摩擦力对进精度的影响。(从0.5毫米优化到0.1毫米) 603-1 Absolute Accurracy 用于补偿个体机器人与理想机器人的机械误差 提高TCP、线性移动、工件坐标系的精准度 对于外轴,单个jvzquC41o0mpppgqujo/exr1kpjfz7ujrAspf~qgkfC5(~xgtpgngFsgy/gcd/fevkuo?wjyu(ougvnf?39:::;
7.【亲测能用】ABBRobotstudio6.08【工业机器人仿真软件】中文破解ABB Robotstudio6.08【工业机器人仿真软件】中文破解版 软件支持:64位/32位软件大小:2.2GB系统:Win10 安全检测:更新时间:2021-11-12界面语言:中文版上传者:black601065 第1步 软件安装包下载解压打开 下载到电脑本地,鼠标右键进行解压~ 第2步 打开文件夹jvzquC41uqluyjwg05j787hqo1rju}4ugv{qa?67;0nuou
8.ABB机器人中文手册20220716113739.pdf• 搬运时,机器停止,机器人不应置物,应空机。 第 1页 ABB ENGINEERING (SHANG HAI) S4C IRB 基本操作培训手册 • 意外或不正常情况下,均可使用 E-Stop 键,停止运行。 在编程,测试及维修时必须注意既使在低速时,机器人仍然是非常有力 的,其动量很大,必须将机器人置于手动模式。 • 气路系统中的压力jvzquC41oc~/dxtm33>/exr1jvsm1;5441683?4827615>5772654:70ujzn
9.robotstudio下载RobotStudio(abb机器人仿真)v6.08 破解版,通过这款robotstudio我们可以使用它在办公室轻易地模拟现场生产过程,无需花巨资于昂贵的设备,就可以明确的让客户和主管了解开发和组织生产过程的情况,这软件能够让你在短时间内快速完成编程,在你的电脑里制作一个虚拟机器人,给你带来超真实的体验,支持各种CAD格式,你可以将这jvzq<84yyy4xkw|kp94dqv4uqhz08:=20jznn
10.联系方式ABB机器人售后服务ABB机器人培训 |--ABB机器人基础培训 |--ABB机器人上手实践综合培训 |--ABB机器人编码进阶培训 ABB机器人售后 其他 新闻中心 ABB机器人编程之机器人示教器简介及操作应用方法——ABB机器人 ABB机器人的控制柜和示教器的认识——ABB机器人 ABB机器人开启物料搬运新未来——ABB机器人 jvzq<84cdd3tjxzjqw4hqwldqunj0lto1euovjhv1
11.robotstudio附加组件用于irb910invscara的机器人控制软件RobotStudio新增 Robot Control Mate 插件,用户能够通过电脑操控、示教和校准SCARA机器人,从而使SCARA机器人的动作控制变得更加简便。这也是ABB离线编程软件首次可用于实时操控机器人的真实动作。 三步开启 Robot Control Mate 第二步 在RobotStudio 插件标签搜索 “Robot Control Mate” 或在RobotApp 中下载 Robot ControjvzquC41pg}/ckg0eqs0r{tfwezt1{tdqvodu8j1uugv€ftg/gof6ikikzbn8wqdqz.exsvtqr.ojyg