遥控智能小车(课程设计)教学内容

合集下载

物联网智能小车课程设计

物联网智能小车课程设计

物联网智能小车课程设计一、课程目标知识目标:1. 让学生理解物联网的基本概念,掌握智能小车的主要组成部分及其工作原理;2. 使学生掌握编程语言控制智能小车的基本方法,了解传感器在物联网中的应用;3. 帮助学生了解物联网技术在现实生活中的应用案例,提高对物联网技术发展的认识。

技能目标:1. 培养学生动手操作能力,能够独立完成智能小车的组装和编程;2. 提高学生问题解决能力,能够运用所学知识对智能小车进行调试和优化;3. 培养学生团队协作能力,能够在小组合作中发挥个人特长,共同完成项目任务。

情感态度价值观目标:1. 培养学生对物联网技术的兴趣,激发其探索精神和创新意识;2. 培养学生关注社会发展,认识到物联网技术对社会进步的推动作用;3. 引导学生树立正确的价值观,认识到科技发展应服务于人类福祉,增强社会责任感。

课程性质:本课程为实践性较强的学科课程,旨在通过智能小车的制作和调试,帮助学生将理论知识与实际应用相结合,提高学生的实践操作能力和创新能力。

学生特点:学生具备一定的电子技术基础和编程能力,对新鲜事物充满好奇心,喜欢动手实践,但部分学生可能缺乏团队合作经验和问题解决能力。

教学要求:注重理论与实践相结合,充分调动学生的积极性,引导学生主动探究,注重培养学生的动手能力、创新意识和团队协作精神。

在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。

二、教学内容1. 物联网基本概念与智能小车概述- 物联网的定义、特点与应用领域- 智能小车的发展历程、分类及基本组成2. 智能小车硬件组成与工作原理- 主控模块、传感器模块、驱动模块等功能介绍- 各模块之间的协同工作原理3. 编程语言与智能小车控制- 常用编程语言(如Python、C等)介绍- 编程控制智能小车的步骤和技巧4. 传感器在物联网中的应用- 介绍常见传感器(如红外传感器、超声波传感器等)的工作原理- 传感器在智能小车中的应用案例5. 智能小车组装与调试- 指导学生按照教学要求组装智能小车- 教授调试方法,分析并解决常见问题6. 物联网智能小车项目实践- 设计具有实际应用场景的项目任务- 学生分组进行项目实践,教师提供指导与支持7. 物联网技术在实际应用案例分析- 分析国内外物联网技术在实际应用中的成功案例- 引导学生关注物联网技术发展趋势及其对社会的影响教学内容安排与进度:第1-2周:物联网基本概念与智能小车概述第3-4周:智能小车硬件组成与工作原理第5-6周:编程语言与智能小车控制第7-8周:传感器在物联网中的应用第9-10周:智能小车组装与调试第11-12周:物联网智能小车项目实践与案例分析本教学内容紧密围绕课程目标,注重理论与实践相结合,以培养学生的动手能力、创新意识和团队协作精神为核心。

遥控智能小车(课程设计)教学文案

遥控智能小车(课程设计)教学文案

遥控智能小车(课程设计)《嵌入式系统原理》课程设计说明书题目:遥控智能小车院(系):计算机与电子系专业班级:电子科学与技术0902班学生姓名:***学号: ***********指导教师:***20 11 年 12 月 30 日至20 12 年 1 月 13 日华中科技大学武昌分校制嵌入式系统原理课程设计任务书目录1. 总体思想 (1)2. 电机驱动 (2)2.1 简介 (2)2.2 具体实现 (2)2.3 功能函数设计 (2)3.遥控系统 (7)3.1 遥控器简介 (7)3.2 接收探头与解码 (7)3.3 红外控制 (8)4. 超声波 (12)4.1 简介 (12)4.2 超声波测距具体实现 (12)4.3 超声波程序设计 (12)5. 红外寻迹 (14)5.1 反射式红外传感器 (14)5.2 具体实现方法 (14)5.3 寻迹程序设计 (15)6. 总结 (17)1.总体思想图 1.1 设计全局图本次课程设计,我们小组采用stm32作为主控芯片,L298N模块作为电机驱动芯片。

