文档视界 最新最全的文档下载
当前位置:文档视界 › 组态王6.5源代码

组态王6.5源代码

组态王6.5源代码
组态王6.5源代码

正文

大家知道,在网络上传输音/视频等多媒体信息目前主要有下载和流式传输两种方案。下载的主要缺点是,必须等全部内容传输完毕,然后才能在本地机器打开;而采用流式传输方案,声音、影像或动画等时基媒体由音/视频服务器向用户计算机连续、实时地传送,用户不必等到整个文件全部下载完毕,只需经过几秒或十数秒的启动延时即可进行观看。流式传输广泛应用于Internet上视频点播,以及网络视频监控等领域。

本文从Microsoft DirectShow以及Windows Socket等方面的技术角度出发,阐述一个简单的媒体流式传输、实时观看的解决方案。

关键词:DirectShow Filter Windows Socket

一.开发原理

(一)介绍一下微软的DirectShow技术

长久以来,多媒体应用一直面临着挑战,包括多媒体大量的数据传输,快速的数据处理要求,音视频流的同步,媒体流的格式转换等等。DirectShow正是微软针对以上问题设计,并且很好地解决了这些问题的一种应用架构。它的设计目标是,隔离数据传输、硬件兼容、流同步等底层处理,使客户能够轻轻松松地创建Windows应用平台上的多媒体应用程序。

为提高数据处理的效率,DirectShow运用了DirectDraw和DirectSound技术。同时,DirectShow 还运用了COM组件技术,它的名字叫作Filter。Filter大致可分为三种:Source Filters、Transform Filters、Rendering Filters。Filter传输数据的端口叫作Pin。Pin有Input Pin和Output Pin两种。在应用中,将各种Filter连接起来,也就是将前面Filter(Upstream Filter)的Output Pin与后面Filter(Downstream Filter)的Input Pin连接起来,即组成一个完整的Filter Graph。运行这个Filter Graph,多媒体数据就开始从Source Filters,经过Transform Filters到Rendering Filters流动。DirectX提供了一个非常实用的工具??GraphEdit.exe??用以可视化调试Filter。下面看一下DirectShow大致的处理流程图:

在我们后面的应用实例中,我们自己编写了一个Filter(这是一个Source Filter),用于异步读取网络上出来的Mpeg1数据;紧跟这个Filter后面的是Transform Filters,负责Mpeg1数据的音视频分离(Mpeg1 Stream Splitter)、音视频数据的解码(Mpeg Audio Decoder和Mpeg Video Decoder);然后是音视频流各自的Rendering Filters,一个叫Video Renderer的负责视频的显示,一个叫Default DirectSound Device的负责音频数据的播放。参考图如下:

注:Source Filter的改写参考了DirectX 8.0 SDK的例子代码,它的路径为:samplesMultimediaDirectShow FiltersAsyncMemfile。

(二)介绍一下Windows Socket网络传输技术

我们要处理的数据并不在本地计算机,而是由另外一台视频服务器负责发送出来。那么,我们如何得到这些数据,然后再使用我们的DirectShow Filter进行处理呢?这就用到了Windows Socket技术。

运用Windows Socket技术,能够让两台计算机通过网络建立连接,并且通过定义一些上层协议,实现计算机之间的大量数据传输以及其他一些控制。微软的MFC也提供了两个类:CAsyncSocket和CSocket,用以方便客户使用Socket的特性。CAsyncSocket从较低层次封装了Windows Socket API,并且通过内建一个窗口,实现了适合Windows应用的异步机制。CSocket类从CAsyncSocket中继承而来,更简化了客户对Socket的应用。但是,这两个类均有缺陷,特别是在跨线程使用Socket的时候。

在我们后面的应用实例中,因为处理的数据量较大,我们使用了多线程。在负责数据发送的

服务器端,使用专门的线程进行数据的发送;在客户端,使用专门的线程进行数据的接收,并把数据放到缓冲队列中,供DirectShow Filter读取处理。因此,我们自己封装了几个Socket 的类:CListenSocket(用于服务器端建立监听客户连接的Socket类)、CWorkerSocket(负责数据传输的Socket基类)。从CWorkerSocket再派生两个类:CMediaSocketServer(用于服务器端数据的发送)和CMediaSocketClient(用于客户端数据的接收)。

我们把连续不断的Mpeg1数据分成一个一个小包的负载数据(取一个PACK的大小,2324字节),加上一定的信息头,在网络两端传输。定义的数据结构为:

// Message header

typedef struct

{

unsigned int nMsgType:8; // Payload type

unsigned int nDataSize:16; // Payload size

} MSG_HEADER, *PMSG_HEADER;

typedef struct

{

CHAR MPEGData[2324];

} MPEG1_PACK, *PMPEG1_PACK;

定义的一些信息头参考如下:

// Payload types

#define DATA_REQUEST 0X00 // Request the remote data

#define DATA_REFUSED 0X01 // Refuse the remote data

#define DATA_MEDIA 0X02 // Media data

#define DISCONNECT_REQUEST 0X03 // Request the remote to shut down

至于网络客户端的接收,首先阻塞地接收一个消息头大小(sizeof(MSG_HEADER))的数据,然后根据nDataSize的值接收相应的负载数据。

(三)介绍一种双缓冲队列技术

网络客户端接收到的Mpeg1数据,必须进行一定量的缓冲,然后才能交给DirectShow解码处理。接着,动态地,一边继续从网络接收数据,一边得到新的数据进行解码回放。这里介绍一种使用的双缓冲队列技术。

大致的工作原理是,建立两个队列,一个是PoolList,空闲的缓冲队列,用以接收存放数据;另一个是DataList,尚未处理的数据缓冲队列,等待处理。网络接收这边:当客户端接收到一个包的数据,从PoolList队列的头拿出一个缓冲,存放数据,然后将这个缓冲加入到DataList的尾部等待DirectShow的Filter读取。DirectShow这边:从DataList队列的头拿出一个缓冲,读取数据,将读完的缓冲加到PoolList的尾部,等待再一次地接收数据。

二.应用实例

开发环境:Windows 2000,PII 400,Microsoft DirectX SDK 8.0

开发工具:Microsoft Visual C++ 6.0

应用模型:Dialog Based Application

开发步骤:

(1)服务器端(MediaServer)

服务器端负责Mpeg1数据的发送,供演示用。这里主要的工作是,在对话框初始化函数(OnInitDialog)中建立一个监听Socket。当客户端有连接请求时,CListenSocket中就发出

一个自定义消息WM_NEW_SOCKET给主对话框;主对话框响应该消息,用CMediaSocketServer与客户端建立建立连接。

CMediaSocketServer有两个独立的工作者线程,用户可以自定义它们的线程循环体。CMediaSocketServer::ReceivingLoop为接收线程处理,当接收到DATA_REQUEST命令后就开始数据发送;数据发送处理在CMediaSocketServer::SendingLoop中。请参考演示代码,下面我们重点讲一下客户端的DirectShow处理技术。

