S7300使用说明书文档格式.docx
《S7300使用说明书文档格式.docx》由会员分享,可在线阅读,更多相关《S7300使用说明书文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
DI地址:
256-263
DO地址:
256-259
选中DP线,然后双击ET200S,如图所示,插入ET200S.
选择,依次在SLOT1,2,3位置插入其他模块。
6ES7138-4CA00-0AA0PM-EDC24V
6ES7134-4GB50-0AB02AII2DMU
地址Iaddress264-267
6ES7134-4JB50-0AB02AIRTD
地址Iaddress268-271
插入MM420
选择4PKW,2PZD(PPO1)
2AX地址Iaddress280-283Qaddress268-271
全部保存
1.4下装硬件组态并检测
在SIMATICManager中,选择工程,选择PLC>
Clear/Reset,可以清除原来的配置信息。
把CPU开关拨到ST,再转到RN位置。
则CPU开始运行。
在HW-CONFIG窗口中,选择saveandcompile,选择PLC>
DownLoad,或者Ctrl+L快捷键。
不要理会这个信息,按yes。
然后stop,再下载完后restart。
在HWCONFIG窗口,如图所示。
选择DO,DI,113都可以进行Monitor/Modify。
如图所示,选中Monitor,要求此时在运行状态RUNNING。
可以设置为1,然后按ModifyValue,就可以写入。
当然,如果CPU的程序也在写同一个变量,则可以Forceall或者强制某个变量。
在调试后,解除强制。
二、编程
2.1控制策略
基本思想是提供一个下位机程序。
从而基本满足全部单回路,串级,比值,联锁保护,前馈反馈,解偶等实验。
ET200S采集数据的获取,变频器的控制。
这些数据全部可以获取,变频器包括状态值获取,状态设置,频率设置,真实频率获取。
其他同常规仪表。
数值
0默认值
1
2
3
4
SEL_AI0
4-20毫安通道AI0
总线下水箱液位
总线支路1流量
总线换热器冷出
总线储水箱温度
SEL_AI1
4-20毫安通道AI1
SEL_AO0
4-20毫安通道AO0
总线变频器
这样的结构可以通过2AI,1AO实现压力、温度、液位、流量、串级的PID控制。
满足基本需要。
增加四个实验,把现场总线部分加入:
“现场总线流量控制实验”,“现场总线压力控制实验”,“现场总线温度控制实验”“现场总线串级控制实验”。
通过增加变量SEL_AI0,SEL_AI1,SEL_AO0(默认值是0,表示使用4-20毫安通道),可以实现现场总线实验。
如果数字量DO有余,则可以增加三个开关量输出,控制工频1,工频2,变频。
这是特别的要求。
2.2编程
2.2.1初步编辑
如图所示,双击Symbols编辑,编辑全部输入输出相关的全局变量。
以便使得程序具有很好的可读性。
包括IO地址,数据块重命名,等等。
这里的S7Program
(1)和SIMATIC300
(1)等等都可以重新命名。
打开C:
\Siemens\Step7\S7libs\Stdlib30,如图所示,复制PIDcontrolBlocks中的FB41,粘贴到我们的block中。
打开OB1,就可以开始编写程序了。
在一个网络中,插入插入EMPTYBOX,输入“CONT_C”,如图所示。
系统自动选择了PID功能块,在“?
?
”中输入DB1,也就是这个FB的数据块名。
如图所示。
系统提醒你是否建立INSTANCEDATABLOCK,回答YES,就可以创建一个PID的背景数据。
由于我们要用到两个PID,所以就有两个DB。
我们还可以自己创建一个DB,选择菜单Insert>
S7Block>
DataBlock,建立一个DB3,以便进行变频器的一些操作。
其中的VAR_1对于编程没有意义,而是用于调试,以便观察变量,修改变量。
全部模块建立完成,余下的工作就是编辑Symbols、OB1和DB3。
2.2.2符号和变量编辑
打开S7Program
(1)下的Symbols如图所示。
在电路板上1#,5#温度互换位置。
保证锅炉和换热器温度连接到现场总线上。
(不要按照图中地址)
定义的好处是增加可读性。
例如增加
PID0DB1FB41
PID1DB2FB41
则可以应用DB1,DB2中的变量名称。
使用变量的最大好处是:
即使你删除或者增加了变量项目,就不需要重新设置程序中的地址。
强烈建议您在SYMBOL中定义数据区名,然后在程序中使用变量名。
如果你修改了符号表,或者变量表,则需要关闭程序编辑窗口,重新打开,才能使用。
依据系统的硬件,提供了AI0,AI1,AO0,FT101,LT103,TE104,TE105,TR_COMAND等等,TR_SETPOINT,TR_STATUS,EM_STOP几个变量,有输入也有输出。
可以定义如下共享数据类型:
I/O信号(I,IB,IW,ID,Q,QB,QW,QD)
I/O输入输出(PI,PQ)
位存储器(M,MB,MW,MD)
定时器(T)/counters(C)
逻辑块(OB,FB,FC,SFB,SFC)
数据块(DB)
用户定义的数据类型(UDT)
变量表(VAT)
2.2.3编程
"
MYDATA"
.PV0_SEL和"
.PV1_SEL决定了输入到PID控制器的过程数据。
按照-100~100%的方式,也就是送到监控系统的数据在-100.00~100.00之间,超过这些数值的数据则表示异常。
如图所示是对AI0的处理。
CMP是一个选择判断。
后续包括对LT103,FT101,TE104TE105的选择。
如图所示是对PID0的设置。
具体含义请参看附录中的容。
如图所示是控制变频器的命令:
“准备”,“启动”“清错”。
分别发送#47E,#47F,#4FE
紧急停车,如图所示。
非急停,是否串级,如果是,则输出PID1到中间变量
非急停,是否串级,如果不是,则输出PID0到中间变量
最终输出,如果MV_SEL=0,则从AO输出,如果MV_SEL=1,则从变频器输出。
27648转换成16385输出到变频器。
27648为输出的外设数据,16385对应50Hz。
如果用户设置频率读取频率,都只能是100%-100%.没有%符号,也就是-100.0~100.0。
由于这里都是DWORD格式,为了送到监控软件,所以进行了转换。
高低限值判断。
送到DO0,O1。
在变频器可以访问的情况下。
给出一些信息。
注意,如果变频器和ET200S不可用。
或者通讯不正常,则可以导致CPU停机。
2.3程序下载
如下图,激活ADAM8000的“Blocks”点击下载按钮,实现整个程序块(包括OB1、OB121、FB41、DB1、DB2、DB3)的下载。
下装前最好先清楚CPU。
如果出现CPU不容易了解的停机,那么也可以先清楚CPU重新下装。
如果不容易调试,那么可以把程序一段段复制到一个新的工程中,然后下装,运行看。
三、S7-300与组态王的通讯
3.1通信设置
假定MPI电缆连接到了COM1口。
通信设置如下。
⑴右键单击COM1新建设备:
西门子S7-300系列MPI(电缆);
串口:
COM1;
地址:
2.2
⑵双击COM1设置串口COM1:
波特率9600bps;
偶校验;
数据位8;
停止位1;
通讯方式RS-485
3.2数据词典定义
由于不支持BOOL访问,所以BOOL都是按照BYTE方式。
特别注意的地方时,如果要正作用,则比例系数设置为正数,如果是反作用,则比例系数设置为负数。
变量名
变量类型
寄存器
数据类型
读写属性
数据围
描述
PID0_AM
I/O整数
DB1.0
BYTE
读写
0~1
手动自动切换
PID0_PV
I/O实数
DB1.92
Float
只读
0~100(%)
测量值
PID0_SP
DB1.6
设定值
PID0_MAN
DB1.16
手动输出值
PID0_MV
DB1.72
输出值
PID0_P
DB1.20
-1000~1000
比例系数
PID0_I
DB1.24
Long
0~100000000
积分时间,单位ms
PID0_D
DB1.28
微分时间,单位ms
PID0HLM
DB1.40
0~100
输入上限
PID0LLM
DB1.44
输入下限
PID0QLMN_HLM
DB1.78
上限告警,第0位,送DO0
PID0QLMN_LLM
下限告警,第1位,送DO1
PID0_D_SEL
DB0.7
加入微分
PID0_I_SEL
DB0.4
加入积分
PID1_AM
PID1_PV
DB2.92
PID1_SP
DB2.6
PID1_MAN
DB2.16
PID1_MV
DB2.72
PID1_P
DB2.20
0~1000