内容紹介
二足歩行ロボットを作って、ロボコンに挑戦!基本から、製作ノウハウまで解説
本書は、二足歩行ロボット格闘技大会「ROBO-ONE」に参加できるロボットを製作する方法を解説したものです。
基本的なロボットの構成から、サーボなど使用する部品の概要、歩行などのプログラムの作成までを解説しています。サーボの制御はArduinoを使用し、最低限歩行がきちんとできるロボットを製作します。
後半では、「ROBO-ONE」の常連参加者による、ロボット製作のノウハウの紹介が中心となります。ロボット製作のコンセプトの考え方や、格闘技の技やダンスなどの動き(モーション)をプログラムする際のコツ、ハードウェア製作のコツなど、初心者がステップアップできるだけでなく、すでに製作の経験がある方でも役に立つ内容となっています。
このような方におすすめ
・二足歩行ロボットを作ってみたい方
・二足歩行ロボット作った経験があるけれどうまくいかない方、車輪型など他のロボットや二足歩行のキット製作からステップアップしたい方(高校生以上のレベル)
・ロボットのソフトウェアを担当したことはあるが、ハードウェアについてはあまり知識のない方
目次
主要目次
はじめに
1章 これからはじめる二足歩行ロボット
2章 ROBO-ONEについて
3章 ロボットの駆動部分:サーボについて
4章 Arduinoによるサーボ制御
5章 ロボットアームを作ろう
6章 いろいろな姿勢センサー
7章 二足歩行ロボットを作ろう
8章 ロボットに多彩な動きをさせる Metallic Fighter(メタリックファイター)でのモーション作り
9章 連覇するロボットの作り方(コンセプト作りを主に)
10章 いろいろなハードウェアを作るコツ:クロムキッドの作り方
11章 ロボットの高速化について:Frosty
付録 失敗しないための注意点
詳細目次
はじめに
1章 これからはじめる二足歩行ロボット
1-1 二足歩行ロボットの3つの技術
1-1-1 サーボモータを知る
1-1-2 運動学を理解する
1-1-3 ロボットの脚構造
1-1-4 ロボットの姿勢を知る
1-2 二足歩行ロボットの開発環境の概要
1-2-1 コントロールボード Arduino
1-2-2 パソコン
1-3 本書で目指す二足歩行ロボット
2章 ROBO-ONEについて
2-1 ROBO-ONEとは
2-2 ROBO-ONEの進化の歴史
2-3 ROBO-ONEの見どころ
2-3-1 大技の瞬間を見逃すな!
2-3-2 出場できるロボットは?
2-4 ROBO-ONEの競技内容について
2-4-1 3つの競技カテゴリー
2-4-2 大会を生で見たい!
2-5 ROBO-ONE競技規則
2-5-1 試合形式
2-5-2 ダウンの規定
2-5-3 タイムの取得
2-5-4 ロボットの操縦方法
2-5-5 禁止事項
2-5-6 予選
2-5-7 認定大会
2-6 ROBO-ONEの技
2-6-1 すくい上げ
2-6-2 ひねりたおし
2-6-3 すくい投げ(大技)
2-6-4 前転キック(大技)
2-7 ROBO-剣と競技規則
2-7-1 ROBO-剣とは
2-7-2 競技規則
2-8 ROBO-ONE/ROBO-剣の今後
3章 ロボットの駆動部分:サーボについて
3-1 サーボとその変遷
3-2 サーボとは
3-2-1 サーボの概要
3-2-2 ロボット用サーボがサポートするインタフェース
3-2-3 マルチドロップ接続
3-2-4 シリアル通信
3-2-5 通信プロトコル
3-2-6 コントロールテーブル
3-2-7 ホストコントローラ
3-3 近藤科学のサーボ
3-3-1 KRSシリーズの種類
3-3-2 シリーズ構成
3-3-3 B2Mの紹介
3-3-4 パラメータ設定
3-3-5 サーボマネージャ
3-3-6 PCとの接続
3-3-7 配線
3-3-8 PWM制御
3-3-9 使用方法:コントロールボード RCB-4
3-3-10 使用方法:PC
3-3-11 使用方法:マイコンボード
3-3-12 まとめ
3-4 双葉電子工業のサーボ
3-4-1 サーボの概要
3-4-2 パソコンでサーボを動かす
3-4-3 特徴的な機能
3-5 Dynamixelとは
3-5-1 ラインナップ
3-5-2 Dynamixelがサポートするインタフェースとコネクタ
3-5-3 通信プロトコル
3-5-4 Dynamixelのコントロールテーブル
3-5-5 ホストコントローラ
3-5-6 PCからDynamixelを制御する(Python編)
4章 Arduinoによるサーボ制御
4-1 Arduinoとは
4-2 色々なArduinoボード
4-3 Arduinoの開発環境
4-4 Arduino Unoのハードウェア
4-4-1 ATmega328P
4-4-2 RAMとフラッシュメモリ
4-4-3 PWM
4-4-4 A/Dコンバータ(アナログ-デジタル変換回路)
4-4-5 デジタルI/O
4-4-6 シリアル通信
4-5 I/Oシールドでプログラミング
4-5-1 PSDセンサのデータを取り込むスケッチ
4-5-2 PWMサーボを制御するスケッチ
4-5-3 ToF距離センサと2軸PWMサーボを制御するスケッチ
4-5-4 16軸のPWMサーボをコントロールできるボードを使う
4-6 ArduinoでKRSサーボを使用する方法
4-6-1 必要な製品
4-6-2 ハードウェアシリアルとソフトウェアシリアル
4-6-3 準備
4-6-4 ライブラリの概要
4-6-5 サンプルプログラム
4-6-6 ICSのコマンドにつきまして
4-6-7 setPos()関数の処理
4-6-8 プログラムの実行
4-7 Arduinoで双葉電子工業のサーボを動かす(制御/情報取得)
4-7-1 Arduinoで何ができるのか
4-7-2 何をするのか
4-7-3 Arduinoとサーボの接続方法
4-7-4 サーボを動かしてみる
4-7-5 サーボの角度データを取得してみる
4-7-6 他にはどんなことができるのか
4-8 DynamixelをArduinoで制御する
4-8-1 DXSHIELD
4-8-2 DXSHIELDのArduino用ライブラリ
5章 ロボットアームを作ろう
5-1 ロボットの構造
5-1-1 サーボ
5-1-2 Arduino Unoボードとサーボ接続
5-2 ROBO-剣用スケッチ
5-3 ROBO-剣の遠隔操作部門に参加しよう
5-4 最新競技規則対応
5-4-1 竹ひごを使った竹刀の製作
5-4-2 吸盤により固定するスタンドの製作
5-4-3 ロボットとの接続を通信ケーブルのみにする方法
5-4-4 第6回優勝ロボット
6章 いろいろな姿勢センサ
6-1 姿勢センサについて
6-2 LSM9DS1 9軸慣性計測ユニット
6-3 MPU-6050搭載6軸センサモジュール
6-4 MPU-9250搭載9軸センサモジュール
6-5 BNO-055センサモジュール
6-6 CMPS11
6-7 姿勢センサのまとめ
7章 二足歩行ロボットを作ろう
7-1 ロボットの歩行を理解する
7-2 ロボットの歩行プログラム
7-3 歩行時の外乱補正制御
7-4 まとめ
8章 色々なハードウェアを作るコツ:クロムキッドの作り方
8-1 クロムキッド・ガルー
8-1-1 最初のロボット購入
8-1-2 最初のロボット大会参加
8-1-3 機体の改良を色々試行錯誤して大会に参加
8-1-4 小型の機体で大会に参加
8-1-5クロムキッドとガルーの製作方法
8-2 それぞれの大会に応じたロボットの作り方
8-2-1 ROBO-ONE
8-2-2 ROBO-ONE Light
8-2-3 ROBO-ONE auto
8-2-4 ROBO-剣
8-3 機体の設計前に考えたこと
8-3-1 相手を知る
8-3-2 自分を知る
8-3-3 攻撃や防御で考えた機体構造
8-4 ロボットの設計
8-5 ロボットを構成する素材と部品
8-5-1 素材
8-5-2 部品
8-6 試作・製作・メンテナンス
8-6-1 製作で主に使用する工具
8-6-2 あると便利な工具
8-7 大会直前の注意点
8-7-1 大会前にいつも行っていること
8-7-2 試合前に必要なこと
8-7 最後に
9章 連覇するロボットの作り方(コンセプト作りを主に)
9-1 キング・プニの紹介
9-2 設計コンセプト
9-2-1 目的と目標
9-2-2 自己分析
9-2-3 大コンセプト
9-2-4 小コンセプト
9-2-5 設計コンセプトの考え方、まとめ
9-3 キング・プニのコンセプト
9-3-1 目標と自己分析
9-3-2 キング・プニの大コンセプト
9-3-3 小コンセプト
9-4 キング・プニのハードウェアの作り方
9-4-1 片軸の部分は軸受で保護する
9-4-2 脚のベアリング
9-4-3 可動部分にできるだけサーボを配置しない
9-4-4 フリー軸
9-5 キング・プニのソフトウェアの作り方
9-5-1 モーションの狙い
9-6 キング・プニ 勝つための小ネタ
9-6-1 ケーブルの配線とテープ
9-6-2 ZHコネクタのホットボンドで接着
9-6-3 スポンジで衝撃吸収
9-6-4 ホーンを六角ネジで固定してガタを消す
9-6-5 ねじロックは絶対に使うこと
9-7 あとがき
10章 ロボットに多彩な動きをさせる:メタリックファイターでのモーション作り
10-1 モーションの考え方
10-1-1 モーションとはロボットの動きのこと
10-1-2 ロボットを構成する基本部品はサーボモータとサーボアーム
10-1-3 基本部品を組み合わせて直線運動を作る
10-1-4 サーボモータを組み合わせてさまざまな姿勢を生み出す
10-1-5 姿勢を連続的に変化させることでモーションが生まれる
10-2 モーションの作成方法
10-2-1 姿勢を作る
10-2-2 モーションを作る
10-2-3 モーション作成時のルール
10-3 効果のある攻撃モーションとは
10-3-1 パンチモーション
10-3-2 腰の回転軸を組み合わせたパンチモーション
10-3-3 足の重心移動と組み合わせたパンチモーション
10-3-4 足裏をフルグリップ化
10-3-5 移動と組み合わせたパンチモーション
10-4 モーションのシーケンス
10-4-1 前進移動モーション
10-4-2 起き上がりモーション
10-5 コントローラへの割り当て
10-5-1 どこにどのモーションを入れるかが重要
10-5-2 メタリックファイターのコントローラへの割り当て
10-5-3 標準化の促進
11章 ロボットの高速化について:Frosty
11-1 Frostyの高速走行性能の紹介
11-2 高速走行実現の課題
11-2-1 サーボは指令通りには動かない
11-2-2 通常の軸配置だと膝サーボの速度が足りなくなる
11-2-3 定常走行時は遊脚を前に出す動作はイナーシャが大きい
11-2-4 速度を上げると接地衝撃が大きくなり反力で姿勢が乱れる
11-3 二関節筋の働きからヒントを得た足機構
11-3-1 二関節筋とは
11-3-2 二関節筋の働きからヒントを得た脚機構
11-3-3 疑似直線リンク機構
11-3-4 バックドライブ性の重要性
11-3-5 バネについて
11-3-6 股関節ロール軸のリンク機構
11-4 FPGAの特性を生かした制御アーキテクチャ
11-5 Frostyに使われている部品や実装上の工夫、ノウハウについて
11-5-1 電圧について
11-5-2 サーボの改造
11-5-3 ねじりバネの作り方
11-5-4 ナイロン(ポリアミド)のSLSによる3Dプリント部品について
11-5-5 イリサートの使用
11-5-6 カーボンへのフランジ付きベアリングの埋め込み
11-5-7 足裏材の選定と接着方法
11-5-8 配線ケーブルについて
11-5-9 IMUについて
11-5-10 I/F基板用部品
11-6 あとがき
付録 失敗しないための注意点
A-1 ハード編
A-1-1 電源アダプター
A-1-2 Arduinoボードは色々な給電方法を持つ
A-1-3 ノイズを考え、はんだ付けで確認をする
A-1-4 9軸センサの方向確認
A-1-5 計算と現実が合っていること確認をする
A-1-6 サーボのコネクタは色々ある
A-1-7 抵抗値は間違えないようにする
A-2 ソフト編
A-2-1 シリアルサーボには電源をいれて、エラーを確認する
A-2-2 エラーの解決方法
A-2-3 スケッチ名の付け方
続きを見る