APP下载

基于OURS PXA270平台的安防系统之服务端设计与实现

2011-01-13李年攸徐瑞标

武夷学院学报 2011年5期
关键词:服务端三明客户端

李年攸 徐瑞标

(1.三明学院 数学与信息工程学院,福建 三明 365004;2.武夷学院 人文与教师教育学院,福建 武夷山 354300)

基于OURS PXA270平台的安防系统之服务端设计与实现

李年攸1徐瑞标2

(1.三明学院 数学与信息工程学院,福建 三明 365004;2.武夷学院 人文与教师教育学院,福建 武夷山 354300)

本文以OURSPXA270为硬件平台,以Qt4.4.3为开发工具,对基于OURSPXA270平台的安防系统的服务端进行设计和实现,主要完成用户基本信息的接收与显示、客户端各种传感器状态信息的图文显示、客户端现场视频的再现、为客户端与服务端提供聊天的简易环境、利用数据库对来自客户端的图文数据进行保存和处理、提供多用户支持等功能,达到了安防的基本要求,满足了人们日常生活的基本需要。

OURSPXA270;Qt;安防系统;服务端;数据库;数据查询

0 引言

基于OURSPXA270平台的安防系统中,服务端主要实现对客户端传送的各种现场信息进行处理,既要让值班安保人员随时掌握现场情况,也要提供事后对相关数据的查询,所以服务端要完成与现场数据的同步再现和保存。

1 系统设计

系统主要实现对用户传感器信息、现场视频信息、用户登录信息及简易聊天信息等进行处理的功能,系统流程设计如图1所示。其中,系统初始化包括用户界面的生成、用户数据库和表的建立,接收的数据包括用户名及用户IP、客户端的传感器工作使能状态和报警状态信息、客户端的现场视频信息、简单的聊天信息等,查询模块支持用户基本信息的查找和视频内容的时间搜索。

图1 系统流程图

2 系统实现

系统开发环境是linux2.4,开发工具是Qt4。根据系统设计,用户界面主要由传感器状态文字显示区和图标显示区、用户基本信息显示区、现场视频显示区以及用户聊天信息显示区,界面设计如图2所示。

图2 系统界面

其中SensorStatusBox中的是QTableWidget控件,名为tableStatus,VideoView中的是QLabel控件,名为lbImageShow,ClientIformation中显示用户 IP的是QComboBox类,名为 comboClientIp,ClientMsgBox中的是QTextEdit控件,名为msgTextEdit。

2.1 系统初始化

除了保证用户界面的正常显示,该模块还要为用户创建数据库和数据表[1],以备接收客户端传送过来的数据。功能代码如下:

接着,服务端开启网络,创建QTcpServer对象侦听来自指定端口的连接请求,如果有,则创建一个QTcpSocket对象来与该连接进行会话,并随时向QTcpServer发送更新客户端信息的信号,而QTcpServer向服务程序发送类似的信号,由服务程序对用户界面的相应数据进行处理[2]。

2.2 客户登录信息处理

服务端接受客户的连接请求后,获取对方的用户名和IP,并把IP添加到QComboBox控件中,当前用户名添加到QLineEdit中,实现代码如下:

if(serverForm.txtClient->text()=="")//判断是否已有当前用户

serverForm.txtClient->setText(userName);//添加用户名

if(serverForm.comboClientIp->findText(inClientAddress)<0)//确保不重复添加

serverForm.comboClientIp->addItem(inClientAddress);//添加用户IP

2.3 传感器状态信息处理

客户端采用定时机制向服务端发送状态信息,服务器接收到状态数据更新信号后,分别利用槽函数updateServerStatus实现界面状态数据的更新和create UserTableData函数实现数据库相应数据的添加[3]。函数定义如下:

2.4 视频数据处理[4]

