基于stm32的智能循迹小车的设计

上传人:沈*** 文档编号:134913045 上传时间:2022-08-14 格式:DOC 页数:12 大小:8.44MB
收藏 版权申诉 举报 下载
基于stm32的智能循迹小车的设计_第1页
第1页 / 共12页
基于stm32的智能循迹小车的设计_第2页
第2页 / 共12页
基于stm32的智能循迹小车的设计_第3页
第3页 / 共12页
资源描述:

《基于stm32的智能循迹小车的设计》由会员分享,可在线阅读,更多相关《基于stm32的智能循迹小车的设计(12页珍藏版)》请在装配图网上搜索。

1、燕山大学课 程 设 计 说 明 书题目:基于STM32的智能循迹小车的设计学院(系): 理学院 年级专业: 12级智能传感器 学 号: 120108040006 学生姓名: 贺红红 指导教师: 杜会静 徐超 教师职称: 副教授 讲师 燕山大学课程设计(论文)任务书院(系): 理学院 基层教学单位:12级智能传感器 学 号120108040006学生姓名贺红红专业(班级)12级智能传感器设计题目基于STM32的智能循迹小车的设计设计技术参数 设计参数: 以SMT32作为主控制器,由红外传感器作为检测工具,两者相辅相成,控制电机电机转动。 设计要求1. 按要求组装好小车,编写程序,使得小车按下按键

2、后停两秒自启,并沿着黑胶带行驶,到达终点线后停止。2. 在满足1的条件下,调试小车,使小车走的快而稳。工作量 15个工作日 平均每个工作日约8小时工作计划 2015/6/27-2015/7/1 焊接STM32开发板,组装小车。2015/7/2-2014/7/10 学习STM 32开发板的使用,进行编程练习。调试小车2015/7/11 课设结题答辩。参考资料1控制电机 杨渝钦2 STM32系列ARM Cortex-M3微控制器原理与实践王咏虹 徐炜 郝立平3Cortex-M3嵌入式处理器原理与应用范书瑞4电子元器件与实用电路基础韩广兴指导教师签字基层教学单位主任字说明:此表一式四份,学生、指导教

3、师、基层教学单位、系部各一份。年 月 日 基于STM32的智能循迹小车的设计贺红红 理学院12级智能传感器摘要:主要分析了基于STM32的小车控制系统的设计过程,此系统主要包括STM32控制器、按键控制电路、电机驱动电路、红外探测电路等。以STM32为主控芯片及其外围扩展电路实现系统整体功能,用红外探测电路实现小车循迹功能,小车速度由PWM波控制,控制电动小车的速度及转向,从而使小车顺利通过直线,虚线,十字路口,S弯,实现循迹功能。在硬件设计的基础上实现了电机控制功能,LED显示功能,以及小车简单循迹的软件设计方案。关键字: STM32 电机 传感器 PWM KEILDesign of int

4、elligent tracking car based on STM32 Abstract:. Mainly analyzes the design process of the car control system based on STM32, this system mainly includes the STM32 controller, button control circuit, motor drive circuit, infrared detection circuit, etc. STM32 as main control chip and extend the perip

5、heral circuit to realize the whole system function, the function of infrared detection circuit is used to implement the car tracking, vehicle speed is controlled by a PWM wave, control the speed of the electric car and steering, which makes the car pass straight line, dotted line, intersection, S be

6、nding, realize the tracking function. On the basis of the hardware design to realize the function of motor control, LED display function, and software design scheme of simple car tracking.Keywords:STM32、 The motor、 The sensor、 PWM、 KEIL.学习目的 1. 学习STM32工作原理及使用方法; 2. 学习计算机程序设计; 3. 学习编程并掌握软件调试。二二二年八月十四

7、日学习软件Keil uVision、串口猎人学习任务学会利用STM32和红外线传感器设计智能循迹小车一、 引言智能车辆作为智能交通系统的关键技术之一,是许多高新技术综合集成的载体。它体现了车辆工程、人工智能、自动控制及计算机技术于一体的综合技术,是未来汽车发展的趋势。本文提出了一个基于STM32芯片为控制核心,附以红外传感器采集外界信息的智能小车系统设计方案。充分利用该芯片高速运算、处理能力,来实现小车自动识别路线按迹行走,自带的PWM输出功能,调节占空比来调节电机的转速。通过模糊控制和PWM脉宽调制技术的结合,提高了对车位置控制精度。智能循迹小车组装组装步骤:一、 第一步:电路部分基本焊接二

