SlideShare a Scribd company logo
1 of 24
Download to read offline
2018年度オフシーズンにやったこと
一関高専機械技術部Aチーム制御班
電気情報工学科第5学年
佐藤 凌雅
はじめに
2
目次
3
1. ROS勉強
2. 3輪オムニ
3. 足軽
4. 投擲精度計測システム ←本命
5. まとめ
ROS勉強
環境構築
• Ubuntu16.04
• ROS Kinetic
• ネットに上がってるインストール用のスクリプトを使用
→ https://github.com/ROBOTIS-GIT/robotis_tools
• 初期設定をいい感じにやってくれるのでラク
5
やったこと
• 金工大の授業資料をベースに勉強
→ http://demura.net/lecture/15226.html
• 公式チュートリアルもやった
• チュートリアルで良く分からなかったところは
「ROSロボットプログラミングバイブル」で補完
• あとはサンプルパッケージを改造して理解を深めた
6
3輪オムニ
やりたかったこと
• 3輪オムニの制御
• 駆動輪でオドメトリ
• LRFで測距
• 内界・外界センサ両方を使って自己位置推定
8
ハードウェア
9
オムニホイール
LRF
回路類
結局できたこと
• 3輪オムニの制御
→ 動いた(StdCtrlLibのコード使っただけ)
• 駆動輪でオドメトリ
→ 順運動学を導出して,その通り実装したらいけた
• LRFで測距
→ ROSで出来た
• 内界・外界センサ両方を使って自己位置推定
→ 無理でした(時間切れ)
10
3輪オドメータの運動学
11
3輪オムニの逆運動学の行列の逆行列を求めた
!"
!#
$
=
%
&
−1 −1 2
3 − 3 0
%
,
%
,
%
,
!-.
!-%
!-/
V_x
V_y
V_w1
V_w0
V_w2
ω
LRFで測距
12
スキャンマッチング
13
オドメトリフリーでSLAM
• 「hector_slam」という
packageに/scanデータを投げ
ただけ
• オドメトリの情報なしでも
SLAMしてくれる
• 右は実際に生成された僕の部屋
の地図
14
足軽
足軽
• 回路は2018のロボコンのを流用
• スティックの値を差動二輪の逆運
動学に突っ込んでプログラム完成
• 最速賞だったらしい
→ おめでとう
16
投擲精度計測システム
まずは動画をどうぞ
18
何をするもの?
• LRFの走査面を地面に鉛直に置き,面内を通過した物体の位置を
測定
• 通過座標を基に成分ごとの平均値と偏差値を算出して左上に表示
• 求めた分散に応じて楕円を表示
• 測定空間はLRFの走査範囲なら任意に設定可能
• 通過日時も自動で記録 19
UI(1)
20
各種計算結果
スキャンした
点群
測定面
UI(2)
21
測定面
通過点
分散円
• 灰色:測定面
→ 測定する領域を可視化
• 緑色:通過点
→ 物体が通過した位置にプロット
• 黄色:分散円
→ 中心が平均,軸が6σの楕円
課題と今後の展望
• 稀に測定の取りこぼしが発生する
→ スキャン周波数が8Hzしか出てないのでもう少し上げたい
• 測定した点群をファイル出力
• 筐体をしっかり作って実際に運用してみる
• そもそも,今年の競技が投擲系でないと使わない
→ とりあえずルール発表まで開発は中断
まとめ
まとめ
• やりたいことは大方出来た
→ オムニロボットは妥協してしまった
• ROSについて基礎的な使いかたを理解できた
→ ロボコンで実装するくらいの技術は身についた
• 自己位置推定やスキャンマッチングのアルゴリズムはノータッチ
→ 余裕ができたら理論も勉強する

More Related Content

What's hot

国際標準化におけるAR/MR用語の使われ方
国際標準化におけるAR/MR用語の使われ方国際標準化におけるAR/MR用語の使われ方
国際標準化におけるAR/MR用語の使われ方Kurata Takeshi
 
01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉
01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉
01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉Mori Ken
 
