西门子模块6ES7212-1BB23-0XB8诚信交易
目前,PLC(可编程逻辑控制器)已经广泛应用于钢铁、石油、化工、电力、建材、机械制造、汽车、轻纺、交通运输、环保及文化娱乐等各个行业,它具有高可靠性、抗干扰能力强、功能强大、灵活,易学易用、体积小,重量轻,价格便宜的特点,在流量计量方面也有着广泛的用途,在用于流量累积时又有其编程的独特之处,下面进行详细的分析和论述,包括在西门子S7-200CPU上编程的例子。
流量计输出的信号一般是脉冲信号或4-20mA电流信号,这两种信号输出的都是瞬时流量(也有用继电器输出累积量信号,原理一样,不再赘述),我们的目的是在PLC中计算和显示瞬时流量值和计算累积量值,当输入信号是脉冲信号是,在计算瞬时流量的时候,必须按照一个严格的时间间隔计算才能保证瞬时流量的准确性,计算瞬时流量的时候必须用定时中断来进行,在PLC系统中只能运行这一个中断程序,不允许再产生其它中断(是低优先级的中断也不允许运行),以防止干扰定时中断的时间间隔的准确性,计算瞬时流量就是将这个时间段的累计脉冲个数换算成累计流量,再除以时间就是瞬时流量,对于4-20mA输入只需按照其对应的量程进行换算就可以直接得到瞬时流量,而累积流量就是将每个时间段内的累积流量累加起来就是累积流量,在实际使用PLC编程的过程中必须注意以下几个问题:
1. 输入脉冲频率范围是否超出PLC接收的范围;
2. PLC高速计数器在达到大计数值时如何保证计算正确;
3. 如何保证定时中断不受干扰;
4. 如何避免计算累积量的误差;
5. 累积量的大累积位数;
6. 如何复位累积量;
下面就关键的2,4,6问题进行详细的叙述,以西门子S7-200CPU224为例,S7-200的CPU224具有6个单相大30kHz的高速计数器,但PLC内部没有提供相应的算法来计算频率,需要自己编程计算,这就需要在PLC高速计数器在达到大计数值时要保证计算的正确性,实际编程时,对高速计数器初始化以后就使之连续计数,不再对其进行任何干预,其高速计数器的初始化程序如下:
注意:此段程序应该放到PLC个扫描周期执行的程序中执行。
对于高速计数器是否达到大计数值时需要判断,S7-200CPU的高速计数器是可以周而复始的进行累计的,高位为符号位,小值为7FFFFFFF,由于计数器是一直累加的,不可能出现本次读取的的计数值小于上次的计数值,判断计数器当前值是否小于前一次的计数值,就可以判断计数是否达到大值的拐点(7FFFFFFF),如果达到,则执行特殊的计算以便消除计算错误,如下列程序所示,当当前计数值大于等于上次计数值时,两个计数值做差,就得到程序两次扫描时间间隔内的计数差值,将当前计数值赋值到上次计数值上;当当前计数值小于上次计数值时,计算上次计数值与7FFFFFFF之间的差值(用减法),以及当前计数值和7FFFFFFF之间的差值(用加法),将两个结果相加就是程序两次扫描时间间隔内的计数差值,从而实现对对累计计数值达到拐点时的正确计算。
注:此程序应放在定时中断子程序中执行。
实际上,在现场应用中定时中断子程序是采用250ms中断一次执行的,使用SMB34进行控制的,需要注意的是,系统中必须只保证这个中断是唯一存在的,不会受到其他中断的影响,否则可能会由于其他中断的影响使周期性中断不准时,从而影响精度。
通过以上计算就得到了250ms内流量计发过来的脉冲个数,这个数值乘以脉冲当量就是250ms内的流量值,再除以时间就是瞬时流量,在250ms内再执行累加程序就可以计算累积流量了,在计算累积流量过程中需要避免累积过程的的计算误差,我们知道,流量累积量是一直累积的一个数值,一般会累积到8位数,而PLC内部的浮点数的有效位数是6位,当累积量数值很大的时候就会造成一个大数和一个小数相加,势必导致小数的有效位数丢失,造成很大的累积误差,要避免大数和小数相加的情况出现,解决方法是采用多个流量累积器,只允许同数量级的数值相加,从而避免数值有效位数损失,实际编程中采用了5个累积器,根据常用流量情况下,在周期中断时间间隔(250ms)内流过的流量乘以15作为个累积器的上限,当达到这个累积器的上限值后,将这个累积器的值累加到第2个累积器中,并把个累积器清零,对于第三个累积器也同样处理,第4个累积器用于保存累积量小数部分数值,第5个累积器用于保存累积量整数部分数值,这样在显示总累积量时只需显示整数部分和小树部分就可以了,整个过程充分避免了累积过程中大数与小数相加的情况出现,在实际工程中,需根据流量的大小、周期中断的时间间隔来确定所用累积器的个数,而累积器的整数部分用双整数来表示,双整数的范围是-2,147,483,648到+2,147,483,647,可以使累积器的整数位数达到9位,这样,在显示累积量时就可以多显示9位整数的累积量和6位的小数累积量。总计15位,从而省略累积器倍乘系数,使读数更简便。
对累积器需要在一定条件下复位,累积到大数值或手动复位,在中断程序中判断累积量是否达到超过大位数,当超过大数值时,将各个累积器清零,清零的触发信号也可以是手动触发。
随着微电子技术和计算机技术的发展,可编程序控制器有了突飞猛进的发展,其功能已远远超出了逻辑控制、顺序控制的范围,它与计算机有效结合,可进行模拟量控制,具有远程通信功能等。有人将其称为现代工业控制的三大支柱(即PLC,机器人,CAD/CAM)之一。目前可编程序控制器(ProgrammableController)简称PLC已广泛应用于冶金、矿业、机械、轻工等领域,为工业自动化提供了有力的工具。
二、PLC的基本结构
PLC采用了典型的计算机结构,主要包括CPU、RAM、ROM和输入/输出接口电路等。如果把PLC看作一个系统,该系统由输入变量-PLC-输出变量组成,外部的各种开关信号、模拟信号、传感器检测的信号均作为PLC的输入变量,它们经PLC外部端子输入到内部寄存器中,经PLC内部逻辑运算或其它各种运算、处理后送到输出端子,它们是PLC的输出变量,由这些输出变量对外围设备进行各种控制。
三、控制方法及研究
1、FP1的特殊功能简介
(1) 脉冲输出
FP1的输出端Y7可输出脉冲,脉冲频率可通过软件编程进行调节,其输出频率范围为360Hz~5kHz。
(2) 高速计数器(HSC)
FP1内部有高速计数器,可输入两路脉冲,高计数频率为10kHz,计数范围-8388608~+8388607。
PLC
(3) 输入延时滤波
FP1的输入端采用输入延时滤波,可防止因开关机械抖动带来的不可靠性,其延时时间可根据需要进行调节,调节范围为1ms~128ms。
(4) 中断功能
FP1的中断有两种类型,一种是外部硬中断,一种是内部定时中断。
2、步进电机的速度控制
FP1有一条SPD0指令,该指令配合HSC和Y7的脉冲输出功能可实现速度及位置控制。速度控制梯形图见图1,控制方式参数见图2,脉冲输出频率设定曲线见图3。
3、控制系统的程序运行
图4是控制系统的原理接线图,图4中Y7输出的脉冲作为步进电机的时钟脉冲,经驱动器产生节拍脉冲,控制步进电机运转。Y7接至PLC的输入接点X0,并经X0送至PLC内部的HSC。HSC计数Y7的脉冲数,当达到预定值时发生中断,使Y7的脉冲频率切换至下一参数,从而实现较准确的位置控制。实现这一控制的梯形图见图5。
PLC资料网
控制系统的运行程序:句是将DT9044和DT9045清零,即为HSC进行计数做准备;第二句~第五句是建立参数表,参数存放在以DT20为首地址的数据寄存器区;后一句是启动SPD0指令,执行到这句则从DT20开始取出设定的参数并完成相应的控制要求。
由句可知个参数是K0,是PULSE方式的特征值,由此规定了输出方式。第二个参数是K70,对应脉冲频率为500Hz,于是Y7发出频率为500Hz的脉冲。第三个参数是K1000,即按此频率发1000个脉冲后则切换到下一个频率。而下一个频率即后一个参数是K0,当执行到这一步时脉冲停止,于是电机停转。故当运行此程序时即可使步进电机按照规定的速度、预定的转数驱动控制对象,使之达到预定位置后自动停止。
三、结束语
利用可编程序控制器可以方便地实现对电机速度和位置的控制,方便可靠地进行各种步进电机的操作,完成各种复杂的工作。它代表了先进的工业自动化革命,加速了机电一体化的实现。
一、S7-300 系统硬件主要包括以下几个部分:
1、信号处理模块;
2、接口模块;
3、功能模块;
4、CPU 中央处理器;
5、通讯处理器
6、通讯网卡
7、 工程师、操作员站和操作屏
二、硬件详细介绍
2.1信号处理模块
n 信号处理模块主要分为四类:开关量输入DI、开关量输出DO、模拟量输入AI、模拟量输出AO
n 经常使用的开关量输入模块名称和性能
ü SM32116点输入,24V DC;13-30V 为信号1;-30~5V为信号0;
ü SM32116点输入,120V/230V AC;79-264V 为信号1;0~40V为信号0;
n 经常使用的开关量输出模块名称和性能
ü SM32216点输出,24V DC;信号1时输出L+-0.8V;
每通道的大输出电流0.5A; 阻性负载的高输出频率100HZ,感性为0.5HZ;带短路电子保护;
ü SM3228点输出,继电器接点;信号1时输出接点闭合;信号0时输出接点断开;接点容量8A(230V AC)或5A (24V DC);
n 经常使用的模拟量输入模块名称和性能
ü SM3318点模拟量输入;用于电阻测量时,为4点;
ü 输入信号类型:电压 +-80毫伏;+-250毫伏;+-500毫 伏;+-1V;+-2.5V;+-5V;1-5V;+-10V;
电流 +-10毫安;+-20毫安;0-20毫安;4-20毫安;
电阻 150欧姆;300欧姆;600欧姆
热电偶 E,N,J,K型
热电阻 Pt100 标准,Ni100标准
ü 分辨率:14位
n 经常使用的模拟量输出模块名称和性能
ü SM3324点模拟量输出;
ü 信号类型:电压输出0-10V;+-10V;1-5V; 电流输出4-20MA;+-20MA;0-20MA
ü 分辨率:12位
2.2接口模块
n 接口模块主要用于连接多机架的PLC系统,即一个S7-300 PLC系统的信号模块如果超过8块,就必须配置接口模块进行扩展。
n 经常使用的接口模块名称和性能
ü IM360/IM361接口模块是为理想的扩展方案;
ü IM360插入到CR(中央机架,CPU所在的机架);
ü IM361插入到ER(扩展机架,扩展信号模块所在的机架);
ü 使用IM360/IM361接口模块多可以扩展3个机架,既一个传统的PLC系统多处理32个信号模块;
2.3功能模块
n 计数器模块;可直接连接增量编码器,实现连续、单向和循环记数;
n 步进电机控制模块;和步进电机配套使用,实现设备的定位任务;
n PID控制模块;实现温度、压力和流量等的闭环控制
2.4 CPU 中央处理器
n S7-300总共有8种不同的CPU;
n CPU312IFM ,带集成的数字输入/输出的紧凑型CPU,用于带或不带模拟量的小系统,多8个模块;
n CPU313用于有更多编程要求的小型设备;
n CPU314IFM,带有集成的数字和模拟输入/输出的紧凑型CPU;
n CPU314 用于安装中等规模的程序以及中等指令执行速度的程序;
n CPU315/315-2DP 用于要求中到大规模的程序和通过PROFIBUS-DP进行分布式配置的设备;
n CPU316用于有大量编程要求的设备;
n CPU318-2用于有要求极大规模的程序和通过PROFIBUS-DP进行分布式配置的设备;
n CPU315-2DP和CPU313的重要性能参数比较:
序号 | 参数名称 | CPU313 | CPU315-2DP |
1 | 工作存储器 | 12K字节/4K语句 | 64K |
2 | 装载存储器 | 20K字节 | 96K内置 |
3 | 块数量 | 128FC/128FB/127DB | 192FC/192FB/255DB |
4 | 位存储器 | 2048 | 2048 |
5 | 记数器 | C1-C64 | C1-C64 |
6 | 定时器 | T1-T128 | T1-T128 |
7 | 数字I/O总数 | 256通道 | 8192 |
8 | 模拟I/O总数 | 64I/32O | 512 |
9 | 支持的软件 | STEP7 | STEP7/SCL/CFC |
10 | PROFIBUS-DP口 | 无 | 有 |
2.5通讯处理器
n 常用的通讯处理器包括:PROFIBUS-DP处理器、PROFIBUS-FMS处理器和工业以太网处理器;
n PROFIBUS-DP处理器名称:CP342-5;
ü 用于连接SIEMENSS7-300和PROFIBUS-DP的主/从的接口模块;
ü 通过PROFIBUS简单的进行配置和编程;
ü 支持的通讯协议:PROFIBUS-DP、S7通讯功能、PG\OP通讯;
ü 传输率:9.6~12 Mbit/s自由选择;
ü 主要用于和ET200子站配合,组成分布式I/O系统;
n PROFIBUS-FMS处理器名称:CP343-5;
ü 用于连接SIEMENSS7-300和PROFIBUS-FMS的接口模块;
ü 支持的通讯协议:PROFIBUS-FMS、S7通讯功能、PG\OP通讯;
ü 传输率:9.6~1.5Mbit/s自由选择;
ü 主要用于和操作员站的连接;
n 工业以太网处理器名称:CP343-1;
ü 用于连接SIEMENSS7-300和工业以太网接口模块;
ü 10/100Mbit/s全双工,自动切换
ü 接口连接:RJ45、AUI
ü 支持的通讯协议:ISO、TCP/IP通讯协议;和S7通讯、PG\OP通讯
2.6通讯网卡
PC-ADAPTER 用于PC的串口和PLC的MPI口直接连接
CP5611 通讯卡,支持MPI协议、PROFIBUS-DP协议、S7connections;用于工程师站\操作员站和PLC的多点连接;
CP5613通讯卡,支持MPI协议、PROFIBUS-DP协议、S7connections;用于工程师站\操作员站和PLC的多点连接;
CP1613 通讯卡,支持ISO协议、TCP/IP协议、S7connections;用于工程师站\操作员站和PLC的多点连接;
CP5412 A2通讯卡,支持PROFIBUSFMS协议;用于工程师站\操作员站和PLC的多点连接;
2.7工程师站、操作员站和操作屏
n 一台装有STEP7软件的PC我们就称之为工程师站,其主要完成系统硬件和组态、符号编辑以及程序编程等任务;
l 硬件配置:用于对自动化系统和模块进行参数设置;
l 网络通讯:用于配置MPI、PROFIBUS或工业以太网进行的数据传输;
l 符号编辑:用于定义符号名称、数据类型和注释,将物理地址名称化;
l 程序编程:三种编程语言可供选用;语句表(STL)、梯形图(LAD)、功能块图(FBD);
n 一台装有WINCC软件的PC我们就称之为操作员站,其主要完成操作员站画面组态、变量连接、系统报警、变量曲线生成等功能;
n 人机界面HMI
ü 文本显示的操作屏,OP3、OP7、OP17;可以连接S7-200\300\400系统
ü 图形显示的操作屏,OP27、OP37;可以连接S7-200\300\400系统
ü 图形显示的触摸屏,TP27、TP37;可以连接S7-200\300\400系统
图例: