你的位置:首页 > 互连技术 > 正文

技术控做的玩具就是酷:基于FPGA的小车跷跷板平衡控制系统设计

发布时间:2015-09-01 责任编辑:susan

【导读】本项目基于FPGA,设计小车跷跷板平衡控制系统,前期已经做好了充分的理论准备工作,本文接着详解其实施方案,一起来看看方案的可行性。

本项目基于FPGA,以FPGA为核心,制作一个电动小车控制器,使小车能够自动沿一个宽30cm,长160cm的翘翘板寻迹行驶,并能调节小车位置使翘翘板倾斜某一设定角度,保持静止平衡。当另有外力使翘翘板失衡时,小车自动寻找新的平衡点,使翘翘板重新达到平衡。如图1、图2所示。系统静态误差小于1度,超调量小于10%。项目制作中,将通过理论研究和反复实验对控制算法和控制参数进行优化力求达到最快调节速度和最小误差,为控制工程提供一个真实的物理仿真实验装置。
 
图一
 
图二
 
 
目前的进展情况:
 
本项目于前期已做了较为充分的理论准备工作,经过理论推导,建立了受控对象和控制系统的数学模型,研究和比较了系统的相关控制算法。项目车体部分、光电传感器部分、电机驱动部分、角度传感器部分、信号调理放大电路、电机驱动电路、系统供电电路等部件均已设计制作完成,有关的外围电路印制板也已焊接调试成功,并分别通过调试。目前正在对系统进行优化和改进,并着手编写程序,待获得FPGA开发平台后,即可开始程序调试及系统联调实验。
 
项目关键技术及创新点的论述:
 
本项目的关键技术在于利用FPGA的快速数据处理功能和丰富灵活的接口资源,建立一个能对小车翘翘板系统进行控制的硬件平台,在此基础上研究各种控制算法,应用实验平台对控制算法进行验证,对翘翘板的非稳定平衡状态进行有效的控制,使之处于平衡静止状态并能够保持。本项目的受控对象是一个非线性高阶系统,在控制领域中是人们感兴趣而又难以被控制的过程,其相关研究结论可应用于飞行器姿态控制、机器人平衡控制等方面,涉及非线性信号处理、非线性控制、控制参数自动优化等技术。
 
本项目的创新点在于,把FPGA的高速并行数据处理特性综合应用到了一个在控制领域中人们所感兴趣而又难以被控制的非稳定受控过程中,利用FPGA为控制系统研究提供了一个通用性好,廉价而实用的实验平台,为理论研究结果建立一个实验物质条件,增强理论和实践的相结合。同时,该项目富有趣味性和知识性,可以激发更多电子爱好者的兴趣,扩大FPGA的应用层面。
 
技术成熟性和可靠性论述:
 
小车平衡态的控制类似于倒立摆,但又有所不同。倒立摆控制已经有较多的研究,并已应用于机器人平衡,飞行器姿态控制等。理论和实践都证明系统是可实现的。小车的控制采样周期大约毫秒数量级就可满足基本要求,所以,FPGA的速度完全可以满足要求。而FPGA所具有的灵活的逻辑组合配置,足以完成小车运行所需要的控制逻辑和运行协调。系统所使用的各传感器及其信号调理电路已经调试成功。这些先行工作和已成熟技术为系统的成功实现提供联保证条件。在可靠性方面,系统各部件之间的连接将采用高可靠的连接器件,并用热封胶密封,机械紧固件采取锁紧措施。由于系统不与外界电气连接,不存在共模电压干扰,因此不考虑使用光电隔离。在软件方面,采用看门狗定时器,保证系统程序跑飞后能够自动恢复运行。
 
图3
 
项目实施方案
 
1.方案基本功能框图及描述
 
系统框图如图3所示,主控循环程序每隔一个采样周期从FPGA接口中读取各个传感器的数值,并经过处理后获得小车的运行状态,根据小车的当前状态采取相应的控制算法计算出电机所需的控制电压值,进而,该控制电压值经过PMW处理后输出到小车驱动电机,使小车按照希望的规律运动。为了使程序流程清晰简洁,框图中以一个标志信号来记录小车所运行的阶段,控制器则根据小车所处的运行阶段进行相应的控制。
 



 
 
2.需要的开发平台
 
根据本系统所需达到功能要求和性能要求,系统需要完成传感器模拟量的数据采集和光电传感器电平数据的采集,需要对采集的数据进行处理和输出,需要对小车的状态进行判断和控制等。Spartan-3E芯片(XC3S500E-4FG320C)具有速度高,接口丰富等特点,根据系统要求和所要完成的功能,Spartan-3E芯片(XC3S500E-4FG320C)配以相应的开发环境,完全可以完成系统控制要求,且价廉实惠,开发过程快捷,简单易行。为了能够使用Spartan-3E初级板,本项目需要与Spartan-3E初级板相配套的开发软件和编译调试工具和环境。
 
3.方案实施过程中需要开发的模块
 
在本方案中需要研制、开发的功能主要模块,以及开发的方式
 
本方案中,所要研制的硬件模块包括:1)寻迹用红外光电传感器模块及其波形整形电路,2)用于检测小车运行位移和速度的红外光电编码器模块,3)用于为不同元件提供不同电压的电源变换模块,4)用于检测小车倾角的角度传感器信号调理模块,5)用于驱动直流伺服电机的驱动模块,6)用于显示系统状态和输入指令的人机界面模块,7)AD转换模块,8)碰触检测模块,8)在扩展功能中,用于扩大检测小车状态的视频处理模块,等等。
 
软件系统中也按模块编程,包括:1)人机交互模块,2)电机驱动PWM运算模块,3)平衡控制计算模块,4)运行轨迹寻找与跟踪模块,信号检测及标度模块,5)系统协调模块
 
4.系统最终要达到的性能指标
 
该项目将完成小车的自动寻迹和平衡控制,平衡保持时间可按照要求任意设定。小车在引导线的引导下自动登爬跷跷板,并在平衡位置达到静态平衡。从登陆跷跷板到进入平衡状态所需时间不大于20秒。系统静态误差小于1度,超调量小于10%。在基本功能实现的情况下,将进一步优化参数,提高运行速度和减少调节时间和静态误差。
 
需要的其它资源
 
1.设计输入输出功能子板
子板功能为:1)产生系统所需的各种电压,为系统各部件提供电源。2)为角度传感器提供参考电源,对角度传感器的输出信号进行放大调理,并进行AD转换,得到与角度成比例的数字信号。3)将红外光电传感器的电压信号整形为标准逻辑电平。4)将控制信号放大,为直流电机提供驱动能力。
 
子板接口为标准pin口,使用标准接插件。
 
2.测试设备
PC机、万用表、直流稳压电源、秒表、卷尺、量角器等
 
3.方针、开发工具
Spartan-3E初级板,ISE9.1,Modesim se,EDK9.1,Synplify pro,Chipscope pro9.1


相关推荐阅读:

我爱快包——电子工程师的外快钱包
要采购传感器么,点这里了解一下价格!
特别推荐
技术文章更多>>
技术白皮书下载更多>>
热门搜索
 

关闭

 

关闭