全国服务热线 15221406036

宜昌西门子S7-300代理商

发布:2023-09-27 17:11,更新:2024-05-08 07:10

宜昌西门子S7-300代理商

5  监控程序设计
上位机的程序流程图如图1所示。根据接收到的数据进行判断,如接收到的是读写错误,则要求重发。如为写成功,则开启定时器1,定时采样;如读成功,接收到的是采样数据则进行显示和调用神经网络进行数字处理,处理完毕发送频率和设定压力值,并开启定时器2,等待响应。
系统主窗体四个按钮控件,分别为参数设置、实时监测、启动和关闭系统。参数设置界面如图2所示。用户可根据实际情况修改压力设定值。
主要控件功能包括:
(1) 压力设定值:压力设定值范围:0.30-0.60Mpa。
(2) 校正系数:主要是对压力显示进行校正,使压力显示与压力表显示一致。
(3) 复位按钮:运行中按下,将使系统重新启动,各参数回到初始设置。
(4) 设定按钮:在文本框输入压力设定值和校正系数后,按下此按钮,压力设定值和校正系数才能通过串口发送给下位机。


图1     上位机流程图


图2     供水系统参数设置界面


图3     供水系统实时监测界面


图3所示为系统实时监测界面,可显示当前的实际水压和频率值;三个指示灯主要接收PLC回送的信息,实时监测各泵的运行情况,正常显示为绿色;故障时,相应的控件变成红色显示。  
6  结束语
投入运行的项目工作稳定,人机界面直观友好。项目充分发挥S7-200 PLC硬件功能完善,指令系统丰富和通讯功能强大的技术特点

自二十世纪六十年代美国推出可编程逻辑控制器(Programmable Logic Controller,PLC)取代传统继电器控制装置以来,PLC得到了快速发展,在世界各地得到了广泛应用。同时,PLC的功能也不断完善。随着计算机技术、信号处理技术、控制技术网络技术的不断发展和用户需求的不断提高,PLC在开关量处理的基础上增加了模拟量处理和运动控制等功能。的PLC不再局限于逻辑控制,在运动控制、过程控制等领域也发挥着十分重要的作用。

作为离散控的制的产品,PLC在二十世纪八十年代至九十年代得到了迅速发展,世界范围内的PLC年增长率保持为20%~30%。随着工厂自动化程度的不断提高和PLC市场容量基数的不断扩大,近年来PLC在工业发达国家的增长速度放缓。但是,在中国等发展中国家PLC的增长十分迅速。综合相关资料,2004年全球PLC的销售收入为100亿美元左右,在自动化领域占据着十分重要的位置。

PLC是由摸仿原继电器控制原理发展起来的,二十世纪七十年代的PLC只有开关量逻辑控制,首先应用的是汽车制造行业。它以存储执行逻辑运算、顺序控制、定时、计数和运算等操作的指令;并通过数字输入和输出操作,来控制各类机械或生产过程。用户编制的控制程序表达了生产过程的工艺要求,并事先存入PLC的用户程序存储器中。运行时按存储程序的内容逐条执行,以完成工艺流程要求的操作。PLC的CPU内有指示程序步存储地址的程序计数器,在程序运行过程中,每执行一步该计数器自动加1,程序从起始步(步序号为零)起依次执行到终步(通常为END指令),然后再返回起始步循环运算。PLC每完成一次循环操作所需的时间称为一个扫描周期。不同型号的PLC,循环扫描周期在1微秒到几十微秒之间。PLC用梯形图编程,在解算逻辑方面,表现出快速的优点,在微秒量级,解算1K逻辑程序不到1毫秒。它把所有的输入都当成开关量来处理,16位(也有32位的)为一个模拟量。大型PLC使用另外一个CPU来完成模拟量的运算。把计算结果送给PLC的控制器。

相同I/O点数的系统,用PLC比用DCS,其成本要低一些(大约能省40%左右)。PLC没有专用操作站,它用的软件和硬件都是通用的,所以维护成本比DCS要低很多。一个PLC的控制器,可以接收几千个I/O点(多可达8000多个I/O)。如果被控对象主要是设备连锁、回路很少,采用PLC较为合适。PLC由于采用通用监控软件,在设计企业的管理信息系统方面,要容易一些。

近10年来,随着PLC价格的不断降低和用户需求的不断扩大,越来越多的中小设备开始采用PLC进行控制,PLC在我国的应用增长十分迅速。随着中国经济的高速发展和基础自动化水平的不断提高,今后一段时期内PLC在我国仍将保持高速增长势头。

通用PLC应用于专用设备时可以认为它就是一个嵌入式控制器,但PLC相对一般嵌入式控制器而方具有更高的可靠性和更好的稳定性。实际工作中碰到的一些用户原来采用嵌入式控制器,现在正逐步用通用PLC或定制PLC取代嵌入式控制器