在小车车头放置三个反射式红外传感器,由于红外光易于被黑线吸收,利用这个原理,来检测黑线,当检测到黑线时,发射出去的红外光被吸收,红外传感器接受不到反射信号,通过输出信号反馈给STM32,产生中断,作出相应的调整,详细介绍见下文第12页。

车头部分采用一个US-100超声波模块,用于检测前方障碍物,我们小组设置的安全距离为25cm,当小车与前方障碍之间的距离小于25cm时,小车蜂鸣器报警,stm32控制电机,作出相应的调整。

关于超声波工作详情,请见下文第11页。

小车尾部安装一枚HS0038红外接收探头,配合一块遥控器,实现遥控小车的功能。

我们小组选用的遥控器编码为NEC协议。

红外遥控功能详情,请见下文第7页。

我们在小车的车身上放置一块3.2寸TFT液晶显示器。

用于显示时间,车速。

车速通过霍尔元件测得。

2.电机驱动2.1简介电机运转需要大电流,而stm32驱动能力达不到电机正常运转的要求,故我们小组采用L298N模块驱动电机,L298N拥有4个输入端口,由stm32直接输入,4个输出端,可以驱动两个直流电机。

s52智能小车课程设计

s52智能小车课程设计

s52智能小车课程设计一、课程目标知识目标:1. 让学生掌握智能小车的基本组成结构,理解各部分功能及其工作原理。

2. 使学生了解编程控制智能小车的基本方法,学会运用相关传感器进行环境感知和路径规划。

3. 帮助学生理解智能小车在现实生活中的应用,了解我国在智能小车领域的发展状况。

技能目标:1. 培养学生动手操作和团队协作的能力,能独立或合作完成智能小车的组装和调试。

2. 提高学生的编程能力,使其能够根据实际需求编写相应的控制程序,实现智能小车的功能。

3. 培养学生运用所学知识解决实际问题的能力,激发创新思维和探究精神。

情感态度价值观目标:1. 培养学生对智能小车及相关技术的兴趣,激发学习热情,提高学习积极性。

2. 培养学生勇于尝试、不怕失败的精神,增强面对困难的自信心和克服能力。

3. 培养学生关注科技发展,树立正确的价值观,认识到科技对社会进步的重要作用。

本课程旨在结合学生的年级特点和认知水平,通过实践操作、团队合作和问题解决,使学生在掌握智能小车相关知识的基础上,提高动手能力、编程能力和创新能力。

课程目标具体、可衡量,有助于学生和教师在教学过程中明确预期成果,为后续的教学设计和评估提供依据。

二、教学内容1. 智能小车概述:介绍智能小车的定义、发展历程、应用领域,使学生了解智能小车的基本概念。

- 教材章节:第一章 智能小车简介- 内容列举:智能小车的定义、发展历程、国内外应用案例2. 智能小车结构与原理:讲解智能小车的硬件组成、传感器原理及功能,使学生掌握智能小车的基本结构和工作原理。

- 教材章节:第二章 智能小车结构与原理- 内容列举:硬件组成、传感器原理、工作原理3. 编程控制与调试:教授编程语言和控制算法,使学生能够独立编写智能小车的控制程序并进行调试。

- 教材章节:第三章 编程控制与调试- 内容列举:编程语言、控制算法、程序编写、调试方法4. 智能小车应用案例:分析典型智能小车应用案例,让学生了解智能小车在实际应用中的优势和局限。

安卓遥控小车课程设计

安卓遥控小车课程设计

安卓遥控小车课程设计一、课程目标知识目标:1. 学生能理解安卓遥控小车的基本工作原理,掌握相关的电子元件功能,如电机驱动、传感器等。

