基于DSP/BIOS大空间网络型火灾探测系统设计

时间:2012-05-23来源:网络

当算法处理任务接收到SCOM队列送来的视频数据后,分别送入火焰与烟雾两个检测通道。如果发现火焰或者烟雾疑似区域,两个通道会分别将区域坐标返回,利用返回的坐标对疑似区域进行定位跟踪,然后将跟踪结果送入JPEG图像压缩任务;如果两个通道都没有返回疑似区域坐标,则直接将原始视频数据送至下一个任务。烟雾检测算法分为图像预处理模块、图像分割模块、特征提取模块、目标识别及坐标提取模块,这4个算法模块分别对应4个核对像。核与核以及核与通道之间采用ICC模块进行通信,任务通道通过调用这些核对象来完成对整个烟雾检测算法的执行过程。烟雾一般分为白烟、黄烟和黑烟,难以从颜色或形状上对其进行检测,所以应该对烟雾的半透明性、整体移动性、边界闪烁性、主方向性和扩散性等方面进行分析。
3.3 网络传输任务
TI公司结合其C6000系列芯片推出的NDK(Network Developer's Kit)网络开发包采用紧凑的设计方法,实现了利用较少的资源消耗来支持TCP/IP协议栈,在实际应用中,NDK仅用约200 kB的程序空间和95 kB数据空间即可支持常规的TCP/IP服务,其中包括应用层的telnet、DHCP、HTTP等。同时NDK还集成了类似于网卡的物理层收发器的驱动程序。
NDK开发包包括Network Tools、OS Adaptation Layer、TCP/IP Stack Library、Hardware Adaptation Layer、Network Control这5个模块,要开发基于NDK的网络应用程序,必须利用以上5个模块构建一个完整的TCP/IP功能环境。首先静态创建网络初始化任务,在该任务中构建TCP/IP协议栈的过程是:(1)在调用协议栈其他API函数之前,必须先调用函数NC_SystemOpen(),用它来初始化协议栈及系统环境,它的两个参数Priority和OpMode分别决定了调度任务的优先级和调度器何时开始执行。(2)调用函数CfgNew()创建新的协议栈配置,返回配置句柄hCfg,对该句柄添加网络层与应用层的相关配置。(3)调用函数NC_NetStart()来启动网络事件调度器。真正的网络收发任务是由NetworkRx和NetworkTx完成,这两个任务就是在指针NetworkIPAddr所指的函数中通过TaskCreate动态创建的。在系统结束时还会调用函数CfgFree()与NC_SystemClose()分别用来释放配置内存及关闭TCP/IP协议栈。
设计在NetworkRx、NetworkTx任务中开发的是基于Client/Server与Browser/Server两种模式的应用程序。在Client/Server模式中,DM642作为服务器,PC作为客户端,由于该系统对实时性的要求较高且允许在一定范围内的丢包及出错现象发生,所以NetworkTx在传输层采用面向无连接的UDP协议。NetworkRx接收的是PC对DM642的控制命令,即服务器、客户端双方定义好的少数数据结构,所以NetworkRx在传输层采用了面向连接的TCP协议。该模式下的应用程序是采用Socket网络编程的方式进行开发的,以太网在链路层的最大传输单元为1500Byte,所以必须对每帧视频在IP层进行分片操作。同时需要在上位机上开发基于VC++6.0的客户端程序,为实现视频数据高质量的显示效果,系统采用微软公司推出的流媒体处理开发包Directshow对视频数据进行译码显示。
在Browser/Server模式中,利用DM642的嵌入式文件系统创建Web服务器,便于将火灾现场的视频信息以网页的形式送入局域网,再经过路由器的端口映射传至因特网。例如,在局域网内部设置Web服务器的IP地址为192.168.0.11,在地址栏输入该地址,Web服务器访问结果如图6所示。

f.jpg



4 结束语
通过实例介绍了基于DSP/BIOS的大空间网络型火灾探测系统的具体开发流程。利用对TMS320DM642外围电路的分析和对接口驱动芯片的详细阐述,开发了基于DSE/BIOS与RF5系统架构的应用程序。另外,系统把烟雾、火焰检测算法集成于RF5架构的算法内核,并且采用TI的NDK进行网络开发,这样将更加有利于系统的移植以及产品的升级与推广。

1 2 3 4

关键词: 探测 系统 设计 火灾 网络型 DSP BIOS 空间 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版