8、、 电路焊接部分比较简单,焊接顺序按照元件高度从低到高的原则,首先焊接8个电阻,焊接时可用万用表确认阻值是否正确,焊接有极性的元件如三极管、LED指示灯、电解电容、芯片务必分清楚极性尽量参考图片的元件方向焊接,焊接时间不能太长否则容易焊坏。初步焊接完成后请务必细心核对,防止粗三、 提供的小车元器件有小车主板,电机,STM32芯片,红外传感器,电池插座,螺丝螺母,电池,车轮,排线等。按照说明书及图片安装小车,其中有一点与说明书不同:按照正常把电机与车轮装在主板上,但是此时,小车前排传感器与电机和车轮较近,这对反应时间有很大的影响,这时我们就会把电机反过来装,这样距离较远,调整反应时间,小车会走的

9、相对较稳。组装好的小车如下图所示:图 1.小车正反面二、 传感器检测模块 小车上装有红外传感器,当小车在地面行走时,黑胶带地面对光的反射程度不一样,根据反射光的强弱分辨出是地板还是黑胶带。黑胶带检测是小车研究中重要的一部分,红外传感器相当于小车的眼睛,其探测视角小,方向性强,只对红外线具有较高灵敏度,从而避免了外界光线的干扰;跑道黑带能够吸收红外线,而白色跑道能够反射红外线,从而检测到跑道黑带。因而选用红外传感器作为小车探测器。图 2.小车检测电路 红外传感器由我们自己焊接完成,其电路如下所示: +vccInc 发射器 接受器 GND 图3.红外传感电路 三、 控制器模块 系统采用STM32芯

10、片作为循迹小车的中央控制器,完成传感器信息收集、电机控制、外部扩展等功能。STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M3内核。按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗

11、最低的产品,相当于0.5mA/MHz。本系统的核心控制板是STM32F103的最小系统,它由电源电路、实时时钟、系统时钟电路、JTAG接口电路、复位电路、按键电路、串口电路等组成。STM32如下图所示:图 3 STM32芯片图 小车前方装有五个自制的红外传感器,当红外传感器检测到地面黑线时,将该信号发送到STM32芯片,STM32芯片通过控制电机来控制轮子的转速,从而使小车实现直走、转弯、停止等功能。这样就达到了小车循迹的目的。四、 电机模块 电机是指依据电磁感应定律实现电能的转换或传递的一种电磁装置,或者将一种形式的电能转换成另一种形式的电能。电动机是将电能转换为机械能(俗称马达),发电机是

12、将机械能转换为电能。电动机在电路中用字母“M”(旧标准用“D”)表示。它的主要作用是产生驱动转矩,作为用电器或各种机械的动力源,我们这次使用的是L9110电机,L9110 是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件,将分立电 路集成在单片 IC 之中,使外围器件成本降低,整机可靠性提高。该芯片有两个 TTL/CMOS 兼容电平的输入,具有良好的抗干扰性;两个输出端能直接驱动电机的正反向运动,它具有 较大的电流驱动能力,每通道能通过 800mA 的持续电流,峰值电流能力可达 1.5A;同时它 具有较低的输出饱和压降;内置的钳位二极管能释放感性负载的反向冲击电流,使它在驱动 继电

13、器、直流电机、步进电机或开关功率管的使用上安全可靠。L9110 被广泛应用于玩具汽 车电机驱动、脉冲电磁阀门驱动,步进电机驱动和开关功率管等电路上。下图分别为电路图。 图 4 L9110电机电路图五、 软件编程设计 先分析工作原理和工作要求,利用小车前方的五个红外传感器探测到黑线,然后把信号发送到STM32芯片,STM32芯片通过控制电机来控制轮子的转速,从而使小车实现直走、转弯、停止等功能。这样就达到了小车循迹的目的。在这次小车的设计中,要求小车在起点时2秒自起,依次通过转弯,直行,虚线,十字路口,S弯。分析完要求后,可按照要求编写对应程序,六、 总结 在这为期15天的课程设计中,虽然时间很