现场视频是处理突发事件最有说服力的证据,客户端也是采用现场定时拍照并上传的机制,但与状态数据的上传并不同步。考虑到其数据量比较大,服务端处理时并没有将其全部保存,而是采用界面显示与客户端同步,数据库保存则与状态信息的保存同步的机制。这种做法充分考虑到系统的效率与效益,传感器有异常信号时,现场视频具有无可替代的作用,而平常的视频则基本上不具有参考价值,可以不予保存,况且状态信息更新的间隔很短,足以保留最有力的视频证据。界面图像刷新由槽函数updateServer-Image完成,函数定义如下:

视频数据保存前先由函数constructImageData进行适当地处理,函数定义如下:

然后在函数createUserTableData添加相应代码实现图像数据的保存。

2.5 聊天信息处理[5]

来自客户端的登录退出信息和聊天信息都会显示在msgTextEdit中,服务端通过函数updateServer接收来自客户端的信息,主要代码如下:

并通过槽函数msgSend向客户端发送信息,函数定义如下:

确保点对点传送

2.6 数据库查询

系统必须提供信息查询接口,以备异常时现场的再现,为事件的解决提供证据。查询与显示由函数msgQuery和queryUserInfo实现,分为图像查询和一般查询,函数定义如下:

查询界面如图3所示。

图3 查询主界面

如果查询内容置空,则查询所有信息,如图4所示。

图4 信息查询

如果查询内容为详细的时间,则在数据库中查询该用户对应时间点上的image字段内容,并显示,如图5所示。

图5 图像查询

2.7 多用户处理

系统为了保证多用户正常地登录退出和切换,定义了槽函数infoRefresh来接收comboClientIp发出的currentIndexChanged信号,并作出相应的处理。函数定义如下:

3 小结

安防系统能真正起到安全防范作用至关重要的部分就是服务端对数据的处理。本系统在提供信息显示、保存和查询等基本功能的基础上,增加了聊天功能,以加强用户与管理员间的沟通;增加了多用户切换功能,防止多个用户信息的混杂显示,扰乱视听。系统已在OURSPXA270平台上测试通过,工作性能稳定,具备较好的适用性。

[1]丁林松,黄丽琴.Qt4图形设计与嵌入式开发[M].北京:人民邮电出版社,2009:298-326.

[2]成洁,卢紫毅.Linux窗口程序设计-Qt4精彩实例分析[M].北京:清华大学出版社,2008:241-261.

[3]Blanchette J,SummerfieldM 著;闫锋欣,曾泉人,张志强,等译.C++GUIQt4编程(第二版)[M].北京:电子工业出版社,2008:238-254.

[4]李年攸.基于pxa270平台的智能家居系统设计与实现[J].三明学院学报,2010(2):128-134.

[5]穆煜.嵌入式应用程序设计[M].北京:人民邮电出版社,2009:263-272.

Design and Im plementation of Server for Security System Based on OURSPXA270 Platform

LINianyou1XU Ruibiao2

(1.Institution of Mathmatics and Information Engineering,Sanming University,Sanming,Fujian 365004;2.School of Humanities and Teacher Education,Wuyi University,Wuyishan,Fujian 354300)

Taking the OURSPXA270 as the hardware platform,using Qt4.4.3 as a development tool,this paper designs and implementates server for security system based on OURSPXA270 platform.The system has mainly achieved functions such as receiving and displaying the basic information from users,displaying sensors’status from clients with icon and text,displaying client’s scene video,providing chatenvironment for client and server,creating database to save data from client,supporting multiple users,and so on.The design and implementation achieves the basic requirements for security,and can meet the basic needs of people’s daily life.

OURSPXA270;Qt;security system;server;database;data query

TP277

A

1674-2109(2011)05-0067-06

2011-09-12

三明学院科研基金项目(B201004/Q);福建省教育厅科技项目(JB11188)。

李年攸(1973-),男,汉族,讲师,主要研究方向:嵌入式技术与图形图像处理。

猜你喜欢

服务端三明客户端
如何看待传统媒体新闻客户端的“断舍离”?
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
新时期《移动Web服务端开发》课程教学改革的研究
在Windows Server 2008上创建应用
“三明联盟”能走远吗
“三明联盟”不是梦
三明医改应避免昙花一现
我与三明医改同行