s7200脉冲设置
S7200步进伺服控制

S7200步进伺服控制
1.步进电机,伺服电机由脉冲进行控制。
2.脉冲转成角度或者距离。
采用西门子标准程序。
后附件西门子标准程序。
3.输入,输出定义
4.各个块的功能
5.使能得信号
6.起停加速时间
7.把电机最高速度比如:3000/分种,单位转换成脉冲/秒。
在转换成毫米/秒
8.把运行速度(匀速)从毫米,从毫米/单位,转换成脉冲/秒,1秒种设定行走多远
9.此参数自动完成计算,无需修改。
10.限位根据设置限位
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.I0.6启动程序,I0.5停止程序,Q0.2改变方向人,Q0.1当前接线反向。
21.开始调试:
22.第一次走到20毫米
23.第二次走到30毫米
24.第三次走到45毫米
25.第四次走到60毫米
26.第五次走到100毫米
27.第六次走到80毫米,这时间就会反向走
有时间大家加我的QQ,一起讨论QQ303074848
2013年11月24日。
S7200_高速计数、通信、PID讲解

3.计数器的复位及启动信号根 据第一页表中信号(无信号的 根据控制位控制)
模式:9、10、11——(四倍正交模式)
三菱可编程控制器教材
page:7
高速计数器的控制位I
2.增计数时,根据A相计数 减计数时,根据B相计数
3.计数器的复位及启动信号根 据第一页表中信号(无信号的 根据控制位控制)
三菱可编程控制器教材
page:6
高速计数器的模式
1.根据A/B相得相序进行增减 计数的计数器 A相比B相超前90°,则增计数 B相比A相超前90°,则减计数
三菱可编程控制器教材
page:15
禁止HSC举例
1.向SMB47写入禁止控制位 SMB47=16#00 禁止计数
2.执行HSC指令,使S7200对HSC编程
禁止HSC1的程序举例
三菱可编程控制器教材
page:16
主程序 中断程序
三菱可编程控制器教材
page:25
高速计数器的应用案例I
高速计数器在切纸机械行业的应用:
现通过编码器对纸张长度进行测量,纸张长度由触摸屏设定
牵引电机
切刀
放卷轴
编码器
控制要求:
启动后,牵引电机运转,达到设定长度,切刀动作,将纸张切断
I/O信号:
I0.0---启动
三菱可编程控制器教材
page:20
HSC向导使用方法
第四步:配置HSC,配置中断程序
中断时,执行程序: 此项为:将当前值清0
注:此中断程序项,应根据实际的工程情况进行设置
S7-200高速脉冲输出应用

S7-200高速脉冲输出应用前面学习了高速计数器的内容,紧接着我们就来学习一下高速脉冲输出的内容,高速脉冲输出一般是用在运动控制里面,用来控制步进或伺服,高速脉冲输出也是比较重要的一部分,我们必须得掌握好它。
在S7-200中有两个PTO/PWM高速脉冲发生器,可以产生高速脉冲串(PTO)或脉宽调制信号波形(PWM)。
在S7-200中有脉冲输出指令PLS,它用来控制在高速脉冲输出(Q0.0和Q0.1)中提供的高速脉冲串输出(PTO)和脉宽调制(PWM)功能。
PTO/PWM与数字量输出过程映像区共用输出点Q0.0和Q0.1,当在Q0.0或Q0.1上激活了PTO/PWM功能时,是会禁止普通输出点功能的,这时Q0.0或Q0.1的输出波形是不受过程映像区状态、输出点强制值或者立即输出指令的影响的,我们使用状态表或趋势图是监控不了的。
要做高速脉冲输出,我们应该选用24VDC晶体管输出的CPU,而不能选用继电器输出的CPU,这是我们要注意的。
高速脉冲输出一般是用在运动控制里面,用来控制步进或伺服。
利用高速脉冲输出实现运动控制,除了有PTO、PWM,还有EM253定位模块,这三种方式都可以实现运动控制,不过要注意的是PTO和PWM可以使用脉冲输出指令PLS和向导来实现,而且PTO方式的甚至还可以使用运动控制库指令来实现,而使用EM253定位模块的话就只能通过向导来实现,而不能使用PLS指令或运动控制库指令。
我们先看一下脉冲串操作PTO,PTO是按照给定的脉冲个数和周期输出一串方波(占空比50%)。
在使用时,我们要设定其脉冲个数和周期,我们要注意的是设定是周期数应该是偶数,如果设定的周期数为奇数的话,是会引起占空比失真的。
而脉宽调制PWM,它是产生一个占空比变化周期固定的脉冲输出的,我们可以设定其周期和脉宽,我们要注意的是当设定的脉宽等于周期时,输出是一直为ON的,当设定的脉宽等于0时,输出是断开的。
一般来说,使用脉冲串PTO会比较多,所以后面学习时也是重点学习脉冲串PTO的。
s7200本体PTO向导脉冲输出功能