(2)客户端(MediaClient)

客户端负责数据传输的是CMediaSocketClient类,接收线程处理体为CmediaSocket Client::ReceivingLoop;CDataAdmin类封装了双缓冲队列对数据的管理。实现细节请参考演示代码。

下面重点讲一下DirectShow是如何将数据进行解码回放的。

l CFilterGraph类封装了Filter以及Filter Graph的创建和控制。

HRESULT hr = CoCreateInstance(CLSID_FilterGraph,

NULL,

CLSCTX_INPROC,

IID_IGraphBuilder,

(void**)&m_pGB);

创建了Filter Graph的一个实例。

hr = m_pGB->QueryInterface(IID_IMediaControl, (void **)&m_pMC);

得到了启动、停止这个Filter Graph的控制接口。还有其他控制接口,如控制视频传口的m_pVW、控制音频的m_pBA等。

CMemReader是我们自己编写的一个Filter,通过AddFilter方法将其加入到以上Filter Graph 中,如下:

hr = m_pGB->AddFilter(m_pSourceReader, NULL);

最后一步是,得到Source Filter的Output Pin,然后Render这个Pin,完整的Filter Graph就构建成功了。Filter Graph的参考图见上文。

HRESULT hr = m_pGB->Render(m_pSourceReader->GetPin(0));

l 我们编写的这个Filter,相关的源文件有asyncio.cpp、asyncio.h、asyncrdr.cpp、asyncrdr.h 和MemFilter.h。前四个是DirectShow SDK提供的基类,我们在MemFilter中派生了自己的两个类CMemStream和CMemReader,以定义我们自己的Filter行为。Filter Graph中有两种基本的数据流模式:推模式(Push Mode)和拉模式(Pull Mode)。推模式情况下,Source Filter 主动把数据往下传送;而在拉模式下,需要后面的Filter向Source Filter请求数据。我们的Source Filter就属于拉模式的Filter,它的Output Pin必须实现IAsyncReader接口。数据的流动,主要靠后面的Filter(本例中为Mpeg1 Stream Splitter)调用Source Filter的Output Pin 上IAsyncReader接口的Read方法。下面是我们的Filter的Read方法实现,这也是本应用方案的关键部分:

HRESULT Read(PBYTE pbBuffer, DWORD dwBytesToRead,

BOOL bAlign, LPDWORD pdwBytesRead)

{

if (m_pDataList == NULL) return S_FALSE;

CAutoLock lck(&m_csLock);

DWORD dwHaveRead = 0;

PMPEG1_PACK pPack = NULL;

while (dwHaveRead < dwBytesToRead){

if (dwBytesToRead - dwHaveRead >= MPEG1_PACK_SIZE - m_ulPositionInPack) {

// Just copy the whole pack data

pPack = m_pDataList->GetDataBuffer();

if (pPack != NULL) {

CopyMemory((PVOID)(pbBuffer + dwHaveRead),

(PVOID)((PBYTE)(pPack) + m_ulPositionInPack), (SIZE_T)MPEG1_PACK_SIZE - m_ulPositionInPack);

m_pDataList->ReleaseDataBuffer(pPack);

dwHaveRead += MPEG1_PACK_SIZE - m_ulPositionInPack;

m_ulPositionInPack = 0;

}

else if (m_pDataList->IsFlushing()) { return E_FAIL; }

else { Sleep(10); }

}

else {

// Copy part of the pack data

pPack = m_pDataList->PointToDataHead();

if (pPack != NULL) {

m_ulPositionInPack = dwBytesToRead - dwHaveRead;

CopyMemory((PVOID)(pbBuffer + dwHaveRead),

(PVOID)(pPack), (SIZE_T)m_ulPositionInPack);

dwHaveRead += m_ulPositionInPack;

}

else if (m_pDataList->IsFlushing()) {return E_FAIL;}

else {Sleep(10); }

}

}

*pdwBytesRead = dwBytesToRead;

return S_OK;

}

(3)演示过程

l 运行Builds目录下的MediaServer.exe程序,并选择一个Mpeg1文件(如Demo.mpg);

l 在网络中的另一台计算机(或本机)上运行MediaClient.exe程序,确认启动MediaServer 程序的计算机IP地址;

l 然后单击“连接”按钮,再单击“传输”按钮,1-2秒钟后,即可在客户端看到图像,并且界面上有客户端已经接收到数据包个数的动态显示;

l 按“断开”按钮即可将服务器端和客户端的Socket连接断开,停止传输数据。

三.几点说明

1.本方案用到了DirectX 8.0 SDK,请确认配置好了您的VC开发环境:首先将DirectX8的安装目录下例子代码中的DirectShow基类编译一下,Debug版本生成strmbasd.lib,Release 版本生成strmbase.lib;然后配置VC开发环境:Tools->Options-> Directories->Include files 加入两个路径,DirectX8include和DIRECTX8SAMPLESMULTIMEDIADIRECTSHOWBASECLASSES,并且在MFC目录的前

面;Library file加入三个路径,DirectX8lib、DIRECTX8SAMPLESMULTIMEDIADIRECTSHOWBASECLASSESDEBUG和DIRECTX8SAMPLESMULTIMEDIADIRECTSHOWBASECLASSESRELEASE。

2.本演示方案采用Mpeg1格式的数据,但该方案并不局限于Mpeg1。

3.由于演示代码没有实时的数据源,所以服务器端通过读取Mpeg1文件的方法模拟实时数据。演示中,可以采用较大的Mpeg1文件,效果会更逼真。

4.本方案应用到网络实时监控时,可能还会涉及到Mpeg数据流的随机访问,即Mpeg数据流分析、截取问题,限于篇幅,本文不作介绍。有兴趣的朋友可以参考相关资料后,对示例代码进行修改。

5.本方案的演示代码仅限于一对一的传输,只要稍加修改,服务器端便可提供多路数据的传输

基于组态王的单容水箱液位控制系统

内蒙古科技大学信息工程学院测控专业毕业实习报告 题目:基于组态王的单容水箱液位控制系统 学生姓名: 学号: 专业:测控技术与仪器 班级:测控2009-1 指导教师:李文涛教授

前言 随着科学技术的发展,现代工业生产中的控制问题也日趋复杂。在人们的生活中以及某些化工和能源的生产过程中,常常涉及一些液位或流量控制的问题。比如,在石油、化工、轻工等工业生产过程中,有许多贮罐作为原料、半成品的贮液罐,前一道工序的成品或半成品不断地流入下一道工序的贮液罐进行加工和处理,为保证生产过程能连续进行,必须对贮罐的液位进行控制。此外,居民生活用水的供应,通常需要使用蓄水池,蓄水池中的液位需要维持合适的高度。还有一些水处理的过程也需要对蓄水池中的液位实施控制。这些实际问题都可以抽象为某种水箱的液位控制。因此,液位控制系统是过程控制的重要研究模型,对液位控制系统的研究具有显著的理论和实际意义。 本课题主要以单容水箱作为研究对象,运用研华PCI1710及1720板卡进行单容水箱对象特性的测试,从而求得其数学模型,并利用MATLAB软件进行了控制系统的仿真及分析,并确定出一组合适的PID参数对其进行控制。其次,采用组态王进行系统监控,通过对调节器PID参数的整定,实现了水箱液位的闭环控制,使水箱液位稳定在设定值,满足设计要求。

