工控网首页
>

应用设计

>

聚星仪器 倒立摆控制器的实现

聚星仪器 倒立摆控制器的实现

2011/9/6 14:27:00

应用需求:倒立摆控制方法在军工、航天、机器人和一般工业过程领域中都有着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星飞行中的姿态控制等。倒立摆的控制,能用来检验控制方法是否有较强的处理非线性和不稳定性问题的能力。
面临的挑战:倒立摆控制系统是一个复杂的、不稳定的、非线性系统。涉及控制中的许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。
解决方案:利用NI CompactRIO 平台实现的倒立摆控制器体现了该平台强大的控制能力,所有的算法都是在FPGA和实时控制器上实现,保证了控制响应的快速、实时和确定性。

完整案例分析

倒立摆的控制问题就是使摆杆尽快地达到一个平衡位置,并且使之没有大的振荡和过大的角度和速度。当摆杆到达期望的位置后,系统能克服随机扰动而保持稳定的位置。倒立摆研究具有重要的工程背景:(1) 机器人的站立与行走类似双倒立摆系统。(2) 在火箭等飞行器的飞行过程中,为了保持其正确的姿态,要不断进行实时控制。(3) 通信卫星在预先计算好的轨道和确定的位置上运行的同时,要保持其稳定的姿态,使卫星天线一直指向地球,使它的太阳能电池板一直指向太阳。(4) 侦查卫星中摄像机的轻微抖动会对摄像的图像质量产生很大的影响,为了提高摄像的质量,必须能自动地保持伺服云台的稳定,消除震动。(5) 为了防止单级火箭在拐弯时断裂而诞生的柔性火箭(多级火箭),其飞行姿态的控制也可以用多级倒立摆系统进行研究。由于倒立摆系统与双足机器人、火箭飞行控制和各类伺服云台稳定有很大相似性,因此对倒立摆控制机理的研究具有重要的理论和实践意义。

系统实现方法
1、 倒立摆系统的控制方法
对倒立摆这样一个典型被控对象进行研究,无论在理论上和方法上都具有重要意义。不仅由于其级数增加而产生的控制难度是对人类控制能力的有力挑战,更重要的是实现其控制稳定的过程中不断发现新的控制方法、探索新的控制理论,并进而将新的控制方法应用到更广泛的受控对象中。各种控制理论和方法都可以在这里得到充分实践,并且可以促成相互间的有机结合。当前,倒立摆的控制方法可分为以下几类:
(1) 线性理论控制方法
将倒立摆系统的非线性模型进行近似线性化处理,获得系统在平衡点附近的线性化模型,然后再利用各种线性系统控制器设计方法,得到期望的控制器。PID 控制、状态反馈控制、LQR 控制算法是其典型代表。这类方法对于一、二级倒立摆(线性化误差较小、模型较简单)控制时,可以解决常规倒立摆的稳定控制问题。但对于像非线性较强、模型较复杂的多变量系统(三、四级以及多级倒立摆)线性系统设计方法的局限性就十分明显,这就要求采用更有效的方法来进行合理的设计。
(2) 预测控制和变结构控制方法
由于线性控制理论与倒立摆系统多变量、非线性之间的矛盾,使人们意识到针对多变量、非线性对象,采用具有非线性特性的多变量控制解决多变量、非线性的必由之路。人们先后开展了预测控制、变结构控制和自适应控制的研究。
(3) 智能控制方法
在倒立摆系统中用到的智能控制方法主要有神经网络控制、模糊控制、仿人智能控制、拟人智能控制和云模型控制等。
(4) 鲁棒控制方法
虽然,目前对倒立摆系统的控制策略有如此之多,而且有许多控制策略都对倒立摆进行了稳定控制,但大多数都没考虑倒立摆系统本身的大量不确定因素和外界干扰,目前对不确定倒立摆系统的鲁棒控制问题进行了研究并取得了一系列成果。
2、系统设计平台配置
NI CompactRIO 可编程自动化控制器(PAC)是一款低成本、可重新配置的控制和采集系统,专为需要高性能和高可靠性的应用而设计。该系统包含一个开放的嵌入式架构以及小型、坚固且可热插拔的工业I/O 模块。NI CompactRIO 采用了可重新配置I/O(RIO)FPGA 技术以及实时操作系统(RTOS)。FPGA 电路是一款具有并行处理能力,可重新配置的计算引擎,可在芯片的硅电路中执行LabVIEW 应用程序,使用嵌入式的RIO FPGA 硬件,可以超过100 Ks/s 的循环速率进行多循环PID 控制。并且LabVIEW FPGA 技术使您无需掌握专门的硬件开发语言(如VHDL)就可以用LabVIEW 图形化的开发语言来开发用户自定义的FPGA 程序。所以NI CompactRIO 平台非常适合倒立摆控制器的开发。
NI CompactRIO 的总体构成如下图所示:
NI 9014:实时控制器,主要通过TCP/IP 协议与主机进行通讯,从而将控制器程序以及FPGA VI 进行编译或下载。
NI 9411:6 路数字量输入模块,正交编码器进行编码从而得出二级倒立摆的位移和两个角度。
NI 9477:数字量输出模块,控制电机的运行和停止。
NI 9263:模拟量输出模块,将控制反馈电压输出驱动电机工作。
3、核心算法实现
本控制系统的设计、仿真、测试与实现的全过程都在cRIO硬件平台和LabVIEW 统一的软件平台上完成。控制系统的控制算法基于LabVIEW Control Design Toolkit 完成,并在cRIO的RT操作系统上实现;控制系统的各信号输入,控制信号输出,以及二级倒立摆装置的限位、限角和限速等各种保护工作都在cRIO 的FPGA 上实现。当人为将倒立摆装置的两根摆杆置于预定的平衡位置附近时,控制系统自动启动并控制倒立摆装置的小车左右移动来保持两根摆杆稳定不倒。控制系统具备一定的鲁棒性,当已经受控稳定的倒立摆装置受到一定的外界扰动时,控制系统能够及时地使其重新恢复稳定。控制系统还具备保护功能,当小车速度大于限定值或位置到达限制位置时,控制系统会自动切断,使小车迅速停止,从而对倒立摆装置进行有效的保护。
3.1 正交编码算法在FPGA 中实现
利用NI 9411 模块在FPGA 实现了正交编码算法。图2 是正交编码算法流程图,利用NI 9411 的两个差分输入端与正交编码器的两个输出通道A 和B 进行差分连接。NI 9411具有6个差分/TTL数字输入端并且其最大时延500 ns,因而NI 9411 是高速正交编码器应用场所的理想选择。
正交编码算法:首先A通道和B通道分别与前一个状态作比较,只要有一个通道脉冲状态改变,则脉冲计数就要相应的进行加1 或者减1,具体要根据两个通道的方向来判定。对B通道当前状态和A通道上一状态进行异或来判定加1或者减1。如果A 和B 状态都没有改变,则脉冲计数不变。

                </div>
                
                <div class=
投诉建议

提交

查看更多评论
其他资讯

查看更多

聚星仪器 射频与无线应用

聚星仪器 NI CompactRIO产品手册

聚星仪器 NI CompactRIO技术指标说明

聚星仪器 Concord-9230/9290分布式采集设备

聚星仪器 VISN-H1用户手册