s7200本体PTO向导脉冲输出功能⼀、S7-200PLC⾼速脉冲输出功能1、概述S7-200有两个置PTO/PWM发⽣器,⽤以建⽴⾼速脉冲串(PTO)或脉宽调节(PWM)信号波形。
当组态⼀个输出为PTO操作时,⽣成⼀个50%占空⽐脉冲串⽤于步进电机或伺服电机的速度和位置的开环控制。
置PTO功能提供了脉冲串输出,脉冲周期和数量可由⽤户控制。
但应⽤程序必须通过PLC内置I/O 提供⽅向和限位控制。
为了简化⽤户应⽤程序中位控功能的使⽤,STEP7--Micro/WIN提供的位控向导可以帮助您在⼏分钟内全部完成PWM,PTO或位控模块的组态。
向导可以⽣成位置指令,⽤户可以⽤这些指令在其应⽤程序中为速度和位置提供动态控制。
2、开环位控⽤于步进电机或伺服电机的基本信息借助位控向导组态PTO输出时,需要⽤户提供⼀些基本信息,逐项介绍如下:⑴最⼤速度(MAX_SPEED)和启动/停⽌速度(SS_SPEED)图1是这2个概念的⽰意图。
MAX_SPEED是允许的操作速度的最⼤值,它应在电机⼒矩能⼒的范围。
驱动负载所需的⼒矩由摩擦⼒、惯性以及加速/减速时间决定。
图1最⼤速度和启动/停⽌速度⽰意SS_SPEED:该数值应满⾜电机在低速时驱动负载的能⼒,如果SS_SPEED 的数值过低,电机和负载在运动的开始和结束时可能会摇摆或颤动。
如果SS_SPEED的数值过⾼,电机会在启动时丢失脉冲,并且负载在试图停⽌时会使电机超速。
通常,SS_SPEED值是MAX_SPEED值的5%⾄15%。
⑵加速和减速时间加速时间ACCEL_TIME:电机从SS_SPEED速度加速到MAX_SPEED速度所需的时间。
减速时间DECEL_TIME:电机从MAX_SPEED速度减速到SS_SPEED速度所需要的时间。
图2加速和减速时间加速时间和减速时间的缺省设置都是1000毫秒。
通常,电机可在⼩于1000毫秒的时间⼯作。
参见图2。
这2个值设定时要以毫秒为单位。
S7200高数计数器使用方法