一、总体方案设计 该设计方案硬件部分由计算机,水泵,电磁阀,液位变送器,PCI-1710与1720板卡组成,软件部分以组态王来实现编程控制。组态王通过从 PCI-1710与1720板卡两个I/ O模块与外界硬件设备通讯,对采集的数据进行处理来实时监控。系统启动后,水泵由水源抽水,通过管道将水送到上水箱,液位变送器测得水箱液位通过板卡PCI-1710转换为数字信号输入计算机,组态监控中心对测得信号进行处理,通过PID运算,输出控制信号由板卡PCI-1720进行D/A转换,传送给电磁阀,进而控制水的流量实现对水箱液位控制。系统方框图如图1.1所示。 图1.1系统方框图

组态王历史报表、

创建历史数据报表 历史数据报表创建过程如下: 1、新建一価面,名押为:历史数据报表iffli面. 2、选择工具箱中的工1工具,在颅而上输入文字:历史数据报表。 3、选择工具箱中的悟1工具,在岡面上绘制一历史数据报表窗口,控件名称为:Reports, 并设计表格,如图8?17所 _______________________________________________ A i「 1 肋史 2 09 瑕料输覆桂 3 4 5 6 图8-17 历史数据报表查询 利用组态王提供的ReportSetHistData?的数町从组态王记录的历史库中按折定的赴始时间和时间间隔査询指定变虽的数据,设置过程如下: 1、在価面中添加一按饥,按伍文本为:历史数据报表査询. 2、在按粗的弹起爭件中输入如下命令ifi言.如图8JS所示:

3.设置完毕后单击“文件"菜单中的“全部存”命令.保存您所作的设置。 4、单击“文件”菜单中的“切换到XTEW”命令,运厅此紳面?笊击“历史数据报表査询”按钮.弹出报表历史査询对话框.如图&19所示, 报表历史査询对话框分二个履性页:报表属性页、时何属性页.变虽属性页. 报表属性页:在报表属性页中您可以设置报表査询的显示恪式,此属性页设置如图8- 19 所示。 时间属性页:在时间屈性页中您町以设置査询的起止时间以及査询的时间间隔.如图 所示: 图8? 19 图8-20

变量属性页:在变虽叫性页中您可以选择欲査询历史数据的变忙.如图8?21所示: 5. 设置完毕后单击?确定”按钮.原料油液位变虽的历史数据即可显示在历史数摇报 表控件中.从而达到了历史数据吉询的目的.如图8-22所示: 图 8-22 历史数据报表的其它应用 一、1分钟数据报表演示 利用报表窗口丁具结合组态王提供的命令语育可实现一个1分钟的数据报表?设置过程 如下: 0* 06/11/12 06/11/12 06/11/12 06/1142 06/1212 06/11/12 柿 16:24:44 15:25:44 15:26:44 15:27:44 15:28:44 15:29:44 历史效抿报表 用 S-21

组态王软件教程

组态王软件教程 软件教程 一、概述 1.概述 组态王软件结构由工程管理器、工程浏览器及运行系统三部分构成。 工程管理器:工程管理器用于新工程的创建和已有工程的管理,对已有工程进行搜索、添加、备份、恢复以及实现数据词典的导入和导出等功能。 工程浏览器:工程浏览器是一个工程开发设计工具,用于创建监控画面、监控的设备及相关变量、动画链接、命令语言以及设定运行系统配置等的系统组态工具。 运行系统:工程运行界面,从采集设备中获得通讯数据,并依据工程浏览器的动画设计显示动态画面,实现人与控制设备的交互操作。 2.建立应用工程的一般过程 1)创建新工程 为工程创建一个目录用来存放与工程相关的文件。 2)定义硬件设备并添加工程变量 添加工程中需要的硬件设备和工程中使用的变量,包括内存变量和I/O 变量。 3)制作图形画面并定义动画连接 按照实际工程的要求绘制监控画面并使静态画面随着过程控制对象产生动态效果。 4)编写命令语言 通过脚本程序的编写以完成较复杂的操作上位控制。 5)进行运行系统的配置

对运行系统、报警、历史数据记录、网络、用户等进行设置,是系统完成用于现场前的必备工作。 6)保存工程并运行 完成以上步骤后,一个可以拿到现场运行的工程就制作完成了。 二、建立一个新工程 1.工程管理器 组态王工程管理器是用来建立新工程,对添加到工程管理器的工程做统一的管理。工程管理器的主要功能包括:新建、删除工程,对工程重命名,搜索组态王工程,修改工程属性,工程备份、恢复,数据词典的导入导出,切换到组态王开发或运行环境等。 2.工程浏览器 工程浏览器是组态王6.55 的集成开发环境。 3.定义外部设备和数据变量 组态王把那些需要与之交换数据的硬件设备或软件程序都作为外部设备使用。外部硬件设备通常包括PLC、仪表、模块、变频器、板卡等;外部软件程序通常指包括DDE、OPC 等服务程序。按照计算机和外部设备的通讯连接方式,则分为:串行通信(232/422/485)、以太网、专用通信卡(如CP5611)等。 组态王与外部设备的通讯方式:如COM1、COM2、DDE、板卡、OPC 服务器、网络站点,其中COM1、COM2 表示组态王支持串口的通讯方式,DDE表示支持通过DDE 数据传输标准进行数据通讯,其他类似。 注意:标准的计算机都有两个串口,所以此处作为一种固定显示形式,这种形、COM2,也不表示组态王计算机上肯定有两个式并不表示组态王只支持COM1 串口;并且“设备”项下面也不会显示计算机中实际的串口数目,用户通过设备定义向导选择实际设备所连接的PC 串口即可。

组态王报表功能实现方法

一种简单的组态王报表功能实现方法 2010年04月24日星期六 15:18 前段时间用组态王6.53做了一个小的画面组态,其中用到了KVADODBGrid控件来做报表,现总结如下。 一、准备工作 第一步:在组态王工程管理器中新建一个项目,项目路径为D:\实验项目。 第二步:新建一个ACCESS数据库 1、在“D:\实验项目”路径下新建一个 Microsoft Office Access 应用程序并命名为mydatabase.mdb; 2、打开“控制面板\管理工具\ODBC数据源管理器”选择“系统DS N”选项; 3、点击“添加”按钮创建新数据源,选择“Microsoft Access Driver(*.mdb)”; 4、在数据源名处填下“mydata”,并选择数据库路径为“D:\实验项目\mydatabase.mdb”。 第三步:创建表格模板 点击工程浏览器左侧的“SQL访问管理器”下的“表格模板”,新建一个表格并命名为Table。在Table中添加所需记录的变量及

