一种基于移动环境监控可控设备软件实现方法技术

技术编号:24330596 阅读:16 留言:0更新日期:2020-05-29 19:28
一种基于移动环境监控可控设备软件实现方法,本发明专利技术公开了一种基于移动环境监控可控设备软件实现方法,本监控设备实现分为硬件实现和软件实现,且硬件设备和软件程序根据具体环境测量需求支持可裁剪,实现成本最低化。数据采集端软件按照需要测量功能分模块编程,在不同的模块中实现不同的功能。将实现检测功能的控制软件的组成函数分为不同功能编译成不同的动态库,若某个模块升级后重新编译这个模块通过网络传输到测控设备即可升级软件,方便维护和升级且动态库之间不互相干扰。

【技术实现步骤摘要】
一种基于移动环境监控可控设备软件实现方法
本专利技术涉及一种基于移动环境监控可控设备软件实现方法,具体地说是计算机系统领域,服务器系统开发和嵌入式软件开发的实现方法。
技术介绍
本专利技术涉及的是服务器系统开发以及嵌入式应用软件开发。软件系统架构采用C/S架构,Client端的软件系统功能是采集环境数据、人流量计算以及其他功能,Server端的软件系统功能是接收Client端的数据采集设备发送的数据,并对数据进行处理、图形化显示数据、对Client端的设备的控制以及Client端的设备出现故障及时告警等功能。服务器系统开发需要能容纳数以万计的Client端的环境采集设备访问,还应具备处理Client发送来的数据的能力,以及控制客户端的能力。解决访问量大的问题采用进程池技术解决该问题,控制Client端的设备的具体功能以及工作参数的方法是利用socket通信将Server端的命令发送至Client端。Client端的系统可根据不同测量需求对软硬件裁剪,以降低物料成本,Client端的传感器将采集到的数据由应用层软件利用socket通信发送至Server。同时如果当前环境监控可控设备某传感器出现设备故障,应用层软件将故障设备ID以及故障元器件编号发送至Server。Client的应用层软件将采集到的环境数据按照一定的规则将其组成JSON格式字符串发送至Server,如果管理员需要监测人流量和记录检测到的车牌信息,首先需要将控制命令发送至Client,Client解析接收到的Server命令,并根据命令调用相关功能函数即可执行相关的功能,如果Server需要Client的相机传感器发送采集到的图片,Client的应用层程序需要将图片压缩后再将图片发送至Server。将Client端的应用程序是开机自启。
技术实现思路
本专利技术涉及一种基于移动环境监控可控设备软件实现方法,目的是设计一款低功耗、通用性强、成本低的嵌入式移动环境监测可控设备的软件系统,本系统采用C/S架构实现,Server端的软件系统负责接收Client发送的数据和控制环境监控可控设备的工作状态等功能;Client负责采集环境数据以及Server发送的指令和参数,并向Server报告自己ID、工作状态或者故障元器件等。本专利技术实现上述功能所采取的方案是:一种基于移动环境监控可控设备软件实现方法,其特征在于包括以下步骤:Client端调用fork()函数创建子进程,并判断是否创建成功,如果未成功调用错误处理函数,如果成功继续以下步骤;1)判断传感器是否故障,如果有故障直接调用错误处理函数,如果未发现故障继续以下步骤;2)调用中间层函数对获取空气质量参数或者当前路段人流量数据;3)调用send_msg()函数将结果发送至Server端;4)Server端调用fork()函数创建子进程,处理Client端发送来的消息,判断消息中是否含有errMsg,如果没有调用do_AnalMsg()函数处理常规消息,通过函数接口将JSON格式数据传送至数据处理模块,数据处理模块分析Client发送的数据,并将处理后的结果显示在屏幕上,同时将解析的数据存入数据库内。如果含有调用do_errMsg函数处理错误消息,Server将在屏幕上显示Client故障设备ID和故障原因;5)Server端通过socket通信发送至Client,Client接收到指令后根据指令调用对应函数,从而实现执行其功能。优选的,Client端各模块的功能函数分别编译成动态库,软件自启时主线程负责加载各个功能的动态库和中间层软件的动态库。优选的,主线程根据要测量的环境参数创建多个子线程,每个子线程调用对应的动态库函数实现其测量功能。优选的,Client端的功能函数封装为不同的动态库,某个动态库的函数出现BUG,修复BUG后重新编译BUG模块,通过网络将修复好的动态链接库发送至Client更新BUG动态库。优选的,Client端程序向Server发送较大的字节流时,应用程序将字节流进行压缩,把压缩后的数据发送至Serve。优选的,Server接收移动环境检测可控设备的解决方案时采用进程池方法。优选的,Server控制Client的工作状态,Server将指令或者参数字符串通过socket通信发送至Client,Client接收到指令后根据指令调用对应函数,从而实现执行其功能。有益效果将实现检测功能的控制软件的组成函数分为不同功能编译成不同的动态库,若某个模块升级后重新编译这个模块通过网络传输到测控设备即可更新软件,方便维护和升级且动态库之间不互相干扰。附图说明附图1Client端软件架构图。附图2Server端软件架构图。附图3Client端软件实现原理图。附图4Server端软件实现原理图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步说明。Client端软件功能实现:Client端软件分为三层:驱动层、中间层以及应用层,应用层软件是通过中间层软件调用驱动软件实现控制传感器,应用层软件将传感器采集到的环境数据通过TCP/IP协议传送至Server端,环境监控软件运行平台为Linux系统,且大多数功能模块均对各类I/O操作,因此Client端软件编程方式采用多进程提高软件运行效率。Client端软件具有功能:检测空气质量参数、温湿度、风速、天气、Server指令处理以及管理员权限功能车牌号检测和人流量统计等功能。当Client端软件接收到Server端软件发送的控制指令或者参数时,会立刻解析指令或者参数并执行命令功能或者配置接收到的参数。Server端软件功能实现:为了实现一个服务器需要接收数万个环境监测设备发来的数据,采用进程池技术解决这个问题,服务器将接收到的数据通过函数接口发送到数据处理模块。数据处理模块将处理后的数据以图形的方式显示在显示器上,方便环境检测人员直观的掌握当前环境、对环境数据做出判断以及对环境监测设备进行控制。一种基于移动环境监控可控设备软件实现方法:Server端软件实现方法:1)Server接收数万移动环境检测可控设备的决绝方案时采用进程池方法,首先在启动时创建若干个进程加入进程池内;2)当有socket访问Server时,Server采用轮询机制将访问任务派发给进程池内空闲进程执行该任务,进程完成任务后主进程再将进程添加至进程池内,如此重复使用进程。此方法可以降低系统不必要的资源消耗,提高了Server处理Client请求的速度;3)Server接收到Client的环境数据后通过函数接口将JSON格式数据传送至数据处理模块,数据处理模块分析Client发送的数据,并将处理后的结果显示在屏幕上。同时将解析的数据存入数据库内;4)当解析JSON数据时发现包含Client设备故障信息,Server调用错误处理模块处理Client程序发来的错本文档来自技高网
...

