基于ARM的倒立摆系统研究Word文档格式.docx

上传人:b****5 文档编号:21184577 上传时间:2023-01-28 格式:DOCX 页数:37 大小:1.71MB
下载 相关 举报
基于ARM的倒立摆系统研究Word文档格式.docx_第1页
第1页 / 共37页
基于ARM的倒立摆系统研究Word文档格式.docx_第2页
第2页 / 共37页
基于ARM的倒立摆系统研究Word文档格式.docx_第3页
第3页 / 共37页
基于ARM的倒立摆系统研究Word文档格式.docx_第4页
第4页 / 共37页
基于ARM的倒立摆系统研究Word文档格式.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

基于ARM的倒立摆系统研究Word文档格式.docx

《基于ARM的倒立摆系统研究Word文档格式.docx》由会员分享,可在线阅读,更多相关《基于ARM的倒立摆系统研究Word文档格式.docx(37页珍藏版)》请在冰豆网上搜索。

基于ARM的倒立摆系统研究Word文档格式.docx

目录

1绪论1

1.1研究目的和意义1

1.2国内外发展现状1

1.3本说明书内容2

2总体方案设计3

2.1设计任务3

2.2方案流程3

2.2.1倒立摆构成3

2.2.2倒立摆原理4

2.2.3组件选型4

2.2.4控制算法5

3硬件电路设计6

3.1原理图设计6

3.1.1电源模块6

3.1.2按键模块7

3.1.3USB转TTL模块7

3.1.4单片机最小系统8

3.1.5隔离USB转TTL10

3.2PCB版图设计11

3.3电路调试12

4PID算法仿真14

4.1建立PID控制器模型14

4.2建立PID仿真模型15

4.3PID仿真15

4.3.1P项仿真15

4.3.2I项仿真16

4.3.3D项仿真17

5程序设计18

5.1了解STM32F103系列单片机的构架和程序设计方法18

5.2传感器程序设计19

5.3PID算法程序设计23

5.4PID参数调试24

5.4系统测试25

6总结28

参考文献29

致谢31

附录主要程序32

1绪论

1.1研究目的和意义

对于倒立摆系统的研究即设计一个让摆杆快速到达竖直向上的位置并且保持这个状态的算法。

这个算法可以控制倒立摆系统在受到外部干扰的情况下可以保持稳定姿态[1]。

对于倒立摆控制系统的研究不仅仅是在控制算法理论上有意义,其在实际应用中还有很大的作用。

它可以作为一种检测各种控制算法性能的工具,可以把控制理论中稳定性,能控性,快速性和鲁棒性这些抽象的概念直观的表现出来。

在机器人工业中,现在都还无法实现机器人如同人类一样非常迅速的完成各种动作。

对于人类来说,各种动作似乎都是很容易实现的。

所以,我们忽略了人类运动的复杂程度。

人类的每个简单动作都运用到了很多骨头,关节,肌肉。

实际上要控制这些骨头,关节,和肌肉是一个非常复杂的问题。

在多级倒立摆系统中,各级摆杆相当于骨头,不同级间的转轴就相当于关节,电机转动提供的能量相当于肌肉。

所以倒立摆系统的运动与人类的运动非常相似。

对研究倒立摆控制系统的研究可以帮助我们对机器人行走等方面提供一些经验。

相关的科研成果已经应用到航天科技和机器人等诸多领域[2]。

此外,在自动化控制的教学工作中,倒立摆系统也具有相当高的地位,它是高校自动化专业的一个应用最广泛的实验平台。

1.2国内外发展现状

上世纪50年代,MIT在火箭研究中得到一些灵感,设计出了第一个倒立摆系统。

到60年代末,倒立摆用来研究对不稳定和非线性系统的控制方法设计。

从此倒立摆系统的研究进入一个高速发展的时期。

在此期间,倒立摆的发展从直线摆发展到了悬挂摆,平面摆、环形摆等;

从一级倒立摆发展到了二级,三级,四级倒立摆。

此外,采用的电机种类不同又可以分成不同的倒立摆系统[3]。

现在有北京师范大学、北京航空航天大学、东京工业大学、东京电力大学、东京大学等学校,对这一领域进行了持续的研究[4]。

