SlideShare a Scribd company logo
1 of 18
ロボットシステム学
第13回
上田隆一
本日の内容
• デバイスドライバ
– 例
• 延々と寿司のアイコンを吐き続ける「寿司デバイス」
• https://github.com/ryuichiueda/SushiDevice
• UbuntuとRaspbian OSで動作確認済み
• インストール方法、コードの中身
• udevについて
2016年1月14日 ロボットシステム学 2
参考
• 米田聡, RaspberryPiで学ぶ ARMデバイスドライバープログラ
ミング, ソシム, 2014.
• J. Corbet et al., Linuxデバイスドライバ第3版, O'reilly, 2005.
• 動的メジャー番号割り当てとデバイスファイルの自動生成 |
迷える子羊の苦悩
– http://44781184.at.webry.info/201306/article_10.html
2016年1月14日 ロボットシステム学 3
デバイスドライバ
• 機器とユーザをつなぐもの
• カーネルの一部として動作
– 「カーネルモジュール」という、カーネルに動的に
組み込めるものとしてビルド
• インタフェースはデバイスファイル
– $ ls -l /dev/
• 「メジャー番号」「マイナー番号」を持つ
2016年1月14日 ロボットシステム学 4
使ってみましょう
• insmod: カーネルモジュールを組み込むコマンド
• rmmod: カーネルモジュールを削除するコマンド
2016年1月14日 ロボットシステム学 5
$ git clone https://github.com/ryuichiueda/SushiDevice.git
$ cd SushiDevice/
$ make
$ sudo insmod sushi.ko
$ sudo chmod 666 /dev/sushi0
###使ってみる###
$ cat /dev/sushi0 | head -n 3
🍣 🍺
🍣
🍣
###削除###
$ sudo rmmod sushi
デバイスドライバの役割
• ユーザにハードを使わせる
– ユーザランドのプログラムでも可能だが、
いちいちroot権限で動かさないといけない
• 例: 第7回のプログラム
• デバイスファイルのパーミッションでアクセス制御
• 機械の操作をファイル入出力に置き換え
– 何度も講義で言っている「抽象化」
2016年1月14日 ロボットシステム学 6
デバイスドライバを作る際の注意点
• libcなどの普通の関数が使えない
– printfやmalloc、randあたりが全く使えない
– カーネル用のものを使う
• バグを埋め込むと最悪の場合、再起動
– カーネル空間で動くのでカーネルパニックが起こる
2016年1月14日 ロボットシステム学 7
作り方
• デバイスの登録、読み書き、削除に
対応した処理を書く
– insmod時: module_initマクロに登録した関数が
実行されるので関数の中身を実装
– rmmod時: module_exitマクロに登録した関数が
実行されるので関数の中身を実装
– 読み書き等:
• それぞれに対応する関数を書いて
file_operationsという構造体に登録
2016年1月14日 ロボットシステム学 8
module_init
• module_initマクロ
– insmodされた時の処理を書いた関数を渡す
(メジャー番号取得とデバイスファイルを自動で行う場合の例)
– module_initに渡す関数で行うこと(コード)
• メジャー番号の取得(自動取得の場合)
• カーネルにドライバの情報の構造体をぶら下げる
• /sys/class/sushi、/dev/sushi0等インタフェースを作ってもらう
– 注意: デバイスファイルを手動で作らなければならない
デバイスドライバも存在
• 手動で作る例: $ sudo mknod /dev/sushi メジャー番号 マイナー番号
2016年1月14日 ロボットシステム学 9
rmmod / module_exit
• デバイスドライバをカーネルから外す
– ユーザから見ると、/sys/class/と/dev/から
– 関係するファイル、ディレクトリが消える
– module_exitマクロに処理を書いた関数を渡す
2016年1月14日 ロボットシステム学 10
デバイスファイルを通じた読み書き
• ユーザ空間とカーネル空間でデータを授受
– file_operations構造体の
• readがユーザから見た読み込み
– copy_to_userでユーザ空間に文字列を転送
• writeがユーザから見た書き込み
– copy_from_userでユーザ空間から文字列を受け取り
2016年1月14日 ロボットシステム学 11
copy_to_user
• static inline unsigned long __must_check
copy_to_user(void __user *to, const void *from,
unsigned long n)
– (/usr/src/<ヘッダのディレクトリ>/arch/x86/include/asm/uaccess.h)
• to: ユーザ空間のバッファのポインタ
• from: カーネル空間に自分で用意するバッファのポインタ
• n: 転送するバイト数
• 返り値: コピーできなかったバイト数
• 実際の使い方はコードで
2016年1月14日 ロボットシステム学 12
copy_from_user
• static inline unsigned long __must_check
copy_from_user(void *to, const void __user *from,
unsigned long n)
– (/usr/src/<ヘッダのディレクトリ
>/arch/x86/include/asm/uaccess.h)
– to, from, n: copy_to_userと一緒
– 返り値: コピーできなかったバイト数
2016年1月14日 ロボットシステム学 13
udev
• デバイス管理ツール
• 動的な処理
• デーモンとして動作
• udev以前
– メジャー番号等が動的に得られない
– ドライバをインストールしても
デバイスファイルができない
– ・・・
2016年1月14日 ロボットシステム学 14
udevadmによる観察
• insmod時
• rmmod時
2016年1月14日 ロボットシステム学 15
udevの設定
• /etc/udev/rules.d/にファイルを置く
– Ubuntu, Raspbian共に
– ファイル名は「<優先度>-<対象>.rules」
– 基本: 「==」で条件をマッチさせて「=」で設定
• 反映
– $ sudo udevadm control --reload
2016年1月14日 ロボットシステム学 16
$ cat /etc/udev/rules.d/89-sushi.rules
#rules for sushi
KERNEL=="sushi0",SUBSYSTEM=="sushi",ACTION=="add",MODE="0666"
機器の操作
• 例
– 第7回で行ったLチカのデバイスドライバ版
• 使うもの
– request_mem_region
• /dev/memのopenの代わり
• 使いたい物理メモリ領域の予約
– ioremap_nocache
• mmapの代わり
2016年1月14日 ロボットシステム学 17
講義でやっていないこと
• USB等
• 排他
• 一つのドライバで複数のデバイスファイル
• read, write以外の方法
• ioctl
– フォーマット等読み書きとは別の操作
• ブロックデバイス
• ・・・
2016年1月14日 ロボットシステム学 18