【技术保护点】
1.一种基于移动环境监控可控设备软件实现方法,其特征在于包括以下步骤:/n1)Client端调用fork()函数创建子进程,并判断是否创建成功,如果未成功调用错误处理函数,如果成功继续以下步骤;/n2)判断传感器是否故障,如果有故障直接调用错误处理函数,如果未发现故障继续以下步骤;/n3)调用中间层函数对获取空气质量参数或者当前路段人流量数据;/n4)调用send_msg()函数将结果发送至Server端;/n5)Server端调用fork()函数创建子进程,处理Client端发送来的消息,判断消息中是否含有errMsg,如果没有调用do_AnalMsg()函数处理常规消息,通过函数接口将JSON格式数据传送至数据处理模块,数据处理模块分析Client发送的数据,并将处理后的结果显示在屏幕上,同时将解析的数据存入数据库内;如果Client发送的消息含有错误消息标识的键,调用do_errMsg()函数处理错误消息,Server将在屏幕上显示Client故障设备ID和故障原因;/n6)Server端通过socket通信发送至Client,Client接收到指令后根据指令调用对应函数,从而实现执行其功能。/n...

【技术特征摘要】
1.一种基于移动环境监控可控设备软件实现方法,其特征在于包括以下步骤:
1)Client端调用fork()函数创建子进程,并判断是否创建成功,如果未成功调用错误处理函数,如果成功继续以下步骤;
2)判断传感器是否故障,如果有故障直接调用错误处理函数,如果未发现故障继续以下步骤;
3)调用中间层函数对获取空气质量参数或者当前路段人流量数据;
4)调用send_msg()函数将结果发送至Server端;
5)Server端调用fork()函数创建子进程,处理Client端发送来的消息,判断消息中是否含有errMsg,如果没有调用do_AnalMsg()函数处理常规消息,通过函数接口将JSON格式数据传送至数据处理模块,数据处理模块分析Client发送的数据,并将处理后的结果显示在屏幕上,同时将解析的数据存入数据库内;如果Client发送的消息含有错误消息标识的键,调用do_errMsg()函数处理错误消息,Server将在屏幕上显示Client故障设备ID和故障原因;
6)Server端通过socket通信发送至Client,Client接收到指令后根据指令调用对应函数,从而实现执行其功能。


2.根据权利要求1所述的基于移动环境监控可控设备软件实现方法,其特征在于:Client端各模块的功能函数分别...

【专利技术属性】
技术研发人员:李文龙李清石金长新
申请(专利权)人:济南浪潮高新科技投资发展有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1