ADAM8000使用说明书周德兴.docx
- 文档编号:13583921
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:37
- 大小:721.09KB
ADAM8000使用说明书周德兴.docx
《ADAM8000使用说明书周德兴.docx》由会员分享,可在线阅读,更多相关《ADAM8000使用说明书周德兴.docx(37页珍藏版)》请在冰点文库上搜索。
ADAM8000使用说明书周德兴
一、ADAM8000初始化
尽量使用window2000,WindowsXP。
1.1按照接线图连接好硬件
注意正确连接,ADAM8221-1BF00接线如图所示。
如果面板上COM有效,则COM连接到24V,那么当干接点闭合时,就可以启动输入发光管,从而得到1。
ADAM8222-1HD10连接如图所示。
是继电器输出,如果要驱动无电源的设备,则需要在连接到一起的COM端和负载端加电。
ADAM8234-1HD50连接如图所示。
1.2通信
1、设置通信
`设置或添加PCAdapter(MPI),Property按钮LocalConnection属性页COM138400,注意一般连接到计算机的串行口1。
其他参数不需要设置,注意选择PCAdapter,不要有其他的,例如pc/ppi。
1.3硬件组态
2、新建工程
在SIMATICManager中新建工程,也可以通过wizard向导建立。
选中右边的工程名,InsertStationSIMATIC300。
双击Hardware,从而进入HWCONFIG窗口。
Option>InsertNEWGSE文件。
把ADAM8000,MM420,ET200等GSD文件加入。
如图所示,插入RAC-300机架。
选中机架第二栏,双击CPU-300>CPU315-2DP,6ES7-315-2AF01。
默认地址2。
双击DP,选择Property按钮。
选择NEW,选择1.5MBPS,如果出现警告,可以选择187kpbs。
插入DPMASTER,选中窗口中的DP线,双击右边ADAM(CPU821x),则插入ADAM8000,
选中DP线上的ADAM(CPU821x),然后选择SLOT0MODEL0位置,再到右边双击ADAM8000CPU8214-2BM01。
依次在SLOT1,2,3位置插入其他模块。
08214-2BM01CPU8214DPM
8DI8221-1BF00DI8Xdc24V
8DO8222-1HD10DO4xRelay
1138234-1BD50AI2/AO2x12Bit
双击最后一个模块,可以设置为起始地址128。
模拟输入地址设定PEW128到PEW131,模拟输出地址设定PAW128到PAW131。
模块测量参数如下:
注意Diagnosisalarm为off,4-20毫安对应0-27648,1.18毫安-4864。
0毫安-6912。
选中DP线,然后双击ET200S,如图所示,插入ET200S.
选择,依次在SLOT1,2,3位置插入其他模块。
6ES7138-4CA00-0AA0PM-EDC24V
6ES7138-4GB50-0AB02AII2DMU
地址Iaddress256-259
6ES7138-4JB50-0AB02AIRTD
地址Iaddress260-263
插入MM420
选择4PKW,2PZD(PPO1)
4AX地址Iaddress256-271Qaddress256-263
2AX地址Iaddress272-275Qaddress264-267
全部保存
1.4下装硬件组态并检测
在SIMATICManager中,选择工程,选择PLC>Clear/Reset,可以清除原来的配置信息。
把ADAMCPU8214开关拨到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或者强制某个变量。
在调试后,解除强制。
二、ADAM8000编程
2.1控制策略
基本思想是提供一个下位机程序。
从而基本满足全部单回路,串级,联锁保护等实验。
ET200S采集数据的获取,变频器的控制。
这些数据全部可以获取,变频器包括状态值获取,状态设置,频率设置,真实频率获取。
其他同常规仪表。
PID调节器
PID调节器
串级切换
控制器内部
输入AI0
输入AI1
输出AO0
给定值
高报DO0
低报DO1
手动自动切换
急停DI0
串级自动
手动值
手动值
4毫安
手动自动切换
总线信号
通道选择
动
通道选择
动
变频器
通道选择
动
数值
0默认值
1
2
3
4
SEL_AI0
4-20毫安通道AI0
总线下水箱液位
总线支路1流量
总线换热器冷出
总线储水箱温度
SEL_AI1
4-20毫安通道AI1
总线下水箱液位
总线支路1流量
总线换热器冷出
总线储水箱温度
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和"MYDATA".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重新下装。
如果不容易调试,那么可以把程序一段段复制到一个新的工程中,然后下装,运行看。
三、ADAM8000与组态王的通讯
3.1通信设置
假定MPI电缆连接到了COM1口。
通信设置如下。
⑴右键单击COM1新建设备:
西门子S7-300系列MPI(电缆);串口:
COM2;地址:
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
I/O实数
DB1.6
Float
读写
0~100(%)
设定值
PID0_MAN
I/O实数
DB1.16
Float
读写
0~100(%)
手动输出值
PID0_MV
I/O实数
DB1.72
Float
读写
0~100(%)
输出值
PID0_P
I/O实数
DB1.20
Float
读写
-1000~1000
比例系数
PID0_I
I/O整数
DB1.24
Long
读写
0~
积分时间,单位ms
PID0_D
I/O整数
DB1.28
Long
读写
0~
微分时间,单位ms
PID0HLM
I/O实数
DB1.40
Float
读写
0~100
输入上限
PID0LLM
I/O实数
DB1.44
Float
读写
0~100
输入下限
PID0QLMN_HLM
I/O整数
DB1.78
Float
读写
0~100
上限告警,第0位,送DO0
PID0QLMN_LLM
I/O整数
DB1.78
Float
读写
0~100
下限告警,第1位,送DO1
PID0_I_SEL
I/O整数
DB1.4
BYTE
读写
加入积分
PID0_D_SEL
I/O整数
DB1.7
BYTE
读写
加入微分
PID1_AM
I/O整数
DB1.0
BYTE
读写
0~1
手动自动切换
PID1_PV
I/O实数
DB2.92
Float
只读
0~100(%)
测量值
PID1_SP
I/O实数
DB2.6
Float
读写
0~100(%)
设定值
PID1_MAN
I/O实数
DB2.16
Float
读写
0~100(%)
手动输出值
PID1_MV
I/O实数
DB2.72
Float
读写
0~100(%)
输出值
PID1_P
I/O实数
DB2.20
Float
读写
0~1000
比例系数
PID1_I
I/O实数
DB2.24
Long
读写
0~
积分时间,单位ms
PID1_D
I/O整数
DB2.28
Long
读写
0~
微分时间,单位ms
PID1HLM
I/O实数
DB2.40
Float
读写
0~100
下限
PID1LLM
I/O实数
DB2.44
Float
读写
0~100
上限
PID1QLMN_HLM
I/O整数
DB2.78
Float
读写
0~100
上限告警,第0位
PID1QLMN_LLM
I/O整数
DB2.78
Float
读写
0~100
下限告警,第1位
PID1_I_SEL
I/O整数
DB2.4
BYTE
读写
加入积分
PID1_D_SEL
I/O整数
DB2.7
BYTE
读写
加入微分
CHAIN
I/O整数
DB3.2
BYTE
读写
0-255
0表示不加入串级,1表示加入
PV0_SEL
I/O整数
DB3.4
BYTE
读写
0-5
选择AI0或者其他四个现场总线输入。
PV1_SEL
I/O整数
DB3.6
BYTE
读写
0-5
选择AI1或者其他四个现场总线输入。
MV_SEL
I/O整数
DB3.8
BYTE
读写
0-5
选择AO0或者变频器
TR_COMMAND
I/O整数
DB3.10
BYTE
读写
0~4
1变频器准备;2启动,;3变频器清错
TR_SET_FREQUENT
I/O实数
DB3.12
Float
读写
0~100
输出目标频率,目的是送给组态软件,或者组态软件设置
TR_REAL_FREQUENT
I/O实数
DB3.16
Float
读写
0~100
当前频率
TR_STATUS
I/O整数
DB3.20
INT
读写
0~65535
当前状态
MV_REAL
I/O实数
DB3.34
Float
读写
0~100
最终输出。
EM_STOP
I/O整数
DB3.50
BYTE
读写
0~1
1紧急停车状态
LT103
I/O实数
DB3.52
Float
只读
0~100
液位
FT101
I/O实数
DB3.56
Float
只读
0~100
流量
TE104
I/O实数
DB3.60
Float
只读
0~100
换热器温度
TE101
I/O实数
DB3.64
Float
只读
0~100
锅炉温度
3.3组态王
数据词典基本上按照上面的设计。
界面流程如图所示。
欢迎
主界面
系统变量报表
常规实验
总线实验
3.1.1主界面
如图所示,选择“命令语言”。
选择“显示时”,则关闭其他所有窗口,这样可以避免多个实验同时运行。
3.1.2菜单选择
双击某个实验选择菜单,显示“动画连接”窗口。
如图所示。
选择“弹起时”,如图所示。
第一个命令显示窗口“系统特性测量”,包括所有对象特性,液位、水泵,锅炉等等。
具体有关参数后面逐步介绍。
3.3常规实验
以下全部实验不只需要提供一个ADAM8000程序。
设定值最好在画面“出现时”设置。
除了要设定一些参数外,还需要设置每个试验的P,DI参数。
如果在程序中没有设置参数,则最好拨动CPU开关到MR位置,从而使得所有数据设置为默认初始化值。
3.3.1特性测量实验
测量单、双、三容,以及各种非线性,特殊闸板液位特性,以及锅炉温度等等特性都可以在这里实现。
在菜单按钮中有如下命令。
ShowPicture("系统特性测量");
\\本站点\CHAIN=0;//不加入串级
\\本站点\PV0_SEL=0;
\\本站点\PV1_SEL=0;
\\本站点\MV_SEL=0;
\\本站点\PID0_AM=1;//手动控制。
其他参数没有意义了
使用手动控制。
你可以让输出60%,则可以看到飞升特性曲线。
3.3.2温度位式控制
温度位式控制就是一会全开,一会全关。
使用自动控制,模拟输出4毫安或者20毫安,没有中间值,让比例系数很多,而积分时间1毫秒,可以模拟这种控制效果。
注意PID0_P=1000是否是正还是负。
ShowPicture("锅炉水温位式控制实验");
\\本站点\CHAIN=0;//不加入串级
\\本站点\PV0_SEL=0;
\\本站点\PV1_SEL=0;
\\本站点\MV_SEL=0;
\\本站点\PID0_AM=0;//自动控制
BitSet(\\本站点\PID0_DI_SEL,4,1);//开启PID0的积分
BitSet(\\本站点\PID0_DI_SEL,7,1);//开启PID0的微分
\\本站点\PID0_P=1000;//使用大值模拟位式ON-OFF控制。
\\本站点\PID0_I=1;//使用大值模拟位式ON-OFF控制。
1ms
\\本站点\PID0_D=0;//使用大值模拟位式ON-OFF控制。
3.3.3其他单回路控制
包括液位(单、双、三容,以及各种非线性,特殊闸板)特性测量和单回路控制实验。
参数设置PV0_SEL=0(默认值),MV_SEL=0(默认值),CHAIN=0(默认值)。
如果测量特性则PID0_MAN=1,如果是控制则PID0_MAN=0。
水泵特性测量和压力单回路控制实验。
参数设置PV0_SEL=0(默认值),MV_SEL=0(默认值),CHAIN=0(默认值)。
如果测量特性则PID0_MAN=1,如果是控制则PID0_MAN=0。
压力控制可以选择调节阀,也可以选择变频器。
如果要调节阀控制则为正作用,则比例系数设置为正数,如果变频器控制则使用反作用,则比例系数设置为负数。
温度(锅炉、滞后管、换热器等)特性测量和单回路控制实验。
参数设置PV0_SEL=0(默认值),MV_SEL=0(默认值),CHAIN=0(默认值)。
如果测量特性则PID0_MAN=1,如果是控制则PID0_MAN=0。
ShowPicture("");
\\本站点\CHAIN=0;//不加入串级
\\本站点\PV0_SEL=0;
\\本站点\PV1_SEL=0;
\\本站点\MV_SEL=0;
\\本站点\PID0_AM=0;//自动控制
BitSet(\\本站点\PID0_DI_SEL,4,1);//开启PID0的积分
BitSet(\\本站点\PID0_DI_SEL,7,1);//开启PID0的微分
\\本站点\PID0_P=-4;//这里给一个默认值,这里是负值表示反作用
\\本站点\PID0_I=8000;//这里给一个默认值
\\本站点\PID0_D=0;//这里给一个默认值
3.3.4常规联锁控制
参数设置PV0_SEL=0(默认值),MV_SEL=0(默认值),CHAIN=0(默认值),PID0_MAN=1(设定值)。
手动值设定为100%。
这样全功率加热,PID0HLM=50,PID0HLM=49,DO1连接2#继电器,DI0连接上限液位。
ShowPicture("连锁控制系统实验");
\\本站点\CHAIN=0;//不加入串级
\\本站点\PV0_SEL=0;
\\本站点\PV1_SEL=0;
\\本站点\MV_SEL=0;
\\本站点\PID0_AM=1;//手动控制
\\本站点\PID0_MAN=100.0;//直接全功率运行
可以设置温度高限低限都等于设定值。
3.3.5常规串级控制
包括流量-液位串级,流量-温度串级。
参数设置PV0_SEL=0(默认值),MV_SEL=0(默认值),CHAIN=1(设定值),PID0_MAN=0(默认值)。
ShowPicture("串级控制系统实验");
\\本站点\CHAIN=1;//加入串级
\\本站点\PV0_SEL=0;
\\本站点\PV1_SEL=0;
\\本站点\MV_SEL=0;
\\本站点\PID0_AM=0;//自动控制
BitSet(\\本站点\PID0_DI_SEL,4,1);//开启PID0的积分
BitSet(\\本站点\PID0_DI_SEL,7,1);//开启PID0的微分
\\本站点\PID0_P=-4;//考虑这里是正还是负,这里给一个默认值。
\\本站点\PID0_I=8000;//这里给一个默认值。
\\本站点\PID0_D=0;//这里给一个默认值。
副回路只有P控制。
BitSet(\\本站点\PID1_DI_SEL,4,0);//关闭PID1的积分
BitSet(\\本站点\PID1_DI_SEL,7,0);//关闭PID1的微分
\\本站点\PID1_P=-4;//考虑这里是正还是负,这里给一个默认值。
3.4现场总线实验
除了输入输出通道不同之外,其它都是一样的。
3.4.1现场总线液位控制
液位(单、双、三容,以及各种非线性,特殊闸板)特性测量和单回路控制实验。
参数设置PV0_SEL=1(设定值),MV_SEL=1(设定值),CHAIN=0(默认值)。
如果测量特性则PID0_MAN=1,如果是控制则PID0_MAN=0。
3.4.2现场总线流量控制
变频器连接到支路1的水泵上。
水泵特性测量和流量单回路控制实验。
参数设置PV0_SEL=2(设定值),MV_SEL=1(设定值),CHAIN=0(默认值)。
如果测量特性则PID0_MAN=1,如果是控制则PID0_MAN=0。
3.4.3现场总线温度控制
换热器单回路控制实验。
参数设置PV0_SEL=3(设定值),MV_SEL=1(设定值),CHAIN=0(默认值)。
如果测量特性则PID0_MAN=1,如果是控制则PID0_MAN=0。
3.4.4现场总线串级控制
包括流量-液位串级,流量-温度串级。
参数设置PV0_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ADAM8000 使用 说明书 德兴