More Related Content

What's hot

ロボットシステム学2015年第8回
ロボットシステム学2015年第8回ロボットシステム学2015年第8回
ロボットシステム学2015年第8回Ryuichi Ueda
 
ロボットシステム学2015第2回
ロボットシステム学2015第2回ロボットシステム学2015第2回
ロボットシステム学2015第2回Ryuichi Ueda
 
ロボットシステム学2015第4回
ロボットシステム学2015第4回ロボットシステム学2015第4回
ロボットシステム学2015第4回Ryuichi Ueda
 
OS development beginner version 20160611
OS development beginner version 20160611OS development beginner version 20160611
OS development beginner version 20160611Langur
 
Making Editor written in Ruby version 20160611
Making Editor written in Ruby version 20160611Making Editor written in Ruby version 20160611
Making Editor written in Ruby version 20160611Langur
 
小ネタ:Android上でroscoreを走らせてみた
小ネタ:Android上でroscoreを走らせてみた小ネタ:Android上でroscoreを走らせてみた
小ネタ:Android上でroscoreを走らせてみたRyodo Tanaka
 
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみたFOLIOのコードを動かしてみた
FOLIOのコードを動かしてみたFutoshi Tanuma
 
簡単に楽しく始めよう!Raspberry Pi入門
簡単に楽しく始めよう!Raspberry Pi入門簡単に楽しく始めよう!Raspberry Pi入門
簡単に楽しく始めよう!Raspberry Pi入門Hideki Aoshima
 
NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出Mitsunori Satomi
 
RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。
RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。
RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。Suzuki Mitsuhiro
 
楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~
楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~
楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~Hideki Aoshima
 
rustdef: Rust on jupyter notebook
rustdef: Rust on jupyter notebookrustdef: Rust on jupyter notebook
rustdef: Rust on jupyter notebookemakryo
 
フルスクラッチ自作OS(OS5)の紹介
フルスクラッチ自作OS(OS5)の紹介フルスクラッチ自作OS(OS5)の紹介
フルスクラッチ自作OS(OS5)の紹介Yuma Ohgami
 
