macsbug

M5 Wheel Module ( moio )

leave a comment »

M5 Wheel Module を製作しました。               2019.08.21
全体の名称は moio と言います。

moio moio


.
M5 Wheel Module の Metal Gear Type:費用 1500円

M5 Whell Module ( Metal gear ) M5 Whell Module ( Metal gear )

.
M5 Wheel Module の Plastic Gear Type:費用 760円。

M5 Whell Module ( Plastic gear ) M5 Whell Module ( Plastic gear )

.
M5Stackを除く 2400mA Battery + Servo + Metal  Gear Type:費用 2500円
M5Stackを除く 2400mA Battery + Servo + Plastic Gear Type:費用 1800円。

M5Stack + 2400mA Battery  (640円) Servo Module DRV8833  (330円)
M5 Wheel Module (Metal Gear) (1500円) M5 Wheel Module (Plastic Gear)(760円)

.
構成とサイズ:


.
準備:
1. M5Stack:
2. M5STACK Strongest 2400 mAh Battery Module:633円。
3. Make M5Stack Servo Module:329円。
4. M5 Wheel Module: Metal Gear Type:1492円。
5. M5 Wheel Module:Plastic Gear Type:  752円。


.
費用詳細:
全体 ( moio )
_ 以前の記事にある  2400 mAh Battery ModuleServo Module を組み合わせます。

No Nomen Purchase Price
1  M5Stack
2  2400mA Battery Module  2400 mAh Battery Module     633円
3  Servo Module  M5Stack Servo Module     329円
4  Wheel Module:Metal  Gear  以下の部品表に記載   1492円
4  Wheel Module:Plastic Gear 以下の部品表に記載     752円
= ==================== ================ ======
1 費用総計: Metal Gear   2454円
2 費用総計:Plastic Gear   1714円

 


.
部品表:
⭕ M5 Wheel Module:Metal Gear Type:Gear は金属製です。
_ 価格は円レートにより変化します。

No Nomen Purchase Price
1  3V DC Micro U-Typ Gear Box
. Motor N20 5-4000RPM
. Voltage:3V, Speed:200RPM
.
 ebay:xyfs-us Store
. 輸送期間:7-11日。
. 557円 x 2個(pcs)
 1114円
1 3V DC Micro U-Typ Gear Box
. Motor N20 5-4000RPM
. Voltage:3V, Speed:200RPM
.
 Aliexpress:miniyard Store
. 輸送期間:16day, 9day
. 469円 x 2個(pcs)
.
.追記:2019.08.22:$4.41
  938円
2  Oring 18mm :
. Thickness: 1.9mm
. Outside Dia: 18mm
 ebay:mnsmoresell
. 輸送期間:25日
      12円
3  Screw:8ea
. M2 5mm ナベTapping Screw
 西川電子部品株式会社       12円
4  pcb:0.3mm厚ユニバーサル基板  秋月電子通商:Cタイプ     120円
5  ピンヘッダー 1×6 (6P)  秋月電子通商:6P       20円
6  シングルピンソケット(低メス)14p  秋月電子通商:低メス14P       50円
7  CASE  3D Printer 自作:材料費     340円
8
= ==================== ================ ======
費用総計 ( Total cost )  Motor : xyfs-us Store   1668円
費用総計 ( Total cost )  Motor : miniyard Store   1492円

メモ:Motor の No-load speed(RPM) は  50 から 1000 までの種類があります。
_  50 や 100 は 進む速度が遅いです。
_  150 か 200, 300 が良いかと思います。
_  (計算:150=11cm/s, 200=16cm/s, 300=21cm/s)
_  最初は 150 を使用してましたが その後は 200 又は 300 を使用しています。
_   200 は 適度に速く細かな動作が出来ます。
_   300 は 速度は速く傾く程でなく 機敏な動作をします。
_  追記:2019.08.22 Aliexpress の miniyard Store をリストに追加しました。
メモ:O-Ring は 千石電商で ゴムベルト15mm (163円)が販売されています。
.

⭕ M5 Wheel Module:Plastic Gear Type:赤いケースの中にPlastic Gear内臓。

No Nomen Purchase Price
1  Micro 412 Coreless
. Gear Motor DC 3V
.
 ebay:supersinostore