2. 学生能描述安卓编程的基本逻辑,包括界面设计、事件处理和数据传输。

技能目标:1. 学生能够运用所学的编程知识,设计并编写简单的安卓应用,实现对遥控小车的控制。

2. 学生能够通过小组合作,组装并调试安卓遥控小车,解决过程中遇到的技术问题。

情感态度价值观目标:1. 学生培养对科学技术的兴趣,激发创新思维和探究精神,提高问题解决能力。

2. 学生在小组合作中,学会沟通与协作,培养团队精神和责任感。

3. 学生通过实践活动,认识到科技对生活的改变,增强社会责任感和应用科技改善生活的意识。

课程性质:本课程为实践性强的科技活动课程,结合安卓编程和电子技术,注重培养学生的动手能力和实际操作技能。

学生特点:学生处于初中阶段,具备一定的信息技术基础,好奇心强,喜欢动手实践,善于合作学习。

教学要求:结合学生特点,课程注重理论与实践相结合,以学生为主体,教师引导,鼓励学生自主探究和合作学习。

通过课程学习,使学生能够达到上述设定的知识、技能和情感态度价值观目标。

教学过程中,将目标分解为具体的学习成果,便于教学设计和评估。

二、教学内容1. 安卓编程基础:- 界面设计与布局- 事件处理机制- 数据存储与传输2. 遥控小车硬件组成:- 电机驱动原理- 常用传感器介绍(如红外传感器、超声波传感器)- 小车电路连接与调试3. 安卓控制程序开发:- 控制指令的编写与发送- 小车运动控制算法- 界面与控制指令的交互设计4. 实践操作:- 小组合作组装遥控小车- 编写安卓控制程序- 调试与优化小车性能教学大纲安排:第一课时:安卓编程基础介绍,包括界面设计、事件处理和数据存储。

第二课时:遥控小车硬件组成,重点讲解电机驱动和传感器。

第三课时:安卓控制程序开发,学习编写控制指令和运动控制算法。

第四课时:实践操作,小组合作组装小车并编写控制程序。

人工智能小车课程设计

人工智能小车课程设计

人工智能小车课程设计一、课程目标知识目标:1. 学生能理解人工智能基础概念,掌握人工智能小车的基本工作原理。

2. 学生能描述编程控制人工智能小车的基本步骤和方法。

3. 学生能了解人工智能在现实生活中的应用,认识到科技发展的意义。

技能目标:1. 学生能通过动手实践,组装并调试人工智能小车。

2. 学生能运用所学的编程知识,编写简单的程序来控制人工智能小车。

3. 学生能通过小组合作,解决人工智能小车在实际运行中遇到的问题。

情感态度价值观目标:1. 学生对人工智能产生浓厚的兴趣,培养主动探究科学技术的热情。

2. 学生在团队合作中,学会互相尊重、沟通与协作,培养团队精神。

3. 学生通过了解人工智能的广泛应用,增强创新意识,认识到科技对生活的改变。

课程性质:本课程为实践性强的科技课程,注重理论知识与实践操作相结合。

学生特点:六年级学生具备一定的逻辑思维能力和动手操作能力,对新鲜事物充满好奇。

教学要求:教师应注重引导学生主动探究,关注学生的个体差异,鼓励团队合作,提高学生的实践和创新能力。

在教学过程中,将课程目标分解为具体的学习成果,便于教学设计和评估。

1. 人工智能基础概念:介绍人工智能的定义、发展历程及分类,结合课本相关章节,使学生了解人工智能的基本知识。

2. 人工智能小车结构:讲解人工智能小车的硬件组成,如传感器、电机、控制器等,以及各部分功能,让学生了解小车的工作原理。

3. 编程控制方法:教授编程语言基础,如Scratch或Python,指导学生编写简单的程序,实现对人工智能小车的控制。

4. 实践操作:安排学生动手组装和调试人工智能小车,学会使用相关工具和仪器,培养实际操作能力。

5. 团队合作与问题解决:分组进行实践活动,让学生在团队合作中解决实际问题,提高沟通与协作能力。