Minio on Raspberry Pi
Minio on Raspberry PiMinio on Raspberry Pi
Minio on Raspberry PiMasafumi Ohta
 
CD-ROMドライブを身につけよう
CD-ROMドライブを身につけようCD-ROMドライブを身につけよう
CD-ROMドライブを身につけようAkira Ouchi
 
意外に作れる!?はじめての研究室内プライベートクラウド
意外に作れる!?はじめての研究室内プライベートクラウド意外に作れる!?はじめての研究室内プライベートクラウド
意外に作れる!?はじめての研究室内プライベートクラウドTakuma Nakajima
 
Rubyと機械学習の現状
Rubyと機械学習の現状Rubyと機械学習の現状
Rubyと機械学習の現状Aki Ariga
 
ret2libcとpopretで初等的BOF攻撃
ret2libcとpopretで初等的BOF攻撃ret2libcとpopretで初等的BOF攻撃
ret2libcとpopretで初等的BOF攻撃monochrojazz
 

What's hot (20)

ロボットシステム学2015年第8回
ロボットシステム学2015年第8回ロボットシステム学2015年第8回
ロボットシステム学2015年第8回
 
ロボットシステム学2015第2回
ロボットシステム学2015第2回ロボットシステム学2015第2回
ロボットシステム学2015第2回
 
ロボットシステム学2015第4回
ロボットシステム学2015第4回ロボットシステム学2015第4回
ロボットシステム学2015第4回
 
OS development beginner version 20160611
OS development beginner version 20160611OS development beginner version 20160611
OS development beginner version 20160611
 
Making Editor written in Ruby version 20160611
Making Editor written in Ruby version 20160611Making Editor written in Ruby version 20160611
Making Editor written in Ruby version 20160611
 
小ネタ:Android上でroscoreを走らせてみた
小ネタ:Android上でroscoreを走らせてみた小ネタ:Android上でroscoreを走らせてみた
小ネタ:Android上でroscoreを走らせてみた
 
Rosjp37 live ros
Rosjp37 live rosRosjp37 live ros
Rosjp37 live ros
 
FOLIOのコードを動かしてみた
FOLIOのコードを動かしてみたFOLIOのコードを動かしてみた
FOLIOのコードを動かしてみた
 
簡単に楽しく始めよう!Raspberry Pi入門
簡単に楽しく始めよう!Raspberry Pi入門簡単に楽しく始めよう!Raspberry Pi入門
簡単に楽しく始めよう!Raspberry Pi入門
 
NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出NCSA httpdとCGIの思い出
NCSA httpdとCGIの思い出
 
RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。
RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。
RaspberryPi Zero W で FreeBSD を動かす方法にやっと気がついたのと、USB OTGも動いてよかった。
 
mruby for embedded systems
mruby for embedded systemsmruby for embedded systems
mruby for embedded systems
 
楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~
楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~
楽しく使おう・始めよう!Raspberry Pi入門〜基礎編~
 
rustdef: Rust on jupyter notebook
rustdef: Rust on jupyter notebookrustdef: Rust on jupyter notebook
rustdef: Rust on jupyter notebook
 
フルスクラッチ自作OS(OS5)の紹介
フルスクラッチ自作OS(OS5)の紹介フルスクラッチ自作OS(OS5)の紹介
フルスクラッチ自作OS(OS5)の紹介
 
Minio on Raspberry Pi
Minio on Raspberry PiMinio on Raspberry Pi
Minio on Raspberry Pi
 
CD-ROMドライブを身につけよう
CD-ROMドライブを身につけようCD-ROMドライブを身につけよう
CD-ROMドライブを身につけよう
 
意外に作れる!?はじめての研究室内プライベートクラウド
意外に作れる!?はじめての研究室内プライベートクラウド意外に作れる!?はじめての研究室内プライベートクラウド
意外に作れる!?はじめての研究室内プライベートクラウド
 
Rubyと機械学習の現状
Rubyと機械学習の現状Rubyと機械学習の現状
Rubyと機械学習の現状
 
ret2libcとpopretで初等的BOF攻撃
ret2libcとpopretで初等的BOF攻撃ret2libcとpopretで初等的BOF攻撃
ret2libcとpopretで初等的BOF攻撃
 

Viewers also liked