近年来,虽然各种新的倒立摆已经问世,但可以自主研发和生产的倒立摆设备厂商也不多。

目前,国内高校基本上都是采用香港公司和加拿大公司生产的系统,其他一些厂商还包括奥格斯科技发展有限公司、保定航空科技工业有限公司、郑州微纳科技有限公司[5]、科学技术微纳米发展有限公司。

1.3本说明书内容

本文主要介绍了一个基于ARM的倒立摆系统的设计方案。

第一章,介绍了倒立摆的背景和意义,阐述了倒立摆的国内外发展现状。

第二章,介绍了倒立摆系统的设计任务,技术指标,设计流程、设计方案。

第三章,系统的硬件电路设计方案,控制板中各模块的介绍,对所选器件的分析和说明。

第四章,倒立摆系统中PID算法的仿真设计。

第五章,程序设计。

包括基本程序,传感器数据采集及处理程序,PID算法程序的设计和调试。

第六章,总结全文,对本文的工作进行了总结与展望

2总体方案设计

2.1设计任务

基本技术指标:

(1)了解ARM架构,熟悉ARM系统的编程应用;

(2)设计原理图,绘制PCB图;

(3)了解自动化控制原理和常用方法;

(4)分析倒立摆系统,建立模型选用合适的控制算法进行闭环系统的分析;

(5)分析总结控制器的调节经验;

(6)控制精度小于3°

工作内容:

(1)查阅国内外相关文献资料,了解相关控制原理与算法;

(2)查阅国内外相关文献资料,了解相关控制算法的调试过程;

(3)根据所学的相关知识,完成倒立摆非平衡系统的控制。

2.2方案流程

2.2.1倒立摆构成

图2.1是一阶旋转倒立摆的结构图,主要有支架、电机、旋转臂、转轴、摆杆五部分组成。

图2.1旋转倒立摆示意图

2.2.2倒立摆原理

图2.1中,电机轴竖直放置并固定在支架上,旋转臂固定在电机轴上,可以在水平面内360°

旋转,摆杆通过转轴连接在旋转臂上,可以在竖直平面内360°

旋转。

摆杆与旋转臂连接处有一个角度传感器,可以检测摆杆的实时角度。

假如此时摆杆朝一个方向倾斜,控制器会采集此时的角度值并然后通过一定的算法控制控制电机转动带动旋转臂朝摆杆倾斜的方向转动,抵消摆杆倾斜的趋势,就可以使摆杆保持竖直向上倒立。

PWM

角度

速度

电压

图2.2倒立摆控制流程图

如图2.2是倒立摆控制流程图,输入信号是霍尔角度传感器的角度值和电机的转速,输出信号是PWM,PWM经过驱动板后变成一个电压信号控制直流电机的转速,直流电机的转速又会改变摆杆的位置,从而霍尔传感器的角度值随着电机转速变化而变化。

这样就形成了一个控制环。

2.2.3组件选型

(1)角度传感器

角度传感器选用霍尔角度传感器[6]。

常用角度传感器有四种,第一种是加速度计陀螺仪,第二种是编码器,第三种是精密电位器,第四种是霍尔角度传感器。

其中,加速度计陀螺仪误差相对较大而且需要较复杂的滤波及融合算法一般用于惯性导航系统中。

编码器将角度量转化为了数字信号,相对于加速度计陀螺仪来说精度更高,使用更简便。

但是也是由于它的高精度和使用简便的特性,它的制造过程相对更加繁琐,价格也就相对高一些。

尤其在倒立摆系统中我们希望传感器更加小,更加轻。

在同等体积情况下编码器的价格高出其他传感器很多。

精密电位器制造简单,价格便宜,但是由于它不是360°

有效,所以在倒立摆系统中也不是较好的选择。

霍尔角度传感器原理简单,且没有加过多的信号处理所以价格便宜,体积小。

(2)电机

对于倒立摆的应用,电机选型有几个要点:

变速平滑性好;

扭矩高;

电压死区小;

机械间隙小[7]。

谐波减速电机都能满足这些要求,所以电机选用谐波减速电机。

(3)控制器

控制器选用STM32F103ZET6单片机。

这款单片机有512K的flash存储器和64K的RAM存储器,主频最高可达72MHz。