.  輸送期間:13日. 93円 x 2個(pcs)
 186円
2  Oring 18mm :
. Thickness: 1.9mm
. Outside Dia: 18mm
 ebay:mnsmoresell
.  輸送期間:25日
     12円
3  Screw:4ea
. M2 5mm ナベTapping Screw
 西川電子部品株式会社      12円
4  pcb:0.3mm厚ユニバーサル基板  秋月電子通商:Cタイプ    120円
5  ピンヘッダー 1×6 (6P)  秋月電子通商:6P      20円
6  シングルピンソケット(低メス)14p  秋月電子通商:低メス14P      50円
7  CASE  3D Printer 自作:材料費    352円
8
= ==================== ================ ======
費用総計    752円

 


.
仕様:全重量とタイヤ直径、ギヤー比から速度を計算する。
1. Metal Gear:速度は 1秒間11cm。
_ 全体の重さ:125g :Rorted Torque=63g (2綸の片側)。
_      :補助 2400mA Battery 追加 = 170g
_ タイヤ直径:18mm
_ トルク表から計算:販売店 xyfs-us Store に記載あり。
_ 1. Voltage:3VDC 。( 他に 6V, 12V がある )
_ 2. Speed:150RPM ( 他に 200RPM, 300RPM がある)
_ 3. トルク:3V:NO LOAD SPEED=150, Rorted Torque=63g (2綸の片側)
_ 4. LOAD SPEED:120rpm
_ 5. Roted Torque:100g.cm:Rorted Torque=63g に対し 100g/cm で動く。
_ 計算値:18×3.14=56mm。120/56=2rpm/sec。56×2=112mm/sec
_  結果:11cm/sec

_ メモ:
_ NO LOAD SPEED=150 の場合は 11cm/sec
_ NO LOAD SPEED=200 の場合は 16cm/sec
_ NO LOAD SPEED=300 の場合は 21cm/sec
_

2. Plastic Gear:
_ 1. Voltage:DC3V-3.7V。
_ 2. Speed:300RPM
_ 全体の重さ 125g でも動きます。


.
諸元:
1. Metal Gear:全体の価格の半分を占め、高めになります。
_ 騒音は モーター音 ぐらいで静かです。
_ 価格は高めですが 騒音や複数の稼働環境を考慮すると Metal Gear が良い。
2. Plastic Gear:価格は低価格です。Gearの音が大きいです。
_ 低価格で気楽ですし、少しだけ試すのに良いかと思います。


.
製作:3D Printer で製作しました。白色の6つが Printer の出力です。
.

_ CAD図面:

Metal Gear Plastic Gear

.
_ 配線:Make M5Stack Servo Module を参照ください。
_  注意: Motor回転方向:Motor の + – は Motorにより回転方向が異なります。
_      回転方向が異なる場合は + – の配線を逆にします。

 M5Stack 3V3 GND GPIO 5 GPIO 17 GPIO 13 GPIO 0
 DRV8833 VCC GND IN1 IN2 IN3 IN4
 DRV8833 ULT GND OUT1 OUT2 OUT3 OUT4
 DC Motor L Motor – L Motor + R Motor + R Motor –

.
_ 組み立て完成:Metal Gear Type + Motor

.
_ Motor + Servo Module 組立。+ M5Stack + 2400mA 組立後の裏側。
_ 車輪を含めた高さは 43mmです。
_ 車輪は2個で球体の支えは1個の3本足です。
_ 転倒防止の為に補助の球体の支えがあり 位置は 1mm 低く通常は設置されていません。

.
_ Servo専用 2400mA Battery Module :
_ 画像左 の 2400mA専用バッテリー追加により 長時間動作が可能になります。
_ 高さは 11mm 追加。全体は 45 + 11 = 56mm の高さになります。
_ M5Stackの幅(54mm)より高く見えると デザイン的に綺麗で無くなります。

Added 2400mA Battery ( H=56mm ) moio STANDARD  ( H = 45mm )

