ロータリーエンコーダー付きDIYシンプル測定ホイール
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
必要なツールとマシン
> |
|
アプリとオンラインサービス
> |
|
このプロジェクトについて
測定ホイールは、構造測定ツールです。ホイールが回転し、基本的な回転運動学(s =rθ)を使用して、2点間の距離を決定できます。
以下のビデオは、いくつかのコンポーネントで作られたそのようなデバイスの縮小された機能モデルを示しています:
-Arduino Nano
-ロータリーエンコーダー
-16x2LCDディスプレイ
-10kポット。
-220オームの抵抗器
<図>動作原理は次のとおりです。
ロータリーエンコーダーは回転数を測定しますが、回転を移動距離に変換する必要があります。移動距離はホイールの直径によって異なります。ロータリーエンコーダーは、1回転(360度)でNステップ移動します。 1回転あたりのステップ数は、8から48に変更できるロータリーエンコーダーによって異なります。Nが1回転あたりのステップ数、Rがホイールの半径であるとします。
1回転での移動距離は=2xπxR
です。1ステップでの移動距離は=2xπxR/ N
私はこの目的のために非常に簡単なコードを書きました、そして、移動距離はセンチメートルでLCDスクリーンに表示されます。コードで使用されているコンポーネントに応じて、「N」と「R」の値を変更します。
私の場合、ホイールは3Dプリンターで作成され、ビデオで見られるように、アセンブリ全体がアルミニウムロッドに取り付けられています。
コード
- コード
コード C / C ++
/ * Measurning Whell * * Mirko Pavleski、* * https://www.youtube.com/channel/UCHLzc76TZel_vCTy0Znvqyw * /#includeLiquidCrystal lcd(5、6、7、8、9 10); int pin1 =2; int pin2 =3; int Pos =0; int State; int LastState; const float pi =3.14; const float R =3.25; const int N =40; float distance =0; void setup(){pinMode(pin1、INPUT_PULLUP); pinMode(pin2、INPUT_PULLUP); lcd.begin(16、2); lcd.print( "MEASURNING WHEEL"); LastState =digitalRead(pin1); } void loop(){State =digitalRead(pin1); if(State!=LastState){if(digitalRead(pin2)!=State){Pos ++; } else {位置-; }}距離=((2 * pi * R)/ N)*位置; lcd.setCursor(0、1); lcd.print(距離); lcd.setCursor(5、1); lcd.print( "cm"); LastState =状態; }
回路図
製造プロセス
- Arduinoを使用したDIYの最もシンプルなIV9Numitron時計
- MPU-6050を搭載したArduinoジャイロスコープゲーム
- Arduinoを搭載したシンプルな障害物センサー
- ArduinoとNokia5110ディスプレイを備えたDIY電圧計
- MobBob:Androidスマートフォンで制御されるDIY Arduino Robot
- Arduino、Yaler、IFTTTを使用したIoTゲージ
- 最大6.5MHzのDIYシンプル周波数計
- シャープなGP2Y1010AU0Fセンサーを備えたDIY空気品質モニター
- ArduinoNanoを搭載したハンドヘルドガイガーカウンター
- Arduinoで日射量を測定する
- DS1302RTCを備えたシンプルな目覚まし時計