ABB初级培训试卷及答案
- 格式:pdf
- 大小:348.49 KB
- 文档页数:4
初级培训作业答案
基础题:(40’)
1.为什么在示教机器人坐标前要建立自己的工件坐标系和工具坐标系?(8’)
Answer:建立自己的工具坐标系有两个好处:
1. 方便我们在做机器人重定位旋转时,可以很方便的让机器人绕着我们定义的点做空间
旋转,从而很方便的把机器人调整到我们需要的姿态。
2. 更换工具时,只要按照第一个工具做TCP的方法重新做一下新的TCP,即可不需要
重新示教机器人轨迹。
从而很方便的实现轨迹的纠正。
建立工件坐标系也有两个好处:
1.方便我们在机器人现行运行时,按照我们自己建的坐标系的方向做线性运动,而不拘泥于系统提供的基座坐标系和世界坐标系这几种固定的坐标系。
2.当工作台面与机器人之间的位置发生相对移动时,只需要更新工件坐标系,即可不需要重新示教机器人轨迹,从而很方便的实现轨迹的纠正。
2.现在有下面的情况:假如有一信号DO_EStop,一旦机器人处在急停状态,这个信号就
为1,急停一旦解除,此信号立即为0,如何实现?但是现在PLC要求我们,机器人急停时要给他发个信号DO_RobEstop=0,急停解除时DO_RobEstop=1,与我们机器人内部的相反,如何实现?(10’)
Answer:1.进入控制面板-配置-system output :点击添加,信号:选择上面建立好的DO_EStop(必须先建好),status:选择Emergency stop。
就实现了系统状态与一个信号的关联。
(如下图)
2.在Cross connection 里面添加一项,做DO_RobEstop 与DO_EStop 的关联,但是关
联时,DO_EStop要取反,即Invert Actor1 要选择Yes。
3.Z xx(xx代表数字) 和fine 的区别?(5’)
Answer:Z能让轨迹平滑,但是不到达目标点,fine无条件到达目标点,并且到达目标点的速度为0.
4.假如有以下搬运程序:
PROC main()
MoveL P1,v100,z10,tool1\wobj:=Mywobj;
MoveL P2,v100,z10,tool1\wobj:=Mywobj;
Set DO_OpenGrip;
Reset DO_CloseGrip;
ENDPROC
假设机器人整抓着搬运的工件,要放到P2的位置,然后松开夹具,将工件放下;控制夹具的是双控电磁阀(DO_OpenGrip=1,DO_CloseGrip=0时夹具打开)。
问:上述程序是否正确?如果有问题会出现什么后果?(7’)
Answer:上述程序不正确,目标点没有用fine,这样会导致机器人在途中就将夹具打开,工件掉在地上。
5.如果机器人SMB电池提示快没电了,如何保证更换电池后,机器人的零位与更换电池
前一样?或者说不用重新示教零位?(10’)
Answer:在更换电池前,先运行一下指令:
MoveABSJ PzonePos,v100,fine,tool0;其中PzonePos是机器人六个轴都为0的位置,这样机器人就停在了零位,然后关机更换电池,换完后,立即更新转数计数器,这样就保证了前后两次的零位几乎一样。
操作题:(60’)
编写一段程序,满足下面条件:
1.用四点法建立自己的工具坐标系MyTool。
(5’)
2.用三点法在工件上建立工件坐标系MyWobj(定义userfram)。
(5’)
3.建立两个程序模块MainModule 和Module1. (3’)
4.在MainModule模块中,建立主函数:main 例行程序;(2’)
5.在Module1 中建立两个例行程序:Draw_Circle 和Draw_Square. (5’)
6.Draw_Circle 函数功能:机器人由Phome点出发,画一个半径是15mm的正圆,然
后回到Phome点。
(10’)
7.Draw_Square 函数功能:机器人由Phome点出发,画一个半径是50mm的正方形,
然后回到Phome点。
(10’)
8.Main函数功能:通过两个输入信号:DI_Circle 和DI_Square(建立到一块虚拟板
Visualboard,在此板上建立上述两个信号)来调用Draw_Circle和Draw_Square两个子程序。
【当DI_Circle=1 时调用Draw_Circle;当DI_Square=1 时,调用Draw_Square,考虑如何让这两个信号为1 ?】(15’)
9.每执行完上述Draw_Circle和Draw_Square 子程序时,要统计相应画圆或者画方形
的时间节拍,并且显示在示教器上,下个循环开始时要清屏。
(5’)下面为附加选项:
10.移动工件少许,不重新示教机器人位置,如何最快纠正机器人轨迹。
(15’)
Answer:见发给你的两个模块
附加题:(50’)
1.判断机器人当前位置是否home位置。
是home 则跳出子程序。
(20’)
2.如果不是home 位置,屏幕上显示不是home点信息。
并且判断机器人现在是否是手动状态,不是的话,程序不能向下执行,一直提示用户将机器人打到手动状态。
然后手动摇到安全位置,回Home 点。
(25’)
只有第一次,或者系统出错后,此程序才会被执行一次。
(5’)。