西门子6ES7223-1BH22-0XA8货期较快
西门子6ES7223-1BH22-0XA8货期较快
1引言
可编程序控制器(PLC, Programmable Logic Controller)是采用微电脑技术制造的自动控制设备。他以顺序控制为主,回路调节为辅,能完成逻辑判断、定时、记忆和算术运算等功能。
随着PLC技术的发展,其功能越来越多,集成度越来越高,网络功能越来越强,PLC与上位PC机联网形成的PLC及其网络技术广泛地应用到工业自动化控制之中,PLC集三电与一体,具有良好的控制精度和高可靠性,使得PLC成为现代工业自动化的支柱。PLC的生产厂家和型号、种类繁多,不同型号自成体系有不同的程序语言和使用方法,本文拟就用日本立石公司生产的OMRON C20p型PLC,设计几个PLC在三相异步电机控制中的应用,与传统的继电器控制相比,具有控制速度快、可靠性高、灵活性强等优点,可作为高校学生学习PLC的控制技术的参考,也可作为工业电机的自动控制电路。
2PLC在电机控制中的应用[1~3]
2.1三相异步电机的正反转控制
要求当按下正转按钮,电机连续正转,此时反转按钮不起作用(互锁),按下停止按钮电机断开电源,按下反转按钮电机连续反转,正转不起作用。图1所示为三相异步电机的正反转控制原理图。
2.2三相异步电机的Y—△启动
要求起动时电机接成Y型,经过一段时间自动转化为△形运行,要求Y形断开后△形才能启动,防止Y形未断△形启动造成电源短路。图2所示是三相异步电机Y—△启动控制原理图。
2.3三相异步电机时间控制
要求第1台电动机M1启动5 s后,第2台电动机M2自动启动,只有当第2台M2停止后,经过5 s延时,M1自动停止。图3所示是三相异步电机时间控制原理图。
3程序的写入与运行
将PLC联上编程器并接通电源后,PLC电源指示灯亮,将编程器开关打到“PROGRAM”位置,这时PLC处于编程状态。编程器显示PASSWORD!这时依次按Clr键和Montr键,直至屏幕显示地址号0000,这时即可输入程序。
在输入程序前,需清除存储器中内容,依次按Clr、Play/Set, Not,Rec/Reset和Montr键,即将全部程序清除。按照以上3种控制的梯形图或程序指令将3种控制程序写入PLC,当上述3部分程序输入到PLC机中后,用上下方向键读出所写程序,如程序有错,可用插入指令和删除指令修改程序。
程序输入正确后,分别按图1(a)和(c)连接PLC外部接线及主回路线路实现电机正反转控制,按图2(a)和(c)连接线路实现电机Y—△启动,按图3(a)和(c)连接线路实现电机的时间控制。此设计可以一次性把3种控制电路的程序全部输入,同时控制3种电路,运行时,按下SBF,SBR电机正反转启动,按下SB1,SB2控制电机Y—△启动,按下SB3,SB4电机顺序启动,互不干扰,事半功倍,实现了一台PLC同时控制多种电路形式。
1 引言
可编程控制器(以下简称PLC)由于其高可靠性、编程简单、通用性强、体积小、结构紧凑、安装维护方便等特点,而在工业控制中得到了广泛应用。PLC的模块一般分为以下几大类:开关量输入模块、开关量输出模块、模拟量输入模块、模拟量输出模块。在工业控制中特别是过程控制领域中需要采集和控制的模拟量比较多,因而对PLC的模拟量输入、输出模块需要的较多,而模拟量输入、输出模块比较贵,增加模拟量输入、输出模块就增加了成本,降低了整个系统的性价比,限制了PLC的应用。本文提出了一种基于通讯的模拟量输入、输出模块的扩展方法力图解决这一问题。
2 基于通讯的模拟量输入、输出模块的扩展方法
(1) 模拟量输入模块扩展
这里以一路12位模拟量输入为例,模拟信号以0~5V标准电压的形式送入信号输入端,应用12位A/D转换芯片MAX187实现模数转换。MAX187是12位串行A/D,具有较高的转换速度,采样频率是75kHz,适用于较高精度的过程控制。考虑到实际工业现场中的高频干扰,在采样信号送MAX187之前还使用了低通滤波器滤波,如图1所示。
图1 低通滤波、放大器及A/D转换
MAX187具有内部参考电压,既4#管脚(REF)为 4.096V,因此,A/D转换的全量程为4.096V。而输入信号是0~5V,因此,要加一级运放把0~5V转换成0~4.096V后送入MAX187。AT89C52的P1.3和MAX187的片选端(CS)相连、AT89C52的P1.4和MAX187的串行时钟信号端(SCLK)相连、AT89C52的P1.5和MAX187的串行数据输出端(DOUT)相连。模拟量采样的值存入单片机的内存中,再由单片机的串行口传送给PLC。A/D转换的C51程序如下:
#include
#include
sbit IC4_S = P1^4; /* AD输入端口设置*/
sbit IC4_D = P1^5;
sbit IC4_C = P1^3;
void bbbbb(void )
{ unsigned char idata i;
unsigned int idata result=0x0000;
IC4_C = 0; /* CS端为低电平*/
for(i=0;i<12;i++)
{ result = result << 1;
IC4_S = 0; /*时钟端产生时钟脉冲*/
IC4_S = 1;
if( IC4_D ) result++; /*从串行数据输出端读入A/D转换数据*/
}
IC4_C = 1; /* CS端为高电平*/
pdat[1] = result;
}
MAX187的工作时序图见图2。
图2 MAX187的工作时序图
(2) 模拟量输出模块扩展
这里以一路12位模拟量输出为例,设计中将采用12位D/A转换芯片MAX531来实现数摸转换。我们在MAX531的输出端接运算放大器,将模拟输出调节至0~5V,输出部分的硬件电路如图3所示。这里,MAX531是12位串行D/A,具有较高的转换速度, MAX531具有内部参考电压,既10#管脚(REFOUT)为2.048V,因此, D/A转换的全量程为2.048V。而输出信号一般要求是标准的0~5V,因此,要加一级运放把MAX531输出的0~2.048V信号转换成 0~5V信号。AT89C52的P1.0和MAX531的串行时钟信号端(SCLK)相连、AT89C52的P1.1和MAX531的串行数据输入端(DIN)相连、AT89C52的P1.2和MAX531的片选端(CS)相连。PLC把要输出的模拟量通过串行口传送给单片机,存入的内存中,再由单片机完成D/A转换进行输出。A/D转换的C51程序如下:
图3 D/A转换及放大器原理图
#include
#include
sbit IC2_S = P1^0; /*DA输出端口设置*/
sbit IC2_D = P1^1;
sbit IC2_C = P1^2;
void output(unsigned int dat)
{ unsigned char idata i = 12;
IC2_C = 0; /* CS端为低电平*/
while( i-- )
{ IC2_S = 0; /*时钟端产生时钟脉冲*/
if ( dat &0x0800 ) IC2_D =1; /*从串行数据输入端读入DA转换数据*/
else IC2_D =0;
IC2_S = 1;
dat = dat << 1;
}
IC2_C=1; /* CS端为高电平*/
}
MAX531的工作时序图见图4。
图4 MAX531的工作时序图
3 PLC与扩展模块之间的通信接口及通信协议
(1) 通信接口
以松下FP1系列PLC为例来阐述PLC与扩展模块之间的通信,FP1系列PLC的通信接口采用标准9芯RS232接口,它与扩展模块之间的接线如图5所示。
图5 扩展模块与PLC的通讯连接
· 扩展模块的RXD端与PLC的TXD端联接,使扩展模块接收到PLC发出的数据;
·扩展模块的TXD端与PLC的RXD端联接,使扩展模块发出的数据被PLC接收到;
· 扩展模块的地与PLC的SG端互联,使两者的工作基准地电平相同。
上面采用的是RS232接口,PLC一次只能扩展一个模块。如果要扩展多个模块,可以采用RS485接口,现代的PLC一般都带有RS485接口。
(2) 通信协议
松下FP1系列PLC与扩展模块之间的通信协议为松下公司专用的MEWTOCOL-COM协议,该协议采用异步通信方式,其波特率有1200、2400、4800、9600、19200、38400、57600、115200bps等多种可选,且报文长度可变可固定。该协议格式分为命令消息(Command Message),正常响应消息(Response Message-normal),出错响应消息(Response Message-error)三种。
· 扩展模块的RXD端与PLC的TXD端联接,使扩展模块接收到PLC发出的数据;
·扩展模块的TXD端与PLC的RXD端联接,使扩展模块发出的数据被PLC接收到;
· 扩展模块的地与PLC的SG端互联,使两者的工作基准地电平相同。
上面采用的是RS232接口,PLC一次只能扩展一个模块。如果要扩展多个模块,可以采用RS485接口,现代的PLC一般都带有RS485接口。
(2) 通信协议
松下FP1系列PLC与扩展模块之间的通信协议为松下公司专用的MEWTOCOL-COM协议,该协议采用异步通信方式,其波特率有1200、2400、4800、9600、19200、38400、57600、115200bps等多种可选,且报文长度可变可固定。该协议格式分为命令消息(Command Message),正常响应消息(Response Message-normal),出错响应消息(Response Message-error)三种。
其中:%为起始符,标记每一帧报文的开始;CR为结束符,标记每一帧报文的结束;
AD为PLC的站地址,为两位16进制数,如00则表示台PLC;
#、$、!标注该帧报文为何种类型。
Command code为命令代码,如例1中的“RD”,表示读数据区。Response code为响应代码一般返回接收到的命令消息中的命令代码。Error(H)和Error(L)为出错代码,是两位16进制数, 可根据其值在协议中查出错误的描述。
Text code为命令参数,如例1命令消息中“D 01105 01107”,“D”表示数据寄存器,“01105 01107”表示第1105号至1107号,而在例1响应消息中,“6300 4433 0A00”则表示DT1105至DT1107中数据分别为6300、4433、0A00。
BCC(H)和BCC(L)为前面字符串的BCC校验码的高、低位,为两位16进制数。其初值为0,然后从起始符开始与该帧报文中每一字节按位进行异或运算得到。
l 例1:读取DT1105至DT1107中的数据的命令消息如下:
若DT1105至DT1107中数据分别为6300、4433和0A00,PLC返回的响应消息如下:
那么, 模拟量输入扩展模块与PLC通讯的报文可如下:
表示1号模拟量输入扩展模块把模拟量采样值0FFF存入PLC的第1105个数据寄存器
模拟量输出扩展模块与PLC通讯的报文可如下:
表示1号模拟量输出扩展模块请求把PLC中第1106个数据寄存器保存的模拟量输出值读入。
若DT1106中数据为0fff,PLC返回的响应消息如下:
1号模拟量输出扩展模块就把接收到的数字量0fff转换成模拟量输出。
4 结束语
本文提出的方法已在实验室中调试通过,并多次长时间运行测试,以验证其准确性与稳定性,收到了令人满意的效果,通信十分稳定可靠。各位读者可在本文的基础上,开发出8路、16路8位、10位、12位等模拟量输入、输出扩展模块;本文使用的是松下公司已有的MEWTOCOL-COM协议,读者也可以自己编制通讯协议。本文意在提出一种低成本的PLC模拟量输入、输出模块扩展方法,如果要把它变成产品还有很长的路要走,例如,如何让用户使用得更方便,可靠性更高等等。这些都是需要进一步完善的。
要求采用AB的RsLogix5000系列,第二该系统需要联入本公司自己生产的红外测位系统。由于我们的系统的通信协议是内部协议,而AB的PLC不像西门子的200系列的PLC可以对自由口编程,可以很方便的获取到数据,而AB的则不然,目前AB已经不在生产第三方接口的模块,而有其合作的ProSoft公司专门生产第三方模块。ProSoft生产的模块有很多种,由于没有经验,很不幸,我们选择的是MVI56的模块,而这个模块却是全部自由编程,不含有任何默认协议。去退货确要报价的30%作为补偿,八个模块要赔好几万,唉!... ...
剩下的事,只有研究了,花了五千银子,请了一个“专家”,对AB的产品非常熟。一星期后,终于有点眉目了,原来这个模块就是一个典型的嵌入式系统,相当一个带三个串口的386的电脑,操作系统为小型的DOS系统(TINY DOS),用C++为其开发程序。对DOS C我是非常熟的,可是如何与AB通信确不熟悉,幸好那个“专家”对此比较熟,我们二者一结合,果然成功了--效果出奇的好,不用AB PLC编一行代码,就可以实现把数据写入到变量区。下面是PLC的配置界面:
//基于 TINY DOS 的C++ 的核心通信程序
1 引言
在建立控制系统时, 系统集成商毫无例外地总是希望能使用比较少的设备来实现更多的功能。他们需要控制系统不仅能处理数字i/o和运动,而且还可以集成用于自动化监控和测试的视觉功能和模块化仪器。此外,控制系统还必须能实时地处理控制算法和分析任务并把数据传送回企业。您是否能同时拥有pc的功能和plc(可编程控制器)的可靠性呢?
倍福公司设计可编程自动控制器(pac),就是这样一个的平台,它是一种新类型的控制器,该控制器结合了pc的处理器、ram和软件的优势,以及plc固有的可靠性、坚固性和分布特性正逐渐占领自动化领域。
基于以上特点,在我们设计的风电变流器中选择了倍福的pac。
2 pac硬件简介
2.1 系统构成
一个完整的pac系统包括以下几种模块组成(但不是每种都必须有):
(1) 基本cpu模块;
(2) 系统接口模块;
(3) 电源和i/o接口模块;
(4) 现场总线模块;
(5) 数字量和模拟量采集模块;
(6) ups模块。
pac系统外观图如图1所示。
图1 倍福pac系统外观图
2.2 cpu模块
(1)存储器选配: 64 m字节闪存 + 128 m字节 ram;
(2)dvi/usb 选配: 选带或不带 dvi/usb 接口模块;
(3)操作系统选配: bbbbbbs ce.ne;
bbbbbbs xp 嵌入式 (要求 cf 卡);
(4)twincat 实时plc选配
不带 twincat;
twincat ce plc 或 twincat plc (取决于操作系统);
twincat ce nc 或 twincat nc (取决于操作系统)。
2.3 接口模块
(1) 显示器和触摸屏接口
dvi:视频信号通过标准的 dvi 连接 到显示器上。usb:可连接触摸屏或鼠标、键盘、扫描仪、打印机、 cd-rom 读写器。
(2) 高速度232接口:大传输速率115k;
(3) 音频信号接口:主要提供音频输入/输出接口;
(4) 视频信号接口:主要提供视频输入/输出接口。
3 九洲powerwinvert-a型风电变流器主电路工作原理
笔者选用的是不可控整流+升压斩波+spwm逆变的电路结构,如图2所示。
图2 powerwinvert-a型风电变流器主电路拓扑结构
3.1 主电路结构
发电机使用的是永磁同步发电机,采用六相不可控整流桥对其进行12脉冲整流,在输出端并上电容进行稳压,减小直流脉动。考虑到电流波形畸变和发电机内感的存在,在发电机输出端并上无功补偿电容,提高发电机的功率因数和利用效率。在中间直流环节,采用升压斩波电路。在逆变环节,采用两个spwm逆变桥通过滤波电抗并联的形式,以减小每个igbt通过的电流大小,还能在一定的控制方法配合下防止两个逆变器输出电流不等从而防止环流问题出现。另外,为了防止直流母线电压过高损坏器件,加入了直流母线箝位电路;为了防止电路开始运行对电容充电电流过大,加入了电容的预充电支路,同时该支路还保证发电机没工作时的直流母线侧上也有电压,能对电网进行无功补偿。
3.2 工作原理
随着风速的变化,风轮的转速也在变化,因此发电机发出的交流电的电压和频率是不断变化的,该变压变频的交流点经过ac-dc变换后变为了幅度不断变化的直流电,然后经过升压斩波稳压后转化为电压幅值稳定而电流大小随风速度不断变化的直流电,再经过spwm逆变器,变成了与电网相位、频率相同,输出电压随风速不断变化且略高于电网电压的三相交流电,后经过滤波电抗器并网,输出电压高于电网部分降在滤波电抗器上,从而完成了直驱并网型风力发电机变流电路将变频变压交流电转化为能并网的交流电的任务。
4 倍福pac在变流器中的应用
4.1 应用框图
倍福pac在变流器中的应用如图3所示。
图3 倍福pac在变流器中的应用框图
4.2 系统介绍
整个系统可以实现对变流器运行的全方位监控,其中以太网门接口用于连接风场集中控制站,交换机2可以实现与其他变流器的信息互联。触摸屏用于本地变流器状态信息的查看和设置,主控器通过prifibus总线与变流器plc,机舱plc,低压plc的连接,具体负责现场各点的模拟量与数字量的采集和控制。
4.3 主控制器部分
作为现场总线的主站,负责系统的整体控制,主要由以下几部分组成:
(1)cx1020-0111:cpu模块,带以太网接口和usb/dvi 接口;
(2)cx1020-0002:电源模块;
(3) cx1500-m310:现场总线主站。
4.4 变流器plc部分
作为现场总线的从站,负责变流器功率控制电路模拟量和开关量的采集和控制,主要有以下部分组成:
(1) bk3150:现场总线耦合器;
(2) kl9210:电源模块;
(3) kl1104:数字量输入模块;
(4) kl2134:数字量输出模块;
(5) kl6904:数字量输出模块,安全端子;
(6) kl1904:数字量输入模块,安全端子;
(7) kl3404:模拟量输入模块;
(8) kl4032:模拟量输出模块;
(9) kl9010:总线末端模块。
4.5 低压plc部分
作为现场总线的从站,负责变流器低压电器部分(空气开关,断路器等)模拟量和开关量的采集和控制,在数字量与模拟量模块的数量上与变流器plc有所区别。
5 结束语
backhoff pac系统已经在本公司研发的powerwinvert-a型风电变流器中成功应用(如图4所示),并取得了良好的效果。随着自动化技术的发展,倍福的pac一定会得到更加广泛的应用。
图4 应用于powerwinvert-a型风电变流器中的倍福pac实物图
- 西门子SB1223 数字量信号板模块6ES7223-3BD30-0XB0
- 西门子SB1223 数字量信号板查模块6ES7223-3AD30-0XB0
- 西门子SB1223数字量信号板模块6ES7223-0BD30-0XB0 2输入DC/2输出24V
- 西门子SM1223 数字量输入输出模块 8输入/8输出继电器6ES7223-1QH32-0XB0
- 西门子SM1223 数字量输入输出模块16输入/16输出24V 6ES7223-1BL32-0XB0
- 西门子SM1223 数字量输入输出模块8输入/8输出24V 6ES7223-1BH32-0XB0
- 西门子SM1223 数字量输入输出模块 8输入24V8输出继电器6ES7223-1PH32-0XB0
- S7-200西门子6ES7223-1PL22-0XA8数字量输入输出PLC控制器扩展模块
- 西门子CPU控制器6ES7223-1PM22-0XA8
- 西门子CPU控制器6ES7223-1BM22-0XA8