步骤1:所需的组件和模块
选择组件时请记住,此设备是为了装入口袋而设计的。因此,我找到了最小的显示器,电池和传感器。
1。 3d打印案例
2。夏普GP2Y0A41SK0F红外距离传感器 X 1
3。 MPU6050加速度计/陀螺仪模块 X 1
4。升压+充电模块 X 1
5。 Grove鼠标编码器 X 1
6。 128 X 32 OLED显示屏 X 1
7。 Arduino pro mini ATMEGA328 5V/16MHz X 1
8。 12毫米蜂鸣器 X 1
9。 3.7v,1000mah锂电池 X 1
10。 TTP223触摸按键模块 X 3
11。 20x10x2mm钕磁铁 X 1
13。漆包铜线
14。 10K电阻 X 2
15。 19(长度)X2(直径)mm钢轴 X 1
16。 3mm led X 1
17。任何乙烯基贴纸卷
18。 Micro USB线
MPU6050
MPU6050是一款mems设备,由3轴加速度计和3轴陀螺仪组成。它。这有助于我们测量加速度,速度,方向和位移。这是一个基于I2C的设备,运行在3.3到5V之间。在这个项目中,MPU6050用于测量表面是否水平,还可以测量线的角度。
GROVE MOUSE ENCODER
这是一个机械增量式旋转编码器,带有旋转方向和旋转速度的反馈数据。我使用这个编码器,因为它是我能找到的最小的编码器,编程部分也很简单。该编码器每转24步。使用此功能,如果已知车轮直径,我们可以计算车轮在编码器上移动的距离。关于如何执行此操作的计算将在此教程的后续步骤中进行讨论。该项目使用编码器测量曲线距离。
SHARP GP2Y0A41SK0F IR DISTANCE MODULE
这是模拟传感器,根据物体与传感器的距离,提供可变电压作为输出。与其他IR模块不同,被检测物体的颜色不会影响传感器的输出。有许多版本的锋利传感器,但我们使用的传感器范围为4 - 30厘米。传感器工作电压介于4.5至5.5伏之间,仅消耗12 mA电流。红色(+)和黑色( - )线是电源线,第3线(白色或黄色)是模拟输出线。该项目中使用的传感器无需接触即可测量线性距离。
步骤2:所需工具
1。一把剪刀
2。切刀或任何其他超锋利刀片
3。镊子
4。热胶枪
5。瞬间胶水(如超级胶水)
6。橡胶基粘合剂(如Fev键)
7。烙铁和铅
8。激光切割机
9。 3D打印机
10。带圆盘切割钻头的旋转工具
11。剪线钳
12。砂纸
步骤3:STL文件到3D打印
此设备的大小写是在Autodesk Fusion 360软件中设计的。有3件。这些部分的STL文件如下所示。
“ LID ”和“滚轮”文件可以不带支持打印,而“ BODY ”文件需要支持。我使用绿色PLA在100%填充物下以0.2mm层高度印刷它们。使用的打印机是TEVO狼蛛。
步骤4:用VINYL覆盖外壳
1。使用细砂纸使3D打印件的所有外表面平滑,使乙烯基贴纸易于粘贴。
2。使用湿布去除打磨后可能残留在表面上的所有细小颗粒。
3。表面干燥后,在表面涂上乙烯基贴纸。确保没有气泡。
4。用剪刀剪掉边缘周围多余的贴纸。
5。现在在外壳的两侧贴上贴纸并修剪多余的贴纸。
6。使用切纸机或任何其他剃须刀切割OLED显示屏,充电端口,编码器轮和尖锐的红外传感器的孔。
警告:非常小心使用锋利的刀片和工具
步骤5:电路图
编程A PRO MINI
与Arduino nano不同,pro mini无法通过插入USB线直接编程,因为它没有内置的USB转串口TTL转换器。因此,首先我们应该将外部USB到串行转换器连接到pro mini以便对其进行编程。第一张图显示了这些连接是如何进行的。
Vcc - 5V
GND - GND
RXI - TXD
TXD - RXI
DTR - DTR
完整的电路图
第二张图显示了该项目的完整电路图。
D2 - INT MPU6050
D3 - I/O(模式)
D5 - I/O(UNIT)
D6 - I/O(ZERO)
D7 - +(1)ENCODER
D8 - +(2)ENCODER
A0 - I/O SHARP IR
A1 - +蜂鸣器
A4 - SDA(OLED和MPU6050)
A5 - SCL(OLED和MPU6050)
GND - GND全部模块和传感器以及升压模块
VCC - +升压模块USB端口
B + - BATTERY +
B- - 电池 -
拍摄第3张照片我正在创建代码。这是一个临时设置,用于测试代码,模块和电路。您可以选择尝试。
步骤6:插入磁铁
1。在空腔中涂抹瞬间胶水,以便在充电端口孔下方提供磁铁。
2。将磁铁放入空腔并按住,直到胶水使用非磁性物品干燥。
磁铁有助于防止设备在金属表面上滑落或移动。
第7步:塑造传感器
为了使设备尽可能小,锐利红外传感器和编码器的安装支架使用带切割盘位附件的旋转工具切断。
步骤8:放置OLED显示器
1。在OLED显示屏背面标记引脚名称,以便以后可以正确连接。
2。将OLED显示屏放在正确的位置,如第二张图所示。显示器的开口设计成使得显示器稍微进入墙壁。这可确保显示器处于正确的位置和方向,并且不易移动。
3。在显示屏周围小心地涂抹热胶。热胶是首选,因为它有点像显示器的减震器,并且在应用时不会对显示器施加压力。
步骤9:连接触摸按钮和MPU6050
1。使用橡胶基粘合剂。
2。粘合剂涂在两个表面上。
3。确保所有焊接点面向外壳的开口侧,将模块放置在指定的位置,如图所示。
4。将模块和外壳粘在一起后,将它们粘在一起至少2分钟。
步骤10:提升+充电模块
这是我从便宜的单电池移动电源中取出的模块。该模块具有电池保护电路以及5v,1安培升压转换器。它还有一个ON/OFF按钮,可用作整个项目的电源开关。使用烙铁拆下模块上的母USB端口,并将两根电线焊接到+ 5v和接地端子,如第4张图所示。
焊接2公头插头连接到B +和B-在前两张图片中显示,然后检查模块是否与电池配合使用。
在为模块提供的平台上涂抹瞬间胶水,轻轻放置模块,确保充电端口和开口完全对齐。
步骤11 :放置电池和夏普红外传感器
1。通过使用烙铁或打火机加热电线的尖端直到绝缘体熔化,去除漆包铜线的涂层。然后将导线小心地焊接到OLED显示器上。现在这样做是因为放置电池后可能很难做到这一点。
2。电池在升压模块的平台下滑动,使其导线连接器朝向OLED显示屏的方向,如第3张图所示。
3。尖锐的红外传感器插入为其提供的插槽中。
步骤12:连接ARDUINO和BUZZER
1。根据提供的电路图,USB转串口转换器焊接到Arduino。
2。热胶用于将Arduino粘在电池外壳的中间。
3。将电线焊接到蜂鸣器端子,然后将蜂鸣器推入为其提供的外壳上的圆形腔中,如第7张图所示。
步骤13:ENCODER
1。使用刀片清洁编码器的端子。
2。电阻器焊接到编码器上。
3。根据电路图焊接铜线。
4。钢轴插入3D打印轮。如果车轮太松,请使用瞬间胶将其固定。
5。将轴轮装置插入编码器。如果它松散使用即时胶水。但这一次,要小心不要让任何胶水进入编码器机构。
6。将编码器放置在外壳内,使车轮通过提供的开口伸出,并确保其自由转动。
7。使用热胶将编码器固定到位。
步骤14:布线和焊接
1。电路接线按照之前“ CIRCUIT DIAGRAM ”步骤中给出的电路图进行。
2。所有传感器和模块的+ ve和-ve导线并联连接到电源。
3。确保没有任何导线阻挡IR模块的视图或与编码器轮缠绕。
步骤15:编码
1。下载下面提供的代码和库。
2。提取库文件夹。将这些文件夹复制到“Arduino”文件夹中的“libraries”文件夹中,该文件夹位于计算机的“我的文档”中(如果您是Windows用户)。
3。在Arduino IDE中打开提供的代码(“ filal_code ”)并将其上传到Arduino。
步骤16:MPU6050的校准
由于MPU6050加速度计/陀螺仪模块刚粘在外壳上,因此可能不是完美的水平。因此,请遵循以下步骤来纠正此零错误。
步骤1:将设备插入计算机并将其放置在您已知的水平表面上(例如:瓷砖地板)
步骤2:通过触摸“M”按钮进入设备的“LEVEL”模式并记下X和Y值。
第3步:将这些值分配给代码中的变量“ calibx ”和“ caliby ”。
第4步:再次上传程序。
步骤17:计算编码器每步运行的距离
编码器轴每转的步数,N = 24步
车轮直径,D = 12.7mm
周长轮,C = 2 * pi *(D/2)= 2 * 3.14 * 6.35 = 39.898 mm
因此,每步移动的距离= C/N = 39.898/24 = 1.6625 mm
如果你们使用不同直径的轮子或编码器,使用不同的步骤通过替换上面公式中的值,找到每mm移动的距离,一旦找到分辨率,在代码中的公式中输入该值,如图所示。
编译并上传代码再次进入Arduino。
完成编码器的校准并上传修改后的程序后,您可以从Arduino Pro Mini拆焊并移除USB转串口TTL转换器模块。
步骤18:在关闭案例之前测试所有事项
要测试的事项:
1。如果充电器可以很容易地插入端口,并且电池正常充电。
2。电源开/关按钮是否正常工作。
3。 OLED以正确的间距以正确的方向和位置显示所有内容。
4。触摸按钮都正常工作并正确标记。
5。如果编码器在转动时给出距离值。
6。 MPU6050和SHARP IR模块正在工作并提供正确的读数。
7。蜂鸣器正在响起。
8。打开时确保内部没有任何东西升温。如果发生加热,则意味着某处布线错误。
9。确保所有部件都固定在适当的位置,并且不会在外壳中移动。
步骤19:放置推按钮扩展器并绑定案例
使用LED延伸按钮轴
充电模块上的按钮轴也是通过套管上的开口短出来。因此,使用3mm LED头作为扩展器。
1。使用剪线钳切断LED的支脚。
2。 LED的平面使用砂纸制成光滑的水平。如果LED太小而无法用手操作,请使用镊子。
3。将LED头放在外壳盖上的孔中,如图所示。确保LED不紧,因为当按下按钮时它应该滑入和滑出
结合案例
1。在身体和帽子的边缘上小心地涂抹任何橡胶基粘合剂(我使用Fevi Bond)。
2。等待5至10分钟,使胶稍微晾干,然后将两半压在一起。确保编码器轮的钢轴的自由端进入盖子上为其提供的孔中。
3。使用重负荷(我使用UPS电池)在胶水干燥时保持两个部件都被按下。
这里建议使用橡胶基粘合剂,因为以后必须打开外壳以备电池使用更换或重新编程,可以通过沿关节运行锋利的刀片或刀片轻松完成。
步骤20:标记触摸按钮
完成标签以便轻松识别触摸按钮位置
使用我自制的激光切割机从白色不干胶标签上切下字母。
用镊子将切片从主片上取下然后涂在设备上在正确的位置和方向。
最大字母高度:8mm
最大字母宽度:10MM
警告:激光焊接时激光阻挡安全眼镜ENGRAVER或CUTTER
第21步:结果
-
测量
+关注
关注
10文章
4766浏览量
111125
发布评论请先 登录
相关推荐
评论