在这个项目中,我们使用Arduino制作了用于自行车或任何汽车的Cool Speedometer,它使用蓝牙将速度广播到我们使用Processing处理的Android应用程序中。整个项目由18650锂电池供电,因此与您的车辆一起具有很高的便携性。为了给它增添更多趣味,我增加了为手机充电的选项,因为它可以显示您的速度。是的,由于18650具有高充电密度并且可以轻松充电和放电,因此您也可以将其用作移动设备的移动电源。
我将完全引导你从头开始到完成,速度计可他迷上了我们的车辆和测试。这里最酷的功能是您可以自定义您的android应用以进行个性化设置,并根据自己的创造力添加更多功能。但是,如果您不想自己构建应用程序,而只是构建Arduino部分,那么不用担心,只需下载APK文件(进一步阅读)并安装在Android手机中即可。还要在末尾查看完整的视频。
因此,让我们看看构建该项目和计划预算所需的材料。所有这些组件都很容易获得;如果您在购买这些产品时遇到困难,请在评论部分告诉我。
硬件要求:
- Arduino Pro迷你版(5V 16MHz)
- FTDI板(对于迷你编程,您也可以使用UNO)
- 具有USB输出充电器的3V至5V DC-DC Boost转换器
- TP4056锂电池模块
- 蓝牙模块(HC-05 / HC-06)
- 霍尔效应传感器(US1881 / 04E)
- 18650锂电池
- 小块磁铁
- 穿孔板
- 冰棍连接器(公和母)
- 焊接套件
- 小型外壳盒,用于安装套件。
编程要求:
- Arduino IDE
- 使用android ADK处理IDE(仅当您想编写自己的应用程序时。)
- Windows / Mac PC
- Android手机。
它可能看起来像少量的组件和材料,但是请相信我,一旦完成此项目,您会觉得它们值得花时间。
使用霍尔传感器和Arduino测量速度:
在开始使用硬件之前,请让我们知道如何实际使用Arduino测量速度。使用Arduino可以测量车辆速度的方法有很多,但是使用霍尔传感器是最经济,最简单的方法。甲霍尔传感器是检测磁体的极性的组分。例如,每当磁铁的一个特定磁极靠近传感器时,传感器就会改变其状态。霍尔传感器有多种类型,您可以使用本项目中的任何传感器,但要确保它是数字霍尔传感器。
为了测量速度,我们必须将一小块磁铁粘贴到车辆的车轮上,每次磁铁穿过霍尔传感器时,它将检测到并将其发送给Arduino。
每次检测到磁铁时,Arduino都会收到一个中断。我们使用millis()函数运行一个连续计时器,并使用以下公式计算砂轮完成两次旋转所需的时间(以最大程度地减少误差):
耗时= millis()– pevtime;
一旦知道了所用的时间,就可以使用以下公式计算转速:
rpm =(1000 /耗时)* 60;
其中(1000 / timetaken)给出rps(每秒转数),然后乘以60将rps转换为rpm(每分钟转数)。
在计算了转速之后,我们可以使用以下公式来计算车辆的速度,前提是我们知道了车轮的半径。
v =车轮半径* rpm * 0.37699;
Arduino在计算出速度之后,将使用蓝牙模块对其进行广播。在完整的源代码已经在代码部分中给出。另外,在此处检查我们其他涉及蓝牙模块HC-05的项目。
原理图和硬件部分:
该项目的完整电路图如下:
在这里,硬件部分分为两个部分,一个是包含所有主要文件的主板。另一块板仅由霍尔传感器和电阻器组成,电阻器将安装在车轮附近。让我们开始构建主板。
建立连接后,让我们使用18650锂电池测试设置。锂电池本质上具有很高的爆炸性,因此在使用时必须格外小心。因此,我们使用TP4056锂电池充电模块。该模块具有过充/放电保护和反极性保护。因此,可以使用普通的微型USB充电器轻松为电池充电,并且可以安全放电直到电池达到欠压切断极限。下表列出了TP4056充电模块的一些重要细节。
参数: |
每个单元格的值: |
欠压切断 |
2.4伏 |
过电压截止 |
4.2伏 |
充电电流 |
1A |
保护 |
过电压和反极性保护 |
IC的礼物 |
TP4056(充电器IC)和DW01保护IC |
指示LED |
正在进行红色充电 绿色–充电完成 |
现在,让我们从霍尔传感器板开始。该板仅包含两个组件,一个是10K电阻,另一个是霍尔传感器。可以如上图所示进行连接。电路板准备就绪后,请按照原理图使用跳线连接它们。一旦完成,它应该看起来像这样。
该项目的另一个关键步骤是使用电线将18650电池连接到TP4056模块的B +和B-端子。由于Li +电池具有爆炸性,因此强烈建议不要在这些电池上使用烙铁。尽管人们这样做了,但是它具有很高的风险,并且很容易陷入混乱。因此,简单的方法是使用如下所示的磁铁
只需将导线焊接到一小块磁铁上,然后将磁铁粘贴到电池的端子上(它们就会很好地吸引到端子上),如上所示。您可以使用一些鸭嘴来进一步固定磁铁的位置。
编程Arduino:
该项目的程序非常简单。我们只需要使用霍尔传感器中断输入来计算转轮的速度,并使用蓝牙模块通过空中广播计算出的速度即可。该完整的程序在下面的代码部分给出,并使用注释行解释。
每次霍尔传感器检测到磁铁时,都会触发一个中断。该中断函数由 magnet_detect() 函数调用 。 这是计算车辆转速的地方。
一旦计算出转速,就可以在 loop() 函数中计算出车轮的速度。一旦代码准备就绪,就可以将其转储到我们的Arduino pro mini中,并按照最后给出的视频中所示测试其工作。
适用于车速表的Android移动应用程序:
该项目的Android应用程序是使用名为Processing的软件制作的。如果您对制作自己的Android应用程序不感兴趣,而只想安装此处使用的应用程序,则可以按照以下步骤下载APK文件并将其直接安装在智能手机中。
1.您可以从下面的链接直接 下载APK文件。 这个APK档案是为Android 4.4.2以上版本(Kitkat a以上)制作的。从zip文件中提取APK文件。
车速表的Android应用程序
2.将.Apk文件从计算机传输到手机。
3.在Android设置中启用从未知来源安装应用程序。
4.安装应用程序。
如果安装成功,您将在手机上找到名为“ Processing_code ”的应用程序,如下所示:
使用处理开发自己的应用程序:
您可以使用上面提供的.APK文件,也可以使用此处所述的处理功能来构建自己的应用。您可以从此处下载所有Processing Android应用程序代码。该程序是使用注释行自解释的。但是,如果您有任何问题,或者您想对应用程序进行一些修改,请使用注释部分,我们将为您提供帮助。
android程序在应用程序启动期间与我们的蓝牙模块建立连接,并接收由Arduino Pro mini计算并广播的车辆速度。我还创建了一个小图形来使用模拟测速仪显示速度,以使其看起来更具吸引力。您可以提出自己的想法并调整代码以使其个性化以满足您的需求。另外,请查看我们的其他处理项目以了解更多信息:
- 使用Arduino的Ping Pong游戏
- 使用处理的智能手机控制的FM广播。
- 使用处理和超声波传感器的Arduino雷达系统
将应用程序安装到手机后,就可以测试我们的项目了。但是我们尚未将套件安装到车辆上。我们开始做吧。
将车速表套件安装到车辆上:
我已经将此工具包安装在我的自行车上并对其进行了测试,它的工作原理就像一个魅力。套件的安装留给您创造力,您可以从商店购买自己的小盒子,并为电线和连接件钻孔,然后将其安装到车辆上。需要注意的一个共同的重要事项是,磁体应粘贴在车轮的轮辋上,霍尔传感器应安装在尽可能靠近磁体的位置,以便每次磁体越过霍尔传感器时都能够检测到它,排列如下所示。
由于我随身携带3D打印机,因此我设计了自己的外壳,使它们看起来不错,并且可以轻松地安装和断开与自行车的连接,从而为电池充电。因此,如果您有一台3D打印机,或者如果您可以访问一台以打印少量材料,则可以继续阅读,否则请跳过这一部分,并利用自己的创造力来安装这些东西。在此处了解如何使用3D打印机。
如果您决定使用我的设计文件并打印机箱,请确保您的主要性能面板接近以下尺寸
可以从此处下载用于3D打印的完整Design和STL文件。如果电路板与此处制作的电路板相似,则可以使用给定的STL文件直接3D打印机箱,也可以使用设计文件并根据电路板对其进行修改。
让我们从3D打印的小型外壳开始,该外壳将用于霍尔传感器模块。打印外壳,将电路放入其中,并通过提供的孔穿过电线,然后将其安装到车辆上,以使霍尔传感器靠近磁体,如下所示。
建议在设计外壳之前先对主板进行建模,以便我们可以确保正确地安装它,因为请相信我,长时间打印外壳6个小时可能会成为噩梦,最后最终将不适合进入您的性能板。我的主要性能板的模型板如下所示。
现在可以很容易地设计主机箱。我已经将主箱设计成两个文件,因此箱的一部分将容纳电子设备,另一部分将通过夹具和螺栓永久固定在自行车上。可以容易地将这两个部分固定在一起,以形成一个完整的外壳,然后在我们需要给锂电池充电或在电子产品上工作时将它们分开。
设计并打印出外壳的第一部分后,就可以将我们所有的组件放入内部,如下图所示,它应该看起来像这样。
如您所见,盒子前面有两个开口,一个用于USB,我们可以通过它为手机充电。另一个是用于微型USB的,我们可以使用它为锂电池充电。
现在,让我们打印主机壳的第二部分,并检查它是否符合预期的第一部分。
对零件满意之后,我们可以使用C型夹和一些螺母和螺栓安装外壳的第二部分,如下所示:
现在,如上所述,让我们使用磁铁和胶带将电池连接到主电路,并将其永久固定在外壳内。
就是说,我们的硬件已准备好进行最终安装。只需将霍尔传感器模块与主板连接,然后将可移动外壳滑入固定外壳即可使用。
工作说明:
确保锂电池已充电后,只需使用拨动开关打开套件,然后打开Android应用程序。如果一切顺利,则应显示以下屏幕,并显示您的应用已连接到蓝牙模块HC-05,如下所示。打开应用程序之前,请记住将蓝牙模块与手机配对。
现在只需骑车,您会注意到车速表显示了您当前的车速。您也可以在骑行时使用普通的充电器线为手机充电。骑行完成后,您可以从循环中滑出盒子,并使用任何智能手机移动充电器从交流电源为其充电。
因此,您不仅可以测量车辆的速度,还可以同时为Mobile充电。希望您喜欢这个项目。您只需调整代码,即可为该项目添加更多功能。您可以计算出行驶距离,最高行驶距离和平均行驶速度等。请通过注释告知我是否有任何疑问,我们将竭诚为您服务。
与往常一样,该项目的整个工作将在下面的视频中显示。