150724 cit brains

27
RoboCupとは RoboCup ー ロボット技術を比較し,公開し,発展させる場 チェスなどと並ぶ標準問題 人類の挑戦! ■サッカーリーグの目標 西暦2050年までにワールドカップのチャンピオンチームに勝 てる自律型ロボットのチームを作る その過程で ロボット工学と人工知能の融合・発展を目指す. 具体的には, ○コンテストだけではなく,学術会議が同時に開催される. ○勝利したチームには,情報公開の義務が生じる. →情報を共有化することで,加速的に技術の発展を目指す

Upload: -

Post on 13-Apr-2017

222 views

Category:

Education


0 download

TRANSCRIPT

RoboCupとは

RoboCup ー ロボット技術を比較し,公開し,発展させる場チェスなどと並ぶ標準問題 人類の挑戦!

■サッカーリーグの目標西暦2050年までにワールドカップのチャンピオンチームに勝てる自律型ロボットのチームを作る

その過程で○ロボット工学と人工知能の融合・発展を目指す.

具体的には,○コンテストだけではなく,学術会議が同時に開催される.○勝利したチームには,情報公開の義務が生じる.→情報を共有化することで,加速的に技術の発展を目指す

RoboCupとは

■RoboCup2015概要

場所: 中国 合肥日時: 2015年7月17~7月23日リーグ数: 11リーグ+α(サッカー,レスキュー,ホーム,ジュニアリーグ)参加国: 40カ国程度チーム数: 約400チーム程度

(予選を通過したチーム)

RoboCup Humanoid League

千葉工業大学の結果CIT Brainsサッカーヒューマノイドリーグ世界大会 キッドサイズ4on4サッカー 1位世界大会 キッドサイズテクニカルチャレンジ 1位世界大会 アダルトサイズテクニカルチャレンジ 2位

ヒューマノイドサッカーとは

RoboCupルールの概要

○ヒューマノイド (サイズを規定)○ほとんどのルールはサッカーと同じ○4対4で戦う○全て自動制御 (遠隔操作不可)ロボットに触れると1分退場○イエローカード,レッドカード有り○前半10分,後半10分○タイムは2回5分まで

ビデオ

視覚 行動決定

運動制御

歩行

シュート

ロボットに要求される主な機能

起き上がり

状況を判断↓

行動を決定(人工知能)

動作を生成

一つ一つが現在も研究中の分野

全ての機能を本体に内蔵し,安定して動作するロボットを構築する

視覚 (画像処理)

CCDカメラの映像から以下を検出する

1)ボール2)ゴール(ゴールポストを含む)3)ポール4)ロボット

これが安定して行えないと,試合ができない.

開発はこのプログラムを作ることからスタートした.

視覚 (画像処理)

例えば,ボールがどこにあるかを検出する方法

1)1ドット毎に何色かを分類2)横同士をつないで領域を求める(ラベリング)

3)重心位置・サイズを求める4)首が向いている方向を計算(運動学) ー ベクトル リンク5)地面に投影して位置を求める.

自己位置推定

オドメトリとランドマークの位置から自己位置推定を行う.

始めに全体を見渡し,ランドマークの位置を確認

パーティクルフィルタを用いた自己位置推定

オドメトリにより,位置を更新↓

ランドマークが視界に入ったときに,自己位置を修正

Fig.4 Estimating Process Using Particle Filter

記憶と予測

その他,ボールなどを安定して検出するために,以下も用いている.

1)記憶2)予測

これは,ボールの移動速度などから,一定時間後の位置を予測したり,一度見た位置を一定時間覚えていたりする機能である.

→ 人間の持つ機能を順次実装することで,格段に賢い動きをするようになった.

その他のセンサカメラ

加速度センサジャイロセンサ

【各モータ】角度センサ温度センサ

バッテリセンサ

ボール,ゴール,ロボットなどの位置検出

60個以上のセンサを使用 → これらの値から次の行動を決定

残量の検出

姿勢検出,転倒検出姿勢検出歩行の安定化に利用

関節の角度検出モータの劣化防止

情報の共有 (無線通信)

1台のロボットが見た情報を全てのロボットで共有する

ボールを見失うことが減少

また.役割やステータスを教え合うことで,2台のロボットがぶつかり合うことなくボールにアプローチできる.

→ チームプレイの達成マルチロボット制御

行動の選択 状態遷移図により記述Python プログラムにより実装

行動記述プログラムの例

def sample_2search(robot):

ball = robot.GetLocalPos(robot.HLOBJECT_BALL, robot.HLCOLOR_BALL)

