毕业设计基于VC的云台镜头控制操作台软件设计.docx
- 文档编号:6865311
- 上传时间:2023-01-11
- 格式:DOCX
- 页数:32
- 大小:247.58KB
毕业设计基于VC的云台镜头控制操作台软件设计.docx
《毕业设计基于VC的云台镜头控制操作台软件设计.docx》由会员分享,可在线阅读,更多相关《毕业设计基于VC的云台镜头控制操作台软件设计.docx(32页珍藏版)》请在冰豆网上搜索。
毕业设计基于VC的云台镜头控制操作台软件设计
基于VC的云台镜头控制操作台软件设计
摘要
随着多媒体技术和网络通信技术的迅速发展,数字视频监控技术在多种领域得到越来越广泛的应用。
而在在数字视频监控系统的设计与实现中,对云台的方位控制是系统执行的重要任务之一.云台是一种用于监控时调整摄像头位置的设备,云台镜头的控制是整个闭路监视系统一个重要组成部分。
本文设计了一种基于VC的云台镜头控制操作台软件,用以监控设备中能对云台起控制作用的软件。
该控制软件能控制云台的垂直运动和水平运动,以及摄像机的聚焦/散焦,变倍近/远、光圈变大/小等。
论文首先介绍了课题的应用概况,分析了监控系统和云台软件的功能概况,并针对这些功能提出了设计的实现方案,对云台中的通讯协议PELCO-D协议做了详细介绍。
其次论文详细介绍了本设计软件开发的全过程,给出了主程序、数据发送程序、运动控制程序和雨刷镜头控制程序的软件流程图。
通过调试,起到了很好的控制效果
关键字:
云台;监控系统;VC;操作台
ThePTZcameracontrolbasedonVCconsolesoftwaredesign
Abstract
Withthemultimediatechnologyandtherapiddevelopmentofnetworkcommunicationtechnology,digitalvideosurveillancetechnologyinmanyfieldsmoreandmorewidely.Inthedigitalvideosurveillancesystemdesignandimplementation,ontheheadoftheorientationcontrolisthesystemtoperformimportanttasks.PTZisacameraformonitoring,adjustthelocationofequipment,PTZcameracontrolistheclosed-circuitsurveillancesystemisanimportantpart.
ThispaperpresentsaPTZcameracontrolbasedonVC'sconsolesoftwareformonitoringdevicescanheadacontrollingsoftware.Thecontrolsoftwarecancontroltheheadoftheverticalmovementandhorizontalmovement,andthecamera'sfocus/defocus,zoomNear/Far,aperturebigger/smaller,etc..
Paperfirstintroducesthetopicofapplicationprofiles,analysisofthemonitoringsystemandPTZfunctionsofthesoftwareprofile,andthesefeaturesmakethedesignfortherealizationoftheprogram,ontheheadofthecommunicationprotocolPELCO-Dprotocolintroducedindetail.Second,thisthesisdetailstheentireprocessofdesigningsoftwaredevelopment,giventhemainprogram,thedatasendprocess,motioncontrolprogramsandwiperslenscontrolprogramflowchart.Throughthesetestsplayedagoodcontroleffect.
KeyWords:
Pan/tilt/zoom,;monitoringsystem;VC;Consoles
目 录
摘要……………………………………………………………………………I
1绪论
1.1云控制应台用概况
1.1.1数字监控系统概述
数字监控系统是指通过软硬件将监控头采集到的图像处理成数字信号,传送到电脑进行处理。
随着多媒体技术和网络通信技术的迅速发展,数字视频监控技术在电力系统、电信机房、工厂、城市交通、水利系统、小区治安等领域得到越来越广泛的应用。
数字监控系统可以很容易地实现一对多的控制,同时可以使用最少的连线,这节约了大量的成本。
伴随着互联网和各种无线技术的发展,实现远距离的控制变得十分容易。
1.1.2监控系统的组成
数字监控系统十分复杂,但基本组成很清晰,包括本地监控、监控设备和远端监控。
监控设备是整个系统的数据来源,一般由摄像机、解码器、报警器和云台等组成,其中云台是整个监视系统一个重要组成部分:
云台是一种用于监控时调整摄像头位置的设备,它接收来自系统控制台发出发的控制命令,解释并控制云台进行上、下、左、右各方向的行进动作并对镜头进行变焦(ZOOM)、聚焦(FOUCS)、光圈(iris)的控制。
控制系统的要求是动作运行准确、可靠。
由于云台运行动作的可控性及云台的多样性,该控制系统设计的好坏直接影响到整个监视系统的可靠性与可操作性等关键指标。
本地监控通常设置在监控现场附近,对从现场传回的多路视频信号通常通过视频矩阵进行切换,然后连入本地计算机进行显示。
随着技术的发展,远程监控应用会越来越广泛,这些远程监控计算机通过以太网、Intent或其他无线网方式与本地计算机相连接,从而可以实现远程对监控现场的监视。
1.2云台控制软件的发展概况
1.2.1云台控制软件简介
云台控制软件是在计算机上通过某些编程工具,制作的一种应用程序,软件能通过计算机串口输出符合云台控制协议的控制命令。
软件种类繁多,对不同的云台有不同的控制软件,它们应用不同的通信协议,有不同的功能效果。
但所有的控制软件都存在一些基本的控制功能,比如能控制云台进行上下左右运动,控制镜头进行变焦、聚焦、光圈等功能。
优秀的控制软件还应具有可扩展行,可根据要求增加一些高级功能,如预置位,雨刷等。
1.2.2云台控制软件的原理
软件主要由数据、系统程序和应用程序3部分组成,系统通过基于计算机图像技术的算法来判断实时性图像清晰度,从而使系统具备了自动调焦的能力,可以实现被视物体的自动选择。
监视系统的所有系统信息都通过数据来描述,化分为半固定数据、动态数据两种。
计算机与解码器阵列之间的数目、解码器的编号等参数均属于半固定数据,以拨码开关设置值、程序代码等形式存在。
云台的线扫描、面扫描、顺序切换、定时切换等中间运行参数都是动态数据。
系统程序包括导对云台、镜头的参数进行设置,对串行通信初始化,对云台的运动、雨刷控制等。
应用程序是直接面向用户并为用户服务的程序,包括将摄像机的视频信号的捕获,视频图像处理和显示。
1.2.3云台控制软件的发展现状
早期的云台控制器多采用模拟量信号通讯,控制信号也多为模拟量,这种类型控制器无需考虑信号之间的通讯联系问题,控制软件也就相对简单,它采用模拟量调节控制云台的上下左右动作,以及镜头的参数控制都是采用模拟量调节。
由于现场的监控通常比较复杂,常常是多台云台同时工作,传统的控制方式弊端尽显,随着数字通讯技术的发展,对云台的控制由传统的模拟量信号,转变为数字量控制,这对控制软件的制作要求也有所提高,软件必须能实现控制操作台通过简单的串行连接来控制多台云台完成更加丰富的动作,这样可以极大地提高系统的通讯信息集成化、综合自动化、降低成本等,在云台与控制器之间的通讯也就渐渐形成一种数字协议。
但由于受地区、行业的限制、公司企集团的利益驱使,目前控制器与控制操作台的通讯协议没有形成统一的国际标准,但仍然陆续出现了一些有影响的云台通讯协议,并具有一定的应用范围和市场,表现为市场流行多种控制协议,也就产生了多种协议类型的云台控制器。
美国Pelco公司在监控行业具有领先地位,其公司制定的Pelco-D协议是目前市场上比较通用的协议,此词的云台控制软件就采用了Pelco-D协议。
1.3工作内容和章节安排
本论文的主要内容是分析、设计和实现基于VC的云台镜头控制操作台软件开发。
论文共五章,结构安排如下:
第一章是绪论。
主要介绍了云台控制器的应用背景,控制软件的介绍、原理和发展概况。
第二章是软件分析和方案设计。
对软件所具备的功能进行了分析,同时根据不同功能的实现,提出了相应的设计方案。
第三章是串行通信的实现。
对软件与云台的通信方式做了介绍,并对本系统所采用通讯传输协议PELCO-D协议做了详细解释说明。
第四章是软件的设计和实现。
简要描述了软件开发工具、开发环境,并给出了相关程序流程图,包括运动控制和雨刷镜头控制的流程图。
同时对软件程序中的程序功能、界面展示、函数变量等做了详细的分析、设计、编写。
第五章是总结。
主要是对在开发过程中遇到问题作总结,以及自己对这一课题的一些认识。
2软件分析和方案设计
2.1软件功能分析
此云台软件主要设计了改变串口设置,包括修改协议、设定波特率、设定地址等功能;对云台运动的控制,包括上下左右等八个方向的运动和自动巡控功能;对镜头进行控制,包括变焦、聚焦、打开或关闭光圈等功能;其他一些高级控制,如预置、雨刷等
1.串口设置:
多种协议、波特率设置、地址。
软件和云台间通过协议来彼此传输数据,即操作软件产生数据包,通过协议发给云台,使其完成对应动作;每个云台都有个地址码,这个地址码的编码就是协议地址,每个地址码的接口单位时间内传输的数据(包括起始位、数据位、校验位、停止位)的位数,叫做云台的协议地址波特率,单位为bps,即位/秒,这个接口是串口。
2.云台控制按键:
上下左右、左上、左下、右上、右下、自动巡控。
通过操作这些按键,生成对应数据包传到云台,云台接收后进行对应的功能动作,如上下左右转动以采集所需方向的图像。
3.对镜头控制按键:
变焦(+-)、聚焦(+-)、光圈开关。
通过这三种功能按键对云台进行控制,增加图像的清晰度。
变倍:
通过内部的复杂透镜组来实现放大倍率,移动镜头内部的镜片,改变它们之间的相对位置,在一定范围内改变镜头的焦距长度和视角。
焦距:
是光学系统中衡量光的聚集或发散的度量方式,是指透镜中心或其第二主平面到图像聚集点处的距离,单位一般为毫米或英寸。
光圈:
用来控制光线透过镜头,进入机身内感光面的光量的装置,位于摄像机镜头内部,可用来控制通过镜头的光线的多少。
4.高级控制按键:
预置、调用、雨刷。
将某个位置设定为预置位置,之后可以通过调用自动回复到预置的位置,可设多个;通过雨刷按键控制雨刷装置运动擦拭镜头表面,保障观察效果,此装置操作便捷,大大降低罩面清洁和维护面积。
云台的镜头镜片如果沾有水或者灰尘,会影响视觉,就要装配雨刷,雨刷的工作方式类似汽车的雨刷,在镜片上来回扫动,去除镜片上的杂物
2.2软件设计方案
实现以上所说功能,具体需要三大模块,分别是分别是设置模块,按钮模块,通讯模块。
2.2.1设置模块
设置模块的功能主要分为三大块,通讯地址的选择,通讯频率波特率设定,通讯协议选择。
通讯地址选择是为了选择云台控制操作台控制目标。
地址码的作用是用来区分每一个摄像机的,比如你的监控系统中有5个云台,这样你为了在后端的操作系统中操作每个云台,你就得对每个云台进行编号,这就是云台的地址码.云台的地址码是有一定的规律可询的,以PELCO-D为例,走的就是标准的二进制,具体编号有公式决定.当设定了云台控制操作台上的地址选择后,操作台就可根据编码,选择要控制的云台,从而实现一台云台操作台可以操作多个云台,而控制互不干扰的情况.
频率波特率设定是为了实现云台于云台控制操作台的控制同步。
模拟线路信号的速率,也称调制速率,以波形每秒的振荡数来衡量。
如果数据不压缩,波特率等于每秒钟传输的数据位数,如果数据进行了压缩,那么每秒钟传输的数据位数通常大于调制速率,使得传输数据偶尔产生错误。
波特率是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变的次数来表示,其单位是波特(Baud)。
波特率与比特率的关系是比特率=波特率X单个调制状态对应的二进制位数。
在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。
波特率是传输通道频宽的指标。
通讯协议选择是为了让云台正确解码云台操作控制台的控制命令,从而让云台实现操作者的控制预期。
2.2.2按钮模块
按钮模块作为云台控制操作台中的重要控制部分,按其功能分,主要分为三大块,分别是:
运动控制,摄像机镜头控制,以及高级功能控制。
以运动控制为例,当按下控制方向的按钮时,即触发了鼠标触发事件,调用相关函数,产生7个字节的数据包,通过串口传输数据到232/485转换器,将数据转换为485信号输送给云台,从而实现控制云台运动的功能。
2.2.3通讯模块
通讯模块是本设计的重要部分,所有控制命令都是通过通讯模块传输给被控制的云台的。
这部分会在内下一章节重点介绍。
图2.1云台控制软件模块图
3串行通信的实现
3.1串行通信概述
随着计算机技术的发展,通讯传输在工业自动化控制领域得到越来越厂泛的应用。
通常在实际工作中,两个设备之间的信息交换被称为通信,通信的方式有两种,并行通信和串行通信。
所谓并行通信,是在一些联络信号的控制下,一次将8位,16位或者32位数据同时进行传送的通信方式。
在并行通信中,传输线数量没有限制,除了数据之外还应设置通信联络控制线。
这种通信方式的优点似乎通信速率高,适用于高速的通信场合,但缺点明显,首先随着通信联络控制线数量的增加,通信的成本越来越高;其次随着通信距离的增加,收到通信联络控制线间及外界的电磁干扰趋势严重,通信质量明显下降。
串行通信指数据是一位一位按顺序传送的通信方式,它的突出优点是使用线路少,只需一对传输线,避免了多条线路特性的不一致,简单实用,这样就大大降低了传送成本,特别适用于远距离通信,因此在工业应用中绝大多数使用串行通讯。
串行通信的基本接口方式分为RS-232和RS-485两种标准。
RS-232为全双工工作模式,其信号准位是参考地线而得,分别作为数据的传送和接收,实际应用中其传输距离可以达到15米,只具有一对一通讯。
而RS-485却能解决长距离的串行通讯,解决了RS-232协议传输距离太近(15m)的缺陷。
3.2串行通信介绍
3.2.1串行传送方式
串行通信的过程是将通信双方传输的数据序列变成电信号,在选定的通信线路上完成传递。
通常,将通信传输方式分为信号传输方式和线路传输方式两部分。
信号传输方式是指按信号鸳原样传输的基波传输或是用原信号调制成高频载波的载波传输。
近距离传输时,广泛使用的是按信号原样传输的基波传输方式,如RS-232,RS-485等通信方式,远距离传输时,通常使用Modem。
线路传输方式,按数据流的方向及对线路的使用方式可分为如下几种基本传输方式:
单工传输方式,在传输线路上,数据只能按一个固定的方向,且是交互式的。
有的系统是单工传输,但可以利用另一线路将接受方的监视信号返回到发送方,通常用于差错检测。
这种单向连接的用途较窄;半双工方式,当使用同一根传输线既作为输入有作为输出时,虽然数据可以在两个方向上传输,但通信双方不能同时收发数据;全双工传输方式,当数据的发送和接受分别由两根不同的传输线传输时,通信双方都能够在同一时刻进行发送和接受操作,即相当于两个方向相反的单工传输方式组合在一起,在全双工传输方式下,通信的每一端都设置了发送器和接收器,因此能控制信息在两个方向同时传送。
由于全双工方式不需要进行方向的切换,没有切换操作所产生的时间延迟,所以特别适用于那些不能有时间延迟的交互应用系统。
多工传输方式,使用复用技术,将一个信道划分位若干个频带或时间片,从而使多线路信号同时共享信道,使用复用器和集中器可降低成本,提高通信网的传输效率。
3.2.2串行通信方式
串行通信有两种基本的通信方式:
异步通信和同步通信,在异步通信中,数据是一帧一帧(包括一个字符代码或——字节数据)传送的。
同步通信中,在数据开始传送前用同步字符来指示(常约定1~2个),并由时钟来实现发送端和接收端同步,即检测到规定的同步字符后,按照连续按顺序传送数据,直到通信告一段落。
由于在一条传输线上既传输数据信息,又传输控制联络信息,所以需要一系列的约定,从而识别一条线上传输的信息流中,哪一部分是数据信号,哪一部分是联络信号。
由于串行通信中信息逻辑定义与TTL不兼容,故需要逻辑电平转换,以提高信息传输的可靠性。
为了降低通信线路的成本和简化通信设备,可用现存信道配以适当的通信接口,在任意两点之间实现串行通信。
3.2.3通信协议介绍
1.同步和异步通信方式
串行通信有两种最基本的通信方式:
同步串行通信方式和异步串行通信方式。
同步串行通信方式是指在相同的数据传送速率下,发送端和接受端的通信频率保持严格同步。
由于不需要使用起始位和停止位,可以提高数据的传输速率,但发送器和接受器的成本较高。
异步串行通信是指发送端和接受端在相同的波特率下不需要严格地同步,允许有相对的时间时延,即收、发两端的频率偏差在10%以内,就能保证正确实现通信。
异步通信在不发送数据时,数据信号线上总是呈现高电平状态,称为空闲状态(又称MARK状态)。
当有数据发送时,信号线变成低电平,并持续一位的时间,用于表示发送字符的开始,该位称为起始位,也称SPACE状态。
起始位之后,在信号线上依次出现待发送的每一位字符数据,并且按照先低位后高位的顺序逐位发送。
采用不同的字符编码方案,待发送的每个字符的位数不同,在5、6、7或8位之间选择。
数据位的后面可以加上一位奇偶校验位,也可以不加,由编程指定。
最后传送的是停止位,一般选择1位、1.5位或2位。
2.数据传送方式
①单工方式。
单工方式采用一根数据传输线,只允许数据按照固定的方向传送。
图8(a)中A只能作为发送器,B只能作为接收器,数据只能从A传送到B,不能从B传送到A。
②半双工方式。
半双工方式采用一根数据传输线,允许数据分时地在两个方向传送,但不能同时双向传送。
图8(b)中在某一时刻,A为发送器,B为接收器,数据从A传送到B;而在另一个时刻,A可以作为接收器,B作为发送器,数据从B传送到A。
③全双工方式。
全双工方式采用两根数据传输线,允许数据同时进行双向传送。
图8(c)中A和B具有独立的发送器和接收器,在同一时刻,既允许A向B发送数据,又允许B向A发送数据。
3.波特率
波特率是指每秒内传送二进制数据的位数,以b/s和bps(位/秒)为单位。
它是衡量串行数据传送速度快慢的重要指标和参数。
计算机通信中常用的波特率是:
110,300,600,1200,2400,4800,9600,19200bps。
4.串行通信的检错和纠错
在串行通信过程中存在不同程度的噪声干扰,这些干扰有时会导致在传输过程中出现差错。
因此在串行通信中对数据进行校验是非常重要的,也是衡量通信系统质量的重要指标。
检错,就是如何发现数据传输过程中出现的错误,而纠错就是在发现错误后,如何采取措施纠正错误。
1单工方式
误码率是指数据经传输后发生错误的位数与总传输位数之比。
在计算机通信中,一般要求误码率达到10-6数量级。
误码率与通信过程中的线路质量、干扰、波特率等因素有关。
②奇偶校验
奇偶校验是常用的一种检错方式。
奇偶校验就是在发送数据位最后一位添加一位奇偶校验位(0或1),以保证数据位和奇偶校验位中1的总和为奇数或偶数。
若采用偶校验,则应保证1的总数为偶数;若采用奇校验,则应保证1的总和为奇数。
在接受数据时,CPU应检测数据位和奇偶校验位中1的总数是否符合奇偶校验规则,如果出现误码,则应转去执行相应的错误处理服务程序,进行后续纠错。
③纠错
在基本通信规程中一般采用奇偶校验或方阵码检错,以重发方式进行纠错。
在高级通信中一般采用循环冗余码(CRC)检错,以自动纠错方式来纠错。
3.2.4RS-485标准
RS-485标准是一种平衡传输方式的串行接口标准,允许在电路中有多个收发器组合单元。
有多点、双向通信能力,通常在要求通信距离为几十米至上千米时,广泛采用RS-485收发器。
RS-485收发器采用平衡发送和差分接收,即在发送端,驱动器将TTL电平信号转换成差分信号输出;在接收端,接收器将差分信号变成TTL电平,因此具有抑制共模干扰的能力,加上接收器具有高的灵敏度,能检测低达200mV的电压,故数据传输可达千米以外。
RS-485都采用平衡传输方式、都需要在传输线上接终接电阻等。
可以采用二线与四线方式,二线制可实现真正的多点双向通信,采用四线连接时,能实现点对多的通信,即只能有一个主(Master)设备,其余为从设备,无论四线还是二线连接方式总线上可连接多达32个设备,SIPEX公司新推出的SP485R最多可支持400个节点。
RS-485共模输出电压在-7V至+12V之间,接收器最小输入阻抗为12KΩ,它的最大传输速率为10Mb/s,当波特率为1200bps时,最大传输距离理论上可达15千米。
平衡双绞线的长度与传输速率成反比,在100kb/s速率以下,才可能使用规定最长的电缆长度。
RS-485需要2个终接电阻,接在传输总线的两端,其阻值要求等于传输电缆的特性阻抗。
在矩距离传输时可不需终接电阻,即一般在300米以下不需终接电阻。
RS485只需要DATA+(D+)、DATA-(D-)两根线,它为半双工结构,在同一时刻只能接收或发送数据,总线上也可以挂接多台设备,用于组网,实现点到多点及多点到多点的通信(多点到多点是指总线上所接的所有设备及上位机任意两台之间均能通信)。
连接在RS485总线上的设备也要求具有相同的通信协议,且地址不能相同。
在不通信时,所有的设备处于接收状态,当需要发送数据时,串口才翻转为发送状态,以避免冲突。
为了抑制干扰,RS485总线常在最后一台设备之后接入一个120欧的电阻。
3.3PELCO-D协议
3.3.1PELCO协议应用
目前市场在监控行业所采用的控制协议很多种,例如RV800(科立解码器通讯协议),CBC(日本CBC高速球通讯协议),CS850A(松下CS850A高速球通讯协议),PIH(利凌PIH717解码器通讯协议),MG-CS160(明景B01通讯协议)等。
由于美国PELCO公司在监控行业占有重要位置,其推出的PELCO协议是当前比较通用的云台控制协议,是最为典型的云台控制协议。
PELCO协议主要分为两种,PELCO-D协议和PELCO-P协议,PELCO-P协议一般采用RS-485接口进行传输,波特率一般在1200—9600bps之间,1位起始位,1位停止位,8位数据位,无校验位。
PELCO-D协议一般用于矩阵和其他设备之间的通信,同样采用RS-485接口进行传输,波特率可设置为1200、2400、4800、9600,数据类型为十六进制。
3.3.2PELCO-D协议内容
PELCO-D协议采用一个数据包的格式传输,所有数据均采用十六进制,如表3.1所示,一个命令数据包由7个字节组成。
表3.1PELCO-D协议格式
PELCO-D协议格式
Word1
Word2
Word3
Word4
Word5
Wor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 基于 VC 镜头 控制 操作台 软件设计
![提示](https://static.bdocx.com/images/bang_tan.gif)