基于组态王研华板的数据采集应用 - 图文

更新时间:2023-03-11 11:16:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

基于组态王研华板的数据采集

系统应用

各种计算机测控系统中,PC插卡式是最基本最廉价的构成形式。它充分利用了PC计算机的机箱、总线、电源及软件资源。本章以研华(中国)公司生产的PCI-1710HG多功能数据采集卡为例,详细介绍数据采集卡的软、硬件安装过程,并以此为基础,对基于板卡的模拟量输入/输出、开关量输入/输出程序的设计过程进行详细的描述。

5.1 基于板卡的计算机测控系统的组成

基于板卡的计算机测控系统的组成如图5-1所示,它可分为硬件和软件两大部分。

传感器被控对象执行机构传感器执行机构信号调理器驱动电路信号调理器驱动电路模拟量输入板卡模拟量输出板卡数字量输入板卡数字量输出板卡计算机主机人机设备通信接口应用程序 图5-1 基于板卡的测控系统组成框图

5.1.1 测控硬件子系统

1.传感器

传感器的作用是把非电物理量(如温度、压力、速度等)转换成电压或电流信号。例如,使用热电偶可以获得随着温度变化而变化的电压信号,转速传感器可以把转速转换为电脉冲信号。

2.信号调理器

信号调理器(电路)的作用是对传感器输出的电信号进行加工和处理,转换成便于输送、显示和记录的电信号(电压或电流)。常见的信号调理电路有电桥电路、调制/解调电路、滤波电路、放大电路、线性化电路、A/D转换电路及隔离电路等。

例如,传感器输出信号是微弱的,就需要放大电路将微弱信号加以放大,以满足过程通道的要求;为了与计算机接口方便,需要A/D转换电路将模拟信号变换成数字信号等。

如果信号调理电路输出的是规范化的标准信号(如4~20mA、1~5V等),这种信号调

组态软件数据采集与串口通信测控应用实战

理电路称为变送器。在工业控制领域,常常将传感器与变送器做成一体,统称为变送器。变送器输出的标准信号一般送往智能仪表或计算机系统。

3.输入输出板卡

应用IPC对工业现场进行控制,首先要采集各种被测量,计算机对这些被测量进行一系列处理后,将结果数据输出。计算机输出的数字量还必须转换成可对生产过程进行控制的量。因此,构成一个工业控制系统,除了IPC主机外,还需要配备各种用途的I/O接口产品,即I/O板卡。

常用的I/O板卡包括模拟量输入/输出(AI/AO)板卡、数字量(开关量)输入/输出(DI/DO)板卡、脉冲量输入/输出板卡及混合功能的接口板卡等。

各种板卡是不能直接由计算机主机控制的,必须由I/O接口来传送相应的信息和命令。I/O接口是主机与板卡和外围设备进行信息交换的纽带。目前绝大部分I/O接口都是采用可编程接口芯片,它们的工作方式可以通过编程设置。

常用的I/O接口有并行接口、串行接口等。 4.执行机构

它的作用是接受计算机发出的控制信号,并把它转换成执行机构的动作,使被控对象按预先规定的要求进行调整,保证其正常运行。生产过程按预先规定的要求正常运行,即控制生产过程。

常用的执行机构有各种电动、液动及气动开关,电液伺服阀,交直流电动机,步进电机,各种有触点和无触点开关,电磁阀等。在系统设计中需根据系统的要求来选择。

5.驱动电路

要想驱动执行机构,必须具有较大的输出功率,即向执行机构提供大电流、高电压驱动信号,以带动其动作。另一方面,由于各种执行机构的动作原理不尽相同,有的用电动,有的用气动或液动,如何使计算机输出的信号与之匹配,也是执行机构必须解决的重要问题。因此,为了实现与执行机构的功率配合,一般都要在计算机输出板卡与执行机构之间配置驱动电路。

6.计算机主机

它是整个计算机控制系统的核心。主机由CPU、存储器等构成。它通过由过程输入通道发送来的工业对象的生产工况参数,按照人们预先安排的程序自动地进行信息处理、分析和计算,并作出相应的控制决策或调节,以信息的形式通过输出通道,及时发出控制命令,实现良好的人机联系。目前采用的主机有PC机及工业PC机(IPC)等。

7.外围设备

主要是为了扩大计算机主机的功能而配置的。它用来显示、存储、打印、记录各种数据,包括输入设备、输出设备和存储设备。常用的外围设备有打印机、记录仪、图形显示器(CRT)、外部存储器(软盘、硬盘、光盘等)、记录仪、声光报警器等。 8.人机联系设备

操作台是人机对话的纽带。计算机向生产过程的操作人员显示系统运行状态和运行参数,发出报警信号;生产过程的操作人员通过操作台向计算机输入和修改控制参数,发出各种操作命令;程序员使用操作台检查程序;维修人员利用操作台判断故障等。

– 146 –

第5章 基于板卡的测控系统及其典型应用实例

9.网络通信接口

对于复杂的生产过程,通过网络通信接口可构成网络集成式计算机控制系统。系统采用多台计算机分别执行不同的控制功能,既能同时控制分布在不同区域的多台设备,又能实现管理功能。

数据采集硬件的选择要根据具体的应用场合并考虑到自己现有的技术资源。

5.1.2 测控软件子系统

软件使PC和数据采集硬件形成了一个完整的数据采集、分析和显示系统。没有软件,数据采集硬件是毫无用处的——或者使用比较差的软件,数据采集硬件也几乎无法工作。

大部分数据采集应用实例都使用了驱动软件。软件层中的驱动软件可以直接对数据采集硬件的寄存器编程,管理数据采集硬件的操作并把它和处理器中断,将DMA和内存这样的计算机资源结合在一起。驱动软件隐藏了复杂的硬件底层编程细节,为用户提供了容易理解的接口。

随着数据采集硬件、计算机和软件复杂程度的增加,好的驱动软件就显得尤为重要。合适的驱动软件可以最佳地结合灵活性和高性能,同时还能极大地降低开发数据采集程序所需的时间。

为了开发出用于测量和控制的高质量数据采集系统,用户必须了解组成系统的各个部分。在所有数据采集系统的组成部分中,软件是最重要的。这是由于插入式数据采集设备没有显示功能,软件是您和系统的惟一接口。软件提供了系统的所有信息,您也需要通过它来控制系统。软件把传感器、信号调理、数据采集硬件和分析硬件集成为一个完整的多功能数据采集系统。

组态软件Kingview(即组态王)是目前国内具有自主知识产权、市场占有率相对较高的组态软件。组态王运行于Microsoft Windows 9x/NT/XP平台,主要特点:支持真正客户/服务器和Internet/Intranet浏览器技术,适应各种规模的网络系统,支持分布式网络开发;可直接插入第三方ActiveX控件;可以导入导出ODBC数据库;组态王既是OPC客户,又是OPC服务器;允许Visual Basic、Visual C++直接访问组态王等。

组态王的应用领域几乎囊括了大多数行业的工业控制,采用了多线程、COM组件等新技术,实现了实时多任务,软件运行可靠。

5.1.3 测控系统的特点

随着计算机和总线技术的发展,越来越多的科学家和工程师采用基于PC的数据采集系统来完成实验室研究和工业控制中的测试测、量任务。

基于PC的DAQ系统(简称PCs)的基本特点是,输入/输出装置为板卡的形式,并将板卡直接与个人计算机的系统总线相连,即直接插在计算机主机的扩展槽上。这些输入/输出板卡往往按照某种标准由第三方批量生产,开发者或用户可以直接在市场上购买,也可以由开发者自行制作。一块板卡的点数(指测控信号的数量)少的有几点,多的可达24点、32点甚至更多。

– 147 –

组态软件数据采集与串口通信测控应用实战

5.2 PCI-1710HG多功能板卡的安装

5.2.1 PCI-1710HG多功能板卡介绍

PCI-1710HG是一款功能强大的低成本多功能PCI总线数据采集卡,如图5-2所示。其先进的电路设计使得它具有更高的质量和更多的功能,这其中包含5种最常用的测量和控制功能:16路单端或8路差分模拟量输入、12位A/D转换器(采样速率可达100kHz)、2路12位模拟量输出、16路数字量输入、16路数字量输出及计数器/定时器功能。