if len(ball) == 0:

return

x, y, the = ball[0]

angle = math.degrees(math.atan2(y,x))

robot.PanDeg(angle)

例えば,首を回してボールをトラッキングするプログラムの主要部は以下のようになる

【ロボット座標】と【フィールド座標】の2種類を上手く使い分けることが重要である

制御回路

一般的なPC(PICO-ITX)に周辺回路を追加して制御以前は専用の制御回路を開発していたが,現在は市販の部品でもロボットが構成できる

制御回路

人工知能認識行動決定

運動制御

20個のコンピュータが協調分散制御

Servo motors x 18

RS485

Tra

nsc

eiv

er

CPURenesas

SH2A/7211

RS232CTransceiver

EEPROMAT24C1024

1MBit

SDRAM8MByte(16Bit)

Circuit for Walking Control

A/D Converter

Gyro Sensor x 2Sparkfun IMU5

Gyro SensorSilicon Sensing System

(Yaw Axis)

Circuit for Main Process(Ex. Image Recognition, Strategy,…)

RS485460.8kbps

CommandStatus Data

SCIF1SCIF2,3

1ch2ch

1000Mbps Ethernet

FutabaRS405CB

RS232C 115200bps

CPUCOMMELLLP170C

Atom D525OS: Windows

DRAM2GB

USB

USB-SerialConverter

USB Camera

Wirelss LANIEEE802.11

a/b/g

Shikino Hightech

Acceleration Sensor

ADXL330

Min

iP

CI

制御回路開発の様子

多種多様な半導体を用いて構成

ソフトウェア

ジャイロフィードバック

運動学

画像処理

身体制御(歩行制御)

自己位置推定

情報共有

障害物回避

軌道・行動生成

役割決定

転倒検知

スイッチ,LED

ユーザーインタフェース シリアル通信

状態選択

行動決定部

コマンドキュー

シリアル通信

リアルタイムモニタリング

コマンド生成

環境認識

無線通信電源電圧モータ温度監視

環境データベース

状態

状態

状態

身体制御部

統括制御部

Pyt

hon

C言語

mm

eye

-pp

cC言語

HC

5

・モジュール化・階層化・スクリプト言語

リアルタイム性

アプローチの方法ゴール

ボール

近い場合は,ゴールを向いたまま平行移動

アプローチの方法ゴール

ボール

遠い場合は,一度ボールに向かって正面を向いて移動して,最後に旋回

全方向に移動できる歩行

その他様々なアプローチを行うが,これらの移動には,

全方向になめらかに移動できる歩行

が必要である.これに関しては,初年度の世界大会前に実装した.

このためには,【逆運動学】をリアルタイムに解いて,足先を制御することが必要となる.

→ 現在の上位のチームは全て可能

短期記憶(過去の検出とオドメトリ)

ポテンシャル法による障害物回避方向のベクトル

実際の移動方向

視野視野

障害物回避 (ポテンシャル法)

試合を行うためには,プレーヤ同士が避けながら動くことが必要本ロボットでは,ポテンシャル法を用いた障害物回避を実現

ビデオ

蹴る,起き上がるボールに精度高く近づいた後,シュートを行う.記録された動きを再生する. (ティーチングプレイバック)動きは一つ一つ手作業で入力する.→ 新たにGA(遺伝アルゴリズム)を用いた動きの生成

起き上がりの動作なども同じ方式で行う.開始のトリガは,重力加速度の向き.

ロボットの仕様

Table 1 Specification of the Robot

Weight 3.9 kg (Including Batteries)

Height 590 mm

Velocity

(Forward)0.4 m/s (maximum)

Walking

Directions

All direction and rotation

(Select the angle, stride, period and so on)

CPU BoardAxiomtek PICO820 (Intel Atom Z530 1.6GHz)

Sub: Hajime Robot HC5 (Renesas SH-2A/7211)

OS Windows XP Professional

InterfaceEther x 1, USB x 4,

CF x 1, RS232C x 2, Sound In/Out , Digital I/O, etc

Servo Motor Futaba RS405CB x 18

Battery 3S (11.1V, 5000mAh )

実装した主な機能

リアルタイム画像処理

自己位置推定

記憶,予測

高速センサデータ処理

マルチロボット制御

Pythonのコマンドシステム

全方向に移動する歩行

アプローチ時の軌跡制御

障害物回避

安定したシステム

→ 個別には実現できている機能であるが,限られたサイズの中に入れ,安定して動かすことは非常に困難

学習,適応制御

世界大会決勝戦の様子

動画