1 引言
与其它工业控制系统相比,PLC控制系统具有可靠性高、抗干扰能力强等突出优点,因而广泛应用于工业控制领域。对于那些不必采用上位机监控+PLC现场控制的简易控制系统,操作面板的完善与否直接影响到整个系统的智能化程度高低。对小型控制系统而言,在满足功能的前提下,高性价比一直是设计人员追求的目标,若采用触摸屏(如SIEMENS的TP270)+组态软件(如PROTOOL)的方式组成人机界面,势必使整个系统的性价比大为降低,因此,提出基于PLC的矩阵式键盘设计方案具有较大的实际意义。

2 矩阵式键盘工作原理
矩阵式键盘是相对于独立式键盘而言的,也叫行列式键盘,是当键数较多时为节省I/O点而采取的一种结构。在微机系统中,矩阵式键盘的构成方式如图1所示。

图1 矩阵式键盘结构图


首先,判断整个键盘上有无键按下。方法是:将列全输出为0,然后读入行的状态,如果行读入的状态全为1,则无键按下,不全为1则有键按下。
其次,若有键按下则逐列扫描。方法是:依次将列线送低电平0,检查对应行线的状态;若行线全为1,则按键不在此列;若不全为1,则按键必在此列,且是与0电平行线相交的那个键。后,确定键值,并进入键处理程序。

3 矩阵式键盘硬件设计
在PLC系统中设计矩阵式键盘不仅要用到输入口,而且也要用到输出口,因此,了解PLC I/O口内部电路的结构以及工作原理是十分重要的。下面以S7-200的DC输入、输出模块为例,简要说明其工作原理。
3.1 输入模块
如图2所示,为PLC的DC输入模块,其中,K1-输入开关;M-公共端;I0.0-输入点;R1、R2的典型值为5.6K、1K。

图2 直流输入模块电路图


工作原理:若输入开关K1闭合,则输入信号经RC滤波和光电隔离后,转换为PLC的CPU所需的电平(一般为5V),再经过输入选择器与CPU的总线相连,从而将外部输入开关的“ON”状态输入到PLC内部,此时输入指示灯亮,且与该输入点对应的输入映像寄存器为“1”。若输入开关断开,则信号没有形成通路,此时输入指示灯不亮,表示为“OFF”状态。
3.2 输出模块
如图3所示,为PLC的DC输出模块,其中,L+接DC24V;Q0.0-输出点。

图3 直流输出模块电路图


工作原理:若用户程序将输出置为“ON”状态,则在刷新输出阶段CPU将“ON”信号送给输出锁存器,再经过光电耦合送给场效应管,使之饱和导通,此时输出指示灯亮,且通过场效应管将DC24V和负载连通,从而使得负载获得工作电流。反之,若用户程序将输出置为“OFF”状态,则输出指示灯不亮,情况与上述相反。

3.3 键盘的硬件设计
由以上分析可知:PLC的I/O口内部电路与一般的计算机系统(如单片机系统)有较大的不同,这就决定了在PLC系统中设计矩阵式键盘也有其特殊性。首先,由于输入模块中有RC滤波电路,其滤波延迟时间可以通过编程软件设置,即其本身存在硬件消抖动的功能,因此不再需要软件延时消抖动;其次,由于用到了PLC的输出口,它本身可以输出对M端有DC24V的电压,因此不再需要外接电源;后,由于PLC的输入口有6K左右的输入电阻,因此可以将DC24V的电压直接加上,若为了延长I/O口的使用寿命,一般按照输入模块的技术指标来配置限流电阻,经查阅输入电流的典型值为4mA,一般取R1=R2=R3=0.5K即可。如图4所示为3行3列矩阵式键盘的结构图。

图4 3×3键盘结构图


4 矩阵式键盘软件设计
4.1 PLC的扫描工作方式
当PLC处于“RUN”工作模式下时,除上电初始化外,其它程序都采取周而复始的循环扫描方式,称之为“PLC的扫描工作方式”,其执行流程如图5所示:

图5 PLC的扫描工作流程


在设计键盘时可暂不考虑通信和自诊断,则在一个扫描周期内剩下以下三个主要阶段:
(1) 输入采样阶段,CPU将所有物理输入点的状态存入对应的过程映像寄存器中,到下次输入采样前,过程映像寄存器的内容均保持不变;
(2) 程序执行阶段,CPU按照从左到右、从上到下的顺序执行程序,将运算结果写到输出映像寄存器或数据存储区内;
(3) 输出刷新阶段,在程序执行完后,CPU将过程输出映像寄存器的状态几乎同时的更新到物理输出点。
4.2 键盘的软件设计
矩阵式键盘的软件设计相对较为复杂,但无非是实现微机系统中所描述的键盘扫描程序的四个功能:
(1) 判断有无键按下;
(2) 去机械抖动;
(3) 求按下的键号;
(4) 键闭合一次仅进行一次键功能操作。
4.3 键盘设定及程序设计
再结合微机系统中矩阵键盘的原理,设计3×3矩阵式键盘,特做如下设定:
(1) 设定0~8号键分别与M0.0~M1.0对应,键按下,对应的位存储点为“1”,键松开则为“0”;
(2) 设定I0.0、I0.1、I0.2对应键盘的第0列、第1列、第2列,Q0.0、Q0.1、Q0.2对应键盘的第0行、第1行、第2行,M1.1为“有键按下”标志位;
(3) 按图4所示的方式构成3行3列矩阵式键盘,流程图如图6。

