STM32f4日记8之四轮三路寻迹小车实验(小车实验二:红外模块检测寻迹(左拐,右拐,前进,停止))
STM32f4日记8之四轮三路寻迹小车实验(小车实验二:红外模块检测寻迹(左拐,右拐,前进,停止))
板子:stm32f407zgt6正点原子迷你版
作者:shawn
2021.2.14(大年初三)
19:04
All rights reserved
//
如果你觉得对你有帮助,请点赞同,这对我很重要,谢谢。
//
一、硬件介绍
基本结构:上下两层小车底盘,四个轮子,四个马达
L298N模块X2
12V锂电池
红外检测模块X3
二、核心模块讲解
1.红外检测模块是此寻迹小车的眼睛
三个红外检测模块的控制是小车成败的关键
工作电压:3.3V~5V
原理:
插电之后若发出去的红外线没有被接收到那么两个led灯一个亮一个不亮,OUT口返回一个高电平
若收到反射回来的红外,两个灯都亮,OUT口就返回一个低电平
那么对于黑色赛道,发射出去的红外就被黑线吸收了,此时OUT口就返回一个高电平
2.L298N模块的讲解可以看我之前一篇文章点这里
三、代码原理
俯视图(doge)
前面三个红外检测模块
车身两个方块是L298N
对于一个操场形状的赛道
我们来模拟几种情况(下面的图片不是四轮小车的图但是不影响我们对三路红外的分析)
1、正常前进
三个模块的电平为0,1,0。此时正常行驶
2、左侧检测到黑线
电平为1,0,0
此时轨道偏离,
调整:向左拐直到中间检测到黑线
3、右侧检测到黑线
电平为0,0,1
此时轨道偏离,
调整:向右拐直到中间检测到黑线
4、右中侧检测到黑线
电平为0,1,1
此时轨道偏离,
调整:后部分向右拐直到中间检测到黑线
5、左中侧检测到黑线
电平为1,1,0
此时轨道偏离,
调整:后部分向左拐直到中间检测到黑线
6、全部检测到黑线
电平为1,1,1
此时到达终点,
调整:停止
6、电平其他情况
电平:1,0,1
左右两侧黑线
这种情况不存在
电平0,0,0
状态为跑偏
调整:过5s如果再无检测就停止
四、引脚分配与连接
一个L298N一共6个脚,两个使能脚,四个电平输入脚,使能脚给定时器
四个电平输入脚给PF1,2,4,6
另一个L298N,四个电平输入脚给PC0,1,2,8,9
开四个定时器TIM3,4,11,13,PWM频率给10KHZ,占空比80%
三个红外检测模块OUT口分配给PE0,1,2
这样可以通过位操作来控制这几个IO口
五、代码编写
给出最重要的代码块寻迹控制
void Track_control(void)
{if(Track_Input==Not_Black){if(Stop_Flag==1) {Stop(); }elseTurnfoward();}else {switch(Track_Input){Stop_Flag=0x0; Not_Find_Black_flag=0; case Middle_Black: Turnfoward(); break;case Right_Black: case Right_Middle_Black:Turnright(); break;case Left_Black: case Left_Middle_Black:Turnleft(); break;default: Turnfoward(); }}}
六、其他
其实也可以采用电磁寻迹来做,电磁模块反应速度跟快更准更加灵敏
七、代码下载
点这里
我设置了关注我就可以下载,关注我一定不会让你失望!
八、视频展示
点这里
作者:shawn
2021.2.14(大年初三)
19:04
All rights reserved
STM32f4日记8之四轮三路寻迹小车实验(小车实验二:红外模块检测寻迹(左拐,右拐,前进,停止))相关推荐
- 22、4路红外模块实现寻迹小车
目录 1.简介 2.使用例子 3.资源下载 正文 1.简介 4路红外寻迹模块是为智能小车. 机器人等自动化机械装置提供一种多用途的红外线探测系统的解决方案. 该传感器模块对环境光线适应能力强, 其具有 ...
- 智能循迹避障小车的红外模块
智能循迹避障小车的红外模块 - 智能循迹避障小车的红外模块用于3个功能-----------循迹,避障,测速. 红外循迹与红外避障 红外循迹TCRT5000L 红外避障 .观察原理图我们可以发现,它们 ...
- ZYAR20A 亚克力2驱 蓝牙 298寻迹避障机器人 —— 小车前后左右综合实验
在下载到开发板之前要选择好板和端口,具体参见: ZYAR20A 亚克力2驱 蓝牙 298寻迹避障机器人 -- Arduino相关设置 代码 // 智能小车前后左右综合实验 //============ ...
- 红外寻迹小车基于K128单片机的红外对管飞思卡尔智能车(5个对管)程序部分
红外寻迹小车基于K128单片机的红外对管飞思卡尔智能车(5个对管)软件部分包括: 出库 直行模块 大,小弯道 环岛 s弯 停车 #include "headfile.h" #inc ...
- 寻迹避障小车系统的组成
寻迹避障小车系统通常由以下几个部分组成: 硬件部分:这包括小车本身.电机驱动.传感器.控制器等. 软件部分:这包括小车的控制程序.寻迹算法.避障算法等. 电源系统:这可能包括电池.充电器等. 外部通信 ...
- 设计寻迹避障小车的心得体会
设计寻迹避障小车是一个很有趣的项目,在这个项目中,我们可以学到很多有关机器人控制.感知和自主导航的知识. 首先,我们需要考虑如何使小车能够寻找到预定的路径并避开障碍.这就需要我们使用传感器,如超声波传 ...
- 寻迹避障小车设计的ppt怎么做
对于寻迹避障小车的PPT设计,建议按照以下步骤进行: 明确目标:首先,需要明确自己的PPT是为了什么而制作的,是为了介绍小车的功能还是为了展示小车的设计方案,或者是为了向某个特定的受众展示小车的性能数 ...
- 51单片机智能小车C程序 蓝牙遥控+避障+自动寻迹
/********************************************************* 文件名:car.c 文件说明:小车的蓝牙,避障,自动寻迹C程序 ...
- 简述寻迹避障小车各个模块功能
寻迹避障小车是一种能够自动在环境中行进,并能避开障碍物的小型机器人.它通常由以下几个模块组成: 控制模块:负责控制小车的运动,并处理来自其他模块的信息.这可能包括使用电机控制器来控制电机,以及使用传感 ...
最新文章
- 每天一个linux命令-touch
- matlab dsearchn,cKDTree与dsearchn
- 设计费收费标准2002修订_@设计师,2019景观园林设计收费标准,注意查收!
- java厨房_JAVA环境搭建,厨房安装图文教程!
- cs231n__4. Backpropagation and Neural Network
- 敏捷开发“松结对编程”实践之一:人员结构篇(大型研发团队,学习型团队,139团队,师徒制度)...
- XCode小白配置OpenGL练习环境
- Microsoft Store 微软商店中 APP 独立安装包下载方法
- 16行Python代码 批量采集 短视频音乐素材❤
- 2020-08-31 ubuntu18.04下安装gitlab,以及使用邮箱注册
- 初学JAVA项目(四、魔域:文字RPG游戏)
- console口和telnet登录交换机
- Solidworks如何打开swb文件
- 疑问代词which/what/who的用法
- Ubuntu下为你的Jupyter Notebook配置桌面快捷方式和应用图标
- 浏览器提示代理服务器出现问题,或则地址有误
- 送书【新书】 |《Git从入门到精通》
- python利用有道翻译做一个实时翻译软件
- 什么是readout function/readout函数
- 总结用过的几个视频同步分离电路--LM1881
热门文章
- 创意时间轴系列图表(时间轴 时间线 里程碑 历史足迹 大事记)
- FFMpeg 实现从视频中提取音轨
- python房屋租赁系统的设计与实现_房屋租赁系统设计与开发
- Photoshop脚本 旋转画布
- 新零售行业ERP系统为何首选SAP系统
- Apache IoTDB PMC 乔嘉林荣获 2022 杰出开源贡献者|开源技术强大,开源文化活跃...
- 一个公司的团队组织介绍。(转载)
- linux常用压缩、解压缩文件或文件夹命令tar、zip
- Android问题解决:android.util.Base64.encode 导致签名不匹配 SignatureDoesNotMatch
- MES系统的应用(下)