CN104570856A - 可在线编程的监控网络系统 - Google Patents

可在线编程的监控网络系统 Download PDF

Info

Publication number
CN104570856A
CN104570856A CN201410796185.1A CN201410796185A CN104570856A CN 104570856 A CN104570856 A CN 104570856A CN 201410796185 A CN201410796185 A CN 201410796185A CN 104570856 A CN104570856 A CN 104570856A
Authority
CN
China
Prior art keywords
module
video
data
judged result
performs step
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410796185.1A
Other languages
English (en)
Other versions
CN104570856B (zh
Inventor
王丁
孙书利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Heilongjiang University
Original Assignee
Heilongjiang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Heilongjiang University filed Critical Heilongjiang University
Priority to CN201410796185.1A priority Critical patent/CN104570856B/zh
Publication of CN104570856A publication Critical patent/CN104570856A/zh
Application granted granted Critical
Publication of CN104570856B publication Critical patent/CN104570856B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

可在线编程的监控网络系统,属于监控网络系统领域。解决了现有监控系统大多只局限为监视与远程网络摄像头等功能,不适宜修改与添加新的特性的问题。它包括具有视频服务器功能的系统网关、多块控制板、PC客户端和ANDROID手持终端,PC客户端和ANDROID手持终端均通过有线或无线网络与具有视频服务器功能的系统网关通信,具有视频服务器功能的系统网关通过CAN总线同时与多块控制板连接;具有视频服务器功能的系统网关包括微型无线路由器、1号电源适配器、2号电源适配器、控制模块、CAN驱动模块、TJA1050型CAN总线驱动模块和摄像模块;微型无线路由器通过UTP网络与控制模块实现通信;它主要用于网络监控领域。

Description

可在线编程的监控网络系统
技术领域
本发明属于监控网络系统领域。
背景技术
监控系统在我们身边随处可见。如小区楼房上的摄像头、楼宇间的安全门、银行的应急报警装置。这些监控不光包括着视频监视,还包括许多数字、模拟信号的采集与处理。同时在对现场进行监视的时候依然肩负着某些控制功能。
目前在我们工作和生活中监控系统已经得到了一定的普及。虽然市场上用着众多的产品,但大多只局限为监视与远程网络摄像头等功能,不适宜修改与添加新的特性。而专用的远程控制系统又存在价格偏高、需要授权、以外国技术为主的尴尬局面。
因此开发一款可用于多种领域、具有快速二次编程的远程网络控制器变得尤为重要。
CAN是Controller Area Network的缩写,是国际标准化组织ISO认定的一种标准的串行通信协议。最初由的德国BOSCH公司设计使用在在汽车电子领域。由于其出色的安全性与极高的速度,很快便在汽车领域成为了标准规范,并被ISO所认定为国际标准。在CAN通过ISO11898及ISO11519进行了标准化之后,成为了欧洲汽车的标准通信协议。
由于汽车是一种关乎人身健康的复杂自动化设备,在数据传输中对数据量、安全性、布局难易度等有着极为严格的要求。因此为汽车专门设计使用的CAN总线在设计之初就已经具备了一般工业现场总线所能完成的任务,而且还在此基础上增添了大量的网络化功能,使其在数据量高速增加的今天被大量应用在工业控制、医疗安全、家庭物联网等场合。大量的厂家使用CAN总线作为自己新一代产品的通信接口,以取代原有的RS485串行总线。
CAN总线特点:
①.无主从之分,任何一部设备都有一个地址,通过地址大大小建立优先权使用总线。
②.系统提供硬件CRC校验,并且通过多个“场”进行通信,每一次通信要经历三个“场”,在最后依然有ACK结尾,失败则由硬件进行重新发送。减少了数据在传输过程中因干扰所造成的数据丢失。
③.CAN总线传输速度高达1Mbps,在不经过中继器的情况下通过降低比特率的方式,可以将所要传输的数据发送到超过10KM的传输距离以外的设备中。可以有效的节约设计成本。
系统的TCP/IP通信原理与通信结构:
TCP/IP(Transmission Control Protocol/Internet Protocol),中文被称作传输控制协议/因特网互联协议,是当今网络中使用最广泛的网络传输协议。可以说TCP/IP是世界互联网的基础,比如我们上网使用的HTTP/FTTP服务、RTP/RTSP视频服务、各种PC软件的网络更新和交互等全都是以TCP/IP为基础,进行二次扩充所形成的网络传输协议。TCP/IP将网络抽象成四层网络传输模型。TCP/IP协议中主要负责数据交互的协议是:面向连接的TCP通信协议,面向数据传输的UDP通信协议。
TCP协议为了提高网络的安全性,在连接时使用三次握手来建立连接。并且在传输时使用CRC校验这种以异或为基础的校验模式。也因为其太过注重安全性,有损传输效率。所以大多时候,基于TCP网络协议并不会传输大数据,而且只做点对点的网络通信,不发送广播。而大数据包,如音频、视频、文件下载/上传、以及其他对安全性要求不高的网络数据传输则经常使用以UDP为基础的网络传输协议。
FF-mpeg是一款经常出现在我们生活中,但却又不为我们所知的一款常用工具。FF-mpeg是现今开源、跨平台、软解码的工具中最有活力的一款。在我们身边很多软件在最开始都通过某些方式间接调用FF-mpeg,比如“格式工厂”,“暴风影音”,“QQ影音”以及绝大部分ANDROID平台的全能器。可以说虽然我们并不了解FF-mpeg,但它却因自身优越的性能改变了我们的生活。
基于ANDROID的手持客户端:
随着几年来ARM cortex的出现,移动平台发生的翻天覆地的变化,而智能手机就是这个变化中最明显的体现。而装有ANDROID系统的手机正是带领这场变化快速崛起的一直核心力量。
ANDROID简介:
ANDROID是现今市场占有率最高的手机操作系统。随着在2005年谷歌公司收购了AndyRubin的ANDROID公司,ANDROID逐渐走到了人们面前并获得了空前的成功。据不完全统计,在13年末,ANDROID在手机中的占有率达到78.9%接近8成的市场份额,稳坐第一位。
可以想象在将来的某一天,工程师们不在需要带一部笔记本去为设备升级、记录,而是随手拿出手机、平板电脑来解决。而本系统对这种设想的实际化提供了一种可能。
发明内容
本发明是为了解决现有监控系统大多只局限为监视与远程网络摄像头等功能,不适宜修改与添加新的特性的问题,本发明提供了一种可在线编程的监控网络系统。
可在线编程的监控网络系统,它包括具有视频服务器功能的系统网关、多块控制板、PC客户端和ANDROID手持终端,
PC客户端和ANDROID手持终端均通过有线或无线网络与具有视频服务器功能的系统网关通信,具有视频服务器功能的系统网关通过CAN总线同时与多块控制板连接;
具有视频服务器功能的系统网关包括微型无线路由器、1号电源适配器、2号电源适配器、控制模块、CAN驱动模块、TJA1050型CAN总线驱动模块和摄像模块;
所述的微型无线路由器通过UTP网络与控制模块实现通信,微型无线路由器的供电电源输入端与1号电源适配器的直流电信号输出端连接,1号电源适配器的交流电信号输入端和2号电源适配器的交流电信号输入端均用于与外部AC220V供电电源连接,2号电源适配器用于给控制模块提供工作电源,
摄像模块通过USB串行通信端口与控制模块的视频信号输入端连接,
控制模块通过RS232接口与CAN驱动模块通信,CAN驱动模块通过CAN-TTL串口与TJA1050型CAN总线驱动模块通信;
所述的控制模块内嵌入有主程序模块、FF-mpeg模块和FF-server模块;
主程序模块通过接收PC客户端或ANDROID手持终端传来的指令来控制有视频服务器功能的系统网关,主程序模块在控制FF-mpeg模块时,还用于对CAN驱动模块发送控制指令的任务,
FF-mpeg模块用于进行视频采集,且进行视频采集的具体过程为:首先识别设备文件,并根据设定的采样模式进行视频采样,刷入缓冲文件中,缓冲文件作为一个循环队列储存视频信息,
FF-server模块用于进行视频传输,且进行视频传输的具体过程为:当FF-server模块接受外界连接后从循环队列中读出缓存数据发送至PC客户端或ANDROID手持终端,
主程序模块通过SHELL脚本与FF-mpeg模块进行连接,主程序模块通过.CONFIG脚本与FF-server模块进行连接;
所述的PC客户端或ANDROID手持终端内嵌入有软件模块,该软件模块内部的主程序流程为:
步骤一:开始,进行程序初始化,执行步骤二;
步骤二:进行连接服务器,执行步骤三;
步骤三:判断是否进行下载,判断结果为是,执行步骤四,判断结果为否,执行步骤五;
步骤四:编译脚本文件,执行步骤五;
步骤五:刷新屏幕,进行屏幕显示,执行步骤六;
步骤六:判断时候进入响应,判断结果为是,执行步骤七,判断结果为否,执行步骤八;
步骤七:对响应内容进行处理,执行步骤八;
步骤八:进行发送响应处理后的数据,执行步骤九;
步骤九:读取网络接收数据;执行步骤十;
步骤十:判断是否开启视频,判断结果为是,执行步骤十二,判断结果为否,执行步骤十一;
步骤十一:开启播放器,执行步骤三;
步骤十二:判断是否退出开启视频模式,判断结果为是,退出视频模式,结束,判断结果为否,执行步骤三;
所述的控制板内嵌入有软件模块,该软件模块内部的主程序流程为:
步骤二一:开始,程序初始化,执行步骤二二;
步骤二二:开启CAN总线接收数据,执行步骤二三;
步骤二三:开启任务管理器,执行步骤二四;
步骤二四:判断是否接收任务,判断结果为是,执行步骤二五,判断结果为否,执行步骤二二;
步骤二五:运行已接收的任务,执行步骤二六;
步骤二六:将运行任务后的数据反馈至CAN总线,执行步骤二七;
步骤二七:判断反馈任务是否完成,判断结果为是,执行步骤二三,判断结果为否,执行步骤二五。
所述的控制模块挂载LINUX内核的GNU操作系统。
所述的控制板采用具有CAN总线的MCU实现,且该MCU为C8051F040型芯片。
所述的CAN驱动模块采用STM32F103VET6核心板实现。
所述的具有视频服务器功能的系统网关还包括LM7812型稳压芯片,LM7812型稳压芯片的直流电信号输出端与CAN驱动模块的直流电信号输入端连接。
所述的控制模块采用S5PV210型网关主板实现,控制模块的视频信号输入端通过USB2.0与摄像模块的视频信号输出端连接。
当通过以太网进行数据传输时,所述数据的格式为:
当通过CAN总线进行数据传输时,所述数据的格式为:
该系统通过“Tilde脚本”作为其在线编程语言,“Tilde脚本”指令如下表所示:
本发明带来的有益效果是,可在线编程的监控网络系统在硬件上使用强模块化的思想,尽可能的将功能分离开以适应不同环境的需求。而在软件上则基于多任务的思想,以任务为单位通过自己定义的脚本语言对系统中各个执行部件进行可在线编程控制。目的是使系统具有良好的组合性与通用性。通过多平台(PC、手机、ARM CORTEX A/M以及高性能八位机),有机的结合使其可以在多种场合完成监视和控制任务。系统中所有执行模块都可以独立运行,以满足不同场合对不同功能和成本的限制。
本系统正是基于此需求来设计一款可以在多个领域进行应用、改造的远程监控系统。以满足在快速组网开发、远程网络监控、数据采集控制以及教学等领域的一款通用控制系统。
附图说明
图1为本发明所述的可在线编程的监控网络系统的结构示意图;
图2为所述的具有视频服务器功能的系统网关的内部组成示意图;
图3为具体实施方式一所述的控制模块的内部组成示意图;
图4为网关TCP/IP通信结构的原理示意图。
图5为PC客户端和ANDROID手持终端播放原理示意图;
图6为控制板内部的原理示意图;
图7为以LM78XX型芯片实现的稳压电路连接示意图;
图8为具体实施方式一所述的PC客户端或ANDROID手持终端内部的主程序流程图;
图9为具体实施方式一所述的控制板内主程序流程图。
具体实施方式
具体实施方式一:参见图1、2、3、8和9说明本实施方式,本实施方式所述的可在线编程的监控网络系统,它包括具有视频服务器功能的系统网关1、多块控制板2、PC客户端3和ANDROID手持终端4,
PC客户端3和ANDROID手持终端4均通过有线或无线网络与具有视频服务器功能的系统网关1通信,具有视频服务器功能的系统网关1通过CAN总线同时与多块控制板2连接;
具有视频服务器功能的系统网关1包括微型无线路由器1-1、1号电源适配器1-2、2号电源适配器1-4、控制模块1-5、CAN驱动模块1-7、TJA1050型CAN总线驱动模块1-8和摄像模块1-9;
所述的微型无线路由器1-1通过UTP网络与控制模块实现通信,微型无线路由器1-1的供电电源输入端与1号电源适配器1-2的直流电信号输出端连接,1号电源适配器1-2的交流电信号输入端和2号电源适配器1-4的交流电信号输入端均用于与外部AC220V供电电源连接,2号电源适配器1-4用于给控制模块1-5提供工作电源,
摄像模块1-9通过USB串行通信端口与控制模块1-5的视频信号输入端连接,
控制模块1-5通过RS232接口与CAN驱动模块1-7通信,CAN驱动模块1-7通过CAN-TTL串口与TJA1050型CAN总线驱动模块1-8通信;
所述的控制模块1-5内嵌入有主程序模块5-1、FF-mpeg模块5-2和FF-server模块5-3;
主程序模块5-1通过接收PC客户端3或ANDROID手持终端4传来的指令来控制有视频服务器功能的系统网关1,主程序模块5-1在控制FF-mpeg模块5-2时,还用于对CAN驱动模块7发送控制指令的任务,
FF-mpeg模块5-2用于进行视频采集,且进行视频采集的具体过程为:首先识别设备文件,并根据设定的采样模式进行视频采样,刷入缓冲文件中,缓冲文件作为一个循环队列储存视频信息,
FF-server模块5-3用于进行视频传输,且进行视频传输的具体过程为:当FF-server模块5-3接受外界连接后从循环队列中读出缓存数据发送至PC客户端3或ANDROID手持终端4,
主程序模块5-1通过SHELL脚本与FF-mpeg模块5-2进行连接,主程序模块5-1通过.CONFIG脚本与FF-server模块5-3进行连接;
所述的PC客户端3或ANDROID手持终端4内嵌入有软件模块,该软件模块内部的主程序流程为:
步骤一:开始,进行程序初始化,执行步骤二;
步骤二:进行连接服务器,执行步骤三;
步骤三:判断是否进行下载,判断结果为是,执行步骤四,判断结果为否,执行步骤五;
步骤四:编译脚本文件,执行步骤五;
步骤五:刷新屏幕,进行屏幕显示,执行步骤六;
步骤六:判断时候进入响应,判断结果为是,执行步骤七,判断结果为否,执行步骤八;
步骤七:对响应内容进行处理,执行步骤八;
步骤八:进行发送响应处理后的数据,执行步骤九;
步骤九:读取网络接收数据;执行步骤十;
步骤十:判断是否开启视频,判断结果为是,执行步骤十二,判断结果为否,执行步骤十一;
步骤十一:开启播放器,执行步骤三;
步骤十二:判断是否退出开启视频模式,判断结果为是,退出视频模式,结束,判断结果为否,执行步骤三;
所述的控制板2内嵌入有软件模块,该软件模块内部的主程序流程为:
步骤二一:开始,程序初始化,执行步骤二二;
步骤二二:开启CAN总线接收数据,执行步骤二三;
步骤二三:开启任务管理器,执行步骤二四;
步骤二四:判断是否接收任务,判断结果为是,执行步骤二五,判断结果为否,执行步骤二二;
步骤二五:运行已接收的任务,执行步骤二六;
步骤二六:将运行任务后的数据反馈至CAN总线,执行步骤二七;
步骤二七:判断反馈任务是否完成,判断结果为是,执行步骤二三,判断结果为否,执行步骤二五。
本实施方式,CAN驱动模块1-7根据所接收的指令对分发到下位控制板中。每块控制板所返回的实时参数也将通过CAN驱动模块1-7转发给控制模块1-5。
PC客户端3内部嵌入有客户端服务模块,该模块包括:主界面、脚本编译工具链和视频播放器。
主界面使用C#语言编写,拥有TCP连接、下载指令、数据显示、简单控制、启动脚本编译器、启动视频等功能。
脚本编译工具链中的脚本编辑器由C#编写,主要功能类似于记事本。脚本编译工具使用DEV CPP编写,使用C语言,以便移植到其他平台。
视频播放器则使用开源项目FF-mpeg计划中的FF-play进行改造。(使用系统中自带的medraplay其他有网络播放功能的播放器均可播放)。
ANDROID手持终端4基本是PC客户端功能的删减版,去除的编译工具链(可以使用PC机编译好的二进制代码进行下载控制)。与之不同的是,视频播放器作为一个单独的APP(应用)运行。且需要编译好的脚本来打开网关上所挂载的摄像头。但增加了一些多媒体功能,以便日后改造开发。
本系统的网络数据交互方式有两种,一种是通过基于以太网的TCP/IP协议所组成的星型拓扑结构,另一种是基于CAN协议组成的多节点的总线拓扑网络结构。通过在不同的场合使用不同的结构可以大大提高系统的环境适应性。
本系统在被控端控制板间使用CAN总线进行连接,组件一个现场总线系统来完成多点间的任意数据交互。网关通过CAN驱动部分对下位数据进行管理并接收下位发来的各种信号数据转发给网关。而各控制板卡间亦可通过设定好的交互脚本对其他控制板发送数据。PC客户端3和ANDROID手持终端4播放原理:系统在PC环境中使用的播放器与在android环境下有很大的区别。在PC上我们使用FF-mpeg项目中自带的FF-play作为播放工具。
FF-play是作为FF-mpeg的相关组件,使用FF-mpeg的解码库进行解码。虽然大小只有1M位多,而且要指令行操作。但其强大的功能完全不亚于市面上大多数的软解码播放器,而且很多软件的源代码中都参照了FF-play源码。因此,作为本系统的网络播放器,其性能完全满足要求。
在PC上使用WINDOWS环境进行开发。当用户选择打开视频的时候,系统向网关发送视频开启指令,之后网关会通过脚本启动FF-mpeg以及FF-server。之后通过WINDOWS下的系统调用指令“System.Diagnostics.Process.Start()”来启动FF-play,并通过启动之前对其设定远程服务器网址、播放格式等相关信息,如图5所示。
虽然FF-play的性能强大,代码易懂,再加上一旦视频服务器开启,大多数的网络播放器都可以播放监视视频。但是在ANDROID客户端上。出于为了提高结构的整体性等原因,系统依然提供了一款视频播放器“MULTIPPLAYER”。本播放器使用ANDROID内的组件MEDRAPLAYER配合SURFACEVIEW所构建。提供了本地视频播放、远程视频播放、音乐播放、图片浏览等功能。由于音频和视频使用了同样的构架方案,而图片播放不在本文内容之内,因此只对视频部分结构进行简单介绍。本播放器使用ANDROID系统内标配的MEDRAPLAYER进行解码,在设定好播放路径(“网关视频服务器地址”)后,通过界面的开始按钮可以开始播放,并通过SURFACEVIEW发送至屏幕显示。
控制板2作为系统中输出最多的模块,可以配置多组核心板进行控制。(在此以两套为例。)每套都有独立的数字/模拟的输入和输出,并提供占空比输出。每套设备受CAN总线控制,具有良好的组合性。系统在供电上可以选择外接DC16V电源或者是使用DC16V电池为系统提供电源。由于CAN总线是差分信号无需与网关共地。具体结构参照图6所示。
由于最终通过无线网络,使网关与PC/ANDROID终端相连,形成整个硬件设备的主体。
控制板:控制板是系统中监视数字、模拟信号以及进行控制的标准单元。作为一种数量可以选配的控制单元,在设计时充分考虑了今后可以对系统进行改造。系统使用模块化的硬件思想,在系统中只要满足软件接口规定以及传输标准,任何配有CAN总线的可编程控制器都有机会加入到系统中。
本系统控制板使用美国“Silicon Labs”公司的C8051F040作为主控芯片,每一块控制板都由一块C8051F040核心以及配套驱动完成。
由于C8051F040内部集成弱上拉、上电复位、RC振荡器等MCU必备设备,因此在DC3.3V环境下可以不依赖外设独立工作。而通过外置晶振可提高时钟的精准度。
控制板的稳压处理:虽然控制板使用的C8051F040核心板自带稳压电路,但是其并不能长时间输入超过10V的直流电压,因此我们需要为多块控制板外接稳压模块。
本实施方式,本系统主要使用TCP/IP中注重可靠性的TCP通信协议为基础,配合FF-server自己建立的HTTP服务来完成互联网一层的传输(注:FF-server使用的HTTP服务,这是一个基于TCP协议的服务。但发送视频时使用的网络数据包,却是基于UDP的服务)。由于FF-server可以自己管理连接与传输,而自己书写管理数据的服务器程序直接对协议底层的SOCKET进行操作。因此为了便于理解我们将两个服务器程序所使用的网络传输协议抽象为他们所属于的TCP/IP服务。
系统客户端在执行连接下载操作之后会主动和网关建立连接,并且将编译好的数据发送至网关中。网关经过处理后一方面选择是否发送视频,一方面直接返回控制板所传来的数据,参见图4所示。
系统软件设计整体结构:
系统为提高外界设备的兼容性,使用了两种通用总线。根据实际环境的不同而选择使用不同总线,提高了对多种设备的兼容性。
系统在软件上分层为客户端、服务器、与被控端几部分组成。分别对用着硬件上的客户端、网关、与控制板。
在客户端中虽然存在两个平台,但其工作思想是相似的。通过对编译后的脚本和直接控制指令进行发送来完成对整个平台的控制同时,通过接收TCP/IP网络传来的数据与视频流的解析来完成对现场的接收。
本实施方式中,在网关中由于有两种可编程器件,而且存在操作系统间的交互,因此有需要因此在程序上分为多个线程并行实现。其中分为TCP/IP接收转码、系统调用SHELL脚本、网络摄像头、以及CAN任务管理等。
控制板在软件结构上比较简单,通过事先对每一种功能进行封装。之后每当到任务运行的时候,系统将任务指针传至负责任务运行的程序模块之中,同时将任务所需相应参数传递给任务的参数缓存中。通过时钟块调用程序运行,同时负责接收数据处理的任务在每个周期进行执行,管理任务。
具体实施方式二:本实施方式与具体实施方式一所述的可在线编程的监控网络系统的区别在于,所述的控制模块1-5挂载LINUX内核的GNU操作系统。
本实施方式,控制模块1-5挂载LINUX内核的GNU操作系统,具有良好的可移植性。在系统中建立两个服务器程序来完成任务的协调,调用FF-mpeg进行视频数据采集,同时通过将SOCKET传来的数据调用系统STTY指令发给CAN驱动板完成对控制板指令的转发与接收。
具体实施方式三:本实施方式与具体实施方式一所述的可在线编程的监控网络系统的区别在于,所述的控制板2采用具有CAN总线的MCU实现,且该MCU为C8051F040型芯片。
本实施方式,控制板2是一块拥有CAN总线的MCU。出于一定的考虑,使用的是C8051F040混合信号处理芯片来完成。作为系统的控制部分的最终执行机构,再设计时尽可能的考虑了简单化,以便于更容易移植到其他平台,或兼容某些特殊平台,从而大大提高系统的通用性。
控制板与网关的CAN驱动模块1-7进行交互,从而完成对控制指令的接收,并最终转换为内部任务调度器所持有的“资源”(数据、操作指令、逻辑关系以及任务顺序)。
在控制板内通过使用c语言虚拟的变量来储存数据,通过所受到的指令,使用函数指针的的方法完成对板体自带功能的调度与排序。
控制板的在线可编程控制功能模块如下:(出于系统稳定性与简洁性的考虑,这里并不是芯片的真实性能。)
①.数字I/O输:出16个,8个位定义,八个整体输出。
②.12位ADC:一个,支持4个通道。
③.16位定时器:1个,提供多个定时器值。
④.外部中断端口:1个。
⑤.Pid控制器:2个。(具体进度因时间关系而定)
⑥.8位pwm输出:2个。
⑦.8位DAC:1个。
⑧.数据寄存器:8位(fr00-fr0f)16个,16位(,fr10-fr1f)16个,32位(fr20-fr2f)16个。
注:32位寄存器只能计算数赋值
⑨.数学运算器:加法器、减法器、乘法器、除法器
⑩.逻辑运算器:大于、小于、等于、分支if语句
具体实施方式四:本实施方式与具体实施方式一所述的可在线编程的监控网络系统的区别在于,所述的CAN驱动模块采用STM32F103VET6核心板实现。
本系统网关部分中的CAN驱动/控制器由一块STM32F103VET6来完成。在供电方面通过与网关主板上的DC5V端子连接完成供电。同样为了提高模块化的能力,在网关中为其提供一个供电接口用于对于不需要网络环境的系统对其进行改造。同时也是系统与外部共地所提供的端口。
系统使用8M晶振配合芯片内部倍频达到72MHZ主频。使用标准32.768KHZ的实时时钟晶振为片内RTC提供时钟。
网关所使用STM32F103VET6来进行CAN数据管理。通过自身64KBit的运存空间缓存CAN总线间交互的数据,同时将接收到的数据反馈给网关主板。
任务的触发依赖总线传来的数据。在主板没有数据发来,且总线也无数据传输的时候,程序会在循环中等待。在有主板发来的控制数据时,首先将数据存在主循环队列中。同时系统通过指令的控制编号不同设置每个设备的指令运行表,以指针数组的形式记录每个设备在队列中的位置,已达到对数据的分两类与本地缓存。
在处理完上述处理后,程序的指令管理函数将运行,向有数据的板卡发送数据。并接等待指令运行结束的反馈,以及发送下一组数据。
与此同时,若收到板卡的反馈数据之后,程序会将数据传输给网关主板。
具体实施方式五:本实施方式与具体实施方式一所述的可在线编程的监控网络系统的区别在于,所述的具有视频服务器功能的系统网关1还包括LM7812型稳压芯片1-6,LM7812型稳压芯片1-6的直流电信号输出端与CAN驱动模块1-7的直流电信号输入端连接。
系统主要使用常见的LM7812,配合LM7805来完成对1DC6V锂离子电池组的稳压操作。由于LM7812与LM7805电路几乎相同,因此以LM78XX来代表两种芯片的电路连接,具体参见图7。
具体实施方式六:本实施方式与具体实施方式一所述的可在线编程的监控网络系统的区别在于,所述的控制模块1-5采用S5PV210型网关主板实现,控制模块1-5的视频信号输入端通过USB2.0与摄像模块1-9的视频信号输出端连接。
系统网关以一块三星公司的S5PV210为核心的板体为主板。以一块STM32F103VET6作为CAN驱动,同时也作为实时任务调度器配合主板完成相关任务。通过与摄像头、控制板、以及控制终端间进行连接,来完成系统任务的主体调度任务。
网关主板基于S5PV210为核心的开发板所构建,使用“友善之臂”的“tiny210v2”进行开发。
本系统使用的“友善TINY210V2”开发板,拥有512M DDR2内存(200MHZ)、2G 2GBMLC NAND Flash、1GHZ主频而且还兼容“友善TINY6410”开发板底板。只作为视频服务器,可以提供数倍于S3C6410的性能。(注意:理论性能。)底板提供10M/100M网卡驱动芯片、USB接口、串行口、等标准接口。
具体实施方式七:本实施方式与具体实施方式一所述的可在线编程的监控网络系统的区别在于,当通过以太网进行数据传输时,所述数据的格式为:
当通过CAN总线进行数据传输时,所述数据的格式为:
混合信号的处理与终端的交互:
系统除了视频监视外,更多的是进行远程控制数据的监视以及一定的控制。而远程监视数据包括:16位数字I/O的状态、ADC的四路AIN通道采样值、外部中断触发次数。由于数据中包含两种数字信号与一种模拟信号,因此从数据采集出来到发送回客户端显示存在一定的编码问题。
因为控制板的数据交互依赖于CAN总线,而CAN总线的单次最大发送报文为八个Bit,共六十四位。为了便于一次性将数据发送回客户端,防止丢包等问题所造成的数据错误。设计时控制板以两个Bit来存储数字I/O的状态,四个Bit来存储四路ADC采样值,一位数据为中断计数器的中断次数。此时报文只剩一位空间,我们将报文的首位存放指令的特殊识别码,以便终端进行显示与解析。
在网关接到返回数据之后,为了区别所发送的板卡,网关会对报文增加一个地址码,代表发送数据的控制板。并通过以太网转发至客户端。在界面上显示。
具体实施方式八:本实施方式与具体实施方式一所述的可在线编程的监控网络系统的区别在于,该系统通过“Tilde脚本”作为其在线编程语言,“Tilde脚本”指令如下表所示:
可编程化控制的实现方式:
系统为提高系统兼容性以及控制的范围,使用可在线编程的方式对控制板进行远程控制。在控制系统中,由于程序相对于一般控制界面具有更强的逻辑性,功能设定上也更加多样化,而且还可以储存、更换以备多次使用等。因此编程时衡量控制器通用性的重要标准。
本系统使用自己设定的“Tilde脚本”脚本作为其在线编程语言。本脚本共有二十条功能指令,和数十条内部指令,多数指令拥有多个模块已备使用。
有变量三种,每种十六个。大多数指令之间的数据交互全依赖于这些变量,而变量则由专门的变量赋值指令进行赋值,完成用户到系统间的数据交互。
在根据指定格式写好脚本之后,通过系统中的编译软件将其变为二进制码,便于发送。最终经TCP/IP网络发送至网关。
网关接收到程序后,对其进行重新组织、分包等工作,之后以根据下位控制板的工作情况选择性的发送给下位执行。
控制板数据的采集与可编程化控制:
系统中的被控端“控制板”使用本身带有CAN支持的C8051F040作为主控芯片,为了提高可移植性与通用性,系统在控制板内部使用函数指针加缓冲队列“FIFO”的方式实现任务调度器。通过自己定义的“Tilde脚本”进行可编程控制。而且只要符合系统CAN接口规则,任何支持CAN总线的设备均可接入本系统。从而努力提高系统的可扩展性。
本发明的特点
1、由于网络远程控制是未来控制、服务、制造领域的一种趋势。在未来实现真正的无人超级工厂,网络远程监控是最佳的方式之一。同时刚刚兴起的物联网技术在很大程度上也依赖于跨平台的远程控制系统。因此在现在研究网络远程控制系统的原理与实现有着重要的意义。
2、假设我们在未来的某天设计一款远程监控的系统,如银行报警系统。我们不需要对复杂的传输结构进行设计,不需要对各种外设的驱动进行编写,不需要在队中平台间频繁的更换自己的编程环境,而是简单的通过一套远程监控平台,对其功能进行脚本编写就可以轻松完成。
3、这样不仅节省的是研发成本,更重要的是可以在开发初期就得到一套稳定的系统进行调试,从而大大减少开发时间的同时提高了稳定性。而开发时间与稳定性的平衡是控制领域产品中最重要的因素之一。

Claims (8)

1.可在线编程的监控网络系统,其特征在于,它包括具有视频服务器功能的系统网关(1)、多块控制板(2)、PC客户端(3)和ANDROID手持终端(4),
PC客户端(3)和ANDROID手持终端(4)均通过有线或无线网络与具有视频服务器功能的系统网关(1)通信,具有视频服务器功能的系统网关(1)通过CAN总线同时与多块控制板(2)连接;
具有视频服务器功能的系统网关(1)包括微型无线路由器(1-1)、1号电源适配器(1-2)、2号电源适配器(1-4)、控制模块(1-5)、CAN驱动模块(1-7)、TJA1050型CAN总线驱动模块(1-8)和摄像模块(1-9);
所述的微型无线路由器(1-1)通过UTP网络与控制模块实现通信,微型无线路由器(1-1)的供电电源输入端与1号电源适配器(1-2)的直流电信号输出端连接,1号电源适配器(1-2)的交流电信号输入端和2号电源适配器(1-4)的交流电信号输入端均用于与外部AC220V供电电源连接,2号电源适配器(1-4)用于给控制模块(1-5)提供工作电源,
摄像模块(1-9)通过USB串行通信端口与控制模块(1-5)的视频信号输入端连接,
控制模块(1-5)通过RS232接口与CAN驱动模块(1-7)通信,CAN驱动模块(1-7)通过CAN-TTL串口与TJA1050型CAN总线驱动模块(1-8)通信;
所述的控制模块(1-5)内嵌入有主程序模块(5-1)、FF-mpeg模块(5-2)和FF-server模块(5-3);
主程序模块(5-1)通过接收PC客户端(3)或ANDROID手持终端(4)传来的指令来控制有视频服务器功能的系统网关(1),主程序模块(5-1)在控制FF-mpeg模块(5-2)时,还用于对CAN驱动模块(7)发送控制指令的任务,
FF-mpeg模块(5-2)用于进行视频采集,且进行视频采集的具体过程为:首先识别设备文件,并根据设定的采样模式进行视频采样,刷入缓冲文件中,缓冲文件作为一个循环队列储存视频信息,
FF-server模块(5-3)用于进行视频传输,且进行视频传输的具体过程为:当FF-server模块(5-3)接受外界连接后从循环队列中读出缓存数据发送至PC客户端(3)或ANDROID手持终端(4),
主程序模块(5-1)通过SHELL脚本与FF-mpeg模块(5-2)进行连接,主程序模块(5-1)通过.CONFIG脚本与FF-server模块(5-3)进行连接;
所述的PC客户端(3)或ANDROID手持终端(4)内嵌入有软件模块,该软件模块内部的主程序流程为:
步骤一:开始,进行程序初始化,执行步骤二;
步骤二:进行连接服务器,执行步骤三;
步骤三:判断是否进行下载,判断结果为是,执行步骤四,判断结果为否,执行步骤五;
步骤四:编译脚本文件,执行步骤五;
步骤五:刷新屏幕,进行屏幕显示,执行步骤六;
步骤六:判断时候进入响应,判断结果为是,执行步骤七,判断结果为否,执行步骤八;
步骤七:对响应内容进行处理,执行步骤八;
步骤八:进行发送响应处理后的数据,执行步骤九;
步骤九:读取网络接收数据;执行步骤十;
步骤十:判断是否开启视频,判断结果为是,执行步骤十二,判断结果为否,执行步骤十一;
步骤十一:开启播放器,执行步骤三;
步骤十二:判断是否退出开启视频模式,判断结果为是,退出视频模式,结束,判断结果为否,执行步骤三;
所述的控制板(2)内嵌入有软件模块,该软件模块内部的主程序流程为:
步骤二一:开始,程序初始化,执行步骤二二;
步骤二二:开启CAN总线接收数据,执行步骤二三;
步骤二三:开启任务管理器,执行步骤二四;
步骤二四:判断是否接收任务,判断结果为是,执行步骤二五,判断结果为否,执行步骤二二;
步骤二五:运行已接收的任务,执行步骤二六;
步骤二六:将运行任务后的数据反馈至CAN总线,执行步骤二七;
步骤二七:判断反馈任务是否完成,判断结果为是,执行步骤二三,判断结果为否,执行步骤二五。
2.根据权利要求1所述的可在线编程的监控网络系统,其特征在于,所述的控制模块(1-5)挂载LINUX内核的GNU操作系统。
3.根据权利要求1所述的可在线编程的监控网络系统,其特征在于,所述的控制板(2)采用具有CAN总线的MCU实现,且该MCU为C8051F040型芯片。
4.根据权利要求1所述的可在线编程的监控网络系统,其特征在于,所述的CAN驱动模块采用STM32F103VET6核心板实现。
5.根据权利要求1所述的可在线编程的监控网络系统,其特征在于,所述的具有视频服务器功能的系统网关(1)还包括LM7812型稳压芯片(1-6),LM7812型稳压芯片(1-6)的直流电信号输出端与CAN驱动模块(1-7)的直流电信号输入端连接。
6.根据权利要求1所述的可在线编程的监控网络系统,其特征在于,所述的控制模块(1-5)采用S5PV210型网关主板实现,控制模块(1-5)的视频信号输入端通过USB2.0与摄像模块(1-9)的视频信号输出端连接。
7.根据权利要求1所述的可在线编程的监控网络系统,其特征在于,
当通过以太网进行数据传输时,所述数据的格式为:
当通过CAN总线进行数据传输时,所述数据的格式为:
8.根据权利要求1所述的可在线编程的监控网络系统,其特征在于,该系统通过“Tilde脚本”作为其在线编程语言,“Tilde脚本”指令如下表所示:
CN201410796185.1A 2014-12-18 2014-12-18 可在线编程的监控网络系统 Expired - Fee Related CN104570856B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410796185.1A CN104570856B (zh) 2014-12-18 2014-12-18 可在线编程的监控网络系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410796185.1A CN104570856B (zh) 2014-12-18 2014-12-18 可在线编程的监控网络系统

Publications (2)

Publication Number Publication Date
CN104570856A true CN104570856A (zh) 2015-04-29
CN104570856B CN104570856B (zh) 2017-04-12

Family

ID=53087209

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410796185.1A Expired - Fee Related CN104570856B (zh) 2014-12-18 2014-12-18 可在线编程的监控网络系统

Country Status (1)

Country Link
CN (1) CN104570856B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106487783A (zh) * 2016-09-28 2017-03-08 深圳市速美特电子科技有限公司 用于车辆通讯连接的加密方法及装置
CN106843035A (zh) * 2016-12-28 2017-06-13 歌尔科技有限公司 一种控制智能设备的方法和系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1713725A (zh) * 2005-05-25 2005-12-28 四川九洲电器集团有限责任公司 一种组合式多功能视频处理装置
EP2106140A2 (en) * 2008-03-26 2009-09-30 Kabushiki Kaisha Toshiba Information display apparatus and information display method
CN101911686A (zh) * 2007-12-27 2010-12-08 夏普株式会社 信息提供设备、信息显示设备、信息提供系统、控制方法、控制程序和存储介质
CN102546338A (zh) * 2012-01-12 2012-07-04 浙江大学 基于can总线的多媒体智能传感器网络系统及方法
CN102710558A (zh) * 2012-05-21 2012-10-03 中兴通讯股份有限公司 适用于多种显示类型的家庭网关的界面显示方法和系统
CN102752583A (zh) * 2012-06-29 2012-10-24 浙江大学 基于智能手机的泵站视频监控系统
WO2013023287A1 (en) * 2011-08-16 2013-02-21 Destiny Software Productions Inc. Script-based video rendering
CN103051881A (zh) * 2012-12-31 2013-04-17 深圳市捷顺科技实业股份有限公司 一种监控方法和系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1713725A (zh) * 2005-05-25 2005-12-28 四川九洲电器集团有限责任公司 一种组合式多功能视频处理装置
CN101911686A (zh) * 2007-12-27 2010-12-08 夏普株式会社 信息提供设备、信息显示设备、信息提供系统、控制方法、控制程序和存储介质
EP2106140A2 (en) * 2008-03-26 2009-09-30 Kabushiki Kaisha Toshiba Information display apparatus and information display method
WO2013023287A1 (en) * 2011-08-16 2013-02-21 Destiny Software Productions Inc. Script-based video rendering
CN102546338A (zh) * 2012-01-12 2012-07-04 浙江大学 基于can总线的多媒体智能传感器网络系统及方法
CN102710558A (zh) * 2012-05-21 2012-10-03 中兴通讯股份有限公司 适用于多种显示类型的家庭网关的界面显示方法和系统
CN102752583A (zh) * 2012-06-29 2012-10-24 浙江大学 基于智能手机的泵站视频监控系统
CN103051881A (zh) * 2012-12-31 2013-04-17 深圳市捷顺科技实业股份有限公司 一种监控方法和系统

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
何勋等: "基于S3C2440的H.264软编解码器实现", 《现代电子技术》 *
刘建敏等: "嵌入式Linux下基于FFmpeg的视频硬件编解码", 《单片机与嵌入式系统应用》 *
彭铁钢: "基于ARM的嵌入式视频监控系统设计", 《计算机工程与设计》 *
辛长春: "基于FFmpeg的远程视频监控系统编解码", 《电子技术》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106487783A (zh) * 2016-09-28 2017-03-08 深圳市速美特电子科技有限公司 用于车辆通讯连接的加密方法及装置
CN106843035A (zh) * 2016-12-28 2017-06-13 歌尔科技有限公司 一种控制智能设备的方法和系统

Also Published As

Publication number Publication date
CN104570856B (zh) 2017-04-12

Similar Documents

Publication Publication Date Title
Andersen et al. System design for a synergistic, low power mote/BLE embedded platform
Chowdhury et al. Platforms and testbeds for experimental evaluation of cognitive ad hoc networks
Dozio et al. Real time distributed control systems using RTAI
Mozumdar et al. A framework for modeling, simulation and automatic code generation of sensor network application
CN205212923U (zh) 可重构网络媒体话机终端
US8209694B2 (en) Single-stack real-time operating system for embedded systems
CN102736595A (zh) 一种基于32位微处理器和rtos的智能配电终端统一平台
Bergmann et al. Low cost prototyping system for sensor networks
CN105516178A (zh) 一种用于智能配电终端统一管控的协议转换器
Iannacci et al. Robotic cell work-flow management through an IEC 61499-ROS architecture
Ruimei et al. Design of ARM-based embedded Ethernet interface
CN104570856A (zh) 可在线编程的监控网络系统
Petrov et al. The XPP architecture and its co-simulation within the simulink environment
Colla et al. Applying the IEC-61499 model to the shoe manufacturing sector
Mesri Design and user guide for the single chip mote digital system
CN106569972A (zh) 基于usb接口的jtag单片机无线仿真器和方法
Yin et al. Design and implementation of IoT centralized management model with linkage policy
Mück et al. HyRA: a software-defined radio architecture for wireless embedded systems
Chen et al. A real-time networked control framework based on mobile phones
Irick Enhancing GNU Radio for hardware accelerated radio design
Kastner et al. An open approach to eib/knx software development
Ansari et al. A compiler assisted approach for component based reconfigurable MAC design
CN107105326A (zh) 一种用于电视机的交互系统
Koirala Evaluating BLE mesh technology for lighting control
Clemotte et al. A Zigbee target system running TinyOS

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170412

Termination date: 20191218