杰控组态手册25.数据库操作
监控组态软件使用手册
![监控组态软件使用手册](https://img.taocdn.com/s3/m/389f6f5fad02de80d4d840e1.png)
VxSCADA监控组态软件使用手册浙江中控技术股份有限公司声 明⏹ 严禁转载本手册的部分或全部内容。
⏹ 在不经预告和联系的情况下,本手册的内容有可能发生变更,请谅解。
⏹ 本手册所记载的内容,不排除有误记或遗漏的可能性。
如对本手册内容有疑问,请与我公司联系。
文档标志符定义警告:标示有可能导致人身伤亡或设备损坏的信息。
WARNING : Indicates information that a potentially hazardous situation which, if not avoided, could result in serious injury or death.电击危险:标示有可能产生电击危险的信息。
Risk of electrical shock: Indicates information that Potential shock hazard where HAZARDOUS LIVE voltages greater than 30V RMS, 42.4V peak, or 60V DC may be accessible.防止静电:标示防止静电损坏设备的信息。
ESD HAZARD: Indicates information that Danger of an electro-static discharge to which equipment may be sensitive. Observe precautions for handling electrostatic sensitive devices注意:提醒需要特别注意的信息。
ATTENTION: Identifies information that requires special consideration.提示:标记对用户的建议或提示。
TIP :Identifies advice or hints for the user.目录1 概述 (1)1.1 技术指标 (1)2 监控组态软件的启动方法 (2)3 主界面 (3)3.1 菜单栏/工具栏 (3)4 操作小组组态 (5)4.1 添加操作小组 (5)4.2 一览画面组态 (6)4.3 趋势画面组态 (8)4.4 添加流程图 (10)4.5 添加报表 (13)4.6 调度组态 (15)4.6.1 调度组态主界面 (17)4.6.2 菜单/工具栏命令 (17)4.6.3 组态说明 (17)4.6.4 调度运行 (25)4.7 可报警分区设置 (25)4.8 报警声音设置 (28)4.9 实时报警打印设置 (32)4.10 位号关联流程图配置 (35)4.11 位号关联趋势画面配置 (38)4.12 操作指导配置 (41)4.13 报警订阅 (44)5 域组态 (46)5.1 报警颜色组态 (46)5.2 域变量组态 (49)5.3 监控用户授权 (49)5.4 历史趋势组态 (50)5.4.1 历史趋势组态主界面 (50)5.4.2 菜单功能 (51)5.4.3 组态说明 (51)5.4.4 位号筛选 (56)5.5 自定义报警分组 (57)6 资源文件 (62)7 组态发布 (66)8 其它功能 (67)8.1 组态树节点的复制剪切功能 (67)8.2 组态树节点的删除功能 (68)8.3 显示隐藏工具栏和状态栏 (68)9 资料版本说明 (69)监控组态软件1概述监控组态软件(VFHMICfg.exe)主要提供在组态模式下针对单个操作域中监控正常运行所需的相关内容进行有关组态的功能。
组态软件操作指南概述
![组态软件操作指南概述](https://img.taocdn.com/s3/m/66dc4aad68dc5022aaea998fcc22bcd126ff4212.png)
组态软件操作指南概述本章内容KingSCADA软件结构KingSCADA软硬件环境KingSCADA与外部设备KingSCADA软件结构KingSCADA是一种通用的工业监控软件,它融过程控制设计、现场操作以及工厂资源管理于一体,将一个企业内部的各种生产系统和应用以及信息交流汇集在一起,实现最优化管理。
它基于Windows XP/Windows 7/Windows 8/Windows10/Windows Server 2008/Windows Server 2012等操作系统,并支持多语言的操作系统。
用户可以在企业网络的所有层次的各个位置上及时获得系统的实时信息与历史信息。
采用KingSCADA开发工业监控系统,可以极大地增强用户生产控制能力、提高工厂的生产力和效率、提高产品的质量、减少成本及原材料的消耗。
它适用于从单一设备的生产运营管理和故障诊断,到网络结构分布式大型集中监控管理系统的开发。
KingSCADA软件结构由工程设计器、画面编辑器及运行系统三部分构成。
工程设计器:工程设计器是一个应用开发设计工具,用于创建应用、创建监控画面、定义监控的设备、定义相关变量、命令语言以及设定运行系统配置等系统组态工具。
画面编辑器:在画面编辑器中用户可以绘制图形画面、设置动画链接、配置报警窗口、配置趋势曲线窗口等与图形有关的所有操作。
运行系统:工程运行界面,从采集设备中获得通讯数据,并依据画面编辑器的动画设计显示动态画面,实现人与控制设备的交互操作。
KingSCADA软硬件环境1、硬件要求硬件:Intel 酷睿2 双核4线程内存:2G硬盘空间:KingSCADA完全安装占用空间需约350M,建议100GB硬盘。
显示器:VGA、SVGA或支持桌面操作系统的任何图形适配器。
要求最少显示256色,推荐无限色支持鼠标:任何PC兼容鼠标通讯:RS-232CUSB接口:用于插入KingSCADA加密锁(软授权不用)(KingSCADA对于主频有一定要求,对于有较多逻辑脚本系统,建议2.3GHz以上)2、软件要求KingSCADA与外部设备Windows操作系统,支持的操作系统语言版本:中文简体、英文、日文Windows 7专业版和旗舰版Window 8专业版和旗舰版Window 10专业版和旗舰版Windows Server 2012专业版和旗舰版Windows Server 2008专业版和旗舰版Windows Server 2003 专业版和旗舰版Windows Xp sp3Windows Vista专业版和旗舰版注:支持32位和64位,不支持Home版。
数据库组态讲解
![数据库组态讲解](https://img.taocdn.com/s3/m/29df6bf589eb172dec63b72d.png)
形目录下,如c:\fix32\PIC
Save As: 将当前文件存为其他名称或类型, 数据库文件有两种: *.LIN 和* .CSV
Exit :关闭数据库组态文件。
Edit 菜单: Lin Specifics:I/0 驱动配置程序路径。默认 的路径 为
数据库中 ALIN/PCLIN 卡的配置:
每台站中可配置四块卡。如图:
Card Info: 提供所配置卡的信息。如卡名,地址等。 如图: DB Name: 卡的名称 Node Number: 卡的地址 Dual Port Memory Address: 内存的地址 I/O Address: 设备在主机中的地址 Status: 设备运行状态
Devices 的配置: 前面为设备的名称,如 T103-12;后面为设备 的地址。
ADD: 在设备表中增加一个设备。
COPY:把一个设备中内容复制到另一个设备。
DELETE:从设备表中删除设备。
MODIFY:修改设备表中设备,包括名称、 地址、安全区 及描述如下图
SEARCH:从设备表中查找,在空白框中输
或者通过 Draw 程序 App 菜单下“System Configuration”命令。系统配置程序的主 界面如图所示:
SCADA 设置
点击 SCADA 设置按钮 弹出 SCADA 设置对话框,通过此对话框可以设置允许/ 禁止 SCADA、与硬件设备相关的 I/O 驱动及各 I/O 驱动的数据库。
I/O点组态: 模拟量(包括标准电流、热电阻、热电偶) 如下图:
开关量(开关量输入、输出)Байду номын сангаас下图:
杰控组态指导手册
![杰控组态指导手册](https://img.taocdn.com/s3/m/e42a8c640722192e4536f684.png)
杰控组态指导手册前提:计算机已安装杰控组态软件(下面按FameView7.6为例)一、新建工程计算机安装好杰控软件后,桌面上会出现如图杰控快捷方式,双击打开软件出现下图窗口:点击窗口左上角如图按钮出现下图输入项目名称等信息,点击“确定”,新建项目成功。
二、画面组态在如图左侧树结构菜单栏选中“显示画面”,右侧出现“画面管理”,“显示属性”,“画面制作”双击“画面制作”即可进入画面编辑环境在弹出窗口中填写新建第一张画面的基本信息举例:画面名称“PIC1”画面尺寸“600*400”点击确认,进入画面菜单和工具说明请参考附件“08.画面制作”右键画面,选择画面属性,可对画面基本信息进行修改下面即可在画面根据提供的PID图进行所需流程图组态。
三、变量组态返回主界面,选择“设备通讯”,双击右侧“安装驱动”根据具体工程要求选择正确的驱动品牌和通讯方式,点击安装双击“启动驱动”,给需要启动的驱动打勾双击“设备数据表”,根据编程师提供的变量地址表预估和合理分配所需变量类型和数目。
返回主界面,选择“运行数据库”,根据要求在右侧不同的变量类型中建立变量以DI为例,双击“DI-开关只读变量”点击“新建”填写变量详细信息即可四、动画组态双击点开属性窗口这边根据你需要做动画连接,比如可见性选择条件a=b,连接变量,写下常数等于1(也就是在1的状态下可见),详情请参考附件“08.画面制作”五、报警组态,在建点的时候有需要报警的在报警一栏打上勾在扩展应用里选择变量报警,进行归档一个个添加归档进去,完成之后回到画面窗口,新建一个报警画面,拖动报警控件在组件箱变量报表,详情请参考附件“10.变量报警”六、趋势曲线,在组件箱,曲线显示里,实时曲线,拖动到曲线画面中,出现下面对话框点击实时曲线定义,把模拟量变量添加进去,详情请参考附件“11.历史数据”七、报表1.新建变量2.存档变量3.企业管理器——(Local)——数据库——新建数据库(宣化数据库名字是UserDateBase)——表——新建表4.实时报表——定义实时报表数据(有多少模拟量就定义多少数值)5.编辑报表格式6.新建报表,启动报表设计器7.下一步直接点DONE8.选择新建报表(直接点白的创建)9.从“Choose an Expert”中选择<Standard>标准报表格式;10.出现下面对话框,选择数据库来源:11.必须选择“SQL/ODBC”数据源,即执行<SQL/ODBC>按钮,出现对话框:12.选择USER Date Source13.执行<OK>按钮,出现下面对话框来选择数据表:14.选择你所建的表名,添加ADD15.添加完之后关闭,直接下一步,将表里的字段添加(ADD)到Report Filds,下一步,点击Preview Report,进入报表编辑模式(Design)设计报表格式,点击(Preview)预览样式16.设计好后保存,在默认路径下,改下文件名,后缀名(rpt)17.确定后,在编辑报表格式里可以看到该报表18.数据库——编辑数据库连接19.新建20.保存时间,触发周期改一下(根据要求),选择数据表(自己新建的表)21.选择字段名称(每个字段都要添加)22.应用数据连接,回到主画画(你可以把子画面往下拖),选择报表打印按钮,23.选择报表打印按钮后在画面上拖动出现下面画面,对象名称改一下格式文件选择你设计的报表选择时间字段,出现下面对话框,选择Fame View User Date Sourse,选择你所建的表里日期字段新建好之后,回到主画面,即页眉,右击选择画面脚本编辑,选择报表按钮,双击Show Window选择你刚刚选择报表按钮时起的对象名称,保存选择在组建箱里选择画面编程,动态菜单,选择一个动态菜单,下面可以选择一个空的添加,右边写上相应的描述,任务选择处理脚本选择报表按钮,SHOW Window双击,选择对象名称,保存报表详情请参考附件“12.实时报表”。
杰控组态指导手册
![杰控组态指导手册](https://img.taocdn.com/s3/m/e42a8c640722192e4536f684.png)
杰控组态指导手册前提:计算机已安装杰控组态软件(下面按FameView7.6为例)一、新建工程计算机安装好杰控软件后,桌面上会出现如图杰控快捷方式,双击打开软件出现下图窗口:点击窗口左上角如图按钮出现下图输入项目名称等信息,点击“确定”,新建项目成功。
二、画面组态在如图左侧树结构菜单栏选中“显示画面”,右侧出现“画面管理”,“显示属性”,“画面制作”双击“画面制作”即可进入画面编辑环境在弹出窗口中填写新建第一张画面的基本信息举例:画面名称“PIC1”画面尺寸“600*400”点击确认,进入画面菜单和工具说明请参考附件“08.画面制作”右键画面,选择画面属性,可对画面基本信息进行修改下面即可在画面根据提供的PID图进行所需流程图组态。
三、变量组态返回主界面,选择“设备通讯”,双击右侧“安装驱动”根据具体工程要求选择正确的驱动品牌和通讯方式,点击安装双击“启动驱动”,给需要启动的驱动打勾双击“设备数据表”,根据编程师提供的变量地址表预估和合理分配所需变量类型和数目。
返回主界面,选择“运行数据库”,根据要求在右侧不同的变量类型中建立变量以DI为例,双击“DI-开关只读变量”点击“新建”填写变量详细信息即可四、动画组态双击点开属性窗口这边根据你需要做动画连接,比如可见性选择条件a=b,连接变量,写下常数等于1(也就是在1的状态下可见),详情请参考附件“08.画面制作”五、报警组态,在建点的时候有需要报警的在报警一栏打上勾在扩展应用里选择变量报警,进行归档一个个添加归档进去,完成之后回到画面窗口,新建一个报警画面,拖动报警控件在组件箱变量报表,详情请参考附件“10.变量报警”六、趋势曲线,在组件箱,曲线显示里,实时曲线,拖动到曲线画面中,出现下面对话框点击实时曲线定义,把模拟量变量添加进去,详情请参考附件“11.历史数据”七、报表1.新建变量2.存档变量3.企业管理器——(Local)——数据库——新建数据库(宣化数据库名字是UserDateBase)——表——新建表4.实时报表——定义实时报表数据(有多少模拟量就定义多少数值)5.编辑报表格式6.新建报表,启动报表设计器7.下一步直接点DONE8.选择新建报表(直接点白的创建)9.从“Choose an Expert”中选择<Standard>标准报表格式;10.出现下面对话框,选择数据库来源:11.必须选择“SQL/ODBC”数据源,即执行<SQL/ODBC>按钮,出现对话框:12.选择USER Date Source13.执行<OK>按钮,出现下面对话框来选择数据表:14.选择你所建的表名,添加ADD15.添加完之后关闭,直接下一步,将表里的字段添加(ADD)到Report Filds,下一步,点击Preview Report,进入报表编辑模式(Design)设计报表格式,点击(Preview)预览样式16.设计好后保存,在默认路径下,改下文件名,后缀名(rpt)17.确定后,在编辑报表格式里可以看到该报表18.数据库——编辑数据库连接19.新建20.保存时间,触发周期改一下(根据要求),选择数据表(自己新建的表)21.选择字段名称(每个字段都要添加)22.应用数据连接,回到主画画(你可以把子画面往下拖),选择报表打印按钮,23.选择报表打印按钮后在画面上拖动出现下面画面,对象名称改一下格式文件选择你设计的报表选择时间字段,出现下面对话框,选择Fame View User Date Sourse,选择你所建的表里日期字段新建好之后,回到主画面,即页眉,右击选择画面脚本编辑,选择报表按钮,双击Show Window选择你刚刚选择报表按钮时起的对象名称,保存选择在组建箱里选择画面编程,动态菜单,选择一个动态菜单,下面可以选择一个空的添加,右边写上相应的描述,任务选择处理脚本选择报表按钮,SHOW Window双击,选择对象名称,保存报表详情请参考附件“12.实时报表”。
组态王连接SQL数据库操作步骤
![组态王连接SQL数据库操作步骤](https://img.taocdn.com/s3/m/80c07fe881c758f5f61f6712.png)
1、建立ODBC连接配置:(1)开始——设置——控制面板——管理工具——数据源:(2)双击“数据源”,选择“用户DSN”选项卡:(3)点击“添加”,选择“SQL Server”,点击“完成”:(4)写入“数据源名称”,选择需要连接的“服务器”,点击“下一步”:(5)选择“使用用户输入登录ID和密码的SQL Server验证”,“登录ID”输入“sa”,如有密码则输入密码,点击“下一步”:(6)将“更改默认的数据库为”打勾,选择需要连接的数据库名称,点击“下一步”:(7)点击“完成”:(8)点击“测试数据源”,如果提示“测试成功”,表示配置正确,点击“确定”,完成ODBC 连接配置:2、组态王——变量(1)工程浏览器——变量——新建:(2)双击“新建”,输入变量名,变量类型,变量名为需要保存到SQL数据库中的数值,如开关量,模拟量,字符串等,点击“确定”:(3)如有多个变量,重复第(2)步骤:3、组态王——新建记录体:(1)工程浏览器——系统——SQL访问管理器——记录体:(2)双击“新建”,输入“记录体名”,“字段名称”输入SQL数据表中的字段名称,“组态王变量”输入保存数值的变量名(可点击“?”选择),点击“增加字段”,可以保存该条记录,如有其它字段需要保存,可重复录入。
全部录入完毕后,点击“确认”完成:4、组态王——将变量值保存到SQL中:(1)工程浏览器——系统——文件——画面——新建:(2)新建“文本”——“开关量”,新建“按钮”——“连接SQL”,新建“按钮”——“插入一条记录”,新建“按钮”——“查询记录”,新建“按钮”——“断开SQL”:(3)双击“文本”——“开关量”,“值输出”——“模拟值输出”——选择“Test_KGL_Z”变量,“权限保护动画连接”——“值输入”——“模拟值输入”——选择“Test_KGL_Z”变量:(4)双击“按钮”——“连接SQL”,“命令语言连接”——“按下时”,写入以下语句:SQLConnect(ConnectionID, "dsn=SQL_Test;uid=sa;pwd=apply");(5)双击“按钮”——“插入一条记录”,“命令语言连接”——“按下时”,写入以下语句:SQLInsert(ConnectionID, "Test_Table","Test" );(6)双击“按钮”——“查询记录”,“命令语言连接”——“按下时”,写入以下语句:SQLSelect(ConnectionID, "Test_Table","Test", "SQL_KGL='1'", "" );(7)双击“按钮”——“断开SQL”,“命令语言连接”——“按下时”,写入以下语句:SQLDisconnect(ConnectionID);。
组态王连接本地数据库操作文档
![组态王连接本地数据库操作文档](https://img.taocdn.com/s3/m/afb3f8f2f8c75fbfc77db2c9.png)
组态王连接本地数据库操作文档
1配置数据源ODBC
控制面板->ODBC
或者控制面板->管理工具-> ODBC
双击打开ODBC数据源管理器,在系统DSN标签中,点击添加按
钮,创建新数据源。
选择SQL Server为安装数据源的驱动程序。
填写创建到SQL Server的新数据源的名称,本例中以“yue1”为例,在服务器中选择(local)作为需要连接的SQL Server。
其他选项保存默认设置即可,配置ODBC数据源完成后在系统数据源列表中出现新添加的数据源。
2 组态王连接数据库
数据词典中新建变量DeviceID
新建画面SQLtest,在画面中添加按钮
双击新添加的按钮,弹出动画连接对话框。
点击命令语言连接“按下时”,弹出命令语言编辑对话框
点击SQL…按钮,在弹出的选择函数对话框中选择SQLConnect函数,点击确定。
修改函数中的参数,点击确认。
保存画面,并运行整个系统,
3 运行组态王“运行系统”
打开组态王“运行系统”
定。
点击文本按钮,在信息窗口可以看到系统信息SQL数据库连接成功。
组态操作说明
![组态操作说明](https://img.taocdn.com/s3/m/1720b6da4128915f804d2b160b4e767f5acf8062.png)
用户授权管理组态操作步骤用户授权管理组态的目的是确定DCS操作和维护管理人员并赋以相应的操作权限。
不同的用户管理对应不同的权限。
如,用户管理:工程师,对应的权限:退出系统、查找位号、PID参数设置、重载组态、报表打印、查看故障诊断信息等等。
在此,将创建一个特权级用户,用户名称为“系统维护”,用户密码为“SUPCONDCS”。
创建步骤如下:1.点击命令[开始/程序/AdvanTrol-Pro/用户权限管理],弹出图1所示对话框。
对话框中的“用户名称”为系统缺省用户名“SUPER_PRIVILEGE_001”。
图1登录对话框2.在“用户密码”中输入缺省密码“SUPER_PASSWORD_001”,点击“确定”,进入到用户授权管理界面,如图2所示。
图2用户授权管理界面3.在用户信息窗中,右键点击“用户管理”下的“特权”一栏,出现右键菜单如图3所示。
图3用户列表区内的右键菜单4.在右键菜单中点击“增加”命令,弹出用户设置对话框,如图4所示。
图4用户设置对话框5.在对话框中输入以下信息:用户等级:特权用户名称:系统维护输入密码:SUPCONDCS确认密码:SUPCONDCS点击对话框中的命令按钮“授权设置”,用户设置对话框将改变如图5所示。
图5用户授权设置6.在对话框中点击命令按钮“全增加”,将“所有授权项”下的内容全部添加到“当前用户授权”下,如图6所示。
(也可选中某一授权项,通过“增加”按钮授权给当前用户)图6授权结果7.点击“确定”退出用户设置对话框,返回到用户授权管理界面。
在用户信息窗的特权用户下新增了一名“系统维护”用户,如图7所示。
图7用户添加结果8.点击“保存”按钮,将新的用户设置保存到系统中。
9.可重复以上过程设置其它级别的用户,然后退出用户授权管理界面。
系统总体结构组态操作步骤系统总体结构组态是整个系统组态过程中最先做的工作,其目的是确定构成控制系统的网络节点数,即控制站和操作站节点的数量。
组态软件操作指南与数据库连接
![组态软件操作指南与数据库连接](https://img.taocdn.com/s3/m/631a2093bed5b9f3f90f1c96.png)
第八章与数据库连接本章容创建数据源及数据库创建表格模板创建记录体对数据库的操作数据集函数在关系库中的应用概述本章我们将讲解如何将阀门的状态变化记录到数据库中并进行查询。
数据库我们选择Access数据库,记录的容包括:日期、时间、阀门描述、阀门状态四个字段。
我们利用KingSCADA的SQL访问功能来实现。
KingSCADA SQL访问功能实现KingSCADA和其他外部数据库之间的数据传输。
提供2种访问方式:一种是记录体的方式,即变量和数据库表中的字段建立绑定关系;一种是数据集方式。
记录体方式就是通过记录体配置项,实现把数据库里面的字段和KingSCADA的变量建立绑定关系。
绑定后,可以通过SQL插入或更新函数将绑定变量插入或更新到数据库的对应字段中;也可以通过SQL 查询函数将数据库中对应字段数据查询并保存到绑定变量中,实现KingSCADA和关系数据库的数据交互。
记录体方式只能在KingSCADA服务器端应用。
数据集方式就是通过KingSCADA提供的一系列数据集函数,执行标准SQL语句,实现KingSCADA 与关系数据库之间的增、查、删、改等所有数据交互功能,尤其可以通过数据集函数,实现从数据库查询出符合SQL语句的数据集合,并在报表、曲线中进行批量数据展示。
数据集方式支持在KingSCADA服务器端、C/S客户端、WEB上使用。
在这里建议采用数据集方式,更加方便、灵活。
下面具体介绍2种方式的具体使用第一节记录体方式在关系数据库中的应用(仅参考)一、创建数据源及数据库以KingSCADA带的DEMO工程中的mine.mdb数据库为例,首先将mine.mdb文件从DEMO工程中拷贝到我们新建的这个培训工程中。
然后,用Windows控制面板中自带的ODBC Data Sources (32bit)管理工具新建一个Microsoft Access Driver(*.mdb)驱动的数据源,名为:mine,然后配置该数据源,指向刚才拷贝过来的Access数据库(即mydb.mdb),如图8-1所示:图8-1ODBC数据源的建立二、创建表及记录体创建表用ACCESS打开mine.mdb数据库,在库中新建表“KingTable”,在表中建立三个字段日期时间、液位、温度,如图8-2所示:图8-2在mine数据库中创建表日期时间字段为日期时间类型。
杰控组态变量小数点
![杰控组态变量小数点](https://img.taocdn.com/s3/m/b1796c374b7302768e9951e79b89680203d86b98.png)
杰控组态变量小数点1. 引言在杰控组态系统中,变量是非常重要的概念。
它们代表了系统中的各种参数、状态和数据。
在实际应用中,我们经常需要使用小数点来表示精确的数值,以满足对数据精度的要求。
本文将介绍杰控组态系统中如何处理小数点,以及相关的设置和注意事项。
2. 小数点的表示在杰控组态系统中,小数点可以通过浮点型(float)变量来表示。
浮点型变量可以存储小数和整数,具有较高的精度和范围。
在变量定义时,可以指定小数点的位数,以满足实际需求。
float temperature = 25.5; // 定义一个浮点型变量temperature,表示温度,小数点保留1位在杰控组态系统中,还可以使用其他数据类型来表示小数,如定点数(fixed-point)和双精度浮点数(double)。
不同的数据类型在精度和范围上有所不同,根据实际需求选择合适的数据类型。
3. 小数点的显示在杰控组态系统中,小数点的显示可以通过设置变量的格式来实现。
变量的格式可以包括小数点的位数、单位和显示方式等。
以下是一些常用的小数点显示设置:•小数点位数:可以设置小数点的位数,以控制小数的精度。
例如,可以设置小数点位数为1,表示保留1位小数。
•单位:可以为变量设置单位,如温度的单位可以是摄氏度(℃)或华氏度(℉)。
•显示方式:可以设置变量的显示方式,如固定小数点位数、自动调整小数点位数或科学计数法等。
在杰控组态系统中,可以通过变量属性或控件属性来设置小数点的显示。
以下是一些常用的设置方式:•变量属性:可以通过修改变量的格式属性来设置小数点的位数和单位。
例如,可以设置变量的Format属性为”0.0 ℃“,表示保留1位小数,并显示单位为摄氏度。
•控件属性:可以通过修改控件的格式属性来设置小数点的位数和显示方式。
例如,可以设置文本框控件的Format属性为”0.00”,表示保留2位小数。
4. 小数点的计算在杰控组态系统中,小数点的计算可以通过使用适当的运算符和函数来实现。
EPKS_RTU_AJ组态操作手册_20191023
![EPKS_RTU_AJ组态操作手册_20191023](https://img.taocdn.com/s3/m/939af36b312b3169a451a484.png)
介绍本手册仅用于广州南沙振戎仓储有限公司重大危险源在线监控数据接入项目后期操作及维护。
会提及一下及部分:1. 如何使用ControlEdge Builder建立通讯变量,分配变量到对应的Modbus Map以及下装程序。
2. 如何使用QB建立RTU通讯点。
3. 如何使用OPC Integrator将所需数据链接到QB中RTU通讯点。
详细操作步骤ControlEdge Builder组态∙在安装ControlEdge Builder的电脑上通过桌面快捷方式打开组态软件∙选择当前项目所使用的组态程序∙通过点击Program按钮进入到逻辑组态画面选择POU(YP:油品区 / HG01:化工区),并双击对应POU的逻辑页面打开逻辑组态页面右击POU逻辑页面空白处添加变量,EPKS_前缀为Experion PKS通讯到RTU的数据存储变量,AJ_前缀为RTU通讯到安监的数据发送变量。
并将左右两个变量用数据线连接起来。
命名规则:“EPKS_或AJ_” + “变量在EPKS中的位号” + “_PV”数据类型:REAL使用类型:VAR_GLOBAL∙点击Configuration Workspace回到主页面∙点击Configure Protocol Modbus Slave进入Modbus Map及地址分配页面分别选择EPKS_RTU(用于所有EPKS_前缀点)的Holding Register以及RTU_AJ(用于所有AJ_前缀点)的Holding Register,并未上述所建立的变量分配Modbus地址(左右俩变量在不同Modbus Map中地址相同)。
截图仅以EPKS_RTU为例,RTU_AJ步骤一样。
注意!所有REAL类型的变量均需要占用2位Modbus地址,所以不能有偶数地址出现。
连接控制器。
由于交换机和RTU之间有Modbus Firewall,所以ControlEdge Builder所在电脑无法直接连接到RTU,需要在连接前,挪动网线,绕过Modbus Firewall注意!请选择Administrator账户,当前密码为:Admin@456连接成功会会显示当前RTU名称/IP/是否冗余,可以通过打开Project Control Dialog控制RTU 的Run或Stop∙编译项目,确保没有Error∙下装编译后的项目,显示Configuration Applied Successfully后表示下装完成下装后在线查看程序Quick Builder组态建立用于Experion PKS写入到RTU的通讯点命名规则:在Experion PKS原本点名前加上前缀“RTU_AJ_”OPC Integrator组态∙从Station中点击进入OPCI∙登录mngr账户并选择已经组态好的OPCI Group∙在Item List中选择原数据位号以及新建的RTU位号注意!RTU位号需要以.OP结尾,以保证正确写入∙Validate Group并Commit Group验证数据是否正确传递到RTU。
杰控软件基本操作技服人员培训资料课件高习辉
![杰控软件基本操作技服人员培训资料课件高习辉](https://img.taocdn.com/s3/m/dc21a10de55c3b3567ec102de2bd960590c6d9c4.png)
03
高级应用技巧
针对软件的高级功能和应用进 行了深入的讲解和演示,如数 据处理、报表生成、自动化脚 本编写等,提升技服人员的工 作效率。
04
常见问题处理
总结了软件使用过程中常见的 故障和问题,提供了相应的解 决方案和处理方法,帮助技服 人员快速解决问题。
培训效果评估
考核成绩
对参加培训的技服人员进行考核,通过测试 其软件操作技能和对培训内容的掌握程度, 评估培训效果。
01
02
解决方案:
确认数据源是否正确。
03
04
检查图表类型和设置是否符合需求。
使用软件的自动调整功能,优化图表显示 效果。
05
06
联系技术支持获取帮助。
软件使用技巧分享
提高工作效率的技巧和经验分 享
01
内容:
02
使用快捷键提高操作速度。
03
自定义界面布局,方便日常操 作。
04
善用软件的筛选和排序功能,
反馈调查
向参加培训的技服人员发放反馈调查问卷, 了解他们对培训内容、讲师和培训形式的评 价,收集改进意见。
实际操作能力评估
观察技服人员在实践操作中的表现,评估其 是否能够熟练运用所学知识解决实际问题。
未来培训计划
定期更新培训内容
根据杰控软件的新功能和技服人员的需求,定期更新培训课程和资料 ,保持培训内容的时效性和实用性。
提供常用功能的快捷按钮,方 便用户快速操作。
工作区
用于显示和编辑数据、图表的 区域。
状态栏
显示当前软件状态和操作提示 信息。
文件操作
新建
打开
保存
另存为
创建一个新的工作簿或 项目。
打开一个已存在的工作 簿或项目。
杰控组态手册00.目录
![杰控组态手册00.目录](https://img.taocdn.com/s3/m/a4cb3e170b4e767f5acfce82.png)
目录第一部分使用基础第1章 系统简介1.1 软件介绍…………………………………..…………………………………………………1-11.2 特色概括……………………………………………………..………………………………1-11.3 软件结构图………………………………………………..…………………………………1-21.4 产品分类………………………………………..……………………………………………1-2第2章 安装软件2.1 硬件需求………………………………………………………………..……………………2-12.2 软件需求…………………………………………………………………..…………………2-12.3 开始安装………………………………………………………………..……………………2-12.4 启动系统……………………………………………………………..………………………2-4第3章 使用加密狗3.1 加密狗介绍………………………………………………………..…………………………3-13.2 加密狗驱动………………………………………………………..…………………………3-13.3 测试加密狗………………………………………………………..…………………………3-13.4 升级加密狗………………………………………………………..…………………………3-23.5 改变授权方式…………………………………………………..………………………………3-2第4章 组态管理器4.1 启动管理器…………………………………………..…………………………………………4-14.2 新建项目………………………………………………..………………………………………4-24.3 备份项目………………………………………………..………………………………………4-24.4 调入项目……………………………………………..…………………………………………4-34.5 运行期限……………………………………………..…………………………………………4-44.6 锁定项目……………………………………………..…………………………………………4-54.7 启动项目……………………………………………..…………………………………………4-6第5章 系统设置5.1 定制系统……………………………………………..…………………………………………5-15.2 启动任务……………………………………………..…………………………………………5-25.3 自动登录……………………………………………..…………………………………………5-25.4 存储数据库类型…………………………………………..……………………………………5-3第二部分基本应用第6章 设备通讯6.1 驱动程序介绍………………………………………………………………………………….6-016.2 常用驱动程序………………………………………………………………………………….6-016.3 安装驱动程序……………………………………………………………………………….…6-026.4 添加驱动程序…………………………………………………………………………………6-036.5 卸载驱动程序…………………………………………………………………………………6-046.6 启动驱动程序…………………………………………………………………………………6-046.7 设备数据表介绍………………………………………………………………………………6-056.8 定义设备数据表………………………………………………………………………………6-066.9 设置串口驱动程序……………………………………………………………………………6-086.10 设置以太网驱动程序………………………………………………………………………….6-086.11 设置串口转以太网驱动程序………………………………………………………………….6-096.12 查看通讯状态……………………………………………………………………………….6-106.13 查看通讯数据…………………………………………………………………………….…6-11第7章 运行数据库7.1 运行数据库介绍………………………………………………………………………………7-037.2 定义运行数据库………………………………………………………………………………7-047.3 编辑运行数据库………………………………………………………………………………7-057.4 外部模拟变量(AI/AO/AR) …………………………………………………………………7-077.5 外部开关变量(DI/DO/DR) …………………………………………………………………7-127.6 内部模拟变量(VA) …………………………………………………………………………7-137.7 内部开关变量(VD) …………………………………………………………………………7-157.8 文本变量(VT) ………………………………………………………………………………7-167.9 存档变量(DOC) …………………………………...……………………………..…………7-177.10 计算功能(CA) ………………………………………………………………………………7-187.11 比较功能(CMP) ……………………………………...…………………………………..…7-217.12 系统功能(FB) ………………………………………………………………………………7-227.13 定时功能(TM) ………………………………………………………………………………7-247.14 函数解析功能(FX) …………………………………………………………………………7-257.15 查看运行数据库……………………………………………………………….……………7-267.16 应用示例7.16.1 通过AI/AR,得到设备中的某数据值…………………………….…….…..……7-277.16.2 通过DI/DR,得到设备中的某数据位…………………………….…………..….7-277.16.3 快速添加变量………………………….……….……………………………..……7-277.16.4 分类显示变量………………………….……….……………………………..……7-287.16.5 随机数………………………………………………………………………………7-297.16.6 自动递增的数…………………………….……………………………………...7-297.16.7 自动递减的数……………………………..……………………………….….……7-297.16.8 当前的日期/时间信息…………………….…………………………..…….…….7-307.16.9 系统启动和运行的时间………………….……………………………..….……7-307.16.10 当前计算机系统的信息………………………………………..…….………….7-317.16.11 系统的工作路径……………………………………………..….……………….7-317.16.12 变量累加……………………………..………………………….….……………7-317.16.13 脉冲输出………………………….………………….………………..…………7-317.16.14 计算变量为1的时间…………………………………………….………………….7-327.16.15 计算变量的变化值………………….………………………………….…..……7-327.16.16 统计变量的变化次数……………………….………………………………...……7-337.16.17 变量的分钟统计值………………….…………………………………………...…7-347.16.18 变量的小时统计值……………………………………..……….…….……………7-347.16.19 数学运算………………………………..………….………………….……………7-347.16.20 三角运算………………………………..………….………………….……………7-357.16.21 逻辑运算………………………………..………….………………….……………7-367.16.22 用FX实现复杂运算…………………………………………………………………7-367.16.23 数值转换………………………………..………….………………….……………7-377.16.24 控制变量报警的工作状态…………………………………………………………7-387.16.25 控制历史存档的工作状态…………………………………………………………7-387.16.26 控制系统信息的工作状态…………………………………………………………7-387.16.27 退出系统………………………………..…………..………………….……………7-387.16.28 系统维护………………………………..………….………………….……………7-397.16.29 转换数值为时间格式(HH:MM:SS)…………………………………………………7-397.16.30 得到设备号的通讯状态(1)……………………………………………..…………7-407.16.31 得到设备号的通讯状态(2)……………………………………………..…………7-407.16.32 弹出对话框…………………………………………………………………………7-417.16.33 运行应用程序………………………………………………………………………7-417.16.34 记录变量事件………………………………………………………………………7-427.16.35 变量发生变化时,打开指定画面…………………………………………………7-427.16.36 播放声音……………………………………………………………………………7-437.16.37 每隔5秒执行某任务………………………………………………………………7-447.16.38 整点执行某任务……………………………………………………………………7-447.16.39 每天结束时执行某任务……………………………………………………………7-447.16.40 每月结束时执行某任务……………………………………………………………7-457.16.41 使变量支持设备冗余………………………………………………………………7-457.16.42 使内部变量具有记忆功能…………………….……………………………………7-467.16.43 某变量的每天统计值……………………………………………………………….7-46 第8章 画面制作8.1 画面文件管理…..…………………………..……………..……….………….…………….8-04 8.2 启动画面制作程序………………………………………..…….…………….…………….8-05 8.3 画面制作平台……………………………………………….……………………………….8-05 8.4 画面属性…………………………….……………………………………………..………..8-06 8.5 画面选项8.5.1 工具箱/组件箱/状态条…………………………….……………….…….……….8-078.5.2 网格…………………………….…………………….……………….…………….8-078.5.3 画面锁定……………………………………………….……………..…………….8-078.5.4 全屏显示…………………………….………………….……………….………….8-078.5.5 自动存储……………………………………………….……………..…………….8-078.5.6 缺省字体………………………………………………….………….….………….8-088.5.7 缺省颜色………………………………………………….………….….………….8-088.5.8 显示图层………………………………………………….………….…….……….8-08 8.6 基本操作8.6.1 增加对象…………………………………………………….……..….……………8-088.6.2 选择对象…………………………….……………………….……..………………8-088.6.3 修改对象尺寸……………………………………………….…..…….……………8-098.6.4 移动对象………………………………………………………...…….……………8-098.6.5 删除对象……………………………………………………..….…….………….8-098.6.6 修改对象属性…………………………………………………...…….………….8-098.6.7 剪切对象……………………………….………………………....….…………8-098.6.8 复制对象………………………………………………..………….….……………8-098.6.9 批量复制…………………………….……………………..………….………….8-098.6.10 拷贝对象……………………………………….……..……………….………….8-108.6.11 粘贴对象…………………………………….………..……………….………….8-108.6.12 排序对象…………………………………………..………….……….………….8-108.6.13 调整对象…………………………………………………….………...………….8-108.6.14 成组对象…………………………………………………….…..…….………….8-118.6.15 拆组对象……………………………………………..…….………….………….8-118.6.16 打包对象………………………………………………………...…….………….8-118.6.17 组内编辑………………………………………………..……….…….………….8-128.6.18 测试画面……………………………………………………...……….………….8-128.6.19 使用图库………………………………………………...…….……….…………8-128.6.20 颜色替换…………………………….………………………….……………….……8-128.6.21 变量替换…………………………………………………….………...……………8-13 8.7 对象基本属性…………………………………………………….………...…………8-14 8.8 对象增强属性…………………………………………………….………...………………8-148.8.1 脚本名称……………………………………..…..………………….………………8-158.8.2 操作级别……………………………………………………....…….………………8-158.8.3 激活条件…………………………….……………………..……………..……….8-168.8.4 内容提示………………………………………..………..………….…………….8-178.8.5 选中提示………………………………………………..……..…….…………….8-178.8.6 签名确认…………………………………………..……..………….…………….8-188.8.7 记录事件……………………………………..…………..………….…………….8-188.8.8 隐藏控件………………………………………………..…..……….…………….8-18 8.9 文本标签………………………………………………….……...…………….…………….8-18 8.10 文本变量…………………………………………….……………..………….….…………8-19 8.11 图形…………………………………………………………….…..…………..…………….8-24 8.12 立体图形…………………………………………………….…….…………..……………8-30 8.13 位图………………………………………………….………………………..………………8-33 8.14 流动管道……………………………………………….……………………..………………8-34 8.15 转动彩轮………………………………………………………….…………..………………8-35 8.16 普通按钮………………………………………………………………….….….……………8-36 8.17 自锁按钮………………………………………………………………….….….……………8-38 8.18 图标按钮…………………………………………………….…………….….………………8-39 8.19 开关按钮…………………………….…………………………………….….………………8-41 8.20 多选框…………………………………………….…………………………..………………8-41 8.21 单选框………………………………………….……………………………..………………8-42 8.22 选择框…………………………………………………….………….……….………………8-43 8.23 选择列表………………………………….………………………….……….………………8-44 8.24 进度条……………………………………………………….……….……….………………8-45 8.25 滑动标尺…………………………………….…………………….………….………………8-45 8.26 增减控件……………………………………….………………….………….………………8-46 8.27 动画播放……………………………………….…………………….……….………………8-47 8.28 日期/时间……………………………………………..….……….………….………………8-47 8.29 模拟时钟………………………………………….…………….…………….………………8-48 8.30 日期拾取器………………………………………………….….…………….………………8-48 8.31 时间拾取器………………………………………….………….…………….………………8-49 8.32 Web页浏览……………………………………….……………….…….…….…………….8-50 8.33 圆盘仪表……………………………….………………………….………….…………….8-50 8.34 数码管…………………………………………….……………….………….…………….8-51 8.35 90度仪表…………………………….…………………………….………….……………8-51 8.36 计数器……………………………………………………………….………..………………8-52 8.37 开关…………………………………………………………………….….….………………8-52 8.38 图片框………………………………………………………….……….…….………………8-53 8.39 表格控件…………………………………………….………………….…….………………8-53 8.40 子窗口……………………………………………………….…………….….………………8-56 8.41 子画面…………………………………………….…………………………….……………8-568.42 功能热键……………………………….…………………………………….………………8-578.43 定时器…………………………………………….………………………….………………8-578.44 变量事件…………………………………….……………………………….………………8-588.45 鼠标区域……………………………………….…………………………….………………8-588.46 实时曲线…………………………………………….……………………….………………8-588.47 画面脚本……………….…………………………….…………………………..….………8-618.48 画面变量………………………….…………………………………………………….……8-648.49 动态菜单……………………………………………………………………..………………8-668.50 画面脚本编程示8.50.1 变量操作……………………….…………….…….……………….…….…………8-678.50.2 画面操作……………………..………………….………….……….………………8-678.50.3 打开与关闭子画面……………………………….………………...………….……8-678.50.4 显示口令输入窗口………………………………….………….…...………………8-678.50.5 显示时间选择窗口……………………………………….….……..….……………8-688.50.6 显示弹出菜单……………………………………………….……..…..……………8-688.50.7 显示用户登录/注销窗口…………………………………………..….……………8-688.50.8 退出监控系统………………………………………….…………...….……………8-698.50.9 退出Windows…………………………………..….…………..………………….…8-698.50.10 执行应用程序…………………………………..….…………….…….……………8-698.50.11 激活应用程序窗口……………………………..………………….…..……………8-698.50.12 显示操作信息窗口……………………………..……….……..……………………8-698.50.13 在线修改变量量程范围………………………..……………..……….……………8-708.50.14 在线修改变量报警参数…………………………..………………..….……………8-708.50.15 实现等待延时操作…………………………………..……………..….……………8-708.50.16 画面打印………………………………………………..…………..….……………8-718.50.17 使用画面变量实现复杂控制……………………………..………..….……………8-718.50.18 退出画面显示……………………………………………..………..….……………8-728.50.19 隐藏画面显示…………………………...……………….………..….……………8-72第9章 画面显示9.1 自动启动画面显示…………………………………………………………...……………….9-029.2 画面显示属性…………………………………………………………..…….……………….9-029.3 多窗口显示…………………………….…………………………………………..………….9-039.4 多屏显示………………………………………………………………..…….……………….9-059.5 多屏显示………………………………………………………………..…….……………….9-059.6 画面漫游…………………………….………………………………………………..……….9-069.7 通过命令行启动画面显示………….………………………………………………..……….9-06第三部分扩展应用第10章 变量报警10.1 设定变量报警….…………………………………..…………………………...……..……10-0110.2 定义报警变量….…………………………………………..…..…….……………..………10-0210.3 设置报警信息的存储和自动打印….………………………....….………………..………10-0510.4 设置报警信息颜色….………………………………………....…….……………..………10-0610.5 启动变量报警任务….………………………………………....…….……………..………10-0710.6 报警状态列表….………………………………………….…....…………………..………10-0710.7 报警信息列表….…………………………………………………..……………...…..……10-0810.8 查询报警信息….………………………………………….…..…………..………..………10-0910.9 在线修改变量报警值….……………………………………..……….……..……..………10-1110.10 有关变量报警的系统变量….…………………………………..……….……..…..………10-1110.11 编写脚本控制报警….………………………………………………………………...……10-11第11章 历史数据11.1 设置历史数据库….………………………………………….…………….…………..…….11-111.2 存储历史数据….………………………………………….………………….………..…….11-311.3 定义历史曲线查询方案….…………………………………….…..………………....….….11-311.4 查询历史曲线….………………………………………….…………………………...…….11-411.5 查询历史数据….…………………….…………………………..…..…………….….…….11-7第12章 实时报表12.1 示例描述….……………………………………….………………………………..………..12-112.2 定制实时报表功能….………………………………….…………………………..………..12-112.3 启动实时报表任务….………………………………………………………….…..………..12-212.4 定义实时报表数据….……………………………………………………….……..………..12-212.5 制作实时报表格式….……………………………………………………….……..………..12-312.6 定义自动实时报表打印任务….…………………………………………….……..………..12-612.7 通过系统功能(FB)执行实时报表….……………………………………….……..………..12-712.8 通过画面脚本执行实时报表….…………………………………………………...………..12-7第13章 配方应用13.1 示例配方….………………………………………………………….……………..………..13-113.2 定制配方功能….……………………………………………………….…………..………..13-113.3 制作配方文件….………………………………………………………….………..………..13-213.4 配方文件编号….…………………………………………………………….……..………..13-413.5 配方管理组件….……………………………………………………………….…..………..13-513.6 使用系统功能传送配方….………………………………………………………...………..13-8 第14章 用户管理14.1 功能描述….……………………………….………………………...….………..…………..14-114.2 例子说明….…………………………………………………..….…….…….…..…………..14-114.3 启动用户管理任务….…………………………………..……….…….…………………..14-214.4 定制用户管理功能….…………………………………..……….………….…...…………..14-214.5 定义操作级别….……………………………………….………………..…….…...………..14-314.6 定义管理员/操作用户….……………………….………………………..…….…………...14-414.7 定义画面中按钮的级别….………………………….………………………….…..……..14-714.8 用户登录、注销….……………………………………….…………………….…..……..14-814.9 用户管理….……………………………………………….…………………….…..……..14-814.10 有关变量….………………………………………………….………………….…..……..14-9第15章 系统信息15.1 功能描述….…………………………………………...…………………………....……….15-115.2 定制系统信息….………………………………….…..…………………………....……….15-115.3 启动信息信息….……………………………………..……………………….…....……….15-215.4 选择设置系统信息….…………………………………..……………………….………….15-215.5 生成系统信息….………………………………………..………………………..………….15-315.6 查询系统信息….………………………………………….……………………...………….15-415.7 暂停和启动响应系统信息….……………………………..…………..………...………….15-615.8 输出系统信息….…………………………………………..…………..…………...……….15-6第16章 OPC服务器16.1 启动OPC服务器…….………………………….……………….………………...………..16-116.2 OPC服务器名称….……………………………………………………..…………..………..16-116.3 访问运行数据库….…………………………………………….……………….….………..16-116.4 访问设备数据表….……………………………………….…………………….….……….16-216.5 远程访问OPC服务器…………………………………….…………………….….……….16-3第17章 OPC客户17.1 定制OPC客户功能….……………………….…………………………..………….…...17-117.2 制作OPC变量文件….…………………………….…………………....………………..17-217.3 安装OPC客户驱动程序….……………………….…………………..…………….…...17-717.4 选择OPC客户驱动程序….……………………….……………………..…………..…..17-717.5 定义设备数据表….………………………………….…………….....……..……..……...17-717.6 查看OPC客户工作状态….…………………………………………...….………...…...17-8第四部分增强应用第18章 双机冗余18.1 功能描述….…………………………………………..….……………..…….………...…...18-118.2 定制双机冗余功能….…………………………………..……………….….…..……...…...18-118.3 设置双机冗余参数….……………………………………..…………….….…..……...…...18-218.4 启动双机冗余功能….………………………………………..………….….…..……...…...18-218.5 双机冗余工作模式….…………………………………………..…..…….….………...…...18-318.6 双机冗余工作过程….……………………………………………..…..….….………...…...18-318.7 冗余工作状态变量….………………………………………………..……….………...…...18-418.8 查看冗余工作状态….…………………………………………………..….…………...…...18-4第19章 全局变量19.1 功能描述….…………………………………………………………………..………....…...19-119.2 定制全局变量….………………………………………………………………..……....…...19-119.3 启动全局变量….…………………………………………………………………...…...…...19-219.4 定义项目邻居….…………………………………………………………….………….…...19-219.5 定义全局变量….……………………………………………………………….....………....19-319.6 监视全局变量….………………………………………...…………….………….…….…...19-3第20章 变量组20.1 功能描述….………………………………………………………………………...……...20-120.2 定制变量组….………………………………………………………….…………..……...20-120.3 启动变量组….……………………………………………………………….……..……...20-220.4 编辑变量组文件….………………………………………………………….……..……...20-220.5 启动变量组文件….………………………………………………………….……..……...20-320.6 应用举例….………………………………………………………………….……..……...20-3第五部分数据库应用第21章 数据库基础21.1 选择数据库类型……………………………………………………………..…….……….21-0121.2 建立ACCESS数据库及数据源………………………………………….…….....…..….….21-0121.3 建立SQL Server数据库及数据源……………………………………………..…...…….21-0321.4 使用系统提供的数据库及数据源……………………………….…….………..…...…….21-0721.5 维护数据库………………………………………………...……………..………..……….21-0821.6 数据库应用介绍…………………………..………………...………………………..…….21-10第22章 数据库连接22.1 功能描述…………………………………………..………………………..……...………...22-122.2 建立数据库连接文件………………………………..………..…………………...………...22-122.3 进行数据库连接………………………………………..………………..………...………...22-822.4 启动数据库连接…………………………………………..…………...……………..……...22-8第23章 实时数据连接23.1 功能描述……………………………………………………………………..……...……….23-123.2 建立实时数据库连接文件…………………………………………………..………...…...23-123.3 进行实时数据库连接…………………………………………………....……..……...…...23-423.3 启动实时数据库连接……………………………………………….….………….…….....23-4第24章 XML数据连接24.1 功能描述……………………………………………………….……………………...……...24-124.2 定制XML连接……………..…………..………………….…….……………………...……...24-124.3 定义XML数据连接文件……………..……..…………….……….……………………...…...24-324.4 启动XML数据连接…………………………………...……..…….……....…………….……..24-524.5 查看XML文件……………………………….…………...…..……...…...…………….….…...24-5第25章 数据库操作25.1 数据库表格查询….…………………………..………...…..……….....…………...……...25-0125.2 数据库曲线查询….…………...…..…………..……………………….…………...……...25-0425.3 数据库表格控件….…………...…..……………..………………….……………...……...25-0525.4 数据库字段列表….…………...…………………..………………...….…..……...……...25-0625.5 删除数据库内容….…………...…..………………..………………...….………...……...25-0725.6 数据库脚本编程….…………...…..…………………..……………...….………...……...25-0825.7 存储过程脚本编程….…………...…..……………………………...……………...……...25-1025.8 数据库记录平均统计…..…...…..………………………………...……...………...……...25-1025.9 把数据库记录导出到Excel中…...………………………………...……………...……...25-1125.10使用ADO访问数据库….…………...…..……………………………...…..………...……...25-13第26章 数据库报表26.1 功能描述….…………...…..………………………………………...……………..…..…..26-0126.2 目标数据库….…………...…..………………………………...…...………….….…..…..26-0126.3 启动报表设计器….…………...…..…………………………...…...………….….…..…..26-0126.4 新建报表格式….…………...…..…………………………………...………….….…..…..26-0226.5 编辑报表格式….…………...…..………………………………......……………..…..…..26-0426.6 保存报表格式….…………...…..………………………………......……………..…..…..26-0726.7 组态报表打印按钮….…………...…..…….……………….……....…….………..…..….26-0826.8 脚本控制报表打印按钮….…………...………..………..………....……………..…..…..26-1026.9 执行报表打印….…………...…..……….………………………….……………..…..…..26-11第六部分编程应用第27章 全局脚本27.1 编写全局脚本文件……...…..……….…………………...…………….…………..…..…...27-127.2 启动全局脚本任务……...…..……….……………………….…..…….…………..…..…...27-227.3 全局脚本策略……...…..……….…………………………….…………………….…..…...27-227.4 启动/停止脚本策略……...…..……….………………………….…….…………..…..…...27-327.5 调用全局脚本文件……...…..……….…………………………...…….…………..…..…...27-3第28章 用户编程28.1 功能描述……...…..……….………………………………………….…………….…..…….28-128.2 定制用户编程……...…..……….…………………………………………….…….…..…….28-128.3 启动用户编程……...…..……….…………………………………………….…..….…..…..28-228.4 定义编程变量……...…..……….…………………………………………….…...….…..…..28-228.5 编写程序……...…..……….………………………………………………….…….….……..28-328.6使用系统提供的API编程………….………………………………………….…….….……..28-3第七部分数据服务第29章 网络服务器29.1 功能描述……...…..……….…………………….…………………………..………….….....29-129.2定制网络服务器……...…..……….…………………………….………..…….……….….....29-129.3 启动网络服务器……...…..…………………………………….………..……….…….….....29-229.4设置网络服务器……...…..……….…………………………….………..………….….….....29-229.5 定义数据变量包……...…..……………………………………...………………….….….....29-329.6 查看网络服务器工作状态……...…..…….….………………….……………………..….....29-429.7 FMTCP协议……...…..……………….……………...………………………………..….….....29-529.8 MODBUS-TCP协议………………………….…………………………………………...……....29-929.9 通过FMTCP实现C/S结构……...…..…………………………….……………………….....29-11第30章 串口服务器30.1 功能描述……...…..……….…………………………………….…….……………..……...30-130.2 定制串口服务器……...…..……….…………………………….…….……………..……...30-130.3 启动串口服务器……...…..………………………………………..….……………..……...30-230.4 设置串口服务器……...…..…………………………………………………………..……...30-230.5 定义数据变量包……...…..……………………………………………...…………..……...30-230.6 查看串口服务器状态……...…..…….….……………………………….…………..……...30-330.7 FMCOM协议……...…..…………………………...……………………….…………..……...30-430.8 MODBUS RTU协议………………………………………………………………….….……...30-8 第31章 ADSL服务器31.1 功能描述……...…..……….…………………………….…………………..……….…..…...31-131.2 定制ADSL服务器……...…..……….……………………..….…………….….…….…..…...31-131.3 启动ADSL服务器……...…..……………………………….……………….……….…..…...31-231.4 设置ADSL服务器……...…..…….……………………..….….…………….……….…..…...31-231.5 支持FMADSL协议……...…..………………………...………..…………….……….…..…...31-3第32章 短信数据服务32.1 功能描述……...…..……….…………………………….……………….………….…..…...32-132.2定制短信数据服务……...…..……….…………………….…………….…….…….…..…...32-132.3 启动短信数据服务……...…..………………………….….…………….………….…..…...32-232.4连接短信模块……...…..…….………………………….….…………….………….…..…...32-232.5 编辑短信内容……...…..……………………………………..………….………….…..…...32-232.6 定义接收号码……...…..……..…………………..…………..…………….……….…..…...32-432.7报警短信发送……...…..……………….………...………..………….……….…….…..…...32-4第33章远程连接服务器33.1 功能描述……...…..……….…………………………….………..………………….…..…...33-133.2定制远程连接服务器……...…..……….………………….………..………….…….…..…...33-133.3 启动远程连接服务器…….…..………………………….….……………………….…..…...33-233.4设置远程连接服务器…….….………………………….….………..……………….…..…...33-233.5 开放本地TCP端口…….…………………………………..……………..………….…..…...33-233.6设置远程站……...…..……..…………………..…………..………….………..…….…..…...33-333.7 使用MB_GPRS驱动…….…..……………….………...………..………….………….…..…...33-3第34章 MSN数据服务34.1 功能描述……...…..……….……………………..……….………………………….…..…...34-134.2 定制MSN数据服务……...…..……….………………..…….………………….…….…..…...34-134.3 启动MSN数据服务…….…..………………………………..….……………………….….....34-234.4 登录MSN服务器…….….…………………………..……………………………….…..…...34-234.5 编辑信息内容…….…………………………………..…………………………….…..…...34-234.6分配信息发送……...…..……..…………………..………..………….……..…….…..…...34-434.7报警信息发送…….…..……………….………...……..………….……………….…..…...34-4 附录A 常用驱动A01. S7PPIA02. S7200A03. MPIA04. S7COMA05. S7TCPA06. S7N(PB)A07. S7N(IE)A08. DPNA09. SNPA10. GE-TCPIPA11. MBRTUA12. MBTCPIPA13. HOSTLINKA14. MC-PCLINKA15. DF1-SLC500A16. MODBUS与S7-200A17. MC-QTCPIPA18. MBRTU/TCPA19. MBAC31/TCPA20. UNI-TELWAYA21. FINS/TCPA22. MASTERK附录B 脚本函数简介。
组态操作说明
![组态操作说明](https://img.taocdn.com/s3/m/efb43a204b73f242336c5fd4.png)
单机组态操作说明一、MCGS系统介绍(一)、什么是MCGS。
MCGS(Monitor and Control Generated System,通用监控系统)是一套用于快速构造和生成计算机监控系统的组态软件,它能够在基于Microsoft 的各种32位Windows平台上运行,通过对现场数据的采集处理,以动画显示、报警处理、流程控制和报表输出等多种方式向用户提供解决实际工程问题的方案,在工业控制领域有着广泛的应用。
(1)MCGS的主要特性和功能如下:1.1简单灵活的可视化操作界面。
1.2实时性强、良好的并行处理性能。
1.3丰富、生动的多媒体画面。
1.4开放式结构,广泛的数据获取和强大的数据处理功能。
1.5完善的安全机制。
1.6强大的网络功能。
1.7多样化的报警功能。
1.8实时数据库为用户分部组态提供极大方便。
1.9支持多种硬件设备,实现“设备无关”。
1.10方便控制复杂的运行流程。
1.11良好的可维护性和可扩充性。
1.12用数据库来管理数据存储,系统可靠性高。
1.13设立对象元件库,组态工作简单方便。
1.14实现对工控系统的分布式控制和管理。
总之,MCGS组态软件功能强大,操作简单,易学易用,普通工程人员经过短时间的培训就能迅速掌握多数工程项目的设计和运行操作。
同时使用MCGS组态软件能够避开复杂的计算机软、硬件问题,集中精力去解决工程问题本身,根据工程作业的需要和特点,组态配置出高性能、高可靠性和高度专业化的工业控制监控系统。
(二)MCGS的构成MCGS系统包括组态环境和运行环境两个部分。
用户的所有组态配置过程都在组态环境中进行,组态环境相当于一套完整的工具软件,它帮助用户设计和构造自己的应用系统。
用户组态生成的结果是一个数据库文件,称为组态结果数据库。
运行环境是一个独立的运行系统,它按照组态结果数据库中用户指定的方式进行各种处理,完成用户组态设计的目标和功能。
运行环境本身没有任何意义,必须与组态结果数据库一起作为一个整体,才能构成用户应用系统。
组态学习课件1-实时数据库
![组态学习课件1-实时数据库](https://img.taocdn.com/s3/m/932dca3b814d2b160b4e767f5acfa1c7aa00823b.png)
产生报警的对象名称、报警产生时间、报警结束时间、报警应答时间、报警类型、报警限值、报警时数据对象的值、用户定义的报警内容注释。
第二章 实时数据库
数据对象报警值修改
01
02
第二章 实时数据库
数据对象报警值应答
报警应答的作用是告诉系统,操作员已经知道对应数据对象的报警产生,并作了相应的处理,同时,MCGS将自动记录下应答的时间(要选取数据对象的报警信息自动存盘属性才有效)。报警应答可在数据对象策略构件中实现,也可在脚本程序中使用系统内部函数AnswerAlm来实现,如果对应的数据对象没有报警产生或已经应答,则本函数无效。
第二章 实时数据库
内部数据对象的调用
利用内部数据变量分别创建数值型数据对象year1、month1、day1、hour1、minute1、second1,并进一步建立字符型数据对象date1和time1,以分别用来在窗口中显示当前日期和时间,通过下列语句:
year1=$year //将系统内部变量的值赋给用户变量 month1=$month day1=$day hour1=$hour minute1=$minute second1=$second date1=!str(year1)+"."+!str(month1)+"."+!str(day1) //对获得的数据进行下一步转换和处理,成为对系统有用的数据对象date1和time1 time1=!str(hour1)+":"+!str(minute1)+":"+!str(second1)
实时数据库
数据对象是构成实时数据库的基本单元,构造实时数据库的过程,实际就是定义数据对象的过程,是按用户需求对被测参数的属性进行设置。
组态王数据库操作
![组态王数据库操作](https://img.taocdn.com/s3/m/4f2d53084a73f242336c1eb91a37f111f1850d21.png)
组态王数据库操作组态王和数据库的连接 by liufc 2011.10连接原理图1.准备数据库的数据源2.数据库连接//SQLConnect()函数和SQLSelect()函数建立与“mine”数据库进行连接: SQLConnect( DeviceID, "dsn=mine;uid=;pwd="); //连接后生成DeviceID号SQLSelect( DeviceID, "kingview", "BIND", "", ""); // kingview 的一个表格;BIND 是记录体//mine 是access数据库的系统数据源。
3.记录体是和内存变量或IO变量关联的。
字段名称必须和数据库表的字段一致如下:4. 创建表格的方法:SQLCreateTable( DeviceID, "KingTable", "table1" );//SQLCreateTable()////以表格模板中定义的表格类型,在数据库中创建新表.使用格式如下://[ResultCode=]SQLCreateTable(DeviceID,"TableName","T emplate Name");//参数:// DeviceID:SQLConnct()产生的连接号。
// TableName:想要创建的数据库名。
//TemplateName:表格模板名。
//这里是:// 创建一个名为KingTable的新表,模板为table1:// SQLCreateTable(DeviceID, “KingTable”, “table1”);5. 表格模板的建立方法6 往表格中插入一条数据\\本站点\record1 = \\本站点\record1 +1;\\本站点\name = "liufuchun";\\本站点\age =\\本站点\age + 2;SQLInsert( DeviceID, "KingTable", "BIND1" );// 记录体BIND1已经和本站点的record name age 内存变量绑定在一起了// 将BIND1记录体插入到KingTable表格中。
组态软件操作指南 建立硬件系统和变量
![组态软件操作指南 建立硬件系统和变量](https://img.taocdn.com/s3/m/f902c51aed630b1c58eeb524.png)
本章内容新建设备定义基本变量定义数据模型变量概述本章主要讲解如何定义设备,如何定义变量。
本培训工程中用到的变量主要为基本变量与模型变量。
KingSCADA的采集系统是指负责和现场设备进行通讯,并采集现场数据和控制现场数据的模块,称之为采集器,也叫KingIOServer应用,它是一组独立的应用程序,依赖于驱动产品,通过驱动与IO设备进行通讯。
采集系统由通讯链路,设备,数据块组成。
链路:链路是指计算机通过什么途径和设备进行连接,链路类别:串口,以太网,GPRS,Modem,通信卡,采集卡,无链路。
设备:设备是通过串口、接口板等方式与KingSCADA的数据采集系统进行数据信息交换的外部数字设备,包括可编程逻辑控制器(PLC)、分布式控制系统(DCS)、回路控制器、远程终端单元(RTU)、智能仪表、板卡、变频器等等。
变量:变量是对应硬件设备具体通道或地址的标识,由设备监视和控制的,反映现场运行状况的参数信息,如:温度、压力、流量等,在其他系统有时被称为I/O变量。
第一节建立硬件系统新建设备第一步:在Windows桌面上点击“开始”→“所有程序”→“KingIOServer3.7”→“KingIOServer 工程设计器”选项,弹出工程设计器界面,该界面与Windows的资源管理器很相似,操作方式也基本相同。
打开KIO软件后,在“IOServer应用组”,右键菜单-选择“添加新IOServer应用”菜单,或者选择“文件”菜单→“添加新应用”命令,在弹出的“新建应用/工程”对话框,设置如下:图3-1打开IOServer和新建I/OServer应用对话框一个工程中可以建立多个IOServer应用,且IOServer应用可以脱离KingSCADA独立存在。
IOServer 应用分本地IOServer应用(KingSCADA与IOServer应用在同一台机器上)和远程IOServer应用(KingSCADA与IOServer应用不在同一台机器上),区别在于IOServer应用中的网络配置。
杰控脚本合集
![杰控脚本合集](https://img.taocdn.com/s3/m/31b34cda9ec3d5bbfd0a74d6.png)
杰控脚本合集一、运行数据库1. 打开运行数据库:bValue=RunSys.OpenDatabase(tm)如果仅读取运行数据库内容,可不打开运行数据库;□ tm为超时时间,单位为毫秒,取值范围在1000-5000之间为宜,取值18888时自动根据需求打开运行数据库;□ bValue为返回值,在超时时间内,数据库没被成功打开,返回0,否则返回1;例: n=RunSys.OpenDatabase(3000)If n=1 Then......RunSys.CloseDatabaseEnd If2. 关闭被打开的运行数据库:RunSys.CloseDatabase□与OpenDatabase配合使用;例: n=RunSys.OpenDatabase(1000)If n=1 Then......RunSys.CloseDatabaseEnd If3. 得到运行数据库中某变量的数值或状态:VarValue=RunSys.GetVarValue(VarType,VarName,VarIndex)□ VarType, 变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6,VA=7,VD=8);□ VarName, 变量名称,最大字符长度20;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarIndex得到变量值,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,则通过变量名称进行操作;□ VarValue,返回变量值或状态,当VarTye为AO/AR/VA时为浮点数值,当VarTye为DO/DR/VD时为0/1状态值;返回值为-1211.1024时,表示函数执行错误;例1: x=RunSys.GetVarValue(AI,"AI1",-1)例2: x=RunSys.GetVarValue(AI,"",10)例3: varIndex=RunSys.GetVarIndexFromVarName(AI,"VAR1")x=RunSys.GetVarValue(AI,"",varIndex)4. 得到某变量最后变化前的数值或状态:VarValue=RunSys.GetVarLastValue(VarType,VarName,VarIndex)□ VarType, 变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6,VA=7,VD=8);□ VarName, 变量名称,最大字符长度20;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarIndex得到变量值,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,则通过变量名称进行操作;□ VarValue,返回变量值或状态,当VarTye为AO/AR/VA时为浮点数值,当VarTye为DO/DR/VD时为0/1状态值;返回值为-1211.1024时,表示函数执行错误;例: x=RunSys.GetVarLastValue(AI,"AI1",-1)5. 修改某变量的数值或状态:RunSys.SetVarValue VarType,VarName,VarIndex,VarValue□ VarType, 变量类型(AO=2,AR=3,DQ=5,DR=6,VA=7,VD=8);□ VarName, 变量名称,最大字符长度20;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarIndex修改变量值,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,则通过变量名称进行操作;□ VarValue为要修改的数值或状态值,当VarTye为AO/AR/VA时为浮点数值,当VarTye为DO/DR/VD时为0/1状态值;例1: n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetVarValue AR,"AR1",-1,100RunSys.CloseDatabaseEnd If例2: n=RunSys.OpenDatabase(1000)If n=1 ThenvarIndex=RunSys.GetVarIndexFromVarName(AR,"AR1")RunSys.SetVarValue AR,"",varIndex,100RunSys.CloseDatabaseEnd If例3: n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetVarValue DR,"DR1",-1,1RunSys.CloseDatabaseEnd If6. 弹出窗口进行数值输入,并修改某变量数值或状态;RunSys.SetVarValueEx VarType,VarName,VarIndex□ VarType, 变量类型(AO=2,AR=3,DQ=5,DR=6,VA=7,VD=8);□ VarName, 变量名称,最大字符长度20;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarIndex修改变量值,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,通过变量名称进行操作;例: RunSys.SetVarValueEx AR,"AR1",-17. 得到某VT变量的文本内容:VarValue=RunSys.GetVttext(VarName,VarIndex)□ VarName, 变量名称,最大字符长度20;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarInde得到变量值,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,通过变量名称进行操作;□ VarValue为返回文本内容;例: s=RunSys.GetVtText("VT1",-1)8. 修改某VT变量的文本内容:RunSys.SetVTtext VarName,VarIndex,VarValue□ VarName, 变量名称,最大字符长度20;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarIndex修改变量值,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,通过变量名称进行操作;□ VarValue为修改文本内容;例1: n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetVTtext "VT1",-1,"ABC"RunSys.CloseDatabaseEnd If例2: n=RunSys.OpenDatabase(1000)If n=1 ThenvarIndex=RunSys.GetVarIndexFromVarName(VT,"VT1")RunSys.SetVTtext "",varIndex,"ABC"RunSys.CloseDatabaseEnd If例3: n=RunSys.OpenDatabase(1000)If n=1 Thens=RunSys.GetVtText("VT2",-1)RunSys.SetVTtext "VT1",-1,sRunSys.CloseDatabaseEnd If9. 弹出窗口进行文本输入,并修改某VT变量文本内容;RunSys.SetVTtextEx VarName,VarIndex□ VarName, 变量名称,最大字符长度20;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarIndex修改变量值,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,通过变量名称进行操作;例: RunSys.SetVTtextEx "VT1",-110. 直接从设备数据表中得到数值:x=RunSys.GetValueFromDevTable(DevNo,ElementNo,DataType,DataFmt)□ DevNo, 设备号(1-2000);□ ElementNo,单元号(0-255/511/1023);□ DataType, 数据类型:1 = Byte;2 = Word;3 = DWord;4 = DDWord;11 = B2W(x2,x1);12 = B2D(x4,x3,x2,x1);13 = B2W(x1,x2);14 = B2D(x1,x2,x3,x4);15 = W2D(x2,x1);16 = W2D(x1,x2);17 = W2W(xh,xl);18 = B2D(x3,x4,x1,x2);19 = B2D(x2,x1,x4,x3);20 = W2D(x12,x11,x22,x21);21 = W2D(x22,x21,x12,x11);22 = D2D(x(4,3,2,1));23 = D2D(x(3,4,1,2));24 = D2D(x(2,1,4,3));□ DataFmt,数据格式:1 = 整数;2 = 无符号整数;3 = 浮点数;4 = 最高位为符号位的整数;例: x=RunSys.GetValueFromDevTable(2,1,1,1)11. 直接修改设备数据表中数值:RunSys.SetValueToDevTable DevNo,ElementNo,DataType,DataFmt,Value□ DevNo, 设备号(1-2000);□ ElementNo,单元号(0-255/511/1023);□ DataType, 数据类型:1 = Byte;2 = Word;3 = DWord;4 = DDWord;11 = B2W(x2,x1);12 = B2D(x4,x3,x2,x1);13 = B2W(x1,x2);14 = B2D(x1,x2,x3,x4);15 = W2D(x2,x1);16 = W2D(x1,x2);17 = W2W(xh,xl);18 = B2D(x3,x4,x1,x2);19 = B2D(x2,x1,x4,x3);20 = W2D(x12,x11,x22,x21);21 = W2D(x22,x21,x12,x11);22 = D2D(x(4,3,2,1));23 = D2D(x(3,4,1,2));24 = D2D(x(2,1,4,3));□ DataFmt,数据格式:1 = 整数;2 = 无符号整数;3 = 浮点数;□ Value,修改值;例: n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetValueToDevTable 2,0,1,1,xRunSys.CloseDatabaseEnd If12. 直接从设备数据表中得到某位状态:bValue=RunSys.GetStatusFromDevTable(DevNo,ElementNo,BitNo,DataType) □ DevNo, 设备号(1-2000);□ ElementNo,单元号(0-255/511/1023);□ BitNo, 位号(0-7/15/31);□ DataType, 单元类型(1=Byte,2=Word,3=DWord);□ bValue, 返回状态(0/1);例: x=RunSys.GetStatusFromDevTable(2,1,10,1)13. 直接修改设备数据表某状态位:RunSys.SetStatusToDevTable DevNo,ElementNo,BitNo,DataType,n□ DevNo, 设备号(1-2000);□ ElementNo,单元号(0-255/511/1023);□ BitNo, 位号(0-7/15/31);□ DataType, 单元类型(1=Byte/2=Word/3=DWord);□ n, 修改值(0/1/2),n=2时进行取反操作;例: n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetStatusToDevTable 2,1,10,1,1RunSys.CloseDatabaseEnd If14. 启动/停止图形对象动态边框颜色变化:ShapeObj.EnableDynBorderColor objName,status□ objName为对象名称;□ status=0时停止动态颜色变化,status=1时启动动态颜色变化;例:ShapeObj.EnableDynBorderColor "AAA",115. 设置图形对象动态边框颜色变化所依据的变量:ShapeObj.SetVarForDynBorderColor objName,varType,varName□ objName为对象名称;□ varType为变量类型(AI=1,AO=2,AR=3,DI=4,DO=5,DR=6,VA=7,VD=8);□ varName为变量名称;例:ShapeObj.SetVarForDynBorderColor "AAA",AI,"AI1"16. 根据变量类型和名称得到变量索引号:varIndex=Runsys.GetVarIndexFromVarName(VarType,VarName)□ VarType, 变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6,VA=7,VD=8,VT=9); □ VarName, 变量名称,最大字符长度20;□ varIndex,变量索引号,错误时返回-1,否则返回大于0的值;例: varIndex=RunSys.GetVarIndexFromVarName(AI,"AI1")17. 激活某变量报警:RunSys.EnableVarAlarm VarType,VarName□ VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6);□ VarName,变量名称,最大字符长度20;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.EnableVarAlarm AI,"AI1"RunSys.CloseDatabaseEnd If18. 屏蔽某变量报警:RunSys.DisableVarAlarm VarType,VarName□ VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6);□ VarName,变量名称,最大字符长度20;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.DisableVarAlarm AI,"AI1"rRunSys.CloseDatabaseEnd If19.设置某变量的报警标志:RunSys.SetVarAlarmId VarType,VarName,AlarmId;□ VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6);□ VarName,变量名称,最大字符长度20,支持*通配符,操作成批变量,*必须为最后字符;□ AlarmId,报警标志,AlarmId=1允许报警,AlarmId=0禁止报警;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetVarAlarmId AI,"AI1",0RunSys.SetVarAlarmId AI,"AI2",1RunSys.SetVarAlarmId AI,"MT*",0RunSys.CloseDatabaseEnd If20. 激活某变量更新:RunSys.EnableVarScan VarType,VarName□VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6,VA=7,VD=8,Vt=9,CA=10,DOC=15);□ VarName,变量名称,最大字符长度20;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.EnableVarScan AI,"AI1"RunSys.CloseDatabaseEnd If21. 屏蔽某变量更新:RunSys.DisableVarScan VarType,VarName□VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6,VA=7,VD=8,Vt=9,CA=10,DOC=15);□ VarName,变量名称,最大字符长度20;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.DisableVarScan AI,"AI1"RunSys.CloseDatabaseEnd If22. 更改某模拟变量对应设备地址:RunSys.SetAXDevAddress VarType,VarName,VarIndex,DevNo,ElementNo□ VarType, 变量类型(1=AI、2=AQ、3=AR);□ VarName, 变量名称;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarInde操作变量,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,通过变量名称进行操作;□ DevNo,新设备号(1-2000),1=D1、2=D2、...□ ElementNo,新单元号(0-1023);例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetAXDevAddress AI,"AI1",-1,2,10RunSys.CloseDatabaseEnd If23. 更改某开关变量对应设备地址:RunSys.SetDXDevAddressVarType,VarName,VarIndex,DevNo,ElementNo,BitNo□ VarType, 变量类型(4=DI、5=DQ、6=DR);□ VarName, 变量名称;□ VarIndex,变量索引号,如果VarIndex>=0,则VarName不起作用,直接通过VarInde操作变量,可加快访问速度;通过函数GetVarIndexFromVarName可得到变量索引号,也可通过查看运行数据库而得到变量索引号;当VarIndex<0时,为无效变量索引号,通过变量名称进行操作;□ DevNo,新设备号(1-2000),1=D1、2=D2、...□ ElementNo,新单元号(0-1023);□ BitNo,新位号(0-31);例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetDXDevAddress DI,"DI1",-1,2,10,2RunSys.CloseDatabaseEnd If24. 弹出窗口,在线修改某变量报警参数:RunSys.SetVarAlarm VarType,VarName,-1□ VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DQ=5,DR=6);□ VarName,变量名称,如果VarName为空,则显示对话框选择而得到变量名;例:RunSys.SetVarAlarm AI,"AI1",-1RunSys.SetVarAlarm AI,"",-125. 得到某模拟变量报警设定值:fltValue=RunSys.GetVarAlarmValue(VarType,VarName,VarIndex,ValueType) □ VarType,变量类型(AI=1,AO=2,AR=3);□ VarName,变量名称;□ ValueType=1,返回低限报警值;ValueType=2,返回高限报警值;ValueType=3,返回超低限报警值;ValueType=4,返回超高限报警值;ValueType=5,返回增幅报警值;ValueType=6,返回降幅报警值;ValueType=7,返回报警死区'ValueType=8,返回报警允许状态;例:n=RunSys.OpenDatabase(1000)If n=1 Thenx=RunSys.GetVarAlarmValue(AI,"AI1",-1,2)RunSys.CloseDatabaseEnd If26. 修改某模拟变量报警设定值:RunSys.SetVarAlarm VarType,VarName,VarIndex,ValueType,AlarmValue □ VarType,变量类型(AI=1,AO=2,AR=3);□ VarName,变量名称;□ ValueType=1/11,修改低限报警值;ValueType=2/12,修改高限报警值;ValueType=3/13,修改超低限报警值;ValueType=4/14,修改超高限报警值;ValueType=5/15,修改增幅报警值;ValueType=6/16,修改降幅报警值;ValueType=7/17,修改报警死区'ValueType=8/18,修改报警允许状态;当ValueType>10,可存储到运行数据库中,否则下次启动时恢复到初值;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetVarAlarmValue AI,"AI1",-1,2,100.00RunSys.CloseDatabaseEnd If27. 得到某模拟变量量程设定值:x=RunSys.GetVarRangeValue(VarType,VarName,-1,RangeType)□ VarType,变量类型(AI=1,AO=2,AR=3,VA=7);□ VarName,变量名称;□ RangeType=1,返回变量低限;RangeType=2,返回变量高限;RangeType=3,返回最小实际值;RangeType=4,返回最大实际值;例:n=RunSys.OpenDatabase(1000)If n=1 Thenx=RunSys.GetVarRangeValue(AI,"AI1",-1,2)RunSys.CloseDatabaseEnd If28. 修改模拟变量或存档变量的某量程设定值:RunSys.SetVarRangeValue VarType,VarName,-1,RangeType,RangeValue □ VarType,变量类型(AI=1,AO=2,AR=3,VA=7,DOC=15);□ VarName,变量名称;□ RangeType=1,修改变量低限;RangeType=2,修改变量高限;RangeType=3,修改最小实际值;RangeType=4,修改最大实际值;RunSys.SetVarRangeValue AI,"AI1",-1,2,10029. 弹出窗口,修改模拟变量或存档变量的量程值:RunSys.SetVarRange VarType,VarName,-1□ VarType,变量类型(AI=1,AO=2,AR=3,DOC=15);□ VarName,变量名称,如果VarName为空,通过选择对话框得到变量名;例:RunSys.SetVarRange AI,"AI1",-130. 修改模拟变量或存档变量全部量程值:RunSys.SetVarRangeEx VarType,VarName,Vl,Vh,Vmin,Vmax,ToSave□ VarType,变量类型(AI=1,AO=2,AR=3,VA=7,DOC=15);□ VarName,变量名称;□ Vl,变量低限,Vh变量高限;Vmin,最小实际值,Vmax最大实际值;□ ToSave=1刷新到组态数据库;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetVarRangeEx AI,"AI1",0,300,0,1000,0RunSys.CloseDatabaseEnd If31. 弹出窗口,显示指定文本内容,维持数秒关闭;RunSys.ShowMsgWnd msgText,n□ msgText,显示提示文本,如文本内容为空,则关闭正显示的窗口;□ n,信息窗口显示停留时间,以秒为单位(36000>n>0),否则缺省为10秒;例:RunSys.ShowMsgWnd "启动设备",532. 弹出窗口,允许输入口令样式文本,并存储到某VT变量:RunSys.ShowPasswordWnd Title,VarName,-1□ Title, 窗口标题文本;□ VarName,VT变量名称;例:RunSys.ShowPasswordWnd "请输入口令:","VT1",-133. 弹出窗口,允许选择日期时间,并保存到某VT变量:RunSys.ShowDateTimeWnd VarName,-1□ VarName,VT变量名称;例:RunSys.ShowDateTimeWnd "VT1",-134. 屏蔽/激活Windows任务切换功能(包括任务栏、Alt+Tab、任务管理器等): RunSys.TaskKeyMgr bValue□ bValue=0屏蔽任务切换,bValue=1激活任务切换;例:RunSys.TaskKeyMgr 135. 开关某变量,即变量值为0则置为1,变量值为1则置为0:RunSys.VarOnOff VarType,VarName,-1□ VarType,变量类型(AO=2,AR=3,DQ=5,DR=6,VA=7,VD=8);□ VarName,变量名称;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.VarOnOff DR,"DR1",-1RunSys.CloseDatabaseEnd If36. 增加某模拟变量值:RunSys.Var_Add_n VarType,VarName,-1,n□ VarType,变量类型(AO=2,AR=3,VA=7);□ VarName,变量名称;□ n, 增加值;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.Var_Add_n AR,"AR1",-1,2RunSys.CloseDatabaseEnd If37. 减少某模拟变量值:RunSys.Var_Sub_n VarType,VarName,VarIndex,n□ VarType,变量类型(AO=2,AR=3,VA=7);□ VarName,变量名称;□ n, 减少值;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.Var_Sub_n AR,"AR1",-1,2RunSys.CloseDatabaseEnd If38. 脉冲某变量,即把变量置为1或某值,2-3秒后再复为0:RunSys.VarPulse VarType,VarName,-1RunSys.VarPulseEx VarType,VarName,-1,VarValue□ VarType, 变量类型(AO=2,AR=3,VA=7、DQ=5、DR=7、VD=8);□ VarName, 变量名称;□ VarValue,变量值,适用于AO/AR/VA变量;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.VarPulse DR,"DR1",-1RunSys.VarPulseEx AR,"AR1",-1,100RunSys.CloseDatabaseEnd If39. 把某设备号内容拷贝到其他某设备号:RunSys.CopyDevno n,a,n1,a1,l□把设备号n1(1-2000)中从a1(0-1023)开始的l个字节数据,拷贝到设备号n(1-2000)中从a(0-1023)开始的地方;□通过SetCopyDevnoMode函数可设置设备号拷贝的字节转换方式:RunSys.SetCopyDevnoMode modemode=0,不处理x->x;mode=1,x(1,2) -> x(2,1);mode=2,x(1,2,3,4) -> x(4,3,2,1);mode=3,x(1,2,3,4) -> x(3,4,1,2);mode=4,x(1,2,3,4) -> x(2,1,4,3);mode=5,x(1,2,3,4,5,6,7,8) -> x(2,1,4,3,6,5,8,7); mode=6,x(1,2,3,4,5,6,7,8) -> x(8,7,6,5,4,3,2,1); mode=7,x(1,2,3,4,5,6,7,8) -> x(7,8,5,6,3,4,1,2); mode=8,x(1,2,3,4,5,6,7,8) -> x(5,6,7,8,1,2,3,4); mode=9,x(1,2,3,4,5,6,7,8) -> x(6,5,8,7,2,1,4,3);例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetCopyDevnoMode 2RunSys.CopyDevno 2,0,3,0,100RunSys.CloseDatabaseEnd If40. 使脚本延时某段时间:RunSys.Sleep n□ n为延时毫秒数,取值为30-60000;例:RunSys.Sleep 3041. 得到某模拟无符号整形变量中某位状态:bValue=RunSys.GetVarBit(VarType,VarName,BitNo)□ VarType,变量类型(AI=1,AO=2,AR=3,VA=7);□ VarName,变量名称;□ BitNo, 位号(0-31);例:n=RunSys.OpenDatabase(1000)If n=1 Thenx=RunSys.GetVarBit(AR,"AR1",1)RunSys.CloseDatabaseEnd If42. 置位某模拟无符号整形变量中某位状态为1:RunSys.SetVarBit VarType,VarName,BitNo□ VarType,变量类型(AO=2,AR=3,VA=7);□ VarName,变量名称;□ BitNo, 位号(0-31);例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetVarBit AR,"AR1",1RunSys.CloseDatabaseEnd If43. 复位某模拟无符号整形变量中某位的状态为0:RunSys.ResetVarBit VarType,VarName,BitNo□ VarType,变量类型(AO=2,AR=3,VA=7);□ VarName,变量名称;□ BitNo, 位号(0-31);例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.ResetVarBit AR,"AR1",1RunSys.CloseDatabaseEnd If44. 取反某模拟无符号整形变量中某位的状态:RunSys.OnoffVarBit VarType,VarName,BitNo□ VarType,变量类型(AO=2,AR=3,VA=7);□ VarName,变量名称;□ BitNo, 位号(0-31);例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.OnoffVarBit AR,"AR1",1RunSys.CloseDatabaseEnd If45. 设置具有[动态扫描级别]属性设备号的扫描级别:RunSys.SetDevnoScanclass m,n□ m,设备号(2-2000);□ n,扫描级别(1-100),n越小扫描速度越快;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetDevnoScanclass 2,1RunSys.CloseDatabaseEnd If46. 向事件信息系统发送信息文本:RunSys.SendDebugInfo s□ s,要发送文本内容;例:RunSys.SendDebugInfo ""47. 得到某变量最近发生变化的时刻,即变化时标:strValue=RunSys.GetVarTimeStamp(VarType,VarName)□ VarType, 变量类型(AI=1,AO=2,AR=3,DI=4,DO=5,DR=6,VA=7,VD=8);□ VarName, 变量名称;□ strValue,返回时间串,格式为2008-08-08 12:11:00,错误时返回空字符串;例:n=RunSys.OpenDatabase(1000)If n=1 ThenstrValue=RunSys.GetVarTimeStamp(AI,"AI1")RunSys.CloseDatabaseEnd If48. 得到某变量发生改变的时刻,距当前时间的秒数:lValue=RunSys.GetVarTimeStampEx(VarType,VarName)□ VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DO=5,DR=6,VA=7,VD=8);□ VarName,变量名称;□ lValue, 整数返回值,错误时返回-1;例:lValue=RunSys.GetVarTimeStampEx(AI,"AI1")49. 得到某变量最近1次改变与上次发生改变之间的秒间隔:lValue=RunSys.GetVarTimeSpan(VarType,VarName)□ VarType,变量类型(AI=1,AO=2,AR=3,DI=4,DO=5,DR=6,VA=7,VD=8);□ VarName,变量名称;□ lValue, 整数返回值,错误时返回-1;例:lValue=RunSys.GetVarTimeSpan(AI,"AI1")50. 打开表格配方管理窗口;RunSys.OpenTableRecipexpos,ypos,toOpen,toUpload,toDownload,toSave,toSaveas,defaultRecipe □ xpos,ypos, 定位配方窗口的位置,分别为窗口的左上角坐标;□ toOpen=1, 允许打开配方列表;□ toUpload=1, 允许上载配方;□ toDownload=1, 允许下载配方;□ toSave=1, 允许保存配方;□ toSaveas=1, 允许另存配方;□ defaultRecipe,缺省配方名称;例:RunSys.OpenTableRecipe 100,100,1,1,1,1,1,""51. 把设备表中某设备号的某段字节单元,批量设置为指定内容:RunSys.SetDevTableByte devNo,startByte,endByte,setValue□ devNo, 设备号[1-2000];□ startByte,开始字节单元号[0-1023];□ endByte, 结束字节单元号[0-1023];□ setValue, 修改值,有3种数值类型如果setValue为0-255整数,则所有单元修改为相同值;如果setValue为以'STR:'开始的字符串,则把随后的字符串拷贝到连续单元中,如"STR:ABCDefg";如果setValue为以'HEX:'开始的字符串,则把随后的字符串转换为16进制再拷贝到连续单元中,如"HEX:01 03 00 00";例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetDevTableByte 1,0,100,2RunSys.SetDevTableByte 2,0,5,"STR:abcdef"RunSys.SetDevTableByte 3,0,7,"HEX:01 03 00 00 00 01 84 0A" RunSys.CloseDatabaseEnd If52. 把设备表中连续的多个设备号的某字节单元,批量设置为指定内容:RunSys.SetBatchDevnoBytestartDevno,endDevno,byteNo,setValue,setMode□ startDevno,开始设备号[1-2000];□ endDevno, 结束设备号[1-2000];□ byteNo, 字节单元号[0-1023];□ setValue, 修改值;□ setMode, 6种修改方式:setMode=0,使字节单元内容等于(=)修改值;setMode=1,使字节单元内容或(Or)修改值;setMode=2,使字节单元内容与(And)修改值;setMode=3,使字节单元内容异或(Xor)修改值;setMode=4,使字节单元内容加(+)修改值;setMode=5,使字节单元内容减(-)修改值;例:n=RunSys.OpenDatabase(1000)If n=1 ThenRunSys.SetBatchDevnoByte 2,10,0,1,0RunSys.CloseDatabaseEnd If53. 得到自开机以来经历的毫秒数;longValue=RunSys.GetTickCount()例:x=RunSys.GetTickCount()54. 得到操作系统的版本信息:n=RunSys.GetOSVersion()□ n为4字节长度的整数,4个字节分别代表:b1=主版本号,b2=次版本号,b3=SP主版本号,b4=SP次版本号;[b1=4,b2=0] - Windows NT 4.0[b1=5,b2=0] - Windows 2000[b1=5,b2=1] - Windows XP[b1=5,b2=2] - Windows Server 2003[b1=6,b2=0] - Windows Vista 或 Windows Server 2008[b1=6,b2=1] - Windows 7 或 Windows Server 2008 R2[b1=6,b2=2] - Windows 8 或 Windows Server 2012例:n = RunSys.GetOSVersion()b1= n/&H1000000b2= (n/&H10000) And &HFFb3= (n/&H100) And &HFFb4= n And &HFF55. 得到操作系统的名称:s=RunSys.GetOSName()□返回字符串,内容可能为"Windows 2000","Windows XP","Windows Server 2003","Windows 7","Windows 8","Windows Server 2008"等;56. 通知ADSL数据服务器主动发送变量包数据:RunSys.SendVarPackageFrmAdslSrv n1,n2□ n1为模拟变量数量(0-4096),n2为开关变量字节数(0-512)例(通知发送4个模拟变量,40个开关变量):RunSys.SendVarPackageFrmAdslSrv 4,557. 得到某报警当前状态:m=RunSys.GetAlarmStatus(n)□ n,报警编号(1-30000)□ m,报警状态,0=无报警,1=新报警,2=确认报警,3=恢复报警;例:m=RunSys.GetAlarmStatus(1)58. 得到处于某报警状态下的报警数量:n=RunSys.GetAlarmStatusCount(m)□ m,报警状态,0=无报警,1=新报警,2=确认报警,3=恢复报警;□ n,报警数量(1-30000)例:n=RunSys.GetAlarmStatusCount(1)59. 设置某类型变量中,变量名称符合条件的所有变量:RunSys.SetAllVarValue varType,varName,varValue□ varType, 变量类型(2=AO,3=AR,5=DO,6=DR,7=VA,8=VD,9=VT);□ varName, 变量名称条件,须在开始|中间|结尾包含通配符(*),例如"*_v1"和"P1_*";□ varValue,变量值;例:RunSys.SetAllVarValue VA,"*VA1",100RunSys.SetAllVarValue VA,"P1*",100RunSys.SetAllVarValue VA,"P1*VA1",100RunSys.SetAllVarValue VT,"*_VT1","test"60. 得到运行数据库函数错误代码:n=RunSys.GetErrorCode()n=0(成功),n>0(错误);61. 打开时间段配方管理窗口:RunSys.OpenTimeAreaRecipe fnfn为配方模板文件,具体格式及使用参考技术附件B2006062. 得到组态软件安装路径:path=RunSys.GetInstallPath()二、动态画面1. 打开并动态显示某画面文件:RunSys.OpenPicture FileName□ FileName为画面文件名;例:RunSys.OpenPicture "Draw1.drw"2. 关闭正在运行的某画面文件:RunSys.ClosePicture FileName□ FileName为画面文件名;例:RunSys.ClosePicture "Draw1.drw"3. 打印当前显示画面:RunSys.PrintCurrentPicture4. 浏览当前显示画面:RunSys.PreviewCurrentPicture5. 把当前显示画面存为位图文件,存储到<历史画面>目录下,文件名为计算机当前时间:RunSys.SaveCurrentPictureToBmp6. 允许向某个窗口发送WM_COPYDATA[dwData=10000]画面更新的消息:Picture.EnableSendUpdateMsg WindowTitle□ WindowTitle为接收消息的窗口标题;□不适用于子画面;□消息内容为17个字节,分别为画面窗口编号(1字节0-10)、被更新部分的左、上、右、底屏幕坐标,各为4个字节;例: Picture.EnableSendUpdateMsg "消息窗口标题"三、实时报表1. 实时报表任务被启动情况下,打印实时报表:RunSys.PrintDataReport FileName,0□ FileName指定报表的格式文件;例:RunSys.PrintDataReport "p1.rpt",02. 实时报表任务被启动情况下,浏览实时报表:RunSys.PreviewDataReport FileName,0□ FileName指定报表的格式文件;例:RunSys.PreviewDataReport "p1.rpt",03. 实时报表任务被启动情况下,输出实时报表内容到Excel文件:RunSys.DataReportToExcelFile FileName,0□ FileName指定报表的格式文件;Excel文件名称为当前时间;例:RunSys.DataReportToExcelFile "",0四、变量报警。
杰控第25章数据库操作
![杰控第25章数据库操作](https://img.taocdn.com/s3/m/17dbfef4f5335a8103d22082.png)
25.数据库操作序号 内容 页码25.1 数据查询 25-225.2 曲线查询 25-625.3 表格显示 25-1025.4 字段列表 25-1425.5 删除数据表记录 25-1725.6 数据库脚本编程 25-1825.7 存储过程脚本编程 25-1925.8 数据表平均统计 25-2025.9 数据表导出Excel 25-2125.10 ADO访问数据库 25-2225.11 查询数据表最近时间段记录 25-2325.12 获取数据表最近时间段统计值 25-2325.13 获取数据表某时间段字段总和 25-2425.14 分钟数据表生成小时和日数据表 25-2525.15 数据库动态增加数据表 25-2625.16 异步批量删除数据库记录 25-2625.17 异步批量修正数据库记录 25-2725.18 判断数据库文件尺寸,异步批量删除数据库记录 25-2725.19 查询数据表某月日平均值并通过Excel柱状图显示 25-2825.20 以可变时间间隔查询显示数据表记录 25-3025.21 设置数据查询组件查询时间间隔 25-3225.22 数据库增补记录 25-3325.23 通过触发器计算增加值 25-3425.24 脚本使用ADO访问数据库判断是否成功 25-3625.25 执行脚本备份SQL数据库 25-3725.26 脚本使用ADO执行存储过程 25-3725.27 得到数据表时间字段最早及最新日期 25-3825.28 查询月数据表(每月对应1个数据表) 25-3925.29 数据库转发 25-4125.30 使用脚本管理数据库 25-4625.1数据查询画面提供"数据查询"组件:组态对话框:执行<数据源>按钮,选择或定义数据源:[1]."控制面板->管理工具"中定义ODBC数据源;[2].远程数据源须输入用户名称、口令才允许访问;[3].执行<自定义数据源>按钮,定义DSN描述型数据源:[4].或直接输入DSN描述型数据源:数据库 数据源描述SQL Server Driver={SQL Server};Server=(local);Database=UserDatabase;Uid=;Pwd=;Access Driver={Microsoft Access Driver (*.mdb)};Dbq=c:\mydb.mdb;Uid=;Pwd=;Oracle Driver={Microsoft ODBC for Oracle};Server=192.168.1.100;Uid=;Pwd=; 数据表,必选项,选择存储查询记录的数据表或视图:时间字段,必选项,查询数据表所使用的时间字段:报表格式,可选项,预先制作并选择Crystal报表格式,将查询结果打印或浏览; 排序字段,可选项,将查询结果进行特殊排序;例1.根据f3字段升序排列:25.数据库操作数据查询组件脚本函数:1设置弹出式查询窗口显示位置UserDbSQLObj.SetWindowPosition objName,sx,sy 2设置弹出式查询窗口显示尺寸UserDbSQLObj.SetWindowSize objName,cx,cy 3显示弹出式查询窗口UserDbSqlObj.ShowWindow objName 4设置查询缺省时间长度UserDbSQLObj.SetTimeLen objName,len,unit 5设置或追加查询内容,或设置附加过滤条件 serDbSQLObj.SetQueryObject objName,desc 6设置查询窗口的选项UserDbSQLObj.SetWindowOptions objName,options工业自动化-花落忆无声。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
25.数据库操作序号 内容 页码25.1 数据查询 25-0125.2 曲线查询 25-0425.3 表格显示 25-0525.4 字段列表 25-0725.5 删除数据表内容 25-0825.6 数据库脚本编程 25-0925.7 存储过程脚本编程 25-1025.8 数据库记录平均统计 25-1025.9 把数据库记录导出到Excel中 25-1125.10 使用ADO访问数据库 25-1325.1数据查询提供了通过表格查看数据库内容的方法,用“数据查询”组件实现:增加一个组件对象,在设置对话框中添入数据库的有关信息,如下图所示:执行<ODBC数据源>按钮,通过出现的对话框来选择数据源(如FameView Userdata Source):执行<记录表>按钮,出现下面的对话框,其中列出数据源中所有数据表,从中选择要查询的记录集(如demo):此组件主要根据时间字段进行查询,执行<时间字段>按钮,出现下面的对话框,其中列出记录集中所有的字段,从中选择要使用的时间字段(如F3):如果希望把查询的结果进行打印或浏览,要先根据数据库利用Crystal水晶星建立报表格式,然后执行<报表格式>按钮,选择报表格式文件(*.rpt);用鼠标双击字段列表,会出现选择字段对话框,从中选择需要查询后显示的字段,此时不需要再选择时间字段;能自动的识别字段的类型,但要正确设定字段内容的字符长度;1个数据表中的字段数量要小于100;在查询显示表中,可能不希望直接显示字段的名称,请修改字段描述即可;用“Del”键可以从列表删除选错的字段;画面运行后,执行按钮查询,界面如下:如果不希望执行组件按钮来查询数据,而希望通过其他事件来执行,按照下列步骤来实现:(1)给按钮组件命名:选中组件,点击右键,弹出菜单,选择执行“对象属性”中的“脚本名称”,给对象命名,例如BTNOBJ;(2)隐藏按钮组件:选中组件,点击右键,弹出菜单,选择执行“隐藏对象”,使组件在运行画面显示时不可见:(3)编写脚本,然后被其他事件触发,例如在图标按钮中选择脚本执行,脚本内容如下:UserDbSQLObj.ShowWindow "BTNOBJ"25.2 曲线查询组态系统提供了通过曲线查看数据库内容的方法,用“曲线查询”组件实现:假设要查询的数据表的内容为;F1(罐号)F2(液位) F3(时间)1 10 2006-5-5 1:00:002 10 2006-5-5 1:00:001 100 2006-5-5 2:00:002 200 2006-5-5 2:00:001 110 2006-5-5 3:00:002 220 2006-5-5 3:00:00… … …增加一个组件对象,在设置对话框中添入数据库的有关信息,如下图所示:通过<数据源>按钮弹出对话框,选择ODBC数据源,如fameView userdata Source;通过<记录表>按钮弹出对话框,选择要查询的数据表,如demo;通过<时间字段>按钮弹出对话框,选择进行查询所依据的时间字段,如f3;通过<查询字段>按钮弹出对话框,选择进行分组查询所依据的字段;在<查询对象>中输入分组的方式,例如f1=1表示1#罐, f1=2表示2#罐;通过<曲线字段>按钮弹出对话框,选择并加入到曲线字段表中;画面运行后,执行按钮查询,界面如下:如果不希望执行组件按钮来查询数据,而希望通过其他事件来执行,按照下列步骤来实现:(1)给按钮组件命名:选中组件,点击右键,弹出菜单,选择执行“对象属性”中的“脚本名称”,给对象命名,例如BTNOBJ;(2)隐藏按钮组件:选中组件,点击右键,弹出菜单,选择执行“隐藏对象”,使组件在运行画面显示时不可见:(3)编写脚本,然后被其他事件触发,例如在图标按钮中选择脚本执行,脚本内容如下:SQLCurveObj.ShowWindow "BTNOBJ"25.3 表格显示组态系统提供了在线显示数据库内容的方法,通过“表格显示”组件实现:此组件可以在画面上以列表的方式直接显示某个数据库的内容,还可以与变量相关联;组态对话框如下:为组件命名,否则不能进行脚本操作,如“DBLIST”;执行<数据源>按钮,通过出现的对话框来选择数据库对应的数据源;执行<数据表>按钮,选择要显示的数据表,数据表中的字段数量要小于100:如果希望在列表中只显示数据表中的某部分数据,请<过滤条件>处填写缺省SQL语句,如F1>100;否则显示数据库中的所有记录;用鼠标双击字段列表,会出现选择字段对话框,从中选择需要查询后显示的字段,能自动的识别字段的类型,但要正确设定字段内容的字符长度;在查询显示表中,可能不希望直接显示字段的名称,请修改字段描述即可;用“Del”键可以从列表删除选错的字段;还提供了3组变量:增加变量、读取变量、修改变量;使系统变量(AI/AO/AR/DI/DO/DR/VA/VD /VT)与数据库之间建立联系;画面运行后,数据库列表界面如下:允许编写脚本操作数据库:要把增加变量组追加至数据库,请使用如下脚本:UserDbListObj.AddNewFromVarValue "DBLIST"要从数据库中读取第10个记录至读取变量组,请使用如下脚本:UserDbListObj.SetVarValueFromField "DBLIST",10要通过修改变量组修改数据库中的第10个记录,请使用如下脚本:UserDbListObj.EditFromVarValue "DBLIST",1025.4字段列表组态系统提供了在线选择数据库中某字段内容的方法,通过“字段列表”组件实现:此组件有以下功能:以选择框的方式供用户进行数据选择;选择框内容可以数据库中的某个字段的内容也可以显示手动输入的文本内容;选择的内容能够与变量关联;组态对话框如下:缺省列表,允许在其中手动输入多行文本(用回车换行),作为缺省的列表内容;关联数据库,设定数据源、数据表、使用字段、过滤条件,能够在画面运行时,把数据库某表中的某字段的部分记录显示添入到选择框中;过滤条件的格式为SQL查询语句,例如f3>1000;对应变量,在画面运行后,当使用选择框选择数据时,能够把所选择的内容对应到变量中:(1)索引变量可以是AO/AR/VA变量,对应的是选择框中当前文本的索引号,以0为基数;(2)数值变量可以是AO/AR/VA变量,对应的是把选择框中当前文本转换为浮点数后的数值;(3)文本变量可以是VT变量, 对应的是选择框中的当前文本;字段列表运行时的界面如下:允许用脚本更新选择框中的内容:更新数据选择框的内容DataboxObj.Update ObjName,OdbcName,TableName,FieldName,FieldType,Filter例:DataboxObj.Update "AAA","myODBC","myTable","myField",3,"f1>1000"得到当前数据选择框的文本内容n=DataboxObj.GetCurText(ObjName)例:n=DataboxObj.GetCurText("AAA")25.5 删除数据库内容某个数据库中存储了大量的数据,经过一段时间后,想把某个时间之前的数据删除;本节以例子的方式说明如何通过组态系统删除数据库中的某些数据;假设现有数据库,其ODBC数据源的名称为db1,其中有一个数据表名为T1,其中有一个日期时间字段为F4,根据F4来删除数据;增加2个文本变量(VT):VT1、VT2;在画面中各增加一个日期拾取器和时间拾取器,分别把内容保存在VT1和VT2中;再在画面中增加一个按钮,当执行按钮时,执行脚本来删除选择时间以前的数据;画面的界面如下:如果数据库的类型为Access,则脚本内容如下:'打开DB1,允许通过SQL访问SQLObj.OpenSQLConnect "DB1","",""'得到删除日期、时间s1=RunSys.GetVTtext("VT1",-1)s2=RunSys.GetVTtext("VT2",-1)'组成格式文本"Delete * From T1 Where F1<= #2002-1-1 0:0:0# "s="Delete * From T1 Where F4<= #" : s=s+s1 : s=s+" " : s=s+s2 : s=s+"#"'执行SQL语句,删除数据SQLObj.SQLExecute s'关闭DB1SQLObj.CloseSQLConnect如果数据库的类型为SQL Server,则脚本内容如下:'打开DB1,允许通过SQL访问SQLObj.OpenSQLConnect "DB1","",""'得到删除日期、时间s1=RunSys.GetVTtext("VT1",-1)s2=RunSys.GetVTtext("VT2",-1)'组成格式文本"Delete * From T1 Where F1<= ‘2002-1-1 0:0:0# ’s="Delete * From T1 Where F4<= ‘" : s=s+s1 : s=s+" " : s=s+s2 : s=s+"’"'执行SQL语句,删除数据SQLObj.SQLExecute sSQLObj.CloseSQLConnect往记录集中加入记录;UserDB.OpenConnect "My Database","",""UserDB.OpenRecordset "t1",2,2,2UserDB.AddNewUserDB.SetFieldValue "f1",7, "AAA"UserDB.SetFieldValue "f2",1,1000UserDB.UpdateUserDB.CloseRecordsetUserDB.CloseConnect得到数据库中字段的值;UserDB.OpenConnect "My Database","",""UserDB.OpenRecordset "t1",2,2,2UserDB.MoveFirstUserDB.Move(10)Value=UserDB.GetFieldValue "f2",1,1000UserDB.CloseRecordsetUserDB.CloseConnect执行SQL语句:SQLObj.OpenSQLConnect "TestDB","",""SQLObj.SQLExecute "DELETE FROM demo"SQLObj.CloseSQLConnect数据查询UserDB.OpenConnect "FameView UserData Source","",""UserDB.SetFilter "f1>=1000"UserDB.OpenRecordset "demo",2,2,2If UserDB.IsEmpty()=0 ThenretValue=UserDB.GetFieldValue("f2",4)End IfUserDB.CloseRecordsetUserDB.CloseConnect通过脚本编程可以执行数据库服务器端的存储过程;假设存储过程内容如下:CREATE PROCEDURE [test](@f1 [real], @f2 [real], @f3 [datetime], @f4 [real] output) AS INSERT INTO [UserDatabase].[dbo].[demo] ( [f1],[f2],[f3])VALUES ( @f1,@f2,@f3)if @@error=0set @f4=12.11elseset @f4=0.12GO过程调用如下:n=StoredProc.OpenConnect("FameView UserData Source","","")If n=1 ThenStoredProc.SetCommandText "test"StoredProc.SetInputParamCount 3StoredProc.SetInputParam 1,"f1",4,1.23StoredProc.SetInputParam 2,"f2",4,2.34StoredProc.SetInputParam 3,"f3",7,"2005-12-11 05:00:00"StoredProc.SetOutputParamCount 1StoredProc.SetOutputParam 1,"f4",4StoredProc.Executem=StoredProc.GetOutputValue(1)RunSys.SetVarValue VA,"%VA1",-1,mStoredProc.CloseConnectEnd If25.8 数据库记录平均统计把某个表中某天的数据求平均,存入另一个表中假设t1和t2有相同的结构,分别有3个字段:字段名称 类型F1 RealF2 RealF3 Datetime针对t1中近30天的数据,把每天的数据求平均,存入t2中,并删除t1中的数据;在SQL Server中编写存储过程test如下:CREATE PROCEDURE [test]asDeclare @n intDeclare @ct datetimeset @n=-30while @n<0beginset @ct=DATEADD(DAY,@n, GETDATE())INSERT INTO t1SELECT AVG(f1) AS f11, AVG(f2) AS F12, @ct AS F13FROM demoWHERE (YEAR(f3) = YEAR(@ct) AND (Month(f3) = MONTH(@ct) AND (Day(f3) = DAY(@ct)set @n=@n+1enddelete from demoGO在组态软件中调用过程的脚本如下:n=StoredProc.OpenConnect("FameView UserData Source","","")If n=1 ThenStoredProc.SetCommandText "test"StoredProc.ExecuteStoredProc.CloseConnectEnd If25.9 把数据库数据导出到Excel中'允许输入查询的年/月MyYear = InputBox("请输入查询年份","")MyMonth = InputBox("请输入查询月份","")MyDay = 1'检查时间是否合法If IsDate(MyMonth & "/" & MyDay & "/" & MyYear) = True ThenNOW_DATE = MyYear + "年" + MyMonth + "月"'得到开始时间StartTime = MyMonth & "/" & MyDay & "/" & MyYear & " 00:00:00"'得到结束时间If MyMonth < 12 ThenMyMonth = MyMonth + 1EndTime = MyMonth & "/" & MyDay & "/" & MyYear & " 00:00:00"ElseMyYear = MyYear + 1MyMonth = 1EndTime = MyMonth & "/" & MyDay & "/" & MyYear & " 00:00:00"End If'打开数据库及数据表demo,dt为时间字段UserDB.OpenConnect "FameView UserData Source","",""UserDB.SetFilter "dt>='"+StartTime+"' And dt<'"+EndTime+"'"UserDB.OpenRecordset "demo",2,2,2 '打开记录集;'检查查询内容是否为空If UserDB.IsEmpty()=0 Then'打开Excel文件Set ExcelObj = CreateObject("Excel.Application")ExcelObj.Visible = TrueExcelFile = "C:\组态系统\ExcelFile\test.xls"Intyexcel.Workbooks.Open ExcelFileExcelObj.Sheets("Sheet1").SelectExcelObj.Worksheets(1).SelectExcelObj.Cells(1,3) = NOW_DATE'导出记录到Excel中row=2While UserDB.IsEOF()=0ExcelObj.Cells(row,1).Value=UserDB.GetFieldValue("dt",8)ExcelObj.Cells(row,2).Value=UserDB.GetFieldValue("f1",4)ExcelObj.Cells(row,3).Value=UserDB.GetFieldValue("f2",4)row=row+1UserDB.MoveNextWendExcelObj.ActiveWorkbook.SaveAs "C:\组态系统\ExcelFile\"&NOW_DATE&".xls" ExcelObj.QuitSet ExcelObj=NothingEnd If'关闭数据库UserDB.CloseRecordsetUserDB.CloseConnectEnd If25.10 使用ADO访问数据库'与数据库(tempdb)建立连接Set conn = CreateObject("ADODB.Connection")strConn="Driver={SQL Server};Server=(local);Database=tempdb;Uid=sa;Pwd=;" conn.Open strConn'打开记录集(t1)Set rs= CreateObject("ADODB.Recordset")strSQL="SELECT * FROM t1"rs.Open strSQL,conn,2,2'添加记录rs.AddNewrs("f1")="222"rs("f2")=222rs.Update'得到记录f1=rs("f1")f2=rs("f2")'关闭连接与记录集rs.Closeconn.CloseSet rs=NothingSet conn=Nothing。