基于51单片机和蓝牙控制的红外小车

GP2Y0A02YK0F红外测距传感器与ESP32-S3驱动实现 红外测距传感器是嵌入式环境感知的基础元件,基于三角测量原理实现非接触式距离检测,具有抗环境光干扰强、材质适应性好等优势。其模拟输出特性要求高精度ADC采样与非线性校准,核心挑战在于电压-距离映射的数学反演与系统级误差抑制。在ESP32-S3平台中,需结合ADC1硬件配置、内部基准校准、软件均值滤波及幂律公式拟合,构建鲁棒测距链路。该方案广泛适用于机器人避障、液位监测与工业定位等场景,兼顾教学验证与轻量级量产需求,是模拟传感器嵌入式驱动开发的典型范例。 阅读详情

整理资料,翻到大一时候做的一个比赛,要求做一个电子小车,没有很多具体要求,算是比较开放一点的题目,虽然这个算不上厉害,但在那段期间感觉真的学到了很多,总结了一下,就是永远不要停下学习的脚步。

1、选用的传感器是夏普的红外测距传感器,一开始的想法是通过这个传感器来实现跟随人走的小车,虽说现在想起来当时的确少考虑了很多实际问题,而且实现的方法也不大适合,不过有收获就好~
这里写图片描述
GP2Y0A02YK0F是夏普的一款距离测量传感器模块。它由PSD(position sensitive detector) 和IRED (infrared emitting diode) 以及信号处理电路三部分组成。由于采用了三角测量方法,被测物体的材质、环境温度以及测量时间都不会影响传感器的测量精度。传感器输出电压值对应探测的距离。通过测量电压值就可以得出所探测物体的距离,所以这款传感器可以用于距离测量、避障等场合。
(1). 距离测量范围: 20 to 150 cm
(2). 信号输出类型:电压模拟信号
(3). 包装尺寸:29.5×13×21.6 mm
(4). 功耗: 标称值33 mA
(5).供电电压:4.5 to 5.5V
(6).精度和采集的AD位数以及转化计算公式相关,10AD一般能达到0.1cm

2、电机驱动用的是L298N
L298N是ST公司生产的芯片。主要特点是:工作电压高,最高工作电压可达46V,并且可以驱动两个二相电机,可以直接通过电源来调节输出电压;可以直接用单片机的I/O口提供信号,而且电路简单,使用比较方便。
L298N的主要引脚功能如下:
+5V:芯片电压5V;
VCC:电机电压,最大可接50V;
GND:共地接法;
Output1—Output2:输出端,接电机1;
Output3—Output4:输出端,接电机2;
EN1、EN2:高电平有效,EN1、EN2分别为 IN1和IN2、IN3和IN4的使能端;
Input1~ Input4:输入端,输入端电平和输出端电平是对应的;

这里写图片描述

这里写图片描述
说起来这个还算是第一次完全靠自己动手刷的板,记得那会没有L298N这个芯片的封装,于是就自己学着把他画出来,那是最让我头晕的就是镜像了。。。。。害得我刷了5块板才弄对,还有一个就是要记得检查自己画的对不对,像我第一次画错了什么都没管就直接把板刷出来,最后发现画错了-。-
然而最心塞的是上图的板也是不对的,L298N这个芯片的反过来了,最后就直接把芯片焊在底层 >_<|||
从那以后学会了设计这些东西真的需要时间,对于新手并不是一时半会就能搞定的,这不是一件一蹴而就的事啊,需要积累经验,沉淀知识。

3、电源稳压
给51单片机、红外、蓝牙供电
LM2940稳压电路:
输出电压固定的低压差三端稳压器;输出电压5V;输出电流1A;输出电流1A时,最小输入输出电压差小于0.8V;最大输入电压26V;工作温度-40~+125℃;内含静态电流降低电路、电流限制、过热保护、电池反接和反插入保护电路。

4、ADC&单片机
51单片机型号是STC89C52RC,内部没有内置的ADC,只能用ADC芯片来采集红外测距传感器的值;
(1).AD芯片:ADC0804
工作电压:+5V,即VCC=+5V。
模拟转换电压范围:0~+5V,即0≤Vin≤+5V。
分辨率:8位,即分辨率为1/28=1/(256-1),转换值介于0~255之间。
转换时间:100us(fCK=640KHz时)。
转换误差:±1LSB。
参考电压:2.5V,即Vref/2=2.5V。

用的是典型接法
这里写图片描述
转换时序图:
这里写图片描述

5、蓝牙
这里写图片描述
BLK-MD-HC-05蓝牙模块是深圳市博陆科电子科技有限公司专为智能无线数据传输而打造,采用英国CSR公司BlueCore4-Ext芯片,遵循V2.0+EDR蓝牙规范。
本模块支持UART,USB,SPI,PCM,SPDIF等接口,并支持SPP蓝牙串口协议,具有成本低、体积小、功耗低、收发灵敏性高等优点,只需配备少许的外围元件就能实现其强大功能。