.
メモ:
_ 車輪:直径 18mm、幅 2.6mm で 設置面に半円の溝を設け O-Ringを填めます。
_    構造的に横からの力に弱い点が考えられます。
_    強度が足りない場合は 再設計する必要があります。
_ 強度:全体の強度は通常の玩具と比べるとかなり弱いと思われます。
_ 価格:ケースの材料費は 340円 (SCL)。
_    調査:DMM.makeの価格は高く 作る意味が無い為、使用しません。
_    M5サイズで凸凹のかみ合わせ形状に捕らわれずに製作すれば低価格が可能。
_ 接続:M5Stack Proto Board は横にコネクターを出す物が多く見た目が綺麗でない。
_    綺麗さを出す為に コネクター接続は 内部で縦に接続するデザインです。

ABS版(左) と スケルトン版(右):


.
スケッチ作成:
1. BLYNKで操作する。以下を参照に GPIO を設定するとJoystickで操作が可能です。
_ blynkkk/blynk-library:Blynk Library
_ App Store:Blynk – IoT for Arduino, ESP32:iOSアプリ
_ 参考:ホームメイドガービッジ:ESP32 と BLYNK と円形ロボットシャーシーキットと
_ 上記スケッチを参照し M5 Wheel Module ( moio ) 版を作成。
_ リストは この記事の最下位に記載します。
_ 参考:お父ちゃん:M5Stick-Car:I made Blynk-controlled mini Car using M5Stick-C.
_ 
_ ⭕追記:2019.08.27
_  Operate M5 Whell (moio) with RCWControllRCWController アプリ操作方法。
_  iPhone (iPad) と M5 moio 間で直接 WiFi 接続するので便利です。
_  
.
以下、他の方法を示します。
2. JoaoLopesF氏の ESP32MotorControl Library を使用する。
_ 例:MotorControl.motorForward(0, speed); にて制御出来ます。
3. M5StckCのBeetleCを使用する。m5stack/M5-ProductExampleCodes
4. iOSアプリの RCWController を使用する。
_ robo8080/ESP32_RCWController_Test


.
参考:
_ JoaoLopesF/ESP32MotorControl:ライブラリー
_ jkb-git/ESP32Servo:ライブラリー
_ blynkkk/blynk-library:Blynk ライブラリー
_ App Store:Blynk – IoT for Arduino, ESP32:iOSアプリ
_ ホームメイドガービッジ:ESP32 と BLYNK と円形ロボットシャーシーキットと
_ BeetleC (W/O M5StickC) $11.95:
_ M5StickC+BeetleC M5StickC+BeetleC+M5StickVで自動運転する
_ m5stack/M5-ProductExampleCodes:BeetleC:UDP通信による WEBコントロール。
_ iOSアプリの:RCWController
_ robo8080/ESP32_RCWController_Test:RVWControllerの使用例。
_ ホームメイドガービッジ:M5StickC で倒立振子 PID制御編 ー倒立振子への道 3
_ ごじ:ESP-WROOM-02で動かす小型 (50x50x50mm) のラジコンカー
_ 


.
感想:
M5サイズの車輪製作:
_ M5Stack 発売時より M5サイズの車輪を望んでいました。
_ 多くの車は 車輪が大きく本体より外にあり、動作範囲も大きく綺麗でないです。
_ 製作する内に 何故か 限りなく SONYの「toio」に近づいてきました。
_ 比べれば比べる程 天と地の差を ひしひしと感じます。今回の製作物は
_ おもちゃにもならないレベルです。
_ センサー等を駆使すると多機能な物ができますが 今回は基本の駆動部分のみです。

_ 拡張性:センサー等を PROTO Module で Stack する予定です。
_ スケッチ:制御用アプリは重要で 今回は Blynk を試しました。Blynk は 目の前の
_  物をネット経由で操作する為、好みではありません。他に 距離センサー や
_  光センサー、accelerator 等を駆使し 操作性の良い スケッチが必要です。
_ Motor:No load Speed(RMP) は 50,100,150,200 を試しました。
_    結果、50,100 は速度が遅く 使い道に難があります。当初 150 を試し
_    使用できていますが 200 の方が速度対応が広く 200 を追加発注しました。
_    250以上は試していませんが 速度が速くなると本体が傾くか 全体を高く
_    すると、倒れる事が起きるかと思います。動画は 200 を使用しています。
_    調査の為に 300 を Order中です。
_ Gear:Gear 未使用の作品や製品を見かけますが Gear が無いと 速度が速く
_    Controll しにくい事や トルク不足になるかと判断しています。

