倒立摆系统的远程控制设计

(整期优先)网络出版时间:2012-03-13
/ 2

倒立摆系统的远程控制设计

李琳夏媚杜洋腾飞

李琳夏媚杜洋腾飞(南京航空航天大学金城学院江苏南京211156)

【摘要】倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。该项目提出了基于C/S模式为主,通过网络功能确保其顺利运行的远程控制实验系统的实现方法。远程控制软件采用VC++6.0开发平台,该软件分客户端和服务器端两部分,采用TCP方式连接确保数据传输可靠性。通过IIS搭建局域网,创建网站,完善实验信息。本设计在校园网内运行正常,具有良好的实时性。

【关键词】倒立摆,C/S模式,局域网,远程控制

中图分类号:TP242文献标识码:A文章编号:ISSN1004-1621(2012)03-016-02

0.引言

倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。对倒立摆系统的研究能有效的反映控制中的许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。同时,其控制方法在军工、航天、机器人和一般工业过程领域中都有着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星飞行中的姿态控制等。

1.直线一级倒立摆的物理模型

在忽略了空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如图1所示,设定一系列参数:M小车质量,m摆杆质量,b小车摩擦系数,l摆杆转动轴心到摆杆质心的长度,I摆杆惯量φ摆杆与垂直向上方向的夹角θ摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)。

对系统中小车和摆杆的受力分析,如图2所示。其中,N和P为小车与摆杆相互作用力的水平和垂直方向的分量。

图1直线一级倒立摆模型图2小车及摆杆受力分析图

建立系统的状态空间表达式:

2.远程控制系统的体系结构

在倒立摆的分析和设计过程中,通过网络对其进行远程控制,实现实验设备、实验经验、以及实验数据的远程共享,可以大大提高效率和设备的利用率。本文以倒立摆装置为实验平台,设计了一种基于C/S模式和B/S模式交互混合的远程控制实验系统。

C/S模式即为客户机/服务器结构。客户机是与用户交互的部分,主要功能是执行用户方的应用程序,提供一个用户界面,服务器的主要功能是执行共享资源的管理应用程序。B/S模式即为浏览器和服务器结构,以HTTP协议为基础完成浏览器与Web服务器之间的信息交换与传递。远程控制系统功能总体上也可以分为两种,其中C/S模式下的远程控制功能包括远程数据采集、远程控制设定、实验访问控制、用户身份验证。B/S模式下的实验管理包括用户信息管理、远程视频监控以及实验材料发布,如图3所示。

图3系统功能结构

3.远程控制软件设计算法介绍

远程控制软件通过对图像进行压缩进行数据信号的传送,可以不损失过多的视觉信息,从理论角度来看,应针对图像数据中的冗余信息获得尽可能高的压缩度。典型的图像压缩系统主要由三部分组成:变换部分(Transformer)、量化部分(Quantization)、和编码部分(Coder)。

哈夫曼编码(HuffmanCoding)码是一种常用的压缩编码方法,它的基本原理是频繁使用的数据用较短的代码代替,较少使用的数据用较长的代码代替,每个数据的代码各不相同。这些代码都是二进制码,且编码的长度是可变的。

行程编码(Run-LengthEncoding),仅存储一个像素值以及具有相同颜色的像素数目的图象数据编码方式称为行程编码,或称游程编码,常用RLE(Run-LengthEncoding)表示。该压缩编码技术相当直观和经济,运算也相当简单,因此解压缩速度很快。

综合行程编码和哈夫曼编码,先对原始图像进行行程编码压缩,然后对该压缩图像施用哈夫曼编码再次压缩。这种多次压缩的方式在一些情况下可以获得较高的压缩比,但实验结果也显示在一些特殊情况下,这种方法得到的压缩比并不如直接使用哈夫曼编码进行压缩。

4.远程控制系统

