首页专业论文技术应用政策标准解决方案常用资料经验交流教育培训企业技术专家访谈电力期刊
您现在的位置:北极星电力网 > 技术频道 > 经验交流 > 西门子S7-200驱动步进电机的使用心得

西门子S7-200驱动步进电机的使用心得

北极星电力网技术频道    作者:佚名   2012/4/5 17:40:23   

 关键词:  电机 自动化控制 西门子

项目简介

某公司有多台薄膜卷绕机需要进行自动化控制改造。

原设备采用机械式计数,卷绕动力采用离合器传动,元件卷绕的起动、停止、圈数控制等均由人工操作控制,因此存在产品参数离散性大、产品质量与生产效率因人而异等不足之处。

工艺要求简述:由于卷制材料是10几微米的薄膜,要求卷轴平稳起动,均匀加速,以使用张力平稳;中间在某些位置需要停顿,作一些必要的处理,再继续卷绕;和起动一样,停顿或停止时,必须均匀减速,保持张力平稳;要求最后圈数准确。

控制系统构成

很自然地想到S7-200PLC应该能够实现项目要求的控制功能。

S7-200CPU本体已含有高速脉冲输出功能,普通型号的CPU脉冲输出频率达20KHz,而224XP(CN)更是高达100kHz,可以用来驱动步进电机或伺服电机,再由电机直接驱动卷绕主轴旋转,完成工艺所要求的动作。

步进电机在成本上具有优势,但是步进电机的运转平稳性不如伺服电机,而两者的定位精度(圈数)的控制,在本工艺里都可以达到要求。我们考虑先试用步进电机的方案。

步进电机的驱动,实际上是由相应的步进电机驱动器负责的,所以步进电机的相数齿数等等问题由相应的驱动器解决,选择步进电机要考虑的主要是体积、转矩、转速等,不是本文的重点;

PLC向驱动器送的仅为代表速度与位置的脉冲,这里要考虑的是步进电机在规定的转速下是否足够平稳,是否适合作为薄膜卷绕的动力。

我们作了一个模型机进行试验,采用细分型的驱动器,在50齿的电机上达到10000步/转,经17:25齿的同步带减速传动(同时电机的振动也可衰减),结果运转很平稳,粗步确定可以达到工艺要求。于是正式试制一台,也获得成功,性能达到工艺要求,目前已经按此方案批量进行改造。

CPU选择224XPCN DC/DC/DC,系统构成如下:

224XP*1、步进电机*2、细分型驱动器*2、TD200*1、LED显示屏*1、编码器*1。

PTO0(Q0.0)输出一路高速脉冲,负责驱动卷绕主轴的旋转;

PTO1(Q0.1)输出一路高速脉冲,负责驱动主轴的水平直线移动;

一个正交增量型编码器装在主轴上,作为卷绕圈数的反馈;

TD200作为人机界面,用于设定参数

一个LED显示屏用于显示实时的卷绕圈数。在实际生产中,工人需要时时参考卷绕的进度,LED显示比LCD醒目,所以这里放置了一个自制的LED显示屏。LED屏和PLC的连接方式,可参考本人在2003年的专家论文集中的文章。

控制系统完成的功能

控制系统首先要实现的功能,是卷绕的平稳起动、加速、减速、平稳停止。在新版的S7-200中,支持高速输出口PTO0/PTO1的线性加/减速,通过MicroWin的向导程序,非常容易实现。实际上,以目前的情况,线性加减速只能使用向导生成的程序,Siemens没有公开独立可使用的指令。

使用位置控制向导生成以下四个子程序(仅限CPU内的PTO,不包括专用模块的情况),以PTO0为例:

PTO0_CTRL:每周期调用一次,可以控制PTO0的行为;

PTO0_MAN:可以控制PTO0以某一频率输出脉冲,并且可以通过程序随时中止(减速或立即中止);

PTO0_RUN:运行(在向导中生的)包络,以预定的速度输出确定个数的脉冲,也可以通过程序随时时中止(减速或立即中止)。

PTO0_LDPOS:装载位置用,本例使用相对位置,所以不必装载。

本例的工艺要求,输出脉冲数可变(圈数可设定),又要在工艺允许的情况下尽可能地按指定的速度运行,也要随时能够减速停止,包括人工手动的停车要求。直接使用PTO0_MAN和PTO0_RUN都无法直接满足要求,以下来研究配合辅助手段如何实现。

精确的位置(圈数)控制

PTO0_RUN + 中断

卷绕定位与圈数控制,达到0.1圈以内的精度即可,以10000步/转的细分驱动器,0.1圈相当于1000脉冲。

假使PTO正以最高100kHz速度输出脉冲,以1ms的时间响应中断,脉冲的误差约为100个,所以从理论上说,中断方式把脉冲误差控制在1000个以下完全可以。

如何实现?我们来看下面一个PTO0_MAN指令执行的示意图:

有恒速阶段

无恒速阶段

当PTO0_MAN指令RUN=1允许脉冲输出时,脉冲序列从最低速(起始速度,本例设为100p/s,很小,可以认为0)线性加速,加到指定速度speed后保持匀速,当收到减速停止RUN=0命令时,线性减速,至最低速后停止。

所以,我们只要在脉冲输出前计算出停止指令执行的位置,并在此位置设置中断以便执行减速停止指令,就可保证输出的序列脉冲个数在要求的误差范围内。

计算过程:

本例加速和减速的斜率是相同的,比较简单,如果两个斜率不同,计算稍麻烦一点,原理差不多。