6. 人工智能应用案例:介绍人工智能在现实生活中的应用实例,如自动驾驶、智能家居等,拓宽学生的视野。

教学大纲安排:第一课时:人工智能基础概念,介绍课本相关章节内容;第二课时:人工智能小车结构,分析小车各部分功能;第三课时:编程控制方法,学习编程语言基础;第四课时:实践操作,分组组装和调试人工智能小车;第五课时:团队合作与问题解决,解决实际操作中遇到的问题;第六课时:人工智能应用案例,了解科技发展的前沿动态。

智能小车控制算法课程设计

智能小车控制算法课程设计

智能小车控制算法课程设计一、课程目标知识目标:1. 让学生理解智能小车的基本工作原理,掌握控制算法的基本概念;2. 使学生掌握智能小车运动控制的基本方法,包括速度控制、方向控制等;3. 引导学生了解控制算法在智能小车领域的应用,如PID控制、模糊控制等。

技能目标:1. 培养学生运用编程语言(如Python、C++等)实现智能小车控制算法的能力;2. 提高学生通过实验和调试解决实际问题的能力;3. 培养学生团队协作、沟通表达的能力。

情感态度价值观目标:1. 激发学生对智能小车和控制算法的兴趣,培养创新意识和探索精神;2. 引导学生关注科技发展,认识到控制算法在现实生活中的重要性;3. 培养学生严谨、务实的学习态度,养成良好的学习习惯。

课程性质:本课程为实践性较强的学科,结合理论知识与实际操作,培养学生动手能力、编程能力和创新能力。

学生特点:针对高中年级学生,具备一定的物理知识和数学基础,对新鲜事物充满好奇心,具备一定的自学能力和团队合作精神。

教学要求:注重理论与实践相结合,以学生为主体,发挥教师引导作用。

通过课程学习,使学生能够独立完成智能小车控制算法的设计与实现,达到预期的学习成果。

二、教学内容1. 智能小车基本原理及结构:介绍智能小车的主要组成部分,包括驱动电机、传感器、控制器等,分析各部分的功能和相互关系。

教材章节:《自动化技术基础》第二章2. 控制算法原理:讲解PID控制、模糊控制等基本控制算法的原理,探讨其在智能小车控制中的应用。

教材章节:《控制理论及其应用》第三章3. 编程语言及开发环境:学习Python、C++等编程语言,了解智能小车控制算法的编程实现。

教材章节:《Python编程》第一章、《C++编程》第一章4. 智能小车运动控制:分析速度、方向等运动控制方法,结合实际案例进行讲解。

教材章节:《自动化技术基础》第四章5. 实践操作:组织学生进行智能小车控制算法的编程实践,包括控制算法的设计、调试与优化。

遥控智能小车课程设计

摘要介绍了语音遥控的电动小车的机械结构及控制部分.在机械结构上,对普通的玩具小车做了改进,使小车的转向更加灵活,并且在设计范围内可以实现任意角度转弯和任意速度移动;而在控制系统部分,则采用语音控制方式,使小车可以"听懂"人的命令,娱乐性和互动性更强.该小车各部分采用模块化设计,各个模块之间独立性强。

控制部分采用可编程微处理哭器,可以在不增加系统硬件的情况下方便地对系统进行二次开发。

本文对一辆小车进行了实验,实验结果表明,语音识别系统在低噪声环境中识别率很高,在噪声水平较高的场合,识别率有所下降。

小车反应灵敏。

关键词:语音识别单片机智能小车电机驱动目录绪论 (3)1总体方案 (4)1.1方案论证 (4)1.2总体方案图 (4)1.3系统工作原理 (4)2硬件设计 (5)2.1 语音识别模块 (5)2.2 电机驱动模块 (10)2.3 红外检测模块 (11)2.4 键盘电路 (12)2.5 主控芯片8051模块 (13)2.5.1单片机的电源设计 (13)2.5.2单片机复位电路 (14)3.软件设计 (14)3.1主程序 (14)3.2监控程序 (15)3.3 延时程序 (19)结论 (20)参考文献 (21)绪论在电气时代的今天,电动机一直在现代化的生产和生活中起着十分重要的作用。