PCI-1710HG多功能板卡的主要特性如下。 (1)单端或差分混合的模拟量输入。

PCI-1710HG有一个自动通道/增益扫描电路。该电路能代替软件控制采样期间多路开关的切换。卡上的SRAM存储了单端和差分输入来完成多通道的高速采样(可达100kHz)。

(2)卡上FIFO存储器。

PCI-1710HG卡上有一个FIFO(先入先出)缓冲器,它能存储4KB的A/D采样值。当FIFO半满时,PCI-1710HG会产生一个中断。

(3)卡上可编程计数器。

PCI-1710HG提供了可编程的计数器,用于为A/D变换提供触发脉冲。计数器芯片8254或与8254兼容的芯片,它包含3个16位的10MHz时钟的计数器。

(4)支持即插即用功能。

PCI-1710HG完全符合PCI规格Rev2.1标准,支持即插即用。在安装插卡时,用户不需要设置任何调线和DIP拨码开关,所有与总线相关的配置,比如基地址、中断等均由即插即用功能完成。

图5-2 PCI-1710HG多功能卡

每个通道不同的增益值及配置。这种设计能让您对不同通道使用不同的增益,并可自由组合

– 148 –

第5章 基于板卡的测控系统及其典型应用实例

5.2.2 用PCI-1710HG多功能板卡组成的测控系统

用PCI-1710HG板卡构成完整的测控系统还需要接线端子板和通信电缆,如图5-3所示。电缆采用PCL-10168型,如图5-4所示。是两端针型接口的68芯SCSI-II电缆,用于连接板卡与ADAM-3968接线端子板。该电缆采用双绞线,并且模拟信号线和数字信号线是分开屏蔽的,这样能使信号间的交叉干扰降到最小,并使EMI/EMC问题得到了最终的解决。接线端子板采用ADAM-3968型,如图5-5所示,是DIN导轨安装的68芯SCSI-II接线端子板,用于各种输入输出信号线的连接。

图5-3 PCI-1710HG产品的成套性

图5-4 PCL-10168电缆

图5-5 ADAM-3968接线端子板

用PCI-1710HG板卡构成的控制系统框图如图5-6所示。

使用时用PCL-10168电缆将PCI-1710HG板卡与ADAM-3968接线端子板连接,这样PCL-10168的68个针脚和ADAM-3968的68个接线端子一一对应。

PCI1710HG多功多能功卡能卡PCI 1710HG 工业生产对象传感器信号调理器接线端子板电缆PCI总线插槽计算机执行机构驱动电路图5-6 基于PCI-1710板卡的控制私系统框图

接线端子板各端子的位置及功能如图5-7所示,信号描述如表5-1所示。

– 149 –

组态软件数据采集与串口通信测控应用实战

AI0 68 AI2 67 AI4 66 AI6 65 AI8 64 AI10 63 AI12 62 AI14 61 AIGND 60 AO0_REF 59 AO0_OUT 58 AOGND 57

DI0 56 DI2 55 DI4 54 DI6 53 DI8 52 DI10 51 DI12 50 DI14 49 DGND 48 DO0 47 DO2 46 DO4 45 DO6 44 DO8 43 DO10 42 DO12 41 DO14 40 DGND 39 CNT0_CLK 38 CNT0_OUT 37 CNT0_GATE 36

+12V 35 34 AI1 33 AI3 32 AI5 31 AI7 30 AI9 29 AI11 28 AI13 27 AI15 26 AIGND 25 AO0_REF 24 AO1_OUT 23 AOGND 22 DI1 21 DI3 20 DI5 19 DI7 18 DI9 17 DI11 16 DI13 15 DI15 14 DGND 13 DO1 12 DO3 11 DO5 10 DO7 9 DO9 8 DO11 7 DO13 6 DO15 5 DGND

4 PACER_OUT 3 TRG_GATE 2 EXT_TRG 1 +5V

图5-7 ADAM-3968接线端子板信号端子位置及功能

表5-1 信 号 名 称 AI < 0~15 > AIGND AO0_REF AO1_REF AO0_OUT AO1_OUT AOGND DI < 0~15 > DO < 0~15 > DGND CNT0_CLK CNT0_OUT CNT0_GATE – 150 –

- AOGND AOGND - DGND DGND - DGND DGND DGND ADAM-3968接线端子板各端子信号功能描述 参 考 端 AIGND - Input Output - Input Output - Input Output Input 方 向 Input 模拟量输入地 模拟量输出通道0/1外部基准电压输入端 模拟量输出通道:0/1 模拟量输出地 数字量输入通道:0~15 数字量输出通道:0~15 数字地(输入或输出) 计数器0通道时钟输入端 计数器0通道输出端 计数器0通道门控输入端 描 述 模拟量输入通道:0~15 第5章 基于板卡的测控系统及其典型应用实例

续表

信 号 名 称 PACER_OUT TRG_GATE EXT_TRG +12V +5V 参 考 端 DGND DGND DGND DGND DGND 方 向 Output Input Input Output Output 定速时钟输出端 A/D外部触发器门控输入端 A/D外部触发器输入端 +12V直流电源输出 +5V直流电源输出 描 述 5.2.3 PCI-1710HG板卡设备的安装

首先进入研华公司官方网站www.advantech.com.cn找到并下载下列程序:PCI1710.exe、DevMgr.exe、PortIO.exe、All_Examples.exe、Utility.exe等。

1.安装设备驱动程序

在测试板卡和使用研华驱动编程之前必须首先安装研华设备管理程序Device Manager和32位DLL驱动程序。

(1)首先执行DevMgr.exe程序,根据安装向导完成配置管理软件的安装。 (2)接着执行PCI1710.exe程序,按照提示完成驱动程序的安装。

(3)安装完Device Manager后,相应的设备驱动手册Device Driver’s Manual也会自动安装。有关研华32位DLL驱动程序的函数说明、例程说明等资料在此获取。快捷方式的位置为:开始\\程序\\Advantech Automation\\Device Manager\\Device Driver’s manual。

2.安装硬件

(1)关闭计算机电源,打开机箱,将PCI-1710HG板卡正确地插到一空闲的PCI插槽中,如图5-8所示,检查无误后合上机箱。

注意,在用手持板卡之前,请先释放手上的静电(例如,通过触摸计算机机箱的金属外壳释放静电),不要接触易带静电的材料(如塑料材料),手持板卡时只能握它的边沿,以免手上的静电损坏面板上的集成电路或组件。

图5-8 PCI-1710HG板卡安装

– 151 –

组态软件数据采集与串口通信测控应用实战

(2)重新开启计算机,进入Windows XP系统。首先出现“找到新的硬件向导”对话框,选择“自动安装软件”项,然后单击“下一步”按钮,计算机将自动完成Advantech PCI-1710HG Device驱动程序的安装。

系统自动地为PCI板卡设备分配中断和基地址,用户无需关心。

一些其他公司的PCI设备一般都会提供相应的.inf文件,用户可以在安装板卡的时候指定相应的.inf文件给安装程序。

(3)检查板卡是否安装正确。右击“我的电脑”图标,单击“属性”项,弹出“系统属性”对话框,选中“硬件”项,单击“设备管理器”按钮,进入“设备管理器”画面。若板卡安装成功后会在设备管理器列表中出现PCI-1710HG的设备信息,如图5-9所示。

(4)从“资源”选项卡中,可获得计算机分配给板卡的地址输入输出范围:C000-C0FF,其中首地址为C000,分配的中断号为22,如图5-10所示。

图5-9 设备管理器中的板卡信息

图5-10 板卡资源信息界面

3.配置板卡

在测试板卡和使用研华驱动编程之前必须首先对板卡进行配置,通过研华板卡配置软件Device Manager来实现。

(1)从开始菜单\\所有程序\\Advantech Automation\\Device Manager打开设备管理程序Advantech Device Manager,如图5-11所示。

当用户的计算机上已经安装好某个产品的驱动程序后,设备管理软件支持的设备列表前将没有红色叉号,说明驱动程序已经安装成功。例如,图5-11中Supported Devices列表的Advantech PCI-1710/L/HG/HGL前面就没有红色叉号,选中该板卡,单击“Add”按钮,该板卡信息就会出现在Installed Devices列表中。

