![毕业设计_基于VC的云台镜头控制操作台软件设计说明_第1页](http://file4.renrendoc.com/view/4c9080b22a519e1140977e6eaead5f3e/4c9080b22a519e1140977e6eaead5f3e1.gif)
![毕业设计_基于VC的云台镜头控制操作台软件设计说明_第2页](http://file4.renrendoc.com/view/4c9080b22a519e1140977e6eaead5f3e/4c9080b22a519e1140977e6eaead5f3e2.gif)
![毕业设计_基于VC的云台镜头控制操作台软件设计说明_第3页](http://file4.renrendoc.com/view/4c9080b22a519e1140977e6eaead5f3e/4c9080b22a519e1140977e6eaead5f3e3.gif)
![毕业设计_基于VC的云台镜头控制操作台软件设计说明_第4页](http://file4.renrendoc.com/view/4c9080b22a519e1140977e6eaead5f3e/4c9080b22a519e1140977e6eaead5f3e4.gif)
![毕业设计_基于VC的云台镜头控制操作台软件设计说明_第5页](http://file4.renrendoc.com/view/4c9080b22a519e1140977e6eaead5f3e/4c9080b22a519e1140977e6eaead5f3e5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 . PAGE52 / NUMPAGES57基于VC的云台镜头控制操作台软件设计摘要随着多媒体技术和网络通信技术的迅速发展,数字视频监控技术在多种领域得到越来越广泛的应用。而在在数字视频监控系统的设计与实现中,对云台的方位控制是系统执行的重要任务之一.云台是一种用于监控时调整摄像头位置的设备,云台镜头的控制是整个闭路监视系统一个重要组成部分。本文设计了一种基于VC的云台镜头控制操作台软件,用以监控设备中能对云台起控制作用的软件。该控制软件能控制云台的垂直运动和水平运动,以与摄像机的聚焦/散焦,变倍近/远、光圈变大/小等。论文首先介绍了课题的应用概况,分析了监控系统和云台软件的功能概况,并针对这
2、些功能提出了设计的实现方案,对云台中的通讯协议PELCO-D协议做了详细介绍。其次论文详细介绍了本设计软件开发的全过程,给出了主程序、数据发送程序、运动控制程序和雨刷镜头控制程序的软件流程图。通过调试,起到了很好的控制效果关键字:云台;监控系统;VC;操作台The PTZ camera control based on VC console software designAbstractWith the multimedia technology and the rapid development of network communication technology, digital vid
3、eo surveillance technology in many fields more and more widely. In the digital video surveillance system design and implementation, on the head of the orientation control is the system to perform important tasks. PTZ is a camera for monitoring, adjust the location of equipment, PTZ camera control is
4、 the closed-circuit surveillance system is an important part. This paper presents a PTZ camera control based on VCs console software for monitoring devices can head a controlling software. The control software can control the head of the vertical movement and horizontal movement, and the cameras foc
5、us / defocus, zoom Near / Far, aperture bigger / smaller, etc. Paper first introduces the topic of application profiles, analysis of the monitoring system and PTZ functions of the software profile, and these features make the design for the realization of the program, on the head of the communicatio
6、n protocol PELCO-D protocol introduced in detail. Second, this thesis details the entire process of designing software development, given the main program, the data send process, motion control programs and wipers lens control program flow chart. Through these tests played a good control effect.Key
7、Words:Pan/tilt/zoom,;monitoring system;VC;Consoles目录摘要 I TOC o 1-3 h z u HYPERLINK l _Toc265058512Abstract PAGEREF _Toc265058512 h IIHYPERLINK l _Toc2650585131 绪论 PAGEREF _Toc265058513 h 1HYPERLINK l _Toc2650585141.1 云控制应台用概况 PAGEREF _Toc265058514 h 1HYPERLINK l _Toc2650585151.1.1 数字监控系统概述 PAGEREF _
8、Toc265058515 h 1HYPERLINK l _Toc2650585161.1.2 监控系统的组成 PAGEREF _Toc265058516 h 1HYPERLINK l _Toc2650585171.2 云台控制软件的发展概况 PAGEREF _Toc265058517 h 2HYPERLINK l _Toc2650585181.2.1 云台控制软件简介 PAGEREF _Toc265058518 h 2HYPERLINK l _Toc2650585191.2.2 云台控制软件的原理 PAGEREF _Toc265058519 h 2HYPERLINK l _Toc2650585
9、201.2.3 云台控制软件的发展现状 PAGEREF _Toc265058520 h 2HYPERLINK l _Toc2650585211.3 工作容和章节安排 PAGEREF _Toc265058521 h 3HYPERLINK l _Toc2650585222 软件分析和方案设计 PAGEREF _Toc265058522 h 5HYPERLINK l _Toc2650585232.1 软件功能分析 PAGEREF _Toc265058523 h 5HYPERLINK l _Toc2650585242.2 软件设计方案 PAGEREF _Toc265058524 h 6HYPERLIN
10、K l _Toc2650585252.2.1 设置模块 PAGEREF _Toc265058525 h 6HYPERLINK l _Toc2650585262.2.2 按钮模块 PAGEREF _Toc265058526 h 7HYPERLINK l _Toc2650585272.2.3 通讯模块 PAGEREF _Toc265058527 h 7HYPERLINK l _Toc2650585283 串行通信的实现 PAGEREF _Toc265058528 h 9HYPERLINK l _Toc2650585293.1 串行通信概述 PAGEREF _Toc265058529 h 9HYPE
11、RLINK l _Toc2650585303.2 串行通信介绍 PAGEREF _Toc265058530 h 9HYPERLINK l _Toc2650585313.2.1 串行传送方式 PAGEREF _Toc265058531 h 9HYPERLINK l _Toc2650585323.2.2 串行通信方式 PAGEREF _Toc265058532 h 10HYPERLINK l _Toc2650585333.2.3 通信协议介绍 PAGEREF _Toc265058533 h 11HYPERLINK l _Toc2650585343.2.4 RS-485标准 PAGEREF _Toc
12、265058534 h 13HYPERLINK l _Toc2650585353.3 PELCO-D协议 PAGEREF _Toc265058535 h 14HYPERLINK l _Toc2650585363.3.1 PELCO协议应用 PAGEREF _Toc265058536 h 14HYPERLINK l _Toc2650585373.3.2 PELCO-D协议容 PAGEREF _Toc265058537 h 15HYPERLINK l _Toc2650585384 软件设计与实现 PAGEREF _Toc265058538 h 19HYPERLINK l _Toc265058539
13、4.1 控制系统软件概述 PAGEREF _Toc265058539 h 19HYPERLINK l _Toc2650585404.2 开发工具和软件编制环境简介 PAGEREF _Toc265058540 h 19HYPERLINK l _Toc2650585414.3 软件程序流程图 PAGEREF _Toc265058541 h 21HYPERLINK l _Toc2650585424.3.1 主程序软件设计 PAGEREF _Toc265058542 h 21HYPERLINK l _Toc2650585434.3.2 运动控制流程 PAGEREF _Toc265058543 h 21
14、HYPERLINK l _Toc2650585444.3.3 雨刷控制流程 PAGEREF _Toc265058544 h 22HYPERLINK l _Toc2650585454.3.4 数据发送程序 PAGEREF _Toc265058545 h 23HYPERLINK l _Toc2650585464.4 软件程序 PAGEREF _Toc265058546 h 24HYPERLINK l _Toc2650585474.4.1 程序功能 PAGEREF _Toc265058547 h 24HYPERLINK l _Toc2650585484.4.2 界面展现 PAGEREF _Toc26
15、5058548 h 25HYPERLINK l _Toc2650585494.4.3 变量/函数声明 PAGEREF _Toc265058549 h 26HYPERLINK l _Toc2650585504.4.4 初始化操作 PAGEREF _Toc265058550 h 26HYPERLINK l _Toc2650585514.4.5 按钮功能实现 PAGEREF _Toc265058551 h 27HYPERLINK l _Toc2650585524.4.6 数据发送 PAGEREF _Toc265058552 h 27HYPERLINK l _Toc2650585535 毕业设计总结
16、PAGEREF _Toc265058553 h 28HYPERLINK l _Toc2650585545.1 论文总结 PAGEREF _Toc265058554 h 28HYPERLINK l _Toc2650585555.2 设计中的经验总结 PAGEREF _Toc265058555 h 28HYPERLINK l _Toc2650585565.3 个人经验总结 PAGEREF _Toc265058556 h 29HYPERLINK l _Toc2650585576 致 PAGEREF _Toc265058557 h 30HYPERLINK l _Toc2650585587 参考文献 P
17、AGEREF _Toc265058558 h 31HYPERLINK l _Toc2650585598 附录 PAGEREF _Toc265058559 h 33HYPERLINK l _Toc2650585609 外文资料翻译与原文 PAGEREF _Toc265058560 h 33绪论云控制应台用概况数字监控系统概述数字监控系统是指通过软硬件将监控头采集到的图像处理成数字信号,传送到电脑进行处理。随着多媒体技术和网络通信技术的迅速发展,数字视频监控技术在电力系统、电信机房、工厂、城市交通、水利系统、小区治安等领域得到越来越广泛的应用。数字监控系统可以很容易地实现一对多的控制,同时可以使用
18、最少的连线,这节约了大量的成本。伴随着互联网和各种无线技术的发展,实现远距离的控制变得十分容易。监控系统的组成数字监控系统十分复杂,但基本组成很清晰,包括本地监控、监控设备和远端监控。监控设备是整个系统的数据来源,一般由摄像机、解码器、报警器和云台等组成,其中云台是整个监视系统一个重要组成部分:云台是一种用于监控时调整摄像头位置的设备,它接收来自系统控制台发出发的控制命令,解释并控制云台进行上、下、左、右各方向的行进动作并对镜头进行变焦(ZOOM)、聚焦(FOUCS)、光圈(iris)的控制。控制系统的要动作运行准确、可靠。由于云台运行动作的可控性与云台的多样性,该控制系统设计的好坏直接影响到
19、整个监视系统的可靠性与可操作性等关键指标。本地监控通常设置在监控现场附近,对从现场传回的多路视频信号通常通过视频矩阵进行切换,然后连入本地计算机进行显示。随着技术的发展,远程监控应用会越来越广泛,这些远程监控计算机通过以太网、Intent或其他无线网方式与本地计算机相连接,从而可以实现远程对监控现场的监视。云台控制软件的发展概况云台控制软件简介 云台控制软件是在计算机上通过某些编程工具,制作的一种应用程序,软件能通过计算机串口输出符合云台控制协议的控制命令。软件种类繁多,对不同的云台有不同的控制软件 ,它们应用不同的通信协议,有不同的功能效果。但所有的控制软件都存在一些基本的控制功能,比如能控
20、制云台进行上下左右运动,控制镜头进行变焦、聚焦、光圈等功能。 优秀的控制软件还应具有可扩展行,可根据要求增加一些高级功能,如预置位,雨刷等。云台控制软件的原理软件主要由数据、系统程序和应用程序3部分组成 ,系统通过基于计算机图像技术的算法来判断实时性图像清晰度,从而使系统具备了自动调焦的能力,可以实现被视物体的自动选择。监视系统的所有系统信息都通过数据来描述,化分为半固定数据、动态数据两种。计算机与解码器阵列之间的数目、解码器的编号等参数均属于半固定数据,以拨码开关设置值、程序代码等形式存在。云台的线扫描、面扫描、顺序切换、定时切换等中间运行参数都是动态数据。系统程序包括导对云台、镜头的参数进
21、行设置,对串行通信初始化,对云台的运动、雨刷控制等。应用程序是直接面向用户并为用户服务的程序,包括将摄像机的视频信号的捕获,视频图像处理和显示。云台控制软件的发展现状早期的云台控制器多采用模拟量信号通讯,控制信号也多为模拟量,这种类型控制器无需考虑信号之间的通讯联系问题,控制软件也就相对简单,它采用模拟量调节控制云台的上下左右动作,以与镜头的参数控制都是采用模拟量调节。由于现场的监控通常比较复杂,常常是多台云台同时工作,传统的控制方式弊端尽显,随着数字通讯技术的发展,对云台的控制由传统的模拟量信号,转变为数字量控制,这对控制软件的制作要求也有所提高,软件必须能实现控制操作台通过简单的串行连接来
22、控制多台云台完成更加丰富的动作,这样可以极提高系统的通讯信息集成化、综合自动化、降低成本等,在云台与控制器之间的通讯也就渐渐形成一种数字协议。但由于受地区、行业的限制、公司企集团的利益驱使,目前控制器与控制操作台的通讯协议没有形成统一的国际标准,但仍然陆续出现了一些有影响的云台通讯协议,并具有一定的应用围和市场,表现为市场流行多种控制协议,也就产生了多种协议类型的云台控制器。美国Pelco公司在监控行业具有领先地位,其公司制定的Pelco-D协议是目前市场上比较通用的协议,此词的云台控制软件就采用了Pelco-D协议。工作容和章节安排本论文的主要容是分析、设计和实现基于VC的云台镜头控制操作台
23、软件开发。论文共五章,结构安排如下:第一章是绪论。主要介绍了云台控制器的应用背景,控制软件的介绍、原理和发展概况。第二章是软件分析和方案设计。对软件所具备的功能进行了分析,同时根据不同功能的实现,提出了相应的设计方案。第三章是串行通信的实现。对软件与云台的通信方式做了介绍,并对本系统所采用通讯传输协议PELCO-D协议做了详细解释说明。 第四章是软件的设计和实现。简要描述了软件开发工具、开发环境,并给出了相关程序流程图,包括运动控制和雨刷镜头控制的流程图。同时对软件程序中的程序功能、界面展示、函数变量等做了详细的分析、设计、编写。第五章是总结。主要是对在开发过程中遇到问题作总结,以与自己对这一
24、课题的一些认识。软件分析和方案设计软件功能分析 此云台软件主要设计了改变串口设置,包括修改协议、设定波特率、设定地址等功能;对云台运动的控制,包括上下左右等八个方向的运动和自动巡控功能;对镜头进行控制,包括变焦、聚焦、打开或关闭光圈等功能;其他一些高级控制,如预置、雨刷等1.串口设置:多种协议、波特率设置、地址。软件和云台间通过协议来彼此传输数据,即操作软件产生数据包,通过协议发给云台,使其完成对应动作;每个云台都有个地址码,这个地址码的编码就是协议地址,每个地址码的接口单位时间传输的数据(包括起始位、数据位、校验位、停止位)的位数,叫做云台的协议地址波特率,单位为bps,即位/秒,这个接口是
25、串口。2.云台控制按键:上下左右、左上、左下、右上、右下、自动巡控。通过操作这些按键,生成对应数据包传到云台,云台接收后进行对应的功能动作,如上下左右转动以采集所需方向的图像。3.对镜头控制按键:变焦(+ -)、聚焦(+ -)、光圈开关。通过这三种功能按键对云台进行控制,增加图像的清晰度。变倍:通过部的复杂透镜组来实现放大倍率,移动镜头部的镜片,改变它们之间的相对位置,在一定围改变镜头的焦距长度和视角。焦距:是光学系统中衡量光的聚集或发散的度量方式,是指透镜中心或其第二主平面到图像聚集点处的距离,单位一般为毫米或英寸。光圈:用来控制光线透过镜头,进入机身感光面的光量的装置,位于摄像机镜头部,可
26、用来控制通过镜头的光线的多少。4.高级控制按键:预置、调用、雨刷。将某个位置设定为预置位置,之后可以通过调用自动回复到预置的位置,可设多个;通过雨刷按键控制雨刷装置运动擦拭镜头表面,保障观察效果,此装置操作便捷,大大降低罩面清洁和维护面积。云台的镜头镜片如果沾有水或者灰尘,会影响视觉,就要装配雨刷,雨刷的工作方式类似汽车的雨刷,在镜片上来回扫动,去除镜片上的杂物软件设计方案实现以上所说功能,具体需要三大模块,分别是分别是设置模块,按钮模块,通讯模块。设置模块设置模块的功能主要分为三大块,通讯地址的选择,通讯频率波特率设定,通讯协议选择。通讯地址选择是为了选择云台控制操作台控制目标。地址码的作用
27、是用来区分每一个摄像机的,比如你的监控系统中有5个云台,这样你为了在后端的操作系统中操作每个云台,你就得对每个云台进行编号,这就是云台的地址码.云台的地址码是有一定的规律可询的,以PELCO-D为例,走的就是标准的二进制,具体编号有公式决定.当设定了云台控制操作台上的地址选择后,操作台就可根据编码,选择要控制的云台,从而实现一台云台操作台可以操作多个云台,而控制互不干扰的情况.频率波特率设定是为了实现云台于云台控制操作台的控制同步。模拟线路信号的速率,也称调制速率,以波形每秒的振荡数来衡量。如果数据不压缩,波特率等于每秒钟传输的数据位数,如果数据进行了压缩,那么每秒钟传输的数据位数通常大于调制
28、速率,使得传输数据偶尔产生错误。 波特率是指数据信号对载波的调制速率,它用单位时间载波调制状态改变的次数来表示,其单位是波特(Baud)。波特率与比特率的关系是比特率=波特率X单个调制状态对应的二进制位数。 在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。波特率是传输通道频宽的指标。 通讯协议选择是为了让云台正确解码云台操作控制台的控制命令,从而让云台实现操作者的控制预期。按钮模块按钮模块作为云台控制操作台中的重要控制部分,按其功能分,主要分为三大块,分别是:运动控制,摄像机镜头控制,以与高级功能控制。以运动控制为例,当按下控制方向的按钮
29、时,即触发了鼠标触发事件,调用相关函数,产生7个字节的数据包,通过串口传输数据到232/485转换器,将数据转换为485信号输送给云台,从而实现控制云台运动的功能。通讯模块通讯模块是本设计的重要部分,所有控制命令都是通过通讯模块传输给被控制的云台的。这部分会在下一章节重点介绍。软件的核心。实现各种按钮触发事件,并将对应控制信号输出到云台。镜头控制按钮区,用于控制云台镜头的动作。添加高级功能按钮,完善软件功能基本功能控制按钮,控制云台上下左右转动等。设置模块,包括设置波特率、地址位等通过通讯协议向云台发送信号。图2.1 云台控制软件模块图串行通信的实现串行通信概述随着计算机技术的发展,通讯传输在
30、工业自动化控制领域得到越来越厂泛的应用。通常在实际工作中,两个设备之间的信息交换被称为通信,通信的方式有两种,并行通信和串行通信。所谓并行通信,是在一些联络信号的控制下,一次将8位,16位或者32位数据同时进行传送的通信方式。在并行通信中,传输线数量没有限制,除了数据之外还应设置通信联络控制线。这种通信方式的优点似乎通信速率高,适用于高速的通信场合,但缺点明显,首先随着通信联络控制线数量的增加,通信的成本越来越高;其次随着通信距离的增加,收到通信联络控制线间与外界的电磁干扰趋势严重,通信质量明显下降。串行通信指数据是一位一位按顺序传送的通信方式,它的突出优点是使用线路少,只需一对传输线,避免了
31、多条线路特性的不一致,简单实用,这样就大大降低了传送成本,特别适用于远距离通信,因此在工业应用中绝大多数使用串行通讯。串行通信的基本接口方式分为RS-232和RS-485两种标准。RS-232为全双工工作模式,其信号准位是参考地线而得,分别作为数据的传送和接收,实际应用中其传输距离可以达到15米,只具有一对一通讯。而RS-485却能解决长距离的串行通讯,解决了RS-232协议传输距离太近(15m)的缺陷。串行通信介绍串行传送方式串行通信的过程是将通信双方传输的数据序列变成电信号,在选定的通信线路上完成传递。通常,将通信传输方式分为信号传输方式和线路传输方式两部分。信号传输方式是指按信号鸳原样传
32、输的基波传输或是用原信号调制成高频载波的载波传输。近距离传输时,广泛使用的是按信号原样传输的基波传输方式,如RS-232 ,RS-485等通信方式,远距离传输时,通常使用Modem。线路传输方式,按数据流的方向与对线路的使用方式可分为如下几种基本传输方式:单工传输方式,在传输线路上,数据只能按一个固定的方向,且是交互式的。有的系统是单工传输,但可以利用另一线路将接受方的监视信号返回到发送方,通常用于差错检测。这种单向连接的用途较窄;半双工方式,当使用同一根传输线既作为输入有作为输出时,虽然数据可以在两个方向上传输,但通信双方不能同时收发数据;全双工传输方式,当数据的发送和接受分别由两根不同的传
33、输线传输时,通信双方都能够在同一时刻进行发送和接受操作,即相当于两个方向相反的单工传输方式组合在一起,在全双工传输方式下,通信的每一端都设置了发送器和接收器,因此能控制信息在两个方向同时传送。由于全双工方式不需要进行方向的切换,没有切换操作所产生的时间延迟,所以特别适用于那些不能有时间延迟的交互应用系统。多工传输方式,使用复用技术,将一个信道划分位若干个频带或时间片,从而使多线路信号同时共享信道,使用复用器和集中器可降低成本,提高通信网的传输效率。串行通信方式串行通信有两种基本的通信方式:异步通信和同步通信,在异步通信中,数据是一帧一帧(包括一个字符代码或字节数据)传送的。同步通信中,在数据开
34、始传送前用同步字符来指示(常约定12个),并由时钟来实现发送端和接收端同步,即检测到规定的同步字符后,按照连续按顺序传送数据,直到通信告一段落。由于在一条传输线上既传输数据信息,又传输控制联络信息,所以需要一系列的约定,从而识别一条线上传输的信息流中,哪一部分是数据信号,哪一部分是联络信号。由于串行通信息逻辑定义与TTL不兼容,故需要逻辑电平转换,以提高信息传输的可靠性。为了降低通信线路的成本和简化通信设备,可用现存信道配以适当的通信接口,在任意两点之间实现串行通信。通信协议介绍1.同步和异步通信方式串行通信有两种最基本的通信方式:同步串行通信方式和异步串行通信方式。同步串行通信方式是指在一样
35、的数据传送速率下,发送端和接受端的通信频率保持严格同步。由于不需要使用起始位和停止位,可以提高数据的传输速率,但发送器和接受器的成本较高。异步串行通信是指发送端和接受端在一样的波特率下不需要严格地同步,允许有相对的时间时延,即收、发两端的频率偏差在10以,就能保证正确实现通信。异步通信在不发送数据时,数据信号线上总是呈现高电平状态,称为空闲状态(又称MARK状态)。当有数据发送时,信号线变成低电平,并持续一位的时间,用于表示发送字符的开始,该位称为起始位,也称SPACE状态。起始位之后,在信号线上依次出现待发送的每一位字符数据,并且按照先低位后高位的顺序逐位发送。采用不同的字符编码方案,待发送
36、的每个字符的位数不同,在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。全双工方式。全双工方式采用两根数据传输线,允
37、许数据同时进行双向传送。图8(c)中A和B具有独立的发送器和接收器,在同一时刻,既允许A向B发送数据,又允许B向A发送数据。3.波特率波特率是指每秒传送二进制数据的位数,以b/s和bps(位/秒)为单位。它是衡量串行数据传送速度快慢的重要指标和参数。计算机通信中常用的波特率是:110,300,600,1200,2400,4800,9600,19200bps。4.串行通信的检错和纠错在串行通信过程中存在不同程度的噪声干扰,这些干扰有时会导致在传输过程中出现差错。因此在串行通信中对数据进行校验是非常重要的,也是衡量通信系统质量的重要指标。检错,就是如何发现数据传输过程中出现的错误,而纠错就是在发现
38、错误后,如何采取措施纠正错误。单工方式误码率是指数据经传输后发生错误的位数与总传输位数之比。在计算机通信中,一般要求误码率达到10-6数量级。误码率与通信过程中的线路质量、干扰、波特率等因素有关。奇偶校验奇偶校验是常用的一种检错方式。奇偶校验就是在发送数据位最后一位添加一位奇偶校验位(0或1),以保证数据位和奇偶校验位中1的总和为奇数或偶数。若采用偶校验,则应保证1的总数为偶数;若采用奇校验,则应保证1的总和为奇数。在接受数据时,CPU应检测数据位和奇偶校验位中1的总数是否符合奇偶校验规则,如果出现误码,则应转去执行相应的错误处理服务程序,进行后续纠错。纠错在基本通信规程中一般采用奇偶校验或方
39、阵码检错,以重发方式进行纠错。在高级通信中一般采用循环冗余码(CRC)检错,以自动纠错方式来纠错。RS-485标准RS-485标准是一种平衡传输方式的串行接口标准,允许在电路中有多个收发器组合单元。有多点、双向通信能力,通常在要求通信距离为几十米至上千米时,广泛采用RS-485收发器。RS-485收发器采用平衡发送和差分接收,即在发送端,驱动器将TTL电平信号转换成差分信号输出;在接收端,接收器将差分信号变成TTL电平,因此具有抑制共模干扰的能力,加上接收器具有高的灵敏度,能检测低达200mV的电压,故数据传输可达千米以外。RS-485都采用平衡传输方式、都需要在传输线上接终接电阻等。可以采用
40、二线与四线方式,二线制可实现真正的多点双向通信,采用四线连接时,能实现点对多的通信,即只能有一个主(Master)设备,其余为从设备,无论四线还是二线连接方式总线上可连接多达32个设备,SIPEX公司新推出的SP485R最多可支持400个节点。RS-485共模输出电压在-7V至+12V之间,接收器最小输入阻抗为12K,它的最大传输速率为10Mb/s,当波特率为1200bps时,最大传输距离理论上可达15千米。平衡双绞线的长度与传输速率成反比,在100kb/s速率以下,才可能使用规定最长的电缆长度。RS-485需要2个终接电阻,接在传输总线的两端,其阻值要求等于传输电缆的特性阻抗。在矩距离传输时
41、可不需终接电阻,即一般在300米以下不需终接电阻。RS485只需要DATA+(D+)、DATA-(D-)两根线,它为半双工结构,在同一时刻只能接收或发送数据,总线上也可以挂接多台设备,用于组网,实现点到多点与多点到多点的通信(多点到多点是指总线上所接的所有设备与上位机任意两台之间均能通信)。连接在RS485总线上的设备也要求具有一样的通信协议,且地址不能一样。在不通信时,所有的设备处于接收状态,当需要发送数据时,串口才翻转为发送状态,以避免冲突。为了抑制干扰,RS485总线常在最后一台设备之后接入一个120欧的电阻。PELCO-D协议PELCO协议应用目前市场在监控行业所采用的控制协议很多种,
42、例如RV800(科立解码器通讯协议),CBC(日本CBC高速球通讯协议),CS850A(松下CS850A高速球通讯协议),PIH(利凌PIH717解码器通讯协议),MG-CS160(明景B01通讯协议)等。由于美国PELCO公司在监控行业占有重要位置,其推出的PELCO协议是当前比较通用的云台控制协议,是最为典型的云台控制协议。PELCO协议主要分为两种,PELCO-D协议和PELCO-P协议,PELCO-P协议一般采用RS-485接口进行传输,波特率一般在12009600bps之间,1位起始位,1位停止位,8位数据位,无校验位。PELCO-D协议一般用于矩阵和其他设备之间的通信,同样采用RS
43、-485接口进行传输,波特率可设置为1200、2400、4800、9600, 数据类型为十六进制。PELCO-D协议容PELCO-D协议采用一个数据包的格式传输,所有数据均采用十六进制,如表3.1所示,一个命令数据包由7个字节组成。表3.1 PELCO-D 协议格式PELCO-D协议格式Word1Word2Word3Word4Word5Word6Word7Synch ByteAddressCommand1Command2Data1Data2Check SumWord1:Synchronization byte(起始符号),总是FF,符号字节用来检测所采用的收发方式正确与否,当接收方收到的数据包
44、中,其符号字节必须为FF,该命令代码数据包才有效,否则被视为无效的代码。Word2:地址字节,云台的地址必须跟它所收到的这个地址字节保持一致,否则,云台对该命令无效。表3.2 Command1,Command2对应的位格式Word3 Word4Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0Command1SenseReservedReservedAuto/Manual ScanCamera On/OffIris CloseIris OpenFocus NearCommand2Focus FarZoom WideZoom TeleDownUpLeftRightAlways 0W
45、ord3,Wrd4是两个命令字节,具体如下:在command1中,Sense位为1时,bit4、bit3为1,表示自动搜索并且摄像头打开。Sense位为0时,bit4、bit3为1,表示手动搜索并且摄像头关闭。Bit2为光圈小控制位,Bit1为光圈小控制位,Bit0为焦距近控制位。Command2字节中,Bit7为焦距远,Bit6为变倍大,Bit5为变倍小,Bit4、Bit3、Bit2、Bit1为上下左右控制位,最后一个Bit0位总是0,这两个字节中,所有控制位,置1为有效,置0为无效。Word5:水平方向速度(003F)。例:00表示速度为0,3F表示最高速度运行,20H表示1/2速度。Wo
46、rd6:垂直方向速度(003F),同Word5。Word7:和校验:Word7= Word 2+ Word 3+ Word 4+ Word 5+ Word 6。表3.3 部分高级组合命令部分高级组合命令CommandWord3Word4Word5Word6Set Preset设置预置位00030001 to 20Clear Preset清预置位00050001 to 20Go To Preset调用预置位00070001 to 20Go To Zero Pan00070022Flip(180about)00070021Set Auxiliary00090001 to 08Clear Auxil
47、iary000B0001 to 08Remote Reset000F0000Set Zone Start00110001 to 08表3.4 PELCO-D协议示例Message to sendMessageReceive 1,Camera onFF,01,88,00,00,00,89Receive 1,Camera offFF,01,08,00,00,00,09Receive 2,Left 1/2 speedFF,02,00,04,00,20,26Receive 2,stopFF,02,00,00,00,00,02Receive 10,Camera on, Focus far, Left,
48、turbo speedFF,0A,88,90,00,40,62图3.1 云台向右协议波形图如图3.1所示为用示波器抓拍下来的云台向右协议的一个波形图,其代码为 FF 00 00 02 200023。图中传输按照串行传输格式,每一个字节的传输都是一位起始位,8位数据位,一位停止位,低位在前高位在后,一共传送7个字节。软件设计与实现控制系统软件概述视频监控中对云台的控制可以分为两个时代:第一个控制时代,采用模拟量调节,云台的上下左右动作,以与镜头的三个参数控制都是采用模拟量调节。控制信号由一组控制线连接引出,这种控制方式极为不便,接线较多,各个信号之间易出错。第二个控制时代,采用数字量调节,云台的
49、所有动作,均可采用数字信号命令来控制,云台负责解码这个命令,进而完成相关的动作。由此产生了一些控制协议。 不同时代的控制系统产生出不同的控制软件。开发工具和软件编制环境简介开发本软件用的是集成开发工具Visual C+6.0。Visual C+是一个功能强大的可视化软件开发工具。自1993年Microsoft公司推出Visual C+1.0后,随着其新版本的不断问世,Visual C+已成为专业程序员进行软件开发的首选工具。虽然微软公司推出了Visual C+.NET(Visual C+7.0),但它的应用的很大的局限性,只适用于Windows 2000,Windows XP和Windows
50、NT4.0。所以实际中,更多的是以Visual C+6.0为平台。Visual C+6.0不仅是一个C+编译器,而且是一个基于Windows操作系统的可视化集成开发环境(integrated development environment,IDE)。Visual C+6.0由许多组件组成,包括编辑器、调试器以与程序向导AppWizard、类向导Class Wizard等开发工具。 这些组件通过一个名为Developer Studio的组件集成为和谐的开发环境。在VC中,可以使用常规的调试命令,例如运行、暂停、复位、设置断点等对应用程序进行调试。MFC是Visual C+的灵魂,是C+环境下编写
51、应用程序的一个框架和引擎,是挂在VC之上的一个辅助软件开发包,它是微软提供的Windows下应用程序的编程语言接口,是一种软件编程的规,但不是一种程序开发语言本身,可以允许用户使用各种各样的第三方的编程语言来进行对Windows下应用程序的开发,使这些被开发出来的应用程序能在Windows下运行。MFC不只是一个功能单纯的界面开发系统,它提供的类绝大部分用来进行界面开发,关联一个窗口的动作,但它提供的类中有好多类不与一个窗口关联,即类的作用不是一个界面类,不实现对一个窗口对象的控制,而是一些在Windows中实现部处理的类。由于Visual C+的这些优势,所以此次选用了此开发工具。下图为Vi
52、sual C+6.0编写程序语言的一个界面截图:图4.1软件Visual C+6.0的程序开发界面软件程序流程图主程序软件设计根据所设计要求,编制相应的软件,完成相应的功能,软件部分共分三大块,包括主程序软件设计,按键触发,数据发送。如图4.2为主程序流程图,先初始化,然后设置I/O端口、波特率和地址位等参数,等待按键触发,按键触发又可分为运动控制按键触发和雨刷控制按键触发。如有按键输入,则进入按键触发流程。 开始程序初始化地址波特率设置按键触发 图4.2 主程序软件流程图运动控制流程流程图如图4.3。运动按键按下进入数据发送流程调用触发按键对应的函数变量赋值为0后进入数据发送流程运动按键弹起
53、进入数据发送流程图4.3运动流程图雨刷控制流程图4.4为雨刷控制程序流程图,当按下雨刷控制按钮后,系统首先检测当前雨刷工作状态,也就是对应的雨刷控制变量值,若值为工作状态,则赋零后发送协议。反之亦然。这样实现了按一下开启雨刷,再按一下停止雨刷的功能。雨刷控制变量赋0雨刷控制变量赋1数据发送流程YN雨刷控制返回雨刷是否正在工作图4.4雨刷镜头控制流程图数据发送程序图4.5为数据发送程序流程图。数据发送程序主要是为了把按键确定的控制命令发送给云台,达到控制云台的作用。根据PELCO-D协议,每条控制字共7字节。发送Word19发送Word2发送Word3发送Word4发送Word5发送Word6发
54、送Word7数据发送程序9返回图4.5数据发送程序流程图软件程序程序功能改程序可以配置使用的串口与参数,通过串口通信,实现对各个云台与镜头的控制。1.串口参数设置可以设置使用的串口,从COM1COM6。可以设置波特率,包括19200bit/s、1200bit/s、2400bit/s、4800bit/s与9600bit/s这4种。2.云台控制包括上、下、左、右、左上、左下、右上、右下、自动的启动控制和停止控制,上下左右的微调控制。3.镜头控制包括增大光调、减小光调、增加焦距、减小焦距的启动控制与停止控制。4.其他控制选择设备,打开和关闭雨刷,打开和关闭射灯等操作。界面展现 下图是该程序的界面样式
55、和端口设置界面。图4.6程序主界面图4.7端口设置界面软件中包括组合列表框,用于选择波特率、串口号等;按钮,包括设置控制端口、退出系统等;通过MSCOMM控件实现串口通信。变量/函数声明在主对话框头文件MoniControlDlg.h中,类定义的public区声明包括MSComm控件对象、上下左右开关雨刷等按钮位置等成员变量,还有获取静态按钮未知数据、发送命令等成员函数。初始化操作初始化包括对成员变量的初始化与控件的二次创建等操作。在主对话框实现文件MoniCountrolDlg.cpp中加入ON_WM_CREATE消息的响应函数OnCreate。并在函数中加入用于创建myComm对象的代码,
56、即MSComm控件的实例。按钮功能实现普通按钮控件只能识别单击和双击事件,不能直接识别鼠标按下和鼠标弹起事件。而本程序要求按下按钮时执行启动某种操作的命令,当按钮弹起时执行停止某种操作的命令。因此,本程序是用picture静态图片框来模拟按钮的操作。为实现此操作,使用了4个函数,分别是OnLButtonDown()、OnMouseMove()、OnMove()和GetRect()函数。前三个是windows的消息响应函数,最后一个是顺的自定义函数。数据发送云台和镜头操作时单向的,所以对串口的操作也是单向的。只有计算机向解码器的发送数据操作,而没有计算机从解码器接收数据的操作。发送数据使用Sen
57、dCommand()函数,该函数在程序中有两个调用位置,一个是在OnLButtonDown()函数中,单用户点击某个命令按钮时调用,另一个是当用户单击了设备地址组合列表选择了一个地址时,在OnCloseComboAddress()函数中调用。毕业设计总结论文总结本文主要介绍了云台基本背景,云台操作控制软件的基本功能和设计方法与容,开发了基于VC的云台镜头控制操作台软件程序。本论文研究中主要完成了以下工作:1.分析了目前常用的云台所具有的基本功能,并给出了几种控制方案。2.根据云台基本功能,设计云台操作控制台所应具有的基本功能。3.提出本文的设计思路和方案,并对系统中所涉与到的原理进行了简要阐述
58、4.针对软件功能需求设计方案,包括对云台镜头、雨刷和运动的控制。5.根据软件设计方案,设计流程图,编制相应的程序,使其完成对应的功能。设计中的经验总结1.弄明白概念原理,理清设计思路,完整的设计方案很重要。本系统涉与到的原理性知识比较多,对各个知识点的明晰是非常有必要的,每个模块的功能,各个模块之间的通讯方式,通讯连接,在功能完备的基础上,还要考虑安全稳定方面的设计,因此在原理概念上一定要明晰。在开始设计方案的时候,对这个概念不清楚,具体的操作也比较模糊,因此系统设计的时候要考虑下载的方式,后查阅资料文献,理清了设计思路,设计方案也就出来了。2.软件分块,做好程序流程图软件编制以主程序调用子程
59、序的方式实现,每个子程序完成一个功能,切勿流水线方式写下来,这样可以减少出错率,也方便调试跟检查。一定要做好程序流程图,先干什么后干什么,模块之间的逻辑性一定要明确好。程序流程图要从大块做起,然后一步一步细化,越细化越好,编写软件的时候要从小块编起,从一个个子程序环节编制,确保每个子程序之间相对独立,做好出口入口的标志位影响工作,然后再结合到一起进行联调。如果像流水线一样写下来,发生错误率较高,不易调试,而且,相互影响的标志位也不易调试。本系统程序全部采用模块化设计,各个模块子程序之间经调试都能做到相对独立,以供主程序。个人经验总结通过对毕业论文项目的研究工作,进一步掌握了VC的应用实践和软件
60、的开发流程,深刻理解了云台控制软件的设计与应用,在科研能力和项目开发能力方面有了较大的提高,主要有一下几个方面:1.了解关于云台的一些基本的功能与组成部分;2.掌握了基于VC的云台项目开发过程;3.亲自参与了整个项目的开发过程,实际动手的能力得到了较大幅度的提高。致毕业设计即将结束,感我的指导老师吴力普老师。在毕业设计期间,吴老师为我的学习研究提供了良好的研究环境和丰富的学习资源,本论文是在导师吴老师的严格要求和悉心指导下完成的。在此,我要向吴老师表示我衷心的致和诚挚的敬意。参考文献书朵等. 视频监控系统中云台控制模块的设计与实现. HYPERLINK :/ t _blank 科技学院学报(自
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数据库巡检报告
- 2025年汝州职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析
- 2025年朔州陶瓷职业技术学院高职单招语文2018-2024历年参考题库频考点含答案解析
- 专项07 用转化思想求不规则图形的角度
- 专题01 先秦时期:中国境内早期人类与文明的起源、早期国家与社会变革(练习)
- 中班户外主题活动策划方案五篇
- 幼儿园综治宣传月活动策划方案三篇
- 公司企业管理咨询合同
- 挡土墙施工合同
- 车联网技术推广项目合同
- 2024年湖南高速铁路职业技术学院高职单招数学历年参考题库含答案解析
- 上海铁路局招聘笔试冲刺题2025
- 国旗班指挥刀训练动作要领
- 春季安全开学第一课
- 植物芳香油的提取 植物有效成分的提取教学课件
- 肖像绘画市场发展现状调查及供需格局分析预测报告
- 2021-2022学年辽宁省重点高中协作校高一上学期期末语文试题
- 同等学力英语申硕考试词汇(第六版大纲)电子版
- 墓地个人协议合同模板
- 2024年部编版初中语文各年级教师用书七年级(上册)
- 中日合同范本
评论
0/150
提交评论