




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要随着科技进步,生活水平的提高,人们追求智能与舒适的愿望也日益强烈。从而催生了许多智能化的产品。如智能电视、智能小车等。如何实现小车的小车的自动快捷驾驶,也成为人们心中的向往与疑问,基于这种趋势与需求,着眼于实际情况。本文介绍了基于STM32单片机的自平衡小车系统的设计。系统基于陀螺仪等传感器,利用PID平衡算法,对小车的速度倾斜角度平衡状态来进行检测,并通过单片机来控制电机来实现双轮小车自如平衡地运动。从而实现小车智能自主控制的目的。关键词: STM32 自平衡 PID算法 目 录第一章设计综述31.1平衡车国内外发展现状31.2智能机器人系统设计任务概述31.3课程设计主要内容3第二章方案设计42.1机械结构方案设计42.2驱动方案选择42.3传感器的选择42.4自平衡小车的总体框图4第三章机械系统设计53.1机械系统总体方案53.2关键元件的安装53.3关键零部件结构设计6第四章控制系统设计84.1控制系统总体方案84.2运动控制器选型84.3驱动电机控制电路设计84.4传感检测外围电路设计94.5电源供电电路设计11第五章软件系统设计115.1位姿控制方案与流程115.2速度控制方案与流程125.3轨迹控制方案与流程12第六章装配与调试146.1系统调试流程与状况146.2设计创新点156.3系统缺陷与改进15第七章市场应用前景分析167.1材料清单167.2市场分析16项目心得17参考文献18第一章 设计综述近年来,随着自动控制技术的不断发展,用于载人的两轮自平衡车受到人们的高度关注。1.1 平衡车国内外发展现状2001年,美国的DeanKamen发明了世界上第一部新型、方便快捷的两轮自平衡交通工具SegwayPT。SegwayPT使用两台直流无刷伺服电机作为动力源,使用包括5个陀螺仪在内的一套复杂的传感系统实时监测小车的姿态车最高时速25km,载重能力110kg。目前,国内的飞思卡尔智能汽车竞赛使两轮车越来越受到大学生青睐,平衡车在机械、硬件、算法等方面还存在较大的发展空间。1.2 智能机器人系统设计任务概述所搭建的双轮车系统需要具备以下基本功能:1) 具备一定的自平衡能力,自动检测自身机械系统的倾角并完成姿态的调整;2) 具备一定的负载承载能力,在加载一定重量的重物时能够快速做出调整并保证自身系统的自我平衡;3) 具备速度调节能力,能够以不同的运动速度实现双轮车系统的前进、后退、左转与右转等动作;4) 具备无线通讯功能,能够实现双轮自平衡车系统的无线远程操作控制。1.3 课程设计主要内容1) 资料分析:查阅相关文献资料,对资料进行分析总结。2) 机器人总体设计:确定机器人的具体任务要求,根据任务初步拟定机器人的技术参数、运动形式、机械结构、驱动方案、传动方案、控制方案等。3) 机器人机械结构设计:将机器人分解为车身结构、机械臂和手爪等若干部分,分别对各个结构的关键部件进行详细设计并校核,绘制机器人总装图和关键零部件图。4) 传感和信息检测及信息传输:根据任务要求,完成相关信息检测、处理,并完成信息的正确传输。5) 运动控制方案设计;基于传感信息,采用单片机完成机器人控制系统硬件和软件的设计和系统调试。6) 编制课程设计说明书第二章 方案设计该自平衡小车,采用STM32单片机和各种传感器的组合,构成了自平衡小车系统。其系统主要由以下几个部分组成:单片机控制系统、陀螺仪加速度检测模块、编码器测速模块、降压模块、电机驱动模块、无线传送模块组成。22.1 机械结构方案设计小车车身采用亚克力板制成,通过铜柱贯穿链接,电机通过电机支架固定在底板上,电机与车轮通过联轴器连接,具体如图所示:图 1 小车的主视图2.2 驱动方案选择小车采用大扭矩直流减速电机,电机的驱动芯片采用具有两路独立输出的TB6612FNG驱动电机,小车的供电电源采用航模电池供电。2.3 传感器的选择测速测量:采用霍尔编码器对直流减速电机电机进行测速;倾角测量:采用MPU6050陀螺仪;距离测量:采用超声波模块对距离进行测量;轨迹测量:采用黑白线传感器对轨道进行测量。2.4 自平衡小车的总体框图自平衡小车主要由以下模块组成:单片机控制系统、陀螺仪加速度检测模块、编码器测速模块、降压模块、电机驱动模块,以下是自平衡小车系统方框图。图 2 小车的系统框图第三章 机械系统设计智能汽车各系统的控制都是在机械结构的基础上实现的,因此在设计整个软件架构和算法之前一定要对整个模型车的机械结构有一个全面清晰的认识,然后建立相应的数学模型,从而再针对具体的设计方案来调整赛车的机械结构,并在实际的调试过程中不断的改进优化和提高结构的稳定性。33.1 机械系统总体方案平衡车选用的是亚克力板作为车板分层装配而成的,选用普通的直流大扭矩减速电机,平衡车的控制采用的是双轮驱动方案。智能车的外形大致如下:图 3小车的三维图3.2 关键元件的安装车模中的传感器包括有:速度传感器、陀螺仪、超声波、以及黑白线检测传感器。下面分别介绍这些传感器的安装尺寸。1.2.3.3.1.3.2.3.2.1 电机的安装电机通过配套的电机支架通过螺钉固定带电机支架上,电机支架通过螺栓连接在底板上,具体如图所示:图 4 电机连接的方案图3.2.2 超声波模块超声波模块主要应用声波进行测距,安装的位置位于车体中线,方向向前。通过胶带固定于车体上。3.2.3 黑白线传感器安装于车体下部,安装两个,对称安装于车体的中线两侧,距离根据轨道的线宽自行调节。3.2.4 陀螺仪安装陀螺仪安装在电路1上,陀螺仪的x轴与小车的前进方向相同,y轴与两轮的轴线平行,z轴为小车转动的轴线,方向向上。3.2.5 电池安装电池应该安装在车体偏下的位置,车体容易保持平衡。3.3 关键零部件结构设计3.3.3.3.1 小车底板的设计小车的底板承担小车主体的全部重量,并且他可以固定电机支架,功能较多,结构复杂,具体如图所示:图 5 下底板的二维3.3.2 上顶板的设计上顶班主要起封装作用,功能较为简单,具体尺寸如下:图 6 上顶板的二维设计图纸第四章 控制系统设计44.1 控制系统总体方案控制系统的输入包括角度检测、速度检测、距离检测、轨迹检测,平衡车的输出包括电机驱动,以及串口的输出显示,具体关系如下图所示:图 7 系统总体控制系统框图4.2 运动控制器选型平衡车采用STM32作为运动控制器,STM32的配置非常强大,具有较多的中断入口,而且价格较为便宜。具体使用如下表所示表 1 运动控制器的内部资源配置STM32内部资源作用TIM1用作定时器中断TIM2左轮的编码器输入捕捉TIM3产生PWM波TIM4右轮的编码器的输入捕捉EXTI2左侧的黑白线传感器触发EXTI4右侧的黑白线传感器触发USAR1和电脑通信USAR3和无线模块同信4.3 驱动电机控制电路设计直流电机芯片的十分重要,它可以起到电机转向、转速的控制,并且可以防止启动电流过大对单片机的影响。具体接法如下图所示:图 8 电机驱动芯片与电机单片机的连接示意图芯片以A相为例的真值表:表 2 直流电机的驱动芯片的真值表AIN2AIN1AO2AO1状态+-+-正转-+-+反转+抱闸-停止4.4 传感检测外围电路设计4.4.1.4.2.4.3.4.4.4.4.1 超声波模块接口电路设计超声波模块主要应用于距离的测量,占用单片机的IM2,具体接线方案如下:图 9超声波模块的接线方案4.4.2 无线模块接口电路设计无线模块采用CC1100作为接口芯片,占用单片机的串口3,具体电路设计如图所示图 10 无线接口的电路接线方案4.4.3 陀螺仪接口电路设计陀螺仪采用IIC协议与单片机进行通讯,具体接线方式采用下图所示:图 11 MPU6050的接线方案设计其中,只用到4个引脚,其余引脚不接。4.4.4 黑白线检测传感器的接口电路设计黑白线用于轨迹线的检测,具体接线方法如图所示:图 12 黑白线的接线方案设计4.5 电源供电电路设计整个系统的电路共需三种电压的电源(12V、3.3V、5V),电池的供电电压为12V,然后用降压模块分别降到3.3V、5V。图 13 电源管理接线图表 3 电源分配管理表电源电压模块12V电机驱动模块5V超声波模块、蓝牙模块3.3V单片机、黑白线检测模块、无线模块、陀螺仪第五章 软件系统设计55.1 位姿控制方案与流程姿态的控制采用陀螺仪构成负反馈,控制车保持直立状态,具体控制原理如图所示:图 14 姿态控制的PID原理图5.2 速度控制方案与流程速度的控制采用编码器构成真反馈,控制小车在原地维持静止,具体控制原理图如下所示:图 15 速度控制的原理图5.3 轨迹控制方案与流程轨迹控制采用两种方案:方案1,基于无线模块的手动控制,方案2,基于单片机外部中断的自动控制。5.5.1.5.2.5.3.5.3.1 无线控制无线控制采用无线手柄对平衡小车进行控制可以实现小车的前进后退,左右转弯,操作简单易于实现,智能水平较低。图 16 无线控制主程序的流程图图 17 无线串口中断控制流程图5.3.2 自动轨迹控制基于黑白线循迹的轨迹控制,通过黑白线提供反馈信号来控制,小车的轨迹,基本能实现小车沿预定轨迹移动的目的。图 18 自动循迹主程序图 19 自动循迹的终端程序第六章 装配与调试66.1 系统调试流程与状况通过VB设计的上位机,对系统的PID参数进行了优化,并通过Matlab对采集的数据进行处理。图 20 VB的上位机控制台图 21 Matlab速度控制数据实时采集6.2 设计创新点相对市面上的平衡车,我们主要作出如下改进和创新:a) 基于重力感应控制小车的前进后退;b) 具备循迹避障功能。6.3 系统缺陷与改进a) 小车的稳定性还未达到最高;b) 小车循迹时的速度较低;c) 小车的速度控制能力还有待提高。第七章 市场应用前景分析77.1 材料清单表 4小车的材料及其成本7.2 市场分析目前市面上的类似产品,主要有飞思卡尔智能平衡车和平衡小车之家的平衡车,据调查,飞思卡尔智能车的研发成本需上2000到3000元,平衡小车之家的平衡车造价在500元,以上,比较同类产品,我们的产品具备绝对的价格优势,但比较飞思卡尔智能汽车,我们的小车在平衡稳定性、速度上差距较大,同平衡小车之家的平衡车相比较,我们的平衡车,在系统的稳定性稍微逊色点。项目心得通过这次二级项目我学会了很多专业必备的知识技能,这也将会是我今后学习以及工作的宝贵财富。有些基础知识掌握的不是很到位,并且,在自己感觉相对简单的知识点方面,本以为自己已经掌握了,但是,当真正拿到手亲身做的时候,就会发现很多问题,因此,在今后的学习及生活中,也要克服自以为是的坏毛病,亲身实践去获取所需,要取长补短,三人行,必有我师。 孔志飞 通过二级项目使我认识到:第一、上课必须要认真听讲,下课及时复习,这样才不至于使自己到用的时候着急。第二、我还认识到了机器人技术在机械控制领域的重要性,从而激发了我对这一方面学习的兴趣。第三、培养了我严谨务实的工作作风,以及对查阅资料、总结归纳能力的重要性的认识,对我以后的工作学习有了很大的帮助和启迪。 潘敬波回想我们这次项目的过程,可以说是难易并存的。难在将所学知识的综合与归纳,易在我们能过找到很多参考资料。所以此次项目对于我们来说,既是一次小小的挑战,又是对我们所学知识的测验。 张静波在这次项目中最深刻的印象还是对专业知识的精通。在这个过程中出现了很多的问题,在同学们的齐心协力下一个一个地克服了,团队的努力以及来自其他同学的帮助让我们顺利的完成了此次项目。再次我对团队成员以及其他给予帮助的同学表示感谢! 邓景聪参考文献1 刘军,张洋,严汉宇.原子教你玩STM32.北京航空航天大学出版社,2013年.2 刘杰.机电一体化技术基础与产品设计,冶金工业出版社,20033 熊有伦.机器人技术基础,华中科技大学出版社,19954 邵时.微机接口技术(第二版).北京.清华大学出版社,2008.1:63-925 杨立.微机原理与接口技术.天津.天津大学出版社,2010.16 李林功,吴飞青,王兵,丁晓.单片机原理与应用,机械工业出版社20071附录实物照片:图 22 小车实物照片图 23遥控手柄照片主函数程序:#include sys.hu8 Way_Angle=2; /获取角度的算法,2:卡尔曼 可以改成3 即互补滤波,但是在顶配版程序中无法使用DMP,因为时序和超声波有冲突 u8 Flag_Qian,Flag_Hou,Flag_Left,Flag_Right,Flag_sudu=2; /蓝牙遥控相关的变量u8 Flag_Stop=1,Flag_Show=1; /停止标志位和 显示标志位 默认停止 显示打开int Encoder_Left,Encoder_Right; /左右编码器的脉冲计数int Moto1,Moto2; /电机PWM变量 应是Motor的 向Moto致敬int Temperature; /显示温度int Voltage; /电池电压采样相关的变量float Angle_Balance,Gyro_Balance,Gyro_Turn; /平衡倾角 平衡陀螺仪 转向陀螺仪float Show_Data_Mb; /全局显示变量,用于显示需要查看的数据u32 Distance; /超声波测距int main(void) Stm32_Clock_Init(9); /系统时钟设置delay_init(72); /延时初始化JTAG_Set(JTAG_SWD_DISABLE); /=关闭JTAG接口JTAG_Set(SWD_ENABLE); /=打开SWD接口 可以利用主板的SWD接口调试LED_Init(); /初始化与 LED 连接的硬件接口KEY_Init(); /按键初始化OLED_Init(); /OLED初始化uart_init(72,115200); /初始化串口1uart3_init(36,9600); /串口3初始化Adc_Init(); /ADC初始化MiniBalance_PWM_Init(7199,0); /=初始化PWM 10KHZ 高频可以防止电机低频时的尖叫声#if MODE_BIZHANG=1 TIM2_Cap_Init(0XFFFF,72-1); /=如果MODE_BIZHANG置1,则把TIM2初始化为超声波接口 然后不采集左路编码器,通过右路编码器近似左路车轮速度#else Encoder_Init_TIM2(); /=如果MODE_BIZHANG置0,则把TIM2初始化为编码器接口#endifEncoder_Init_TIM4(); /初始化编码器2 IIC_Init(); /模拟IIC初始化 MPU6050_initialize(); /=MPU6050初始化DMP_Init(); /初始化DMP /NRF24L01_Init(); /=NRF24L01模块初始化/ccd_Init(); /初始化线性CCD接口/ NRF24L01_FindMyself(); /=NRF24L01自检程序 没通过就死在这是闪灯 Timer1_Init(49,7199); /=5MS进一次中断服务函数while(1)/CCD(); /线性CCD驱动/NRF24L01(); /收发模式可通过该函数内部的变量mode设置,0:RX模式 1:TX模式#if MODE_BIZHANG=1 Read_Distane(); /BIZHANG_MODE=1才能读取超声波#endif if(Flag_Show=1) /使用MiniBalanceV3.5 APPdelay_ms(500);/延时减缓数据传输频率,确保通信的稳定 APP_Show();else /使用OLED显示屏和PC端串口调试助手Temperature=Read_Temperature(); /=读取MPU6050内置温度传感器数据,近似表示主板温度。oled_show(); /=显示屏打开 printf(平衡倾角%f 左轮编码器%d 右轮编码器%d 电池电压%dmVrn,Angle_Balance,Encoder_Left,Encoder_Right,Voltage);/向上位机发送数据delay_ms(100);/延时减缓数据传输频率,确保通信的稳定 Matlab程序:clcclear alla=serial(com2);a.BaudRate=9600;a.ReadAsyncMode=continuous;a.BytesAvailable;fopen(a);ticfor ii=1:1:400% pause(0.01); A(ii)=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年皖南医学院第二附属医院招聘28人模拟试卷完整答案详解
- 2025呼伦贝尔扎兰屯市教育系统“校园引才”模拟试卷(含答案详解)
- 2025福建福州市体育工作大队招聘食堂小工2人模拟试卷及答案详解(必刷)
- 2025广东清远市英德市招聘教师222人(编制)考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025北京顺义区北务镇卫生院招聘编外人员3人考前自测高频考点模拟试题有答案详解
- 2025湖南怀化学院高层次人才招聘100人模拟试卷及答案详解(必刷)
- 2025内蒙古鄂尔多斯市中心医院引进高层次人才97人模拟试卷带答案详解
- 2025年浙江大学医学院附属第二医院招聘药剂师1人考前自测高频考点模拟试题及完整答案详解1套
- 2025江苏苏州工业园区天域幼儿园教学辅助人员招聘1人模拟试卷完整参考答案详解
- 2025昆明市第二人民医院融城老年病医院(5人)模拟试卷附答案详解(黄金题型)
- 《孤独的小螃蟹》课件
- 0-9任意四位数手机密码排列组合全部数据列表
- 吉林省长春市长春实验中学2024-2025学年高一上学期第一次月考数学试题(无答案)
- 草莓种植课件-幼儿园大班
- 历届中国数学奥林匹克(CMO)试题集(1986-2019)
- 中药新药研发与创新
- 联化科技(临海)有限公司年产800吨二酰胺酯、500吨甲氧苯硼酸、1000吨LT228等九个项目环境影响报告
- 丽江区域地质报告 -报告
- 偏瘫患者业务查房课件
- JJG 1036-2022电子天平
- 杆塔基础分坑
评论
0/150
提交评论