这次的比赛对我的成长有很大的影响,接触到了很多新的知识和方法,比如:红外测距传感器测得距离值和电压值之间的关系和手册给出会有一定的误差,我们可以做的一点就是通过多次测量这些值,然后用matlab拟合出近似的曲线方程,以此作为电压值和距离值的关系;
其次就是本来还想用MFC写一个上位机,那是学完C语言后接触过win32编程,MFC,用MFC写过一个炒鸡简单的计算器,最后因为还没深入学过,然后又没时间就放弃了,不过能做出来真的挺好的;
还有就是测速的问题,那时候了解到的一个测速方法是用霍尔传感器,当时都已经买回来了,使用也很简单,输出是数字信号,最后不知道咋的没有加上去。
现在回去看看之前的总结反思也是挺有意思的,毕竟都是一步一步做出来的,个人感觉有时间还是得回头看看自己做过的东西,说不定哪一天会因为这个使自己灵感大发呢~

基于51单片机的蓝牙循迹小车 硬件部分 电机驱动模块 L298N 红外对管模块 电源模块部分 蓝牙模块 直流减速电机(不带编码器) 硬件接线 软件部分 电机轮子动起来(定时器 pwm ) 红外对管实现感应亮灭LED灯(io) 蓝牙指令 + 蓝牙模块的学习(串口usart) 循迹整合代码 蓝牙整合代码 51单片机课程设计做了辆蓝牙小车,下面是对课程设计内容的一些总结 基于51单片机的蓝牙循迹小车硬件模块L298N工作原理问题以及解决方案红外对管工作原理HC-05 蓝牙模块模块介绍工作.. 阅读详情

相关推荐

51单片机智能小车

最近学校举办了一个智能小车比赛,比赛内容为用手机蓝牙控制小车拥有5个功能,分别是超声波舵机避障,测距(显示在LCD1602上), 红外跟随,循迹还有蓝牙控制小车前进后退左转又转以及停止。 文章目录 蓝牙控制所有功能 一、蓝牙控制前进后退左转右转停止 二、舵机超声波避障加测距 三、红外跟随 四、循迹 五、代码部分 六、完整代码 前言 基于51单片机的智能小车是比较基础的小车,很适合初学者学习 提示:以下是本篇文章正文内容,下面案例可供参考 一、整体思路 这款小...

m0_55977420的博客 1万+

Sharp_GP2Y0A 红外测距传感器 Arduino读取

Sharp_GP2Y0A GP2Y0A02YK0F, GP2Y0A710K0F Arduino 程序 GP2Y0A02YK0F 传感器参数: 20~150cm Analog output type. 4.5 to 5.5V, 33mA Block diagram Timing Chart Output 参考V-cm图, 用查表法, 连接Vout到Ardu...

weifengdq的专栏 1万+

智能循迹小车+蓝牙遥控

