基于三轴设备画正方形程序设计

电子说

1.3w人已加入

描述

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

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

plc

图1

plc

图2 

1

程序设计思路

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

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

plc

图3

2

程序设计

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

plc

图4

plc

图5

plc

图6

plc

图7

plc

图8

plc

图9

plc

图10

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

plc

plc

图12                                                  图11

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

plc

图13

plc

图14

plc

图15

plc

图16

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

plc

图17

plc

图18

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

plc

图19

3)主程序

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

plc

②“"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

plc

plc

图20

③调用位置计算程序

plc

④轴的当前位置

plc

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

plc

plc

plc

plc

plc

plc

plc

 

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

全部0条评论

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

×
20
完善资料,
赚取积分