用向导生成一个最高速单速包络,从生成的PTO0_DATA中找出加速和减速脉冲数(可以参考3.3.2节的描述),如果加减速斜率相同,这两个数应该是一样的,由于计算精度的关系,差几个脉冲也属正常。这个数据在程序中可以作为常数使用。

如果目标脉冲数大于加速和减速脉冲数之和,表示脉冲输出可以加速到最高速,有恒速阶段,那么中断位置=目标脉冲数-减速脉冲数;

如果目标脉冲数不大于加速和减速脉冲数之和,无恒速阶段,包络变成一个等腰三角形(两边斜率相同的情况),那么中断位置=目标脉冲数/2。

更进一步,水平恒速的速度可变,就象本案的情况,卷绕速度是可设定的,而且这个速度受机械/电机最高限速、薄膜最高线速的限制,取三者中的最小值,然后才能确定加速到该速度所需的脉冲数,通过简单的数学计算即可获得。

PTO0_RUN + 修改包络参数

用向导生成一个单一速度包络,我们来研究自动生成的包络数据结构:

PTO0_DATA

//----------------------------------------------------------------

//输出 Q0.0 的 PTO 包络表

//----------------------------------------------------------------

VB1000 ""PTOA"" //

VW1004 54 //FREQ

VD1006 10240000 //SS_SPEED

VD1010 204800000 //MAX_SPEED

VD1014 16#02000E69 //K_ACC

VD1018 16#82FFF197 //K_DEC

VB1022 1 //NUMPROF

VW1023 25 //OFFS_0

VB1025 4 //包络 0 的 NUM_SEGS

VB1026 0 //保留。

VB1027 0 //段 0 的 S_STEP

VB1028 16#08 //S_PROP

VD1029 +10240000 //SFREQ

VD1033 49950 //加速的脉冲数

VB1037 0 //段 1 的 S_STEP

VB1038 16#04 //S_PROP

VD1039 +199707040 //SFREQ

VD1043 98 //恒速的脉冲数

VB1047 0 //段 2 的 S_STEP

VB1048 16#00 //S_PROP

VD1049 -1 //SFREQ

VD1053 49951 //减速的脉冲数

VB1057 0 //段 3 的 S_STEP

VB1058 16#10 //S_PROP

VD1059 +10240000 //SFREQ

VD1063 1 //最终减速的脉冲数

VB1067 0 //保留。

VB1068 0 //保留。

VB1069 0 //保留。

可以看出,一个最简单的包络分为4段(VB1025):

段0:加速段,加速脉冲数在VD1033

段1:恒速段,恒速脉冲数在VD1043

段2:减速段,减速脉冲数在VD1063

段3:最终减速脉冲数,VD1063。依我的经验看,这个最终减速脉冲数始终为1。

在向导中,只能生成有限的包络,如果目标脉冲数任意的,我们只好修改包络里面的数据了。加速段和减速段的脉冲数不方便改,因为线性加减速的指令并不清楚,所以只好修改恒速段的脉冲数。实践证明,修改恒速段的脉冲数,可以非常容易且准确地控制输出脉冲数。唯一的限制是,总的脉冲数,必须大于加减速段+最终减速段脉冲数之和,也即恒速段的脉冲不能小于1。

使用步骤:

在启动PTO0_RUN之前,计算出恒速段的脉冲数=目标脉数数-加减速脉冲数之和-1,填入包络表中的恒速位置;

启动PTO0_RUN。

在本项目的设备改造中,主轴卷绕的圈数、中间起停点的变化范围大,使用“PTO0_RUN + 中断”,安排在Q0.0输出;

中断是由高速计数器触发的,所以在Q0.0的向导中使能HC0为作脉冲输出内部反馈,在启动PTO0前使能12#中断“HSC0 CV=PV”,中断程序样例如下:

LD SM0.0

R M20.4, 1

CALL PTO0_MAN, M20.4, PTO0_V, VB290, VD292

DTCH 12

主轴的水平直线运动,行程比较固定,调节范围小,使用“PTO1_RUN + 修改包络参数”,安排在Q0.1。

项目运行

首台设备改造完成于2005年12月,至目前已有6台投入运行,效果达到预期的目标,保证了产品质量的一致性,生产效率也有提高,工人劳动强度明显降低。

控制箱实物

体会

S7-200是一款是非常优秀的微型控制器,许多功能进行深入研究之后可以做到灵活应用,拓宽其在小型控制领域的应用范围,同时保持较低的应用成本。

S7-200非常象一台带控制IO功能的超级微型计算机,使用STL编程,完全不受继电器逻辑那一套框框的约束,可以象一种计算机语言一样自由地编程。

来源:
友情链接
北极星工程招聘网北极星电气招聘网北极星火电招聘网北极星风电招聘网北极星水电招聘网北极星环保招聘网北极星光伏招聘网北极星节能招聘网招标信息分类电子资料百年建筑网PLC编程培训

广告直拨:   媒体合作/投稿:陈女士 13693626116

关于北极星 | 广告服务 | 会员服务 | 媒体报道 | 营销方案 | 成功案例 | 招聘服务 | 加入我们 | 网站地图 | 联系我们 | 排行

京ICP证080169号京ICP备09003304号-2京公网安备11010502034458号电子公告服务专项备案

网络文化经营许可证 [2019] 5229-579号广播电视节目制作经营许可证 (京) 字第13229号出版物经营许可证新出发京批字第直200384号人力资源服务许可证1101052014340号

Copyright © 2022 Bjx.com.cn All Rights Reserved. 北京火山动力网络技术有限公司 版权所有