14、短,但学到的东西有很多,感触也不少。首先,同为大三学生,别人却对这方面很有研究,能给我们教授知识,令人佩服,这也激发了大家的斗志。给大家很大的鼓励。另外在这次课设中学到的不仅是课本上的知识,更提高了我们的实践能力。包括焊接、贴片、组装小车等,这些在平时学习跟生活中学不到的东西,让这次课设变得更为生动有趣。除此之外,整个课设过程中,大家一起努力,大大地提高了自己的动手能力。虽然课设时间很紧,很忙碌,但这种充实感代替了疲惫感。学到了很多东西,增强了动手能力。七、 参考资料 1控制电机 杨渝钦2 STM32系列ARM Cortex-M3微控制器原理与实践王咏虹 徐炜 郝立平3Cortex-M3嵌入式

15、处理器原理与应用范书瑞4电子元器件与实用电路基础韩广兴八、 附录 void car_stay(void) /小车停止速度left_pwm=0; right_pwm=0; leftb_pwm=0;rightb_pwm=0;void go_stright(void) /小车直行速度left_pwm=40; right_pwm=40;leftb_pwm=0;rightb_pwm=0;void go_stright_slow(void) /小车慢直行速度left_pwm=30; right_pwm=30; leftb_pwm=0;rightb_pwm=0;void turn_left_slow(voi

16、d) /左转大弯速度left_pwm=20; right_pwm=27;leftb_pwm=0;rightb_pwm=0;void turn_right_slow(void) /右转大弯速度left_pwm=27; right_pwm=20;leftb_pwm=0;rightb_pwm=0;void turn_left_quick(void) /左小弯速度left_pwm=5; right_pwm=20;leftb_pwm=0;rightb_pwm=0;void turn_right_quick(void) /右小弯速度left_pwm=20; right_pwm=5;leftb_pwm=0;

17、rightb_pwm=0;void turn_back(void) /后退速度left_pwm=0; right_pwm=0; leftb_pwm=10;rightb_pwm=10;2.本次设计主程序/*Name:main.c*Discribe :*Libery edition:ST3.5.0*Writer :FS*/#include stm32f10x.h#include PWM.h#include key.h#include gpio.h#include xunji.h#include time.h/* * main * * * */ uint8_t left1,left2,mid,rig

18、ht1,right2; uint16_t left_pwm=0,right_pwm=0,leftb_pwm=0,rightb_pwm=0; uint16_t time=0,final_stay_time=0; uint32_t delay_time1=0x31450,delay_time2=0x31450;/10100ms void Delay_2s(void); void delay_(_IO u32 nCount); void final_stay(void);int main(void)KEY_GPIO_Config();TIM4_PWM_Init();Infrared_GPIO_Con

19、fig();TIM2_NVIC_Configuration();TIM2_Configuration();while(1)if(Key_Scan(GPIOC,GPIO_Pin_1)=KEY_ON)Delay_2s();TIM4-CCR1=20; /左轮占空比改变寄存器操作TIM4-CCR3=20; /右轮占空比改变寄存器操作break;while (1) left2=rd_left2;left1=rd_left1;mid=rd_mid;right1=rd_right1;right2=rd_right2;TIM4-CCR1=left_pwm; /左轮占空比改变寄存器操作TIM4-CCR3=rig

20、ht_pwm; /右轮占空比改变寄存器操作if(mid )go_stright();elseif(left1)turn_left_slow();else if(left2)turn_left_quick();else if(right1)turn_right_slow();else if(right2)turn_right_quick();else if(left2=1 & left1=1 & right1=1 & right2=1)go_stright_slow();/11011else if(left2=1 & left1=0 & right1=1 & right2=1)go_strigh

21、t_slow();/10011else if(left2=1 & left1=1 & right1=0 & right2=1)go_stright_slow();/11001else if(left2=1 & left1=1 & right1=1 & right2=0)go_stright_slow();/11010else if(left2=0 & left1=1 & right1=1 & right2=1)go_stright_slow();/01011else if(left2=1 & left1=0 & right1=1 & right2=0)go_stright_slow();/10010else ;if(left2=0 | right2=0 )/10101final_stay_time=0;if(final_stay_time=90)while(1)TIM4-CCR1=0;TIM4-CCR3=0; /*延时程序*/void delay_(_IO u32 nCount)/延时函数0Xc49或3145大概4秒 for(; nCount != 0; nCount-); void Delay_2s(void)/停止函数大概2秒_IO u32 nCount=0x5fffff for(; nCount != 0; nCount-);

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

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

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


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