メモ:追記:2019.08.24
_ CAD データーと出力について:
_ 1. ブログの WordPress は 圧縮データーを投稿出来ない為に 残念ながら
_   CAD データー を公開する事ができません。GitHubは使用方法が解りません。
_ 2. データーは プロ用の3D Printer (300万クラス)を使用した CADデーターです。
_   通常のプリンターは 精度(X,Y軸)が低く正しく出力しません。
_   理由は 凸部分(幅が狭い)を出力する事ができないからです。
_   M5Stackは 射出成型でX,Y軸が 0.6mm幅(凸部)で 材質も強く
_   通常のプリンターでは 出力出来ない精度と強度になっています。
_   この条件をクリヤーする為に 他の工作では Expansion方式を記載しています。
_ 3. Wheel Module のような M5Stack の後部の場合は 凸部の工夫により低精度
_   でも可能です。低精度用の図面は 作成しておらず 低精度に合わせた現物合わせ
_   も 0.2mm 単位で必要になります。
_ 4. 都内や M5Stack 等の集まりで出力品をお渡しする事は可能です。

.
_ toio と moio の比較:toioの機能と超小型サイズは見事です。

SONY toio:技術と努力の集大成から学ぶ物が多いです。
_ ロボットや玩具の中で1番の製品で、他に toio にまさる製品はありません。
_ 参考:toio 分解図
_ 現物や分解画像から想像すると、見れば見る程 検討に検討を重ねた内容に驚きます。
_ 外観や素材の安全性があり 投げても壊れない設計。
_ 車輪は縦横の力に強い材料と構造になっている。不思議な素材で出来ています。
_ Motor は今回使用している Motor より小さく強力(速度が速い)。
_ このサイズのMotorは素人では秋葉原やebay、Aliespress では手に入らない。特注品?
_ Gear は プラスチック製で騒音は殆ど無く SONYらしい高精度な設計。これは凄い!
_ ケース事態のネジ止めはない。
_ 車輪は2つで 支えは 1つ。4輪だと浮く場所ができるからだろう。
_ 2つ目の支えは 転倒を防ぐことが出来る様です。高速の時に必要。
_ 支えはスイッチにもなっている。ここまでアイデアが入っている。
_ シートの微細な画像を読む為に、画像を認識出来るセンサーが下に搭載されている。
_ この画像認識出来るセンサーは 素人には手に入らない。
_ シートのアイデアは素晴らしい。シートから情報を得る事ができる。
_ シートでプログラムも出来る高度な内容。このアイデアは他にも使用できる。
_ 速度は 30cm/sec 位かと思われます。
_ 小さい為に小回りが出来て 遊べる範囲が広いです。
_ 小さなバッテリーが内蔵され 2時間以上持つと公表されています。凄い省エネ技術。
_ このサイズに入る程 各部のチューニングが素晴らしい。
_ ハードとソフトの作り込みが凄いです。
_ 圧倒され 他に、私には解らない事も含まれていると思います。
_ APIが公開され M5StackやESP32で操作する事が可能です。
_ 今回のWheelの製作が面倒な場合は toio を購入された方が良いです。
_ 長年の開発期間と内容から 価格は理解出来ますが 遊ぶには高い。
_  低価格で 車輪部分だけの販売があれば良いなと思っています。

 


.
スケッチ:M5Stack moio + BLINK : 2019.08.21 macsbug

// M5Stack moio + BLINK : 2019.08.21 macsbug
// https://macsbug.wordpress.com/2019/08/21/m5-wheel-module-moio/
// https://homemadegarbage.com/esp32_minirobot01
// https://mvdlande.wordpress.com/2019/06/02/drv8833-motor-driver-module/
// DRV8833 + M5Stack + DC MOTOR
// INx  :GPIO:  OUTx : MOTOR   :CH : 
// IN1  :  5 :  OUT1 : RIGHT - : 1 : 
// IN2  : 17 :  OUT2 : RIGHT + : 2 : 
// IN3  : 13 :  OUT3 : LEFT  + : 3 : 
// IN4  :  0 :  OUT4 : LEFT  - : 4 : 
// DRV8833 H-BRIDGE
// IN1 = PWM, IN2 = 0   : Foword  PWM, fast decay
// IN1 = 1  , IN2 = PWM : Foword  PWM, slow decay
// IN1 = 0  , IN2 = PWM : Reverse PWM, fast decay
// IN1 = PWM, IN2 = 1   : Reverse PWM, slow decay 