本次设计的远程控制软件分为客户端程序(Client)和服务器端程序(Server)两部分,将客户端程序安装到主控端的计算机上,将服务器端程序安装到被控端的计算机上。使用时客户端程序向被控端计算机中的服务器端程序发出信号,建立一个特殊的远程服务,然后通过这个远程服务,使用各种远程控制功能发送远程控制命令,控制被控端计算机中的各种应用程序运行。

(1)远程控制服务器端

服务器端的作用是实现向客户端发送桌面的实时情况,并对客户端的各种操作采取相应的响应。欲使远程控制得以实现,首先需要开启服务器端,以保证远程服务处于侦听状态以接受客户端的连接。远程控制需要注意以下两点:一、倒立摆的控制主机与客户端已经建立了稳定的网络连接;二、将客户端和主机的IP设置为同一网段。为提高控制效率,一般对客户端和主机进行手动分配IP。

客户端设置则与之基本相同,但每一个客户端的IP地址需不同以防止IP冲突。如:客户端1号,IP地址为192.168.1.2;客户端2号,IP地址为192.168.1.2依次设定IP。

在IP地址设定好之后即可开启服务,此时点击开始服务,出现如图4对话框:其中端口号可以自由选择,亦可选择默认,但必能选择<2400。因为<2400的端口号已被系统分配做特定用途,所以,为避免引起冲突,最好选择默认值。点击OK,服务器端设置完毕,远程服务开启,等待连接。

图4服务器端图5客户端

(2)远程控制客户端

客户端负责向服务器端传输各种控制信息,如鼠标,键盘操作等,还可以向服务器端发送各种命令,如:选定图像压缩模式,选择图像显示效果等。当客户端确定一种模式时,服务器端即采用相应的模式继续当前的连接。配置好客户端IP,点击连接到服务器弹出如上右窗口,向"服务器IP地址"栏里填入当前服务器的IP,如图5所示,并填入当前服务器所开启的端口号,然后点击确定,远程控制即可开始。随后,即可在客户机上进行相关的倒立摆系统的控制实验。控制过程完毕时,可点击断开与服务器的连接,或者直接点击退出。若在一个远程控制已建立连接的情况下,有另外的远程控制请求,则服务器端将予以拒绝以保证当前实验的安全,直到当前连接断开之后,服务器端才允许另外的远程控制请求接入。服务器拒绝客户端的请求时,以提醒企图建立连接的用户稍后再试。

5.总结

本次设计在于利用了远程控制来解决实验室资源不能够被充分使用问题,并可加入远程监控确保控制实验的安全进行。运行结果表明该设计可以实现倒立摆系统的远程自启动控制,提高了校园实验室的使用效率。下一步的工作就是要考虑是否可以实现C/S与B/S模式的混合模式控制来使控制方案达到最优。

参考文献

[1]黄坚主编.自动控制原理及其应用[M].第1版,北京:高等教育出版社,2004.13~57,231~272.

[2]谭浩强.C++面向对象程序设计[M].第1版,北京:清华大学出版社,2006.69~107.

[3]BjarneStroustrup.TheC++ProgrammingLanguage[M].第3版,Addison-Wesley,2000.100~120.

[4]汪晓平,刘韬,等.VisualC++6.0开发网络典型应用实例导航[M].第1版,北京:人民邮电出版社,2005.1~81.

[5]明日科技,宋坤,刘锐宁,李伟明.VisualC++开发技术大全[M].第1版,北京:人民邮电出版社,2007.154~190,558~573.

[6]康荣学,贾海波,张优云.基于Internet的远程实验研究[J].计算机工程与应用,2002,38(16):168170.

[7]唐鸿儒,刘大年,杨鹏袭,等.基于Internet的远程监控系统开发技术研究[J].测控技术,2003,22(4):48-51.

[8]明得祥,张永智,王跃科.基于网络的分布式远程实验系统体系结构与技术[J].计算机应用,2002,(9):104-106.

作者简介:

李琳,女,1988生;夏媚,女,1989生;杜洋,男,1989生;腾飞,男,1985生。南京航空航天大学金城学院自动化系,电气工程与自动化专业。