一阶环形倒立摆毕业论文

上传人:仙*** 文档编号:77949892 上传时间:2022-04-20 格式:DOC 页数:48 大小:1.02MB
返回 下载 相关 举报
一阶环形倒立摆毕业论文_第1页
第1页 / 共48页
一阶环形倒立摆毕业论文_第2页
第2页 / 共48页
一阶环形倒立摆毕业论文_第3页
第3页 / 共48页
点击查看更多>>
资源描述
中文摘要 摘 要倒立摆稳定控制是一个经典的控制问题。作为典型的快速、多变量、非线性、绝对不稳定系统,一直是控制理论与应用的热点问题,不但是验证现代控制理论方法的典型实验装置,而且其控制方法和思路在一般工业过程亦有广泛的用途,因此倒立摆系统的研究具有重要的理论研究和实际应用价值。许多抽象的控制概念如控制系统的稳定性、可控性、系统收敛速度和系统抗干扰能力等,都可以通过倒立摆系统直观的表现出来。倒立摆系统的高阶次、不稳定、多变量、非线性和强耦合等特性使得许多现代控制理论的研究人员一直将它视为研究对象。他们不断从研究倒立摆控制方法中发掘出新的控制方法,并将其应用于航天科技和机器人学等各种高新科技领域。本文以利用电位器检测角度的一阶倒立摆系统作为研究对象,研究了其在摆角信号含有大噪声的情况下的平衡稳定控制问题,这对解决实际工程中的相关问题有一定的指导意义。本文首先设计了一阶环形倒立摆的模型。使用电位器作为姿态测量传感器不断测量摆杆的的姿态信息,通过转换这些模拟信息传送给作为控制核心的8位单片机,经过数据处理后,单片机通过驱动电路将控制信号以PWM方式去驱动直流电机的,达到调节摆杆姿态的目的。在设计的基础上,通过牛顿力学对这个系统进行数学建模,得到系统的状态空间方程。通过这个建模的过程,可以看出这个系统是一个不稳定的非线性系统,也为后面的控制理论分析打下基础。对该系统姿态的测量将直接影响自平衡控制算法的效果。本文提出了基于卡尔曼滤波的传感器数据融合方法,弥补了电位器在倾角测量时的不足。通过建立一个实验平台来检验这个算法的有效性,实际测试中该算法取得了不错的效果。本文主要研究自平衡运动的动态控制,利用PID控制,使系统的各项性能指标均满足预期的要求。关键词:倒立摆;自平衡;数据融合;PID控制1I英文摘要ABSTRACTInverted pendulum stability control is a classic control problem。As a complex, time-varying, nonlinear, strong coupling, natural unstable and higher order system, its stability control is a typical problem of the theory and application of control. The control method of Inverted Pendulum has been used in the military, aerospace, general industrial robots and industry process control Therefore, the research on mathematical model of work rolls thermal crown has important value of the theory and practice. Many abstract concepts such as the stability of the control system, the control of controllability, system convergence speed and anti-interference ability, etc., can be intuitive show by inverted pendulum system. Inverted pendulum system of high order, unstable, multivariable, nonlinear and strong FGC feature makes many researchers in modern control theory have been see it as the research object. They have been unearthed from the inverted pendulum control method of new control method, and applied to all kinds of new and high technology fields such as aerospace science and technology and robotics.In this paper using potentiometer detection Angle of the first-order inverted pendulum system as the research object, studied the angular signal contains large noise under the condition of equilibrium stability control problem, this to solve relevant problems in the actual project to have certain guiding significance. This article first first-order model of annular inverted pendulum is designed. Using potentiometer as attitude measuring sensor measuring constantly swinging rod posture information, By converting the analog information transmitted to 8-bit single chip microcomputer as control core, After data processing, In order to tracking, one piece microcomputer control step motor by way of identification and judgment of sensing signal to operate mechanical drive system.SCM through the drive circuit on the basis of the design, by Newtonian mechanics to mathematical modeling of the system, the system state space equation is obtained.Through the modeling process, we can see that this system is an unstable nonlinear system, lays the foundation for the back of the control theory analysis control signal to drive motor with PWM way.This paper mainly studies the dynamic balance movement control, using PID control, the system of various performance indicators meet the expected requirementKEYWORDS: Inverted pendulum; Self-balancing; Data fusion; PID control吉林工程技术师范学院毕业论文目录目 录第一章 绪论11.1 课题研究的目的和意义11.2 发展历史与研究现状21.3 本文研究的主要内容3第二章 倒立摆系统建模和定性分析42.1 倒立摆系统特性分析42.2 环形一级倒立摆系统数学模型5第三章 倒立摆的硬件设计83.1 整体电路框图83.2 单片机最小系统电路83.2.1 单片机介绍93.2.2 单片机最小系统103.3姿态传感器电路113.3.1 角位移传感器113.3.2 姿态传感器电路123.4 电机驱动电路133.5 电源电路14第四章 倒立摆的软件设计154.1 软件功能与框架154.2 单片机的资源配置154.3 主函数功能184.4主要算法及实现184.4.1 角度函数184.4.2 倒立控制函数19第五章 上位机修改参数215.1 串口猎人使用方法215.1.1 基本收码发码215.1.2 高级发码215.1.3 高级收码225.1.4 波形显示235.2 下位机程序设计235.2.1 下位机的高级发码程序设计235.2.2 下位机的高级收码程序设计255.3 上位机修改参数25第六章 系统调试276.1 初步调试286.1.1 上电检查286.1.2 单片机程序下载和通信286.1.3 测试PWM输出286.1.4 姿态传感器采集286.2倒立控制调试296.2.1 测量传感器零点偏移量296.2.2 标定角位移传感器比例值296.3 倒立控制参数整定306.4 电机死区常数整定30第七章 总结与展望317.1 工作总结317.2 不足与展望317.2.1 不足317.2.2 展望32附录一 电路原理图33附录二 程序代码36参考文献43致 谢44i吉林工程技术师范学院毕业论文第一章 绪论1.1 课题研究的目的和意义20世纪50年代,控制理论专家开始了对倒立摆系统的研究。第一台一级倒立摆系统的实验装置是根据火箭发射助推器的原理设计的。此后研究人员参照双足机器人的控制系统设计出了二级倒立摆,随着控制策略研究的深入,依次出现了三级摆、四级摆。依据基座的运动形式,倒立摆系统主要分为三大类:直线倒立摆、环形倒立摆和平面倒立摆,其中平面倒立摆是倒立摆系统中最复杂的一类。2005年7月,北京师范大学复杂系统智能控制实验室在李洪兴教授的带领下采用“变论域自适应模糊控制理论”成功实现了对平面三级倒立摆实物系统的控制,这代表了世界范围内平面倒立摆系统领域的最先水平。倒立摆系统的控制策略与杂技表演顶杆的控制技巧相似,很多抽象的控制理论都能够通过倒立摆控制系统来表现,比如系统的稳定性、鲁棒性等,因此倒立摆系统因其成本低廉、结构简单等优点,成为验证某一控制理论或控制方法的理想实验平台。倒立摆系统是一种典型的多变量、非线性、强耦合、高阶次的自然不稳定系统,它的控制目标就是实现倒立摆系统各摆杆的平衡,使之没有过大震荡,并在加入随机扰动的情况下系统能够在扰动消失后迅速恢复平衡状态。倒立摆系统的这种特性,使它成为进行控制理论研究的理想实验平台。对倒立摆系统的研究能够有效的反映控制领域中的许多典型问题:如非线性、鲁棒性、随动性、稳定性问题等。现阶段检验某种控制方法或控制理论是否有较强的解决非线性和不稳定性问题的能力,一般都通过对倒立摆系统控制的研究来实现,倒立摆的研究不仅有其深刻的理论意义,同时还有重要的工程背景。从日常生活中所见到的空间飞行器和各种伺服云台的稳定,到任何重心在上、支点在下的控制问题,都类似于倒立摆的控制,故对倒立摆系统的稳定控制研究在实际中有很多应用,如火箭发射、海上钻井平台以及卫星发射架的稳定控制、化工过程控制、控制飞机安全着陆等都属于这类问题。由于其运动过程与人类的行走姿态相似,而其平衡控制又与火箭飞行的控制类似,致使倒立摆系统的研究在直升机的飞行控制、火箭发射过程中的姿态控制、双足机器人的直立行走控制等领域中具有重要的现实意义。随着现代控制理论的发展,倒立摆系统研究的相关科研成果己广泛应用于机器人、军工、航天科技及一般工业过程等诸多领域。1.2 发展历史与研究现状国际上最早报道倒立摆的研究论文是Bryson A . E.等于 1970 年撰写的Thesynthesis of regulator logic using state-variable control和Mori.S等于 1976 年撰写的Control of unstable mechanical system-control of pendulum,该两篇文章中均应用极点配置法对倒立摆系统进行稳定性控制研究,获得满意的结果。我国最早有关倒立摆系统的研究文章是西安交通大学的尹征琦教授1985年发表在信息与控制的论文“采用模拟调节器的二级倒立摆的控制”。该文采用降阶观测器这样简单的模拟控制器, 实现了对二级倒立摆的控制,系统受到大的干扰或人为改变实际模型参数时, 能非常稳定的工作。这一研究成果激发了我国控制学界的强烈兴趣,倒立摆系统的控制研究逐渐成为我国控制学界的热门领域。各种研究成果不断涌现,其中以北京师范大学李洪兴教授领导的复杂系统智能控制实验室成果最为骄人。他们首先致力于研究一至四级直线型倒立摆实物系统的起摆和稳定实时控制,于2002年8月在世界上首次成功实现四级倒立摆实物系统起摆和稳定控制;然后又将研究目光瞄准更加复杂难控的平面倒立摆系统,将变论域自适应模糊控制理论结合最优控制理论和经典PID控制理论的某些特点扩展为具有高维PID调节功能的变论域自适应控制理论,并将该理论应用于平面运动二级倒立摆实物系统控制研究,于2003年3月25日成功实现了平面运动二级倒立摆实物系统控制。该项成果已达到国际先进水平甚至国际领先水平。此外,以中国科学院易建强等、清华大学王中大等、中国科学技术大学张冬军等、上海交通大学付莹、哈尔滨工业大学柏桂珍等为代表的研究团队均在倒立摆系统的控制研究方面取得了重要的突破性成就。研究对象涵盖直线型一级到四级倒立摆的起摆和稳定控制,倾斜轨道的直线三级倒立摆、平面倒立摆、圆轨(环形)倒立摆等,控制理论从经典的传递函数、频率特性、根轨迹为基础的频域分析方法,发展到PID、自适应、状态反馈、LQR最优控制、滑模变结构控制、智能控制、模糊控制及人工神经元网络。1.3 本文研究的主要内容一阶环形倒立摆系统是一种欠驱动机械系统,本文所研究的内容是:能否通过对电机转速和方向的控制,保持摆杆倒立的状态。对于该问题,根据经验和直觉是难以判断出来的。因此,需要对该系统建模,然后利用现代控制理论的方法进行系统的可控性的研究。本文运用经典力学理论首先建立倒立摆系统的运动力学方程,然后通过分析,推出一阶环形倒立摆的数学模型。根据分析运用PID控制算法,调试系统实现稳定倒立功能。3第二章 倒立摆系统建模和定性分析2.1 倒立摆系统特性分析倒立摆系统是典型的机械电子系统。无论那种类型的倒立摆系统都有如下特性:(l)藕合性。倒立摆摆杆之间都是强藕合的。这既是使得控制器参数调节、控制系统的设计变得复杂的原因,也是采用单电机驱动倒立摆系统的原因。(2)开环不稳定系统。倒立摆系统有两个平衡状态:竖直向上和竖直向下。开环状态即倒立摆竖直向上的状态,微小的扰动都会使系统进入到竖直向下的状态中,所以是系统不稳定的平衡点,竖直向下的状态是系统稳定的平衡点。(3放射非线性系统。倒立摆控制系统可以应用微分几何方法进行分析,因为它是一种典型的放射非线性系统。(4)不确定性。主要是指测量噪声、建立系统数学模型时的参数误差以及机械传动过程中的非线性因素所导致的难以量化的部分。(5)欠冗余性。倒立摆控制系统采用单电机驱动,因而它与冗余机构,有较大的不同。之所以采用欠冗余的设计是为了节约有效的空间及经济成本而且是在不失系统可靠性的前提下进行,研究者往往是为了通过对倒立摆控制系统的研究来获得性能优越的新型控制器设计方法,并验证其有效性及其控制性能。针对上述倒立摆系统的特性,在建模时一般忽略掉系统中一些次要的难以建模的因素,例如摆杆连接处质量分布不均匀、伺服电机由于安装而产生的静摩擦力、空气阻力、系统连接处的松弛程度、传动齿轮的间隙等等。建模时将摆杆抽象为匀质刚体,这样可以通过力学原理建立一个较为精确的系统数学模型。为了研究倒立摆系统控制方法而建立一个比较精确的线性系统模型是必不可少的。一般采用两种方法对倒立摆系统建模:牛顿力学分析方法、欧拉一拉格朗日原理(Lagrange方程)。应用欧拉一拉格朗日原理可得如下方程: 5其中,L为拉格朗日算子,Q,以是系统的广义外力,方向与广义坐标方向一致,q为广义变量,q,为系统的广义坐标,V是系统的势能,T是系统的动能,D是系统的耗散能。在建立系统数学模型过程中,实际物理系统的方向应与所定义的坐标系原点及方向对应。通过建模我们发现,对于一级柔性连接倒立摆和一级平面倒立摆系统都有六个状态变量,而环形一级倒立摆有四个状态变量,环形二级倒立摆有六个状态变量。一般的,N级倒立摆有2(N+l)个状态变量。将建立的数学模型写成仿射非线性系统的形式为:其中ui为系统控制量,x=(q,q)T为系统状态变量,一般输出为y=qt。一般情况下,i=1时,即是单电机驱动控制系统。2.2 环形一级倒立摆系统数学模型忽略各种摩擦力、空气阻力等,将环形倒立摆系统抽象成水平杆和匀质摆杆组成的刚体系统。一级倒立摆的结构如图2-1所示图2-1 环形一级倒立摆的结构图50为水平杆与x轴的夹角, 1为摆杆与垂直方向的夹角表2-1 环形一阶倒立摆的物理参数水平杆的质量m0水平杆绕端点的转动惯量J0摆杆的质量m1摆杆绕质心的转动惯量J1水平杆的长度L0摆杆质心到转轴的距离l1系统的拉格朗日算子:其中T为系统的总动能、L为拉格朗日算子、v为系统的总势能、q为系统的广义坐标。拉格朗日方程:其中g为系统沿广义坐标qi方向上的外力。在环形一级倒立摆系统中广义坐标: (2-4)一阶倒立摆系统的动能T: (2-5)其中,Tm1为摆杆的动能、Tmo为水平杆的动能。倒立摆水平杆的动能: 在距系统摆杆转动中心距离l处取一小段距离dl,这一小段的坐标如下: (2-7)这一小段的动能:倒立摆系统摆杆的动能:1以水平杆所在的水平面为零势能面,则系统的势能V即为摆杆的重力势能:则,拉格朗日方程: 其中,u为水平杆上所受到的控制力矩。在倒立摆系统实物控制中,采用水平摆杆的角加速度作为输入即: 。将上述微分方程写成:由式(2-11)可知系统的状态变量:,在平衡位置对系统模型进行线性化即:系统的状态空间模型:其中,A为系统的状态矩阵、B为控制矩阵、y为系统的输出、C为系统的输出矩阵由上述微分方程的:其中,。7第三章 倒立摆的硬件设计3.1 整体电路框图根据设计方案,倒立摆的控制系统框图如图3-1所示。图3-1 系统硬件框图其中,角位移传感器选用WDD35D-1角位移传感器,该角位移传感器是模拟量输出。所以,根据控制系统的要求可以选用STC12C5410AD单片机。3.2 单片机最小系统电路作为控制系统最重要的部分,单片机最小系统需要采集摆杆的运动状态,并对采集的信息进行处理计算,控制电机实现摆杆的稳定倒立,同时还要完成与上位机之间的通信,所以单片机最小系统会影响车模的控制效果。3.2.1 单片机介绍STC12C5410系列单片机是单时钟/机器周期(1T)的兼容8051内核单片机,是高速/低功耗的新一代8051单片机,全新的流水线/精简指令集结构,内部集成MAX810专用复位电路。特点:1.增强型1T流水线/精简指令集结构8051CPU2.工作电压:5.5V-3.4V(5V单片机)/3.8V2.0V(3V单片机)3.工作频率范围:035MHz,相当于普通8051的0420MHz,实际工作频率可达48MHz4.用户应用程序空间12K/10K/8K/6K/4K/2K字节5.片上集成512字节RAM6.通用I/O口(27/23个),复位后为:准双向口/弱上拉(普通8051传统I/O口)可设置成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏,每个I/O口驱动能力均可达到20mA,但整个芯片最大不得超过55mA7.ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片8.EEPROM功能9.看门狗10.内部集成MAX810专用复位电路(外部晶体20M以下时,可省外部复位电路)11.时钟源:外部高精度晶体/时钟,内部R/C振荡器12.用户在下载用户程序时,可选择是使用内部R/C振荡器还是外部晶体/时钟常温下内部R/C振荡器频率为:5.2MHz-6.8MHz,精度要求不高时,可选择使用内部时钟,但因为有温漂,应认为是4MHz8MHz13.共2个16位定时器/计数器14.外部中断2路,下降沿中断或低电平触发中断,PowerDown模式可由外部中断低15.电平触发中断方式唤醒16.PWM(4路)/PCA(可编程计数器阵列),也可用来再实现4个定时器17.也可用来再实现4个定时器或4个外部中断(上升沿中断/下降沿中断均可支持)18.ADC,10位精度ADC,共8路19.通用异步串行口(UART)20.SPI同步通信口,主模式/从模式STC12C5410AD有28引脚和20引脚两种封装。图3-2是28引脚的引脚分布及引脚功能图。图3-2 单片机引脚3.2.2 单片机最小系统单片机最小系统包括振荡电路、复位电路和指示电路,如图3-3所示。图3-3 单片机最小系统3.3姿态传感器电路3.3.1 角位移传感器本系统所使用的是精密导电塑料电位器,型号为WDD35D-4。其标称阻值为1K,电阻公差15%,实测阻值960。介质耐压5OOV,独立线性度0.1%1%,分辨精度为0.1%。理论电气旋转角345士2o,机械转角360 o。启动力矩镇lmNm。旋转负荷寿命50106圈(400r/min,每隔15min反转)。额定功耗2W(70 o C)、OW(125 o C)。工作温度范围-55125 o C。工作电压=325)&(g_VoltageZ=0)&(g_VoltageZ0) 正转Val=PIDControl(0,g_fAngle);PWM(Val);PWM1(0);else 反转Val=PIDControl(0,g_fAngle);PWM(0);PWM1(Val);PID控制是程序的核心部分,为了实现摆杆倒立的精确控制。对摆杆角度进行分段PID控制,不同的角度范围设置不同的控制参数。int PIDControl(int setvalue,int backvalue)static float fSpeedControlIntegral=0.0;static float fDeltaNew=0,fDeltaOld;float fP,fD,fI; int result;backvalue=abs(backvalue); 取绝对值fDeltaNew=setvalue+backvalue; 计算差值 fSpeedControlIntegral+=fI;result=(int)(fP+fD+fSpeedControlIntegral);fDeltaOld=fDeltaNew; 保存差值fSpeedControlIntegral=(fSpeedControlIntegral255)?fSpeedControlIntegral:255; 积分限幅 if(g_fCarAngle-1) 积分清零fSpeedControlIntegral=0;fI=0;result=0;if (result=OUT_MAX)result = OUT_MAX; 输出限幅return (result); 43第五章 上位机修改参数为了使倒立摆系统实现倒立并具有良好的稳定性,调试过程中需要修改很多参数。如果每次修改参数都要重新下载程序,效率将会大大降低。俗话说,磨刀不误砍柴工。在调试智能车之前,实现上位机通过串口修改参数,单片机将接收到的参数保存的EEPROM中。这样,通过上位机将修改后的参数经过串口发送给倒立摆系统,将很容易的完成倒立摆系统的调试。5.1 串口猎人使用方法串口猎人是一款功能非常强大的串口软件,不仅可以实现基本的收码发码,还可以根据实际需要设定帧格式,实现高级收码发码,不仅如此,串口猎人还可以将接收到的数据以波形、码表、柱状图等形式显示出来,这大大方便了自平衡车的调试。5.1.1 基本收码发码基本功能使用非常简单,点击“重新搜索串口”,选择正确的端口号,再单击“启动串行端口”,当串口开启状态为绿色即表示对应的端口成功开启。再根据通信协议设置波特率、数据位、有无校验等信息,就可以实现基本的收码发码。串口猎人可以收发HEX码或者字符串,在使用时一定要正确选择。5.1.2 高级发码在实际使用中,串口发送或接收的信息要以帧形式发送,而不同情况下可能需要不同的帧格式。串口猎人的高级发码功能很容易根据实际需要设定帧格式。在高级发码中,有帧格式设置一栏,可以设置帧格式。比如需要帧格式为“!+帧数据+字符串结束符”,可以在格式代码中填入1D5,同时在1( 帧头)中填!,5(特殊字节1)中填入字符串结束符的HEX码00。在自动发码表或者自动发文件中填入需要发送到帧数据后,单击“启动自动发码”即可以“!+帧数据+字符串结束符”的帧格式发送。为了避免每次启动后都要设置帧格式等,可以将配置保存,下次启动时载入即可。图5-1 高级发码设置5.1.3 高级收码下位机传回的帧中可能包含帧头、帧长、速度、角度等多种信息,通过高级收码可以将这些信息分布提取出来,方便观察。帧结束判定根据下位机的协议设定,8个通道可以同时提取同一帧中的8个信息。比如接收到下位机发送格式为“帧头+角度值+角速度值”的帧,为了获得角度值和角速度值,根据协议设定帧头,然后在通道0中别名填入“角度值”,来源选择“提取每一帧”,数据格式中的首地址为角度值在每一帧中的位置;单双字节则根据角度值占用的字节数选择;如果双字节数据高8位在前,则勾选高位在前;如存在负数,勾选带符号位。同样方法将通道1设置成提取角速度值的通道。单击启动高级收码后,将在历史数据区看到接收到的角度值和角速度值,该值是转换成人们常用的10进制的结果。5.1.4 波形显示除了高级收码、高级发码外,串口猎人还提供了更便于分析数据的波形显示。波形显示是将高级收码的8个通道数据以波形的形式显示出来,更直接的反应出来某个量的变化情况。当设置好高级收码后,只要单击“启动波形显示”,接收到的信息就可以在波形显示窗口显示出来。码表显示、柱状显示和波形显示类似,只要点击对应的“启动码表显示”或者“启动柱状图显示”即可。5.2 下位机程序设计下位机的程序要根据与上位机的通信协议编写。上位机使用的是串口猎人这款软件。在设计中,系统数据多为浮点数据。软件发送的为字符串,所以下位机程序需要将字符串转换成浮点型数据。5.2.1 下位机的高级发码程序设计下位机执行高级发码程序时,上位机对应着采用高级收码模式。如果协议定义帧头+帧数据,则高级发码程序中先发送一个帧头,再发送帧数据即可。为了方便程序发送uint16型数据,同时为了使用同一函数发送int16,uint8,int8类型的数据,定义共同体_uinonx。定义共同体_uinonx的好处在于,将uint16型数据幅值给u16Element元素后,在struct _u8struct中的High和LowE元素即为uint16型数据的高位字节和低位字节,方便串口发送。typedef union _uinonxuint16 u16Element;uint8 u8Element;int16 s16Element;int8 s8Element;struct _u8structuint8 HighE;uint8 LowE;u8struct;unionx, *ptrunionx;图5-2 高级发码流程图图5-3 高级收码流程图这样就可以向上位机发送数据了。比如,想要观测当前摆杆的角度值,可以将数据测得的摆杆角度值存在unionx类型的数据HanterChannelx.s16Element中,再调用void superior_send(uint8 DataCount, ptrunionx Ptr);函数即可。HanterChannel0.s16Element=(int16) (g_fCarAngle*100.0);HanterChannel1.s16Element=(int16)( g_fGyroscopeAngleSpeed*100.0);superior_send(2, HanterChannel);串口猎人设定好波特率,并在高级收码的通道0中数据格式中设置首地址为1,双字节,勾选高位在前和带符号位,在通道1中设置首地址为3,其他同上。启动高级收码就可以接收到车模的角度值和角速度值。5.2.2 下位机的高级收码程序设计为了后期调试方便,提高调试效率,采用上位机调试参数。但是倒立摆的系统参数多为浮点型数据,串口不能直接发送浮点型数据,而把浮点型数据转换成十六进制形式又太过复杂,并且十六进制数据也不易于修改。所以事先规定上位机通过串口传来的指令、参数全部以字符串的形式发送,例如10.234就要发送字符串“10.234”,这样只要下位机串口只要接收字符串就可以了。使用浮点型数据时再将字符串转换成浮点型数据即可。当上位机高级发码时,下位机应该有相应的高级收码程序。如果上位机的高级发码帧格式为帧头+帧数据,则下位机的高级收码程序流程图如图5-3所示。通过高级收码程序,将接收到的数据保存在指针P指向的位置。5.3 上位机修改参数要实现上位机修改倒立摆的参数功能,还需要把EEPROM中存储的字符串转换成正确的浮点型数据。为了将字符串转换成正确的浮点型数据需要设计字符串转浮点型的函数。将字符串“123.45”作为参数传递给str2f函数,str2f函数将转换成浮点型数据123.45返回。要将EEPROM中存放的字符串转换成浮点型数据,还需要设计程序updateGVAL函数,updateGVAL函数调用CmdEWREEPROM(R:xx:yyy:z, pBufferTemp)在xx扇区yyy处读取z个字节长度的数据保存到指针pBufferTemp指向的数组缓存区。然后将指针pBufferTemp作为参数传递给str2f函数,然后将str2f函数的返回值赋值给需要修改值的变量。主程序中,在无限循环中调用superior_receive函数将接收的串口数据保持到缓存区中,然后调用CmdEWREEPROM函数将接收的数据存入EEPROM中。当需要修改的内容都修改完毕后,或者无需修改数据时,上位机发送字符串“Q”跳出无限循环。然后调用updatGVAL函数,读取EEPROM中的值,对倒立摆模型参数进行赋值,这样就实现了上位机修改倒立摆的系统参数。第六章 系统调试前面给出的算法程序存在很多参数,虽然从理论上可以对这些参数进行优化计算。但是由于受到倒立摆模型精度的影响,计算所得到的参数也只能够作为参考值调试的起始范围。实际优化参数需要通过一定的工程步骤最终确定,这个过程称为参数整定。整个调试中涉及到的参数和部件非常多,而且这些参数之间还有着紧密的相互影响。如果对于其中的物理过程认识不清,有没有正确的调试步骤,那么在调试过程中出现的各种错误现象就会掩盖正确的原因,影响整个调试进程。首先确定需要整定的倒立摆控制参数,这些参数为:1、传感器参数: :角位移传感器比例。将角位移传感器AD采集数值转换成角速度信号,单位是/ 秒。 :角位移零点偏移量。角位移静止时AD采集量。 标定这些参数需要考虑输入输出参数的单位量纲。倒立摆角度刻度盘正面看去规定正角度值为正方向,负角度值为反方向。效果图如图6-1所示。图6-1摆杆方向规定倒立摆电路进行初步调试为后面的倒立摆软件参数打下基础。6.1 初步调试6.1.1 上电检查电路加上24V 开关电源之后,测量电路的工作电流和各个稳压电路的输出值是否在安全范围之内。设计电路中包括有24V ,3.3V ,5V 三种电源。6.1.2 单片机程序下载和通信STC12C5410AD单片机具有在系统编程(ISP)能力。该单片机在出场后内部就有一个自举编程(Bootloader)程序,通过 UART 串口便可以将用户程序下载下去。UART 不仅可以提高程序的下载,同时在上位串口监控程序的协助下来显示程序运行过程中发送的串口字符,便于调试程序。6.1.3 测试PWM输出在单片机软件可以进行开发下载基础之上,编写单片机 PWM 输出控制程序。通过控制电机转速,验证驱动电路的正确性。确定两个电极输出电压的极性。保证输出 PWM 正电压时,电机向规定正方向旋转;PWM 输出负电压时,电机向规定反方向旋转。6.1.4 姿态传感器采集STC12C5410AD单片机具有8个通道的AD转换。设计方案应用了其中1个通道。编写AD转换程序,将采集的数值发送给上微机进行显示。通过观察各通道的采集值,确认各传感器工作状态,信号动态范围以及各通道噪声的影响。最好能够将各通道采集的数值通过曲线显示,可以比较直观的观察信号的变化和噪声的幅度。图6-2是通过上微机显示的角位移传感器采集的波形。角位移AD值图6-2 角位移传感器的AD值角位移传感器的电压输出和旋转角度成线性关系,采集的AD值波形显示符合理论说明。6.2倒立控制调试6.2.1 测量传感器零点偏移量保持摆杆倒立静止状态,通过单片机软件采集各模拟通道AD 值,传递给上位计算机进行显示。确定传感器的零点偏移量,通过测量得到角位移传感器的零点偏移量为857。6.2.2 标定角位移传感器比例值为了确定角位移传感器输出电压和角度的关系,我们需要确定角位移传感器的比例值。通过旋转角位移传感器的转轴,测得角位移传感器最大值为1024,最小值为0。角位移传感器的最大值和最小值可以用来确定角位移传感器对应角度的比例值:。通过这个比例可以将角位移传感器的信号转换成角度信号,单位是度。6.3 倒立控制参数整定角度控制参数包括比例、积分和微分三个参数。比例参数( )和积分参数相当于倒立摆的回复力。参数需要大于重力加速度所产生的效果才能够使得摆杆保持倒立。随着这两个参数逐步增大,摆杆开始能够保持倒立。该参数进一步加大,摆杆开始出现来回的摆动现象。微分参数()相当于倒立摆中的阻尼力,它可以有效的抑制摆杆的摆动。当该参数过大时,会引起摆杆本身的震动。这是由于摆杆本身不是一个刚体,摆杆具有一定的共振频率。微分参数过大时会使得摆杆在电机的驱动下产生摆杆的共振。 调节参数可以遵循先比例积分后微分的过程。首先调整比例积分参数,使得摆杆能够保持直立并且开始来回摆动了。说明此时比例积分参数已经可以克服重力的影像。然后逐步增加微分参数,摆杆逐步保持直立稳定。增大微分参数直到摆杆开始共振,这样就可以确定微分参数的最大值了。然后适当减小微分参数,然后逐步增加比例积分参数,直到摆杆又开始震荡,这样便可以确定比例参数的最大值。然后适当减小比例参数。在这些参数附近进行试验,直到寻找到一组摆杆倒立的控制最优参数。摆杆保持倒立的比例、积分和微分控制参数有一个相当大的区间。这为后面进行摆杆动态参数调整留下了修改空间。 6.4 电机死区常数整定在倒立摆动力传动系统中,各个环节都存在着静止摩擦力,它会降低摆
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!