LoginSignup
0
0

Rover講座08 Roboclawの設定をする

Last updated at Posted at 2023-08-11

環境

この記事は以下の環境で動いています。

項目
CPU Core i5-8250U
OS Windows10
Basicmicro Motion Studio 1.0.0.75
項目
Board boroclaw 2x7A
FW Version 4.2.8

概要

移動ロボットの足となる、駆動系部品の組み立てや、モータードライバーであるRoboclawの設定を行います。
ここでは、Pololuのエンコーダー付きギアモーターをRoboclaw経由で駆動することを目標にします。

08_motor.jpg

予備知識

エンコーダー付きモーター

自律ロボットを作成するためにはタイヤを駆動するモーターはエンコーダー付きが必須です。エンコーダーによって正確なタイヤの移動量が分かるために、正確なオドメトリーを計算できます。
また、エンコーダーで正確な回転速度を取得できるために、駆動軸を速度制御することが出来ます。
Pololu 37Dモーターではモーター側(ギアで減速前)は1周64パルスのエンコーダーがついています。今回は70:1のギアを使うので、減速後は1周4480(70x16)パルスのエンコーダーになります。

Roboclaw

モータードライバとモーターコントローラーが一体となった基板です。エンコーダーをフィードバックした速度制御を行えて、USBやRC信号といった多様なIFにも対応しています。USB経由で制御の設定をすることが出来ます。

PowerDistributeBoard

配電盤に当たるもので、以下の機能を持ちま鵜s。

  • バッテリーの電源を分配する
  • バッテリーの電圧・電流を計測する
  • 5Vの電圧を生成

色々なボードが販売されてこれのようなものが良く売られていますが、今回はこれを使います。
Pixhawkの裏に貼れるようになっているボードです。

前提条件

以下の機器が必要です。

  • WindowsPC
  • USBA-mictoB
  • Pixhawk
  • PowerDistributionBoard(Dumperプレート形式)
  • Roboclaw(モータードライバ)
  • 電源系部品
    • Makitaバッテリー
    • スイッチ
    • フューズ
  • エンコーダー付きギアモーターx2
  • Futaba(以前の記事で設定済み)
  • 駆動配線基板部材

手順

駆動配線上基板の作成

  • 秋月の片面ユニバーサルC基板(4つ穴)で作ります。2つのモーターとXHコネクタの変換基板です。

top.png

駆動配線下基板の作成

  • 秋月の片面ユニバーサルD基板(2つ穴)で作ります。Roboclawと接続する基板です。

bottom.png

下基板電源ケーブルの作成

下基板用の電源ケーブルです。

下基板側 電源側
XH2 T型コネクタ
1 VCC VCC
2 GND GND

motor_power_cable.JPG

モータードライバ接続ケーブルの作成

上基板側 下基板側
XH6 None
1 M1A 1 M1A
2 M1B 2 M1B
3 VCC 3 VCC
4 GND 4 GND
5 M2B 5 M2B
6 M2A 6 M2A

モーターケーブル5.JPG

モーター接続ケーブルの作成

上基板と下基板のモーター配線を接続するものです。4Pあればよいですが、以下のエンコーダーケーブル(Pixhawk)と誤配線を防ぐために5Pにします。

上基板側 下基板側
XH5 XH5
1 M2A 1 M2A
2 M2B 2 M2B
3 M1A 3 M1A
4 M1B 4 M1B
5 5

モーターケーブル2.JPG

エンコーダー接続ケーブル(Roboclaw)の作成

上基板側 Roboclaw
XH8 2550_8P
1 EN2B 1 EN2-
2 EN2A 2 EN2+
3 EN1B 3 EN1-
4 EN1A 4 EN1+
5 EN2GND 5 -
6 EN2VCC 6 -
7 EN1GND 7 +
8 EN1VCC 8 +

モーターケーブル4.JPG

バッテリーホルダーのケーブル加工

  • T型コネクタを付け替えます。またケーブルは10cm程度に切ります。

bat_adapter.JPG

バッテリースイッチケーブルの作成

  • VCC_in -> SW -> VCC_out
  • GND_in -> fuse -> GND_OUT

SwitchSet.JPG

PowerDistributionBoardの配線、取付

  • 入力出力用のケーブル・コネクタを取り付けます