无论是在工农业生产、交通运输、医疗卫生、办公,还是在日常生活中,都大量的使用着各种电动机。

而微处理器取代模式电路作为电动机控制的技术也日渐成熟。

单片机介于工业控制计算机和可编程控制器之间,他有较强的控制能力、低价的成本。

人们在选择电动机控制器时,常常是在先满足功能需要的同时,优先选择成本低的控制器。

语音遥控的电动小车的机械结构及控制部分有了新的改进。

在机械结构上,对普通的玩具小车做了改进,使小车的转向更加灵活,并且在设计范围内可以实现任意角度墨迹和任意速度移动;而在控制系统部分,则采用语音控制方式,使小车可以“听懂”人的命令,娱乐性和互动性更强。

遥控智能小车单片机课设

课程设计任务书摘要为了达到设计的要求,我们使用了MSP430F149为车上主控制芯片,STC12C5A为遥控控制芯片。

无线传输使用了315M无线传输模块,该模块采用了PT2262/PT2272进行编解码,拥有6位数据端管脚;遥控采用了摇杆电位器,将电位器滑动端的电压与参考电压比较,得到摇杆的位置,通过单片机编码,传输给小车上的单片机,小车上的单片机通过解码来控制小车的行驶及各种动作;电机驱动使用了L298N,通过单片机输出的PWM波来控制小车行驶的速度、小车行驶的方向;小车系统使用12V可充电锂电池进行供电,遥控使用9V 的碳性电池进行供电,传输距离可达50m,抗干扰能力强,系统可靠稳定。

目录1、方案设计与论证 (5)1.1系统方案 (5)1.2方案论证 (5)2、原理分析与硬件电路图 (8)2.1电源转换部分 (8)2.2电机驱动部分 (8)2.3无线通信部分 (9)2.4遥控部分 (11)3、软件设计 (12)4、系统测试与误差分析 (13)5、参考文献 (14)6、附件 (14)1、方案设计与论证1.2方案论证1)MCU选择方案一控制部分的核心采用传统的数字逻辑芯片来实现。

系统共有启动、加速前进、后退、限速前进及后退等几个状态。

且各个状态保持或转移的条件依赖与外部传感器(光传感器、霍尔传感器、超声传感器……)送来的信号。

由于外部传感器器较多,需要较多的传感器接口电路。

系统的逻辑状态以及相互更是复杂,用纯粹的数字电路或者小规模的可编程逻辑电路实现该系统有一定的困难,且一般的可编程逻辑器件体积较其他的单片机都较大,且成本较高。

方案二该小车可看成一个自动控制系统,这样的系统用单片机来实现比较合适。

MSP430为超低功耗的单片机,对与整个系统的长时间运行十分有利;同时MSPS430的I\O丰富可以进行很多的扩展,同时它可以输出PWM波,对于电机的控制极其方便。

显然方案二具有较好的可选择性,实际系统采用的MSPS30为主控制器。

幼儿园大班遥控小车制作教案

幼儿园大班遥控小车制作教案教学主题:幼儿园大班遥控小车制作教学目标:1. 学生能够了解遥控小车的组成和结构;2. 学生能够学会手工制作和调试遥控小车;3. 学生能够了解遥控小车功能及操作方法。

教学内容:1. 遥控小车构造及组成;2. 遥控小车制作手工流程;3. 遥控小车调试方法。

教学流程:一、导入环节(5分钟)1. 老师介绍遥控小车,并向学生展示遥控小车的外观、功能以及使用方法;2. 老师鼓励学生积极参与制作,激发学生的学习兴趣。

