- ハードウェア要件:
- プログラミング要件:
- ホールセンサーとArduinoを使用した速度の測定:
- 回路図とハードウェア部分:
- Arduinoのプログラミング:
- スピードメーター用のAndroidモバイルアプリケーション:
- スピードメーターキットの車両への取り付け:
- 作業説明:
このプロジェクトでは、Bluetoothを使用して速度をProcessingを使用して作成したAndroidアプリケーションにブロードキャストするArduinoを使用して、自転車や自動車用のクールスピードメーターを作成します。プロジェクト全体は18650リチウムセルを搭載しているため、車両と一緒に持ち運びに便利です。もう少しスパイスを効かせるために、速度が表示されるので携帯電話を充電するオプションを追加しました。はい、18650は充電密度が高く、簡単に充電および放電できるため、外出先での携帯電話のパワーバンクとしても使用できます。
私は完全にゼロから完成まであなたを案内します、スピードメーターは彼が私たちの車に接続してテストすることができます。ここでの優れた機能は、Androidアプリをパーソナライズ用にカスタマイズし、創造性に応じて機能を追加できることです。ただし、自分でアプリを作成せずにArduinoパーツを作成するだけの場合は、APKファイルをダウンロードして(詳細を読む)、Android携帯電話にインストールするだけです。また、最後に完全なビデオを確認してください。
それでは、このプロジェクトを構築するために必要な材料を確認し、予算を計画しましょう。これらのコンポーネントはすべて簡単に入手できます。これらのいずれかを購入するのに問題がある場合は、コメントセクションでお知らせください。
ハードウェア要件:
- Arduino Pro Mini(5V 16MHz)
- FTDIボード(ミニプログラミングにはUNOも使用できます)
- USB出力充電器を備えた3Vから5VのDC-DCブーストコンバーター
- TP4056リチウム電池モジュール
- Bluetoothモジュール(HC-05 / HC-06)
- ホール効果センサー(US1881 / 04E)
- 18650リチウムセル
- 磁石の小片
- パフォーマンスボード
- バーグスティックコネクタ(オスとメス)
- はんだ付けキット
- キットを取り付けるための小さな筐体ボックス。
プログラミング要件:
- Arduino IDE
- Android ADKを使用したIDEの処理(独自のアプリをコーディングする場合のみ)。
- Windows / Mac PC
- Android携帯電話。
一握りのコンポーネントや材料のように見えるかもしれませんが、このプロジェクトを完了すると、努力する価値があると感じるでしょう。
ホールセンサーとArduinoを使用した速度の測定:
ハードウェアを手に入れる前に、Arduinoを使用して実際に速度を測定する方法を教えてください。Arduinoを使用して車両の速度を測定する方法はたくさんありますが、ホールセンサーを使用するのが最も経済的で最も簡単な方法です。Aホールセンサは磁石の極性を検出する部品です。たとえば、磁石の特定の極がセンサーに近づくと、センサーの状態が変化します。このプロジェクトで使用できるホールセンサーには多くの種類がありますが、デジタルホールセンサーであることを確認してください。
速度を測定するには、車両のホイールに小さな磁石を貼り付ける必要があります。磁石がホールセンサーを通過するたびに、磁石がそれを検出し、その情報をArduinoに送信します。
磁石が検出されるたびに、Arduinoによって割り込みが受信されます。次の式を使用して、millis()関数を使用して連続タイマーを実行し、ホイールが2回転を完了するのにかかる時間を計算します(エラーを最小限に抑えるため)。
所要時間= millis()– pevtime;
所要時間がわかれば、次の式を使用してrpmを計算できます。
rpm =(1000 /所要時間)* 60;
ここで、(1000 / timetaken)はrps(1秒あたりの回転数)を示し、60を掛けてrpsをrpm(1分あたりの回転数)に変換します。
回転数を計算した後、ホイールの半径がわかっていれば、以下の式を使用して車両の速度を計算できます。
v = radius_of_wheel * rpm * 0.37699;
Arduinoは、速度を計算した後、Bluetoothモジュールを使用してブロードキャストします。完全なコードは、コードセクションの下に与えられています。BluetoothモジュールHC-05に関連する他のプロジェクトもここで確認してください。
回路図とハードウェア部分:
プロジェクトの完全な回路図を以下に示します。
ここでは、ハードウェア部分が2つの部分に分割されています。1つはすべてのメインファイルを含むメインボードです。もう一方のボードは、ホールセンサーとホイールの近くに取り付けられる抵抗器で構成されています。メインボードの作成を始めましょう。
接続が確立されたら、18650リチウム電池を使用してセットアップをテストしましょう。リチウム電池は本質的に爆発性が高いため、取り扱いには細心の注意を払う必要があります。TP4056リチウムバッテリー充電モジュールを使用するのはこのためです。このモジュールには、過充電/放電保護と逆極性保護があります。したがって、バッテリーは通常のマイクロUSB充電器を使用して簡単に充電でき、低電圧カットオフ限界に達するまで安全に放電できます。TP4056充電モジュールのいくつかの重要な詳細を以下の表に示します。
パラメーター : |
セルあたりの値: |
不足電圧カットオフ |
2.4V |
過電圧カットオフ |
4.2V |
充電電流 |
1A |
保護 |
過電圧および逆極性保護 |
ICの存在 |
TP4056(充電器IC)およびDW01保護IC |
表示LED |
赤-充電中 緑–充電完了 |
それでは、ホールセンサーボードから始めましょう。このボードには、10K抵抗とホールセンサーの2つのコンポーネントが含まれています。上記の回路図に示すように接続できます。ボードの準備ができたら、回路図に従ってジャンパー線を使用してそれらを接続します。完了すると、次のようになります。
プロジェクトのもう1つの重要なステップは、18650バッテリーをTP4056モジュールのB +およびB-端子にワイヤーを使用して接続することです。Li +セルは爆発性であるため、これらのセルにはんだごてを使用することは強くお勧めしません。人々はそれをしましたが、それは非常に危険であり、簡単に大きな混乱に終わる可能性があります。したがって、それを行う簡単な方法は、以下に示すように磁石を使用することです
上に示すように、ワイヤーを小さな磁石にはんだ付けしてから、磁石をバッテリーの端子に貼り付けます(端子に非常によく引き付けられます)。磁石の位置をさらに固定するために、ガムテープを使用する場合があります。
Arduinoのプログラミング:
このプロジェクトのプログラムはとてもシンプルです。ホールセンサーの割り込み入力を使用して回転ホイールの速度を計算し、Bluetoothモジュールを使用して計算した速度を無線でブロードキャストするだけです。完全なプログラムは、以下のコードセクションに記載されているとコメント行を使用して説明しました。
ホールセンサーが磁石を検出するたびに、割り込みがトリガーされます。この割り込み関数は、 magnet_detect() 関数によって呼び出されます 。 これは、車両の回転数が計算される場所です。
rpmが計算されると、ホイールの速度は ループ() 関数で計算されます。コードの準備ができたら、Arduino pro miniにダンプして、最後にあるビデオに示されているように動作をテストします。
スピードメーター用のAndroidモバイルアプリケーション:
このプロジェクトのAndroidアプリケーションは、Processingと呼ばれるソフトウェアを使用して作成されています。独自のAndroidアプリケーションを作成することに興味がなく、ここで使用するアプリケーションをインストールするだけの場合は、以下の手順に従って、APKファイルをダウンロードしてスマートフォンに直接インストールできます。
1.以下のリンクからAPKファイルを直接ダウンロードでき ます。 このAPKファイルはAndroidバージョン4.4.2以降(キットカット以上)用に作成されています。zipファイルからAPKファイルを抽出します。
スピードメーター用のAndroidアプリケーション
2..Apkファイルをコンピューターから携帯電話に転送します。
3.Androidの設定で不明なソースからのアプリケーションのインストールを有効にします。
4.アプリケーションをインストールします。
正常にインストールされると、以下に示すように、「Processing_code」という名前のアプリケーションが電話にインストールされます。
処理を使用して独自のアプリケーションを開発します。
上記の.APKファイルを使用するか、ここで説明するようにProcessingを使用して独自のアプリを作成できます。ここからすべてのProcessingAndroidアプリケーションコードをダウンロードできます。プログラムはコメント行を使用して自明です。ただし、問題が発生した場合、またはアプリケーションを少し変更したい場合は、コメントセクションを使用してください。サポートさせていただきます。
Androidプログラムは、アプリケーションの起動時にBluetoothモジュールとの接続を確立し、Arduino Prominiによって計算およびブロードキャストされた車両の速度を受信します。アナログスピードメーターを使用して速度を表示するための小さなグラフィックも作成して、少し魅力的に見せています。独自のアイデアを考え出し、コードを微調整してニーズに合わせてパーソナライズすることができます。詳細については、他の処理プロジェクトも確認してください。
- Arduinoを使用したピンポンゲーム
- 処理を使用したスマートフォン制御のFMラジオ。
- 処理と超音波センサーを使用したArduinoレーダーシステム
アプリケーションを携帯電話にインストールしたら、プロジェクトをテストします。しかし、まだキットを車両に取り付けていません。やってみましょう。
スピードメーターキットの車両への取り付け:
私はこのキットを自転車に取り付けてテストしましたが、それは魅力のように機能します。キットの取り付けはあなたの創造性に任されています。ショップから自分の小さな箱を入手し、ワイヤーと接続用の穴を開けて、それを車両に取り付けることができます。注意すべき一般的な重要事項の1つは、磁石をホイールのリムに貼り付け、ホールセンサーを磁石のできるだけ近くに取り付けて、磁石がホールセンサーを横切るたびに検出できるようにすることです。 、配置を以下に示します。
私は3Dプリンターを持っているので、見栄えがよく、バッテリーを充電するために自転車に簡単に取り付けたり取り外したりできるように、独自のエンクロージャーを設計しました。したがって、3Dプリンターを使用している場合、または3Dプリンターにアクセスしていくつかの資料を印刷し続けることができる場合は、この部分をスキップして、独自の創造性を使用してこれらのものをマウントしてください。ここで3Dプリンターのユーザーを学びましょう。
私のデザインファイルを使用してエンクロージャーを印刷することにした場合は、メインのパフォーマンスボードが以下の寸法に近いことを確認してください
3Dプリント用の完全なデザインファイルとSTLファイルはここからダウンロードできます。ボードがここで作成されたものと類似している場合は、指定されたSTLファイルを使用してエンクロージャーを直接3D印刷するか、デザインファイルを使用してボードに応じて変更することができます。
ホールセンサーモジュールに使用される3Dプリントされた小さなエンクロージャーから始めましょう。エンクロージャーを印刷し、回路をその中に配置し、提供された穴を通してワイヤーを利用してから、以下に示すように、ホールセンサーが磁石の近くにくるように車両に取り付けます。
エンクロージャーを設計する前にメインボードをモデル化して、適切に収まるようにすることをお勧めします。エンクロージャーを6時間長時間印刷すると悪夢になり、最終的には収まらないためです。あなたのパフォーマンスボードに。メインのパフォーマンスボードのモデルボードを以下に示します。
これで、メインエンクロージャボックスの設計が簡単になります。メインボックスを2つのファイルで設計しました。これにより、ボックスの一部が電子機器を保持し、もう一方がクランプとボルトを使用してサイクルに恒久的に固定されます。これらの2つの部品は、簡単に固定して完全な筐体を作成し、リチウム電池の充電や電子機器の作業が必要になったときに分離することができます。
エンクロージャーの最初の部分が設計および印刷されたら、以下に示すようにすべてのコンポーネントを内部に配置すると、次のようになります。
ご覧のとおり、箱の前に2つの開口部があり、1つは携帯電話を充電するためのUSBに使用されています。もう1つは、リチウム電池を充電できるマイクロUSB用です。
次に、メインエンクロージャーの2番目の部分を印刷して、最初の部分に期待どおりに収まるかどうかを確認します。
部品に満足したら、以下に示すように、Cクランプといくつかのナットとボルトを使用してエンクロージャーの2番目の部品を取り付けることができます。
次に、上記のように磁石とテープを使用してバッテリーをメイン回路に接続し、エンクロージャー内で恒久的に安全に保ちます。
これで、ハードウェアを最終的に取り付ける準備が整いました。ホールセンサーモジュールをメインボードに接続し、可動エンクロージャーを固定エンクロージャーにスライドさせるだけで、すぐに使用できます。
作業説明:
リチウム電池が充電されていることを確認したら、トグルスイッチを使用してキットの電源を入れ、Androidアプリケーションを開きます。すべてがうまくいけば、以下の画面が表示され、以下に示すように、アプリがBluetoothモジュールHC-05に接続されたことが表示されます。アプリケーションを開く前に、Bluetoothモジュールを電話とペアリングすることを忘れないでください。
今、あなたの車に乗るだけで、あなたはあなたの車の現在の速度を示すスピードメーターに気付くはずです。また、通常の充電ケーブルを使用して、乗車中に携帯電話を充電することもできます。ライドが終了したら、サイクルからボックスをスライドさせて、スマートフォンのモバイル充電器を使用してACメインから充電できます。
このようにして、車両の速度を測定できるだけでなく、同時にモバイルを充電することもできます。願わくば、あなたはプロジェクトを楽しんだ。コードを微調整するだけで、このプロジェクトにアプリにさらに多くの機能を追加できます。ライドの走行距離、トップ、ライドの平均速度などを計算できます。コメントで質問があればお知らせください。喜んでお手伝いさせていただきます。
いつものように、プロジェクトの全体の作業は下のビデオに示されます。