它有112个IO口,21个AD转换通道[8],11个定时器。

价格方面,STM32F103C8T6零售价格大概6元每片,STM32F103ZET6大概20元每片。

与51系列单片机相比STM32的性能更高,但是价格与51单片机相差不多。

相比于K60等高性能的单片机相比价格低得多。

2.2.4控制算法

随着控制技术的发展,控制理论经过了经典控制、现代控制的发展阶段,其理论技术已经相当完善,并得到了广泛应用[9]。

然而,经典控制和现代控制都需要被控制对象能够建立数学模型。

而对于不能建立数学模型的系统,就无法用常规的控制理论对其进行定量的分析、计算和控制。

因此,智能控制孕育而生,蓬勃发展,已进入工程化、实用化阶段[10]。

PID控制方法结构简单,稳定性好,可靠性高,尤其适用于可建立精确数学模型的控制系统。

在控制理论和技术飞速发展的今天,工业过程控制仍大部分采用PID控制方法。

由于PID算法的参数可以通过经验和现场调试得到,所以非常适用于倒立摆这样的系统[11]。

3硬件电路设计

3.1原理图设计

3.1.1电源模块

大功率用电器的供电采用开关型电源芯片LM2596,最大可以提供3A的电流。

传感器这类对电源波纹要求高的用电器采用LM2940这款芯片。

LM2940是一款LDO电源芯片,它的最小压差小于0.8V,最大Iout可以达到1A。

输出电流为100mA时dropoutvoltage的典型值为110mV[12]。

由于stm32f103单片机是3.3V供电。

而且,像LM1117这类线性稳压芯片由于其特殊的工作原理(线性稳压器将多余的能量通过热能的方式释放掉,在压差比较大的场合由于多余能量更大,所以稳压器发热特别严重。

在压差达到一定程度芯片散热不及时甚至会损坏芯片),不适用于压差较大的场合。

所以,单片机的供电采用多级稳压的方式。

在LM2940的5伏稳压基础上上再加一个M1117-3.3伏的稳压芯片。

LM1117是一个低压差线性稳压器,在Vout为1.2伏时,Iout为八百毫伏的情况下它的压差仅为1.2伏。

此外,LM1117还提供电流限制和热保护。

图3.1电源模块

图3.1为电源模块电路,电源模块包括一个LM2596可调稳压电路,一个LM2940-5V稳压电路,两个经LM2940稳5V后通过LM1117稳到3.3V的稳压电路。

该电源模块将单片机系统的系统电源与外设电源隔离开。

不会因为外部模块功率过大导致单片机系统的供电电压不稳。

提升了系统的稳定性。

当外部供电电源电压太高时,如直接供给LM2940或LM1117这些电源芯片。

由于压差太大,芯片发热会很严重,严重的时候甚至会烧坏芯片。

此时,可以先通过LM2596将电压降低后供给这些芯片。

3.1.2按键模块

按键模块采用小封装DIP2按键,节约了板子空间,并且DIP封装的按键更加牢固对于按键这类需要较强机械强度的元件来说是较好的选择。

图3.2为按键电路。

图3.2按键模块

3.1.3USB转TTL模块

调试过程常需要控制板与计算机进行信息交互,常用的通信方式是UART通信。

但是,由于计算机的电平与单片机的电平不匹配,所以需要设计一个电平转换电路,以实现控制板与计算机的通信。

常用的电平转换电路是利用CH340芯片设计的。

有了电平转换电路,控制板只需要接一根数据线就可以实现与计算机的串口通信。

如图3.3所示为USB转TTL电路。

CH340外部电路简单,只需要一个时钟电路,V3电源口接一个103电容,电源引脚接一个去耦电容就可以正常工作。

在该系统中将STM32单片机的5组串口通信引脚都通过排针与CH340串口引脚相连。

通过短接帽我们可以实现主控芯片任意串口与计算机之间的串口通信。

图3.3USB转串口模块

3.1.4单片机最小系统

图3.4是STM32主控芯片的最小系统电路图。

根据STM32单片机官方应用手册说明书上所述,STM32单片机各组电源引脚都需要一个104pF左右的去耦电容。

