步骤1:工具和零件
工具
此项目需要以下工具:《
烙铁
助焊双手
杜邦压接工具
1.5mm六角扳手
电线涂层清除工具
剪线钳
热胶枪
镊子
放大镜(手机中的物理或应用)
扁嘴钳
零件
本项目使用以下部件:
10x VL53L0X GY-530分线板
Arduino(Uno,Nano,Mega,Zero,Mini等)
面包板和一些面包板电线
AWG#26不同颜色的电线
AWG#30单芯电线
5x Dupont公连接器
5x单针Dupont外壳
10x 3D打印分线板支架
1x 3D打印圆形框架
10x M2x10平头螺钉
10x SOT-23 AO3400 N通道MOSFET
小电容(10~100uF)
分线板
我使用的VL53L0X分线板是GY-530。还有Adafruit版和Pololu版。如果可行,我建议使用Adafruit或Pololu的产品,因为它们可以制作出色的产品,出色的教程和出色的软件库。我在Adafruit的VL53L0X库上进行了测试,并使用了Pololu的VL53L0X库的修改版本。
杜邦连接器
杜邦连接器用于面包板。您可以使用手头的任何其他类型的连接。
螺丝和3D打印件
M2螺丝,支架和圆形框架用于将传感器放置成圆形排列。您可以使用任何其他方法,例如使用卡板,模型木材,粘土,甚至将热胶粘在罐上。
第2步:黑客攻击板
检测锥
我用一个模块绘制检测锥。使用大多数3D打印机器人作为目标。距离显示在LED显示屏上,并粗略测量。测量数据记录到Microsoft Excel文件中,并使用曲线拟合功能。最佳拟合是自然对数曲线,有效距离为3厘米至约100厘米。
在60 cm处,单个传感器的检测曲线约为22 cm。对于20厘米宽的目标,雷达阵列的10~15度的圆形间隔应产生可接受的扫描分辨率。
I2C地址
虽然VL53L0X I2C器件地址是可编程的,但需要通过微控制器完全控制XSHUT引脚。执行此操作的顺序为:
电源应用于AVDD。
通过将 ALL 的XSHUT引脚驱动为低电平,所有VL53L0X芯片都进入Hw待机(复位)状态。
每个芯片一次退出复位状态。引导后的默认I2C地址为0x52。
通过I2C命令将芯片地址更改为新地址。例如,0x52更改为0x53。
对所有芯片重复步骤3和4.
理论上,对于7位地址范围,最多可以在同一总线上驱动126个单元。然而,实际上,微控制器的总线电容和吸收电流限制可能/应该限制最大器件数量。
新的I2C地址未存储在VL53L0X芯片中,以防止掉电或复位。因此,每次加电都必须进行一次该过程。这意味着雷达阵列中的每个单元都需要一个宝贵的引脚。对于具有10+或20+单元的雷达带,这对于布线和引脚消耗来说太不友好了。
如STEP1所述,幸运的是VL53L0X芯片上有一个GPIO1引脚,最初用于中断,可以完成这项工作。
GPIO-XSHUTN菊花链
GPIO输出在启动时处于高阻态,在有效时开漏至低电平。根据数据表中的建议,GPIO和XSHUT引脚被拉高至GY-530分线板上的AVDD。为了可靠地将所有VL53L0X芯片置于Hw待机状态(驱动XSHUT为低电平),我们需要为每个XSHUT引脚提供逻辑非门(反相器)。然后我们将一个芯片(第N个芯片)的GPIO输出连接到下游芯片(N + 1芯片)的XSHUTN(XSHUT-NOT)。
上电后,所有GPIO引脚(无效)被上拉,所有后续XSHUT引脚被NOT门驱动为低电平(XSHUTN引脚连接到微控制器的第一个芯片除外) 。下游芯片的I2C地址更改和XSHUT释放是逐个软件完成的。
如果您使用不同的分线板,则需要确保上拉电阻是否到位,并进行适当的调整。
添加LED
在下一步中,将一个小的0805 SMD LED添加到分线板,从XSHUT焊盘连接到相邻电容的GND端子。虽然LED本身不会影响模块的运行,但它确实为我们提供了XSHUT逻辑电平的良好视觉指示。
将LED与XSHUT引脚上的上拉电阻(我的情况下为10k)串联,会引入电压降。而不是3.3v的高逻辑电平,红色0805 LED的正向压降测量为1.6v。虽然这个电压高于数据表中的高逻辑电平(1.12v),但蓝色LED更适合这种黑客攻击。蓝色LED的正向压降约为2.4V,安全地高于芯片的逻辑电平。
添加N-MOS逆变器(逻辑非门)
小型SOT -23 N沟道MOSFET堆叠在我们添加的LED上。需要在分线板上焊接两个端子(D,S),并使用#26线将剩余端子(G)连接到上游板GPIO引脚。
添加SMD元件的注意事项
在不适合的分线板上焊接SMD元件并非易事。如果你还没有听说过0805,SMD,SOT-23,你可能以前没有焊接那些微小的元件。在手工处理这些微小元件时,很常见的是:
小东西刚刚掉下来,永远消失了,
小东西上的小垫子只是剥去。
小东西上的小腿刚破了。
焊锡刚聚集成一团,无法分开。
还有更多。..
如果你还想制作这种雷达,你可以:
将组件更改为更大的包,例如DIP样式。
获得比实践和消费所需的更多组件。
步骤3:焊接0805 LED
焊接0805 SMD LED
在非SMD设计的分线板上手工焊接0805 LED并非易事。以下步骤是我建议焊接LED。
使用辅助手握住分线板。
在SMD电容器边缘和“XSHUT”焊盘上放置一些焊膏。
使用烙铁在电容器边缘添加一些额外的焊料。
在0805 LED的两端涂上一些焊膏。
使用烙铁在0805 LED的两端加一些锡。
使用镊子将LED放置在照片中。阴极端通常有一条标记线。在我的例子中,阴极端有一条绿线。将阴极端放在电容器端。
使用镊子在LED上向电容器添加轻微压力,并通过同时向电容器端加热来将LED焊接到电容器端。不要用力按压LED。它的盖子可能会在高温和过大压力下破裂。焊接后,在侧面添加温和的压力,测试LED是否焊接到位。
现在将LED焊接在XSHUT浸渍垫上。此步骤应该更容易。
注意:图中所示的电容器端是该分线板上的接地端子。并且通过电阻器将上拉焊盘XSHUT上拉。
测试LED
当您接通电源(ex 5V)并接地到分线板时,LED应该亮起。
步骤4:焊接N沟道MOSFET
焊接AO3400 N沟道MOSFET
该MOSFET采用SOT-23封装。我们需要将它“堆叠”在LED上,并添加一根电线:
在所有三个端子上放一些焊膏和锡。
使用镊子将MOSFET放置在0805 LED的顶部。 S端子应接触电容器顶部
用电容器端焊接S端子,如图所示。
切割一小段AWG#30单芯线,并去除约1cm的涂层。
使用烙铁从下方熔化XSHUT孔中的焊料,并从上方插入#30线,如图所示。
将导线的上端焊接到MOSFET D端子。
切断多余的电线。
注意:MOSFET S端子连接到电容器端,如图所示。这一端是地面终端。 MOSFET D端子连接到原始XSHUT引脚。
此时端子G未连接。它的位置恰好高于一些上拉电阻。确保它们之间有间隙(N-MOS和电阻)并且彼此不接触。
步骤5:连接传感器阵列
公共总线接线
公共巴士包括:
Vcc电源。照片中的红色。我正在使用具有5v逻辑的arduino nano。分线板具有LDO和电平转换器。因此使用5v作为Vin是安全的。
接地。照片中的黑色。
SDA。照片中的绿色。
SCL。照片中的黄色。
这四行是常见的行。切割适当长度的电线并将它们并联焊接到所有传感器模块。我从arduino到第一个传感器使用了20厘米,之后每个5厘米。
XSHUTN和GPIO接线
20厘米白色线从arduino控制引脚到第一个传感器的XSHUTN引脚。这是使第一个VL53L0X芯片退出复位并更改I2C地址所需的控制线。
每个模块之间的5厘米白线是菊花链控制线。上游芯片(例如芯片#3)GPIO焊盘连接到下游(例如,芯片#4)XSHUTN脚(N沟道MOSFET G端子)。
小心不要制作G端子与下面的电阻器接触。您可以在间隙中添加绝缘胶带。这里可以使用通常随VL53L0X芯片提供的保护衬垫。
使用热风枪粘住控制线。
热胶
正如您在照片中看到的那样,在N-MOS G端子附近的白色控制线上有一团热胶。这一步非常重要,绝对必要。直接焊接到SMD元件腿部的浮动焊接非常薄弱。即使电线上的小压力也可能会使腿部断裂。轻轻地执行此步骤。
测试LED
当您向传感器阵列供电(例如3.3v-5v)和接地时,第一个模块上的LED应响应XSHUTN线逻辑电平。如果将XSHUTN连接到逻辑高电平(例如3.3v-5v),LED应该关闭。如果将XSHUTN线连接到低(接地),则第一个模块上的LED应该亮起。
对于所有后续模块,LED应该关闭。
此测试是在连接到arduino之前进行。
-
雷达
+关注
关注
50文章
2905浏览量
117386 -
Arduino
+关注
关注
187文章
6465浏览量
186722 -
LIDAR
+关注
关注
10文章
324浏览量
29374
发布评论请先 登录
相关推荐
评论