S7-200系列PLC编程器的使用示例
2024-02-10  来源:网络或本站原创

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=选择PTO1=选择PWM
 SM67.7  SM77.7  PTO/PWM允许 0=禁止PTO/PWM1=允许

  这样根据以上表格,我们得出Q0.0控制字:SMB67为:10000101
采用PTO输出,微妙级周期,发脉冲的周期(也就是频率)与脉冲个数都要重新输入。10000101转化为  16进制 为85,有了控制字以后,我们来写这一段程序:



根据上面这段程序,我们知道了控制字的使用,同时也知道步进电机的脉冲周期与冲个数的存放位置(对  Q0.0来说是SMW68SMD72)。当然,VW100VD102内的数据不同的话,步进电机的转速和转动圈数就不一样。
   还有一点需要说明得是: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具体程序 如下:



3. PID回路控制功能。
  西门子S7-200系列PLCPID控制相当的简单,可以通过micro/win软件的一个向导程序,按照提示,一步一步执行您所要求PID控制的属性即可,在这里谈一谈PID这三个参数的具体意义:P为增益项,P越大,响应起就快,在调节流量阀时:设定流量为50%,当目前流量接近50%,刚超过,如果P值很大的话,那么流量阀会马上会关闭,而不会控制在某一区域。这就是增益项太大引起。在调节的过程中应该先将P值调节比较适当了,再去调节I值,它为积分项,是在控制器回路中控制对当前值与设定值相等的偏差范围。D为微分项,主要作用是避免给定值的微分作用而引起的跳变。
  在现场的PID参数的调整过程中,针对西门子S7-200PLC我的建议是在不同的控制阶段,采用不同的PID参数组,具体而言就是当目前距离设定值差距较大时,采用P值较大的一套PID参数,如果当前值快接近设定值范围时,采用P值较小的一套PID参数。