03 第3.6節-第3.8節 ROS2の基本機能(2/2)
03 第3.6節-第3.8節 ROS2の基本機能(2/2)03 第3.6節-第3.8節 ROS2の基本機能(2/2)
03 第3.6節-第3.8節 ROS2の基本機能(2/2)Mori Ken
 
機械学習システムを受託開発 する時に気をつけておきたい事
機械学習システムを受託開発 する時に気をつけておきたい事機械学習システムを受託開発 する時に気をつけておきたい事
機械学習システムを受託開発 する時に気をつけておきたい事BrainPad Inc.
 
SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~
SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~
SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~SSII
 
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Preferred Networks
 
オープンソース SLAM の分類
オープンソース SLAM の分類オープンソース SLAM の分類
オープンソース SLAM の分類Yoshitaka HARA
 
リンク機構を有するロボットをGazeboで動かす
リンク機構を有するロボットをGazeboで動かすリンク機構を有するロボットをGazeboで動かす
リンク機構を有するロボットをGazeboで動かすtomohiro kuwano
 
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
ROS2勉強会@別府 第7章PythonクライアントライブラリrclpyROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
ROS2勉強会@別府 第7章PythonクライアントライブラリrclpyAtsuki Yokota
 
ROSを用いた歩行ロボットの脚の開発
ROSを用いた歩行ロボットの脚の開発ROSを用いた歩行ロボットの脚の開発
ROSを用いた歩行ロボットの脚の開発ShomaUehara
 
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスターUnity Technologies Japan K.K.
 
ROS を用いた自律移動ロボットのシステム構築
ROS を用いた自律移動ロボットのシステム構築ROS を用いた自律移動ロボットのシステム構築
ROS を用いた自律移動ロボットのシステム構築Yoshitaka HARA
 
Statistical Semantic入門 ~分布仮説からword2vecまで~
Statistical Semantic入門 ~分布仮説からword2vecまで~Statistical Semantic入門 ~分布仮説からword2vecまで~
Statistical Semantic入門 ~分布仮説からword2vecまで~Yuya Unno
 
MediaPipeの紹介
MediaPipeの紹介MediaPipeの紹介
MediaPipeの紹介emakryo
 
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...Deep Learning JP
 
【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use Tools
【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use Tools【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use Tools
【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use ToolsDeep Learning JP
 
ROS2勉強会 4章前半
ROS2勉強会 4章前半ROS2勉強会 4章前半
ROS2勉強会 4章前半tomohiro kuwano
 
One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知Yuto Mori
 
(文献紹介)Depth Completionの最新動向
(文献紹介)Depth Completionの最新動向(文献紹介)Depth Completionの最新動向
(文献紹介)Depth Completionの最新動向Morpho, Inc.
 

What's hot (20)

国際標準化におけるAR/MR用語の使われ方
国際標準化におけるAR/MR用語の使われ方国際標準化におけるAR/MR用語の使われ方
国際標準化におけるAR/MR用語の使われ方
 
01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉
01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉
01 ROS2 実用化に関するサーベイ ROS2勉強合宿 @別府温泉
 
03 第3.6節-第3.8節 ROS2の基本機能(2/2)
03 第3.6節-第3.8節 ROS2の基本機能(2/2)03 第3.6節-第3.8節 ROS2の基本機能(2/2)
03 第3.6節-第3.8節 ROS2の基本機能(2/2)
 
機械学習システムを受託開発 する時に気をつけておきたい事
機械学習システムを受託開発 する時に気をつけておきたい事機械学習システムを受託開発 する時に気をつけておきたい事
機械学習システムを受託開発 する時に気をつけておきたい事
 
SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~
SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~
SSII2019TS: プロジェクタ・カメラシステムが変わる! ~時間同期の制御で広がる応用~
 
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
Deep Learningのための専用プロセッサ「MN-Core」の開発と活用(2022/10/19東大大学院「 融合情報学特別講義Ⅲ」)
 