PCI总线的插卡插好后计算机操作系统会自动识别,在Device Managerde的Installed Devices栏中My Computer下会自动显示出所插入的器件,这一点和ISA总线的板卡不同。

(2)单击“Setup”按钮,弹出“PCI-1710HG Device Setting”对话框,如图5-12所示。在对话框中可以设置A/D通道是单端输入还是差分输入,可以选择两个D/A转换输出通道通

– 152 –

第5章 基于板卡的测控系统及其典型应用实例

用的基准电压来自外部还是内部,也可以设置基准电压的大小(0~5V还是0~10V),设置好后,单击“OK”按钮即可。

图5-11 配置板卡界面

图5-12 板卡A/D、D/A通道配置界面

到此,PCI-1710HG数据采集卡的硬件和软件已经安装完毕,可以进行板卡测试了。 4.板卡测试

可以利用板卡附带的测试程序对板卡的各项功能进行测试。 运行设备测试程序:在研华设备管理程序Advantech Device Manager对话框中单击“Test”按钮,出现“Advantech Device Test”对话框,通过不同选项卡可以对板卡的“Analog Input”、“Analog Output”、“Digital Input”、“Digital Output”、“Counter”等功能进行测试。

(1)模拟量输入功能测试。

选择“Analog Input”选项卡,如图5-13所示。

图5-13 模拟量输入功能测试界面

– 153 –

组态软件数据采集与串口通信测控应用实战

测试界面说明。

? Channel No:模拟量输入通道号(0~16)。 ? Input range:输入电压范围选择。

? Analog input reading:模拟量输入通道读取的电压数值。 ? Channel mode:通道设定模式。 ? Sampling period:采样时间间隔。

测试时可用PCL-10168电缆将PCI-1710HG板卡与ADAM-3968接线端子板连接,这样PCL-10168的68个针脚就和ADAM-3968的68个接线端子一一对应,可通过将输入信号连接到接线端子来测试PCI-1710HG的管脚。

例如,在单端输入模式下,测试通道1,需将待测信号接至通道1所对应接线端子的34(AI1)与60(AIGND)管脚,这时在通道1对应的Analog input reading框中将显示输入信号的电压值。

(2)模拟量输出功能测试。

选择“Analog Output”选项卡,如图5-14所示。

图5-14 模拟量输出功能测试界面

两个模拟输出通道可以通过软件设置选择输出正弦波、三角波、方波,也可以设置输出波形频率以及输出电压幅值。

例如,要使通道0输出4.5V电压,在“Manual Output”中设置输出值为4.5V,单击“Out”按钮,即可在管脚58(AO0_OUT)与57(AOGND)之间输出4.5V电压,这个值可用万用表测得。

(3)数字量输入功能测试。

选择“Digital Input”选项卡,如图5-15所示。

用户可以方便地通过数字量输入通道指示灯的颜色,得到相应数字量输入通道输入的是低电平还是高电平(红色为高,绿色为低)。

例如,将通道0对应管脚DI0与数字地DGND短接,则通道0对应的状态指示灯(Bit0)变绿;在DI0与数字地之间接入+5V电压,则指示灯变红。

– 154 –

组态软件数据采集与串口通信测控应用实战

果路径或文件夹不存在,请创建。

(3)单击“下一步”按钮,出现“新建工程向导之三工程名称和描述”对话框。 在对话框中输入工程名称:AI(必需,可以任意指定);在工程描述中输入:模拟电压输入(可选),如图5-19所示。

图5-19 创建工程界面

(4)单击“完成”按钮,新工程建立,单击“是”按钮,确认将新建的工程设为组态王当前工程,此时组态王工程管理器中出现新建的工程。

(5)双击新建的工程名,出现加密狗未找到“提示”对话框,选择“忽略”项,出现演示方式“提示”对话框,单击“确定”按钮,进入工程浏览器对话框。

2.制作图形画面

画面名称:模拟量输入。

执行菜单“图库\\打开图库”命令,为图形画面添加一个仪表对象,2个指示灯对象。 利用开发系统工具箱为图形画面添加一个“实时趋势曲线”控件。

利用开发系统工具箱为图形画面添加4个文本对象:标签“当前电压值”、当前电压值显示文本“000”,标签“上限指示灯”和“下限指示灯”。

设计的画面如图5-20所示。

图5-20 图形画面

3.定义板卡设备

? 在组态王工程浏览器的左侧选择“设备”中的“板卡”,在右侧双击“新建…”,运行

– 160 –

第5章 基于板卡的测控系统及其典型应用实例

“设备配置向导”。

(1)选择智能模块\\研华\\YHPCI1710\\YHPCI1710,如图5-21所示。

(2)单击“下一步”按钮,给要安装的设备指定唯一的逻辑名称,如:PCI-1710HG。 (3)单击“下一步”按钮,给要安装的设备指定地址:C000(与板卡所在插槽的位置有关)。

图5-21 选择板卡设备界面

(4)单击“下一步”按钮,不改变通信参数。 (5)单击“下一步”,显示所安装设备的所有信息。

(6)请检查各项设置是否正确,确认无误后,单击“完成”按钮。

设备定义完成后,用户可以在工程浏览器的右侧看到新建的外部设备 “PCI1710”。 在左侧看到设备逻辑名称“PCI1710HG”。在定义数据库变量时,用户只要把I/O变量连接到这台设备上,它就可以和组态王交换数据了。

4.定义变量

? 在工程浏览器的左侧树形菜单中选择“数据库\\数据词典”,在右侧双击“新建”图标,弹出“定义变量”对话框。

(1)定义变量“模拟量输入”。

变量类型选I/O实数,变量的最小值为0、最大值为5(按输入电压范围0~5V确定)。 定义I/O实数变量时,最小原始值、最大原始值的设置是关键。它们是根据采集板卡的电压输入范围和A/D转换位数确定的。

因采用的PCI-1710HG板卡模拟电压输入范围是-5~+5V,A/D是12位,因此计算机采样值为212-1=4095,即-5V对应0,+5V对应4095。电压与采样值成线性关系,因为电位器的输出电压范围是0~5V,那么变量属性中的最小原始值应为2048,最大原始值为4095。

连接设备选PCI-1710HG(前面已定义),电位器的输出电压接板卡AI0通道,故寄存器为AD0;数据类型选USHORT(注:Kingview 6.0版数据类型选UINT);读写属性选只读。

变量“模拟量输入”的定义如图5-22所示。

– 161 –

组态软件数据采集与串口通信测控应用实战

图5-22 定义模拟量输入I/O实数变量界面

(2)定义变量“上限灯”、“下限灯”。变量类型选内存离散,初始值选关,如图5-23所示。

图5-23 定义内存离散变量界面

5.建立动画连接

(1)建立仪表对象的动画连接。

双击画面中仪表对象,弹出“仪表向导”对话框,单击变量名文本框右边的?号按钮,出现“选择变量名”对话框。

选择已定义好的变量名“模拟量输入”,单击“确定”按钮,仪表向导对话框变量名文本框中出现“\\\\本站点\\模拟量输入”,仪表表盘标签改为(V),填充颜色设为白色,其他默认,如图5-24所示。

(2)建立实时趋势曲线对象的动画连接。

双击画面中实时趋势曲线对象。在曲线定义选项中,单击曲线1文本框右边的?号按钮,选择已定义好的变量“模拟量输入”,并设置其他参数值,如图5-25所示。

– 162 –

第5章 基于板卡的测控系统及其典型应用实例

图5-24 仪表对象动画连接界面

图5-25 实时趋势曲线对象动画连接——曲线定义界面

在“标识定义”选项卡中,去掉“标识Y轴”项的选取,设置时间轴长度为2min,如图5-26所示。

图5-26 实时趋势曲线对象动画连接——标识定义界面

– 163 –

组态软件数据采集与串口通信测控应用实战

(3)建立当前电压值显示文本对象动画连接。 双击画面中当前电压值显示文本对象“000”,出现动画连接对话框。将“模拟值输出”属性与变量“模拟量输入”连接,输出格式:整数1位,小数1位,如图5-27所示。

图5-27 当前电压值显示文本对象动画连接界面

(4)建立上限灯、下限灯对象动画连接。