ロボットシステム学2015年第5回
ロボットシステム学2015年第5回ロボットシステム学2015年第5回
ロボットシステム学2015年第5回Ryuichi Ueda
 
Particle Filter on Episode
Particle Filter on EpisodeParticle Filter on Episode
Particle Filter on EpisodeRyuichi Ueda
 
確率ロボティクス第六回
確率ロボティクス第六回確率ロボティクス第六回
確率ロボティクス第六回Ryuichi Ueda
 
第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロ第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロRyuichi Ueda
 
確率ロボティクス第13回
確率ロボティクス第13回確率ロボティクス第13回
確率ロボティクス第13回Ryuichi Ueda
 
確率ロボティクス第三回
確率ロボティクス第三回確率ロボティクス第三回
確率ロボティクス第三回Ryuichi Ueda
 
オープンソースとロボット
オープンソースとロボットオープンソースとロボット
オープンソースとロボットRyuichi Ueda
 
確率ロボティクス第二回
確率ロボティクス第二回確率ロボティクス第二回
確率ロボティクス第二回Ryuichi Ueda
 
フィルタドライバ入門
フィルタドライバ入門フィルタドライバ入門
フィルタドライバ入門firewood
 

Viewers also liked (9)

ロボットシステム学2015年第5回
ロボットシステム学2015年第5回ロボットシステム学2015年第5回
ロボットシステム学2015年第5回
 
Particle Filter on Episode
Particle Filter on EpisodeParticle Filter on Episode
Particle Filter on Episode
 
確率ロボティクス第六回
確率ロボティクス第六回確率ロボティクス第六回
確率ロボティクス第六回
 
第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロ第21回シェル芸勉強会イントロ
第21回シェル芸勉強会イントロ
 
確率ロボティクス第13回
確率ロボティクス第13回確率ロボティクス第13回
確率ロボティクス第13回
 
確率ロボティクス第三回
確率ロボティクス第三回確率ロボティクス第三回
確率ロボティクス第三回
 
オープンソースとロボット
オープンソースとロボットオープンソースとロボット
オープンソースとロボット
 
確率ロボティクス第二回
確率ロボティクス第二回確率ロボティクス第二回
確率ロボティクス第二回
 
フィルタドライバ入門
フィルタドライバ入門フィルタドライバ入門
フィルタドライバ入門
 

Similar to ロボットシステム学2015年第13回

30分で分かる!OSの作り方 ver.2
30分で分かる!OSの作り方 ver.230分で分かる!OSの作り方 ver.2
30分で分かる!OSの作り方 ver.2uchan_nos
 
WebRTC mediasoup on raspberrypi3
WebRTC mediasoup on raspberrypi3WebRTC mediasoup on raspberrypi3
WebRTC mediasoup on raspberrypi3mganeko
 
名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備ssuser6b6663
 
qpstudy 2014.04 ミドルウェア設計の勘所
qpstudy 2014.04 ミドルウェア設計の勘所qpstudy 2014.04 ミドルウェア設計の勘所
qpstudy 2014.04 ミドルウェア設計の勘所Masahiro NAKAYAMA
 
Makeblockでキミだけの最強ロボットをつくろう!
Makeblockでキミだけの最強ロボットをつくろう!Makeblockでキミだけの最強ロボットをつくろう!
Makeblockでキミだけの最強ロボットをつくろう!nmrmsys
 
できる!KickstartとAnsible!
できる!KickstartとAnsible!できる!KickstartとAnsible!
できる!KickstartとAnsible!Wataru NOGUCHI
 
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組みopenrtm
 
お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介
お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介
お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介Mizuno Osamu
 
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化Takuya ASADA
 
Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2潤司 渡部
 
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テストDevice Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト健一 辰濱
 
OWASP_Kyushu_Local_Chapter_Meeting_7th
OWASP_Kyushu_Local_Chapter_Meeting_7th OWASP_Kyushu_Local_Chapter_Meeting_7th
OWASP_Kyushu_Local_Chapter_Meeting_7th ShuyaMotouchi1
 
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
 
オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介OSSラボ株式会社
 
災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)
災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)
災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)OSgeo Japan
 
Raspberry Pi勉強会(前編)-京大機械研究会
Raspberry Pi勉強会(前編)-京大機械研究会Raspberry Pi勉強会(前編)-京大機械研究会
Raspberry Pi勉強会(前編)-京大機械研究会Naoki Matsumoto
 
ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018Ryuichi Ueda
 
