今回はモータの選び方について。
以前RCJ向けにギアヘッド付モータを比較した記事を書いていますので、そちらも参考にして下さい。
モータ・ギアヘッドまとめ
RoboCupJunior(以下RCJ)で「〇〇を使ったら勝てるか」論は尽きる事がありませんが、中でもモータとCNCについては発生頻度が高いです。 だいたい大会後などシーズンの区切りに発生します。 今回もちょうど質問を頂いたので、一度まとめてみようと思います。
全体を把握せずモータだけの話をするのは、根本的に意味がありません。
RCJのロボットは、エネルギーソースであるバッテリーをロボット本体に搭載して、それを物理的な動作に変換するためにモータを使っています。 このシステムを見通して話をする必要があります。
ロボットのパワーソースであるバッテリの「電力」から、ロボットの出力である「運動」への経路は、ざっくりと上の図のようになります。 このように、いろいろな箇所でエネルギーが形態を変えて、最終的に力として出力されるのがポイントです。
この経路においては、DCモータは「電流→トルクへの変換」を担う装置です。
モータのトルクは、オムニホイールのベクトル合成を経てロボットの動作へと出力されるため、モータのトルクとロボットの押し強さはイコールではありません。
オムニホイールはその構造上、普通のホイールに比べてグリップが劣る事が多いため、図1の「車輪と地面のグリップ」がボトルネックとなるケースが多いです。 そのため多くのRCJ競技者が、強グリップのオムニホイールを自作して「モータ↔ロボットの運動」間のボトルネックを解消しています。
とりわけ影響が大きいのは、ロボットの車輪配置です。
いわゆる「3輪・4輪」と表現される、ロボットの車輪数とその配置のことです。
ボールを挟んでの押し合いをする場合、ロボットの前輪が浮き上がってしまう場合がよくあります。 その場合に、3輪のロボットは後輪がグリップしない状態になるため、押し合いの性能は4輪ロボットに比べて大幅に劣ることになります。
当然、これらの抵抗成分は小さければ小さいほど良いので、内部抵抗の小さなバッテリを使い、パワーケーブルは太く短く配線し、低ON抵抗のモータードライバICもしくはFETを選んで組めば、それだけ高いパフォーマンスを出せることになります。
これらの損失は、使用するモータの端子間抵抗が小さければ小さいほどシビアになります。モータドライバICの中には、小型である反面ON抵抗の非常に大きなものがあったりしますので、モータドライバは注意して選びましょう。
モータのトルクは、減速機→車輪→地面へと伝達され、最終的にロボットの運動として出力されます。 このうち減速機については、データシートを参照して詳細情報を知ることができますが、車輪→地面について検討することはほぼ不可能です。
そこで、モータの力が車輪→地面へ100%伝達される前提で、モータがロボットの移動に関与する力を計算します。 車輪のグリップはロボットの重量依存で生まれるものですから、ロボットの重量に対して車輪の回転トルクがどれ位の割合であるかは、一定の目安になるだろうと考えられます。
※「1輪あたり1〜2[mNm]を想定」は減速前のモータトルクの事です
※ Yunit5XはLi-Po4セル(14.8V)がパワーソースです。電流制御しつつ回転数のリミットを上げる運用をしています。
Yunit5Xの車重は2.380[kg]と制限ギリギリです…。こんな感じで、モータのトルクとスピードから、ロボットが実際に出しうる力やスピードは計算で求めることができます。
計算に必要なデータは、公式のデータシートをリファレンスします。
DC-Micromotors Series 2237...CXR
Planetary Gearheads Series 22/7
算出された「直進力(Force)/ロボット重量(Weight)の比」(FW比と勝手に名付けます)は、オムニがもし100%地面にグリップしたとして、マシン重量にかかる力の何%くらいの力が出るかを示します。
※僕が勝手に考えた指数なので、あくまで目安です
実際は、どんなに頑張ってもオムニホイールがスリップしますので、この数字通りの力は出ていないと思いますが、数字を見る限りはかなりの角度の坂が登れそうな感じの値ですね。
あとは想定したスピードが出ているかを確認しつつ、ホイール直径や減速機のスペックを調整していく事になります。
経験上、ホイールの出力する力がロボットにかかる重力を越す(FW比が100%を超える)必要は無いと思いますが、80%を下回ると動きがもっさりしてきます。 今回の例においては、適性重量は2[kg]前後になるでしょう、Yunit5Xは重すぎかな…。(実際、制動時に若干のトルク不足を感じます)
逆に、FW比が100%を大きく超えるようなモータ選定は、モータの重量が増す一方でパワーが無駄になってしまうかもしれません。
詳細は専門書が多数出回っているので、そちらを参考にしてください。
傾斜をかけるというのは、基本的には電磁石へ電流を流すタイミングを、どちらか片方向にだけ早める事で行われます。 ブラシ付きDCモータはその構造上、ある回転方向についてタイミングを早めると、逆回転の切り替えタイミングは遅くなります。 つまり、進角付きモータは、時計回りと反時計回りで回転数とトルクに差が生じます。
余談:ブラシレスモータは電子制御次第では両回転に進角を付けられるのがひとつメリット。
例えばクルマのラジコンなどは、直進が強くて後退は弱い特性特性になるように、進角ありのモータを使う事がほとんどです。 対称的に、オムニホイールを駆動するモータについては、両方向に同じ特性が出るモータ(これを中性と呼びます)を使わないと、進む方向によって回転数やトルクにムラが出てしまいます。
詳細はカタログに記載がありますが、いわゆる高級モータは高い精度で中性が出ています。
計算ベースでオムニホイールを制御する場合には、尚更モータの回転特性は精密なものが求められます。 逆を言えば、手動ロボットであれば多少の進角であればそもそも気付かないか、人間の学習によって勝手に補正されるとも言えます。
機械的な違いとして
他にも沢山ありますが、特徴として大きな差はだいたいこんなもんです。
コアレスモータはとにかく即応性が高いのが売りです。
機械的なイナーシャもそうですし、電気的なインダクタンスもそうです。 イナーシャは機械的時定数に影響しますし、インダクタンスは電気的時定数に影響します。 機械/電気どちらの時定数も、コアレスはコアードに比べて圧倒的に小さくなります。
しかし、時定数が極端に小さいモータを制御する際には、いくつか注意すべきことがあります。
モータにも当然定格があり、それを大きく超える運用をした場合には、どんな高級なモータであっても壊れてしまいます。 特にコアレスモータはコアの構造が非常に繊細であるため、熱の管理はコアードモータよりもシビアに行う必要があります。
PWM周波数が低すぎて、電流がきちんと平滑化されていない状態は、モータの発熱を招くので避けるべきです。 一般に、DCモータを駆動するPWM周波数は、巻線の電気的時定数の10倍以上の周波数が望ましいとされています。 この内容については、インターネットに詳しい記事が出回っています。
適切なPWM周波数を考える ー Takeyuta Lab
マイクロドライブの概要 (3) ー マクソンアカデミー
コアレスモータ自体は機械的時定数が非常に小さいため、そのモータの出しうる最大の加速でロボットを運用すると、多くのケースで車体が不安定になります。
加減速制御として一番シンプルなのは、モータ制御PWMのデューティ比に対して、時定数が数十〜数百[ms]のデジタルLPFをかける事です。 移動平均(Simple Moving Average)を探せば沢山Exampleが出てきます。
バッテリ搭載の移動ロボットにおいては、モータは電気エネルギーを運動エネルギー(トルク)に変換する役割を持ちますが、 それが実際にロボットのロコモーションにどう影響するかは、車体重量であったり重心であったり、車輪の性能に大きく左右される事を説明しました。
必要なトルクは、ロボットの重量から目安計算ができます。 以上で紹介したFW比というのは、あくまで僕が考えた目安としてお使いください。
もし他に評価方法を考えた方がいらっしゃいましたら、是非教えてください!
RCJ Soccerのここ最近のトレンドは、パワーよりも精度であると見ていて思います。 正面からの押し強さよりも、どれだけ制御が正確に効いているかが得点を左右しているようです。 もちろん、制動を得るための移動トルクは必要ですが、必要以上のトルクは重量ロスになります。
RCJ Soccerに求められる、狭いフィールドで高い制動で動くことを達成しようとすると、コアレスモータはコアードモータに対して、文字通り桁違いの優位性を持つことは明らかです。 ただし、その扱いにおいては、コアードモータでは問題にならなかった部分が表面化しやすいので、きちんとした技術的なバックグラウンドを持っておく必要があると思います。
ここ最近の「コアレス使わないと勝てない」議論は、その理由付けがきちんとされている場合と、そうで無い場合とが両極端です。 押し合いに勝ちたいからコアレスを使いたいというのは根本からして間違っていると思いますし、車輪配置やホイールの性能について議論をせずにモータの話だけをしているのも間違っていると思います。
戦略次第で、コアレスが必要無いという結論になるのも当然あり得ると思います。特に関西ブロックのマカオシュートなどは戦略としては非常に強力ですし、モータの性能以外で勝負をしている一つの例と言えると思います。
嬉しいことに、コメントがたくさん来ます。
忙しくてもちゃんと返そうと思います。
それでは!
P.S. maxonはいいぞ
以前RCJ向けにギアヘッド付モータを比較した記事を書いていますので、そちらも参考にして下さい。
モータ・ギアヘッドまとめ
RoboCupJunior(以下RCJ)で「〇〇を使ったら勝てるか」論は尽きる事がありませんが、中でもモータとCNCについては発生頻度が高いです。 だいたい大会後などシーズンの区切りに発生します。 今回もちょうど質問を頂いたので、一度まとめてみようと思います。
システム全体を把握する・モータの役割を捉える
突然モータの話に入るのではなく、ロボットのシステム全体の話をします。全体を把握せずモータだけの話をするのは、根本的に意味がありません。
RCJのロボットは、エネルギーソースであるバッテリーをロボット本体に搭載して、それを物理的な動作に変換するためにモータを使っています。 このシステムを見通して話をする必要があります。
図1:ロボットのシステム全体におけるパワーの経路
ロボットのパワーソースであるバッテリの「電力」から、ロボットの出力である「運動」への経路は、ざっくりと上の図のようになります。 このように、いろいろな箇所でエネルギーが形態を変えて、最終的に力として出力されるのがポイントです。
この経路においては、DCモータは「電流→トルクへの変換」を担う装置です。
モータのトルクは、オムニホイールのベクトル合成を経てロボットの動作へと出力されるため、モータのトルクとロボットの押し強さはイコールではありません。
オムニホイールはその構造上、普通のホイールに比べてグリップが劣る事が多いため、図1の「車輪と地面のグリップ」がボトルネックとなるケースが多いです。 そのため多くのRCJ競技者が、強グリップのオムニホイールを自作して「モータ↔ロボットの運動」間のボトルネックを解消しています。
図2:オムニホイールロボットの車輪配置
とりわけ影響が大きいのは、ロボットの車輪配置です。
いわゆる「3輪・4輪」と表現される、ロボットの車輪数とその配置のことです。
ボールを挟んでの押し合いをする場合、ロボットの前輪が浮き上がってしまう場合がよくあります。 その場合に、3輪のロボットは後輪がグリップしない状態になるため、押し合いの性能は4輪ロボットに比べて大幅に劣ることになります。
電気エネルギー経路
モータに電気エネルギーを伝える過程での損失は主に- 電池の内部抵抗
→これを知りたい場合、開放電圧と、適当な抵抗器を挟んだ際の両端電圧から計算可能です。 - 導線の抵抗成分
→パワー経路に細い導線を使うと、ここの損失が大きくなります。 - モータードライバのFETのON抵抗
→データシートから確認できます。
当然、これらの抵抗成分は小さければ小さいほど良いので、内部抵抗の小さなバッテリを使い、パワーケーブルは太く短く配線し、低ON抵抗のモータードライバICもしくはFETを選んで組めば、それだけ高いパフォーマンスを出せることになります。
これらの損失は、使用するモータの端子間抵抗が小さければ小さいほどシビアになります。モータドライバICの中には、小型である反面ON抵抗の非常に大きなものがあったりしますので、モータドライバは注意して選びましょう。
オムニホイールの必要トルクの目安を知る
今回のメイントピックです。モータのトルクは、減速機→車輪→地面へと伝達され、最終的にロボットの運動として出力されます。 このうち減速機については、データシートを参照して詳細情報を知ることができますが、車輪→地面について検討することはほぼ不可能です。
そこで、モータの力が車輪→地面へ100%伝達される前提で、モータがロボットの移動に関与する力を計算します。 車輪のグリップはロボットの重量依存で生まれるものですから、ロボットの重量に対して車輪の回転トルクがどれ位の割合であるかは、一定の目安になるだろうと考えられます。
(例)Yunit5Xのロボット速度および直進トルクの計算
※「1輪あたり1〜2[mNm]を想定」は減速前のモータトルクの事です
※ Yunit5XはLi-Po4セル(14.8V)がパワーソースです。電流制御しつつ回転数のリミットを上げる運用をしています。
Yunit5Xの車重は2.380[kg]と制限ギリギリです…。こんな感じで、モータのトルクとスピードから、ロボットが実際に出しうる力やスピードは計算で求めることができます。
計算に必要なデータは、公式のデータシートをリファレンスします。
DC-Micromotors Series 2237...CXR
Planetary Gearheads Series 22/7
算出された「直進力(Force)/ロボット重量(Weight)の比」(FW比と勝手に名付けます)は、オムニがもし100%地面にグリップしたとして、マシン重量にかかる力の何%くらいの力が出るかを示します。
※僕が勝手に考えた指数なので、あくまで目安です
実際は、どんなに頑張ってもオムニホイールがスリップしますので、この数字通りの力は出ていないと思いますが、数字を見る限りはかなりの角度の坂が登れそうな感じの値ですね。
あとは想定したスピードが出ているかを確認しつつ、ホイール直径や減速機のスペックを調整していく事になります。
経験上、ホイールの出力する力がロボットにかかる重力を越す(FW比が100%を超える)必要は無いと思いますが、80%を下回ると動きがもっさりしてきます。 今回の例においては、適性重量は2[kg]前後になるでしょう、Yunit5Xは重すぎかな…。(実際、制動時に若干のトルク不足を感じます)
逆に、FW比が100%を大きく超えるようなモータ選定は、モータの重量が増す一方でパワーが無駄になってしまうかもしれません。
その他モータ選定の際に気を付けること
オムニホイール型のロボットにおいて注意すべきポイントについてまとめます。詳細は専門書が多数出回っているので、そちらを参考にしてください。
進角
ブラシ付きDCモータは、ブラシが電磁石のスイッチ切り替えのタイミングを決める事でモータを回転させる仕組みですが、これが時計回り・反時計回りに同じタイミングで切り替えるものと、ある方向のみ強く回るよう傾斜をかけて切り替えるものとがあります。傾斜をかけるというのは、基本的には電磁石へ電流を流すタイミングを、どちらか片方向にだけ早める事で行われます。 ブラシ付きDCモータはその構造上、ある回転方向についてタイミングを早めると、逆回転の切り替えタイミングは遅くなります。 つまり、進角付きモータは、時計回りと反時計回りで回転数とトルクに差が生じます。
余談:ブラシレスモータは電子制御次第では両回転に進角を付けられるのがひとつメリット。
図3:進角付きモータの例
例えばクルマのラジコンなどは、直進が強くて後退は弱い特性特性になるように、進角ありのモータを使う事がほとんどです。 対称的に、オムニホイールを駆動するモータについては、両方向に同じ特性が出るモータ(これを中性と呼びます)を使わないと、進む方向によって回転数やトルクにムラが出てしまいます。
詳細はカタログに記載がありますが、いわゆる高級モータは高い精度で中性が出ています。
計算ベースでオムニホイールを制御する場合には、尚更モータの回転特性は精密なものが求められます。 逆を言えば、手動ロボットであれば多少の進角であればそもそも気付かないか、人間の学習によって勝手に補正されるとも言えます。
コアードとコアレス
非常に雑ではありますが、コアレスモータとコアードモータを比較すると機械的な違いとして
- コアレスモータは鉄心(コア)を持たないため、機械的なイナーシャを小さくできる
- コアレスモータは磁性体コアを持たないため、コギング(※1)が発生しない
- コアレスモータはコアによる鉄損(※2)が無い
- コアレスモータは、鉄心コイルを使用するコアードモータに比べ巻線インダクタンス(※3)を小さくできる
他にも沢山ありますが、特徴として大きな差はだいたいこんなもんです。
※1:コアードモータの鉄心コアが磁石に引きつけられることで、モータの軸を回した時にクリック感が生じます。
これは制御時に外乱として働き、制御性を悪くします。
特に低回転時大きく影響します。
※2:鉄損は、鉄に磁束が通る際に必ず発生し、主にヒステリシス損と渦電流損があります。 コアードモータのコアには、無方向性電磁鋼板という、鉄損が少なめで特定方向に磁化しにくい鉄が使われます。
※3:インダクタンスがあると、電圧をかけても電流はすぐには流れません。 インダクタンスが小さいほど、電圧をかけてからすぐに電流が流れるようになります。 モータの場合、インダクタンスが小さいほど電圧をかけてからトルクが発生するまでのタイムラグが小さくなるため、即応性が上がり制御が楽になります。
※2:鉄損は、鉄に磁束が通る際に必ず発生し、主にヒステリシス損と渦電流損があります。 コアードモータのコアには、無方向性電磁鋼板という、鉄損が少なめで特定方向に磁化しにくい鉄が使われます。
※3:インダクタンスがあると、電圧をかけても電流はすぐには流れません。 インダクタンスが小さいほど、電圧をかけてからすぐに電流が流れるようになります。 モータの場合、インダクタンスが小さいほど電圧をかけてからトルクが発生するまでのタイムラグが小さくなるため、即応性が上がり制御が楽になります。
コアレスモータはとにかく即応性が高いのが売りです。
機械的なイナーシャもそうですし、電気的なインダクタンスもそうです。 イナーシャは機械的時定数に影響しますし、インダクタンスは電気的時定数に影響します。 機械/電気どちらの時定数も、コアレスはコアードに比べて圧倒的に小さくなります。
しかし、時定数が極端に小さいモータを制御する際には、いくつか注意すべきことがあります。
モータにも当然定格があり、それを大きく超える運用をした場合には、どんな高級なモータであっても壊れてしまいます。 特にコアレスモータはコアの構造が非常に繊細であるため、熱の管理はコアードモータよりもシビアに行う必要があります。
コアレスをPWM駆動する際の周波数
モータの速度可変制御をする際には、一般的にPWMが使われることが多いですが、コアレスモータのような電気的時定数が極端に小さなモータをPWMで駆動する際には、PWM周波数が低すぎると電流平滑が行われない事があります。PWM周波数が低すぎて、電流がきちんと平滑化されていない状態は、モータの発熱を招くので避けるべきです。 一般に、DCモータを駆動するPWM周波数は、巻線の電気的時定数の10倍以上の周波数が望ましいとされています。 この内容については、インターネットに詳しい記事が出回っています。
適切なPWM周波数を考える ー Takeyuta Lab
マイクロドライブの概要 (3) ー マクソンアカデミー
加減速制御を適切に行う
RCJにはアウトオブバウンズのルールがあり、短距離で制動をかけるシチュエーションが頻発します。 その際に、適切な加減速制御を行わずにモータを運用すると、モータやギアへのダメージが大きくなるだけでなく、オムニホイールのスリップを招いたり、グリップが十分であった場合には車体が浮き上がる原因にもなります。コアレスモータ自体は機械的時定数が非常に小さいため、そのモータの出しうる最大の加速でロボットを運用すると、多くのケースで車体が不安定になります。
加減速制御として一番シンプルなのは、モータ制御PWMのデューティ比に対して、時定数が数十〜数百[ms]のデジタルLPFをかける事です。 移動平均(Simple Moving Average)を探せば沢山Exampleが出てきます。
まとめ
ロボットの足回りモータの選定についてバッテリ搭載の移動ロボットにおいては、モータは電気エネルギーを運動エネルギー(トルク)に変換する役割を持ちますが、 それが実際にロボットのロコモーションにどう影響するかは、車体重量であったり重心であったり、車輪の性能に大きく左右される事を説明しました。
必要なトルクは、ロボットの重量から目安計算ができます。 以上で紹介したFW比というのは、あくまで僕が考えた目安としてお使いください。
もし他に評価方法を考えた方がいらっしゃいましたら、是非教えてください!
RCJ Soccerのここ最近のトレンドは、パワーよりも精度であると見ていて思います。 正面からの押し強さよりも、どれだけ制御が正確に効いているかが得点を左右しているようです。 もちろん、制動を得るための移動トルクは必要ですが、必要以上のトルクは重量ロスになります。
RCJ Soccerに求められる、狭いフィールドで高い制動で動くことを達成しようとすると、コアレスモータはコアードモータに対して、文字通り桁違いの優位性を持つことは明らかです。 ただし、その扱いにおいては、コアードモータでは問題にならなかった部分が表面化しやすいので、きちんとした技術的なバックグラウンドを持っておく必要があると思います。
ここ最近の「コアレス使わないと勝てない」議論は、その理由付けがきちんとされている場合と、そうで無い場合とが両極端です。 押し合いに勝ちたいからコアレスを使いたいというのは根本からして間違っていると思いますし、車輪配置やホイールの性能について議論をせずにモータの話だけをしているのも間違っていると思います。
戦略次第で、コアレスが必要無いという結論になるのも当然あり得ると思います。特に関西ブロックのマカオシュートなどは戦略としては非常に強力ですし、モータの性能以外で勝負をしている一つの例と言えると思います。
嬉しいことに、コメントがたくさん来ます。
忙しくてもちゃんと返そうと思います。
それでは!
P.S. maxonはいいぞ
コメント
コメント一覧 (1)
記事を書いていただき有難うございます。
この記事とは全く関係ないですが、ドリブラーに関する記事も書いて頂けると嬉しいです。期待しています。