浔之漫智控技术-西门子PLC代理商
西门子PLC模块 , 变频器 , 触摸屏 , 交换机
西门子6ES7211-0BA23-0XB0库存现货

西门子6ES7211-0BA23-0XB0库存现货

1  引言
  在传统的PLC——变频控制集成系统中,变频器的启动/停止与故障监控由PLC通过开关量实现端对端控制。变频器频率是由PLC通过模拟量输出端口输出0~5(10)V或4~20mA信号控制,需要PLC配置昂贵的模拟量输出端口模块。变频器出现故障时由PLC读取变频器的故障报警触点,对具体故障原因并不清楚,需查询变频器报警信息后再阅读变频器说明书才知道。随着交流变频控制系统及通讯技术的发展,可以利用PLC及变频器的串行通讯的方式来实现PLC对变频器的控制。

2  变频器的选型
  DANFOSS VLT系列变频调速器提供串行通讯技术的支持。它所支持的串行通讯技术包括标准RS-485、PROFIDRIVE、LONWORKS在内的多种现场总线方式。其中,RS-485通讯方式为用户提供了无需附加任何费用的、为廉价实用的串行通讯方式。只需按照DANFOSS VLT变频器规定的通讯数据结构、控制字和状态字格式发送数据即可实现与VLT变频的通讯。VLT为用户提供了两种控制字和状态字格式标准:即DANFOSS标准的DANFOSS FC协议和PROFIBUS标准的PROFIDRIVE协议。其中FC协议为用户提供了更多的与VLT有关的控制信息和状态信息。本项目中选用DANFOSS FC协议。

3  PLC的选型
  西门子工控产品在工控领域应用市场中有较高的占有率。S7-200系列是西门子SIMATIC PLC家族中的小规模PLC成员,自由通讯口方式是S7-200 PLC的一个特色的功能,它使S7-200 PLC可以由用户自己定义通讯协议。利于自由通讯口方式,在本系统中PLC可以与变频器和方便连接。PLC通过自由通讯口方式与变频器通讯,控制变频器的运行,读取变频器自身的电压、电流、功率、频率和过压、过流、过负荷等全部报警信息等参数,这比通过外部端口控制变频器的运行具有较高的可靠性,节省了PLC宝贵的I/O端口,又获的了大量变频器的信息。在本例中,作者将按照DANFOSS FC协议来对S7-200的自由口进行编程。

4  VLT串行通讯
4.1  VLT通讯原理
  VLT变频器的串行通讯为异步半双工的方式,使用字节奇偶校验和块传送异或校验方法。每个变频器都配备有一个标准的RS-485通讯端口,使协议可以通过RS-485电气接口来进行传输。PLC为主机,变频器为从机,系统电码的传输由主机控制,主机不断发出某个地址的电码给从机,等待从机的响应。主机多能带31个从机,在有中继器的情况下,可以增加到126个从机,也就是从机的地址多可以设定到126。通讯时,每一个字节从一个起始位开始实行传送,然后再传递8个数据位,相应地组成一个字节,每个字节由一个奇偶校验位来验证传送的正确性,然后由一个终止位结束。这样一个字节共由11个位组成。
4.2  VLT电码结构
  每个电码由一个起始字节(STX)开始,这个起始字节为STX=02H。随后紧跟一个表示电码长度(LGE)的字节和表示变频器地址的字节(ADR)。然后是一些数据字节(随电码类型而变)。整个电码由一个数据控制字节(BCC)来结束。结构如附表。


附表     VLT电码结构


  在上述数据结构中:
  (1) PKE占用两个字节,包括参数命令类型和参数数目;
  (2) IND为索引,也占用两个字节,索引字节用于表明它是一个读命令还是写命令。在读命令中必须具有0400H的格式,在写命令中必须具有0500H的格式;
  (3) PWE为参数值块。占用四个字节,分为高字(PWE H)和低字(PWE L)。“比如主机要改变当前的变频器参数,新的参数就应写在参数PWE中发送给变频器;”
  (4) PCD为过程块,占用4个字节。它有两种状态,当主机发给从机时,PCD1为控制字,PCD2为参考值;当从机发给主机时,PCD1为状态字,PCD2为当前的输出频率;
  (5) BCC为数据控制字节。由它来对接收到的命令进行检验正确与否。它的初始值为0,然后对该字节以前的所有字节进行异或。