東京工業大学「ロボット技術・ロボットミドルウェア」
東京工業大学「ロボット技術・ロボットミドルウェア」東京工業大学「ロボット技術・ロボットミドルウェア」
東京工業大学「ロボット技術・ロボットミドルウェア」NoriakiAndo
 
ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発
ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発
ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発shimane-itoc
 

Similar to ロボットシステム学2015年第13回 (20)

30分で分かる!OSの作り方 ver.2
30分で分かる!OSの作り方 ver.230分で分かる!OSの作り方 ver.2
30分で分かる!OSの作り方 ver.2
 
WebRTC mediasoup on raspberrypi3
WebRTC mediasoup on raspberrypi3WebRTC mediasoup on raspberrypi3
WebRTC mediasoup on raspberrypi3
 
名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備名古屋CV_ROSによるロボットソフトウェア開発の準備
名古屋CV_ROSによるロボットソフトウェア開発の準備
 
qpstudy 2014.04 ミドルウェア設計の勘所
qpstudy 2014.04 ミドルウェア設計の勘所qpstudy 2014.04 ミドルウェア設計の勘所
qpstudy 2014.04 ミドルウェア設計の勘所
 
Makeblockでキミだけの最強ロボットをつくろう!
Makeblockでキミだけの最強ロボットをつくろう!Makeblockでキミだけの最強ロボットをつくろう!
Makeblockでキミだけの最強ロボットをつくろう!
 
できる!KickstartとAnsible!
できる!KickstartとAnsible!できる!KickstartとAnsible!
できる!KickstartとAnsible!
 
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み2016 summercamp RTM-ROS相互運用とJSKでの取り組み
2016 summercamp RTM-ROS相互運用とJSKでの取り組み
 
お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介
お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介
お手軽マイコンを用いた
水槽管理システム
あくあたんの紹介
 
10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化10GbE時代のネットワークI/O高速化
10GbE時代のネットワークI/O高速化
 
Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2Out systemsaichiusermeeting#5 lt2
Out systemsaichiusermeeting#5 lt2
 
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テストDevice Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
 
OWASP_Kyushu_Local_Chapter_Meeting_7th
OWASP_Kyushu_Local_Chapter_Meeting_7th OWASP_Kyushu_Local_Chapter_Meeting_7th
OWASP_Kyushu_Local_Chapter_Meeting_7th
 
Japan Robot Week 2016 RTM講習会 第3部
Japan Robot Week 2016 RTM講習会 第3部Japan Robot Week 2016 RTM講習会 第3部
Japan Robot Week 2016 RTM講習会 第3部
 
オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介オープンソースNW監視ツールのご紹介
オープンソースNW監視ツールのご紹介
 
OS入門
OS入門OS入門
OS入門
 
災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)
災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)
災害監視無人機システムと 災害監視無人機システムとFOSS4Gとの関わり ((独)宇宙航空研究開発機構 都甲 様)
 
Raspberry Pi勉強会(前編)-京大機械研究会
Raspberry Pi勉強会(前編)-京大機械研究会Raspberry Pi勉強会(前編)-京大機械研究会
Raspberry Pi勉強会(前編)-京大機械研究会
 
ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018ROSチュートリアル ROBOMECH2018
ROSチュートリアル ROBOMECH2018
 
東京工業大学「ロボット技術・ロボットミドルウェア」
東京工業大学「ロボット技術・ロボットミドルウェア」東京工業大学「ロボット技術・ロボットミドルウェア」
東京工業大学「ロボット技術・ロボットミドルウェア」
 
ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発
ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発
ET West 2017資料:mruby/c、mrubyで実現される効率的なIoT開発
 

More from Ryuichi Ueda

第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライド第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライドRyuichi Ueda
 
シェル・ワンライナー160本ノック
シェル・ワンライナー160本ノックシェル・ワンライナー160本ノック
シェル・ワンライナー160本ノックRyuichi Ueda
 
日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナー日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナーRyuichi Ueda
 
シェル芸勉強会と会場の話
シェル芸勉強会と会場の話シェル芸勉強会と会場の話
シェル芸勉強会と会場の話Ryuichi Ueda
 
