WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
1 引言WWW_P※LCJS_COM-PLC-)技.术_网
simatic wincc是性能全面技术先进的西门子视窗控制中心。系统开放的hmi/scada软件和实时数据库是scada系统的核心技术。wincc5.1版本采用sysbase7.0进行数据的归档,支持sql结构化语言查询,wincc6.0版本采用sql2000进行数据的归档。归档数据用来存储获取的生产过程的设备状态信息、人员操作指令、与其它系统的通讯数据。s7-plcsim simulating modules由西门子公司推出,可以替代西门子硬件plc的仿真软件,控制程序无须plc硬件支持,可以直接调用仿真软件运行模拟硬件plc运行,适用于单cpu系统,除网络通讯、电源故障ob、fm功能之外,s7在线系统功能都可模拟实现。WWW_PLC※JS_COM-PmLC-技.术_网
WWW_PLCJS_COM-PLC-技.术_网
2 高速数据归档WWW_P※LCJS_COM-PLC-)技.术_网
自动化系统响应的实时性决定了数据归档系统必须运行速度快,循环周期短。因为各种运行参数刷新变化快,速度为毫秒级,参数的变化不易被人为在线观察和辨别,同时由于时间的不可逆性,特定时间的系统运行情况不可以在线重复观察,系统的复杂性也决定了同一时间不可能观察到所有的参数。wincc实时归档数据库与s7-plcsim联合应用可实现对生产过程的运行再现,监控当时的设备状态与系统运行参数。wincc5.1最高刷新速度为250毫秒,普通归档记录为500毫秒,为了保证实时数据的精确记录,可以应用s7“高速数据采集“功能,其数据采集理论上可以达到1毫秒1次的采集记录精度。WWW_PL※CJS_COM-PLC-技.术_网
2.1 s7-plcsim对工艺运行系统过程的模拟WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
(1)可控性:仿真可以对系统循环运行周期加以控制,加大系统循环时间降低数据刷新频率,各运行参数刷新间隔扩大,使其能够被人为准确识别、判断。WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
(2)可逆性:可对过去的时间段内程序运行情况、参数变数进行反复观察,时间点和时间段具有可选性。WWW_PLCJS@_COM%-PLC-技.术_网
2.2 采用visual basic作为设计语言WWW_PLCJS@_COM%-PLC-技.术_网
采用visual basic作为设计语言,使用vb提供的ado控件与wincc归档数据库建立连接。WW.W_PLC※JS_C,OM-PL,C-技.术_网
(1)wincc5.1中以sybase7.0格式归档的数据,使用ado/odbc访问,连接wincc数据库字符串:"msdasql.1;persist securityinfo=false;userid=用户名;datasource=归档数据库名称;mode=read";msdasql.1为提供数据库连接的程序,persist securityinfo=false表示连接上数据库后不需要保留登陆密码。读取指定数据值记录使用sql语句即可:select * from 表名 where 字段查询条件。表名:pde#hqz#gas_pre组成方式如下pde:固有pde、归档名称hqz、变量名gas_pre,表结构:有三个字段:t, v, f ,t-时间、v-变量值、f-标志。用sql语言上面sql语句返回结果为记录形式,提取记录中所需要字段的数值。 P.L.C.技.术.网——可编程控制器技术门户
(2)以ado/wincc oledb访问wincc6.0中归档的数据,高速采集的数据以压缩归档的方式存储。连接wincc数据库字符串:“provid-WWW_PLCJS@_COM%-PLC-技.术_网
er=winccoledbprovider.1;catalog=工程运行数据库名称;data source=.\wincc“,查询过程值归档sql语句tag:r,`变量名1`,`起始时间`,`终止时间` where条件。使用ado/microsoft ole db访问wincc6.0中压缩归档的数据时,由于数据存储在varbinary数据类型中,使用普通sql语句不能读出其内容(可以读取非压缩归档数据),存储数据被wincc处理后,即使读出varbinar中数据,也不能被直接使用,只能使用wincc oledb驱动,专用的“tag:r“指令。P.L.C.技.术.网——可编程控制器技术门户
2.3 s7prosim1控件WWW.PLCJS.COM——可编程控制器技术门户
s7-plcsim提供了s7prosim1控件,该控件用在visval basic中与s7-plcsim连接、交换数据。s7prosi-W1WW_P4LCJS_COM-PLC-技.术_网
m1具有的功能属性:s7prosim1.a-——可——编——程——控-制-器-技——术——门——户
utoconnec=true,设定s7prosim1与s7-plcsim连接;s7prosim1.sc-WWcW_PLCJS_COM-PLC-技.术_网
anmode=singlescan/ continuouss-WWW.PLCJS.COM——可编程控制器技术门户
can,设定s7-plcsim工作方式,程序是否循环运行。WW.W_PLC※JS_C,OM-PL,C-技.术_网
s7prosim1具有的功能函数:s7prosim1.writeinputpoint(lbyteindex, lbitindex, vdata)向s7-plcsim传送输入映象区位数据,lbyteindex传入映象区启始字节位置,lbitindex数据在字节中“位”位置, vdata传入数据;s7prosim1.writeinputimage(lstartindex, vdata) 向s7-plcsim传送输入映象区字节、整形、长整形数据,lbyteindex传入映象区启始字节位置,vdata为传入数据。WWW_P※LCJS_CO※M-PLC-技-.术_网
WWW_PLCJS@_COM%-PLC-技.术_网
3 windows api函数W1WW_P4LCJS_COM-PLC-技.术_网
由于s7prosim1控件功能函数只提供了“数字量”数据传入,部分数据类型、数据地址无法传送,如:“模拟量”plc内部存储器数据,浮点、时间数据类型等。由于s7-plcsim是基于windows视窗系统的应用程序,这部分数据的传送可使用windows api函数,借用windows消息通过windows不同进程间交换数据的功能来完成数据的传送、交换。windows通过消息系统操作各种窗口,消息机理是windows的控制机理。windows中消息有以下两方面的用途:把消息传递给窗口程序,指出一个特定的事件,消息传递给一个窗口和控件,请求它执行特定的操作。使用windows消息功能,控制s7-plcsim中数据、地址输入控件执行特定的操作,来接收读取到的归档数据库中数据。用到的主要相关api函数及功能如下:WWW_PL※CJS_COM-PLC-技.术_网
hwnd=findwindow(vbnullstring,"s7-plcsim - simview1")取得s7-plcsim程序进程句柄;WWW_PLCJS_COM-PLC-技.术_网
取得s7-plcsim接收输入区数据、地址控件句柄;WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
public function enumchildproc(byval hwnd as long, byval lparam as long) as longplcjs.技.术_网
dim id as longWWW_PLCJS@_COM%-PLC-技.术_网
id=getdlgctrlid(hwnd) ‘读取s7-plcsim程序进程内控件idP.L.C.技.术.网——可编程控制器技术门户
if id=213 then‘地址输入控件id=213,将句柄存入数组plcjs.技.术_网
m(b)=hwndP_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
b=b+1WW.W_PLCJS_COM-PLC-技.术_网
elseWWW_PLC※JS_COM-PmLC-技.术_网
if id=214 then‘数据输入控件id=214,将句柄存入数组WWW_P※LCJS_COM-PLC-)技.术_网
n(c)=hwndP_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
c=c+1P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
end ifWW.W_PLCJS_COM-PLC-技.术_网
enumchildproc=1WWcW_PLCJS_COM-PLC-技.术_网
end functionWWW_PLC※JS_COM-PmLC-技.术_网
把数据地址传送给s7-plcsim。WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
sendmessage m(i), wm_sett-WWW.PLCJS.COM——可编程控制器技术门户
ext, 0&, form2.text6.textWWW_PLCJS@_COM%-PLC-技.术_网
postmessage m(i), wm_keyd-own, vk_return, 0&WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
postmessage m(i), wm_k-WW.W_PLC※JS_C,OM-PL,C-技.术_网
eyup, vk_return, 0&WWW.PLCJS.COM——可编程控制器技术门户