并且在VDD3引脚上还要加个总的4.7uf-10uf的滤波电容。

VDD_A引脚必须接一个1微法的钽电容和0.1微法的陶瓷电容。

Vbat引脚在没有电池供电的情况下需要接到VDD端,并且加一个0.1uf的去耦电容。

VREF引脚可以直接接VDD_A,如果接单独的参考电压需要在该引脚接一个10nf和一个1uf的电容。

图3.4单片机最小系统

STM32单片机是低电平复位,且复位引脚自带上拉电阻。

所以外部复位电路可以不用外部上拉,参考手册的设计图也没有加上拉(见图3.5),不过考虑到许多开发板设计公司都将外部上拉加上我们也加上了外部上拉。

图3.5官方应用手册复位电路

STM32单片机有两大类程序下载方式,一类是串口下载,另一类是仿真器下载如jtag,SW。

不同的下载方式需要不同的启动方式设置。

串口下载需要启动系统内存,仿真器下载启动用户闪存。

STM32有两个启动方式设置引脚BOOT0和BOOT1。

设置方式见表3.1启动模式设置。

由于本控制板采用jlink下载,所以直接采用用户闪存启动模式。

两个启动模式设置引脚都下拉。

表3.1启动模式设置

BOOT模式选择引脚

启动模式

别名

BOOT0

BOOT1

X

用户闪存

用户闪存被选作启动区

1

系统内存

系统内存被选作启动区

嵌入式SRAM

根据硬件参考手册中外部时钟参考电路如图3.6所示,单片机外部时钟有两种方式,外部时钟输入和外部晶体/陶瓷共鸣器作为时钟电路。

图3.6外部时钟电路

在外部源模式下,必须提供一个外部时钟源。

当OSC32_OUT引脚为高阻态时,这个50%占空比的时钟信号必须驱动OSC32_IN引脚。

在外部晶体/陶瓷共鸣器模式下,LSE晶体选用32.768KHz的晶体或陶瓷共鸣器。

晶体/共鸣器和加载电容要尽可能的接近引脚,这样使输出失真和启动稳定时间减小到最小。

3.1.5隔离USB转TTL

在调试过程中发现当控制板与计算机进行通信时,角度传感器的信号会被工频信号干扰。

但是,在调试过程中必须将控制板的各项参数发送到计算机让我们直观的看出来。

为了隔离计算机对控制板的信号干扰,设计了一个隔离型的USB转TTL模块。

图3.7。

该模块还是采用CH340芯片作为电平转换芯片,采用TLP118高速光耦进行通信的隔离,隔离端采用B0505S隔离电源模块供电。

图3.7隔离USB转TTL模块

3.2PCB版图设计

利用DXP软件对上述原理图进行版图设计。

图3.8所示是控制板的PCB版图,将电源模块总的放在一起,与其他电路隔离开来,在空旷的地方用过孔将顶层敷铜和底层敷铜连接起来,减小地阻抗。

图3.9是隔离USB转TTL模块PCB版图,版图中间有一个绝缘隔离带,能更好的隔离信号的干扰。

图3.8控制板PCB版图

图3.9隔离USB转TTL模块PCB图

为了直观的看出PCB板的效果图,制作每个元件的3D封装库,利用3D封装库画出PCB版图。

如图3.10为控制板3D效果图,图3.11为隔离USB转TTL模块3D效果图。

利用3D效果图,可以检测各个器件是否摆放合理。

图3.10控制板PCB3D效果图

图3.11隔离USB转TTL模块3D效果图

3.3电路调试

控制板焊接完成后,对其性能进行了测试。

经检测LM2596-ADJ电源芯片的输入为7.6伏,输出为可调电压,波纹在80毫伏以内。

LM2596-5电源芯片输入为7.6伏,输出5伏,波纹70毫伏以内。

LM2940芯片输入7.6伏输出5伏,波纹小于50毫伏。

LM1117芯片输入电压为5伏输出电压为3.3V,纹波小于50毫伏。

各个电源都可以正常工作,且性能较好。

该控制板的单片机的复位部分有问题,有时出现无法复位的情况。

上电后,或复位后单片机不工作。

经过分析,发现该电路板单片机的电源线较长,且有多个过孔。

