admin 管理员组文章数量: 887021
2024年2月27日发(作者:css判断是否有滚动条)
本文以新松SR10C型号机器人为例,建立简单的物体抓取仿真模型,所用物体为圆柱体,所用手爪为Schunk的PZN-plus_100_1。该实例的操作过程如下:
一、 建立仿真场景
建立仿真场景,即是将各组件(机器人,手爪,工件)拖拽到软件界面中,并进行装配组合,调整到合适的位置。
•常用Items by Type(按种类分)进行组件选取具体方法:Items by Type → Robots → Siasun → SR10C,然后双击或者鼠标按住SR10C拖拽到合适的位置。
注意:双击的作用是将机器人放置到场景中[0, 0, 0]的位置,拖拽的作用可以将机器人放置到场景中任意的位置(根据实际情况需要)。
1
•将末端执行器—手爪拖拽到场景中具体办法:Items by Type → Tools → Schunk → PZN-plus_100_1。•将手爪装配到机器人上。一般来讲,当你将手爪拖拽到场景中后,手爪默认是选中状态,此时你可以自由移动手爪,至机器人末端位置,当手爪靠近机器人末端位置的时候,会自动识别装配关系(出现绿色一条线),此时继续移动到实际的装配位置,松开鼠标,两者就会自动装配上。2
注意:有些时候,会因为一些原因,导致手爪没有选中,故而不能移动手爪进行装配。此时,解决办法为:点击Select →
选中手爪(呈红色)→
点击PnP,此时再按住鼠标就可以移动手爪了。
•选择工件具体步骤:Items by Type → Basic Shapes → Visual Components → CylinderGeo。
•调整各组件至合适的位置具体方法:Select(选择机器人) → Trans(下方会显示机器人目前的坐标值)→修改下方的坐标值为[0, 0, 0]。同样的方法,调整圆柱体至[1000, 0, 0]的位置。
注意:圆柱体需要位于机器人工作空间内,方可实现抓取动作,判断是否位于工作空间的办法:Select(选择机器人) → Param → Workspace →
选择Profile和Envelope,即可判断。
3
•调整机器人手爪的位置具体办法:Select(选择机器人) → Param → General → J5(修改为-90°)→Simulation → Save State。二、 参数设置
该部分主要是设置好手爪及圆柱体的尺寸参数(一般情况下,会根据实际作业情况来选用手爪及工件,因此,不用特别考虑该部分参数,但该实例不是按照实际的机器人工作情况来的,所以需要考虑下手爪及工件的尺寸参数),具体方法如下:
Select(选择手爪)→ Param → Finger → Bottom(手爪闭合后所能包络的物体尺寸)。可以看到Bottom的值是48mm,因此我们设置圆柱体的直径尺寸应该4
稍微大于48即可,这里设置为50mm。
具体方法:Select(选择圆柱体) → Param → General → CylinderRadius(设置为50,注意该处其实是直径的意思,并非半径,软件有误),当然此时也可以适当修改长度Length至合适的尺寸(这里设置为150mm)。
其次,要建立手爪与机器人间的通讯关系,这包括了两个部分:一个是机器人告诉手爪去实施抓取,另一个是手爪在实现抓取后告诉机器人可以运动了。
具体来讲:
1)Select(选择机器人) → PnP → Connect Signals → 点ID会进行排序→Out 51(Out 50 之后的Out均可以选取)→ Component(选择手爪PZN_plus_100_1)→ Input/Output/Singal(选择SINGAL(InSignal))→点击Connect。解释:该部分即是机器人告诉手爪去实施抓取。此时,对于机器人来讲是输出Out,对于手爪来讲是接收信号InSignal。
5
2)Select(选择机器人) → Param → SignalActions → Configure→ Output Signals(0之后的均可以用,这里选择1)→ Grasp→ Tool_TCP→点击OK。解释:该部分即是手爪在实现抓取后告诉机器人可以运动了。三、 程序设计
该部分是核心部分,在各参数设置完毕之后,进行场景中坐标系的设置及运动程序的设计,具体操作如下:
设置坐标系:Base(选择Base1)→ Tool(选择Tool_TCP)→ 点击Tool后的>>箭头→选择Translate(场景中会显示手爪坐标系的位置,下图)→移动Z方向坐标至合适位置以保证能抓取到物体。
6
此时,再进行一次保存:Simulation → Save State。
下面进行程序设计
1)先将机器人移动至抓取工件的位置Trn Tool(移动机器人)→再点击 (会出现一个对话框,这是为了方便拾取工件的表面点)→拾取圆柱体表面中心点位置→ 机器人末端跟随到该位置→在Teach中添加 ,即记录下该动作。7
2)将机器人移动至工件上方选中机器人(改变Z向位置为500)→点击 拾取该位置 → 将 移动至第一的位置。解释:为了方便,我们先将机器人移动至了抓取物体的位置,但机器人不能一下子从初始位置移动到抓取位置,正常来讲需要先点对点的曲线快速移动至工件的上方,然后再走直线移动至抓取工件的位置。因此,才有了以上两个步骤,并进行了次序调换。
8
3)机器人抓取点击 ,设置参数如下:
解释:第一个
对应是手爪抓取动作,Set Output为51,Value为true,这与上文的信号连接设置的数值对应,ture表示该命令为真。第二个
的道理类似。
为了抓取效果明显,两者中间添加delay(延迟),Delay in seconds可以选择默认的1秒。
4)机器人抬起设置Z方向坐标为500,回车,并记录下该位置,如下:9
5)机器人Y向移动设置Y方向坐标为600,回车,并记录下该位置,如下:6)机器人Z向移动放置物体设置Z方向坐标为150(该位置和初始抓取物体的坐标位置一致,若忘记该位置,可以返回查看),回车,并记录下该位置,如下:10
7)机器人释放物体与上文的抓取物体道理类似,不同之处在于,Value值选择为false(表示该命令为假,然后执行相反的动作,即释放物体)。8)机器人抬起设置Z方向坐标为500,回车,并记录下该位置,如下:11
9)机器人复位点击Reset,机器人复位,并记录下该位置。注意:有时候会显示不出坐标系的值,很可能的原因是没有选择Trn Tool,重新选择一下即可。12
至此,程序设计完毕。
动画仿真
点击复位按钮后,就可以进行动画仿真了,可以调节运动速度的快慢,也可
四、以生成仿真动画等。13
版权声明:本文标题:机器人案例(一)-抓取(离线编程) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1708996643h536356.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论