6ES7321-1FF10-0AA0详细说明
- 供应商
- 浔之漫智控技术-西门子PLC代理商
- 认证
- 手机号
- 15221406036
- 经理
- 聂航
- 所在地
- 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
- 更新时间
- 2024-05-08 07:10
6es7321-1ff10-0aa0详细说明
一、控制系统实现目标
用plc构成交通灯控制系统
图1 交通灯控制示意图
二、控制要求及io分配
1.控制要求
起动后,南北红灯亮并维持25s。在南北红灯亮的同时,东西绿灯也亮,1s后,东西车灯即甲亮。到20s时,东西绿灯闪亮,3s后熄灭,在东西绿灯熄灭后东西黄灯亮,同时甲灭。黄灯亮2s后灭东西红灯亮。与此同时,南北红灯灭,南北绿灯亮。1s后,南北车灯即乙亮。南北绿灯亮了25s后闪亮,3s后熄灭,同时乙灭,黄灯亮2s后熄灭,南北红灯亮,东西绿灯亮,循环。
2.i/o分配
三、交通灯控制语句表
四、交通灯控制梯形图
功能块图程序设计语言是采用逻辑门电路的编程语言,有数字电路基础的人很容易掌握。功能块图指令由输入、输出段及逻辑关系函数组成。用step7-micro/win32编程软件将图1所示的梯形图转换为fbd程序,如图2所示。方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入输出端的小圆圈表示“非"运算,信号自左向右流动。
西门子6sl3060-4ab20-0aa0
在一个广泛分布的油田中,需要通过注水来从地层获得石油,并通过管道系统将石油输送到一个终端站。必须对注水设备和100 多个井口进行监视和控制。在现场需对压力、温度和流量进行测量,并根据这些测量值,来控制开采和输送过程,例如,打开和关闭阀门或切换泵。
解决方案
所有过程站都使用一台 simaticplc 从本地进行控制。远程监视和控制是通过 sinauttim 模块和串行连接的无线设备完成的。远程控制主站通过无线系统以轮询方式对所有站进行扫描,修改后的生产数据被发送到控制中心。中央 tim 模块从gps 接收器接收时间,并使用该时间将整个 sinaut 系统同步。通过 sinautst7cc 程序包,所有数据均可供控制中心系统使用。操作员可以对每个过程站进行跟踪,或者使用控制命令来干预局部过程。
网络结构
系统组成(以100个s7-300远程站为例)
优点
对整个石油开采过程进行安全监视和控制
有效利用输送能力
通过记录和传输机器运行状态来进行预防性维护
1 系统组成概述
系统硬件主要由上位计算机、tc35igsmmodem无线通讯模块和远程siemens s7—200 plc3部分组成,具体结构如图1所示。系统软件分为上位pc和下位plc两部分,上位pc部分提供人机交互操作界面和相应的数据选择、处理等;下位plc则通过自由口通讯,以中断方式快速响应上位机对plc变量存储器数据的读写操作或对i/0口读写操作需求。由于上位计算机与远程plc的通讯载体是通过tc35i建立在gsm网络基础上的,从而打破了地域的限制,即便远端plc设备在千里之遥,实施数据采集、测控的如同咫尺。
2 系统硬件设计
2.1tc35i无线通讯模块
系统组成如图1所示,系统硬件主要是tc5i无线通讯模块的应用。tc35i是siemens公司推出的新一代无线通信gsm模块,tc35i双频工作(egsm900/gsml800),电源范围在3.3~4.8v,发送功率分别为2w(class4egsm900)和lw(classl gsml800mhz),tc35i的数据接口采用串行异步收发,符合itu-trs-232接口电路标准。数据接口配置为8位数据位、1位停止位、无校验位,可以在300~115kb/s的波特率下运行,支持的自动波特率为4.8~115kb/s,符合etsi标准gsm0707和gsm0705,且易于升级为gprs模块。该模块集射频电路和基带于一体,向用户提供标准的at命令接口。为数据、语音和短消息提供快速、可靠、安全的传输,方便用户的应用开发及设计。tc35i有40个引脚,通过zif连接器引出。这些引脚可划分为5类,即电源、数据输入/输出、sim卡、音频接口和控制。tc35i内部电路如图2所示。
zif40pin的引脚1~14为电源部分,其中引脚l~5为电源电压输入端vbatt+,引脚6~10为电源地gnd,引脚11~12为充电端,引脚13为对外输出电压(供外部电路使用),引脚14accu/temp接负温度系数的热敏电阻;引脚24~29为sim卡连接端;引脚33~40为语音接口用来接电话手柄。引脚15、30、31和32为控制部分,引脚15为启动线igt(ig-nition)。当tc35i通电后必须给igt一个大于100mv的低电平,模块才能启动。引脚30为rtcbackup;引脚3l为掉电控制:引脚32为sync,引脚16~23为数据输入/输出端。tc5i无线通讯模块的主要外围电路的连接如图3所示。数据通信电路以max232为核心实现电平转换及串口通信。
2.2 系统硬件连接
系统硬件的连接可参考图1可知,上位计算机的串口输出与由tc35i构成的gsmmodem中的9芯rs232口直接连接;远程的gsmmodem与plc连接时则必须通过rs232到rs485的转换,这是siemensplc的通讯口数据和ppi编程电缆连接的必要条件。另一方面必须注意的是,在与远程gsmmodem的rs-232串口连接时,还必须将rs232串口中的rxd和txd对换连接,否则将不能正常通讯。
2.3 远程plc的选型
该系统选用西门子s7—200plc,在西门子plc中simatics7—200是一个系列,其中包括多种型号的cpu,这里选用cpu-222,由于cpu不提供模拟量的输入输出,为检测对模拟量数据的远程读写。因此在远程plc系统中扩展一型号为em-235的4输入1输出模拟量模块。
3 系统软件设计
3.1 系统上位计算机人机界面
系统上位的人机界面是用vb编程,提供人机交互操作界面及数据选择和相应的数据处理等功能。系统上位的操作界面如图4所示。在操作界面的左上部是通讯链接控制框,这里只需要正确选择pc的串口并输入远程plc所连接的后即可拨号链接,远程的无线gsmmodem模块摘机响应一般设置为铃响后自动摘机,通讯链接建立后,当上位pc检测到串口端的数据载波dcd信号后,通讯链接控制框中的“链接状态"指示灯由红变绿,表示通讯链路已成功建立。拨号或挂机的操作均是通过对gsmmodem模块发送at指令执行的。
对plc数据的读写操作如操作界面的右上部所示,在相应文本框内填写好数据的类型、地址、数值和操作方式后点击“发送"即可执行对plc的读或写操作。界面的下半部分显示的是pc串口发送和接收的代码以及当前操作的结果。
3.2 系统上位计算机的串口设置
西门子6sl3060-4af10-0aa0
由于远程plc采用的是自由口用户通讯方式,这里对每次收发数据字节暂约定为18个字节,数据字节的多少可根据实际需要而酌情约定。本系统中18个字节的约定:bytel为数据的总字节数;bvte2为数据开始特征字;bvte3为数据读或写特征字:byte4为数据类型特征字;bvte5~byte8为plc数据地址;bvte9~bytel6为plc数据的数值;bytel7为收发数据的校验码;bvtel8为数据结束特征字。串口数据的传输除数据地址字节和数据数值字节用ascii码表示外,其他均以十六进制方式表示。因而在上位pc的编程中需涉及大量的进制转换操作。特别要注意的是由于plc中的实数采用32位单精度数表示,并按照ansi/ieee7451985标准格式以双字长度来存取,所以无论是上位的pc或是下位的plc在编程时对实数数据的处理均需严格遵循ansi/ieee7451985标准格式的规定,否则将不可能读到正确的数据。
通讯数据的校验方式采用bcc块进行xor校验,即约定为从每次数据包的byte2到bytel6的字节进行校验,bvtel7存放校验结果。上位或下位在接收数据时,首先对所接收的数据进行校验并将计算结果与bvtel7所存放的数值进行比较,如不一致时则按约定要求重发,以保障每次传输数据的正确性。
3.4 远程plc自由口通讯初始化编程
由于远程plc采用的是自由口用户通讯协议,所以对plc的自由口通讯必须做如下初始化设置:
远程plc经上述设置后,在其运行期间每当接收到一组数据后便自动产生中断请求,在中断服务的子程序中,设定一标志位(如mo.0)置位,用来表示允许进入中断服务,在主程序中通过检测m0.o的状态来确定是否转入读数据操作的子程序,读数据操作完毕后及时将接收数据标志m0.0复位,从而完成一次读数据过程。plc数据的上传则是根据所读数据的内容来响应上位的请求,上传数据的编码和字节均依照约定的格式写入,每次的读写操作仅在plc一个扫描周期内(数毫秒)完成,系统的响应是实时的。
3.5 远程plc数据的读写操作
plc数据的读写是依据约定的数据类型实施操作的。对于字节、字、双字、实数及i/0端口各自有约定的数据类型特征字,在下位plc程序中通过对数据类型特征字的解析后来确定读取数据的字节数。对i/0端口的读写操作则是根据约定的地址编码直接读写出相应的状态信息。每组收发数据的存储单元从vbl00到vbll7共18个字节。由前述的数据发送量的约定可知,每组数据的byte5~byte8表示plc数据的地址,由于每次读写的地址是不同的,所以byte5~byte8字节给定的就是地址指针,在plc编程中就要以此指针采用间接寻址的方式,假设byte5~byte8存放在plc的vb104~vbl07单元,其间址指令则为:
movd&vbl04,acl读取该地址内容时则根据数据类型的不同而有所区别,假如读写字节时指令为:movb*acl,vbl60;则读写字的指令为:movw*acl,vwl60;读写双字的指令为:movd*acl,vdl60;读写实数的指令则为:movr*acl,vdl60