前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇常见通讯协议范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。
关键词 网络通讯协议 套接字 网络聊天室
网络聊天室是网络应用中最普遍的一种应用,网上聊天( 聊天室、QQ、ICQ 等) 就是给网络用户提供的一个方便快捷的交流平台。因此,各大门户网站和企业网站都提供了专门的聊天室网络服务,例如,新浪聊天室、网易聊天室、搜狐聊天室, 也有一些专门的聊天室网站和企业, 如碧聊、腾讯QQ等。
本文通过网络通讯协议、编程模式、聊天数据存储方式3个方面,从技术角度,对网络聊天室的设计方法进行探讨,以期对学习和实现网络聊天室的设计人员选择何种方式实现聊天室功能提供参考依据和帮助。
一、网络通讯协议
首先,我们分析网络聊天室常用的网络通讯协议。目前,聊天软件使用最多的协议是UDP和TCP。UDP是不可靠传输服务,TCP是可靠传输服务。UDP就像点对点的数据传输一样,发送者把数据打包,包上有收信者的地址和其他必要信息,至于收信者能不能收到,UDP协议并不保证。而TCP协议就像(实际他们是一个层次的网络协议)是建立在UDP的基础上,加入了校验和重传等复杂的机制,来保证数据可靠地传达到收信者。一个是面向连接,一个无面向连接,各有用处。在一些数据传输率高的场合如视频会议倾向于UDP,而对一些数据安全要求高的地方,如淘宝旺旺,要保留聊天信息作为交易的佐证,就倾向于TCP。在实际应用中,用于编写聊天室的网络编程语言(例如C#)里,已将TCP、UDP协议封装为相应的类库,提供了一系列方法供程序员进行操作。可以简单地理解为,基于TCP的编程就好像通电话,一方拨通电话,另一方必须按下接听键,两者之间才能建立起有效的连接。而基于UDP的编程就好像是收音机广播,一方只管播,对方谁在听或者是否收到,发送消息方并不关心。常用聊天室(聊天工具)应用的网络通讯协议列表,见表1:
表1 常用聊天室(聊天工具)应用的网络通讯协议列表
实现基于UDP协议的C/S聊天室的编程代码片段:
public partial class Form1 : Form
{
UdpClient uc; //声明Udp客户端
public Form1()
{
uc = new UdpClient(); //初始化
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string temp = this.textBox1.Text; //保存TextBox文本
//将该文本转化为字节数组
byte[] b = System.Text.Encoding.UTF8.GetBytes(temp);
//向本机的8888端口发送数据
uc.Send(b, b.Length,Dns.GetHostName(),8888);
}
}
实现基于TCP协议的C/S聊天室的编程代码片段:
public partial class Form1 : Form
{
//声明Tcp客户端
private TcpClient tc;
//声明网络流
private NetworkStream ns;
public Form1()
{
CheckForIllegalCrossThreadCalls = false;
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
//注册本机8888端口
tc = new TcpClient(“localhost”,8888);
//实例化网络流对象
ns = tc.GetStream();
string temp = this.textBox1.Text;
StreamWriter sw = new StreamWriter(ns);
StreamReader sr = new StreamReader(ns);
//将TextBox1的值传给服务器端
sw.WriteLine(temp);
sw.Flush();
//接收服务器端回传的字符串
string str = sr.ReadLine();
this.textBox2.Text = str;
sr.Close();
sw.Close();
}
}
二、编程模式
1.分析聊天室的编程模式。目前网络编程的主要模式是:C/S 和 B/S两种编程模式。C/S是美国Borland公司最早研发,B/S是美国微软公司研发。
2.C/S(Client/Server即客户机/服务器)模式。就是需要单独开发客户应用程序和服务器程序,充分利用客户机和服务器两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。优势是:应用服务器运行数据负荷较轻,数据的储存管理功能较为透明。劣势是:维护成本高且投资大,客户端需要安装专门的客户端程序。
3.B/S(Browser/Server,即浏览器和服务器)模式。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种模式下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,而主要事务逻辑在服务器端(Server)实现,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。优势是:维护和升级方式简单,成本低,客户端不需要安装专门的软件,Web 浏览器就可以使用聊天服务。劣势是:应用服务器运行数据负荷较重。见表2。
表2 C/S模式和B/S模式的区别
常见的C/S模式聊天室,主要是基于套接字(Socket)实现的,而Socket有两种主要的操作方式:面向连接的(TCP)和无面向连接的(UDP)。基于TCP的socket编程是采用的流式套接字(SOCK_STREAM),而基于UDP采用的数据报套接字(SOCK_DGRAM)。下面以一个基于UDP(面向无连接)的socket编程,说明C/S模式聊天室设计步骤:
第一,服务端程序的设计步骤。(1)创建套接字(soeket)。(2)将套接字绑定到一个本地地址和端口上(bind)。(3)等待接收数据(recvfrom)。(4)关闭套接字。
第二,客户端的设计步骤。(1)创建套接字(socket)。(2)向服务器发送数据(sendto)。(3)关闭套接字。
B/S模式聊天室,应用程序存储在服务器端,通过web服务器,客户端通过web浏览器访问。
三、聊天数据存储方式
聊天室设计实现中,还有一个重点和难点问题,就是怎样保存聊天内容,以及如何将聊天的信息及时快捷地在服务器和客户之间进行传递和共享。目前聊天室的数据存储方式主要有以下三种:
(1)利用 Application对象保存聊天内容。
(2)利用文本文件保存聊天内容。
(3)利用数据库直接保存聊天内容。
第一种方式,就是不需要在外存储器上存储聊天数据,而是在服务器的内存中保留聊天信息,因为内存资源有限,需要设置聊天信息内容长度,以队列方式即时更新数据,即内容超出长度,覆盖旧信息。优势是读写速度是三种存储方式中最快,一般用于不需要登录的聊天室,早期的聊天室用得较多,或开发简易聊天室用于研究学习聊天室编程技术。
第二种方式,就是把聊天数据以文本文件形式保存在客户端或服务器端,例如ini文件或log文件,为了提高信息访问速度,可以按天为单位创建ini文件,保存聊天信息。该存储方式的劣势是查找和管理聊天信息比较繁琐。
第三种方式,把聊天数据保存在数据库中,可以充分利用数据库管理系统管理数据的功能,加强了数据的管理。但是需要注意的是,聊天室的访问量大,以及随着历史数据的累计,访问数据库的速度会成为瓶颈,因此需要做一些策略考虑。一般把聊天室的聊天数据分两部分存储,历史数据采用数据库存储,并自动建表以天为单位,最新200条(或者根多)。聊天数据使用内存存储,超过一定时间,例如30 min转储到相应的当天自动建的表中这样可以有效地提高数据库的读写速度,避免每次请求读出所有数据。
四、结束语
网络聊天室是信息交流平台之一,除了基本聊天功能,已经朝着实用性的方向发展。例如:在线学习、名师(专家)在线辅导答疑、远程培训等,有针对性的实用聊天室,对聊天室的设计目的更加明确,设计人员可以根据用户需求,参照上述内容分析,有针对地选择合适的设计方法,这对设计实现网络聊天室非常重要。
参考文献
关键词:LED显示屏;Linux;VSD控制卡;二次开发
中图分类号:TP316
LED(发光二极管)显示屏是80年代末期在全球迅猛发展的新型信息媒体之一。其利用可发光的二极管构成的二维点阵模块或像素单元组成在一定面积的显示屏幕上,具有可靠性高、使用时间长、使用成本低、显示稳定且亮度高、环境适应能力强等特点,因此被广泛应用于商业广告、金融交易、政府机构、信息报导等诸多领域。随着科学水平的快速发展,LED显示屏技术也在不断地完善和发展,应用领域愈加广阔。
通常情况下,对于小模块显示屏或者简单的字符图像显示都是采用51系列单片机作为控制芯片。利用单片机控制LED显示屏的设计结构简单,使用的器材较为常见且价格低廉,编程简单,调试方便。但是由于单片机的端口资源有限,如果要使显示的内容做出左右移动,飞入飞出,中间展开,百叶窗等特殊效果,这就需要编写相当复杂的算法程序,需要有较高的编程能力。
对于大屏幕的LED显示,利用51系列单片机控制移位寄存器来实现将数据的串行转为并行的方式已经无法操作点阵规模如此庞大的显示屏[1]。目前,一般采用的方案是使用ARM作为主控芯片,用于控制显示内容复杂,显示效果丰富的大屏幕LED显示。通过使用可编辑逻辑器件来实现系统的电路功能,不但能满足大型LED显示系统图像数据传输对速度的高要求,改善了电路的结构和性能状况,并且增加了系统电路的可靠性,使整个系统更加灵活。在实际生活应用中LED显示屏的显示内容、显示效果或显示方式如需发生变化,程序设计者只需要灵活修改相应设计语言代码即可,而不需要改变系统的电路结构,从而缩短了设计周期,降低了成本。
本设计的最终目的是开发一个能够应用于实际生活中的LED显示系统,使用者可以方便灵活地操作,并作为学习交流使用。由于CPU和端口资源极其有限,故本设计采用以ARM9作为系统控制核心的视展VSD控制卡,完成串口通讯和网口通讯两种通讯方式,通过二次开发实现对LED显示屏的实时控制。串口通讯所使用的协议是RS232串口通讯协议。网络通讯使用的是100M/10M自适应网口,可对控制卡任意设定IP地址及MAC地址,PC机可自动连接控制卡,控制卡也能够自动上报IP到指定的计算机或服务器,可用于外网通讯。
1 原理分析
LED点阵模块是把一定数量的LED灯管按行列方式排列在一起,通过实现对特定的LED灯管发亮与不发亮的控制完成各种文字字符或图形图像的显示。在固定面积的点阵模块中集成的LED像素越多,显示的文字字符或图形图像就会越清晰。不管显示的是文字字符还是图形图像信息,其都是由LED像素拼凑而成。若需要显示某个指定的字符,则只要使LED显示屏上相应位置的灯管处于正向工作状态(即灯管两端加上正向电压),点亮该LED灯管即可。
显示屏的扫描方式一般分为静态扫描和动态扫描两种。静态扫描要求每个像素点分别对应一套驱动电路,因此若显示屏为n*m矩阵模块,则需要有n*m套相应的驱动电路。动态扫描应用多路复用技术把N条I/O线路的可用数量划分成适当数量的行与列,通过行扫描和列扫描方式来控制指定的灯珠发亮[2]。若显示屏采用的是P路复用技术,则每P个像素点只需要一套驱动电路,n*m个矩阵模块仅仅需要n*m/P套驱动电路即可。目前动态扫描方式主要有以下几种:1/2扫描,1/4扫描,1/8扫描,1/16扫描等。由于显示屏是按照逐行扫描刷新显示的,因此扫描的方式决定了显示刷新的方式。如1/4扫描就是每次刷新1行,4行为一个扫描周期。一般来说,室内屏采用1/16扫描,室外屏和半室外屏采用1/16或者1/8扫描。对于放置在烈日容易照射到的环境下一般采用1/4扫描。用于实际生活中的LED显示屏,几乎都是采用动态扫描驱动方式。
2 系统设计与实现
由于本设计采用的LED显示屏仅有显示驱动程序,故还需编写系统上位机的控制程序。系统设计的原理图如下:
图1 系统原理图
该设计方案的控制流程为:
(1)程序中使用MiniXML解析库将VSD控制卡的一些配置参数存储在XML文件中,文件中存储的数据信息主要有控制卡的IP地址,端口号,显示屏的颜色、宽度和高度等。程序中通过访问该文件读取配置参数,如使用串口通讯方式则按照串口RS232的通讯协议实现数据通信,网口通讯是利用socket编程实现与控制卡的通讯连接。
(2)待PC机与控制卡实现通讯后,程序中按照通讯协议封装显示内容、显示效果和显示方式的数据信息,将这些数据信息打包成数据包。通过串口通讯或网口通讯方式将该数据包及其相应的控制信息发送至ARM控制卡。控制卡将这些数据信息解析后,形成相应的控制码,并存储在内部的存储器中。
(3)控制卡将存储在内部存储器的数据信息发送至扫描驱动电路,并对其提供足够的驱动电流。扫描驱动电路对上位机传送过来的驱动信号分成两路信号,一路传给行驱动电路,一路传给列驱动电路,通过行扫描及列扫描方式控制相应的行与列的LED灯管。
(4)将行驱动信号及列驱动信号加载到LED显示器上,点亮与驱动信号相对应的灯管即可显示出指定的内容。在存储器中的数据信息没有显示完成的过程中,串口通讯会关闭RS232的接收器中断,用来避免显示屏显示的过程中有新的数据传来而中断内容显示的完整性。而网口通讯则关闭Socket描述符,将CPU资源更多地用在显示屏的显示上。
VSD控制卡的通讯协议采用三层协议模式:链路层、传输层和节目应用层。链路层协议通过添加起始符(0x55),添加结束符(0xAA),计算并添加CRC校验码,并对数据段进行关键字转义等进行封装打包。传输层协议完成的工作是封装发送控制命令或者节目数据拆分组包的数据包。一条控制命令形成一个传输层的数据包。一个节目数据的发送,对应于多个传输数据包。一般为起始包,数据包,数据包,……,数据包,结束包,即一个起始包,多个数据包,一个结束包。节目应用层协议封装播放节目的数据,数据包包含节目属性头部,节目,区域,页面,内码文字,文本文字,数字时钟,图形图像等元素的协议定义。
3 结束语
由于本系统的LED显示屏模块已经具备较为完善的底层驱动程序和驱动控制电路,所以本系统的关键是软件设计实现与控制卡之间的通讯,组包拆包,发送数据包等。本设计较为完善地实现系统该有的各项功能,能很好地运用于证券交易、金融、体育、交通、广告等领域中。系统设计实现了串口通讯和网口通讯两种方式,通过串口通讯可以短距离控制LED显示屏,使用的数据线较少。网口通讯是为了能够实现远距离控制和多卡控制,使用Socket网络编程实现远程控制。
参考文献:
[1]周志敏,周纪海,纪爱华.LED驱动电路设计与应用[M].北京:人民邮电出版社,2006.
[2]周小平,何丰,曾平平.LED显示屏及其扫描电路的硬件及软件实现[J].印刷电路信息,2005(01):36-38.
作者简介:王艺伟(1991-),男,福建龙海人,学生,学士,研究方向:嵌入式应用。
【关键词】监控系统;组态软件;火力发电厂;CEMS;FameView
Abstract:Based on FameView configuration software,combined with network technology and communication technology,designed a power plant's environmental monitoring system.This paper presented the system structure,hardware design and software pared with CEMS system,this system not only can prove compliance and effectiveness of the data of CEMS system,accurately reflect the actual sewage situation of the thermal power plant,but also can reduce the pollution to the environment through the monitoring and control of pollutant discharge,has significant social benefits.
Key words:monitoring system;configuration software;thermal power plant;CEMS;FameView
火力发电厂的CEMS系统测点装在烟道或者烟囱内,所有的采样均来自即将排出的烟气,属于末端监控系统。这种系统有一定的弊端,数据的人为干扰因素多,其有效性、可信知度受到怀疑,不能为环境执法、排污权交易等提供有力的依据。针对目前存在的问题,提出一种基于FameView的火力发电厂环保监控系统,该系统通过标准的通讯协议采集火力发电厂环保治理系统的实时数据,生成历史数据和历史曲线,能够直观地反映火力发电厂环保治理设备的运行情况及污染物排放情况,通过对这些数据进行分析,能够验证CEMS数据的合规性、有效性,同时也能够全面监测火力发电厂的运行工况。
1.环保监控系统总体介绍
火力发电厂的环保治理自动化系统主要有脱硫DCS(Distributed Control System,集散控制系统)系统、除尘系统、CEMS系统和主机脱硝DCS系统等。火力发电厂环保监控系统集网络技术、通讯技术、数据库技术等现代工业技术于一体,通过特定的通讯协议采集这些系统的主要环保数据的实时值,生成实时曲线,并把实时数据存到数据库中,利用数据库的运算功能,生成历史数据、历史曲线和报表,通过VPN(Virtual Private Networ,虚拟专用网络)将数据传输至环保部门的数据平台上,实现远程监控,系统结构图如图1所示。
1.1 前端数据采集单元
系统的前端数据采集单元通过标准的通讯协议采集火力发电厂的主要环保数据,采集方式分为“软采”和“硬采”。“软采”即是应用FameView组态软件强大的通讯功能,通过标准的通讯接口协议,从环保自动化系统的工程师站或监控后台采集主要环保数据,数据来源于电厂的DCS系统或监控后台。对于一些重点环保数据,例如增压风机电流、旁路挡板开度、供浆泵电流、循环浆液泵电流等数据,不仅要“软采”而且要“硬采”,“硬采”即是硬接线采集,通过增加信号隔离器将4~20mA模拟信号一分为二,一路信号送到DCS或PLC系统,另一路信号送到环保监控系统的数据采集装置(RTU),数据来源于现场仪表。
1.2 数据存储与运算单元
运用数据库技术将前端数据采集单元采集的数据进行筛选、计算、总结,将得到的新数据存入数据表中。
1.3 数据发送单元
将数据库中存储的数据压缩、打包通过VPN传送到数据平台上,平台软件接收数据包,然后对其解析,得到环保数据。
图1 监控系统结构图
2.环保监控系统的硬件设计
系统硬件的设计应使设备可靠运行,并达到预计的功能,同时保证与其通讯设备的网络安全,系统的硬件组成及网络拓扑如图2所示,虚框内为系统集成单元。
图2 环保监控系统的硬件组成及网络拓扑图
2.1 接口机和数据采集装置
接口机和数据采集装置(RTU,Remote Terminal Unit)是采集单元的核心,直接与发电厂的环保自动化系统和现场信号隔离器相连,安装于接口机上的组态软件主要负责与火力发电厂的环保治理自动化系统和采集模块进行通讯,通过标准的通讯协议采集环保数据。
2.2 服务器
服务器是整个环保监控系统的核心,集数据的存储、运算、传送等功能与一体,把接口机及采集模块采集的数据进行分类存储,生成历史数据和报表,通过VPN专线送到环保监控部门的数据平台。
2.3 单向物理隔离网闸
单向物理隔离网闸是专门为企业过程控制系统和管理信息系统之间进行单向物理隔离而开发的一款网络安全隔离设备,使数据只能够进行单向传输,从而切断了外部网络与接口机的反向数据传输通道。使用单向物理隔离网闸是为了满足电力系统二次防护的要求,保证火力发电厂的DCS系统及其他自动化系统的网络安全。
2.4 其他硬件
交换机能够加快局域网之间的数据交换,给数据提供汇集和传输通道,接口机采集的环保数据通过交换机提供的通道汇集到一起,再传送到服务器。
KVM是键盘(Keyboard)、显示器(Video)、鼠标(Mouse)的缩写。KVM技术的核心思想是:通过适当的键盘、鼠标、显示器的配置,实现系统和网络的集中管理,利用KVM在接口机、服务器之间进行切换显示。
3.FameView组态软件的设计
组态软件是指一些数据采集与过程控制的专用软件,属于自动控制系统监控层一级的软件平台和开发环境,使用灵活的组态方式,为用户提供用于快速构建工业自动控制系统的软件工具。组态软件应该能支持各种工控设备所常见的通信协议,并且提供分布式数据管理和网络功能。根据系统设计的需要,组态软件的设计主要包括驱动连接、画面设计、变量连接与数据存储三个部分。
3.1 组态软件的驱动连接
对于组态软件来说,驱动程序起着非常重要的作用,是设备与设备间通讯的基础,它直接负责从设备采集实时数据并将操作命令下达给通讯对象。驱动程序的执行率与稳定性将直接影响到组态软件的实时性与可靠性。该环保监控系统得接口机与其试运行火力发电厂的脱硫DCS系统之间通过OPC(OLE for Process Control)协议进行通讯,与主机脱硝DCS系统和数据采集装置之间通过Modbus-Tcp/Ip协议进行通讯,接口机与服务器之间也是通过Modbus-Tcp/Ip协议进行通讯,脱硫DCS系统的上位机作为OPC Server,组态软件所在的接口机作为OPC Client,在FameView组态软件的设备通讯列表中找到OPC Client驱动程序,然后安装这个驱动程序[4]。同理,在FameView组态软件的设备通讯列表中找到并安装MB_TCPIP(Modbus-Tcp/Ip)驱动程序。
3.2 组态软件的画面设计
在火力发电厂的环保监控系统中,设有用户管理画面、主控画面、历史趋势查询画面等。设计主控画时,以火电厂的工艺流程图为参考,在画面中主要显示过程参数、设备状态、介质流动方向等。用静态文本显示变量名称,用变量的输出模式显示模拟量参数值,用图形符号显示开光量状态,用不同的可见性颜色来显示设备的工作状态。
主控画面如图3所示,该主控画面包括脱硫、主机、脱硝、CEMS、除尘等系统的数据,通过画面的切换按钮来实现画面切换,用于查看不同系统的数据,每个画面上包括工艺流程、设备运行状态显示、数值显示,而且通过Windows系统自带的互联网信息服务组件IIS(Internet Information Services)来实现监控画面的Web,用户利用互联网,输入指定用户名和密码就可以远程访问监控画面。
图3 主监控界面
3.3 组态软件的变量连接与数据存储
组态画面设计完成后,需要把画面中的图形变量与数据变量进行连接,根据系统要采集的外部变量建立相应的内部变量,而内部变量与画面上的监控点通过属性连接建立对应关系。FameView组态软件的变量包括内部变量、外部变量、系统变量和脚本变量等。外部变量是外部存储的区域,需要建立通信驱动程序和通道,然后在建好的通道下面建立变量,选择变量地址。内部变量没有相应的驱动程序和通道单元,所以不需要给它们设置连接,通常用来辅助外部变量的存储和运算。
在组态画面运行时,它含有全部数据变量的实时值。FameView组态软件能够实现连接数据库的功能,通过FameView组态软件的批量数据连接功能将实时数据存储到数据库指定的数据列表里,生成历史数据,环保监控部门通过数据平台调用历史数据,能够直观的反映该电厂近期的运行情况[5-6]。
4.系统的优势
火力发电厂CEMS系统主要监测的数据有SO2浓度、NOX浓度、脱硫效率、烟尘浓度、烟气量等12个数据,而该环保监控系统监测的数据高达350多个,这些数据涵盖脱硫、脱硝、主机、除尘等系统。环保监控系统采集的数据为火力发电厂的过程数据,这些数据大多为生产数据,通过对这些数据的分析,能够了解整个火力发电厂的运行情况,进而验证末端数据的合规性与有效性。如图4所示,以2×300MW火力发电厂为例,通过对环保监控系统采集的数据进行分析,来验证CEMS系统数据是否合规、有效。
图4 2×300MW火力发电厂环保数据
从图4可以直观地看出,机组负荷从198.4(65%)到241.9(80%)到299.5(100%)的变化过程中,入口烟气量、增压风机的电流没有跟随机组负荷同步变化,反而不规则变化,说明烟道漏烟或部分烟气通过旁路直接排出,因此入口SO2浓度这个数据就不是有效的。脱硫效率是出口SO2浓度与入口SO2浓度的比值,所以脱硫效率也不是准确的,另一方面,吸收塔浆液PH值控制的较差,多次出现低于5.0的现象,由于PH值较低,因此影响脱硫效率,但是脱硫效率仍能维持97%,说明脱硫效率不合规,这些数据之间具有一定的关联性,通过对数据的分析能够验证末端数据的合规性与有效性。
该环保监控系统能够直接监测主要环保设备的运行情况,例如:通过查看脱硫系统的浆液循环泵电流,就能够监测循环泵的运行情况及设备的运行数量,通过查看除尘系统的二次电场的电压和电流,就能够监测除尘系统电场的运行情况,这是CEMS系统所不具备的功能。
5.结束语
文中针对火力发电厂CEMS系统的数据人为干扰因素多,其可信度低的缺点,在充分考虑电力二次防护要求的基础上,研究设计了以组态软件为核心,结合通信技术和网络技术的环保监控系统,通过对该系统数据的分析,能够验证CEMS系统数据的合规性与有效性,同时也能够全面监测火力发电厂的运行工况。该系统在华北某火力发电厂进行了试运行,经过实践证明,运用此系统,不仅能够对火力发电厂排污状况进行监测,实现污染物超标报警,对降低火力发电厂污染物的排放量具有重要的现实意义,而且对于污水处理厂、化工厂的环保监控系统的设计也具有一定的借鉴意。
参考文献
[1]郜武.烟气连续监测系统(CEMS)技术及应用[J].中国仪器仪表,2009,1.
[2]杨柳.火电厂环境管理信息系统的开发研究[D].华北电力大学,2006.
[3]张德泉,金强,常慧玲,王林.集散控制系统原理及其应用[M].北京:电子工业出版社,2012:10-40.
[4]王杰,高昆仑,王万召.基于OPC通信技术的火电厂DCS后台控制[J].电力自动化设备,2013,4.
[5]Xu Guang.Environment Monitoring &Controlling On-line Managing&Issuing System[J].Liaoning Province Environmental Monitoring Centre,2006.
[6]李蔚,盛德仁,等.火电厂SIS系统中实时数据库平台的选择[J].中国电机工程学报,2013,12.
[7]梁庚,李文.分布式系统控制策略组态软件的发展现状与前景[J].仪器仪表学报,2006,6.
摘要:文章主要介绍蓝牙协议结构、功能及其蓝牙在智能家庭网络中如何实现。
关键词:智能家庭网络;通讯协议;蓝牙技术;HIC
1蓝牙技术简介
①蓝牙技术的定义。“蓝牙”是一种开放型的技术规范,它可以在世界上任何地方实现短距离的无线语音和数据通信。
②“蓝牙”采用的跳频技术。蓝牙不是工作在2.4GHz这一个频点,而是工作在2.40GHz和2.48GHz这个频段上(有的国家使用的频段较窄),即采用相隔1MHz的79个频点实现跳频。
③蓝牙网络的结构,蓝牙系统的网络拓扑有微微网和分散网两种形式。微微网(Piconet)由主设备单元和从设备单元构成。首先提出通信要求的设备称为主设备(Master),被动进行通信的设备称为从设备(Slave)。一个主设备最多可以和7个从设备进行通讯。一个主设备和一个以上从设备构成的主从网络称为微微网,在必要的情况下设备的主从角色也可以转换。
④蓝牙协议的结构。蓝牙协议可以分为四层:核心协议、替代电缆协议、电话控制协议和选用协议。核心协议包括了基带、链路管理协议(LMP)、逻辑链路控制和适配协议(L2CAP)和服务发现协议(SDP)。所有蓝牙设备必须支持核心协议以及蓝牙无线接口,而其他协议可以根据需要来选用。除了四个基本层次外,蓝牙协议还包括了主机控制接口HCI(hostcontrollerinterface)。它为基带控制器、链路控制器、访问硬件提供了命令接口。HCI上层协议通过传输层向下传送HCI命令;而HCI下层协议执行HCI指令后,执行结果将以事件的形式返回上层。
⑤蓝牙技术与其他无线通讯技术的比较。在智能家庭网络中,主要的通讯方式为有线通讯(包括双绞线、电力线等)和无线通讯(包括射频、红外线等)。无线技术不但可以让我们减少线缆的使用量,使我们的居住环境更加简洁,而且,可以让我们在自己家中的活动更加自由。所以,无线技术及相关协议是智能家庭网络中重要的组成部分。
蓝牙技术具有价格适中、功能实用、受限因素少等特点。这些基本满足了智能家庭网络的经济要求,适合在家庭中使用。
2蓝牙在智能家庭网络的实现
蓝牙功能的实现分硬件实现和软件实现。
①硬件实现。在智能家庭网络中,要实现蓝牙功能就需要添加相关的蓝牙主机和蓝牙模块。蓝牙主机可以由PC、ARM或单片机担当,显然PC机过于昂贵了,因此,一般由arm或单片机担当蓝牙主机。蓝牙模块至少包括:RF模块、基带模块、控制模块和存储模块。现在很多蓝牙芯片都集成了多个、甚至全部模块的功能。
②软件实现。一个蓝牙系统被HCI(蓝牙主机控制接口)分为下层(蓝牙模块)和上层(蓝牙主机)两部分。HCI提供访问蓝牙模块的统一指令方式,它主要定义了主机控制蓝牙模块的各个指令的意义,它为基带控制器、链接控制器、硬件状态和控制寄存器等提供命令接口,为主机提供向蓝牙模块发送HCI指令、HCI数据以及从蓝牙模块接受HCI事件和HCI数据的能力。主机与蓝牙模块之间通过HCI收、发分组方式进行信息交换,用指令—应答(Command_Response)方式实现控制。
HCI传输层主要有3种:HCIUSB;HCIPCM;HCIUART。其中HCIPCM主要负责语音通讯。HCI有4种不同类型的包——HCI命令、HCI事件、ACL数据和SCL数据。ACL数据和SCL数据在蓝牙主机和蓝牙模块之间双向传输。蓝牙主机通过传输层向蓝牙主模块传送HCI命令,蓝牙模块执行HCI指令后,将以事件的形式返回给蓝牙主机。
我们举例来说明蓝牙主机和模块之间如何传递HCI命令和HCI事件。如果蓝牙主机要向蓝牙模块发送一条Reset指令,则可以通过蓝牙主机的UART串口发送一个十六进制数系列(01、03、0C、00)至蓝牙模块,蓝牙模块就能执行Reset指令功能。若复位成功,蓝牙模块将返回给蓝牙主机一个十六进制数串(04、0E、04、01、03、0C、00)的事件,表示完成复位。
弄清HCI指令和HCI事件实现机制后,我们就可以开始编写各种HCI指令操作函数。HCI以下由底层协议软件负责的物理链路的建立通常可以由蓝牙模块/适配器完成,而实现L2CAP以上的协议软件和高层应用则需要由开发者自行完成。
3结语
随着网络技术和自动化技术的普及,零散的、功能单一的家电设备会被逐步淘汰,智能家庭网络、智能家居必将成为我国今后发展的主流。由于目前蓝牙技术在我们的日常生活中最为常见,在今后的智能家庭中采用蓝牙无疑给客户带来巨大方便。比如现在常见的蓝牙手机就可以直接应用到有蓝牙功能的智能家体昂网络中。可以说蓝牙是智能家庭网络的理想选择。因此,对基于蓝牙技术的无线家庭网络进行研究具有极大的理论和实际应用价值。
参考文献:
关键词 空气质量;自动化;质控
中图分类号X8 文献标识码A 文章编号 1674-6708(2014)110-0175-02
自动监测技术是随着上海市环境空气监测日报和预报业务工作的深入开展与进一步细化,从而不断发展起来的。现今的自动监测技术融合了当前较为成熟高效的信息采集;数据传输;仪器反控等技术,从而全面提升本市环境空气质量的信息化管理和应用水平,并为本市空气质量数据实时服务。
1 数据采集技术
上海空气自动站仪器类别多,但不是所有的仪器都支持数字量采集。像早期的气象五参数Visal等仪器只支持模拟输出。ESC8800是针对仪器模拟量采集的数据采集终端。
ESC8800数据记录器是基于微处理器的数据采集系统,专门采集,加工,储存和传送环境数据。一般标准的ESC8800由一个微处理器,模拟输入多工器;可编程增益放大器;模数转换器;随机存取记忆体;电源;时钟和数据存储的备用电池。EDAS是上位平台软件能够通过电话拨号的方式将ESC8800现场数据采集到中心。而随着计算机技术的飞速发展,越来越多的子站开始配置工控机,开发个性化的数据采集程序。工控机通俗的说就是专门为工业现场而设计的计算机,而工业现场一般具有强烈的震动,灰尘特别多,另有很高的电磁场力干扰等特点,且一般工厂均是连续作业即一年中一般没有休息。因此,工控机与普通计算机相比必须具有以下特点:1)机箱采用钢结构,有较高的防磁、防尘、防冲击的能力;2)机箱内有专用底板,底板上有PCI和ISA插槽;3)机箱内有专门电源,电源有较强的抗干扰能力;4)要求具有连续长时间工作能力;5) 一般采用便于安装的标准机箱(4U标准机箱较为常见)。
上海空气自动站仪器数据采集分为3种模式:
1)使用ESC8800采集模拟量数据,中心平台通过电话拨号的方式将数据收回;
2)使用工控机软件对仪器RS232或者LAN口发送仪器通讯协议命令索取数据,随后通过无线网络或者有线宽带将数据发送到中心平台;
3)使用工控机将ESC8800采集到的模拟量通过无线网络或者有线宽带转发到中心平台。
第一种模式以ESC8800为核心的早期数据采集方式优点与缺点同样明显。优点是不用取得仪器厂商的数字通讯协议且部署方便。缺点是模拟量采集数据会走偏没有数字量精确;数据分类固定无法再加工;现场数据储存量小;雷雨天气电话线路容易遭受雷击等一系列的问题。而第二种模式与第一种模式相反,只需要得到仪器的通讯协议,就可以采集数字量;现场工控机可以存储大量数据;不会因为天气而影响数据传输。第三种模式采用ESC8800数据转发模式结合了第一种模式和第二种模式的优点,但仍旧存在模拟量会走偏这个缺点。
2 通讯传输技术
现今的空气质量自动监测系统搭建模式更多为数字传输系统,工控机通过RS232串口通信方式对仪器进行数据采集,随后通过TCP/IP网络协议将数据发送到中心平台。为了加强空气质量自动监测系统仪器设备和中心平台之间的数据交换传输的规范性,上海市环境质量自动监控通讯传输技术规范诞生了。标准规定了数据传输的过程及系统对参数命令、交互命令、数据命令和控制命令的数据格式和代码定义,标准不限制系统扩展其他的信息内容。数字传输系统通信网络可以是宽带也可以是GPRS。
数字传输系统的搭建方式相比模拟传输更加稳定,发展空间更大。
3 自动化质控技术
对于空气质量自动监测业务而言,日常质控包括仪器的运维以及建立数据有效性的审核机制。而监测仪器在日常运维中发生的故障与波动是产生大量监测数据异常的主要原因,所以巡检人员需要至少每周巡检一次,其工作主要是负责仪器的精密度校准和仪器故障排除等。但对于仪器精密度检查而言一周一次密度过低,需要通过自动化技术将这个过程细化。为了实现自动校准功能,首先需要打开现场标气阀门进行检漏实验,确定不漏气的情况下再继续进行。
自动化质控技术不但能够仪器定标确保仪器数据的准确性,还能够规范运维人员的运维操作,给软件建立子站事件日志系统,子站除自动零跨、自动精度检查外发生的事件都形成记录上传并储存,同时在固定的监控窗口中显示,主要事件包括以下:
1)当子站巡检人员在现场进行零点、跨度校准操作,以及远程启动校准操作,系统应自动生成记录上传,记录可以是文本形式,校准相关的记录内容应包括:
2)校准参数名称和设置浓度,零点还是其它浓度点,在校准仪上每设定启动一个浓度点,就应产生一条记录;
3)每次校准开始时刻和结束时刻;
4)每次校准结束时分析仪的读数;
5)记录应明确是现场操作的校准还是通过远程启动实施的校准;
6) 现场校准是否对仪器进行了校准调节,如果实施了调节,应将调节好后的仪器的零点偏置和斜率两个参数读取出来,记录在该条记录中;
维护人员的日常操作规范和仪器状态一样重要。运用现场工控机软件,可以将运维人员的操作步骤都记录下来,从而实现运维表单的无纸化管理方便日后查阅归档。
4结论
通过本文的分析,自动监测技术有利于构建一套具有时效性;自动化质控;集成更多数据种类;自定义采集监测数据类型的数据管理平台,又满足了空气质量数据业务的实时性、丰富性、专业性要求,对相关系统的进一步发展都有着良好的借鉴意义。
参考文献
[1]包权.上海市环境空气质量自动监测数据审核体系的构架与应用[J].环境科学与管理,2010,12: 160-164.
[2]Enviromental System’s Corporation. ESC 8800 Data Logger Engineer ingManual[M],1997: 5-8.