导致了电源上电到稳定的时间过长,上电时复位失败,单片机不工作。

STM32F103内部带有可编程电压监测器(PVD)。

在供电电压下降到给定的阀值以下时,PVD产生一个中断,通知软件做紧急处理。

当供电电压又恢复到给定的阀值以上时,也会产生一个中断,通知软件供电恢复。

表3.2给出的PVD特性和图3.12PVD/POD的波形图中可以看出,假如电源上升时间非常缓慢在电源达到1.92V时触发了PVD延时2.5mS后复位,但是此时电源还没有达到单片机的最低可靠工作电压,复位将失效。

表3.2PVD特性

Symbol

Parameter

Conditions

Min

Type

Max

Unit

PVD迟滞

-

mV

上电/掉电复位阈值

下降沿

1.8

1.88

1.96

V

上升沿

1.84

1.92

2.0

PDR迟滞

40

复位迟滞时间

2.5

4.5

mS

图3.12PVD/POD波形图

经检查,发现由于单片机的电源线过长,过孔过多,导致电源上电太慢。

4PID算法仿真

PID调节器是一种线性调节器,图4.1所示是PID算法的原理框图。

它将输入信号r(t)与输出信号c(t)的偏差形成的P项、I项、D项经一定增益构成控制量,对控制对象进行控制。

图4.1PID算法原理框图

PID方程:

(4-1)

其中:

为比例项系数

为积分项系数

为微分项系数

4.1建立PID控制器模型

根据方程4-1得到,PID控制器由P,I,D三部分组成。

比例项由增益器组成,积分项由增益器和积分器组成,微分项由增益器和微分器组成。

输入信号经过P,I,D三路后叠加起来得到输出。

图4.2PID控制器

如图4.2是PID控制器的模型图所示,输入信号为IN,IN输入后经过了3条路线。

第一条,IN被KP增益,KP代表比例项系数。

第二条,IN的积分后被KI增益,KI代表积分项系数。

第三条,IN的微分被KD增益,KD代表微分项系数。

输出OUT等于这三条路的输出之和。

4.2建立PID仿真模型

图4.3为PID仿真模型图。

输入信号是一个阶跃信号,经PID控制器处理后传入传递函数

中得到的输出又反馈回到PID控制器输入,形成一个负反馈。

图4.3PID仿真模型

4.3PID仿真

通过PID仿真可以更清楚的了解PID各项参数的意义,以及他们对控制系统的作用和影响。

4.3.1P项仿真

比例项是偏差的比例。

用过设置PID控制器里的增益模块的值可以修改P项的系数。

分别用示波器显示出P=0.5,P=1,P=5,P=8的输出波形图。

并将示波器的波形参数保存至工作区间。

然后手动将工作区间保存的数据取出,通过Plot函数将多个波形图放至一个图中。

方便我们比较。

从图4.4P项仿真图图中我们可以明显的看出随着P的增大,输出曲线取向稳定值的速度变快。

也就是反应变快。

但是,当P大于1之后,所有的曲线都产生了超调的现象。

P>

5时产生振荡,在P=8时甚至产生了严重的振荡,直到仿真时间达到也没有稳定的达到目标值。

图4.4P项仿真图

4.3.2I项仿真

积分项是偏差的积分。

在I项仿真时我们控制P项为0.5。

仿真出KI=0.2,KI=0.5,KI=0.8,KI=1的输出波形图。

与P项仿真同样将波形图的波形数据保存到工作区间,把多个波形图放到一个图片中比较。

图4.5I项仿真图

从图4.5I项仿真图中可以明显的看出I=0.2时到达稳定状态的时间非常长。

当I项大于0.8时产生了振荡现象。

综合考虑得出结论,I项越大调节速度越快,但是I项过大也会产生振荡现象。

因为I项是长时间的积分,也就是偏差的累加。

随着曲线从0开始上升,偏差error在不停的减小,也就是P项的输出减小,但是偏差error的积分却在不停的变大,也就是I项输出值不停的变大,I项调节速度变快。

由于I项的调节速度相当快,当I项的系数大于一定值时,会产生过冲。

当I项系数更大时会产生第二次过冲,第三次过冲......。

4.3.3D项

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 从业资格考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1