分别双击画面中指示灯对象,将其与变量“上限灯”、“下限灯”连接并设置闪烁条件:大于等于3.5V上限灯闪烁,小于等于0.5V下限灯闪烁,如图5-28所示。

(5)建立按钮对象的动画连接。 双击按钮对象“关闭”,出现动画连接对话框,如图5-29所示。选择命令语言连接功能,单击“弹起时”按钮,在“命令语言”编辑栏中输入以下命令:“exit(0);”。

图5-28 仪表对象动画连接界面

图5-29 “关闭”按钮对象动画连接界面

6.编写命令语言

? 在工程浏览器左侧树形菜单中双击命令语言“应用程序命令语言”项,出现“应用程序命令语言”编辑对话框,在“运行”时选项卡编辑框中输入报警程序,如图5-30所示。

– 164 –

第5章 基于板卡的测控系统及其典型应用实例

图5-30 编写应用程序命令语言界面

7.调试与运行

? 存储:设计完成后,在开发系统“文件”菜单中执行“全部存”命令将设计的画面和程序全部存储。

? 配置主画面:在工程浏览器中,单击快捷工具栏上“运行”按钮,出现“运行系统设置”对话框。单击“主画面配置”选项卡,选中制作的图形画面名称“模拟量输入”,单击“确定”按钮即将其配置成主画面。

? 运行:在工程浏览器中,单击快捷工具栏上“VIEW”按钮启动运行系统。 转动电位器旋钮,改变其输出电压(范围是0~5V),线路中AI指示灯亮度随之变化。同时,程序画面文本对象中的数字、仪表对象中的指针、实时趋势曲线控件中的曲线都将随电位器输出电压变化而变化。

当测量电压小于等于或大于等于设定下限电压值(0.5V)或上限电压值(3.5V)时,程序画面中相应指示灯变换颜色并闪烁。

程序运行画面如图5-31所示。

图5-31 程序运行画面

– 165 –

组态软件数据采集与串口通信测控应用实战

5.4.6 Kingview与Visual Basic之间动态数据交换

1.Kingview作为服务程序向Visual Basic应用程序提供数据

Kingview通过板卡驱动程序从下位机采集数据,Visual Basic应用程序又向Kingview请求数据。数据流向如图5-32所示。

下位机 驱动程序 组态王 Visual Basic应用程序 图5-32 数据流向图

建立Kingview工程项目的步骤如下。 (1)建立新项目。

工程名称:VBDDE1;工程描述:Kingeiew向Visual Basic应用程序传递数据。 (2)定义板卡设备。

选择设备→板卡→新建→智能模块→研华→YHPCI-1710→YHPCI-1710。 设备逻辑名称为PCI-1710HG;设备地址为C000。

(3)定义I/O变量fromViewtoVB,变量类型选I/O实数,寄存器设为AD0,数据类型选USHORT,读写属性选“只读”;选中“允许DDE访问”,如图5-33所示。

图5-33 定义IO变量界面

(4)制作图形画面。

画面名称:数据交换;图形画面中有一个文本对象“###”。 (5)建立动画连接。

将文本对象“###”的“模拟值输出”属性与I/O变量“fromViewtoVB”连接;输出格式为:整数位数设为1,小数位数设为2。

将设计的画面全部存储并配置成主画面。

– 166 –

第5章 基于板卡的测控系统及其典型应用实例

建立Visual Basic工程项目的步骤如下。 (1)建立Visual Basic工程。

运行可视化编程工具Visual Basic,新建窗体Form1。

在窗体中加入两个Text控件:Text1和Text2。以“vbdde1.frm”及“vbdde1.vbp”存储工程。

(2)编写Visual Basic应用程序。

双击Form1窗体中任何没有控件的区域,在代码编辑窗口内编写Form_Load子程序,同时编写Text1_Change子程序,如下所示。