日期参数,其中“日期”为定长字符串型,字符长度为10;其它诸如年、月、日、时、分则为浮点型,字符长度为1。 第四步:创建记录体 点击工程浏览器左侧的“SQL访问管理器”下的“记录体”,新建一个表格并命名为Record,在Record中添加所需记录的变量及日期参数。记录体用来定义Access数据表格字段与组态王变量之间的对应关系。 二、连接数据库 第一步:在工程浏览器左侧的“数据库”下的“数据字典”中定义一个内存整型变量,并命名为ConnectID。 第二步:创立组态王与mydata数据源的连接,并以“表格模板”Table的格式在数据库中建立名为“TheDate”的表格,命令如下:SQLConnect( ConnectID, "dsn=mydata;uid=;pwd="); SQLCreateTable(ConnectID, "TheDate", "Table" ); 将上面两条命令填入“工程浏览器\命令语言\应用程序命令语言”下的“启动时”选项中。 第三步:在工程浏览器左侧的“命令语言\事件命令语言”下新建一事件命令,在“事由描述”项内填下“\\本站点\$分==01”(每小时事件发生一次即分变量每次为一,计算了60分钟),在“发生时”框内填写

组态王实例教程入门

组态王实例教程入门 组态王kingview6.55是亚控科技根据当前的自动化技术的发展趋势,面向低端自动化市场及应用,以实现企业一体化为目标开发的一套产品。该产品以搭建战略性工业应用服务平台为目标,集成了对亚控科技自主研发的工业实时数据库(KingHistorian)的支持,可以为企业提供一个对整个生产流程进行数据汇总、分析及管理的有效平台,使企业能够及时有效地获取信息,及时地做出反应,以获得最优化的结果。 组态王保持了其早期版本功能强大、运行稳定且使用方便的特点,并根据国内众多用户的反馈及意见,对一些功能进行了完善和扩充。组态王kingview6.55提供了丰富的、简捷易用的配置界面,提供了大量的图形元素和图库精灵,同时也为用户创建图库精灵提供了简单易用的接口;该款产品的历史曲线、报表及web发布功能进行了大幅提升与改进,软件的功能性和可用性有了很大的提高。 组态王在保留了原报表所有功能的基础上新增了报表向导功能,能够以组态王的历史库或KingHistorian为数据源,快速建立所需的班报表、日报表、周报表、月报表、季报表和年报表。此外,还可以实现值的行列统计功能。 组态王在web发布方面取得新的突破,全新版的Web发布可以实

现画面发布,数据发布和OCX控件发布,同时保留了组态王Web的所有功能:IE浏览客户端可以获得与组态王运行系统相同的监控画面,IE客户端与Web服务器保持高效的数据同步,通过网络您可以在任何地方获得与Web服务器上相同的画面和数据显示、报表显示、报警显示等,同时可以方便快捷的向工业现场发布控制命令,实现实时控制的功能。 组态王集成了对KingHistorian的支持,且支持数据同时存储到组态王历史库和工业库,极大地提高了组态王的数据存储能力,能够更好地满足大点数用户对存储容量和存储速度的要求。KingHistorian是亚控新近推出的独立开发的工业数据库。具有单个服务器支持高达100万点、256个并发客户同时存储和检索数据、每秒检索单个变量超过20,000 条记录的强大功能。能够更好地满足高端客户对存储速度和存储容量的要求,完全满足了客户实时查看和检索历史运行数据的要求。

基于组态王的储液罐液位自动控制

自动化应用软件实训 专业:______ 自动化_______ 班级:动1101 姓名: __________________ 学号:— 指导教师:____________

基于组态王的储液罐液位自动控制系统 1任务要求 基于组态王的储液罐液位自动控制系统的要求:进水阀控制储液罐的水位,出水阀 控制主液箱的水位,排气阀用于保持储液罐内的压强与外界压强一致 ,储液罐与主液 箱设置的最大水位值为100。当储液罐水位<100时,出水阀打开,储液罐液位增加,直 到水位达到100;当主液箱水位<100并且储液罐液位不等于0时,出水阀打开,主液箱 水位增加,储液罐液位减少;当主液箱水位 <100时,出水阀打开,主液箱液位增加, 直到水位达到100;当用户打开水龙头时,主液箱液位减少,出水阀打开,储液罐液位 减少,进水阀打开,储液罐液位增加,如此循环。 2界面设计 2.1新建工程 打开组态王首先新建立工程“课程工程”,进入画面界面,进入画面界面,点击新 建工程画面,进入开发系统界面,确定背景属性。如图 1所示 图1建立工程 22主监控界面设计 打开“控制中心”画面,调用所需要的器件,然后调整好各器件的位置,进行相应 的管道连接,使得整个画面安排合理、紧凑。如图 2所示。 I 字凰 C0M1 COM2 COM3 悔 DDE 实时鶴吨 捱薛匚

图2储蓄罐液位自动控制系统主监控界面 2.3实时趋势曲线设计 新建画面,调用实时趋势曲线,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.4历史趋势曲线设计 新建画面,调用历史趋势曲线,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.5实时报警设计 新建画面,调用报警窗口,选择实时报警窗,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.6历史报警设计 新建画面,调用报警窗口,选择历史报警窗,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.7报表设计 新建画面,调用报表窗口,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 3数据字典设计 选中数据字典,然后双击新建来定义变量,按要求定义相应的变量,并注意其变量类型及其后续设置。最后结果如图3所示。

组态王教程1

组态王软件培训

培训内容 内容包括: 1、组态王介绍 2、新建工程 3、建立IO设备通信 4、建立数据词典 5、画面组态 6、设置,然后运行 7、脚本编程,函数等。

组态王软件是一种通用的工业监控软件, 它适用于从单一设备的生产运营管理和故障诊断,到网络结构分布式大型集中监控管理系统的开发。支持与国内外常见的PLC、智能模块、智能仪表、变频器、数据采集板卡进行数据通讯组态王软件结构由工程管理器、工程浏览器及运行系统三部分构成。

组态软件的安装 1、运行安装组态王程 序。直接安装。 2、安装完后直接安装 驱动。 3、其它内容可以不安 装。

工程管理器:工程管理器用于新工程的创建和已有工程的管理,对已有工程进行搜索、添加、备份、恢复以及实现数据词典的导入和导出等功能。 工程浏览器:工程浏览器是一个工程开发设计工具,用于创建监控画面、监控的设备及相关变量、动画链接、命令语言以及设定运行系统配置等的系统组态工具。 运行系统:工程运行界面,从采集设备中获得通讯数据,并依据工程浏览器的动画设计显示动态画面,实现人与控制设备的交互操作。