二、知识讲解(20分钟)1. 讲解遥控小车的组成和结构,包括车身、轮胎、电路、遥控器等;2. 介绍遥控小车的原理和制作方法,并配合图示进行讲解;3. 讲解遥控小车的调试方法,包括频道选择、信号接收等。

三、动手实践(50分钟)1. 老师组织学生制作遥控小车;2. 请老师准备好相关材料,如:遥控器、电路板、轮胎、电池等;3. 老师给予学生指导和帮助,帮助学生制作遥控小车;4. 学生根据老师的要求,逐步进行制作、调试。

四、总结复习(10分钟)1. 让学生分享制作遥控小车的过程和经验;2. 汇总制作遥控小车的注意事项及调试技巧等;3. 适当回顾遥控小车的原理、组成和功能,激发学生对知识的重视和学习兴趣。

五、课后延伸(10分钟)1. 老师鼓励学生在家制作遥控小车,并在下节课展示制作成果;2. 提供绘画、手工等相关素材,让学生在家继续发挥创意,完成小车的外观设计。

教学资源:1. 遥控小车材料清单;2. 遥控小车制作流程图;3. 遥控小车调试方法图;4. 遥控小车基础知识介绍PPT。

教学评估:1. 班级小组比赛;2. 记录学生小车制作和调试流程;3. 课后听取学生的实际操作情况和反馈信息。

教学安排:本课程安排为一节课,共计90分钟。

教学方式为现场教学,由老师进行讲解、演示,学生进行动手实践。

本课程适用于幼儿园大班学生。

arduino红外控制智能小车课程设计

arduino红外控制智能小车课程设计一、课程目标知识目标:1. 学生能理解Arduino的基本原理和编程方法;2. 学生能掌握红外控制技术及其在智能小车中的应用;3. 学生能了解智能小车的基本结构和功能,以及相关传感器的工作原理。

技能目标:1. 学生能够独立完成Arduino程序的编写和调试;2. 学生能够运用红外控制技术实现智能小车的遥控功能;3. 学生能够通过小组合作,完成智能小车的搭建和优化。

情感态度价值观目标:1. 学生培养对电子制作和编程的兴趣,激发创新精神和实践能力;2. 学生在团队合作中,学会沟通、分享和承担责任;3. 学生认识到科技对社会发展的作用,增强对科技事业的热爱和责任感。

课程性质:本课程为实践性课程,注重培养学生的动手能力和创新能力。

学生特点:六年级学生具备一定的电子知识和编程基础,对新鲜事物充满好奇心,喜欢动手实践。

教学要求:结合学生特点,注重理论与实践相结合,鼓励学生自主探索和合作学习,提高学生的综合素养。

通过本课程的学习,使学生能够将所学知识应用于实际项目中,培养解决实际问题的能力。

二、教学内容1. Arduino基础原理:介绍Arduino的硬件结构、编程接口及基础编程语法,使学生了解Arduino的基本使用方法。

相关教材章节:第一章 Arduino入门。

2. 红外控制技术:讲解红外遥控原理、红外发射与接收模块的使用,使学生掌握红外控制技术的应用。

相关教材章节:第三章 红外遥控技术。

3. 智能小车结构与功能:介绍智能小车的基本结构、驱动原理及常用传感器(如红外传感器、超声波传感器等)的功能与应用。

相关教材章节:第五章 智能小车控制。

4. 程序编写与调试:教授Arduino编程方法,指导学生完成红外控制智能小车的程序编写与调试。

相关教材章节:第二章 Arduino编程基础、第四章 程序调试与优化。

5. 智能小车搭建与优化:指导学生进行智能小车的组装、调试及优化,培养学生的动手实践能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