5  PLC编程示例
5.1  变频器初始化子程序
  PLC在次扫描时执行初始化子程序,对端口及RCV指令进行初始化。为了增加程序的可靠性,在初始化完成后,如果检测到端口空闲时则运行RCV指令使端口处于接受状态。初始化子程序如下:
  Network 1  // 网络标题     
  检测端口空闲可编在主程序中
  // 设定端口属性
  LD  SM0.0
  MOVB  73, SMB30
  Network 2 
  // 接收信息状态
  LD  SM0.0
  MOVB  102, SMB87
  Network 3 
  LD  SM0.0
  MOVB  16#02, SMB88
  MOVB  50, SMB92
  MOVB  50, SMB94
  R   SM87.2, 1
  Network 4 
  LD  SM0.0
  ATCH  INT1, 23  
  //连接口0接收完成的中断
  Network 5 
  LD  SM0.0
  ATCH  INT0, 9  
  //连接口0发送完成的中断
  Network 6 
  LD  SM0.0
  ENI 
  //中断允许
  Network 7 
  LD  SM0.0
  MOVD  &VB250, VD220   
  //装入地址指针
  MOVB  0, VB242  
  //BCC码寄存器清零
  MOVD  &VB300, VD224   
  //装入地址指针
  MOVB  0, VB246  
  //BCC码寄存器清零
5.2  变频器参数修改子程序
  当要改变当前变频状态的信息需传送时,调用“控制子程序”。首先它要禁止端口的接收,然后对控制电码进行编辑和BCC检验码计算,并发送;当没有改变当前变频状态的信息需传送时,调用“空命令”子程序。因为PLC如果要读取变频器的当前工作状态,就要给变频器发送命令,而“控制子程序”代码繁琐,执行效率不高,我们可以将“空命令”程序需传送的电码预先编排好(可以用短电码),“控制子程序”程序代码如下:
  Network 1 
  LD  SM0.0 //停止端口0的接收
  R   SM87.7, 1
  RCV  VB300, 0
  Network 2 
  LD  L0.0
  MOVW  16#047C, VW211
  MOVW  LW1, VW213
  Network 3 
  LD  L0.1
  MOVW  16#0434, VW211
  MOVW  0, VW213
  Network 4 
  LD  SM0.0
  MOVW  LW1, VW213
  Network 5  // 网络标题
  // 网络注释
  LD   SM0.0
  MOVB   16#02, VB200
  MOVB   16#0E, VB201
  MOVB   LB3, VB202
  MOVD   0, VD203
  MOVD   0, VD207
  HTA    VB200, VB250, 15
  Network 6 
  LD      SM0.0 //计算BCC校验码
  FOR    VW240, +1, +15
  Network 7 
  LD      SM0.0
  XORB   *VD220, VB242
  Network 8 
  LD     SM0.0
  INCD   VD220
  Network 9 
  NEXT
  Network 10 
  LD     SM0.0
  HTA    VB242, VB265, 1 
  //BCC校验码写入发送缓冲区
  Network 11 
  LDB=   VB251, 16#0E    
  //发送缓冲区准备好后进行发送
  S      S0.1, 1
  Network 12 
  LSCR   S0.1
  Network 13 
  LD     SM4.5
  XMT    VB250, 0
  Network 14 
  SCRE
5.3  变频器通讯完成处理
  发送完成后执行发送完成中断程序,它的操作包括:允许RCV;bcc码寄存器清零;重新装入用于计算BCC校验码的地址指针;接收缓冲区中存放指令结束字符的字节清零,用来判断下一条指令格式是否正确。 
  接收完成后执行接收完成中断程序,它会将接收缓冲区中的十六进制ASCII码还原成数据并保存。然后调用“接收处理”子程序。它主要是求出接收缓冲区中指令的BCC校验码并与指令中的BCC校验码进行比对,并对电码中的数据进行处理。

6  结束语
  使用此方法采用西门子PLC通过自由口使用DANFOSS FC协议对DANFOSS变频器进行控制,极大地减少了线路连接的复杂性,避免了现场可能的各种电磁干扰对控制设备的影响。

1  引言
  在城市高楼快速发展的,以前城市供水所必需的水塔、水箱以及气压供水设备,由于水质污染和水压不足,已经远远不能满足现代人民生活的需要,水厂的自动化改造迫在眉睫。水厂供水要保持水压稳定在一定范围内,但城市用水量是动态的,白天用水量大,晚上用水量小。如何保证供水量波动时水压恒定是一个必须解决的问题。本文采用PLC、文本显示器、变频器等组成全自动恒压供水控制系统,根据管网压力自动调节供水流量,使管网压力恒定。

2  系统设计
  变频调速恒压供水控制系统见图1,系统采用1台变频器拖动4台电动机的启动、运行与调速,其中2台大电动机(220kW)和2台小电动机(160kW)分别采用循环使用的方式运行。通过压力传感器采样管网压力信号,变频器输出电机频率信号,这两个信号反馈给PLC的PID模块,PLC根据这两个信号经PID运算,发出控制信号,控制水泵电机进行切换。



图1     变频调速恒压供水控制系统图


