新闻中心

EEPW首页 > 电源与新能源 > 设计应用 > 基于电力线传输媒介的通信终端设计

基于电力线传输媒介的通信终端设计

作者: 时间:2010-11-05 来源:网络 收藏

  处理抽象。本应用中需要派生一个QTcp 类,实现传输层的TCP 协议。一般基于 TCP 的网络应用程序都要继承QTcp 类,然后在ESTABLISHED 状态中添加 子状态完成特定的功能。在服务器端,利用量子框架实现一个QServer 类,是一个活动对象,继承自QTcp 类。QServer 活动对象同客户端TCP Socket 连接后,进入ESTABLISHED状态中,通过调用Recvfrom 函数接收客户端的请求,然后解析请求的服务类型,根据不同请求做出不同的服务。其软件流程图如图1 所示:

图 1 QServer 活动对象状态流程图

  服务器端需要提供的具体服务包括:(1)当接收到客户端打开家用电器的请求是,使用GPIO口发出电平信号,通过继电器打开相关的电器。(2)监控客厅中的温度,在夏天如果超过33 度,则会主动控制制冷空调打开。在冬天低于10度就会打开制热空调。并及时地把空调开关的信息通过TCP 协议传送给远程的终端。(3)当有人触发了安防系统,发生外部中断时,使用服务器向客户端发送报警信号。并通过GPRS给110 报警台、物业服务公司监控室、业主办公室电话或业主手机等,发送预警信息。

  四、 PC 客户端

  PC 机作为远程客户端,主要的工作是向服务器发出服务请求,并且在收到服务器的响应或者报警信号后把收到的具体内容在屏幕上显示以达到远程控制和报警的功能。在本例中,我采用的是Qt 的可视化编程环境。以下介绍客户端的具体功能以及实现:在客户端可视化界面上按下日光灯或者电饭煲按钮,就可以向服务器端发送一个开关家用电器的请求,在服务器端收到请求后就会去执行;同理,按下A/D 按钮,就可以发送一个读取A/D 的请求,在收到服务器端采集的A/D 数值后,客户端就会在屏幕上显示;温度的测量则是每隔两秒就会发送一个请求,读取当前的温度,显示在屏幕上,并且判断是否要打开空调,并从服务器端读取其状态信息,更新空调的开关状态栏,显示在文本框中;当服务器端安防系统检测到有人入侵时,就会向客户端发送报警信号,客户端需要相应修改当前的安防系统状态为报警。



关键词: 电力 通信

评论


技术专区

关闭