[西门子] 新手入门案例:S7-200SMART PLC如何画圆?(附带完整程序)

[复制链接]
查看24712 | 回复0 | 2024-3-31 11:08:56 | 显示全部楼层 |阅读模式
01实验说明

实验设备介绍:西门子S7-200SMART系列PLC,CPU型号为ST20。

XYZ轴平台一套,该平台有三个步进驱动器,三套电机配合丝杆,在本例子因ST20型号的CPU只支持2轴高速脉冲输出,所以只驱动X轴和Y轴。实验平台如下图所示:



注:定义往电机方向移动为正方向,丝杆的逻辑为4mm,步进驱动的细分设置为3200个脉冲一转。

CPU输出端Q0.0和Q0.2分半为X轴的脉冲和方向信号,Q0.1和Q0.7位Y轴的脉冲和放信号,步进驱动器有PLC的接线图如下所示:



02走圆轨迹算法说明

西门子S7-200SMART系列PLC不支持圆弧插补功能,所以需要自己根据算法进行计算后分别驱动X轴和Y轴的移动从而来实现画圆功能。

要驱动XY轴画圆,可采用极限逼近法,把画圆弧变成画线段,如下图所示左侧为六等分,角度a=30°,右侧为十二等分,角度a=15°。



从上图中可以看出,当等边多边形的边越多时,则多边形的轨迹就越和圆相近,所以当角度a足够小时,则得到的多边形轨迹就越与圆接近。

根据以上分析需要完成画圆功能,我们需要知道“圆心坐标值”、“圆的半径”、“画圆的速度”,然后根据分为三部分来实现:

(1)画笔移动到圆上
把XY轴分别回原点,回原点后的位置默认为XY平面坐标的原点,然后由原点移动到圆心坐标,如下图所示1#点为圆心,2#点为圆上点。



假设1#点的坐标为(X1,Y1),速度为V,则X轴移动的距离为X1,Y轴移动的距离为Y1。根据勾股定理可计算出原点到圆心的距离“Y(0→1)”、X轴移动速度“VXaxis”和Y轴移动速度“VYaxis” ,计算公式如下所示:



当画笔到达1#点后,然后Y轴不动,X轴以V的速度移动半径R的距离到达圆上2#点位置,假2#点的坐标为(X2,Y2)

(2)画笔开始画圆
画笔从2#点位置开始移动画圆,假设下个圆上的点为3#点,坐标为(X3,Y3),从圆心到3#点和从圆心到2#点的角度为a,如下图所示:



根据三角函数可计算出3#点的坐标(X3,Y3)的值分别为:

X3=Cos(a)*R+X1,Y3=Sin(a)*R+Y1

根据勾股定理可计算出XY轴要移动的距离 “Y(2→3)”的值。X轴移动速度“VXaxis”和Y轴移动速度“VYaxis” ,计算公式如下所示:



注:此时X2和Y2为X轴和Y轴的当前位置,X3和Y3为X轴和Y轴要移动的目标位置,速度需要取绝对值。

同理:当画笔到达3#点后,角度变为2a,则对应的圆上点为4#点,坐标为(X4,Y4),如下图所示:



根据三角函数可计算出4#点的坐标(X4,Y4)的值分别为:

X4=Cos(2a)*R+X1,Y4=Sin(2a)*R+Y1

根据勾股定理可计算出XY轴要移动的距离 “Y(3→4)”的值。X轴移动速度“VXaxis”和Y轴移动速度“VYaxis” ,计算公式如下所示:



注:此时X3和Y3为X轴和Y轴的当前位置,X4和Y4为X轴和Y轴要移动的目标位置,速度需要取绝对值。

依次下去,每走完一次后,角度自加一次,当角度值大于360°时,则认为画圆完成。

03PLC程序设计

根据分析,对于S7-200SMART系列PLC的程序设计主要分为“运动向导的组态配置”、“初始与会原点程序”、“速度计算程序”、“开始画圆程序”。

(1)初始化和回原点




(2)速度换算程序


(3)画圆程序


子程序内部程序






本文源程序下载
长按识别二维码即可免费获取!资料包内含经典案例文章源程序!



04实验效果展示





文章来源:技成培训网原创,作者:曾鑫;未经授权禁止转载,违者必究!



电气人都在抢着要,热门电工仿真软件免费分享!

往期推荐

1000张电气控制电路接线图,这回总算整理全了,建议收藏!

老电工都在用 | 铜排、导线面积、线损自动计算软件!

搞懂梯形图逻辑编程,学PLC轻松入门(适合新手)

5000套电气CAD图纸免费领取!

过来人都知道!西门子PLC基础入门少不了这~

看完这个,直接搞定电缆、电流、电压、电阻等电气计算(65套)~建议人手一份!

不是吧!都2023年了!搞电气的手机里还没这3个小程序?

这几款电气仿真软件你都没有,还妄想升职加薪涨技能?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则