移動ロボットのナビゲーション
移動ロボットのナビゲーション移動ロボットのナビゲーション
移動ロボットのナビゲーションRyuichi Ueda
 
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆Ryuichi Ueda
 
第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライド第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライドRyuichi Ueda
 
bash(の変な使い方)update
bash(の変な使い方)updatebash(の変な使い方)update
bash(の変な使い方)updateRyuichi Ueda
 
第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニング第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニングRyuichi Ueda
 
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...Ryuichi Ueda
 
20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トーク20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トークRyuichi Ueda
 
第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロ第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロRyuichi Ueda
 
シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習Ryuichi Ueda
 
poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018Ryuichi Ueda
 
Robot frontier lesson3 2018
Robot frontier lesson3 2018Robot frontier lesson3 2018
Robot frontier lesson3 2018Ryuichi Ueda
 
Robot frontier lesson2 2018
Robot frontier lesson2 2018Robot frontier lesson2 2018
Robot frontier lesson2 2018Ryuichi Ueda
 
Robot frontier lesson1 2018
Robot frontier lesson1 2018Robot frontier lesson1 2018
Robot frontier lesson1 2018Ryuichi Ueda
 
第34回シェル芸勉強会
第34回シェル芸勉強会第34回シェル芸勉強会
第34回シェル芸勉強会Ryuichi Ueda
 
2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライド
2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライド2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライド
2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライドRyuichi Ueda
 
第31回シェル芸勉強会スライド
第31回シェル芸勉強会スライド第31回シェル芸勉強会スライド
第31回シェル芸勉強会スライドRyuichi Ueda
 

More from Ryuichi Ueda (20)

第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライド第27回ロボティクスシンポジアスライド
第27回ロボティクスシンポジアスライド
 
シェル・ワンライナー160本ノック
シェル・ワンライナー160本ノックシェル・ワンライナー160本ノック
シェル・ワンライナー160本ノック
 
日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナー日本ロボット学会第139回ロボット工学セミナー
日本ロボット学会第139回ロボット工学セミナー
 
シェル芸勉強会と会場の話
シェル芸勉強会と会場の話シェル芸勉強会と会場の話
シェル芸勉強会と会場の話
 
移動ロボットのナビゲーション
移動ロボットのナビゲーション移動ロボットのナビゲーション
移動ロボットのナビゲーション
 
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
PythonとJupyter Notebookを利用した教科書「詳解確率ロボティクス」の企画と執筆
 
第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライド第45回シェル芸勉強会オープニングスライド
第45回シェル芸勉強会オープニングスライド
 
bash(の変な使い方)update
bash(の変な使い方)updatebash(の変な使い方)update
bash(の変な使い方)update
 
第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニング第41回シェル芸勉強会 午後オープニング
第41回シェル芸勉強会 午後オープニング
 
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
Searching Behavior of a Simple Manipulator only with Sense of Touch Generated...
 
20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トーク20181113_子ども夢ロボット&トーク
20181113_子ども夢ロボット&トーク
 
第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロ第37回シェル芸勉強会イントロ
第37回シェル芸勉強会イントロ
 
シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習シェル芸勉強会にみる、コミュニティを通じたIT学習
シェル芸勉強会にみる、コミュニティを通じたIT学習
 
poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018poster of PFoE used in ICRA 2018
poster of PFoE used in ICRA 2018
 
Robot frontier lesson3 2018
Robot frontier lesson3 2018Robot frontier lesson3 2018
Robot frontier lesson3 2018
 
Robot frontier lesson2 2018
Robot frontier lesson2 2018Robot frontier lesson2 2018
Robot frontier lesson2 2018
 
Robot frontier lesson1 2018
Robot frontier lesson1 2018Robot frontier lesson1 2018
Robot frontier lesson1 2018
 
第34回シェル芸勉強会
第34回シェル芸勉強会第34回シェル芸勉強会
第34回シェル芸勉強会
 
2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライド
2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライド2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライド
2017年10月18日 シェル芸勉強会 meets バイオインフォマティクス vol.1 スライド
 
第31回シェル芸勉強会スライド
第31回シェル芸勉強会スライド第31回シェル芸勉強会スライド
第31回シェル芸勉強会スライド
 

Recently uploaded

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 

Recently uploaded (8)

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 

ロボットシステム学2015年第13回