オープンソース SLAM の分類
オープンソース SLAM の分類オープンソース SLAM の分類
オープンソース SLAM の分類
 
リンク機構を有するロボットをGazeboで動かす
リンク機構を有するロボットをGazeboで動かすリンク機構を有するロボットをGazeboで動かす
リンク機構を有するロボットをGazeboで動かす
 
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
ROS2勉強会@別府 第7章PythonクライアントライブラリrclpyROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
ROS2勉強会@別府 第7章Pythonクライアントライブラリrclpy
 
ROSを用いた歩行ロボットの脚の開発
ROSを用いた歩行ロボットの脚の開発ROSを用いた歩行ロボットの脚の開発
ROSを用いた歩行ロボットの脚の開発
 
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
【Unity道場スペシャル 2017大阪】クォータニオン完全マスター
 
ROS を用いた自律移動ロボットのシステム構築
ROS を用いた自律移動ロボットのシステム構築ROS を用いた自律移動ロボットのシステム構築
ROS を用いた自律移動ロボットのシステム構築
 
Statistical Semantic入門 ~分布仮説からword2vecまで~
Statistical Semantic入門 ~分布仮説からword2vecまで~Statistical Semantic入門 ~分布仮説からword2vecまで~
Statistical Semantic入門 ~分布仮説からword2vecまで~
 
MediaPipeの紹介
MediaPipeの紹介MediaPipeの紹介
MediaPipeの紹介
 
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
【DL輪読会】Visual ChatGPT: Talking, Drawing and Editing with Visual Foundation Mo...
 
【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use Tools
【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use Tools【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use Tools
【DL輪読会】Toolformer: Language Models Can Teach Themselves to Use Tools
 
MR1を支えたEthernet&Rosシステム
MR1を支えたEthernet&RosシステムMR1を支えたEthernet&Rosシステム
MR1を支えたEthernet&Rosシステム
 
ROS2勉強会 4章前半
ROS2勉強会 4章前半ROS2勉強会 4章前半
ROS2勉強会 4章前半
 
One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知One Class SVMを用いた異常値検知
One Class SVMを用いた異常値検知
 
(文献紹介)Depth Completionの最新動向
(文献紹介)Depth Completionの最新動向(文献紹介)Depth Completionの最新動向
(文献紹介)Depth Completionの最新動向
 

Similar to 2018年度オフシーズンにやったこと

Github Actionsで始めるROS/ROS2のCI
Github Actionsで始めるROS/ROS2のCIGithub Actionsで始めるROS/ROS2のCI
Github Actionsで始めるROS/ROS2のCIAtsuki Yokota
 
名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備ssuser6b6663
 
#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身Hisateru Tanaka
 
[2023-11-01] GitHub Copilot 使ってみた.pptx
[2023-11-01] GitHub Copilot 使ってみた.pptx[2023-11-01] GitHub Copilot 使ってみた.pptx
[2023-11-01] GitHub Copilot 使ってみた.pptxmananakamura2
 
OSSで楽に作るGo言語クライアントツール
OSSで楽に作るGo言語クライアントツールOSSで楽に作るGo言語クライアントツール
OSSで楽に作るGo言語クライアントツールTano Makoto
 
myCobotがある生活
myCobotがある生活myCobotがある生活
myCobotがある生活Ryo Kabutan
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識Katsuhiro Morishita
 
Atnd地域検索作ったよー
Atnd地域検索作ったよーAtnd地域検索作ったよー
Atnd地域検索作ったよーOhishi Mikage
 
C言語講習会資料(前半)
C言語講習会資料(前半)C言語講習会資料(前半)
C言語講習会資料(前半)Yuki Sako
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Reportgree_tech
 
鳥取python勉強会 第2回
鳥取python勉強会 第2回鳥取python勉強会 第2回
鳥取python勉強会 第2回Yuji Oyamada
 
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解するTakuya Nishimoto
 
チケット管理システム大決戦第二弾
チケット管理システム大決戦第二弾チケット管理システム大決戦第二弾
チケット管理システム大決戦第二弾Ryutaro YOSHIBA
 