S7200高数计数器使用方法S7-200 CPU具有集成的、硬件高速计数器。
CPU221和CPU222可以使用4个30kHz单相高速计数器或2个20kHz的两相高速计数器,而CPU224和CPU226可以使用6个30kHz单相高速计数器或4个20kHz的两相高速计数器。
S7-200的新一代产品CPU224 XP支持更高的计数速度。
高速计数器可以被配置为12种模式中的任意一种,但并不是所有计数器都能使用每一种模式。
在正交模式下,你可以选择一倍速或者四倍速计数速率。
对于操作模式相同的计数器,其计数功能是相同的。
计数器共有四种基本类型:带有内部方向控制的单相计数器,带有外部方向控制的单相计数器,带有两个时钟输入的双相计数器和A/B相正交计数器。
表1. 高速计数器的模式及输入点:模式 描述 输入点 备注 HSCO I0.0 I0.1 I0.2(1)HSC1 I0.6 I0.7 I1.0I1.1(2)HSC2 I1.2 I1.3 I1.4I1.5(2)HSC3 I0.1 (1)HSC4 I0.3 I0.4 I0.5HSC5 I0.4带有内部方向控制的单相计数器 时钟1 时钟 复位2 时钟 复位启动3带有外部方向控制的单相计数器 时钟 方向4 时钟 方向 复位5 时钟 方向 复位启动6带有增减计数时钟的双相计数器 增时钟减时钟7 增时钟减时钟复位8 增时钟减时钟复位启动9A/B相正交计数器 时钟A时钟B10 时钟A时钟B复位11 时钟A时钟B复位启动12 只有 HSC0 和 HSC3 支持模式 12。
HSC0 计数高速脉冲输出 Q0.0;HSC3 计数高速计数脉冲输出 Q0.1。
(1) 支持模式 12。
•高速计数器的实际输入要根据用户选择的高速计数器号和模式来确定,如上表。
例:如果你选择了HSC0的模式1,则你的外部高速计数输入点应接在I0.0,外部复位点应接在I0.2。
•如果用户使用了多个高速计数器,则被某一高速计数器占用了的输入点,其它高速计数器不能再使用。
第六章S7200功能指令及使用

语句表:INCB OUT 功能:当EN=1时,将单字节长的无符号字节型输入 数IN加1,结果为单字节长无符号整数存入OUT 。
1.四则运算指令—加1指令
②字加1指令 梯形图:
语句表:INCW OUT 功能:当EN=1时,将单字长的有符号输入数IN加1, 结果为单字长有符号整数存入OUT 。
1.四则运算指令—加1指令
到输出端指定的存储单元中去。其中高16位是余数, 低16位是商。
1.四则运算指令—除法指令
在LAD中,执行结果为IN1/IN2→OUT; 在STL中,通常将操作数IN1与OUT共用一个地址单
元,因而执行结果为OUT/ IN2→OUT。
1.四则运算指令—除法指令
①整数除法指令 梯形图:
语句表:/I IN2, OUT 功能:当EN=1时,将两个单字长的有符号整数IN1和 IN2相除,结果为单字长的有符号整数存入OUT 。
1.四则运算指令
(1)加法指令 (2)减法指令
(3)乘法指令
(4)除法指令 (5)加1和减1指令
1.四则运算指令--加法指令
加法指令对两个输入端(IN1、IN2)指定的有符号 数进行相加操作,结果送到输出端(OUT) 。 加法指令可分为整数、双整数、实数加法指令, 它们各自对应的操作数的数据类型分别为有符号整数、
2.数学功能指令—自然指数指令
梯形图:
语句表: EXP IN, OUT 功能:当EN=1时,将32位的实数IN取e为底的指数, 结果为32的实数存入OUT 。
2.数学功能指令—自然对数指令
梯形图:
语句表: LN IN, OUT 功能:当EN=1时,将双字长的实数IN取自然对数, 结果为32的实数存入OUT 。
1.四则运算指令—除法指令
S7200的高速脉冲输出