组态王软件是一种通用的工业监控软件, 它适用于从单一设备的生 产运营管理和故障诊断,到网络结构分布式大型集中监控管理系统的开发。支持与国内外常见的PLC、智能模块、智能仪表、变频器、数据采集板卡进行数据通讯组态王软件结构由工程管理器、工程浏览器及运行系统三部分构成。 工程管理器:工程管理器用于新工程的创建和已有工程的管理,对已有工程进行搜索、添加、备份、恢复以及实现数据词典的导入和导出等功能。 工程浏览器:工程浏览器是一个工程开发设计工具,用于创建监控画面、监控的设备及相关变量、动画链接、命令语言以及设定运行系统配置等的系统组态工具。 运行系统:工程运行界面,从采集设备中获得通讯数据,并依据工程浏览器的动画设计显示动态画面,实现人与控制设备的交互操作。

组态王日报表例程

组态王日报表的实现例程 配置参考文档 北京亚控科技发展有限公司 技术部

目录 一、功能概述 (3) 一、功能概述 (3) 二、工程实例 (3) 三、操作步骤: (3) 1、定义设备: (3) 2、定义变量: (3) 3.制作画面: (4) 3.1) 创建报表: (4) 3.2) 创建日历控件: (6) 4.进入运行系统: (12) 四、注意事项 (13) 图表 图一报表 (5) 图二报表设计 (5) 图三日报表 (6) 图四日历控件 (7) 图五控件事件函数 (10) 图六保存报表 (10) 图七打印报表 (11) 图八打印报表 (11) 图九运行系统 (12) 图十打印预览 (13)

一、功能概述 常规需求:很多工业现场会用到报表功能,而日报是其中最基本的一种报表形式。 日报表一般为每天整点的数据,每一个变量有24个数据。 组态王中的实现方法: 利用组态王内置报表以及报表的函数来实现对日数据的查询生成日报表。 组态王内置报表的操作类似excel,操作简单、方便,并且组态王提供了大量的报表函数来实现各种复杂功能。 二、工程实例 我们举一个例子来说明日报表的实现方法。在此例程中我们定义五个变量,分别为“压力”、“温度”、“密度”、“电流”、“电压”,运行系统运行后记录历史数据,查询日报表数据时自动从历史数据中查询整点数据生成报表,并可以保存、打印报表。下面就以此为例来演示完成这一要求的具体步骤。 三、操作步骤: 1、定义设备: 根据工程中实际使用得设备进行定义,本例程使用亚控的仿真PLC设备,使用“PLC-亚控-仿真PLC-串口”驱动,定义设备名称为”PLC”。 2、定义变量: 在组态王中定义三个变量:压力(IO实数类型)、温度(IO实数类型)、密度(IO实数类型)。压力变量:最小值0,最大值100,最小原始值0,最大原始值100,连接设备PLC,寄存器INCREA100,数据类型short,读写属性为只读,采集频率1000。记录和安全区选择“数据变化记录”,变化灵敏度选择“0”。 温度变量:最小值0,最大值50,最小原始值0,最大原始值100,连接设备PLC,寄存器DECREA100,数据类型short,读写属性为只读,采集频率1000。记录和安全区选择“数据变化记录”,变化灵敏度选择

组态王水箱液位控制

基于组态王的水箱液位控制系统 1.引言 自动化软件在自动化产品的研发过程中有着举足重轻的地位,尤其在科学技术飞速发展的今天,自动化软件的应用越来越受到人们的重视。本文采用的自动化软件是北京亚控公司出品的组态王6.53,其软件包由工程浏览器(TouchExploer)、工程管理器(ProjMamager)和画面运行系统(TouchView)三部分组成。在工程浏览器中可以查看工程的各个组成部分,也可以完成数据库的构造、定义外部设备等工作;工程管理器内嵌画面管理系统,用于新工程的创建和已有工程的管理。画面的开发和运行由工程浏览器调用画面制作系统TOUCHMAKE和工程运行系统TOUCHVIEW来完成的。 本文利用组态王强大的组态功能和友好的人机界面实现了对供水系统中水塔和储水箱的实时监控,并且具有一定的工程应用价值。 2.系统需求分析及方案论证 2.1 系统需求分析 为了保证系统所需用水的供给,供水系统必须能够及时的对各种用水对象进行供水。这就要求水塔和储水箱的水位不能低于一定的下限以免断水对人们的正常生活所带来的影响,同时水塔和储水箱的水位又不能高于一定的上限,从而使得水资源可以合理的分配利用。如果使用组态王来实现软硬结合的控制,将会给系统的各性能带来良好的提升。

2.2 系统方案论证 整个供水系统可以抽象为水塔和主水箱两个容器的液位控制。水塔的水来自地下水,主水箱的液位由水塔的水泵和主水箱的出水阀门综合决定。各种工业用水和生活用水可以用其对应的储水箱的出水管道代替。这样系统就组态好了。 系统通过智能模块将液位的检测量采集到组态王对应变量中,由组态王统一管理给出系统各部分运行趋势、报表及报警事件,并通过与给定的液位设定比较来控制入水量,从而使液位保持在一定的范围之内。 本系统假定主水箱满液位为100,而水塔容量相对于主水箱来说应该大很多,为了明显起见,我们选水塔容量为500.当水塔液位低于100时水塔进水,主水箱液位低于20时水塔自动供水,高于90时供水关闭。由于工业用水和生活用水的需求相差比较大,所以给他们设定了不同的流速,并且它们的使用时随机的,顾没有对两储水罐的出水阀进行自动控制。应运程序代码如下: if(\\本站点\泵==1) {\\本站点\控制水流=8; \\本站点\水塔=\\本站点\水塔-8; \\本站点\主水箱= \\本站点\主水箱+8; } else {\\本站点\控制水流=0; \\本站点\水塔=\\本站点\水塔; \\本站点\主水箱= \\本站点\主水箱; } if(\\本站点\阀门1==1) {\\本站点\控制水流1=5; \\本站点\主水箱= \\本站点\主水箱-5; } else \\本站点\控制水流1=0; if(\\本站点\主水箱>90) \\\本站点\泵=0; if(\\本站点\主水箱<20)

基于组态王的储液罐液位自动控制

自动化应用软件实训 专 业: 班 级: 姓 名: 学 号: 指导教师: 动1101 自动化

基于组态王的储液罐液位自动控制系统 1 任务要求 基于组态王的储液罐液位自动控制系统的要求:进水阀控制储液罐的水位,出水阀控制主液箱的水位,排气阀用于保持储液罐内的压强与外界压强一致,储液罐与主液箱设置的最大水位值为100。当储液罐水位<100时,出水阀打开,储液罐液位增加,直到水位达到100;当主液箱水位<100并且储液罐液位不等于0时,出水阀打开,主液箱水位增加,储液罐液位减少;当主液箱水位<100时,出水阀打开,主液箱液位增加,直到水位达到100;当用户打开水龙头时,主液箱液位减少,出水阀打开,储液罐液位减少,进水阀打开,储液罐液位增加,如此循环。 2 界面设计 2.1 新建工程 打开组态王首先新建立工程“课程工程”,进入画面界面,进入画面界面,点击新建工程画面,进入开发系统界面,确定背景属性。如图1所示。 图1建立工程 2.2 主监控界面设计 打开“控制中心”画面,调用所需要的器件,然后调整好各器件的位置,进行相应的管道连接,使得整个画面安排合理、紧凑。如图2所示。