勉強会 Cvml python基礎
勉強会 Cvml python基礎勉強会 Cvml python基礎
勉強会 Cvml python基礎真哉 杉野
 
Windowsにpythonをインストールしてみよう
WindowsにpythonをインストールしてみようWindowsにpythonをインストールしてみよう
WindowsにpythonをインストールしてみようKenji NAKAGAKI
 
Pythonでジョブキューシステムを作った
Pythonでジョブキューシステムを作ったPythonでジョブキューシステムを作った
Pythonでジョブキューシステムを作ったRyota Suenaga
 
Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2潤司 渡部
 
Japan Robot Week 2016 RTM講習会 第3部
Japan Robot Week 2016 RTM講習会 第3部Japan Robot Week 2016 RTM講習会 第3部
Japan Robot Week 2016 RTM講習会 第3部openrtm
 
Rubyでオリジナルプログラムをつくろう
RubyでオリジナルプログラムをつくろうRubyでオリジナルプログラムをつくろう
RubyでオリジナルプログラムをつくろうK K
 

Similar to 2018年度オフシーズンにやったこと (20)

Github Actionsで始めるROS/ROS2のCI
Github Actionsで始めるROS/ROS2のCIGithub Actionsで始めるROS/ROS2のCI
Github Actionsで始めるROS/ROS2のCI
 
名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備
 
#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身#phpmatsuri LT大会システムの中身
#phpmatsuri LT大会システムの中身
 
[2023-11-01] GitHub Copilot 使ってみた.pptx
[2023-11-01] GitHub Copilot 使ってみた.pptx[2023-11-01] GitHub Copilot 使ってみた.pptx
[2023-11-01] GitHub Copilot 使ってみた.pptx
 
OSSで楽に作るGo言語クライアントツール
OSSで楽に作るGo言語クライアントツールOSSで楽に作るGo言語クライアントツール
OSSで楽に作るGo言語クライアントツール
 
myCobotがある生活
myCobotがある生活myCobotがある生活
myCobotがある生活
 
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
 
Atnd地域検索作ったよー
Atnd地域検索作ったよーAtnd地域検索作ったよー
Atnd地域検索作ったよー
 
C言語講習会資料(前半)
C言語講習会資料(前半)C言語講習会資料(前半)
C言語講習会資料(前半)
 
Python & PyConJP 2014 Report
Python & PyConJP 2014 ReportPython & PyConJP 2014 Report
Python & PyConJP 2014 Report
 
鳥取python勉強会 第2回
鳥取python勉強会 第2回鳥取python勉強会 第2回
鳥取python勉強会 第2回
 
211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する211120 他人の書いたPythonスクリプトをステップ実行で理解する
211120 他人の書いたPythonスクリプトをステップ実行で理解する
 
チケット管理システム大決戦第二弾
チケット管理システム大決戦第二弾チケット管理システム大決戦第二弾
チケット管理システム大決戦第二弾
 
勉強会 Cvml python基礎
勉強会 Cvml python基礎勉強会 Cvml python基礎
勉強会 Cvml python基礎
 
Windowsにpythonをインストールしてみよう
WindowsにpythonをインストールしてみようWindowsにpythonをインストールしてみよう
Windowsにpythonをインストールしてみよう
 
Hachiojipm31
Hachiojipm31Hachiojipm31
Hachiojipm31
 
Pythonでジョブキューシステムを作った
Pythonでジョブキューシステムを作ったPythonでジョブキューシステムを作った
Pythonでジョブキューシステムを作った
 
Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2
 
Japan Robot Week 2016 RTM講習会 第3部
Japan Robot Week 2016 RTM講習会 第3部Japan Robot Week 2016 RTM講習会 第3部
Japan Robot Week 2016 RTM講習会 第3部
 
Rubyでオリジナルプログラムをつくろう
RubyでオリジナルプログラムをつくろうRubyでオリジナルプログラムをつくろう
Rubyでオリジナルプログラムをつくろう
 

2018年度オフシーズンにやったこと