2.1  系统功能
  (1) 手动运
  手动运行用于系统调试时测试系统各部分是否正常。1、2号泵作为主泵在变频器的控制下分别运行,但不同时运行。同时PID控制发挥作用,在手动状态下水管压力也不会超过设定压力。3、4号泵作为辅助泵可以直接工频运行,在水管压力达到设定压力时自动关断。
  (2) 自动运行
  图2为自动运行时的流程图。进入自动运行状态,控制系统首先检测水管的压力,当压力低于设定值时,启动辅助泵进行补水。在设定的时间内,水管压力能够达到设定值,则停止辅助泵,此时认为水管压力下降是由于管道系统漏水或小量用水造成,主泵不运行。若启动辅助泵后,在设定时间内若管道压力不能达到设定值,则停止辅助泵运行,同时使标识为A的主泵变频启动。标识为A的主泵变频运行后,若管道压力达到设定值,且变频器运行在与该压力设定值相对应的小出水频率以下,则停止水泵运行,同时将另一台主泵标识为A。标识为A的主泵变频运行后,变频器在运行一段时间而管道压力没有达到设定值则将A切换到工频运行,同时变频起动标识为B的主泵,此时若管道压力达到设定值,且变频器运行在与该压力设定值相对应的小出水频率以下,则停止工频运行的水泵,原来变频运行的水泵按前述流程工作。两台主泵轮流标识为A,可以避免在小用水量时,一台频繁起动而另一台长时间不运行。


 


图2     系统自动运行流程图


2.2  PID控制器设计
  (1) PID算法的数学模型
  西门子公司从S7-200系列PLC中的CPU215, CPU216开始增加了用于闭环控制的PID模块。它是通过PID调节器来调节输出,保证偏差值e为零,使系统达到稳定状态。在系统中,偏差值e是给定值SP(希望值)和过程变量PV(实际值)的差。PID控制的原理基于下面的算式:

  

   其中:
  M(t): PID回路的输出,是时间的函数; 
  Kc: PID回路的增益;
  e: PID回路的偏差(给定值与过程变量之差) ; 
  Minitial:PID回路输出的初始值。 
  为了能让数字计算机处理这个控制算式,连续算式必须离散化为周期采样偏差算式,才能用来计算输出值,数字计算机处理的算式如下:

  

   其中:
  Mn: 在第n采样时刻PID回路输出的计算值; 
  Kc: PID回路增益; 
  en: 在第n采样时刻的偏差值; 
  en-1: 在第n-1采样时刻的偏差值(偏差前项);   
  KI: 积分项的比例常数; 
  Minitial: PID回路输出的初值; 
  KD: 微分项的比例常数。 
  由于计算机从次采样开始,每一个偏差采样值必须计算一次输出值,因此只需要保存偏差前值和积分项前值。利用计算机处理的重复性可以化简以上算式为:  

     

  其中:
  Mn: 在第n采样时刻PID回路输出的计算值; 
  Kc: PID回路增益; 
  en: 在第n采样时刻的偏差值; 
  en-1: 在第n-1采样时刻的偏差值(偏差前项);
  KI: 积分项的比例常数; 
  MX: 积分项前值;
  KD: 微分项的比例常数。
  (2) PID算法改进
  CPU实际使用以上简化算式的改进形式计算PID 输出,这个改进型算式为:
  Mn=MPn+MIn+MDn

  其中:
  Mn: 第n采样时刻的计算值; 

   :第n采样时刻的比例项值; 
  :第n采样时刻的积分项值; 
  :第n采样时刻的微分项值;
  Kc: 增益;  
  SPn: 第n采样时刻的给定值; 
  PVn: 第n采样时刻的过程变量值; 
 PVn-1: 第n-1采样时刻的过程变量值; 
  Ts: 采样时间间隔;  
  TD: 微分时间; 
  TI: 积分时间;  
  MX: 第n-1采样时刻的积分项(积分项前值)。   
2.3  软件设计
  S7-200系列PLC中的CPU215/216提供了用于闭环控制PID运算指令,用户在应用时不必象CPU212, CPU214那样自己编写几十条指令来实现PID功能,用户只需在PLC的内存中填写一张PID控制参数表(见附表)再执行指令:“PID Table Loop”即可完成PID运算,其中操作数Table表使用变量存储器VBx来指明控制参数表的表头字节;操作数Loop只可选择0-7的整数,表示本次PID闭环控制所针对的环路编号,多8路。
  控制参数(见附表)包括9个参数,全部为32位实数格式,共占用36字节。附表中的参数分两类。一类参数是固定不变的,如参数编号为2,4,5,6,7的参数,这些参数可在PLC的主程序中设定。另外一类参数必须在调用PID指令时才填入控制表格。如编号为1,3,8,9的参数,它们具有实时性。进一步分析发现:其中有一些参数,既是本次的输入(执行PID指令之前),又是本次的输出(执行PID指令之后),同时还是下次运算的输入,如编号为3,8,9的参数。附表中变量类型栏的In/Out应理解为相对于PID控制器而言的输入或输出。


附表     控制参数


 

3  结束语
  由S7-200系列PLC和变频器等组成的恒压供水控制系统,充分发挥了S7-200 CPU215可靠的内置式PID运算模块,可自动调节变频器输出频率、控制各泵的投入和退出,实现恒压供水。该系统操作方便、运行可靠,具有一定的推广应用价值


展开全文
优质商家推荐 拨打电话