图6 键盘程序流程图

为增强程序的可读性,利用STEP7-Micro/WIN V4.0编程软件,用符号地址替代地址,编制3×3键盘的STL程序如下所示。
Network 1 判断有无键按下
LDN 有键按下
S 第0行, 3 //全行扫描
LD 第0列
O 第1列
O 第2列 //全列读入
AN 有键按下
S 有键按下, 1 //有键按下,置标志位
JMP 0
LDN 有键按下
MOVW 0, MW0 //无键按下,清零跳出
JMP 9
Network 2 散转程序
LD 有键按下
A 第0行
JMP 10 //跳至第0行
LD 有键按下
A 第1行
JMP 11 //跳至第1行
LD 有键按下
A 第2行
JMP 12 //跳至第2行
Network 3 逐行扫描
LBL 0 //第0行处理
LD 有键按下
RI 第0行, 3
SI 第0行, 1 //立即置位Q0.0
JMP 9
LBL 10
LD 第0列
= KEY_0 //0键
JMP 9
LD 第1列
= KEY_1 //1键
JMP 9
LD 第2列
= KEY_2 //2键
JMP 9
LBL 1 //第1行处理
LD 有键按下
RI 第0行, 3
SI 第1行, 1 //立即置位Q0.1
JMP 9
LBL 11
LD 第0列
= KEY_3 //3键
JMP 9
LD 第1列
= KEY_4 //4键
JMP 9
LD 第2列
= KEY_5 //5键
JMP 9
LBL 2 //第2行处理
LD 有键按下
RI 第0行, 3
SI 第2行, 1 //立即置位Q0.2
JMP 9
LBL 12
LD 第0列
= KEY_6 //6键
JMP 9
LD 第1列
= KEY_7 //7键
JMP 9
LD 第2列
= KEY_8 //8键
JMP 9
LD 有键按下
R 有键按下, 1
//无键按下,清标志位
Network 4 软件延时
LBL 9
LD 有键按下 //有键按下才延时
FOR VW0, 1, 500
NOP 0
NEXT
4.4 程序的说明
(1) 程序采用了立即置位、复位指令SI和RI,是为了更及时的置位复位输出点,使程序的执行不受扫描周期的影响,也可用字节立即写指令MOV_BIW来实现,但应该考虑对其它未用点的影响。
(2) 程序的后采用了软件延时,是为了解决程序指令执行时间与输入输出滞后时间的不匹配。利用编程软件STEP7-Micro/WIN V4.0中的System Block下的bbbbb Filters选项可以设置输入滤波时间,默认为6.4ms,减少滤波时间可以相应的减少软件延时次数,但若滤波时间太小又达不到消抖动的目的。
(3) 程序中没有考虑多键同时按下的问题,在现有的程序中,若不同行有多个键按下,均以先按下的那个键为准进行响应,但若同一行上有多个键按下,则又分要几种情况,因此在应用时,应加强对按键的限制条件,避免由于误操作而造成生产设备的损坏。
(4) 程序中对每个按钮的响应均是按下该键,则对应的存储位为“1”,放开该键,则为“0”,没有其它较为智能的功能。若键盘中有“加速”、“减速”等类似键时,往往希望有连续加减的功能,即按下“加速”一定时间后(如500ms),按照每规定时间(如100ms)增加一个单位的速度值,此时可以利用两个定时器实现,其STL程序如下。
LD 加速
TON T37, 5
LD 加速
EU
= 加速上升沿
LD T37
AN 每100MS通电一次
TON T38, 1
LD T38
= 每100MS通电一次
LD 每100MS通电一次
O 加速上升沿
EU
+I 1, 速度存储值

5 结束语
本文提出了在PLC系统中设计矩阵式键盘的一般方法并给出了3×3键盘的硬件连线图和STL程序。在键数较多时,矩阵式键盘可以大大节省PLC的I/O点数,但程序设计的复杂度也随之增加,因此使用时应在系统的硬件成本和实时性之间加以均衡考虑。此外,本文的设计思路具有通用性,只需稍加变动,就可移植到其它品牌的PLC中。文中的STL程序均已通过S7-200的编程软件STEP7-Micro/WIN V4.0在CPU226 DC/DC/DC上调试通过,说明了本文设计方法的可行性。


联系方式

  • 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
  • 邮编:201600
  • 联系电话:未提供
  • 经理:聂航
  • 手机:15221406036
  • 微信:15221406036
  • QQ:3064686604
  • Email:3064686604@qq.com