S7-200的高速脉冲输出在需要对负载进行高精度控制时,如对步进电机的控制,需要对步进电机提供一系列的脉冲,高速种需求而开发的。
1.1高速脉冲输出---输出端子的确定S7-200只有输出继电器Q0.0和Q0.1具有高速脉冲输出功能,不用高速脉冲时,作普通的数字1.2高速脉冲输出的形式高速脉冲输出有两种的形式:高速脉冲序列(或称高速脉冲串)输出PTO脉冲宽度调制输出PWM可通过特殊继电器来定义输出的形式1.3高速脉冲输出相关寄存器每个高速脉冲发生器对应一定数量特殊标志寄存器,这些寄存器包括控制字节寄存器、状态字用以控制高速脉冲的输出形式、反映输出状态和参数值。
1.4编程中的脉冲输出指令PLS指令功能:EN有效,检测各相关寄存器的状态,激活由控制字节定义的高速脉冲输出操作。
Q取0或图1.4‑12PWM简介及编程运用PWM(Pulse WidthModulation脉冲调制)宽度可调脉冲输出PWM功能提供带变量占空比的固定周期输出。
可以微秒或毫秒为时间基准指定周期和脉宽。
2.1S7-200的PWMS7-200有两台PWM发生器,建立高速脉冲串或脉宽调节信号信号波形。
一台发生器指定给数字指定给数字输出点Q0.1。
一个指定的特殊内存(SM)位置为每台发生器存储以下数据:一个控制字值(一个不带符号的32位值)和一个周期和脉宽值(一个不带符号的16位值)。
PWM功能在Q0.0或Q0.1位置现用时,PWM发生器控制输出,并禁止输出点的正常使用。
输出信号态、点强迫数值、执行立即输出指令的影响。
如图2.1‑1图2.1‑12.2 PWM周期和脉冲宽度脉冲宽度为16为无符号数,脉冲宽度增量单位为us或ms。
范围0~65535,占空比为0~100%。
当输出将连续接通。
为0时,输出一直被关断。
如表1表1周期和脉冲宽度脉宽时间/周期反应脉宽时间 >=周期值占空比为100%:输出连续运行。
脉宽时间 = 0占空比为0%:输出关闭。
s7200脉冲怎么发