遥控智能小车(课程设计)《嵌入式系统原理》课程设计说明书题目:遥控智能小车院(系):计算机与电子系专业班级:电子科学与技术0902班学生姓名:***学号: ***********指导教师:***20 11 年 12 月 30 日至20 12 年 1 月 13 日华中科技大学武昌分校制嵌入式系统原理课程设计任务书目录1. 总体思想 (1)2. 电机驱动 (2)2.1 简介 (2)2.2 具体实现 (2)2.3 功能函数设计 (2)3.遥控系统 (7)3.1 遥控器简介 (7)3.2 接收探头与解码 (7)3.3 红外控制 (8)4. 超声波 (12)4.1 简介 (12)4.2 超声波测距具体实现 (12)4.3 超声波程序设计 (12)5. 红外寻迹 (14)5.1 反射式红外传感器 (14)5.2 具体实现方法 (14)5.3 寻迹程序设计 (15)6. 总结 (17)1.总体思想图 1.1 设计全局图本次课程设计,我们小组采用stm32作为主控芯片,L298N模块作为电机驱动芯片。

在小车车头放置三个反射式红外传感器,由于红外光易于被黑线吸收,利用这个原理,来检测黑线,当检测到黑线时,发射出去的红外光被吸收,红外传感器接受不到反射信号,通过输出信号反馈给STM32,产生中断,作出相应的调整,详细介绍见下文第12页。

车头部分采用一个US-100超声波模块,用于检测前方障碍物,我们小组设置的安全距离为25cm,当小车与前方障碍之间的距离小于25cm时,小车蜂鸣器报警,stm32控制电机,作出相应的调整。

关于超声波工作详情,请见下文第11页。

小车尾部安装一枚HS0038红外接收探头,配合一块遥控器,实现遥控小车的功能。

我们小组选用的遥控器编码为NEC协议。

红外遥控功能详情,请见下文第7页。

我们在小车的车身上放置一块3.2寸TFT液晶显示器。

用于显示时间,车速。

车速通过霍尔元件测得。

2.电机驱动2.1简介电机运转需要大电流,而stm32驱动能力达不到电机正常运转的要求,故我们小组采用L298N模块驱动电机,L298N拥有4个输入端口,由stm32直接输入,4个输出端,可以驱动两个直流电机。

stm32输出端口的电平变换,可以控制电机的方向。

PWM脉宽调制信号,可以控制电机的转速。

实现加速减速的功能。

2.2 具体实现通过stm32的PA0,PA1,根据TIM2产生的不同占空比的PWM波,控制电机的速度,以及正反转。

PA3,PA4控制小车前轮,前轮采用舵机控制,在转向方面,不能大幅度转弯,所以,在小车转弯上,我们采用转一段时间,然后倒退一段距离,然后再转,如此反复几次。

通过这种方式实现小车的900C转弯。

2.3 功能函数设计1.void Front(){GPIOD->BRR = 0X03;GPIOA_Conf(); //配置A端口GPIOA->BRR = 0x0f;GPIOA->BSRR = 0X01;}调用这个函数,实现小车全速向前形式。

PD端口的D0,D1位,是控制小车后面两个尾灯。

当小车前进时,尾灯关闭。

2.void Back(){GPIOD->BSRR = 0x03;GPIOA_Conf();GPIOA->BRR = 0x0f;GPIOA->BSRR = 0X02;调用这个函数,实现小车全速后退。

同时开启车身后面的尾灯。

3 . void LeftSlideFront(){GPIOD->BSRR = 0X01;GPIOD->BRR = 0X02;GPIOA->BRR = 0X04;GPIOA->BSRR = 0X08;Time_Configuration(350,0,500,7199);}调用此函数,实现小车前进,左转弯。

同时开启尾部左边的尾灯,关闭右边的尾灯。

Time_Configuration(350,0,500,7199)为占空比调制函数。

通过输入不同的值,改变电机的转速。

4.void Time_Configuration(uint16_t CCR1_Val,uint16_t CCR2_Val,uint16_t periodValue,uint16_t PrescalerValue){/*开启TM2定时器时钟*/RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);/*TIM2定时器复用管脚PA0,PA1,PA2,PA3*/GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);/*配置定时器时基*/TIM_TimeBaseStructure.TIM_Period = periodValue;TIM_TimeBaseStructure.TIM_Prescaler = PrescalerValue;TIM_TimeBaseStructure.TIM_ClockDivision = 0;TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;TIM_TimeBaseInit(TIM2, &TIM_TimeBaseStructure);/*配置定时器各通道情况*/TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;TIM_OCInitStructure.TIM_Pulse = CCR1_Val;TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;TIM_OC1Init(TIM2, &TIM_OCInitStructure);TIM_OC1PreloadConfig(TIM2, TIM_OCPreload_Enable);TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;TIM_OCInitStructure.TIM_Pulse = CCR2_Val;TIM_OC2Init(TIM2, &TIM_OCInitStructure);TIM_OC2PreloadConfig(TIM2, TIM_OCPreload_Enable);TIM_ARRPreloadConfig(TIM2, ENABLE);TIM_Cmd(TIM2, ENABLE);}PWM脉宽调制波形输出,是stm32定时器功能的一大亮点,以往8位单片机输出PWM波形,均为模拟,或者借助外围芯片,而stm32内部定时器,实现了精确的PWM波形直接输出。