图2 储蓄罐液位自动控制系统主监控界面 2.3 实时趋势曲线设计 新建画面,调用实时趋势曲线,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.4 历史趋势曲线设计 新建画面,调用历史趋势曲线,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.5 实时报警设计 新建画面,调用报警窗口,选择实时报警窗,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.6 历史报警设计 新建画面,调用报警窗口,选择历史报警窗,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 2.7 报表设计 新建画面,调用报表窗口,进行相应的属性设置和文字标注,然后保存,以进行后续操作。 3 数据字典设计 选中数据字典,然后双击新建来定义变量,按要求定义相应的变量,并注意其变量 类型及其后续设置。最后结果如图3所示。

组态王中的数据报表制作与保存.doc

组态王中的数据报表制作与保存 摘要:本文主要介绍如果使用组态王来构建数据报表,并以EXCEL的格式在指定的文件路径保存。 关键字:组态王历史库数据报表制作保存 一、引言 数据报表是反应生产过程中的数据、状态等,并对数据进行记录的一种重要形式。它既能反映系统实时的生产情况,也能对长期的生产过程进行统计、分析,使管理人员能够实时掌握和分析生产情况。 组态王提供内嵌式报表系统,工程人员可以任意设置报表格式,对报表进行组态。组态王为工程人员提供了丰富的报表函数,实现各种运算、数据转换、统计分析、报表打印等。既可以制作实时报表,也可以制作历史报表。组态王还支持运行状态下单元格的输入操作,在运行状态下通过鼠标拖动改变行高、列宽。另外,工程人员还可以制作各种报表模板,实现多次使用,以免重复工作。 二、数据报表的制作 数据报表分为实时数据报表和历史数据报表2类。报表的构建方法如下: 在画面内,使用工具箱中的报表窗口按钮创建一个报表窗口,如图1所示。 图1 创建后的报表窗口 用鼠标双击报表窗口的灰色部分,弹出“报表设计”对话框,该对话框主要设置报表的名称、报表表格的行列数目以及选择套用表格的样式。 1、制作实时数据报表 实时数据报表是实时显示相关变量的数据值,在报表窗口的单元格中直接引用变量来实现。在报表的单元格中直接输入“=变量名”,既可在运行时在该单元格中显示该变量的数值,当变量的数据发生变化时,单元格中显示的数值也会被实时刷新。 2、制作历史数据报表 历史数据报表是从组态王的历史库中查询相关变量的历史数据,并在历史数据报表内显示,因此对历史数据报表要查询的数据必须设置历史记录属性。 在组态王中,离散型、整型和实型变量支持历史记录,字符串型变量不支持历史记录。组态王的历史记录形式可以分为数据变化记录、定时记录(最小单位为1分钟)和备份记录。记录形式的定义通过变量属性对话框中提供的选项完成。如图2所示。

WinCC实例教程

WinCC 视频教程知识点总结 第一讲组态软件基础 一、WinCC简介 1、WinCC 西门子视窗控制中心SIMATIC WinCC(Windows Control Center)是在计算机上对PLC 控制的运行设备进行状态监控的软件,是PC上的监控软件。 运行该软件,可以动画监视现场设备的运行状况,监视相应的运行参数,以及更改、设置系统的运行数据。 2、WinCC的特点 (1)开放性 WinCC对用户所添加的任何形式的扩充是绝对开放,该绝对开放性是通过WinCC的模块结构及其强大的编程接口来获取的。 (2)将应用软件集成到WinCC中 WinCC提供了一些方法将其他应用程序和应用程序块统一地集成到用于过程控制的用户界面中。OLE应用程序窗口和OLE自定义控制或Active控制可以集成到WinCC应用软件中。 (3)WinCC中的数据管理 WinCC的数据库为Windows SQL,从属于WinCC,该数据库用于存储所有面向列表的组态数据(如变量列表和消息文本),以及当前过程数据(如消息,测量值和用户数据记录等)该数据库具有服务器功能。

(4)在项目开始之前规定组态分类 a、文件夹名称 除一些特殊字符(例如\)之外,文件夹名称允许使用所有的字符。还允许使用数字0~9. b、变量名称 变量名称可以多于8个字符。但应尽量避免太长的名称。WinCC项目的变量名称必须是唯一的。如果变量名称还包含了其他信息,这对用户将非常有用。 c、画面名称 确定画面名称时应注意其长度的影响,太长的名称(文件名)不容易识别(列表框中的选择,脚本中的调用等)。根据经验表明,长度最好不超过28个字符,画面名称应遵守以下限制条件:①最大长度为255个字符;②不使用某些特殊字符(例如\);③画面名称中的字母不区分大小写。 二、WinCC软件的安装 1、安装S7-300/400PLC编程软件STEP7及PLCSIM; 2、安装数据库软件SQL Server 2000; 3、安装消息列队(软件操作); 4、安装WinCC(建议不选典型安装,选择全部安装)。 三、WinCC管理器 1、WinCC项目管理器的结构 WinCC项目管理器的用户界面由以下元素组成:标题栏、菜单栏、工具栏、状态栏、浏览窗口和数据窗口:

组态王使用常见问题

