摘要:视频监控系统是智能楼宇的一个关键子系统,具有长时间视频采集、实时监控等作用。本文对一种智能楼宇视频监控系统的设计展开了研究,并从软件设计与硬件设计两方面出发,进行了详细的介绍,以期能为类似系统设计提供参考。
关键词:智能楼宇;视频监控系统;设计
随着社会经济的快速发展以及科学技术的不断进步,人们的生活水平日益提高,对居住环境的安全要求日益提高,智能楼宇的视频监控系统也越来越受重视。而传统的视频监控系统依赖监控人员的现场监控,浪费资源,基于此,笔者介绍了一种智能化视频监控系统的设计。
1.系统的硬件框架
整个硬件系统由信号处理板、信号转换板、上位机以及CMOS 图像传感器组成。信号处理板以S3C2416 处理器为核心。S3C2416 是一款以SAMSUNG ARM9(ARM926EJ)为内核的处理器,由于低功耗、高性能、低成本的性价比优势,在实际中具有广泛应用。为了简化信号处理板的硬件设计,同时兼顾系统与实际场所的兼容性,本系统设计了一种以STM32 为核心处理器的信号转换板,信号转换板可根据接收的数据生成对应的控制信号来驱动相应的执行机构。这样只需修改信号转换板的硬件设计,就能使系统很好地适应各种不同的应用场景。上位机与信号处理板之间通过网线连接。CMOS图像传感器直接与信号处理板连接。系统的硬件总体架构如图1 所示。
2.系统的软件架构
以S3C2416 为核心的信号处理板,需要分别与上位机和信号转换板进行通信。信号处理板需要为上位机提供查询服务和设置服务。上位机端软件通过切换不同的算法,可以适应不同的应用场景,可以下发经PC 端算法处理后得到的控制信号,也可以发送相关指令,让信号处理板上传实时图像和设备的运行状态等。信号处理板也需要为信号转换板提供控制服务,信号处理板根据实时的处理结果或者上位机下发的控制信号,下发对应的控制信号给信号转换板,信号转换板依据接收到数据,生成相应的控制信号以驱动对应的执行机构。
2.1 设备间通信协议设计
信号处理板与上位机之间的通信数据类型主要有三大类,第一种是信号处理板实时的图像信息,第二种是信号处理板上传的设备的运行状态信息,第三种是上位机下发的控制指令。由于涉及图像的传输,而且本系统中单帧数据就达到640*512个字节,为了保证图像传输的实时性,信号处理板与上位机之间的通信采用网络通信。
信号处理板与信号转换板之间的通信数据类型主要有两大类,第一种是信号处理板下发的控制信号的指令,第二种是信号转换板上传的应答信号。由于信号处理板与信号转换板之间传输的单次数据量较小,所以通过UART 来进行通信。
2.1.1 网络通信协议
针对网络通信,本系统采用TCP / IP 协议,该协议在传输层分别有TCP 协议和UDP 协议,虽然UDP 协议在传输速度上有较大优势,但是数据传输的准确性得不到保障,而TCP 协议是一种面向连接的、可靠的、基于字节流的传输层通信协议,所以采用TCP 协议便可保证数据传输过程的准确性。由于有些应用场景需要上位机对图像进行算法分析再将控制信号下发给信号处理板,所以本系统中传输层的通信协议选用TCP 协议,但是TCP 是基于字节流的,所以必须解决半包读写和粘包问题。常见的处理方法有如下几种:
方法1:定长消息,每个报文长度固定,不够补空格;
方法2:使用回车换行符分割,在包尾加上分割符,例如FTP 协议;
方法3:消息分割,头为长度(消息总长度或消息体长度),通常头用一个int32 表示。
其中方法1 通常适合长度不是很长的数据,但在本系统中传输的一帧图像数据就达到640*512 个字节,数据量较大,所以方法1 不合适。由于传输的是图像数据,图像中连续的几个像素点对应的字符很有可能与固定字符相重复,因此若采用以固定字符区分的方法2,必须对原始图像数据进行遍历,并对相关字符进行转义,但这样计算量过大,会增加系统额外开销,所以方法2 也不合适。本系统采用方法3 来设计网络通信协议,最终的网络通信协议格式如图2 所示:
(1)数据长度:前4 个字节代表数据长度n,对应一个int32型整数,所以该协议传输的最大数据长度为232 个字节。
(2)数据类型:第5 个字节代表不同的数据类型,例如0x01表示图像数据的上传,0x02 代表控制指令的下发,0x04 表示算法切换,此位可依据系统的功能进行拓展。
(3)数据:从第6 个字节开始的n 个字节代表数据。
2.1.2 串口通信协议
对于串口通信,必须解决数据传输过程中的可靠性问题,为此本系统设计了如图3 的串口通信协议。
图3 串口通信协议格式
(1)起始标志:1 个字节,用十六进制可表示为F0H。
(2)数据长度:1 个字节代表数据长度n,所以该协议传输的最大数据长度为256 个字节。
(3)数据类型:1 个字节代表数据类型,例如0x01 表示要求信号转换板根据有效数据生成对应的继电器信号,此位可进行拓展以驱动不同的驱动机构。
(4)数据:n 个字节的数据。
(5)校验位:n 个字节的数据按位异或。
(6)结束标志:1 个字节,用十六进制可表示为FFH。
同时,在串口的通信的设计过程中,参考了TCP 协议中ACK 的思想,当信号转换板收到一个命令后,会对数据格式进行校验,校验后则会回复一个包含一位数据校验是否通过的确认信号。信号处理板如果在发送指令500ms 依旧没有收到确认信号或者收到的确认信号表明数据接收有误,则再次发送该命令,如果累计发送10 次后依旧没有收到正确的确认信号,则认为此链路存在通信故障,信号处理板则通过网络将链路通信故障的错误信息反馈给上位机。
2.2 信号处理板中软件设计
信号处理板中主要有两个线程:一个线程专门负责图像的采集和处理,主要完成对图像的实时采集,并对采集到的一帧图像按照上位机设定的模式,完成上传图像、算法分析以及生成控制信号并通过UART 口发送到信号转换板中的部分或全部过程。信号处理板作为C/ S 架构的服务器端,为了保证响应的实时性;第二个线程专门监听网络端口,如果有命令发送过来,则根据解析的结果,完成参数的读取、模式的切换、算法的切换、控制信号的生成以及通信链路通断的判断等。网络通信过程中的I /O 模型主要分为同步I /O 和异步I /O两大类。同步I /O 的主要缺点是在进行I /O 的过程中函数无法立即返回,从而导致其他任务无法执行,但是在异步I /O 中,无论数据是否完成交换都立即返回函数,因此不影响执行其他任务,所以异步方式比同步方式能更有效地使用CPU 资源,同时系统的响应实时性也较好。由于信号处理板上运行的是Linux 系统,所以本系统采用epoll 模型。信号处理板的业务流程如图4 所示。
2.3 上位机软件设计
本系统基于Qt 开发了一套上位机监控软件,该软件主要提供监控界面,界面的要素包括所连接设备(即信号处理板)的IP地址和端口号的设置、实时图像显示框、设备的运行状态以及应用场景的切换等。同时上位机软件也能对实时的图像数据按照设定要求进行分析处理,并将分析处理后生成的控制信号通过网络下发至信号处理板。
该上位机软件与信号处理板构成C/ S 架构,该软件作为客户端,信号处理板作为服务器端。考虑服务器端的套接字资源,并且鉴于此客户端和服务器端的通信属于长连接,所以上位机软件在与信号处理板建立连接后,需要定时发送一个心跳包,以此来判断通信链路是否正常,如果服务器端长时间没有接收到此心跳包,则断开对应的socket 连接,释放相应套接字资源。客户端软件通过对发送心跳包时所使用的系统函数write()的返回值,便可以判断链路是否正常,如果异常,则释放之前的套接字资源后再次进行连接,如果尝试10 次后依旧不能正常建立连接,则在界面上显示网络连接失败。
图4 信号处理板的业务流程图
2.4 信号转换板中软件设计
信号转换板主要完成接收来自信号处理板的数据,并根据解析结果产生相应的控制信号以驱动对应的执行机构。ST 官方提供了丰富的库函数,这样使得STM32 的软件开发过程大大简化,在完成基本的配置后,只需完成应用层程序的编写即可。最终,考虑实时性,设计的程序在中断中完成数据的接收,并将接收的数据拷贝到一个静态缓冲区中。主线程循环对静态缓冲区中的数据进行读取,并根据自定义的串口通信协议对数据进行解析和校验,如果校验通过则回复表示数据接收正确的ACK 信号,并生成对应的控制信号,如果校验不通过则回复表示数据接收错误的ACK 信号。
2.5 图像分析算法设计
本系统作为一种视频监控,可以根据不同的场景切换不同的算法。一些识别算法,例如烟火检测报警,只要在PC 端通过训练和测试过程得到最优模型后,就可以编写代码,然后移植到嵌入式设备中,当然此类识别算法也可以集成在上位机软件中。但是一些匹配算法,例如基于人脸识别的门禁系统中所用的算法,在完成人脸识别后,需要将提取的特征与数据库中的特征进行匹配,以确定此人是否具有相应的权限,如果运行在嵌入式设备上,不仅浪费有限的存储空间,而且在匹配过程中消耗大量的系统资源,影响系统的实时性;再者门禁系统存在添加和删除某些人的权限的可能,如果将特征存放在嵌入式设备中,这样后期的维护升级难度较大,因此这类算法应该运行在上位机。
3.结语
综上所述,视频监控系统在智能楼宇中发挥着至关重要的作用,对实现楼宇的实时监控,保障楼宇的安全具有十分重要的意义。本文设计了一种智能化的楼宇视频监控系统,该系统弥补了传统视频监控系统的缺陷,具有高效、智能化、安全可靠等优点,对类似视频监控系统设计具有一定的借鉴价值。
参考文献:
[1]张浩.智能楼宇视频监控报警系统设计[J].山东工业技术,2017(23):119.
[2]陈利平.智能楼宇视频监控系统研究[J].江西建材,2017(07):215-216.
[3]刘克颜,吴茂晗.选煤厂智能视频监控系统设计[J].煤炭加工与综合利用,2017(03):6-7+12+94.
论文作者:胡境锋
论文发表刊物:《电力设备》2018年第10期
论文发表时间:2018/8/6
标签:信号论文; 信号处理论文; 数据论文; 上位论文; 字节论文; 图像论文; 监控系统论文; 《电力设备》2018年第10期论文;