您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 无线遥控小车设计报告
课程设计本科生通用题目:基于STM32的无线遥控小车的设计专业:班级:姓名:学号:成绩:导师签字:年月日课程设计要求与参数课设要求设计一个基于STM32微控制器的无线遥控小车,车上装有无线模块,通过遥控器远程控制小车的运动状态。实现小车的前进、后退、停止、左转弯、右转弯、加速、减速等控制。参数飞思卡尔智能车体,车轮直径55mm电池电压:12VSTM32F103ZET6最小系统:供电电压3.3VNRF24L01无线模块:供电电压3.3VBTN7971B电机驱动模块:供电电压5V---15V360度舵机降压模块日程安排12月15日——12月16日:查阅相关资料,确定设计思路,提出设计方案12月17日——12月19日:搭建小车模型,设计硬件电路12月20日——12月23日:完成软件部分的编程设计12月24日:硬件及软件测试12月25日:完成课程设计报目录课程设计要求与参数-----------------------------------------------1课设要求-----------------------------------------------------1参数---------------------------------------------------------1日程安排-----------------------------------------------------1第一章课题研究的目的、背景、意义--------------------------------31.1课题研究的目的-------------------------------------------31.2课题研究的背景-------------------------------------------31.3课题研究的意义-------------------------------------------4第二章设计方案--------------------------------------------------52.1设计思路-------------------------------------------------52.2硬件设计方案---------------------------------------------62.3软件设计方案---------------------------------------------6第三章硬件设计--------------------------------------------------73.1STM32F103ZET6简介---------------------------------------73.2NRF24L01无线模块----------------------------------------83.2.1NRF24L01无线模块简介--------------------------------83.2.2无线模块与微控制器的连接-----------------------------93.3舵机-----------------------------------------------------93.4BTN7971B电机驱动模块------------------------------------93.5遥控器设计----------------------------------------------10第四章软件设计-------------------------------------------------11第五章调试与测试-----------------------------------------------13结论-----------------------------------------------------------14参考文献-------------------------------------------------------14第一章课题研究的目的、背景、意义1.1课题研究的目的掌握嵌入式软件项目的设计流程掌握MDK-ARM开发环境的基本使用方法掌握NRF24L01无线模块的通信协议及使用方法掌握脉冲宽度调制(PWM)的原理及应用掌握直流电机调速的方法1.2课题研究的背景随着社会的发展,人们对科学技术的要求越来越高,在我们的身边随处都可见一些高科技的产物,这些是时代的产物。本设计采用STM32微控制器,根据控制器的原理来控制小车的启步与停止以及根据人的操作做出相应的动作。信息社会的支柱之一是通信技术,它是信息社会化的基础,也是实现信息社会化的手段。而近年来,信息通信领域中,发展最快,应用最广的就是无线通信技术。Cortex-M3采用ARMV7构架,不仅支持Thumb-2指令集,而且拥有很多新特性。较之ARM7TDMI,Cortex-M3拥有更强劲的性能、更高的代码密度、位带操作、可嵌套中断、低成本、低功耗等众多优势。脉宽调制的全称为:PulseWidthModulator,简称PWM;由于它的特殊性能、常被用于直流负载回路中、灯具调光或直流电动机调速等。1.3课题研究的意义本设计是基于STM32微控制器的无线遥控小车,车上装有无线模块,通过遥控器远程控制小车的运动状态。实现小车的前进、后退、停止、左转弯、右转弯、加速、减速等控制。本次设计可以很好地巩固已经学习的嵌入式系统,利用嵌入式微控制器进行电子创新设计。发挥无线控制的远程控制优势,通过无线指令调整微控制器输出的PWM脉冲的占空比来控制直流电机的转速,进而实现对小车的运动状态的控制。第二章设计方案2.1设计思路课题题目:基于STM32的无线遥控小车的设计功能:通过遥控器远程控制小车的运动状态,实现小车的前进、后退、停止、左转弯、右转弯、加速、减速等控制。实现的方法:硬件方面,采用的STM32F03ZET6的最小系统,系统的每个引脚都用插针引了出来。通过JTAG进行程序的下载和各种调试。采用NRF24L01无线模块传递控制指令,以BTN7971B电机驱动模块来对直流电机进行驱动。软件方面,开发平台RVMDK3.80A。软件设计分为几个模块,分别为按键控制、无线传输、PWM电机调速、舵机方向控制等模块。首先通过键值扫描函数获取当前按下的控制按键,再通过无线模块传输相对应的控制指令给微控制器,控制器输出相应占空比的方波调节电机转速和方向舵机。从而达到对小车进行远程运动状态控制的功能。2.2硬件设计方案处理器为Cortex-M3核处理器,无线遥控器的结构框图如图2-1;小车控制框图如图2-2.按键模块图2-1遥控器设计框图图2-2小车控制框图2.3软件设计方案软件平台是RVMDK3.80A,开发语言为c语言,通过编程,使用STM32的定时器输出指定频率、占空比的PWM方波,无线传输使用SPI通信。首先通过键值扫描函数获取当前按下的控制按键,再通过无线模块传输相对应的控制指令给微控制器,控制器输出相应占空比的方波调节电机转速和方向舵机。从而达到对小车进行远程运动状态控制的功能。Key0Key1Key2Key3Key4Key5Key6Key7Key8STM32微控制器无线模块无线模块STM32微控制器驱动模块光耦隔离直流电机方向舵机第三章硬件设计3.1STM32F103ZET6简介所使用微控制器为STM32F103ZET6,其最小系统原理图如图3-1。系统板资源:1、STM32F103ZET6芯片2、SRAM预留芯片接口3、2MSPIFLASH芯片(W25Q16)4、仿真器接口下载(JTAG/SWD)5、复位按键6、一个按键输入(PA0)7、一个LED输出(PB0)8、电源指示灯9、启动跳冒选择10、MINIUSB接口(可以供电,可以做USB主机或者设备)11、3.3V稳压芯片12、8Mhz主频晶振13、32.768Khz时钟晶振14、所有用到IO口均向上引出,2.54间距图3-1MCU部分原理图JTAG调试引脚与微控制器的连接,如图3-2。图3-2JTAG引脚原理图3.2.1NRF24L01无线模块简介NRF24L01无线模块采用的芯片为NRF24L01,该芯片的主要特点:1)2.4G全球开放的ISM频段,免许可证使用。2)最高工作频率2Mbps,高效的GFSK调制,抗干扰能力强。3)125个可选频道,满足多点通信和调频通信的需要。4)内置CRC检错和点对点的通信地址控制。5)低工作电压1.9V--3.6V。6)可设置自动应答,确保数据可靠传输。该芯片可以通过SPI与外部MCU通信,最大SPI速度可达到10MHz。NRF24L01无线模块接口图如图3-3。图3-3无线模块接口图3.2.2无线模块与微控制器的连接NRF24L01无线模块通过SPI与STM32F103ZET6通信,该处使用的是STM32F103ZET6的SPI2。NRF24L01无线模块与系统板的引脚连接如图3-4。图3-4NRF24L01与微控制器引脚连接3.3舵机舵机简单地说就是集成了直流电机、电机控制器和减速器等,并封装于一个便于安装的外壳里的伺服单元。小车的方向控制是通过控制舵机来实现的。舵机的电源线分别接5V和GND,信号控制线接STM32F103ZET6的PB6引脚(TIM4的PWMChannel_1输出引脚)。为了对STM32F103ZET6微控制器的引脚进行保护,在STM32F103ZET6与舵机控制信号线之间用光耦进行隔离。3.4驱动模块BTN7971B电机驱动模块采用大电流半桥集成芯片BTN7971B构成的H桥驱动。该驱动模块采用逻辑芯片进行信号隔离,有效保护微控制器引脚,采用优质固态电容滤波,性能更卓越。逻辑输入电压:4.5-5.5V,控制信号兼容3.3V信号;电机电源输入电压:5V-15V;最大工作频率:25KHz;最大工作电流:60A;额定工作温度范围:-5℃~75℃;驱动模块支持正、反转和制动;引脚说明:5V,IN1,IN2,IN3,IN4,GND;本设计使用OUT2输出引脚,将直流电机的两根引线接至OUT2对应端口,将12V电源线、GND接到模块的VCC和GND,将STM32F103ZET6的PC6(TIM3的PWMChannel_1)、PC7(TIM3的PWMChannel_2)引脚分别接到驱动模块的IN3、IN4引脚。将驱动模块的5V,GND分别接至电源的5V和GND。驱动模块应考虑散热设计,当电机转动时模块会发热,故应当安装散热装置,以使驱动模块正常工作。3.5遥控器设计遥控器由STM32F103RBT6微控制器、外接按键、NRF24L01无线模块构成,设计框图如图2-1。按键对应微控制器引脚及发送指令如表3-5。按键STM32F103RBT6引脚无线发送指令小车运动状态Key2PB2Ox88前进Key1PB1Ox86正向加速Key7PB7Ox85正向减速Key5PB5Ox44停止Key6PB6Ox77反向运动Key3PB30x76反向加速Key4PB40x75反向减速Key8PB80xaa右转Key0PB00xbb左转表3-5按键指令表第四章软件设计软件平台是RVMDK3.80A,开发语言为c语言,通过编程,使用STM32的定时器输出指定频率、占空比的PWM方波,无线传输使用SPI通信。首先通过键值扫描函数获取当前按下的控制按键,再通过无线模块传输相对应的控制指令给微控制器,控制器输出相应占空比的方波调节电机转速和方向舵机。从而达到对小车进行远程运动状态控制的功能。程序流程图如图4-1、图4-2。否是否是否否......是是是是......否是图4-1遥控器程序流程图是否有按键按下?Key0按下?Tmp_buf[0]=0xbbKey1按下?下?下?Tmp_buf[0]=0x86Key2按下?。Tmp_buf[0]=0x88Key8按下?Tmp_buf[0]=0xaa初始化无线模块OK?发送Tmp_buf
本文标题:无线遥控小车设计报告
链接地址:https://www.777doc.com/doc-3990115 .html