全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 工业控制 >

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

时间:2023-04-16 09:56

人气:

作者:admin

标签: 三轴  运动控制  plc 

导读:在这个案例中,主要让大家学习1200PLC的运动控制功能,我们借助这个三轴设备(如图1所示)实现长宽为50mm的正方形的绘制。在HMI上(如图2所示)可以手动实现轴使能、手动X轴正负方向...

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

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

69998b22-db7a-11ed-bfe3-dac502259ad0.png

图1

69f271e2-db7a-11ed-bfe3-dac502259ad0.png

图2

1

程序设计思路

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

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

6a0dc456-db7a-11ed-bfe3-dac502259ad0.png

图3

2

程序设计

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

6a1b240c-db7a-11ed-bfe3-dac502259ad0.png

图4

6a3593be-db7a-11ed-bfe3-dac502259ad0.png

图5

6a4e5e94-db7a-11ed-bfe3-dac502259ad0.png

图6

6a618050-db7a-11ed-bfe3-dac502259ad0.png

图7

6a6a28cc-db7a-11ed-bfe3-dac502259ad0.png

图8

6a847358-db7a-11ed-bfe3-dac502259ad0.png

图9

6a93b2e6-db7a-11ed-bfe3-dac502259ad0.png

图10

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

6aa57e18-db7a-11ed-bfe3-dac502259ad0.png

6ab198d8-db7a-11ed-bfe3-dac502259ad0.png

图12 图11

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

6ac5800a-db7a-11ed-bfe3-dac502259ad0.png

图13

6ad9d370-db7a-11ed-bfe3-dac502259ad0.png

图14

6aeff5b0-db7a-11ed-bfe3-dac502259ad0.png

图15

6afc2bdc-db7a-11ed-bfe3-dac502259ad0.png

图16

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

6b0e18d8-db7a-11ed-bfe3-dac502259ad0.png

图17

6b1f53d2-db7a-11ed-bfe3-dac502259ad0.png

图18

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

6b2ee3ba-db7a-11ed-bfe3-dac502259ad0.png

图19

3)主程序

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

6b4662a6-db7a-11ed-bfe3-dac502259ad0.png

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

6b5e1478-db7a-11ed-bfe3-dac502259ad0.png

6b79db5e-db7a-11ed-bfe3-dac502259ad0.png

图20

③调用位置计算程序

6b9cff3a-db7a-11ed-bfe3-dac502259ad0.png

④轴的当前位置

6bafaec8-db7a-11ed-bfe3-dac502259ad0.png

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

6bb860c2-db7a-11ed-bfe3-dac502259ad0.png

6bc0f4ee-db7a-11ed-bfe3-dac502259ad0.png

6bcfc1cc-db7a-11ed-bfe3-dac502259ad0.png

6bdd3410-db7a-11ed-bfe3-dac502259ad0.png

6bf335d0-db7a-11ed-bfe3-dac502259ad0.png

6c054586-db7a-11ed-bfe3-dac502259ad0.png

6c1d1bfc-db7a-11ed-bfe3-dac502259ad0.png

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信