#include <M5Stack.h>
#define BLYNK_PRINT Serial
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>
char auth[] = "frss_BKbeyBIIehKeBK2hAEp78NCB-Ym"; // BLINK
char ssid[] = "your ssid";
char pass[] = "your password";
long S, L, R;

BLYNK_WRITE(V0) {   // V0 ( Joystick ) 
  long x = param[0].asInt();
  long y = param[1].asInt();

  M5.Lcd.fillScreen(TFT_BLACK);
  M5.Lcd.setCursor(5,25);M5.Lcd.print("x: ");M5.Lcd.print(x);
  M5.Lcd.setCursor(5,65);M5.Lcd.print("y: ");M5.Lcd.print(y);

  S = sqrt( x * x + y * y );
  if( S > 255 ){ S = 255;}
  M5.Lcd.setCursor(5,105);M5.Lcd.print("speed: ");
  M5.Lcd.print(S);M5.Lcd.print("  ");

  if( y >= 0 ){ M5.Lcd.println("FOWARD");    // FOWARD
    if( x >= 0 ){ L = 0;        R = abs(x/2);
    }else{        L = abs(x/2); R = 0;
    }
    ledcWrite(1, S - R); // ch1, PWM  ,  5, IN1, RIGHT MOTOR-
    ledcWrite(2, 1);     // ch2, Phase, 17, IN2, RIGHT MOTOR+
    ledcWrite(3, S - L); // ch3, PWM  , 13, IN3, LEFT  MOTOR+
    ledcWrite(4, 1);     // ch4, Phase,  0, IN4, LEFT  MOTOR-
  }else{      M5.Lcd.println("BACK");        // BACK
    if( x >= 0 ){ L = 0;        R = abs(x/2);
    }else{        L = abs(x/2); R = 0;
    }
    ledcWrite(1, 1    ); // ch1, Phase,  5, IN1, RIGHT MOTOR-
    ledcWrite(2, S - R); // ch2, PWM  , 17, IN2, RIGHT MOTOR+
    ledcWrite(3, 1    ); // ch3, Phase, 13, IN3, LEFT  MOTOR+
    ledcWrite(4, S - L); // ch4, PWM  ,  0, IN4, LEFT  MOTOR-
  }
}

void setup(){
  M5.begin();
  M5.Lcd.fillScreen(TFT_BLACK);
  M5.Lcd.setTextColor(TFT_WHITE);
  M5.Lcd.setTextSize(3);
  
  ledcSetup(1, 5000, 8); // channel, freq, resolution_bits
  ledcSetup(2, 5000, 8);
  ledcSetup(3, 5000, 8);
  ledcSetup(4, 5000, 8);
                        //GPIO,Ch, INx, OUTx, MOTOR
  ledcAttachPin( 5, 1); //  5 , 1, IN1, OUT1, RIGHT MOTOR-
  ledcAttachPin(17, 2); // 17 , 2, IN2, OUT2, RIGHT MOTOR+
  ledcAttachPin(13, 3); // 13 , 3, IN3, OUT3, LEFT  MOTOR+
  ledcAttachPin( 0, 4); //  0 , 4, IN4, OUT4, LEFT  MOTOR-
  
  M5.Lcd.setCursor(1,25);M5.Lcd.print("SSID=" + String(ssid));
  Blynk.begin(auth, ssid, pass);
  delay(3000);
}

void loop(){
  Blynk.run();
}

M5Stack , M5 Wheel Module , moio , DRV8833 , Wheel , SONY , toio , Blynk , BeetleC ,

Written by macsbug

8月 21, 2019 @ 2:00 pm

カテゴリー: M5STACK

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。