用途 in/out コネクタ
バッテリー接続 in T型コネクタ
YDlidar DCDC用 out T型コネクタ
モータードライバ用 out T型コネクタ
NUC用 out DCコネクタ(2.3mm)
Towerモジュール用 out DCコネクタ(2.1mm)
  • Pixhawkの裏に強力両面テーブルで貼り付けます。

pixhawk_pdb.JPG

電源系・駆動系の接続

  • 最終的に以下のような電気的接続になるように、ここまでで作った基板やケーブルを接続する。
  • Roboclawの配線でモーター1が進行方向左側のモーター、モーター2が進行方向右側のモーターに対応する。

power.png

Basicmicro Motion Studioのインストール

  • WindowsPCにてbasicmicroのWebサイトより「BasicMicro Motion Studio」をダウンロードする。
  • インストーラーを開き指示に従ってインストールする。

Roboclawとの接続、配線の確認

  • Basicmicro Motion Studioを起動する。
  • デバイス接続と接続する。
    • 「Attached Device」の中から接続しているものを選ぶ。
    • 「Connect Selected Unit」を押す。
  • 左側の「General Settings」メニューを選択する。
    • 「Setup」グループの「Control Mode」を「RC」にします(PixhawkからのPWM信号を受けてモーターを駆動する)。
    • 「Enable Encoder 1/2 in RC/Analog Mode」にチェックを入れる(チェックなしではRC信号に比例したPWM出力をする。ありでは速度制御をする)。

motion_studio3.png

  • 「PWM Setting」メニューを選択する。
    • 左側モーター(M1)の確認
      • ControlグループのMotor1のスライダーを上に上げる。左側モーターが「機体が前進する方向」に回っているか確認する。
        • 軸から見て反時計回り方向
        • 回転方向が逆の場合は「General Settings」面ツーの「Motor」グループでタブで「M1」横の「Reverse」にチェックを入れる
      • この時エンコーダーの値(上部のM1 Speed)が正の値か確認する。
        • 負の値の場合は、「General Settings」メニューの「I/O」グループの「Encoder M1 Mode」の横の「Invert」にチェックを入れる。
        • +1,-1のように微妙に値が振動するだけの場合は、A相とB相のどちらかが断線しているため、配線を確認する
    • 右側モーター(M2)でも同様に行う。
      • 「機体が前進する方向」が正の値のため、右側モーターは駆動軸方向から見て時計回りが正であることに注意

motion_studio1.png

  • メニューバーの「Device」->「Write Settings」を押して設定をROMに書き込む。

速度制御のチューニング

  • Basicmicro Motion Studioを起動する。
  • デバイス接続と接続する。
  • 「Velocity Sttings」メニューを選択する。
  • M1(左側モーター)のチューニング
    • モーターが回転しても安全であることを確認して、AutoTuneの「Tune M1」を押す。
      • モーターが自動的に駆動された後に、Motor1の「Velocity P」、「Velocity I」の項目が自動で入力される。
  • M1(左側モーター)のチューニング結果の確認する。
    • グラフビューで設定速度と現在速度をプロットする。ウィンドウ右の「Channels」で「Motor1 Setpoint」、「Motor1 Speed」を割り当てる。グラフの表示範囲から線がはみ出るときは横のScaleボタンを押す。
    • Controlグループの「Motor1」のスライダーを動かして、モーターを駆動する。
    • グラフビューをみて追従性を確認、場合によってはパラメーターを調整する。今回はM1/M2とも以下の数字に設定した。
項目 設定値 説明
Velocity P 2.2 ほぼチューニングでの値
Velocity I 0.5 ほぼチューニングでの値
Velocity D 0 D制御は使わない
QPPS 8960 最大回転速度、2回転/秒
  • M2(右側モーター)でも同様の作業を行う

motion_studio2.png

  • メニューバーの「Device」->「Write Settings」を押して設定をROMに書き込む。

外部信号によるRoboclawの動作確認

  • Futaba受信機とRoboclawのポートをサーボケーブルで接続する。
Futaba送信機の対応する軸 Futaba受信機のポート Roboclawのポート
throttle(右スティック上下) 2 1
pitch(左スティック上下) 3 2
  • Futaba送信機の電源を入れて、左右スティックを上下に動かすと、対応するモーターが駆動する。

motor_test.gif

参考

ArdupilotでのRoboclawの設定
Roboclaw AutoTuning

目次ページへのリンク

ROS講座の目次へのリンク
ROS2講座の目次へのリンク

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0