上面功能函数,为TIM2定时器的配置情况。

我在使用时,开启了TIM2定时器的通道1和通道2。

分别为PA0,PA1,这两个端口控制小车的后轮电机。

由于前轮为舵机。

所以,没有采用PWM波形。

而是直接给高低电平调整小车的方向。

stm32定时器采用预分频处理,即将系统时钟分频后给定时器,这个预分频值,由传入的参数PrescalerValue决定。

系统时钟为72MHz,设分频后的频率为F,则:F = 72MHz/(PrescalerValue+1)定时器的计数周期为传入参数periodValue的值决定。

PWM占空比值由传入参数CCR1_Val和CCR2_Val决定,分别控制PA0,PA1的占空比值。

占空比 = CCR1_Val/periodValue。

4.void LeftSlideBehind(){GPIOD->BSRR = 0X01;GPIOD->BRR = 0X02;GPIOA->BRR = 0X04;GPIOA->BSRR = 0X08;Time_Configuration(0,350,500,7199);}调用此函数,控制小车后退并左转弯。

同时开启左边尾灯,关闭右边尾灯。

5.void RightSlideFront(){GPIOD->BSRR = 0X02;GPIOD->BRR = 0X01;GPIOA->BRR = 0X08;GPIOA->BSRR = 0x04;Time_Configuration(350,0,500,7199);}调用此函数,控制小车前进并右转弯。

同时关闭左边尾灯,开启右边尾灯。

6.void RightSlideBehind() //后退,右转弯{GPIOD->BSRR = 0X02;GPIOD->BRR = 0X01;GPIOA->BRR = 0X08;GPIOA->BSRR = 0X04;Time_Configuration(0,350,500,7199);}调用此函数,控制小车后退并右转弯。

同时关闭左边尾灯,开启右边尾灯。

7.void Upshift(){uint16_t i;GPIOD->BRR = 0x03;for(i = 100;i <= 180;i = i + 10){Delay(200);Time_Configuration(i,0,500,7199);}while(i <= 500){i = i + 50;Time_Configuration(i,0,500,7199);Delay(100);}}调用此函数,实现小车的加速,我们小组将加速过程分为2级,第一级为慢加速,让速度慢慢起来,第二级加速为快加速,当速度达到一定值后,占空比增大的幅度加强。

8.void SlowDown(){uint16_t i = 400;GPIOD->BSRR = 0X03;while(i > 200){Time_Configuration(i,0,500,7199);i = i-50;Delay(70);}for(;i > 170; i = i - 5){Time_Configuration(i,0,500,7199);Delay(80);}}调用此函数,实现小车的减速,减速过程,我们也分为两级。

第一级为快速减速,第二级为慢速减速。

使小车平稳减速。

9.void Brake(){GPIOD->BSRR = 0x03;GPIOA_Conf();GPIOA->BSRR = 0x0f;}调用该函数,小车将停止。

相关文档
最新文档