Private Sub Form_Load() Private Sub Text1_Change() Text1.LinkTopic = \ k = (4095 - 4095 / 2) / 5 Text1.LinkItem = \ data = (Val(Text1.Text) - 4095 / 2) / k Text1.LinkMode = 1 Text2.Text = Format$(data, \End Sub End Sub 当Kingview工程项目与VB工程项目建立完成后,先运行Kingview 画面程序;再启动Visual Basic应用程序。

旋转电位器旋钮,改变组态王画面中测量电压值,这时就可在Visual Basic应用程序窗口Form1的文本框Text2中看到从Kingview传递过来的电压测量值,如图5-34所示。

组态王画 Visual Basic窗体

图5-34 Kingview向Visual Basic传递数据

2.Kingview作为顾客程序从Visual Basic应用程序得到数据

Visual Basic应用程序向Kingview传递数据的数据流向如图5-35所示。

Visual Basic应用程序 组态王 图5-35 数据流向

建立Visual Basic工程项目的步骤如下。 (1)建立Visual Basic工程。

运行可视化编程工具Visual Basic,新建窗体Form1,在窗体中加入一个Text控件Text1。

(2)属性设置。

将窗体Form1的LinkMode属性设置为1,LinkTopic属性设置为FormToView。 将控件Text1的名称设为:TextToView。

– 167 –

组态软件数据采集与串口通信测控应用实战

以窗体名“vbdde2.frm”及工程名“vbdde2.vbp”存储工程。 建立Kingview工程项目的步骤如下。 (1)建立新项目。

工程名称:VBDDE2;工程描述:Kingview与Visual Basic应用程序动态交换数据。 (2)定义DDE设备。

在工程浏览器中,从左边的工程目录显示区中选择“设备\\DDE”,然后在右边的内容显示区中双击“新建”图标,则弹出“设备配置向导”,按下面配置进行:

选择“DDE”设备。

DDE设备逻辑名称为PCIDDE(用户自己定义)。

服务程序名为vbdde2(必须与Visual Basic应用程序的工程名一致)。

主题名为FormToView(必须与Visual Basic应用程序窗体的LinkToPic属性值一致)。 数据交换方式为选择“标准的Windows项目交换”。 (3)定义变量。

变量名为fromVBtoView(用户自己定义,在“组态王”内部使用)。 变量类型为I/O字符串。

连接设备为PCIDDE(用来定义服务器程序的信息,已在前面定义)。

项目名为TextToView(必须与Visual Basic应用程序中提供数据的文本框控件名一致)。 (4)制作图形画面。

画面名称:数据交换;图形画面中有一个文本对象“###”。 (5)建立动画连接。

将文本对象“###”的“字符串输出”属性与I/O字符串变量“fromVBtoView”连接: 将设计的画面全部存储并配置成主画面。

当Visual Basic工程项目与Kingview工程项目建立完成后,先启动Visual Basic应用程序;再运行Kingview画面程序。

改变 Visual Basic画面文本框中的数字,这时就可在Kingview画面文本框中看到从Visual Basic应用程序传递过来的数值,如图5-36所示。

Visual Basic窗体 组态王画面

图5-36 Visual Basic应用程序向Kingview传递数据

5.5 模拟量输出(AO)程序设计

5.5.1 模拟量输出(AO)程序设计目的

(1)掌握利用数据采集板卡进行模拟信号计算机输出的硬件线路连接方法。

– 168 –

第5章 基于板卡的测控系统及其典型应用实例

(2)掌握利用Kingview编写板卡模拟量输出(AO)程序的方法。

5.5.2 模拟量输出(AO)程序设计用软、硬件

本设计用到的硬件和软件清单如表5-3所示。

表5-3 序 号 1 2 3 4 5 PC或IPC PCI-1710HG多功能板卡+ PCL-10168数据线缆+ ADAM-3968接线端子(使用模拟量输出AO通道) 发光二极管 电子示波器 Kingview 6.5 设计用软、硬件 名 称 数 量 1 1 1 1 1 5.5.3 模拟量输出(AO)程序硬件线路

在图5-37中,将板卡模拟量输出(范围:0~10V)0通道(管脚58)接示波器显示电压变化波形;接发光二极管来显示电压大小变化(范围:0~10V)。

PCI1710HG多功能能板卡卡 58AO0_OUT示波器计算机0~∽ 10V 57AOGND 图5-37 计算机模拟电压输出线路图

5.5.4 模拟量输出(AO)程序设计任务

利用Kingview编写应用程序实现PCI-1710HG多功能板卡模拟量输出。任务要求如下。

在程序画面中产生一个变化的数值(范围:0~10),绘制数据变化曲线,线路中示波器显示电压变化波形,发光二极管亮度随电压变化(范围:0~10V)而变化。

5.5.5 任务实现

1.建立新工程项目

运行组态王程序,出现组态王工程管理器画面。 为建立一个新工程,请执行以下操作步骤。

– 169 –

组态软件数据采集与串口通信测控应用实战

(1)在工程管理器中选择菜单“文件\新建工程”或单击快捷工具栏“新建”命令,出现“新建工程向导之一欢迎使用本向导”对话框。

(2)单击“下一步”按钮,出现“新建工程向导之二选择工程所在路径”对话框。选择或指定工程所在路径。如果用户需要更改工程路径,请单击“浏览”按钮。如果路径或文件夹不存在,请创建。

(3)单击“下一步”按钮,出现“新建工程向导之三工程名称和描述”对话框。 在对话框中输入工程名称:AO(必需,可以任意指定);在工程描述中输入:模拟电压输出(可选),如图5-38所示。

(4)单击“完成”按钮,新工程建立,单击“是”按钮,确认将新建的工程设为组态王当前工程,此时组态王工程管理器中出现新建的工程。

(5)双击新建的工程名,出现加密狗未找到“提示”对话框,选择“忽略”项,出现演示方式“提示”对话框,单击“确定”按钮,进入工程浏览器对话框。

2.制作图形画面 画面名称:模拟量输出。

通过图库在图形画面中添加一个游标对象;通过工具箱添加1个“实时趋势曲线”控件,1个按钮对象“关闭”,2个文本对象(“输出电压值:”、“000”)等,如图5-39所示。

图5-38 创建工程界面

图5-39 图形画面

3.定义板卡设备

? 在组态王工程浏览器的左侧选择“设备”中的“板卡”,在右侧双击“新建…”,运行“设备配置向导”。

(1)选择智能模块\\研华\\YHPCI1710\\YHPCI1710,如图5-40所示。

(2)单击“下一步”按钮,给要安装的设备指定惟一的逻辑名称,如:PCI-1710HG。 (3)单击“下一步”按钮,给要安装的设备指定地址:C000(与板卡所在插槽的位置有关)。

(4)单击“下一步”按钮,不改变通信参数。

(5)单击“下一步”按钮,显示所安装设备的所有信息。

– 170 –

第5章 基于板卡的测控系统及其典型应用实例

(6)请检查各项设置是否正确,确认无误后,单击“完成”按钮。

设备定义完成后,用户可以在工程浏览器的右侧看到新建的外部设备“PCI1710”。 在左侧看到设备逻辑名称“PCI1710HG”。在定义数据库变量时,用户只要把I/O变量连接到这台设备上,它就可以和组态王交换数据了。

图5-40 选择板卡设备界面

4.定义I/O变量

? 在工程浏览器的左侧树形菜单中选择“数据库\\数据词典”,在右侧双击“新建”图标,弹出“定义变量”对话框。

定义变量“模拟量输出”。

变量类型选I/O实数。最小值,最大值可按计算机输出电压范围(0V~10V)确定;最小原始值为2048(对应输出0V),最大原始值为4095(对应输出10V);连接设备选PCI-1710HG,寄存器为DA0,数据类型选USHORT,读写属性选只写,如图5-41所示。

图5-41 定义模拟量输出I/O变量界面

– 171 –

组态软件数据采集与串口通信测控应用实战

5.建立动画连接

(1)建立“实时趋势曲线”对象的动画连接。

双击画面中实时趋势曲线对象,出现动画连接对话框。在曲线定义选项中,单击曲线1文本框右边的 ?号按钮,选择已定义好的变量“模拟量输出”。将背景色改为白色,将X方向和Y方向主分线、次分线数目都改为0,如图5-42所示。在标识定义选项卡中,去掉“标识Y轴”项的选取,将时间轴的时间长度改为2分钟,如图5-43所示。

图5-42 “实时趋势曲线”对象动画连接界面

图5-43 实时趋势曲线对象动画连接-标识定义界面

(2)建立“游标”对象动画连接。

双击画面中游标对象,出现动画连接对话框。单击变量名(模拟量)文本框右边的 ?号按钮,选择已定义好的变量“模拟量输出”,并将滑动范围的最大值改为10,标志中的主刻度数改为11,副刻度数改为5,如图5-44所示。

(3)建立输出电压值显示文本对象动画连接。 双击画面中输出电压值显示文本对象“000”,出现动画连接对话框。将“模拟值输出”

– 172 –

第5章 基于板卡的测控系统及其典型应用实例

属性与变量“模拟量输出”连接,输出格式为整数1位,如图5-45所示。

图5-44 “游标”对象动画连接

图5-45 输出电压值显示文本对象动画连接

(4)建立“按钮”对象的动画连接。 双击画面中按钮对象“关闭”,出现动画连接对话框。选择命令语言连接功能,单击“弹起时”按钮,在“命令语言”编辑栏中输入以下命令:exit(0);。 6.调试与运行

? 存储:设计完成后,在开发系统“文件”菜单中执行“全部存”命令将设计的画面和程序全部存储。

? 配置主画面:在工程浏览器中,单击快捷工具栏上“运行”按钮,出现“运行系统设置”对话框。单击“主画面配置”选项卡,选中制作的图形画面名称“模拟量输出”,单击“确定”按钮即将其配置成主画面。

? 运行:在工程浏览器中,单击快捷工具栏上“VIEW”按钮启动运行系统。 单击游标上下箭头,改变输出值(0~10),画面中实时趋势曲线将随游标值变化而变化,“组态王”系统中的I/O变量“AO”值也会自动更新不断变化,板卡AO0_OUT通道输出电压随之改变(0~10V),线路中发光二极管亮度随之变化,在示波器中显示输出电压变化波形。

程序运行画面如图5-46所示。

图5-46 程序运行画面

– 173 –

组态软件数据采集与串口通信测控应用实战

5.6 开关量输入(DI)程序设计

5.6.1 开关量输入(DI)程序设计目的

(1)掌握利用数据采集板卡进行开关信号计算机输入的硬件连接方法。 (2)掌握利用Kingview编写板卡开关量输入(DI)程序的方法。

5.6.2 开关量输入(DI)程序设计用软、硬件

本设计用到的硬件和软件清单如表5-4所示。

表5-4 序 号 1 2 3 4 5 6 7 8 PC或IPC PCI-1710HG多功能板卡+ PCL-10168数据线缆+ ADAM-3968接线端子(使用数字量输入DI通道) 电气开关 光电接近开关等(DC24V) 继电器(DC24V) 指示灯(DC24V) 直流电源(输出:DC24V) Kingview 6.5 设计用软、硬件 名 称 1 1 1 1 2 2 1 1 数 量 5.6.3 开关量输入(DI)程序硬件线路

在图5-47中,由电气开关和光电接近开关分别控制两个继电器,继电器的常开开关分别接板卡数字量输入0通道(管脚56)和1通道(管脚22)。

+KR11DC24V_电气开关L2+DC24VKR21_L156KR1248PCI1710HG多功功能能板卡 计算机KR2222光电接近开关 图5-47 开关量输入线路图

– 174 –

第5章 基于板卡的测控系统及其典型应用实例

5.6.4 设计任务

利用Kingview编写应用程序实现PCI-1710HG多功能板卡开关量输入。任务要求如下。 (1)利用线路中电气开关产生开关(数字)信号,使程序画面中信号指示灯改变颜色。 (2)用任何反光物体遮挡或离开光电接近开关,产生开关(数字)信号,使程序画面中计数器文本中的数字从1开始累加。

5.6.5 任务实现

1.建立新工程项目

运行组态王程序,出现组态王工程管理器画面。 为建立一个新工程,请执行以下操作步骤。

(1)在工程管理器中选择菜单“文件\新建工程”或单击快捷工具栏“新建”命令,出现“新建工程向导之一欢迎使用本向导”对话框。

(2)单击“下一步”按钮,出现“新建工程向导之二选择工程所在路径”对话框。选择或指定工程所在路径。如果用户需要更改工程路径,请单击“浏览”按钮。如果路径或文件夹不存在,请创建。

(3)单击“下一步”按钮,出现“新建工程向导之三工程名称和描述”对话框。 在对话框中输入工程名称:DI(必需,可以任意指定);在工程描述中输入:开关量输入(可选),如图5-48所示。

图5-48 创建工程界面

(4)单击“完成”按钮,新工程建立,单击“是”按钮,确认将新建的工程设为组态王当前工程,此时组态王工程管理器中出现新建的工程。

(5)双击新建的工程名,出现加密狗未找到“提示”对话框,选择“忽略”项,出现演示方式“提示”对话框,单击“确定”按钮,进入工程浏览器对话框。

2.制作图形画面

画面名称:开关量输入。通过图库在图形画面中添加一个指示灯对象;通过工具箱添加3个文本对象,一个按钮对象“关闭”等,如图5-49所示。

– 175 –

组态软件数据采集与串口通信测控应用实战

3.定义板卡设备

? 在组态王工程浏览器的左侧选择“设备”中的“板卡”,在右侧双击“新建…”,运行“设备配置向导”。

(1)选择智能模块\\研华\\YHPCI1710\\YHPCI1710,如图5-50所示。

图5-49 图形画面

(2)单击“下一步”按钮,给要安装的设备指定惟一的逻辑名称,如PCI-1710HG。 (3)单击“下一步”按钮,给要安装的设备指定地址:C000(与板卡所在插槽的位置有关)。

图5-50 选择板卡设备界面

(4)单击“下一步”按钮,不改变通信参数。

(5)单击“下一步”按钮,显示所安装设备的所有信息。

(6)请检查各项设置是否正确,确认无误后,单击“完成”按钮。

设备定义完成后,用户可以在工程浏览器的右侧看到新建的外部设备 “PCI1710”。 在左侧看到设备逻辑名称“PCI1710HG”。在定义数据库变量时,用户只要把I/O变量连接到这台设备上,它就可以和组态王交换数据了。

4.定义变量

? 在工程浏览器的左侧树形菜单中选择“数据库\\数据词典”,在右侧双击“新建”图标,弹出“定义变量”对话框。

– 176 –

第5章 基于板卡的测控系统及其典型应用实例

(1)定义变量“开关量输入”。 变量类型选I/O整数,连接设备选PCI1710HG,寄存器为D10,数据类型选USHORT(注:Kingview6.0版数据类型选UINT),读写属性选只读,如图5-51所示。

图5-51 定义开关量输入I/O变量界面

(2)定义变量“指示灯”,变量类型选内存离散,初始值选关。

(3)定义变量“num”,变量类型选内存整数,初始值为0,最小值为0,最大值为99999,如图5-52如示。

图5-52 定义内存整数变量num界面

5.建立动画连接

(1)建立信号指示灯对象动画连接。将指示灯对象与变量“指示灯”连接起来,如图5-53所示。

(2)建立计数器文本对象“000”动画连接。将开关计数器文本对象“000”的“模拟值输出”属性与变量“num”连接起来,如图5-54所示。

– 177 –

组态软件数据采集与串口通信测控应用实战

图5-53 指示灯对象动画连接界面

图5-54 计数器文本对象动画连接界面

(3)建立按钮对象“关闭”动画连接。单击“弹起时”按钮,执行命令:exit(0);。 6.编写命令语言

? 在组态王工程浏览器的左侧选择“命令语言\\数据改变命令语言”,在右侧双击“新建”图标,弹出“数据改变命令语言”对话框,在“变量[.域]”文本框中输入“\\\\本站点\\开关量输入”(或选择),在编辑栏中输入相应语句,如图5-55所示。

图5-55 “数据改变命令语言”对话框

7.调试与运行

? 存储:设计完成后,在开发系统“文件”菜单中执行“全部存”命令将设计的画面和程序全部存储。

? 配置主画面:在工程浏览器中,单击快捷工具栏上“运行”按钮,出现“运行系统设置”对话框。单击“主画面配置”选项卡,选中制作的图形画面名称“开关量输入”,单击“确

– 178 –

第5章 基于板卡的测控系统及其典型应用实例

定”按钮即将其配置成主画面。

? 运行:在工程浏览器中,单击快捷工具栏上“VIEW”按钮启动运行系统。 打开或关闭线路中电气开关,线路中DI指示灯1亮或灭,程序画面中信号指示灯亮或灭(颜色改变)。

用任何反光物体遮挡或离开光电接近开关,线路中DI指示灯2亮或灭,程序画面中开关计数器文本中的数字从1开始累加。

程序运行画面如图5-56所示。

图5-56 程序运行画面

5.7 开关量输出(DO)程序设计

5.7.1 开关量输出(DO)程序设计目的

(1)掌握利用数据采集板卡进行开关信号计算机输出的硬件连接方法。

(2)掌握利用Kingview编写板卡开关量输出(DO)程序的方法。

5.7.2 开关量输出(DO)程序设计用软、硬件

本设计用到的硬件和软件清单如表5-5所示。

表5-5 序 号 1 2 3 4 5 6 7 8 PC或IPC PCI-1710HG多功能板卡+ PCL-10168数据线缆+ ADAM-3968接线端子(使用数字量输出DO通道) 继电器(DC24V) 指示灯(DC24V) 直流电源(输出:DC24V) 电阻(10K) 三极管 Kingview 6.5 设计用软、硬件 名 称 1 1 1 1 1 1 1 1 – 179 –

数 量

组态软件数据采集与串口通信测控应用实战

5.7.3 开关量输出(DO)程序硬件线路

在图5-57中,板卡数字量输出1通道(管脚13)接三极管基极,当计算机输出控制信号置13脚为高电平时,三极管导通,继电器常开开关KR闭合,指示灯亮;当置13脚为低电平时,三极管截止,继电器常开开关KR打开,指示灯灭。

PCI1710HG多功功能能板卡卡 +计算机10K13KRDC24V39DO指示灯_

图5-57 计算机开关量输出线路图

5.7.4 设计任务

利用Kingview编写应用程序实现PCI-1710HG多功能板卡开关量输出。任务要求如下。 执行程序中打开或关闭指示灯(按钮)命令,画面中信号指示灯变换颜色,同时,线路中DO指示灯亮或灭。

5.7.5 任务实现

1.建立新工程项目

运行组态王程序,出现组态王工程管理器画面。 为建立一个新工程,请执行以下操作步骤。

(1)在工程管理器中选择菜单“文件\新建工程”或单击快捷工具栏“新建”命令,出现“新建工程向导之一欢迎使用本向导”对话框。

(2)单击“下一步”按钮,出现“新建工程向导之二选择工程所在路径”对话框。选择或指定工程所在路径。如果用户需要更改工程路径,请单击“浏览”按钮。如果路径或文件夹不存在,请创建。

(3)单击“下一步”按钮,出现“新建工程向导之三工程名称和描述”对话框。 在对话框中输入工程名称:DO(必需,可以任意指定);在工程描述中输入:开关量输出(可选),如图5-58所示。

(4)单击“完成”按钮,新工程建立,单击“是”按钮,确认将新建的工程设为组态王当前工程,此时组态王工程管理器中出现新建的工程。

(5)双击新建的工程名,出现加密狗未找到“提示”对话框,选择“忽略”项,出现演示方式“提示”对话框,单击“确定”按钮,进入工程浏览器对话框。

– 180 –

第5章 基于板卡的测控系统及其典型应用实例

2.制作图形画面

画面名称:开关量输出。

通过图库在图形画面中添加一个开关对象,一个指示灯对象;通过工具箱添加一个按钮对象“关闭”,并用“直线”工具画线将它们连接起来,如图5-59所示。

图5-58 创建工程界面

图5-59 图形画面

3.定义板卡设备

? 在组态王工程浏览器的左侧选择“设备”中的“板卡”,在右侧双击“新建…”,运行“设备配置向导”。

(1)选择智能模块\\研华\\YHPCI1710\\YHPCI1710,如图5-60所示。

图5-60 选择板卡设备界面

(2)单击“下一步”按钮,给要安装的设备指定惟一的逻辑名称,如:PCI-1710HG。 (3)单击“下一步”按钮,给要安装的设备指定地址:C000(与板卡所在插槽的位置有关)。

(4)单击“下一步”按钮,不改变通信参数。

(5)单击“下一步”按钮,显示所安装设备的所有信息。

(6)请检查各项设置是否正确,确认无误后,单击“完成”按钮。

– 181 –

组态软件数据采集与串口通信测控应用实战

设备定义完成后,用户可以在工程浏览器的右侧看到新建的外部设备“PCI1710”。 在左侧看到设备逻辑名称“PCI1710HG”。在定义数据库变量时,用户只要把I/O变量连接到这台设备上,它就可以和组态王交换数据了。

4.定义变量

? 在工程浏览器的左侧树形菜单中选择“数据库\\数据词典”,在右侧双击“新建”图标,弹出“定义变量”对话框。

(1)定义变量“开关量输出”。变量类型选I/O整数,连接设备选PCI1710HG,寄存器为DO0,数据类型选USHORT,读写属性选只写,采集频率为500,如图5-61所示。

图5-61 定义开关量输出I/O变量界面

(2)定义变量“指示灯”,变量类型选内存离散,初始值选关,如图5-62所示。

图5-62 定义离散变量界面

– 182 –

第5章 基于板卡的测控系统及其典型应用实例

(3)定义变量“开关”,变量类型选内存离散,初始值选关。

5.建立动画连接

(1)建立指示灯对象动画连接。将指示灯对象与变量“指示灯”连接起来,如图5-63所示。

(2)建立开关对象动画连接。将开关对象与变量“开关”连接起来,如图5-64所示。

图5-63 指示灯对象动画连接界面

图5-64 开关对象动画连接界面

(3)建立按钮对象“关闭”动画连接。按钮“弹起时”执行命令:“exit(0);”。 6.编写命令语言

在组态王工程浏览器的左侧选择“命令语言\\数据改变命令语言”,在右侧双击“新建”图标,弹出“数据改变命令语言”对话框,在“变量[.域]”文本框中输入“\\\\本站点\\开关”(或选择),在编辑栏中输入相应语句,如图5-65所示。

图5-65 “数据改变命令语言”对话框

7.调试与运行

? 存储:设计完成后,在开发系统“文件”菜单中执行“全部存”命令将设计的画面和程序全部存储。

? 配置主画面:在工程浏览器中,单击快捷工具栏上“运行”按钮,出现“运行系统设

– 183 –

组态软件数据采集与串口通信测控应用实战

置”对话框。单击“主画面配置”选项卡,选中制作的图形画面名称“开关量输出”,单击“确定”按钮即将配置成主画面。

? 运行:在工程浏览器中,单击快捷工具栏上“VIEW”按钮启动运行系统。 启动或关闭画面中开关,画面中指示灯亮或灭(颜色改变),同时,线路中DO指示灯亮或灭,如图5-66所示。

图5-66 程序运行画面

5.8 温度测量与报警控制程序设计

5.8.1 温度测量与报警控制程序设计目的

(1)了解标度变换的实现方法。

(2)利用Kingview编写板卡温度量采集与控制输出程序。

5.8.2 温度测量与报警控制程序设计用软、硬件

本设计用到的硬件和软件清单如表5-6所示。

表5-6 序 号 1 2 3 4 5 6 PC或IPC PCI-1710HG多功能板卡+ PCL-10168数据线缆+ ADAM-3968接线端子(使用模拟量输入AI通道、数字量输出DO通道) 热电阻传感器(Pt100),温度变送器(输入:00C~200℃,输出:4~20mA) 直流电源(输出:DC24V)、继电器(DC24V)、指示灯(DC24V) 250Ω电阻、电阻(10K)、三极管 Kingview 6.5 设计用软、硬件 名 称 数 量 1 各1 各1 各1 1 2 5.8.3 温度测量与报警控制程序硬件线路

在图5-67中,Pt100热电阻检测温度变化,通过变送器和250?电阻转换为1~5V电压

– 184 –

第5章 基于板卡的测控系统及其典型应用实例

信号送入板卡模拟量1通道(管脚34);当检测温度小于计算机程序设定的下限值,计算机输出控制信号,使板卡DO1通道13管脚置高电平,指示灯1亮;当检测温度大于计算机设定的上限值,计算机输出控制信号,使板卡DO2通道46管脚置高电平,指示灯2亮。

+Pt100温度变送器DC24V 34 250? 1~5V 60PCI1710HG多功能卡+KR11 DC24V 10K 13 39 DO指示灯1+KR21 DC24V计算机 10K 46 39 DO指示灯2图5-67 温度测量与控制线路 5.8.4 设计任务

利用Kingview编写应用程序实现温度测量与报警控制。任务要求如下。 (1)自动连续读取并显示温度测量值。 (2)绘制测量温度实时变化曲线。

(3)统计采集的温度平均值、最大值与最小值。

(4)实现温度上、下限报警指示并能在程序运行中设置报警上、下限值。

5.8.5 任务实现

1.建立新工程项目

运行组态王程序,出现组态王工程管理器画面。 为建立一个新工程,请执行以下操作步骤。

(1)在工程管理器中选择菜单“文件\新建工程”或单击快捷工具栏“新建”命令,出现“新建工程向导之一欢迎使用本向导”对话框。

(2)单击“下一步”按钮,出现“新建工程向导之二选择工程所在路径”对话框。选择或指定工程所在路径。如果用户需要更改工程路径,请单击“浏览”按钮。如果路径或文件夹不存在,请创建。

– 185 –

组态软件数据采集与串口通信测控应用实战

(3)单击“下一步”按钮,出现“新建工程向导之三工程名称和描述”对话框。 在对话框中输入工程名称:AI&DO(必需,可以任意指定);在工程描述中输入:温度测量与控制(可选),如图5-68所示。

图5-68 创建工程

(4)单击“完成”按钮,新工程建立,单击“是”按钮,确认将新建的工程设为组态王当前工程,此时组态王工程管理器中出现新建的工程。

(5)双击新建的工程名,出现加密狗未找到“提示”对话框,选择“忽略”项,出现演示方式“提示”对话框,单击“确定”按钮,进入工程浏览器对话框。

2.制作图形画面 (1)制作画面1。 画面名称:“超温报警与控制”(主画面)。

图形画面1中有一个仪表对象、3个指示灯对象、3个按钮对象、10个文本对象、一个传感器对象等,如图5-69所示。

图5-69 “超温报警与控制”主画面

(2)制作画面2。 画面名称:“温度实时曲线”。

图形画面2中有一个“实时趋势曲线”对象、一个按钮对象,如图5-70所示。 (3)制作画面3。 画面名称:“参数设置”。图形画面3中有4个文本对象:“上限温度值”及其显示文本

– 186 –

第5章 基于板卡的测控系统及其典型应用实例

“000”,“下限温度值”及其显示文本“000”;两个按钮对象:“确定”按钮和“取消”按钮,如图5-71所示。

图5-70 “温度实时曲线”画面

图5-71 “参数设置”画面

3.定义板卡设备

? 在组态王工程浏览器的左侧选择“设备”中的“板卡”,在右侧双击“新建…”,运行“设备配置向导”。

(1)选择智能模块\\研华\\YHPCI1710\\YHPCI1710,如图5-72所示。

图5-72 选择板卡设备界面

(2)单击“下一步”按钮,给要安装的设备指定惟一的逻辑名称,如:PCI-1710HG。 (3)单击“下一步”按钮,给要安装的设备指定地址:C000(与板卡所在插槽的位置有关)。

(4)单击“下一步”按钮,不改变通信参数。

(5)单击“下一步”按钮,显示所安装设备的所有信息。 (6)请检查各项设置是否正确,确认无误后,单击“完成”按钮。

设备定义完成后,用户可以在工程浏览器的右侧看到新建的外部设备 “PCI1710”。 在左侧看到设备逻辑名称“PCI1710HG”。在定义数据库变量时,用户只要把I/O变量连接到这台设备上,它就可以和组态王交换数据了。

– 187 –

组态软件数据采集与串口通信测控应用实战

4.定义变量

(1)定义一个模拟量输入I/O变量。 已知:传感器为Pt100,其变送器的温度测量范围是0℃~200℃,线性输出4mA~20mA,经250Ω电阻将电流信号转换为1V~5V电压信号输入板卡。

定义变量如下:变量名为AI,变量类型选I/O实数,变量的最小值设为0,最大值设为200,最小原始值设为2458(对应0℃),最大原始值设为4095(对应200℃),连接设备选PCI1710HG,寄存器设为AD1,数据类型选USHORT,读写属性选只读,如图5-73所示。

图5-73 定义AI变量界面

(2)定义1个数字量输出I/O变量。 变量名为开关量输出,变量类型选I/O整数,连接设备选PCI1710HG,寄存器设为DO0,数据类型选USHORT,读写属性选只写,如图5-74所示。

图5-74 定义DO变量界面

(3)定义8个内存实数变量。 变量“上限温度”,设定“上限温度”的初始值均为35,最小值均为0,最大值均为100,

– 188 –

第5章 基于板卡的测控系统及其典型应用实例

如图5-75所示。

图5-75 定义内存实数变量界面

变量“下限温度”,设定“下限温度”的初始值均为20,最小值均为0,最大值均为100。 变量“平均值”、“最大值”、“最小值”的初始值、最小值均为0,最大值均为100。 变量“累加值”的初始值、最小值均为0,最大值为200000。 (4)定义3个内存离散变量。“上限灯”、“下限灯”、“电炉”,初始值均为关,如图5-76所示。

图5-76 定义内存离散变量界面

(5)定义一个内存整型变量。变量名为“采样个数”,初始值为0,最大值为2000。 5.建立动画连接

建立“超温报警与控制”画面动画连接步骤如下。

(1)建立仪表对象动画连接。将仪表对象与变量“AI”连接起来,如图5-77所示。 (2)建立上限灯对象动画连接。将上限指示灯对象与变量“上限灯”连接起来,如图5-78所示。

– 189 –

组态软件数据采集与串口通信测控应用实战

图5-77 仪表对象动画连接界面

图5-78 指示灯对象动画连接界面

(3)建立下限灯对象动画连接。将下限指示灯对象与变量“下限灯”连接起来。 (4)建立电炉对象动画连接。将电炉对象与变量“电炉”连接起来。

(5)建立当前值、平均值、最大值、最小值显示文本对象动画连接。将它们的显示文本对象“000”的“模拟值输出”属性分别与变量“AI”、“平均值”、“最大值”、“最小值”连接,输出格式为整数2位,小数1位。

(6)建立按钮对象“实时曲线”动画连接。该按钮“弹起时”执行以下命令:

ShowPicture(“温度实时曲线”);

(7)建立按钮对象“参数设置”动画连接。该按钮“弹起时”执行以下命令:

ShowPicture(“参数设置”);

(8)建立按钮对象“关闭”动画连接。该按钮“弹起时”执行以下命令:

BitSet(\\\\本站点\\DO,2,0); BitSet(\\\\本站点\\DO,3,0); exit(0);

建立“温度实时曲线”画面动画连接步骤如下。 (1)建立“实时趋势曲线”控件动画连接。 在曲线定义中,将曲线1与变量“AI”连接起来,如图5-79所示。在标识定义中,将“标识Y轴”选项去掉,将时间轴选项中时间长度改为2分钟。

图5-79 “实时趋势曲线”动画连接界面

– 190 –

第5章 基于板卡的测控系统及其典型应用实例

(2)建立按钮对象“返回主画面”动画连接。该按钮弹起时执行以下命令:

ShowPicture(“超温报警与控制”);

建立 “参数设置” 画面动画连接步骤如下。 (1)建立上限温度值显示文本“000”动画连接。

将其“模拟值输出”属性与变量“设定上限温度”连接;再将“模拟值输入”属性与变量“设定上限温度”连接,将值范围的最大值改为200,最小值改为100。

(2)建立下限温度值显示文本“000”动画连接。

将其“模拟值输出”属性与变量“设定下限温度”连接;再将“模拟值输入”属性与变量“设定下限温度”连接,将值范围的最大值改为100,最小值改为20。 (3)建立按钮对象“确定”动画连接。该按钮弹起时执行以下命令:

\\\\本站点\\上限温度=\\\\本站点\\设定上限温度; \\\\本站点\\下限温度=\\\\本站点\\设定下限温度; closepicture(\参数设置\

ShowPicture(\超温报警与控制\

(4)建立按钮对象“取消”动画连接。该按钮弹起时执行以下命令:

\\\\本站点\\设定上限温度=\\\\本站点\\上限温度; \\\\本站点\\设定下限温度=\\\\本站点\\下限温度; closepicture(\参数设置\

ShowPicture(\超温报警与控制\

其中,ShowPicture函数用于显示指定名称的画面。

ClosePicture函数用于将已调入内存的画面关闭,并从内存中删除。

6.编写程序代码

(1)双击命令语言“事件命令语言”项,在弹出的对话框中,在“事件描述”文本框中输入表达式:“\\\\本站点\\ AI>0”;在事件“发生时”编辑栏中输入以下初始化语句:

\\\\本站点\\采样个数=0;

\\\\本站点\\累加值=0;

\\\\本站点\\最大值=\\\\本站点\\AI; \\\\本站点\\最小值=\\\\本站点\\AI;

(2)双击命令语言“应用程序命令语言”项,在弹出的对话框中,将运行周期设为“500”。 在“启动时”编辑栏里输入以下程序:

ShowPicture(\温度实时曲线\ShowPicture(\超温报警与控制\

在“运行时”编辑栏里输入以下控制程序:

if(\\\\本站点\\AI<=\\\\本站点\\下限温度) {

\\\\本站点\\下限灯=1; \\\\本站点\\电炉=1;

BitSet(\\\\本站点\\DO,2,1); }

if(\\\\本站点\\AI>\\\\本站点\\下限温度 && \\\\本站点\\AI<\\\\本站点\\上限温度) {

\\\\本站点\\上限灯=0; \\\\本站点\\下限灯=0; \\\\本站点\\电炉=1;

BitSet(\\\\本站点\\DO,2,0);

– 191 –

组态软件数据采集与串口通信测控应用实战

BitSet(\\\\本站点\\DO,3,0); }

if(\\\\本站点\\AI>=\\\\本站点\\上限温度) {

\\\\本站点\\上限灯=1; \\\\本站点\\电炉=0;

BitSet(\\\\本站点\\DO,3,1); }

\\\\本站点\\采样个数=\\\\本站点\\采样个数+1;

\\\\本站点\\累加值=\\\\本站点\\累加值+\\\\本站点\\AI;

\\\\本站点\\平均值=\\\\本站点\\累加值 / \\\\本站点\\采样个数; if(\\\\本站点\\AI>=\\\\本站点\\最大值) {

\\\\本站点\\最大值=\\\\本站点\\AI; }

if(\\\\本站点\\AI<=\\\\本站点\\最小值) {

\\\\本站点\\最小值=\\\\本站点\\AI; }

7.调试与运行

将设计的画面全部存储;将“超温报警与控制”画面配置成主画面,启动画面运行程序。 当温度传感器的检测温度在不同范围时,出现不同响应,如表5-7所示。

表5-7

检测温度AI(℃) AI <下限温度 下限温度≤ AI ≤上限温度 AI >上限温度 上限灯 灭 灭 亮 程序运行响应 程序主画面动画 下限灯 亮 灭 灭 电炉 开 开 关 亮 灭 灭 线路中指示灯动作 DO指示灯1 DO指示灯2 灭 灭 亮 单击主画面“实时曲线”按钮,进入温度实时曲线画面,可以观看温度实时变化曲线。单击“返回主画面”按钮可以返回主画面“超温报警与控制”。

单击主画面“参数设置”按钮,进入参数设置画面。可以设置温度的报警上限和下限值;单击“确定”按钮可以确认当前设定值,单击“取消”按钮保持原先设定值不变。

主画面运行情况如图5-80所示。

图5-80 程序运行主画面

– 192 –

第5章 基于板卡的测控系统及其典型应用实例

实时曲线运行情况如图5-81所示。 参数设置运行情况如图5-82所示。

图5-81 实时曲线运行画面

图5-82 参数设置运行画面

– 193 –

本文来源:https://www.bwwdw.com/article/z2ww.html

Top