Unity PLC编程指导书
V3.0.0
1.程序框架说明:
1)Configuration 硬件配置
此功能块内完成各种硬件配置
2)Derived Data Types 自定义数据类型
此功能块内完成程序需要的各种自定义数据类型
3)Derived FB Types 自定义功能块
此功能块内完成程序需要的各种自定义功能块类型
4)Variables & FB instances 变量与功能块声明
此功能块内完成程序中用到的各种变量和功能块声明
此功能块内完成程序中的硬件I/O地址和自定义标量的映射
5)Communication 通讯配置
此功能块内完成网络配置
6)Program 程序
此功能块内完成所有程序段
7)Animation Tables 观察表
此功能块内保存查看变量值用的观察表
2.Program中程序段说明
1)MAIN
主程序,管理整个PLC程序的运行,根据需要调用各子程序段
以下均为子程序,由主程序MAIN管理调用
2)INIT
初始化程序,主要完成以下功能
a)系统参数配置
b)基本信号输入输出点配置
c)LCU I/O点数配置
d)SJ30通讯参数配置
e)PID参数配置
f)所有强制信号复归
g)上,下行,事件信箱初始化
h)所有控制,开出复归
3)AI_PROC
对硬件采集模入信号,虚拟模入,通讯模入,SJ30模入信号测值和品质状态汇总处理硬件采集模入信号进行滤波,工程值转换处理
模入强制信号处理
4)AO_PROC
硬件模出值进行工程值-码值计算并输出值模出模件
其他虚拟模出,通讯模出,SJ30模出至相应处理区
模出强制信号处理
5)DI_PROC
对硬件采集开入信号,虚拟开入,模件状态,通讯开入,SJ30开入信号测值汇总处理开入强制信号处理
6)RTD_PROC
对硬件采集温度信号,虚拟温度,通讯温度,SJ30温度信号测值和品质状态汇总处理温度强制信号处理
7)DOUT_PROC
将程序中生成的开出至开出模件,虚拟开出点,SJ30开出点
8)ERT
程序中根据实际配置情况配置ERT模块在槽架中的位置
9)SOE_PROC
SOE事件采集程序,采集ERT模块的数据并生成SOE实际记录
SOE测值采集上送
10)DUMMYIO
控制忙状态判断,SJ30故障,SJ30通讯口故障状态至虚拟点
PLC各其他通讯口故障状态至虚拟点
计算流程中用到的综合判断点
计算程序中需要用到的各种虚拟点
虚拟点强制处理
虚拟点至变量
11)HOTSTANDBY
与上位机通讯异常时的自动热备切换和恢复程序
12)PLC_STATUS
热备系统状态采集处理
模件状态处理,采集各机架模件工作状态
13)RECEIVE
下行信文接收处理程序,解释上位机发令并执行相应操作
14)SEND
系统状态信文组织
上行信文处理程序,将PLC采集的各种IO状态信息放至相应数据区供上位机读取15)SET_TIME
根据上位机对时指令刷新PLC实时时钟
16)GET_TIME
当有事件报警时采集PLC当前时钟值
17)LCD_SHOW
触摸屏显示处理程序,将触摸屏需要显示的数据汇总至相应数据区供触摸屏读取,显示采集和触摸屏的通讯状态
18)LCD_CTRLL
触摸屏控制令接收程序,接收触摸屏下发的控制命令并做相应处理
19)RECORD
事件记录程序,当其他程序中需要有事件信息上送时调用该程序生成完整的事件记录信息
20)RECORD_SOE
当ERT模件对时故障时,有软件生成SOE事件记录信息
21)SEQ_REC
控制命令接收,解释程序,判断控制命令的合法性,根据控制命令内容确定需要执行控制对象和控制性质,确定控制起始步号
22)CONTROL_JZ
机组开停机管理程序,负责停机-空转,空转-空载,空载-发电,发电-空载,空载-空转,空转-停机6个子流程的管理调用,负责各种事故停机,紧急停机流程的调用管理
23)SEQ_MANAGE
流程管理程序,根据控制性质和控制对象调用对应的控制子程序
24)SG_JUDGE
事故流程自动启动判断程序,监视机组状况和各事故点,事故条件满足时自动启动事故停机流程
其他自启动流程也可以参考这里的事故停机流程启动方式完成
25)PID_P
有功调节程序,包括调节方式切换,测量源切换,保护闭锁判断报警
26)PID_Q
无功调节程序,包括调节方式切换,测量源切换, 保护闭锁判断报警
27)COM_SJ30
与SJ30通讯程序
采集SJ30上行数据并区分处理脉冲,温度,模入,开入信号至相应数据区
将控制命令发至SJ30
SJ30事件读取
SJ30信号强制处理
28)XXX_MBP
与其他MB+,TCP/IP设备通讯交换数据
29)COMMUN
通讯管理程序,将各XXX_MBP通讯程序段采集的数据分类,汇总处理至相应数据区,交采表等数据进行工程值转换
30)AC_METER
交采表运算,根据交采表类型算出交采信号实际值
31)AI_REAL_INT
模入,模出信号最大,最小码值定义
模入,模出信号工程值最大,最小值定义
32)CMMD_JZ
机组控制流程
33)CMMD_KG
开关控制流程
34)CMMD……
其他设备控制流程
35)CMMD_SIMULATOR
模拟流程,仿真模拟设备动作过程,实际投运前需删除
3.PLC对外地址说明
5.程序配置说明
1)每个工程,硬件配置顺序
DI(%I)-DO(%M)-AI(%IW)-TI(%IW)-AO(%MW)-ERT(%IW,%IMW),对于AI,TI,AO模块,可先配置好一块模块的所有参数,再复制到其他槽位以节约时间
2)注意配置模件输入/输出地址时需按照下列要求
DI-----%I1~%I992;
DO-----%M1~%M992
AI-----%IW1~%IW992;
TI-----%IW1001~%IW1992;(地址要每块模件手动输入)
ERT输入-----MW1~%MW992; 输出-----IW2001~2992(地址要每块模件手动输入)
AO从-----MW1001~MW1992; (地址要每块模件手动输入)
模入模件,温度模件配置较复杂(每个通道需要单独配置,建议配好一个模件后采用复制方式配置其他相同模件)
3)SJ30模拟量配置顺序:
a)温度量
b)电度量
c)交采量
d)其他模拟量
注意:模入信号在SJ30组态时必须按照以上顺序配置
4)程序目前支持点数:
a)SOE----------------------992
b)DIN----------------------992(含虚拟点,模件状态,SJ30通讯点)
虚拟DIN---------------992
模件状态---------------200(最多19个机架)
MB+/TCPIP通讯-----992
SJ30通讯点------------------992
c)AIN----------------------992(含虚拟点,交采,SJ30通讯点)
虚拟AIN---------------992
SJ30总点数-------398
SJ30AIN-----------992(含交采)
SJ30TIN-----------992
SJ30PIN-----------496
SJ30交采---------待定
d)TIN----------------------992(含SJ30通讯点)
e)DO-----------------------992
f)SJ30模出----------992
g)控制---------------------300
5)对应普通工程,只有以下程序需要修改:
a)INIT
b)ERT
c)DUMMY_IO
d)SC_CTRL
e)AUTO_START
f)
g)XXX_MBP
h)COMMUN
i)AI_REAL_INIT
j)CMMD_XXX
6.程序应用说明
对应普通工程,只有以下程序需要修改:
1)INIT使用说明
INIT程序在PLC每次上电时调用一次,完成初始化功能。
置出相同配置即可
b)修改说明
QUANUM功能块为主机架,必须配置
所有DROP功能块的SLOT输入端必须和QUANTUM功能块中CPA模件所在槽位输
出(SLOT)连接
每个ERT_85410功能块代表一个ERT模件,按照顺序给每个ERT_85410功能块配置ERT_DATA数组
c)特殊说明
如果ERT模件过多有时会存在某个ERT_85410功能块不能正常工作现象,可试删除该功能块重新配置,下载
3)DUMMY_IO使用说明
DUMMY_IO由MAIN程序实时调用,判断IO信号生成各种虚拟状态点。
DUMMY_IO负责监视有无控制流程在执行,如果有控制流程在输出SC_BUSY标记
b)修改说明
如果某对象X的控制性质不为0(SEQ_INFO[X].CMMD<>0)_,则调用该对象控制流程
所在的控制子程序
注意某些同一类型的控制流程可以放在一个子程序中以便于程序检查和美观,故可能存在多个SEQ_INFO[X].CMMD调用同一个子程序的情况。
5)AUTO_START使用说明
完成所有自启动流程
完成按钮启动的流程
AUTO_START针对机组编写,其他自启动流程可参考其启动方式。对于公用,开关站LCU等没有自启动流程的程序,可在MAIN中停止对AUTO_START的调用
程序支持2个不同测量源,测量源故障情况下会自动切换。如需人工切换,通过上位机虚拟模入方式进行修改,参加STATUS子程序DUMMY_AI处理中关于虚拟模入部分程序支持3种调节方式,默认为脉冲方式。如需人工切换,通过上位机虚拟模入方式进行修改,参加STATUS子程序DUMMY_AI处理中关于虚拟模入部分
对应保护闭锁报警,用于判断的交流量可能在不同的数据区,如定子电流可能是在AC[1].IA(交采)或AI[115](变送器),需根据工程实际修改,但判断均要求采用实际值判断程序支持3总调节方式,如工程有2中以上调节方式存在,需根据实际情况修改P.FUC,Q.FUC在不同调节模式下的调节过程,特别要注意不同方式转换时的输出上位机下发设定值默认隐含1位小数,P,Q设定值,实发值上送也隐含1位小数,但PID
调节过程均为实际值运算。
触摸屏下发设定值为实际值不带小数,触摸屏显示用实发值和设定值均含1位小数。
7)XXX_MBP使用说明
用于配置和外部MB+设备和TCP/IP设备通讯。如果MB+通讯设备较多,建议采用PEER COP方式通讯,如果TCP/IP通讯设备较多,建议采用IO SCANNING方式通讯
b)修改说明
对XXX_MBP中通讯正常后存放在MBPLUS[X].DA TA_BU中数据根据规约进行工程值转换,转换后的数据存放在相应COMMU.DI_V ALUE,COMMU.AI_V ALUE,COMMU.RTD_V ALUE中,不同设备规约差别较大要根据实际情况进行转换如果本站是从站的话,在COMMUN中也完成数组组织功能,将需要通讯输出数据按照规约组织好存放在TCP_SEND1数组中供其他设备读取
9)AI_REAL_INIT使用说明
AI_REAL_INT由主程序每秒中调用1次,完成模入信号工程值高量程和低量程的刷新,
程序将自动计算该模入点的工程值,存放在AI_REALP[]变量中。
对应程序中不需要判断的模入信号,可不输入该信号的高量程和低量程
b)修改说明
输入模入,模出信号的最大,最小码值和对应的高,低量程(工程值转换用)
性质3――――――――――起始步号201
. .
. .
. .
编写流程时注意起始步号和控制性质的关系
机组控制比较特殊,起始步号在CONTROL_JZ中已定义号,具体使用范围如下:停机-空转――――――――步号1-100
空转-空载――――――――步号101-150
空载-发电――――――――步号151-200
发电-空载――――――――步号201-250
空载-空转――――――――步号251-300
空转-停机――――――――步号301-400
机械事故停机―――――――步号401-430
电气事故停机―――――――步号431-460
紧急事故停机―――――――步号461-500
终止流程―――――――――步号501-
以上每个子流程步号不可以冲突!
7.其他说明
1)Unity软件中按如下要求配置
Project Settings 中language extensions 中Allow dynamic arrays 必须选中。
%MW2001-%MW5500为触摸屏显示用,定义为非传送区。
%MW5501-%MW5600为系统用,定义为非传送区。
2)报警码保存文件名为https://www.wendangku.net/doc/7a6910052.html,,文件格式如下:
1 1 0 启动原因1
1 2 0 启动原因2
1 3 0 启动原因3
……
2 1 0 无效的控制,流程退出
2 2 0 LCU号不一致,流程退出
2 3 0 流程已在执行中,控制闭锁
左边第1列为区分码,1为启动原因,2为控制报警
左边第2列为性质码,为LCU上送启动原因码或控制报警码对应最右侧汉字
左边第3列为语音号,暂未使用。
报警码的生成可参考范例文件EXCEL文件,另存为“制表符分隔”的TXT文档,将生成的文本文件改名为https://www.wendangku.net/doc/7a6910052.html,,拷贝至主机prlject.xx/drv/目录下,重新启动上下位机通讯进程即可
注意文件名区分大,小写
3)上行信文长度配置
上位机驱动配置中的信文长度可在程序中得到,存放在变量SEND_LENGTH1中。注意IO配置改动后该变量会发生变化,需要在上位机中同步更新,否则会影响命令下行。
4)寄存器使用
为保证后继版本的可扩展性和一致性,如无特殊要求,所有硬件寄存器不得使用,如确实需要,请项目经理提开发要求
5)控制流程修改说明
控制流程按照标准定义如下:
END_IF;
每个扫描周期只能写一个SJ30模出,故在写之前需要判断一下AO_TO_SJ30是否为0
写DO至SJ30:
直接在OUT中赋开出点开出时间,如果该开出点点号在SJ30开出点内,程序会自动写开出至SJ30,时间到后自动写开出点复归至SJ30。
程序可同时写一个开出和一个模出至SJ30,若10秒以上SJ30还没有接收,则会自动清除这次命令.
9)多交采表触摸屏显示方式
如与公用或开关站LCU有较多交采表(6个以上),可在触摸屏调用交采表画面中将需要显示的交采表号赋值给%MW5005,程序将自动相应交采表测值放值%MW5101开始的寄存器中,这样每个交采表显示画面可用相同地址(描述不同),节约触摸屏工作量和PLC寄存器使用
对应机组PLC,触摸屏中默认将%MW5005置1
10)交采表说明
交采表类型ACINPUT_TYPE的定义
12)机组专用虚拟点使用说明
机组状态虚拟模入变了,注意流程调用CONTROL_JZ和DUMMY_IO 机组状态,控制性质定义改了,流程启动判断要改,MB80也要改
虚拟点程序需要整理一下,保留必须的即可
MB80标准说明完善
Cass快捷键命令大全
Cass快捷键命令大全 aa ——给实体加地物名 p ——屏幕移动(pan) t ——注记文字 z ——屏幕缩放(zoom) ff ——绘制多点房屋 r ——屏幕重画(redraw) ss ——绘制四点房屋 pe ——复合线编辑(pedit) w ——绘制围墙 k ——绘制陡坎 xp ——绘制自然斜坡 g ——绘制高程点 d ——绘制电力线 i ——绘制道路 n ——批量拟合复合线 o ——批量修改复合线高 ww ——批量改变复合线宽 y ——复合线上加点 j ——复合线连接 q ——直角纠正CASS快捷命令: cass7.0常用快捷键A——画弧(arc) AA——给实体加地物名……………B——自由连接 C——画圆(circle) CP——拷贝(copy) D——绘制电力线……………DD——通用绘图命令 E——删除(erase) F——图形复制 FF——绘制多点房屋 G——绘制高程点 H——线型换向 I——绘制道路 J——复合线连接 K——绘制陡坎 KK——查询坎高 L——画直线(line) LA——设置图层(layer)LT——设置线型(linetype)M——移动(move) N——批量拟合复合线 O——批量修改复合线高 P——屏幕移动(Pan) PE——复合线编辑(Pedit)PL——画复合线(pline)Q——直角纠正 R——屏幕重画(Redraw)RR——符号重新生成S——加入实体属性SS——绘制四点房屋T——注记文字 U——恢复 V——查看实体属性W——绘制围墙 WW——批量改变复合线宽X——多功能复合线XP——绘制自然斜坡Y——复合线上加点Z——屏幕缩放(Zoom)TRIM――剪切线EXTEND—延伸线 CASS其他 blipmode——控制小十字标记(点击鼠标后的小雪花点)On=显示小十字标记,Off=不显示 Regen——刷新屏幕,如陡坎物毛刺等符号不显示时局部放大再使用 电脑其他: F1……帮助F2……重命名 F3……搜索F4……地址栏 F5……刷新F7……插入光标 F10……菜单栏F11……最大 ADC, *ADCENTER(设计中心“Ctrl+2”)CH, MO *PROPERTIES(修改特性“Ctrl+1”) MA, *MATCHPROP(属性匹配) ST, *STYLE(文字样式)
COL, *COLOR(设置颜色) LA, *LAYER(图层操作)LT, *LINETYPE(线形)LTS, *LTSCALE(线形比例)LW, *LWEIGHT (线宽)UN, *UNITS(图形单位)ATT, *ATTDEF(属性定义)
计算机潮流计算程序代码
G(5,5)=6.250;B(5,5)=-18.750;G(5,2)=-5.00;B(5,2)=15.000; G(5,3)=-1.250;B(5,3)=3.750;G(5,4)=0;B(5,4)=0; G(5,1)=0;B(5,1)=0; G(2,5)=-5.00;B(2,5)=15.000;G(2,2)=10.834;B(2,2)=-32.500;G(2,3)=-1.677;B(2,3)=5.00; G(2,4)=-1.667;B(2,4)=5.00;G(2,1)=-2.500;B(2,1)=7.500; G(3,5)=-1.250;B(3,5)=3.750;G(3,2)=-1.667;B(3,2)=5.00;G(3,3)=12.917;B(3,3)=-38.750; G(3,4)=-10.000;B(3,4)=30.000;G(3,1)=0;B(3,1)=0; G(4,5)=0;B(4,5)=0;G(4,2)=-1.667;B(4,2)=5.000;G(4,3)=-10.000;B(4,3)=30.000; G(4,4)=12.917;B(4,4)=-38.750;G(4,1)=-1.250;B(4,1)=3.750; G(1,5)=0;B(1,5)=0;G(1,2)=-2.500;B(1,2)=7.500;G(1,3)=0;B(1,3)=0; G(1,4)=-1.250;B(1,4)=3.750;G(1,1)=3.750;B(1,1)=-11.250; Y=G+j*B delt(1)=0; delt(2)=0; delt(3)=0; delt(4)=0; u(1)=1.0; u(2)=1.0; u(3)=1.0; u(4)=1.0; ps(2)=0.2;qs(2)=0.20;ps(3)=-0.45;qs(3)=-0.15; ps(4)=-0.4;qs(4)=-0.05; ps(1)=-0.6;qs(1)=-0.1; k=1;precision=1; N1=4; while precision>0.0001 delt(5)=0;u(5)=1.06; for m=1:N1 for n=1:N1+1 pt(n)=u(m)*u(n)*(G(m,n)*cos(delt(m)-delt(n))+B(m,n)*sin(delt(m)-delt(n))); qt(n)=u(m)*u(n)*(G(m,n)*sin(delt(m)-delt(n))-B(m,n)*cos(delt(m)-delt(n))); end pi(m)=sum(pt);qi(m)=sum(qt); dp(m)=ps(m)-pi(m); dq(m)=qs(m)-qi(m); end for m=1:N1 for n=1:N1 if m==n H(m,m)=-qi(m)-u(m)^2*B(m,m); N(m,m)=pi(m)+u(m)^2*G(m,m); J(m,m)=pi(m)-u(m)^2*G(m,m); L(m,m)=qi(m)-u(m)^2*B(m,m); JJ(2*m-1,2*m-1)=H(m,m); JJ(2*m-1,2*m)=N(m,m); JJ(2*m,2*m-1)=J(m,m); JJ(2*m,2*m)=L(m,m); else H(m,n)=u(m)*u(n)*(G(m,n)*sin(delt(m)-delt(n))-B(m,n)*cos(delt(m)-delt(n))); J(m,n)=-u(m)*u(n)*(G(m,n)*cos(delt(m)-delt(n))+B(m,n)*sin(delt(m)-delt(n))); N(m,n)=-J(m,n);L(m,n)=H(m,n); JJ(2*m-1,2*n-1)=H(m,n);JJ(2*m-1,2*n)=N(m,n); JJ(2*m,2*n-1)=J(m,n); JJ(2*m,2*n)=L(m,n); end
佳能5D2相机固件更新说明书 中文版
- S.Chinese - EOS 5D Mark II 固件更新步骤
固件更新步骤 下列说明中的x.x.x.代表当前的固件版本或更新的固件版本。 (1) 准备更新固件所需的项目。 1.机身 2.专用电池(电池必须完全充满电)或专用交流电适配器套装(选购) 3.CF卡(64MB或更大,64GB或更小) 4. 固件更新文件(可从佳能网站下载。) (2) 创建固件更新文件。 1.从佳能网站下载压缩的自解压文件。 2.解压下载文件,并创建固件更新文件。 如何解压固件更新文件 Windows 双击下载文件时,将出现以下屏幕。单击[确定],将解压下载文件并生成固件更新文件。 Macintosh 下载的文件会自动解压并生成固件更新文件。如果下载文件没有自动解压,请双击下载文件。 3.检查固件更新文件的大小。 如果文件大小不匹配,请再次下载固件更新文件。 如何确认固件更新文件的大小 Windows 右键单击固件更新文件的图标,并从弹出的菜单中选择[属性]。 Macintosh 选择固件更新文件的图标,然后从[文件(File)]菜单中选择[Get Info(获得信息)]。 4. 固件更新文件的名称和尺寸可以在网站上查到。
如果使用CF读卡器,请从第(3)步开始操作。如果不使用CF读卡器,请从第(4-1)步开始操作。 (3) 将固件更新文件复制到CF卡。 1.将通过相机格式化的CF卡插入CF读卡器。 2.将固件更新文件复制到打开CF卡时(根目录)出现的第一个窗口中。 3.将CF卡从读卡器中取出。 *取出CF卡时,请务必按照计算机或读卡器说明中所述步骤操作。 *如果固件更新文件被放在CF卡的子文件夹下,则相机无法找到它。 4.旋转模式转盘选择
模式(或除全自动模式外的其他某个模式)。 5.将带固件的CF卡插入相机。 6.打开电源开关,然后按下