S7-1200PLC运动控制案例介绍

工业控制

1221人已加入

描述

在这个案例中,主要让大家学习1200PLC的运动控制功能,我们借助这个三轴设备(如图1所示)实现长宽为50mm的正方形的绘制。

在HMI上(如图2所示)可以手动实现轴使能、手动X轴正负方向运行;手动Y轴正负方向运行;手动Z轴正负方向运行、示教基准位置点等。自动时,按下“启动”按钮即自动绘制长宽为50mm的正方形。 

运动控制

程序设计思路

1)可以设置一个基准点(如图3),然后依次算出其他的位置点。

2)使用绝对定位指令,到达相关位置点。

运动控制

图3

2

程序设计

1)创建工艺对象:创建X轴的工艺对象(如图4至图10所示)。Y轴和Z轴的工艺对象类似,在此不赘述。

运动控制

图4

运动控制

图5

运动控制

图6

运动控制

图7

运动控制

图8

运动控制

图9

运动控制

图10

2)因为我们设备上有X、Y、Z三轴轴,每个轴都有位置值,所以可以建立 “UDT数据类型”,用于存储三个轴的位置值。UDT的数据类型名称为“Pos”,如图11及图12所示.

运动控制

运动控制

图12                                                  图11

3)手动控制程序(FC1),如图13至16所示,主要实现的功能是轴使能,三个轴的点动控制、三个轴的回原点、三个轴的故障复位等。

运动控制

图13

运动控制

图14

运动控制

图15

运动控制

图16

4)位置计算(FC2),要计算zheng方形的4个位置点,可以使用SCL语言编写。当“"inst_Pos".HMI_SetBase”的值(来源于HMI上的按钮)为1时计算4个位置点。如图17及18所示,

运动控制

图17

运动控制

图18

计算出来的位置值存储在数组变量中,如图19所示。四个点的坐标值对应图3的四个位置值。

运动控制

图19

3)主程序

①程序段1主要是调用手动控制程序。并且如何按下了HMI上的“"inst_Pos".HMI_Start”这个按钮之后把状态步MW36设置为1。

运动控制

②“"inst_Pos".HMI_SetBase”为触摸屏上设置基准点按钮,当按下这个按钮则可以设置1个基准点,依次基准点画一个正方形。由于计算出来的位置值的第3个点和第4个位置点是相反的,所以地址中的值做个交换。"inst_Pos".Pos[1]给到"inst_Pos".FinalPos[1],"inst_Pos".Pos[2]给到"inst_Pos".FinalPos[2],"inst_Pos".Pos[3]给到"inst_Pos".FinalPos[4],"inst_Pos".Pos[4]给到"inst_Pos".FinalPos[3],起始点和结束点是同一个点,所以"inst_Pos".Pos[1]给到"inst_Pos".FinalPos[5]。其中"inst_Pos".FinalPos变量如图20

运动控制

运动控制

图20

③调用位置计算程序

运动控制

④轴的当前位置

运动控制

⑤状态步判断,然后到达不同的位置

运动控制

运动控制

运动控制

运动控制

运动控制

运动控制

运动控制

 

 


编辑:黄飞

 

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分