天天看点

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

智能车方案

  • 一 设计思路
    • 二 设计方案
      • 三 设计比较
  • 一 设计思路
    • 二 设计方案
      • 红外传感器避障
      • 超声波避障

一 设计思路

二 设计方案

三 设计比较

一 设计思路

在之前的蓝牙小车中,预留了一些端口,这次想做一下避障的设计。因为我的端口比较少了,真后悔当时才画了这一些串口。但是,事在人为,虽然麻烦一点,但是凭一两个端口应该也能够做到,大不了再外接一个单片机…

废话不多说,我在查询材料的过程中见过的诸多方案,现在把方案列写出来,当作保存了,也方便各位小伙伴查询资料能轻松一点。

  • 红外避障方案
    • 项目
      • 项目
  1. 项目1
  2. 项目2
  3. 项目3
  • 计划任务
  • 完成任务

二 设计方案

红外传感器避障

市场上的红外传感器模块有很多,但是原理都差不多,下面就举几个例子。
           

上图:

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

TCRT5000和TCRT5000L是反射传感器,其中包括红外发射器和封装在屏蔽可见光的铅光电晶体管。该套件包括两个安装夹。TCRT5000L是长漏版。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

最大CTR(rel)即最大 Iout/Ii时,测量距离≤2.5mm

集成了遮光滤光片,降低受感光影响,看了一下芯片手册,没有什么特别注意的地方,这里就不详述了。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

这个是模块原理图,显而易见,电位器以左都是电源指示电路和滤波,看TCRT5000,输入VCC供电,检测距离。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

Ic是红外发射器的电流,由上图Fig.9可见,在约2.5mm之前,Ic电流和d值(红外发射器和接触面的距离)呈非线性关系,随着d值减小,Ic也减小。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

Ic减小,I(F)也减小,Ic=1mA时I(F)=10mA。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

再结合Fig.7,可知V(ce)=1V,也就是说,在2.5mm范围内,随着距离d的减小,晶体管电压也会减小且电压会小于1V,剩下的由和晶体管串联的10K电阻分压。

之后的电路就好分析了,LM393比较器正极接晶体管电压V(CE),负极接一个电位器,可调分压。当LM393正极电压V=1V时,负极分压V(F)=0.9时,输出端为高电平,且指示灯不亮,DO=1;当LM393正极电压V=0.5V时,负极分压V(F)=0.9时,输出端为低电平,且指示灯点亮,DO=0;

还有一部分的Ao就是滤波后,模拟量输出了,示波器或者仿真的波形就是V(CE)的电压变化波形了。

由于可以调节电位器,所以不仅可以在2.5mm范围内调节,我们还可以增加测量距离,这和电位器调节息息相关,所以想要测量多大的距离输出低电平,这需要你调试成你所需的就可以。

PS:该传感器还能够进行黑白线循迹,原理就是黑线吸收红外光,白线不怎么吸收。就相当于检测黑线的时候距离相当于很远,很少反射回去,所以LM393正极电压很低,输出低电平。同理,白线输出高电平。

总结:但是红外传感器是需要很多个才能实现避障功能,实在是太难为我只有一点点端口的车了。这个传感器就是接收高低电平信号,硬件软件方面都一目了然了。

超声波避障

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

这是HC-SR04超声波模块的原理图,找到清晰度不错的废了不少劲。大多数平台都需要注册和积分才能够下载,可是这应该是网上开源的,不应该会这么难找。

进入主题

先来讲一下这个MAX232,MAX232设备是一个双驱动/接收器,包括一个电容电压发生器,从单个5-V电源供应TIA/EIA-232-F电压水平。每个接收器将TIA/EIA-232-F输入转换为5v TTL/CMOS电平。这些接收器的典型阈值为1.3 V,典型滞后为0.5 V,可以接受±30v的输入。每个驱动器将TTL/CMOS输入电平转换成TIA/EIA-232-F电平。

EIA/TIA-232是一种设备间数bai据通信标准,du是由是zhi美国电子工业协dao会/电信工业协会(Electronic Inzhuanstries Association / Telecommunications Inshustries Association,EIA/TIA)在内1969年公布的通信协议标准。容它最初主要用于近距离的DTE和DCE设备之间的通信。后来被广泛用于计算机的串行接口(COM1、COM2等)与终端或外设之间的近地连接标准。该标准在数据传输速率20Kbps时,最长的通信距离为15米。该标准对应的国际标准是CCITT推荐的标准V.24.

大概就是将 TTL/CMOS电平转换成串行接口的方式。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

上图是MAX232的引脚图,TIN是逻辑电平输入,TOUT是RS232线数据输出。难道说是,超声波探头需要RS232线数据驱动吗。我去找了赵超声波探头。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路
暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

找到了上面了两个图,在40KHZ时工作比较好。所以探头就是跟着输入的频率来发送超声波。但是TTL电平也能够设置40KHZ的频率,为什么需要MAX232呢。所以应该不是这个问题,那么是不是因为逻辑电平的问题呢。

TTL输出高电平>2.4V,输出低电平<0.4V。在室温下,一般输出高电平是3.5V,输出低电平是0.2V。最小输入高电平和低电平:输入高电平>=2.0V,输入低电平<=0.8V,噪声容限是0.4V。

RS-323C标准对逻辑电平的定义。对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号;接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是当传输电平的绝对值大于3V时,电路可以有效地检查出来,介于-3~+3V之间的电压无意义,低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在±(3~15)V之间。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

然后我又找到了这个输入电压10Vrms有效值/均方根值,在这里表示直流的有效值。问题找到,MAX232为了将逻辑电平调高至±(3~15)V,频率直接由STC11芯片(听说没有这个芯片,这只是大概说明这是一个主控芯片)分频得到。然后通过STC11控制MAX232的工作状态,超声波启动。

上图的TL074就是一个放大电路。用这个图比较直观。

暑假DIY一个STM32智能车第二天之避障一 设计思路一 设计思路

不行,看到这个图可太困了,第一次尝试解出来失败,睡觉,明天再来。

2021.1.12

继续阅读