Skip to content

rt-net/rt_robosweep

ラズパイマウス用ボール操作機構 (RoboSweep)

本リポジトリは、NTFが開催するRoboSweep競技において、競技用ボールの操作(保持・投擲)を行うための「ラズパイマウス用ボール操作機構」を制御するためのソフトウェアおよびハードウェアの情報です。アールティ社製 Raspberry Pi Mouse V3 に取り付けて使用することを前提としています。

Orca

Table of Contents

Supported ROS distributions

  • ROS 2 Humble Hawksbill

Requirements

ハードウェア

  • Raspberry Pi Mouse V3
  • ラズパイマウス用ボール操作機構
  • Raspberry Pi 4 (4GB以上推奨)
  • microSDカード (32GB以上推奨)
  • SONY PS4 コントローラー (DUALSHOCK 4)

電装系全体図

image

OS

  • Ubuntu Desktop 22.04 LTS (64-bit)

Installation

デバイスドライバーのインストール

ハードウェアにアクセスするために必要なデバイスドライバーをビルドし、インストールします。

sudo apt update
sudo apt install git
cd ~
git clone https://github.com/rt-net/RaspberryPiMouse.git
cd RaspberryPiMouse/utils
./set_configs.bash
./build_install.bash

デバイスドライバーをロードします(起動のたびに必要です)。

sudo insmod ~/raspberrymouse/src/drivers/rtmouse.ko
sudo chmod 777 /dev/rt*

Source Build

# ワークスペースの作成
mkdir -p ~/ros2_ws/src && cd ~/ros2_ws/src
 
 # パッケージのクローン
git clone https://github.com/rt-net/rt_robosweep.git

 # RoboSweepパッケージ(raspimicromouse等)をsrc以下に配置してください
 cp rt_robosweep/ソフトウェア(ファームウェア、動作確認用サンプルプログラム)/RoboSweepテレオペパッケージ/raspimicromouse ~/ros2_ws/src

 # 依存関係のインストール
cd ~/ros2_ws
rosdep install -r -y -i --from-paths src
 
 # ビルド
colcon build
source ~/ros2_ws/install/local_setup.bash

QuickStart

ボール操作機構に関連する全てのノード(投擲制御、コントローラ通信、本体制御)を起動します。

# USBパーミッションの設定
sudo chmod 777 /dev/ttyUSB0
sudo chmod 777 /dev/ttyACM0
echo 1 | sudo tee /sys/bus/usb-serial/devices/ttyUSB0/latency_timer
 
 # ローンチファイルの実行
source /opt/ros/humble/setup.bash
source ~/ros2_ws/install/local_setup.bash
ros2 launch rs_teleop_joy launch_all.py

How To Use Examples

PS4コントローラによる操作

launch_all.py の実行後、PS4コントローラを使用してロボットの移動とボール操作が可能です。

操作方法 動作内容
左スティック (上下) 前後走行(アナログ)
右スティック (左右) 左右回転(アナログ)
十字キー (上下左右) 前後左右の定速走行
△ ボタン ボール引込アームを上げる
□ ボタン ボール引込アームを水平(真ん中)にする
× ボタン ボール引込アームを下げる
○ ボタン ボールを投擲する
L2 ボタン 押し込み量に応じて投擲距離を調整

Important

ロボットのモーターを有効にするには、実行中に本体の SW1 を押してください。無効にするには SW2 を押します。

Packages

  • raspimouse2: Raspberry Pi Mouse V3 のROS 2ベースパッケージ。
  • sweep: ボール投擲機構の制御用パッケージ。
  • rs_teleop_joy: PS4コントローラによる統合操作用パッケージ。

License

(C) 2024 RT Corporation support@rt-net.jp

各ファイルはライセンスがファイル中に明記されている場合、そのライセンスに従います。特に明記されていない場合は、Apache License, Version 2.0に基づき公開されています。ライセンスの全文はLICENSEまたは https://www.apache.org/licenses/LICENSE-2.0 から確認できます。

ソレノイドのCB1037に関するCADモデルの使用については、タカハ機工株式会社より使用許諾を受けています。本ロボットに使用されているタカハ機工株式会社の部品類にかかる著作権、商標権、その他の知的財産権は、タカハ機工株式会社に帰属します。

サーボモータのXC330に関するCADモデルの使用については、ROBOTIS社より使用許諾を受けています。本ロボットに使用されているROBOTIS社の部品類にかかる著作権、商標権、その他の知的財産権は、ROBOTIS社に帰属します。

Contributing

本ソフトウェアはオープンソースですが、開発はオープンではありません。本ソフトウェアは基本的にオープンソースソフトウェアとして「AS IS」(現状有姿のまま)で提供しています。本ソフトウェアに関する無償サポートはありません。バグの修正や誤字脱字の修正に関するリクエストは常に受け付けていますが、それ以外の機能追加等のリクエストについては社内のガイドラインを優先します。詳しくは コントリビューションガイドライン に従ってください。

Contributors

  • 株式会社アールティ (@rt-net) – Original Author

Contributions are always welcome!

About

Reference robot for RoboSweep

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors

Languages