SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
ROS 2 Client Library for E^2
⾼瀬 英希 (東京⼤学/JSTさきがけ)
武⽥ ⼤輝・今⻄ 洋偉・
祐源 英俊 (京都⼤学)
ROSCon JP 2021
2021/09/16
2
⾃⼰紹介
本務・兼務
­東京⼤学 情報理⼯学系研究科 准教授
­JSTさきがけ 兼任研究者
­⼀般社団法⼈ROSCon JP 理事
­TOPPERSプロジェクト 運営委員
学会活動
­IPSJ-SIGEMB 運営幹事
­IEICE-RECONF 専⾨委員
­SWEST ステアリング委員
­ROSCon JP 実⾏委員
コミュニティ活動
­ROS Japan Users Group
­IoT ALGYAN (あるじゃん) 運営委員
­NervesJP : Elixir for IoT
@takasehideki
箱 庭
Prologue: ROS 2 の階層構造
… …
3
rclcpp rclpy
node.cpp node.py
RCL (ROS Client Library)
RMW (ROS MiddleWare)
DDS B
DDS A
General Purpose OS
• 共通の基盤機能を提供
• C⾔語による実装
• 任意の⾔語から呼び出して
そのライブラリを開発可能
• DDS通信機能を抽象化すAPI層
• 複数のDDS実装から選択可能
rclrs
node.rs
DDS C
DDS (Data Distribution Service)
• OMG標準仕様として規定
• 出版購読型の通信機能を提供
• RTPSによる通信相⼿の⾃動探索
Client Library for,,,
Rclex
4
rclcpp rclpy
node.cpp node.py node.ex
RCL (ROS Client Library)
RMW (ROS MiddleWare)
DDS B
DDS A
General Purpose OS
rclrs
node.rs
DDS C
RTOS
RTPS
mROS 2
Library
mros2
node.cpp
ROS 2 Client Library for Elixir
6
Elixir とは︖
2012年に登場した新しめの関数型⾔語
Erlang VM上で動作
• ⾼い並⾏/並列性能を誇る
• 軽量かつ頑強なプロセスモデル
• 耐障害性が極めて⾼い
Rubyを基にした⾔語設計
• 習得しやすく⽣産性が向上する
• レスポンス性能が極めて⾼い
• Web/IoT/AIライブラリを備える
Programming should be
about transforming data
Elixir Zen Style
Ø データフローと並列処理を
Enum Flow |> で直感的に記述できる
※各⾔語・フレームワークのロゴの権利は
それぞれの作成者に帰属しています
• ナウでヤングなcoolなすごいやつ!!
­極⼩規模のファームウェア (~>30 MB)
­堅牢性の⾼いファイルシステム
­機能の取捨選別が容易 (Buildrootの利⽤)
• Elixirと完全に互換な⾔語機能
­アクターモデルで並⾏処理ができる
­IoT向けになにか気にする必要がない
­有⽤なライブラリとツールが揃っている
Ø⽇本初!?のNerves搭載製品
→ Pocket LANcher
Bootloader A
Linux kernel (Buildroot)
Master Boot Record
Root Filesystem A
(Read-only)
Application Data
(Read-Write)
C libraries
Erlang VM
Bootloader B
Root Filesystem B
(Read-only)
C libraries
Erlang VM
CQ出版Interface
2020年6⽉号〜
2021年1⽉号
8
ROS開発になぜ Elixir なのか︖
ロボットは
「組合せ型開発」
デバイス制御と
知的処理がキモ
ROSの本質は
通信にあり
壊れてなんぼ
でも壊れたら困る
node1
node2
node3
node4
Topic1
Topic2
node5
出版(Publish) 購読(Subscribe)
msg
msg
msg
msg
{:ok, ref} = I2C.open(@i2c_bus)
I2C.write(ref, @i2c_addr, <<0xBE, 0x08, 0x00>>)
I2C.write(ref, @i2c_addr, <<0xAC, 0x33, 0x00>>)
{:ok, val} = I2C.read(ref, @i2c_addr, 7)
<<_state::8, raw_humi::20,
raw_temp::20, _crc::8>> = val
ダッシュ
ボード
Link
Super
Visor
one_for_one
App
液晶
データ
ロガー
Link
センサ
監視
制御
Link
ボタン
ロボットプログラミングは「関数型」だ︕︕
sub.ex
sub.ex
sub.ex
sub.ex
sub.ex
github.com/rclex
pub.ex
pub.ex pub.ex
pub.ex
pub.ex
9
Rclex の強みと実現できること
ØElixirアプリからErlangプロセスを同時に⼤量⽣成させる
Ø出版購読の通信処理とコールバックを⾮同期に実⾏する
軽量プロセスの並⾏処理によって
ROS 2の通信スケーラビリティを向上させる
pub.ex sub.ex
topic
pub.ex
pub.ex
pub.ex
sub.ex
sub.ex
sub.ex
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
pub.ex sub.ex
topic
10
Rclex によるプログラミング例
github.com/rclex
ノード数
インデックス付きの
名前でノードを⽣成
トピックの作成
:single->1つのトピック
:multi-> 複数のトピック
callback関数と
タイマ周期の設定
ノードごとの
メッセージを
リストで⽤意
データ出版
パイプ演算⼦で
ノード設定の処理
Enumによる
データ加⼯
RCL
RMW
DDS
11
Rclex の内部実装
11
OS Process Space
rclcpp
node1
rclcpp
node2
Erlang VM
rclex
node1
rclex
node2
process
exec. queue
process pub1
process sub2
process pub2
...
NIFs
github.com/rclex
ErlangリソースオブジェクトとRCLの構造体を
相互に変換してRCL APIを呼び出す
• Erlang VMはOSプロセスとして駆動
• スケジューラでElixirプロセスを実⾏
= Rclexにおける pub/sub ノード
• プロセスが軽量
ü 起動時間︓数マイクロ秒
ü メモリ︓およそ300ワード
github.com/rclex
論よりRUN!! on RPi4/Foxy
!
"
pub.cpp x100
(by launch.py)
sub.cpp
(demo_nodes_cpp)
pub.ex x100
sub.cpp
(demo_nodes_cpp)
rclex/rcjp21_demo
agent-less and lightweight
runtime environment
for embedded devices
EMB
GPC
serial
server
14
昔話︓ROS 1の通信⽅式と組込み対応
master
node
node
process node
serial
xmlrpc
tcpros
tcpros
mbed
TOPPERS/ASP
mROS
※GPC: General Purpose Computer
EMB: Embedded micro-computer
!!"
SEDP endpoints
"!"
Participant A (!!)
User endpoints
!#$_& "#$_"
!!&
SEDP endpoints
"!&
Participant B (!")
User endpoints
!#$_" "#$_&
保持情報 Participant A(!!)
Writer ('"#_%)
Reader(("#_!)
to_B
to_A
Participant B(!%)
Writer ('"#_!)
Reader(("#_%)
msg
msg
SPDP endpoints
!)*+" !,*+" ",*+"
")*+"
SPDP endpoints
!)*+& !,*+& ",*+&
")*+&
Match
Match
#$_& #$_"
#$_" #$_&
"
&
15
そして時代は に!!
micro-ROS
GPC
agent
master
node
node
client node
dds-xrce
rtps
rtps
m
• RTPS︓DDSの通信プロトコル
­ SPDP/SEDP︓通信相⼿の探索と
通信経路の確⽴を⾃律的に⾏う
• micro-ROS︓ROS 2の組込み対応
­ POSIX準拠の複数のRTOSをサポート
­ Micro-XRCE-DDS を利⽤
ØRTPS通信の仲介に agent が必要
詳細は rosjp #43 アーカイブにて,,,
agent無⽤で
ROS 2通信︕
16
• mROS 2 API & comm. lib.
­rclcpp にサブ準拠のAPIを提供
­pub/sub通信機能を提供
• DDS/UDP: embeddedRTPS
­C++による組込み向けのRTPS軽量実装
­lwIP, Micro-CDR, FreeRTOS(?) を利⽤
­FastDDS 2.3.1との疎通確認済み
• RTOS: (ひとまず)TOPPERS/ASP3
­必要なCMSIS OS APIのラッパ層を整備
agent無⽤のROS 2軽量実⾏環境
Embedded devices
(STM32 MCU)
HAL drivers
(STM32Cube)
RTOS
(TOPPERS/ASP3)
mROS 2 comm. lib.
mROS 2 API
mROS 2 application
UDP stack (lwIP)
CMSIS OS API
DDS (embeddedRTPS)
mROS-base/mros2
17
Getting started!!
$ git clone --recursive ¥
https://github.com/mROS-base/mros2-asp3-f767zi
$ cd mros2-asp3-f767zi/workspace
$ make app=echoreply_string
mROS-base/mros2
18
予備的評価 on v0.1-rc
• 各モジュールの性能
­ GPC: Raspberry Pi 3B (1)
üCA53 1.2GHz x4, 1GB SDRAM
üUbuntu 18 & ROS 2 Dashing
­ EMB: STM32 NUCLEO-F767ZI
üCM7 216MHz, 512KB SRAM
a. micro-ROS with NuttX (2) (3)
b. mROS 2 with ASP3 (4)
• 評価対象: RTT (round trip time)
for echo back of Int32 msg
­ 1秒間隔で200回測定
• 評価環境・通信関係
RPi3 B
micro-ROS
RPi3 A
agent
host node
client node
agent
(1)
(3)
(2) (4)
m
mROS-base/mros2
予備的評価 on v0.1-rc
• 評価結果
• 評価環境・通信関係
(1) (2) (3) (4)
RTT
[usec]
0
500
1000
1500
2000
2500
3000
3500
(1) (2) (3) (4)
RTT
[usec]
0
500
1000
1500
2000
2500
3000
3500
(1) (2) (3) (4)
RTT
[usec]
0
500
1000
1500
2000
2500
3000
3500
(1) (2) (3) (4)
RTT
[usec]
0
500
1000
1500
2000
2500
3000
3500
RPi3 B
micro-ROS
RPi3 A
agent
host node
client node
agent
(1)
(3)
(2) (4)
m
mROS-base/mros2
20
Ubuntu20 on RPi4
pub /to_stm
Ubutu18 on laptop
sub /to_linux
mROS 2 on STM32
sub /to_stm &
pub /linux_stm
/to_stm
/to_linux
Epilogue: What's Next??
22
ROS 2 CL for E^2 すごくない!!?
よろしければ star をお願いします︕
https://github.com/rclex/rclex https://github.com/mROS-base/mros2
23
まだまだ志は半ば,,,
Service, Actionに対応したい
真⾯⽬に性能評価して論⽂を(ry
example / case study を増やしたい
Foxyにpubれない,,,
UDP multicastをサポートしたい
対応ボードとカーネルを増やしたい
ROSIDLをやっていかな,,,
より"関数型"らしくしたい
Do you OSS?
Give us your contributions!!
24
What's Next??
Buildroot
ERTS
Rclex
mROS 2 comm.
lib.
mROS 2 API
UDP stack (lwIP)
DDS (embeddedRTPS)
node.ex node.ex node.ex
NervesとROSを融合して
IoTコンピューティングの
新たな姿を創造︕

Más contenido relacionado

La actualidad más candente

FPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うにはFPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うにはHideki Takase
 
02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉
02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉
02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉Mori Ken
 
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜SSII
 
オープンソース SLAM の分類
オープンソース SLAM の分類オープンソース SLAM の分類
オープンソース SLAM の分類Yoshitaka HARA
 
第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会NVIDIA Japan
 
STMとROSをシリアル通信させて移動ロボットを作る
STMとROSをシリアル通信させて移動ロボットを作るSTMとROSをシリアル通信させて移動ロボットを作る
STMとROSをシリアル通信させて移動ロボットを作るmozyanari
 
Jetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてJetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてFixstars Corporation
 
機械学習モデルのサービングとは?
機械学習モデルのサービングとは?機械学習モデルのサービングとは?
機械学習モデルのサービングとは?Sho Tanaka
 
ROSによる今後のロボティクスのあり方
ROSによる今後のロボティクスのあり方ROSによる今後のロボティクスのあり方
ROSによる今後のロボティクスのあり方Mori Ken
 
ビジネスパーソンのためのDX入門講座エッセンス版
ビジネスパーソンのためのDX入門講座エッセンス版ビジネスパーソンのためのDX入門講座エッセンス版
ビジネスパーソンのためのDX入門講座エッセンス版Tokoroten Nakayama
 
関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミング関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミングHideki Takase
 
06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ
06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ
06 第5.1節-第5.7節 ROS2に対応したツール/パッケージMori Ken
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)Shota Imai
 
ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発Yuji Yamauchi
 
RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集akipii Oga
 
Singularityで分散深層学習
Singularityで分散深層学習Singularityで分散深層学習
Singularityで分散深層学習Hitoshi Sato
 
Halide による画像処理プログラミング入門
Halide による画像処理プログラミング入門Halide による画像処理プログラミング入門
Halide による画像処理プログラミング入門Fixstars Corporation
 
つくばチャレンジ2019技術調査報告
つくばチャレンジ2019技術調査報告つくばチャレンジ2019技術調査報告
つくばチャレンジ2019技術調査報告Yoshitaka HARA
 
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜Hideki Takase
 

La actualidad más candente (20)

FPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うにはFPGAをロボット(ROS)で「やわらかく」使うには
FPGAをロボット(ROS)で「やわらかく」使うには
 
02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉
02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉
02 第3.1節-第3.5節 ROS2の基本機能(1/2) ROS2勉強合宿 @別府温泉
 
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
SSII2022 [TS2] 自律移動ロボットのためのロボットビジョン〜 オープンソースの自動運転ソフトAutowareを解説 〜
 
オープンソース SLAM の分類
オープンソース SLAM の分類オープンソース SLAM の分類
オープンソース SLAM の分類
 
第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会第 1 回 Jetson ユーザー勉強会
第 1 回 Jetson ユーザー勉強会
 
STMとROSをシリアル通信させて移動ロボットを作る
STMとROSをシリアル通信させて移動ロボットを作るSTMとROSをシリアル通信させて移動ロボットを作る
STMとROSをシリアル通信させて移動ロボットを作る
 
Jetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けてJetson活用セミナー ROS2自律走行実現に向けて
Jetson活用セミナー ROS2自律走行実現に向けて
 
機械学習モデルのサービングとは?
機械学習モデルのサービングとは?機械学習モデルのサービングとは?
機械学習モデルのサービングとは?
 
ROSによる今後のロボティクスのあり方
ROSによる今後のロボティクスのあり方ROSによる今後のロボティクスのあり方
ROSによる今後のロボティクスのあり方
 
ビジネスパーソンのためのDX入門講座エッセンス版
ビジネスパーソンのためのDX入門講座エッセンス版ビジネスパーソンのためのDX入門講座エッセンス版
ビジネスパーソンのためのDX入門講座エッセンス版
 
関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミング関数型っぽくROSロボットプログラミング
関数型っぽくROSロボットプログラミング
 
06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ
06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ
06 第5.1節-第5.7節 ROS2に対応したツール/パッケージ
 
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
 
MLOpsはバズワード
MLOpsはバズワードMLOpsはバズワード
MLOpsはバズワード
 
ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発ROSによるロボットソフトウェアの開発
ROSによるロボットソフトウェアの開発
 
RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集RedmineのFAQとアンチパターン集
RedmineのFAQとアンチパターン集
 
Singularityで分散深層学習
Singularityで分散深層学習Singularityで分散深層学習
Singularityで分散深層学習
 
Halide による画像処理プログラミング入門
Halide による画像処理プログラミング入門Halide による画像処理プログラミング入門
Halide による画像処理プログラミング入門
 
つくばチャレンジ2019技術調査報告
つくばチャレンジ2019技術調査報告つくばチャレンジ2019技術調査報告
つくばチャレンジ2019技術調査報告
 
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
つながるロボット 〜分散協調ロボットの開発を加速化するROSの紹介〜
 

Similar a ROS 2 Client Library for E^2

Rclex: ElixirでROS!!
Rclex: ElixirでROS!!Rclex: ElixirでROS!!
Rclex: ElixirでROS!!Hideki Takase
 
ROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+αROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+αHideki Takase
 
160705-03 RTミドルウエア講習会・名城大
160705-03 RTミドルウエア講習会・名城大160705-03 RTミドルウエア講習会・名城大
160705-03 RTミドルウエア講習会・名城大openrtm
 
短絡的に作るRuby DSL 公開版
短絡的に作るRuby DSL 公開版短絡的に作るRuby DSL 公開版
短絡的に作るRuby DSL 公開版bash0C7
 
20150209 甲府-web新世紀2
20150209 甲府-web新世紀220150209 甲府-web新世紀2
20150209 甲府-web新世紀2Taisuke Fukuno
 
RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会
RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会
RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会Noriaki Ando
 
オープンデータセミナー in 鳥取
オープンデータセミナー in 鳥取オープンデータセミナー in 鳥取
オープンデータセミナー in 鳥取Taisuke Fukuno
 
2015 summercamp 08
2015 summercamp 082015 summercamp 08
2015 summercamp 08openrtm
 
TurtleBot3でROSを始めよう
TurtleBot3でROSを始めようTurtleBot3でROSを始めよう
TurtleBot3でROSを始めようROBOTIS Japan
 
ROBOMECH2017 RTM講習会 第1部・その1
ROBOMECH2017 RTM講習会 第1部・その1ROBOMECH2017 RTM講習会 第1部・その1
ROBOMECH2017 RTM講習会 第1部・その1openrtm
 
20170911 API Meetup Tokyo #21
20170911 API Meetup Tokyo #2120170911 API Meetup Tokyo #21
20170911 API Meetup Tokyo #21kounan13
 
ORTCの仕様書をざっくり斜め読みする
ORTCの仕様書をざっくり斜め読みするORTCの仕様書をざっくり斜め読みする
ORTCの仕様書をざっくり斜め読みするYusuke Naka
 
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組みopenrtm
 
Exgettextの話
Exgettextの話Exgettextの話
Exgettextの話k1complete
 
safety and security using Raspberry PI
safety and security using Raspberry PIsafety and security using Raspberry PI
safety and security using Raspberry PIKiyoshi Ogawa
 
Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境openrtm
 

Similar a ROS 2 Client Library for E^2 (20)

Rclex: ElixirでROS!!
Rclex: ElixirでROS!!Rclex: ElixirでROS!!
Rclex: ElixirでROS!!
 
ROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+αROSCon2019 参加報告:オーバビュー+α
ROSCon2019 参加報告:オーバビュー+α
 
160705-03 RTミドルウエア講習会・名城大
160705-03 RTミドルウエア講習会・名城大160705-03 RTミドルウエア講習会・名城大
160705-03 RTミドルウエア講習会・名城大
 
V6 unix in okinawa
V6 unix in okinawaV6 unix in okinawa
V6 unix in okinawa
 
短絡的に作るRuby DSL 公開版
短絡的に作るRuby DSL 公開版短絡的に作るRuby DSL 公開版
短絡的に作るRuby DSL 公開版
 
20150209 甲府-web新世紀2
20150209 甲府-web新世紀220150209 甲府-web新世紀2
20150209 甲府-web新世紀2
 
Tokyo r50 beginner_2
Tokyo r50 beginner_2Tokyo r50 beginner_2
Tokyo r50 beginner_2
 
RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会
RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会
RTミドルウェア強化月間2017 in 東京都立産業技術研究センター・RTミドルウェア講習会
 
オープンデータセミナー in 鳥取
オープンデータセミナー in 鳥取オープンデータセミナー in 鳥取
オープンデータセミナー in 鳥取
 
2015 summercamp 08
2015 summercamp 082015 summercamp 08
2015 summercamp 08
 
TurtleBot3でROSを始めよう
TurtleBot3でROSを始めようTurtleBot3でROSを始めよう
TurtleBot3でROSを始めよう
 
FOSS4G 2012 Osaka
FOSS4G 2012 OsakaFOSS4G 2012 Osaka
FOSS4G 2012 Osaka
 
MapReduce/YARNの仕組みを知る
MapReduce/YARNの仕組みを知るMapReduce/YARNの仕組みを知る
MapReduce/YARNの仕組みを知る
 
ROBOMECH2017 RTM講習会 第1部・その1
ROBOMECH2017 RTM講習会 第1部・その1ROBOMECH2017 RTM講習会 第1部・その1
ROBOMECH2017 RTM講習会 第1部・その1
 
20170911 API Meetup Tokyo #21
20170911 API Meetup Tokyo #2120170911 API Meetup Tokyo #21
20170911 API Meetup Tokyo #21
 
ORTCの仕様書をざっくり斜め読みする
ORTCの仕様書をざっくり斜め読みするORTCの仕様書をざっくり斜め読みする
ORTCの仕様書をざっくり斜め読みする
 
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
 
Exgettextの話
Exgettextの話Exgettextの話
Exgettextの話
 
safety and security using Raspberry PI
safety and security using Raspberry PIsafety and security using Raspberry PI
safety and security using Raspberry PI
 
Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境Rtm・ros相互運用プログラミング環境
Rtm・ros相互運用プログラミング環境
 

Más de Hideki Takase

Rclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirRclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirHideki Takase
 
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓くHideki Takase
 
Elixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/NervesはナウでヤングなcoolなすごいやつElixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/NervesはナウでヤングなcoolなすごいやつHideki Takase
 
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワークElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワークHideki Takase
 
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!Hideki Takase
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計するHideki Takase
 
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けてZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けてHideki Takase
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirHideki Takase
 
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~Hideki Takase
 
TOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYANTOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYANHideki Takase
 
ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?Hideki Takase
 
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Hideki Takase
 
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~Hideki Takase
 
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォームZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォームHideki Takase
 
mROSをクラウド/仮想環境に連携させてみる
mROSをクラウド/仮想環境に連携させてみるmROSをクラウド/仮想環境に連携させてみる
mROSをクラウド/仮想環境に連携させてみるHideki Takase
 
Elixirでハードウェアが作れちゃう,かも!!? データフロー型ハードウェア設計環境Cockatriceのご紹介
Elixirでハードウェアが作れちゃう,かも!!?データフロー型ハードウェア設計環境Cockatriceのご紹介Elixirでハードウェアが作れちゃう,かも!!?データフロー型ハードウェア設計環境Cockatriceのご紹介
Elixirでハードウェアが作れちゃう,かも!!? データフロー型ハードウェア設計環境Cockatriceのご紹介Hideki Takase
 
Design Concept of a Lightweight Runtime Environment for Robot Software Compo...
Design Concept of a LightweightRuntime Environment for Robot SoftwareCompo...Design Concept of a LightweightRuntime Environment for Robot SoftwareCompo...
Design Concept of a Lightweight Runtime Environment for Robot Software Compo...Hideki Takase
 
mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境Hideki Takase
 
TOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 Kyoto
TOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 KyotoTOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 Kyoto
TOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 KyotoHideki Takase
 
BeerLoverTank!! (を作りたかったorz
BeerLoverTank!! (を作りたかったorzBeerLoverTank!! (を作りたかったorz
BeerLoverTank!! (を作りたかったorzHideki Takase
 

Más de Hideki Takase (20)

Rclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet ElixirRclex: A Library for Robotics meet Elixir
Rclex: A Library for Robotics meet Elixir
 
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
高い並列性能と耐障害性を持つElixirとNervesでIoTの新しいカタチを切り拓く
 
Elixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/NervesはナウでヤングなcoolなすごいやつElixir/Nervesはナウでヤングなcoolなすごいやつ
Elixir/Nervesはナウでヤングなcoolなすごいやつ
 
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワークElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
ElixirでIoT!?ナウでヤングでcoolなNervesフレームワーク
 
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
Nerves!? Elixir!?? 関数型言語でれっつIoT開発!!
 
ElixirでFPGAを設計する
ElixirでFPGAを設計するElixirでFPGAを設計する
ElixirでFPGAを設計する
 
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けてZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
ZytleBot: ROSベースの自律移動ロボットへのFPGAの統合に向けて
 
Cockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with ElixirCockatrice: A Hardware Design Environment with Elixir
Cockatrice: A Hardware Design Environment with Elixir
 
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
IoTアプリ/ロボット開発をリアルタイムOSでレベルアップしませんか? ~高品質な組込み向けオープンソースを開発するTOPPERSプロジェクトのご紹介~
 
TOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYANTOPPERSプロジェクトのご紹介@IoT ALGYAN
TOPPERSプロジェクトのご紹介@IoT ALGYAN
 
ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?ElixirでFPGAハードウェアが作れちゃう,かも!!?
ElixirでFPGAハードウェアが作れちゃう,かも!!?
 
Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界Nervesが開拓する「ElixirでIoT」の新世界
Nervesが開拓する「ElixirでIoT」の新世界
 
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
オースティンから見えてきた「ElixirでIoT」の世界  ~「Nerves」が拓くElixirでのデバイスコントロールを総レビュー~
 
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォームZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
ZytleBot:ROS対応自動走行ロボットへのFPGA活用を加速化する統合開発プラットフォーム
 
mROSをクラウド/仮想環境に連携させてみる
mROSをクラウド/仮想環境に連携させてみるmROSをクラウド/仮想環境に連携させてみる
mROSをクラウド/仮想環境に連携させてみる
 
Elixirでハードウェアが作れちゃう,かも!!? データフロー型ハードウェア設計環境Cockatriceのご紹介
Elixirでハードウェアが作れちゃう,かも!!?データフロー型ハードウェア設計環境Cockatriceのご紹介Elixirでハードウェアが作れちゃう,かも!!?データフロー型ハードウェア設計環境Cockatriceのご紹介
Elixirでハードウェアが作れちゃう,かも!!? データフロー型ハードウェア設計環境Cockatriceのご紹介
 
Design Concept of a Lightweight Runtime Environment for Robot Software Compo...
Design Concept of a LightweightRuntime Environment for Robot SoftwareCompo...Design Concept of a LightweightRuntime Environment for Robot SoftwareCompo...
Design Concept of a Lightweight Runtime Environment for Robot Software Compo...
 
mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境
 
TOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 Kyoto
TOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 KyotoTOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 Kyoto
TOPPERSプロジェクトの紹介&GR-PEACH on TOPPERS高速デモ@OSC2018 Kyoto
 
BeerLoverTank!! (を作りたかったorz
BeerLoverTank!! (を作りたかったorzBeerLoverTank!! (を作りたかったorz
BeerLoverTank!! (を作りたかったorz
 

ROS 2 Client Library for E^2