寻迹小车+蓝牙遥控 此程序主要应用的是51中的定时器中断和串口中断 定时器中断主要是让小车进行循迹; 串口中断主要是为了实现蓝牙遥控; 其中m0和m1分别代表的是白线和黑线,也就是小车的红外接收管对黑线的判断; 然后zkb1和zkb2都代表的占空比,zkb1代表的是右轮的占空比,zkb2代表的是左轮的占空比; IN1,IN2是控制右轮的,IN3,IN4是控制左轮的; 其中correct_left(...

weixin_44513216的博客 4370

夏普红外传感器GP2Y0A02YKOF

夏普红外传感器GP2Y0A02YKOF距离公式拟合方法

weixin_51060271的博客 1119

基于51单片机的智能小车(循迹、避障、蓝牙控制)

我们以L9110s电机驱动模块为新手小白讲一下这些模块怎么接线,后面就不多赘述模块如何接线了。VCC就是模块的电源正极(大多数的模块都是5V供电,具体的参考模块说明书),接到单片机最小系统的VCC引脚上。GND就是模块的负极,接到单片机最小系统的GND引脚上。剩下的引脚就接到单片机的IO口上即可。51单片机stc12c5a60s2、电机模块L9110S、红外避障模块、循迹模块、蓝牙模块、杜邦线若干、L0110S模块的A、B分别控制着两个电机,如果需要控制四个电机,则需要两个L0110S模块。

m0_63076898的博客 3904

基于C51的语音智能车(含循迹/跟随/避障/测速屏显/蓝牙WIFI4G控制等功能)

概况:本项目完全开源,基于stc89c52rc,语音控制切换循迹/跟随/避障/蓝牙控制等模式,包含测速屏显并传给上位机等功能。

qq_73379310的博客 1万+

【雕爷学编程】Arduino动手做(126)---红外测距GP2Y0A02YK0F通过OLED显示的几个参考案例

红外传感器基于三角测量原理。反射回来的红外光线被 CCD 检测器检测到以后,会获得一 个偏移值 L,利用三角关系,在知道了发射角度 a,偏移距 L,中心矩 X,以及滤镜的焦距 f 以后,传感器 到物体的距离 D 就可以通过几何关系计算出来了。在使用时,需注意测量范围、分辨率、反射率和环境光影响、供电和连接、数据处理和显示,以及安全等方面的注意事项。距离测量和监控:GP2Y0A02YK0F与Arduino和OLED显示屏的组合可用于测量和监控应用,例如测量物体与传感器之间的距离,并在显示屏上实时显示距离值。

雕爷学编程 1306

基于51单片机的蓝牙智能循迹小车设计

安装完成后将解压缩获得的Translations 汉化补丁文件,复制到 Proteus 8 Professional 安装目录中替换即可汉化。(Proteus8.13链接:https://pan.baidu.com/s/1uvWa5gUo4VRI4xJHxgZBrA提取码:2022)(Keil5 链接:https://mp.weixin.qq.com/s/3dXhwrrMIkVM7kV0SgoAfQ)实现小车行动路径上的烟雾测量及报警功能;4、掌握中断、定时器、串口的使用;2、掌握硬件电路的设计方法;

m0_70860570的博客 662

51循迹小车-集成蓝牙控制,超声波避障,红外目标跟随,实时测距显示。

最近学校举办了个小比赛,使用51单片机集成 蓝牙控制,舵机摇头超声波避障,红外目标跟随,测距显示。来简单分下。 完整代码会在文末贴出。 一开始直接让我疑惑的是51单片机只有两个定时器,而蓝牙通信波特率需要一个,超声波也需要一个,剩下舵机和PWM调速也要定时器明显不够用, 好在实际上比赛小车的芯片为52RC,拥有3个定时器,我的分配方案如下: T0舵机和PWM调速共用; ...

m0_48240405的博客 5845

红外测距传感器GP2Y0A21YK0F 10-80cm20-150CM距离单片机智能小车.zip

红外测距

GP2Y0A02YK0F 参考资料

主要介绍夏普红外测距的工作原理,输出方式以及接线图等

51单片机学习之智能小车(1)

51单片机学习之智能小车(1) 学习51单片机一段时间,很有必要自己动手做一点东西。 小车概述(功能,所用模块) (1)蓝牙控制 通过手机上蓝牙串口调试助手,实现无线控制小车运动与用户信息交流。 所用模块: BT-06蓝牙模块 (2)红外循迹 通过红外循迹模块,检测轨迹,自动按预定轨迹运动。 所用模块:红外循迹模块 (3)超声波避障 通过超声波模块检测障碍物的距离,实现自动避障。 功能实现 1、基础功能的实现: 1.小车电机: 采用TT马达,工作电压为3-6V,6V供电时,空载输出电流为230ma。 图示为

qq_46020744的博客 4187

基于51单片机的蓝牙控制

基于51单片机的蓝牙控制板,AD工程压缩。含PCB图。板载俩个继电器,可直接控制

课设-基于51单片机的智能小车(循迹+避障+APP控制)

基于51单片机的智能小车,可以实现循迹、避障、APP控制等功能;顺便提了一下自己大学的“造车”史!

kevin的博客 5万+

超声波和红外避障蓝牙小车完整文件

这是我之前刚开始自学单片机的时候自己开发写的一个蓝牙超声波红外避障小车,对于入门学习来说还是很有帮助,自己当时注释也详细,还有我用的蓝牙软件,希望对需要者能有帮助。两年多了,没想到积分自动上调的到了30,我又降成了3分2020-1-7

基于51单片机的蓝牙遥控小车

基于郭天祥51单片机的例程修改的简易蓝牙遥控程序,只要能看得懂郭天祥的历程代码就懂,里面配套了一系列的模块型号和资料

【单片机毕业设计推荐】基于 STM32/51 单片机的红外循迹避障蓝牙遥控智能小车设计与实现 基于 STM32/51 单片机的多模式智能巡线避障小车控制系统设计(022206)

本文设计一款基于 STM32 或 51 单片机的多功能智能小车控制系统。系统以单片机为主控核心,搭配 L293D 电机驱动模块、红外循迹传感器、HS-04 超声波模块、蓝牙通信模块与 LCD1602 液晶显示屏,采用 7.4V 18650 锂电池组供电。系统支持四种工作模式,可通过实体按键切换,分别实现红外自主循迹、超声波自主避障、循迹避障协同运行、手机蓝牙遥控功能。小车采用差速转向方式完成前进、后退、转向动作;超声波实时探测前方障碍物距离并在液晶屏展示,检测到近距离障碍时自动执行绕行动作;红外光电传感器识

bishe7_is_vx的博客 34

DTS 数据迁移

支持关系型数据库(MySQL, Oracle, SQL Server等)、NoSQL数据库、大数据系统等。DTS数据迁移是现代化数据架构调整和云迁移过程中的重要工具,能够大大降低数据迁移的复杂度和风险。DTS (Data Transmission Service) 是一种数据迁移和同步服务,:先迁移历史数据(全量),再实时同步新增变化(增量):不同数据库类型间迁移,如Oracle到MySQL。:将单库数据迁移到分库分表架构。:将业务数据迁移到分析型数据库。:将本地数据库迁移到云数据库。

qq_41081716的博客 749
上一篇: 建立自己的封装库(三)
下一篇: 韦根协议
headwind_
博客等级 码龄10年 113粉丝 24原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值