HC0中断子程序
LD SM0.0
R 运行标志,1
LD SM0.0
= L60.0
LDN 运行标志
= L63.7
LDN SM0.0
= L63.6
LD L60.0
CALL PTO0_CTRL, L63.7, L63.6, L20.0, PTO0_Err, PTO0_Pos
1、由以上公式可知,该段包络的减速段脉冲个数为x=(F/20000)平方 * N ,意即PLC在发出(N-x)个脉冲后就需要开始减速了!又设“减速时刻脉冲个数”=(N-x)
2、在主程序内调用:
初始化时使能HC0的模式12,对Q0.0输出脉冲计数;在启动该包络的上升沿时刻给“PTO实际频率”赋值为F(最大频率)并使能HC0高速计数中断;
2、采用软件提供的向导功能,能达到非常平稳的加减速控制! 可是向导只提供在向导内绘制包络表,而不能实时的更改,比如最大脉冲频率,脉冲数目等,这又非常不方便!
我想要得到一个可以通过上位机随时更改步进速度(脉冲周期)和运动位移(脉冲数目)且可以非常平稳的加减速的包络表,怎么办? 以下给出一个粗略的方案,供大家参考,大家如果有什么不同的意思一起讨论!
主程序:
LD 运行标志
EU
MOVD F,PTO实际频率 //给定最高频率
MOVD N, SMD42 //给定总脉冲个数
-D 1, SMD42 //补偿(-1)个脉冲
HSC 0
ATCH HC0中断, 12 //HC0 Pv=Sv中断
LD 急停
= L60.0
LD 运行标志
= L63.7
LD L60.0
CALL PTO0_MAN, L63.7, PTO实际频率, PTO0_Err, PTO0_Pos
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
S7-200系列PLC编程器的使用示例
Siemens编程器S7-200系列用在中小型设备上的自动系统的控制单元,适用于各行各业,各种场合中的检测,监测及控制。
在这里,和大家一起来讨论S7-200几个使用方面的情况。
1.步进,伺服脉冲定位控制。
在设备的控制系统中,有关运动控制是很重要的,下面我们来看一看西门子S7-200系列PLC怎样来实现这
个功能。
首先,确定使用哪个端口来发脉冲,如采用Q0.0发脉冲,则它的控制字为SMB67,脉冲同期为SMW68,脉
冲个数存放在SMD72中,
下面是控制字节的说明:
Q0.0 Q0.1 控制字节说明
SM67.0 SM77.0 PTO/PWM更新周期值0=不更新,1=更新周期值
SM67.1 SM77.1 PWM更新脉冲宽度值0=不更新,1=脉冲宽度值
SM67.2 SM77.2 PTO更新脉冲数0=不更新,1=更新脉冲数
SM67.3 SM77.3 PTO/PWM时间基准选择0=1微秒值,1=1毫秒值
SM67.4 SM77.4 PWM更新方法0=异步更新,1=同步更新
SM67.5 SM77.5 PTO操作0=单段操作,1=多段操作
SM67.6 SM77.6 PTO/PWM模式选择0=选择PTO,1=选择PWM
SM67.7 SM77.7 PTO/PWM允许0=禁止PTO/PWM,1=允许
这样根据以上表格,我们得出Q0.0控制字:SMB67为:10000101,采用PTO输出,微妙级周期,发脉冲的周期(也就是频率)与脉冲个数都要重新输入。
10000101转化为16进制为85,有了控制字以后,我们来写这一段程序:
根据上面这段程序,我们知道了控制字的使用,同时也知道步进电机的脉冲周期与冲个数的存放位置(对Q0.0来说是SMW68与SMD72)。
当然,VW100与VD102内的数据不同的话,步进电机的转速和转动圈数就不一样。
还有一点需要说明得是:M0.0导通---PLC捕捉到上升沿发动脉冲输出后,想停止的话,只须改变端口脉冲的控制字,再启动PLS即可,程序如下:
2.高速计数功能。
西门子S7-200系列PLC具有高速计数的功能;举一例子来谈谈高速计数的用途,我们采用普通电机来带动丝杆转动,我们想控制转动距离,怎么来解决这个问题?那么我们可在电机另一头与一编码器联接,电机转一圈,编码器也随之转一圈,同时根据规格发出不同的脉冲数。
当然,这些脉冲数的频率比较高,PLC不能用普通的上升沿计数来取得这些脉冲,只能通过高速计数功能了。
启动高速计数功能,也要具有控制字
HSCO HSC1 描述
SM37.0 SM47.0 复位有效电平控制位0=高电平有效,1=低电平有效
SM37.1 SM47.1 启动有效电平控制位于0=高电平有效,1=低电平有效
SM37.2 SM47.2 正交计数器速率选择0=4X计数率,1=1X计数率
SM37.3 SM47.3 计数方向控制位0=减计数,1=正计数
SM37.4 SM47.4 向HSC中写入计数方向0=不更新,1=更新计数方向
SM37.5 SM47.5 向HSC中写入预置值0=不更新,1=更新预置值
SM37.6 SM47.6 向HSC中写入当前值0=不更新,1=更新当前值
SM37.7 SM47.7 HSC允许0=禁止HSC,1=允许HSC
参照上面的表格,我们选择HSC1高速计数器,控制字为SMB47,现在我们启动高速计数器HSC1,选择为增计数,更新计数方向,重新设置值,更新当前值:这样的话,HSC1的启动控制高为:11111000转化为16进制为
F8,将启动计数器时当前值存放在SMD48中,将预存置放在SMD52中,具体的程序如下:
同样的,如果计数器在工作状态下想停止计数器,也必须改变它的控制字后,启动HSC具体程序如下:
3PID回路控制功能。
西门子S7-200系列PLC的PID控制相当的简单,可以通过micro/win软件的一个向导程序,按照提示,一步一步执行您所要求PID控制的属性即可,在这里谈一谈PID这三个参数的具体意义:P为增益项,P越大,响应起就快,在调节流量阀时:设定流量为50%,当目前流量接近50%,刚超过,如果P值很大的话,那么流量阀会马上会关闭,而不会控制在某一区域。
这就是增益项太大引起。
在调节的过程中应该先将P值调节比较适当了,再去调节I 值,它为积分项,是在控制器回路中控制对当前值与设定值相等的偏差范围。
D为微分项,主要作用是避免给定值的微分作用而引起的跳变。
在现场的PID参数的调整过程中,针对西门子S7-200型PLC我的建议是在不同的控制阶段,采用不同的PID参
数组,具体而言就是当目前距离设定值差距较大时,采用P值较大的一套PID参数,如果当前值快接近设定值范围时,采用P值较小的一套PID参数。