组态王使用常见问题 1、变量设定中最大(小)值及最大(小)原始值的意义? [最大(小)值是变量在现实中表达的工程值(如:温度、压力等)的大小,而最大(小)原始值是采集设备中[寄存器]数字量的最大(小)值(如板卡中的819-4095等)。一般对于板卡设备此值为物理量经AD转换之后的值,如12BitAD 此值范围0~4096、16BitAD为0~65535,对于PLC、智能仪表、变频器,其本身已将物理值转换为工程值所以此时最大(小)值与最大(小)原始值在设置时是一致的. 2、为什么变量无法删除,如何删除变量? [在组态王中,只有未使用的变量才能被删除,因此在删除变量之前,必须去掉在画面或命令语言、控件引用处,等处与之有关的连接,如果还是无法删除,在工程浏览器中执行工具-更新变量计数命令,重新统计变量,在变量使用报告中可以查询变量是否还在某些地方使用,将其连接断开后,利用工具-删除未用变量将变量删除。 3、工程运行时,显示通讯协议组件失败? [设备驱动安装错误:1、安装新的驱动2、在开发状态下从新连接设备,如果还是有错误,请联系驱动部索要新的驱动程序] 4、光盘上的典型案例无法打开? [将工程拷贝到硬盘上将属性改为存档即可 5、如何在打开机器时自动进入组态王? [将touchview快捷方式拷贝到系统开始\程序\启动中 6、怎样把工程文件变小?

[可以删除*.AL2(报警信息文件),*.REC(历史记录文件),*.111文件(*.pic 文件的备份文件)的文件。 7、如何在线增删用户及用户密码和权限? [使用editusers()函数(用户权限需大于900)] 8、在定义变量的基本属性时状态栏中的保存数值、保存参数是什么意思? [保存参数:在系统运行时,修改变量的域的值(可读可写型),系统自动保存这些参数值,系统退出后,其参数值不会发生变化。当系统再启动时,变量的域的参数值为上次系统运行时最后一次的设置值。无需用户再去重新定义。 保存数值:系统运行时,当变量的值发生变化后,系统自动保存该值。当系统退出后再次运行时,变量的初始值为上次系统运行过程中变量值最后一次变化的值。 9、开发狗与运行狗的区别? [开发狗是用于工程开发使用的,为了方便调试支持6小时的连续运行,运行狗是用于工程实际运行,不能进行开发. 21:如何不进入系统桌面环境而直接运行组态王工程如何实现(Win2000系统)? 运行RegEdit文件:找到我的\HKEY_Local_MACHINE\software\Microsoft\Windows NT\currentVersion\winlogon 将Userinit=c:\winnt\system32\userinit.exe改为:Userinit= c:\program files\kingview\touchvew.exe

组态王教程——很实用

组态王简明教程 组态王软件的结构 “组态王”是运行于Microsoft Windows 98/NT中文平台的全中文界面的组态软件,采用了多线程、COM组件等新技术,实现了实时多任务,软件运行稳定可靠。组态王具有一个集成开发环境“组态王工程浏览器”,在工程浏览器中您可以查看工程的各个组成部分,也可以完成构造数据库、定义外部设备等工作。画面的开发和运行由工程浏览器调用画面制作系统TOUCHMAK和画面运行系统TOUCHVEW来完成的。TOUCHMAK是应用程序的开发环境。您需要在这个环境中完成设计画面、动画连接等工作。TOUCHMAK具有先进完善的图形生成功能;数据库中有多种数据类型,能合理地抽象控制对象的特性;对变量报警、趋势曲线、过程记录、安全防范等重要功能都有简单的操作办法。TOUCHVEW是“组态王”软件的实时运行环境,在TOUCHMAK中建立的图形画面只有在TOUCHVEW中才能运行。TOUCHVEW从工业控制对象中采集数据,并记录在实时数据库中。它还负责把数据的变化用动画的方式形象地表示出来,同时完成变量报警、操作记录、趋势曲线等监视功能,并生成历史数据文件。 组态王怎样和下位机通讯 “组态王”把第一台下位机看作是外部设备,在开发过程中您可以根据“设备配置向导”的提示一步步完成连接过程。在运行期间,组态王通过驱动程序和这些外部设备交换数据,包括采集数据和发送数据/指令。每一个驱动程序都是一个COM对象,这种方式使通讯程序和组态王构成一个完整的系统,既保证了运行系统的高效率,也使系统能够达到很大的规模。 怎样产生动画效果 开发者在TOUCHMAK中制作的画面都是静态的,那么它们如何以动画方式反映工业现场的状况呢?这需要通过实时数据库,因为只有数据库中的变量才是与现场状况同步变化的。数据库变量的变化又如何导致画面的动画效果呢?通过“动画连接”就是建立画面的图素与数据库变量的对应关系。这样,工业现场的数据,比如温度、液面高度等,当它们发生变化时,通过驱动程序,将引起实时数据库中变量的变化,如果画面上有一个图素,比如指针,您规定了它的偏转角度与这个变量相关,您就会看到指针随工业现场数据的变化而同步偏转。动画连接的引入是设计人机接口的一次突破它把程序员从重复的图形编程中解放出来,为程序员提供了标准的工业控制图形界面,并且有可编程的命令语言连接来增强图形界面的功能。 建立应用程序的一般过程

用组态王报表

用组态王报表实现显示设备启动、停止时间和运行时长的方法 在对设备的状态进行监控中,往往要取得一些参数来记录和分析设备的运行状况。这其中就包括设备的启动时间、停止时间和运行的时长。当然,组态软件不会有这样的功能,让我们轻易实现。不过,通过组态软件的报表功能,再通过二次开发,写一些脚本语言。实现起来倒也不难。以下,以组态王为例,是对操作过程的描述,希望能够对需要的人有一些帮助。 总体思路:以一个项目为例。在这个工程中,有21台设备的运行状态需要记录,他们的运行状态依次记录在报表中。报表中的每一行都表示,此设备的一个运行周期。由于设备状态在报表中依次排列,因此需要相应的变量来保存该设备状态所在的行数。这样,当停止该设备时,才能将“停止时间”和“运行时长”填充到正确的位置。这样,就需要建立21个内存整形变量。由于报表中的记录依次排列,因此还需要一个变量来保存报表中最后一条记录的行数,这样才能顺序填充记录。 1、新建报表,并命名为“报表1”。

2、创建内存整形变量。21个内存变量分别保存21个设备状态所在的行数。1个内存变量保存报表中最后一条记录的行数。

3、编写自定义函数,好处是减少代码量,修改方便。 脚本内容具体如下 //"var"是变量的名称,"name"是要显示在报表中的字符串,"varRow"是保存记录的行数//用年月日,时分秒,系统变量来组合形成日期。 //不用日期变量,因为其格式长度不确定,在后来的分解中会很麻烦。 string strY=StrFromInt(\本站点$年, 10 ); string strM=StrFromInt(\本站点$月, 10 );

组态王 实例

一、概述 组态王软件结构由工程管理器、工程浏览器及运行系统三部分构成。工程管理器:工程管理器用于新工程得创建与已有工程得管理,对已有工程进行搜索、添加、备份、恢复以及实现数据词典得导入与导出等功能。工程浏览器:工程浏览器就是一个工程开发设计工具,用于创建监控画面、监控得设备及相关变量、动画链接、命令语言以及设定运行系统配置等得系统组态工具。运行系统:工程运行界面,从采集设备中获得通讯数据,并依据工程浏览器得动画设计显示动态画面,实现人与控制设备得交互操作。 通常情况下,建立一个应用工程大致可分为以下六个步骤: 1.创建新工程为工程创建一个目录用来存放与工程相关得文件。 2.定义硬件设备并添加工程变量添加工程中需要得硬件设备与工程中使 用得变量,包括内存变量与 I/O 变量。 制作图形画面并定义动画连接按照实际工程得要求绘制监控画面并 使静态画面随着过程控制对象产生动态效果。 4.编写命令语言通过脚本程序得编写以完成较复杂得操作上位控制。 进行运行系统得配置对运行系统、报警、历史数据记录、网络、用户 等进行设置,就是系统完成用于现场前得必备工作。 6.保存工程并运行完成以上步骤后,一个可以拿到现场运行得工程就制 作完成了。 接下来我将建立一个反应车间得监控中心。监控中心从现场采集生产数据,以动画形式直观得显示在监控画面上。监控画面还将显示实时趋势与报警信息,并提供历史数据查询得功能,完成数据统计得报表。将实时数据保存到关系数据库中,并进行数据库得查询等。 二、建立一个新工程 一) 建立一个新工程 点击“开始”---〉“程序”---〉“组态王 6、5”---〉“组态王6、5”(或直接双桌面上组态王得快捷方式),启动后得工程管理窗口如图2-1 所示: 图2-1 图2-2 新建:单击此快捷键,弹出新建工程对话框建立组态王工程。点击工程管 理器上得“新建”,弹出“新建工程向导之一”,接下来一直按下一步直到点 击完成后会出现“就是否将新建得工程设为组态王当前工程”得提示,选择 “就是”即可新建一工程如图2-2: 二) 工程浏览器

组态王油罐液位控制课设

目录 任务书 (3) 第一章火电发电厂的介绍 (6) 1.1设计目的 (6) 1.2 厂用电的设计 (6) 1.3厂用电的设计原则 (6) 1.4主接线中设备配置的一般准则 (6) 1.4.1开关的配置 (6) 1.4.2电压互感器的配置 (6) 1.4.3电流互感器的配置 (7) 第二章基于组态王的油罐液位控制 (8) 2.1 设计目的 (8) 2.2 组态王简介 (8) 2.3 控制要求 (8) 2.4组态软件在油罐液位中的应用 (8) 2.4.1定义外部设备 (8) 2.4.2数据词典定义 (9) 2.4.3创建组态画 (12) 2.4.4动画连接 (12) 2.4.5阀门动画设 (13) 2.4.6液体流动动画设置 (14) 2.4.7 命令语 (17) 2.4.8 报警和件 (17) 2.4.8.1 报警和事件窗口用 (17) 2.4.8.2 建立报警和事件窗口 (18) 2.4.9趋势曲线 (20) 2.4.9.1实时趋势曲线 (20) 2.4.9.2历史趋势曲线 (21) 2.4.9.3定义历史数据文件的存储目录 (21) 2.4.10运行结果图 (21) 第三章心得体会 (22) 第四章参考文献 (22)

第一章火电发电厂的介绍 1.1设计目的 (1)对发电厂各子系统有明确的认识和了解; (2)学会厂用电的设计; (3)学会发电厂如何并网。 1.2厂用电的设计 发电厂在启动、运转、停役、检修过程中,有大量由电动机拖动的机械设备,用以保证机组的主要设备(如锅炉、气轮机或水轮机、发电机等)和输煤、碎煤、除灰、除尘及水处理的正常运行。这些电动机以及全厂的运行、操作、试验、检修、照明用电设备等都属于厂用负荷,总的耗电量,统称为厂用电。 1.3厂用电设计原则 厂用电的设计原则与主接线的设计原则基本相同,主要有: (1)接线应保证对厂用负荷可靠和连续供电,使发电厂主机安全运转。 (2)接线应灵活的适应正常、事故、检修等各种运行方式的要求。 (3)厂用电源的对应供电性。 (4)设计还应适当注意其经济性和发展的可能性并积极慎重的采用新技术、新设备,使厂用电接线具有可行性和先进性。 (5)在设计厂用电接线时,还应对厂用电的电压等级、中性点接地方式、厂用电源及其引线和厂用电接线形式等问题,进行分析和论证。 1.4 主接线中设备配置的一般规则 1.4.1 开关的配置 (1)中小型发电机出口一般应装设隔离开关;容量为200MW及以上大 机组与双绕组变压器的单元连接时,其出口不装设隔离开关,但应有可拆连接点。 (2)在出线上装设电抗器的6~10KV配电装置中,当向不同用户供电的两 回线共用一台断路器和一组电抗器时,每回线上应各装设一组出线隔离开关。 (3)接在发电机、变压器引出线或中性点上的避雷器可不装设隔离开关。 (4)一台半断路器接线中,视发变电工程的具体情况,进出线可装设隔离开关也可不装设隔离开关。 (5)断路器的两侧均应配置隔离开关,以便在断路器检修时隔离电源。 (6)中性点直接接地的普通型变压器均应通过隔离开关接地;自耦变压器的中性点则不必装设隔离开关。 1.4.2 电压互感器的配置

基于组态王的储油罐液位控制的监控软件系统设计

基于组态王的储油罐液位控制的监控软件系统 设计 文件排版存档编号:[UYTR-OUPT28-KBNTL98-UYNN208]

毕业设计(论文)任务书 储油罐液位控制的监控软件系统设计

摘要:利用组态王开发的监控软件系统,是新型的工业自动控制系统,它以标准的工业计算机软、硬件平台构成的集成系统取代了传统的封闭式系统。组态王监控软件系统在石油化工生产中起着非常重要的作用。 本文针对生产过程中的储油罐液位,设计开发了基于组态王的上位机监控软件系统。该系统利用北京亚控公司生产的组态王软件实施上位机界面组态,对系统进行实时的操作和监控,在整个原油液位控制过程中不需要下位机。储油罐液位监控软件系统实现上位机直接控制,使用组态王软件设计人机对话界面,完成上下限参数的在线设置,通过在组太王工程浏览器中的命令语言编辑对话框里输入控制程序,并且经过不断地调试运行,实现计算机在线自动监控。在实际的原油生产中,该监控软件系统必须和外部硬件设备连接,通过RS232/485通讯电缆进行计算机与现场设备之间的数据交换,从而实现了对过程控制装置液位的实时数据采集和实时控制。 通过分析储油罐液位监控软件系统的设计要求,文章详细阐述了该系统的设计方法和制作流程,并进行了模拟仿真运行,最终达到了液位自动监控。本次设计的重点是组态画面的建立以及命令语言程序的编写,只有准确地完成这两个方面,才能有效地实现液位的自动控制功能。 仿真测试结果表明:该系统满足了设计需求,能够按照给定值进行储油罐液位的实时自动监控,具有良好的稳定性。 关键词:监控;组态王;液位 The design of Tank level control monitoring software system Abstract: The monitoring software system developed by the Kingview is a new type of industrial automatic control system, which is an integrated system having standard industrial computer software and hardware platform. It has replaced the traditional closed system. The monitoring software based on the Kingview plays a very important role in the petrochemical industry. In this paper, aiming at the tank level in the production process, the PC monitoring software system based on the kingview has been designed and developed. The system implement the PC interface configuration using the Kingview produced by Bejing Asia control company. It can complete the real-time operation and monitoring of the system. The oil level control in the whole process does not require the the next crew. The tank level monitoring software system achives the direct control of the host computer. It completes the on-line set of the upper and lower parameters using the interactive

相关文档