Enviar búsqueda
Cargar
PythonからV-Sido CONNECTで ロボットを操る ~ ハードウェアの絡んだ仕組みの制御を考える ~
•
7 recomendaciones
•
2,293 vistas
Daisuke Imai
Seguir
業務のためのPython勉強会#3でお話した内容です。 (当日とは一部変更しています)
Leer menos
Leer más
Ingeniería
Denunciar
Compartir
Denunciar
Compartir
1 de 109
Descargar ahora
Descargar para leer sin conexión
Recomendados
デブコミュ#20150312
デブコミュ#20150312
Daisuke Imai
20191218 ntt group community gathering
20191218 ntt group community gathering
Kenji Tomooka
ここがオモロイ!IBMクラウド ~入社して60日で分かったこと~
ここがオモロイ!IBMクラウド ~入社して60日で分かったこと~
softlayerjp
Innovation egg6 mythings
Innovation egg6 mythings
Makoto Oya
20200514 classmethod online seminar
20200514 classmethod online seminar
Kenji Tomooka
Innovation Egg presen_160130
Innovation Egg presen_160130
知礼 八子
Bluemixを実案件(エンタープライズ)で使ってみてわかったこと
Bluemixを実案件(エンタープライズ)で使ってみてわかったこと
softlayerjp
Innovation egg 第6回 『io t 今と未来』
Innovation egg 第6回 『io t 今と未来』
Hiroyuki Hiki
Recomendados
デブコミュ#20150312
デブコミュ#20150312
Daisuke Imai
20191218 ntt group community gathering
20191218 ntt group community gathering
Kenji Tomooka
ここがオモロイ!IBMクラウド ~入社して60日で分かったこと~
ここがオモロイ!IBMクラウド ~入社して60日で分かったこと~
softlayerjp
Innovation egg6 mythings
Innovation egg6 mythings
Makoto Oya
20200514 classmethod online seminar
20200514 classmethod online seminar
Kenji Tomooka
Innovation Egg presen_160130
Innovation Egg presen_160130
知礼 八子
Bluemixを実案件(エンタープライズ)で使ってみてわかったこと
Bluemixを実案件(エンタープライズ)で使ってみてわかったこと
softlayerjp
Innovation egg 第6回 『io t 今と未来』
Innovation egg 第6回 『io t 今と未来』
Hiroyuki Hiki
SORACOM LTE-M Button for Enterpriseシミュレータについて
SORACOM LTE-M Button for Enterpriseシミュレータについて
Ken'ichirou Kimura
20191016 class method_tokyo_aws
20191016 class method_tokyo_aws
Kenji Tomooka
【SoftLayerのスタートアップ企業支援プログラム Catalyst事例】テラスマイル株式会社
【SoftLayerのスタートアップ企業支援プログラム Catalyst事例】テラスマイル株式会社
softlayerjp
20211209 it trend
20211209 it trend
Kenji Tomooka
Intelligent automation forum 2020 in osaka public document
Intelligent automation forum 2020 in osaka public document
Kenji Tomooka
第14回SIA例会プレゼン資料
第14回SIA例会プレゼン資料
Tae Yoshida
Starting with whyで始めよう イノベーション創出に必要な知識と技術そして覚悟を持とう
Starting with whyで始めよう イノベーション創出に必要な知識と技術そして覚悟を持とう
Osaka University
【kintone hive 上海】ウィングアーク上海講演資料_160918
【kintone hive 上海】ウィングアーク上海講演資料_160918
Cybozucommunity
IIJGIO x ビヨンドのオススメポイント
IIJGIO x ビヨンドのオススメポイント
Suguru Ito
kintoneで変わる
kintoneで変わる
Cybozucommunity
20180831_NTC3_NSE
20180831_NTC3_NSE
Toshiki Miyaji
20190704 macnica fujitec tomooka
20190704 macnica fujitec tomooka
Kenji Tomooka
Raspberry Pi + AWS + SoftEtherVPN + RemoteWorks = ?
Raspberry Pi + AWS + SoftEtherVPN + RemoteWorks = ?
Nobuyuki Matsui
Softlayer_summit
Softlayer_summit
Shuichi Yukimoto
エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村
wakamonog
第24回SIA例会プレゼン資料
第24回SIA例会プレゼン資料
Tae Yoshida
第7回SIA研究会(例会)プレゼン資料 堀野様
第7回SIA研究会(例会)プレゼン資料 堀野様
Tae Yoshida
APIエコノミーとは何か? それはどこへ続く道なのか(2017年) (in Japanese)
APIエコノミーとは何か? それはどこへ続く道なのか(2017年) (in Japanese)
Toshihiko Yamakami
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
Dai Iwai
S20 t1 stapyのこれまでとこれから
S20 t1 stapyのこれまでとこれから
Takeshi Akutsu
企業ICTのリスクマネジメントを強化する3つの視点 NTTコミュニケーションズセキュリティエバンジェリスト竹内文孝
企業ICTのリスクマネジメントを強化する3つの視点 NTTコミュニケーションズセキュリティエバンジェリスト竹内文孝
Fumitaka Takeuchi
Market trend jan.2017 cyber security
Market trend jan.2017 cyber security
Takeo Sakaguchi ,CISSP,CISA
Más contenido relacionado
La actualidad más candente
SORACOM LTE-M Button for Enterpriseシミュレータについて
SORACOM LTE-M Button for Enterpriseシミュレータについて
Ken'ichirou Kimura
20191016 class method_tokyo_aws
20191016 class method_tokyo_aws
Kenji Tomooka
【SoftLayerのスタートアップ企業支援プログラム Catalyst事例】テラスマイル株式会社
【SoftLayerのスタートアップ企業支援プログラム Catalyst事例】テラスマイル株式会社
softlayerjp
20211209 it trend
20211209 it trend
Kenji Tomooka
Intelligent automation forum 2020 in osaka public document
Intelligent automation forum 2020 in osaka public document
Kenji Tomooka
第14回SIA例会プレゼン資料
第14回SIA例会プレゼン資料
Tae Yoshida
Starting with whyで始めよう イノベーション創出に必要な知識と技術そして覚悟を持とう
Starting with whyで始めよう イノベーション創出に必要な知識と技術そして覚悟を持とう
Osaka University
【kintone hive 上海】ウィングアーク上海講演資料_160918
【kintone hive 上海】ウィングアーク上海講演資料_160918
Cybozucommunity
IIJGIO x ビヨンドのオススメポイント
IIJGIO x ビヨンドのオススメポイント
Suguru Ito
kintoneで変わる
kintoneで変わる
Cybozucommunity
20180831_NTC3_NSE
20180831_NTC3_NSE
Toshiki Miyaji
20190704 macnica fujitec tomooka
20190704 macnica fujitec tomooka
Kenji Tomooka
Raspberry Pi + AWS + SoftEtherVPN + RemoteWorks = ?
Raspberry Pi + AWS + SoftEtherVPN + RemoteWorks = ?
Nobuyuki Matsui
Softlayer_summit
Softlayer_summit
Shuichi Yukimoto
エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村
wakamonog
第24回SIA例会プレゼン資料
第24回SIA例会プレゼン資料
Tae Yoshida
第7回SIA研究会(例会)プレゼン資料 堀野様
第7回SIA研究会(例会)プレゼン資料 堀野様
Tae Yoshida
APIエコノミーとは何か? それはどこへ続く道なのか(2017年) (in Japanese)
APIエコノミーとは何か? それはどこへ続く道なのか(2017年) (in Japanese)
Toshihiko Yamakami
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
Dai Iwai
La actualidad más candente
(19)
SORACOM LTE-M Button for Enterpriseシミュレータについて
SORACOM LTE-M Button for Enterpriseシミュレータについて
20191016 class method_tokyo_aws
20191016 class method_tokyo_aws
【SoftLayerのスタートアップ企業支援プログラム Catalyst事例】テラスマイル株式会社
【SoftLayerのスタートアップ企業支援プログラム Catalyst事例】テラスマイル株式会社
20211209 it trend
20211209 it trend
Intelligent automation forum 2020 in osaka public document
Intelligent automation forum 2020 in osaka public document
第14回SIA例会プレゼン資料
第14回SIA例会プレゼン資料
Starting with whyで始めよう イノベーション創出に必要な知識と技術そして覚悟を持とう
Starting with whyで始めよう イノベーション創出に必要な知識と技術そして覚悟を持とう
【kintone hive 上海】ウィングアーク上海講演資料_160918
【kintone hive 上海】ウィングアーク上海講演資料_160918
IIJGIO x ビヨンドのオススメポイント
IIJGIO x ビヨンドのオススメポイント
kintoneで変わる
kintoneで変わる
20180831_NTC3_NSE
20180831_NTC3_NSE
20190704 macnica fujitec tomooka
20190704 macnica fujitec tomooka
Raspberry Pi + AWS + SoftEtherVPN + RemoteWorks = ?
Raspberry Pi + AWS + SoftEtherVPN + RemoteWorks = ?
Softlayer_summit
Softlayer_summit
エンジニアのキャリアパスを考える 川村
エンジニアのキャリアパスを考える 川村
第24回SIA例会プレゼン資料
第24回SIA例会プレゼン資料
第7回SIA研究会(例会)プレゼン資料 堀野様
第7回SIA研究会(例会)プレゼン資料 堀野様
APIエコノミーとは何か? それはどこへ続く道なのか(2017年) (in Japanese)
APIエコノミーとは何か? それはどこへ続く道なのか(2017年) (in Japanese)
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
10/2勉強会資料 ~IaaSを知る前にサーバを知ろう~
Destacado
S20 t1 stapyのこれまでとこれから
S20 t1 stapyのこれまでとこれから
Takeshi Akutsu
企業ICTのリスクマネジメントを強化する3つの視点 NTTコミュニケーションズセキュリティエバンジェリスト竹内文孝
企業ICTのリスクマネジメントを強化する3つの視点 NTTコミュニケーションズセキュリティエバンジェリスト竹内文孝
Fumitaka Takeuchi
Market trend jan.2017 cyber security
Market trend jan.2017 cyber security
Takeo Sakaguchi ,CISSP,CISA
S18 t0 introduction
S18 t0 introduction
Takeshi Akutsu
How to master Blue Coat Proxy SG
How to master Blue Coat Proxy SG
Takeo Sakaguchi ,CISSP,CISA
Creators'night#15今井
Creators'night#15今井
Daisuke Imai
標的型攻撃にいかに立ち向かうか~巧妙化する脅威に組織がとるべき対策とは~竹内 文孝
標的型攻撃にいかに立ち向かうか~巧妙化する脅威に組織がとるべき対策とは~竹内 文孝
Fumitaka Takeuchi
チームで活用するAnaconda入門
チームで活用するAnaconda入門
Takeshi Akutsu
Creators'night#3今井
Creators'night#3今井
Daisuke Imai
Ui研究会#1
Ui研究会#1
Daisuke Imai
Creators'night#14今井
Creators'night#14今井
Daisuke Imai
S02 t1 sta_py_tsuji_0702_slides
S02 t1 sta_py_tsuji_0702_slides
Takeshi Akutsu
GmailとPythonでイベント管理
GmailとPythonでイベント管理
drillan
PostgreSQLとPythonとSQL
PostgreSQLとPythonとSQL
Satoshi Yamada
bottle.pyをつかったチャットアプリ作成チュートリアル
bottle.pyをつかったチャットアプリ作成チュートリアル
Satoshi Yamada
MacroPyがすごい
MacroPyがすごい
Takashi Kawachi
Chainerで学ぶdeep learning
Chainerで学ぶdeep learning
Retrieva inc.
Inside PyCon JP 2016
Inside PyCon JP 2016
koedoyoshida
みんなのPython勉強会#21 澪標アナリティクス 井原様
みんなのPython勉強会#21 澪標アナリティクス 井原様
Takeshi Akutsu
WindowsでPython
WindowsでPython
drillan
Destacado
(20)
S20 t1 stapyのこれまでとこれから
S20 t1 stapyのこれまでとこれから
企業ICTのリスクマネジメントを強化する3つの視点 NTTコミュニケーションズセキュリティエバンジェリスト竹内文孝
企業ICTのリスクマネジメントを強化する3つの視点 NTTコミュニケーションズセキュリティエバンジェリスト竹内文孝
Market trend jan.2017 cyber security
Market trend jan.2017 cyber security
S18 t0 introduction
S18 t0 introduction
How to master Blue Coat Proxy SG
How to master Blue Coat Proxy SG
Creators'night#15今井
Creators'night#15今井
標的型攻撃にいかに立ち向かうか~巧妙化する脅威に組織がとるべき対策とは~竹内 文孝
標的型攻撃にいかに立ち向かうか~巧妙化する脅威に組織がとるべき対策とは~竹内 文孝
チームで活用するAnaconda入門
チームで活用するAnaconda入門
Creators'night#3今井
Creators'night#3今井
Ui研究会#1
Ui研究会#1
Creators'night#14今井
Creators'night#14今井
S02 t1 sta_py_tsuji_0702_slides
S02 t1 sta_py_tsuji_0702_slides
GmailとPythonでイベント管理
GmailとPythonでイベント管理
PostgreSQLとPythonとSQL
PostgreSQLとPythonとSQL
bottle.pyをつかったチャットアプリ作成チュートリアル
bottle.pyをつかったチャットアプリ作成チュートリアル
MacroPyがすごい
MacroPyがすごい
Chainerで学ぶdeep learning
Chainerで学ぶdeep learning
Inside PyCon JP 2016
Inside PyCon JP 2016
みんなのPython勉強会#21 澪標アナリティクス 井原様
みんなのPython勉強会#21 澪標アナリティクス 井原様
WindowsでPython
WindowsでPython
Similar a PythonからV-Sido CONNECTで ロボットを操る ~ ハードウェアの絡んだ仕組みの制御を考える ~
show コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudy
akira6592
D3.js で LOD を Visualization
D3.js で LOD を Visualization
dsuke Takaoka
gumiStudy#5 JavaScript でネイティブiPhone/Androidアプリを作る
gumiStudy#5 JavaScript でネイティブiPhone/Androidアプリを作る
gumilab
ゼロから学ぶIoT
ゼロから学ぶIoT
Masaru Takahashi
zozotown real time linkage infrastructure
zozotown real time linkage infrastructure
KeisukeTaniguchi2
Smart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless Design
Ryuji TAKEHARA
【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!
Sakae Saito
Deep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & Chainer
Preferred Networks
Data Scientists Love SQL Server
Data Scientists Love SQL Server
Tomoyuki Oota
Soft layer users_community_20140523_bitisle_narisako_subset
Soft layer users_community_20140523_bitisle_narisako_subset
Takeshi Narisako
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
de:code 2017
20150630_データ分析に最適な基盤とは? -コスト/スピードでビジネスバリューを得るために- by 株式会社インサイトテクノロジー CTO 石川雅也
20150630_データ分析に最適な基盤とは? -コスト/スピードでビジネスバリューを得るために- by 株式会社インサイトテクノロジー CTO 石川雅也
Insight Technology, Inc.
俺が作れるさいきょうAIアシストシステム.pptx
俺が作れるさいきょうAIアシストシステム.pptx
ytakahashineco
Web socketドロンくん その後-
Web socketドロンくん その後-
Yuuichi Akagawa
ヒューマノイドのアプリ開発とモーション生成AIの導入 ROS JP UG #51
ヒューマノイドのアプリ開発とモーション生成AIの導入 ROS JP UG #51
holypong
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
Takayoshi Tanaka
座談会資料 事前配布 20170225
座談会資料 事前配布 20170225
知礼 八子
Titanium Mobile
Titanium Mobile
Naoya Ito
2015年7月期AITC女子会「D3.js/Highchartsによるデータの可視化」
2015年7月期AITC女子会「D3.js/Highchartsによるデータの可視化」
aitc_jp
Ember.js Tokyo event 2014/09/22 (Japanese)
Ember.js Tokyo event 2014/09/22 (Japanese)
Yuki Shimada
Similar a PythonからV-Sido CONNECTで ロボットを操る ~ ハードウェアの絡んだ仕組みの制御を考える ~
(20)
show コマンド結果をパースする方法あれこれ #npstudy
show コマンド結果をパースする方法あれこれ #npstudy
D3.js で LOD を Visualization
D3.js で LOD を Visualization
gumiStudy#5 JavaScript でネイティブiPhone/Androidアプリを作る
gumiStudy#5 JavaScript でネイティブiPhone/Androidアプリを作る
ゼロから学ぶIoT
ゼロから学ぶIoT
zozotown real time linkage infrastructure
zozotown real time linkage infrastructure
Smart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless Design
【B-1】kintoneでお手軽コールセンター!
【B-1】kintoneでお手軽コールセンター!
Deep Learning Lab: DIMo & Chainer
Deep Learning Lab: DIMo & Chainer
Data Scientists Love SQL Server
Data Scientists Love SQL Server
Soft layer users_community_20140523_bitisle_narisako_subset
Soft layer users_community_20140523_bitisle_narisako_subset
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
[AI08] 深層学習フレームワーク Chainer × Microsoft で広がる応用
20150630_データ分析に最適な基盤とは? -コスト/スピードでビジネスバリューを得るために- by 株式会社インサイトテクノロジー CTO 石川雅也
20150630_データ分析に最適な基盤とは? -コスト/スピードでビジネスバリューを得るために- by 株式会社インサイトテクノロジー CTO 石川雅也
俺が作れるさいきょうAIアシストシステム.pptx
俺が作れるさいきょうAIアシストシステム.pptx
Web socketドロンくん その後-
Web socketドロンくん その後-
ヒューマノイドのアプリ開発とモーション生成AIの導入 ROS JP UG #51
ヒューマノイドのアプリ開発とモーション生成AIの導入 ROS JP UG #51
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
座談会資料 事前配布 20170225
座談会資料 事前配布 20170225
Titanium Mobile
Titanium Mobile
2015年7月期AITC女子会「D3.js/Highchartsによるデータの可視化」
2015年7月期AITC女子会「D3.js/Highchartsによるデータの可視化」
Ember.js Tokyo event 2014/09/22 (Japanese)
Ember.js Tokyo event 2014/09/22 (Japanese)
Más de Daisuke Imai
Creators'night#13 tech#2今井
Creators'night#13 tech#2今井
Daisuke Imai
Creators'night#12今井
Creators'night#12今井
Daisuke Imai
Creators'night#10今井
Creators'night#10今井
Daisuke Imai
Creators'night#8今井
Creators'night#8今井
Daisuke Imai
Creators'night#7今井
Creators'night#7今井
Daisuke Imai
Creators'night#6今井
Creators'night#6今井
Daisuke Imai
Creators'night#5今井
Creators'night#5今井
Daisuke Imai
Creators'night#4今井
Creators'night#4今井
Daisuke Imai
Creators'night#1今井
Creators'night#1今井
Daisuke Imai
UI研究会#2
UI研究会#2
Daisuke Imai
UI研究会#3
UI研究会#3
Daisuke Imai
Beenos creators'night#201308今井
Beenos creators'night#201308今井
Daisuke Imai
Beenos creators'night#201307今井
Beenos creators'night#201307今井
Daisuke Imai
Beenos creators' night#201305今井
Beenos creators' night#201305今井
Daisuke Imai
Beenos creators' night#201306今井
Beenos creators' night#201306今井
Daisuke Imai
パソナプレゼン資料
パソナプレゼン資料
Daisuke Imai
Más de Daisuke Imai
(16)
Creators'night#13 tech#2今井
Creators'night#13 tech#2今井
Creators'night#12今井
Creators'night#12今井
Creators'night#10今井
Creators'night#10今井
Creators'night#8今井
Creators'night#8今井
Creators'night#7今井
Creators'night#7今井
Creators'night#6今井
Creators'night#6今井
Creators'night#5今井
Creators'night#5今井
Creators'night#4今井
Creators'night#4今井
Creators'night#1今井
Creators'night#1今井
UI研究会#2
UI研究会#2
UI研究会#3
UI研究会#3
Beenos creators'night#201308今井
Beenos creators'night#201308今井
Beenos creators'night#201307今井
Beenos creators'night#201307今井
Beenos creators' night#201305今井
Beenos creators' night#201305今井
Beenos creators' night#201306今井
Beenos creators' night#201306今井
パソナプレゼン資料
パソナプレゼン資料
PythonからV-Sido CONNECTで ロボットを操る ~ ハードウェアの絡んだ仕組みの制御を考える ~
1.
2015/08/10 業務のためのPython勉強会#3
2.
こんば んは!
3.
突然参加させていただきました、 「今井」です
4.
っていうか、お前だれよ?
5.
今井 大介 IMAI,
Daisuke 1972/07/17生まれ43歳 アスラテック株式会社 事業開発室 ロボットエバンジェリスト 「ロボットと、ロボットアプリケーションを作れるエ ンジニアを増やして、世界中がロボットだらけになれ ばきっと世界はもっと面白くなる。」
6.
1997∼ 【新卒】株式会社ベネッセコーポレーション インターネット向けサービスの実証実験 2000∼ 【起業】ギガフロップス株式会社 携帯向けのポータルサイトの立ち上げ、副社長兼CTO 2003∼
【バイアウト】株式会社サイバード 事業並びに会社の売却→技術部マネージャ 2005∼ 【Uターン】石見ケーブルビジョン株式会社 CATV事業の立ち上げでインターネット側の担当 2010∼ 【再度上京】BEENOS株式会社 新規事業立ち上げ&技術担当執行役員、グループCTO 2015∼ 【現職】アスラテック株式会社 色々な企業さんとのコラボを模索したり、エンジニアの方 向けのサンプルコード書いたり
7.
簡単に言うと、 Web系からロボット系に ジョブチェンジした エンジニア的な人
8.
【得意な領域(Web)】 インフラ>サーバーサイド> Webフロントエンド>NativeApp 【好きな技術】 AWS、WebSocket マイコンボード各種
9.
【言語歴】 BASIC(PC-6001から) アセンブラ(Z80) C/C++/Java LINGO(Adobe Director) PHP/Ruby/Python JavaScript Processing/ArduinoIDE etc…
10.
Pythonにめっちゃ詳しいって わけではないです (意訳:色々大目に見てください)
11.
V-SidoのPython向けのライブラリの パッケージを作りたいと思っていたので 作り始めるいい機会!
12.
アスラテック株式会社
13.
ロボットの制御OS 「V-Sido OS」 (「ブシドー」と読みます)
14.
!
15.
. ,
16.
!
17.
!
18.
19.
OS
20.
85 E W
BPN TRCV 85 PN S B B 28 5 -‐‑‒ 34 O MI
21.
KJ R V O -‐‑‒ W
KJ S P
22.
0 -‐‑‒
23.
24.
PythonからV-Sido CONNECTで ロボットを操る ハードウェアの絡んだ仕組みの制御を考える アスラテック株式会社 事業開発室 ロボットエバンジェリスト
今井大介
25.
【注釈】 超駆け足で行きますが、 slideshareでスライド共有、 githubでコード共有します。 あとPython3です(確認環境3.4.3)
26.
ハードウェアの絡む仕組みを 作ったことのある人∼?
27.
ロボットとPython
28.
C/C++についで ロボット関連ではPythonが よく使われているようです (当社は違いますが)
29.
numpy/scipy OpenCV
30.
Choregraphと Python SDK
31.
本日使うライブラリ PySerial
32.
使ったことのある人∼?
33.
シリアル通信
34.
デバイス同士が やりとりする仕組み
35.
RS-232C/RS-485 I2C/SPI USB etc…色々ありますが
36.
パソコンのシリアルポート UART/USART
37.
85 E W
BPN TRCV 85 PN S B B 28 5 -‐‑‒ 34 O MI
38.
39.
Bluetoosh SPPで 無線化されたシリアル通信
40.
シリアル通信の基本は 「送信」「受信」
41.
送信
42.
(デモ)
43.
受信
44.
(デモ)
45.
受信するまで待ってしまう (その間は何もできない)
46.
解法1:timeoutを設定する
47.
(デモ)
48.
解法2:受信を別Threadにする
49.
本日使うライブラリ threading
50.
def start_reciever(self): """ 受信スレッドを立ち上げる
""" self.receiver_alive = True self.receiver_thread = threading.Thread(target=self._reciever) self.receiver_thread.setDaemon(True) self.receiver_thread.start() def stop_reciever(self): """ 受信スレッドの停止 """ self.receiver_alive = False self.receiver_thread.join() def _reciever(self): """ 受信データの処理 """ try: while self.receiver_alive: data = self.serial.read(1) if len(data) > 0: print(data) except serial.SerialException: self.alive = False raise
51.
どのような通信をすべきか (内容)
52.
53.
54.
55.
56.
まずは、コマンドを送信する 共通で使う関数を作る
57.
def send_data(self, command_data): '''
コマンド送信 ''' data_bytes = b'' data_str = [] for data in command_data: data_bytes += data.to_bytes(1, byteorder='little') data_str.append('%02x' % data) self.serial.write(data_bytes) print('> ' + ' '.join(data_str)) def _adjust_ln_sum(self, command_data): ''' コマンドデータのLN(レングス)とSUM(チェックサム)の調整 ''' ln_pos = 1 if command_data[0] == 0x0c or command_data[0] == 0x0d or command_data[0] == 0x53 or command_data[0] == 0x54 else 2 if len(command_data) > 3: command_data[ln_pos] = len(command_data); sum = 0; for data in command_data: sum ^= data command_data[len(command_data) - 1] = sum return command_data
58.
個別のコマンドの 生成関数を作る
59.
# V-Sidoで利用するコマンドやオペランドのクラス変数定義 COMMAND_ST =
0xff; COMMAND_OP_WALK = 0x74; # 't' def make_walk_command(self, forward, turn_cw): ''' 歩行コマンドのデータ生成 ''' data = [] data.append(VSidoConnect.COMMAND_ST) # ST data.append(VSidoConnect.COMMAND_OP_WALK) # OP data.append(0x00) # LN仮置き data.append(0x00) # WAD(Utilityでは0で固定) data.append(0x02) # WLN(現在2で固定) # 速度ならびに旋回は-100∼100を0∼200に変換する data.append(forward + 100) data.append(turn_cw + 100) data.append(0x00) # SUM仮置き return self._adjust_ln_sum(data);
60.
V-Sidoのコマンドの数だけ この関数を作っていけばいい
61.
(デモ)
62.
やった!動いた!
63.
はて、本日の勉強会は なんの勉強会でしたっけ?
64.
業務のための Python 勉強会
65.
【質問】 ロボットは業務の役に 立つのでしょうか
66.
立つかもしれないし、 立たないかもしれない
67.
0 -‐‑‒
68.
それだけだとアレなので
69.
IoTに応用することを 考えてみましょうか
70.
「ロボットとV-Sido CONNECT」を IoTデバイスだと置き換えて 考えてみる
71.
ちなみに、IoTが分かる人∼?
72.
例えばArduino
73.
例えばRaspberryPi
74.
例えばIntel Edison
75.
センサーをつければ、 立派なIoTデバイスに
76.
【業務効率化アイデア】 部長に印鑑を欲しいが、 部長は外出が多くて、 席にいるタイミングを 見計らうのが大変。 何とかならない?
77.
部長の椅子のクッションの下に 圧力センサーをいれれば 座ってるのがわかるぞ!
78.
どうやって知らせる?
79.
やっぱWeb(イントラ)でしょ!
80.
ハードウェアとWebを繋ぐ
81.
ということで、ロボットを Webから操ってみます。
82.
85 E W
BPN TRCV 85 PN S B B 28 5 -‐‑‒ 34 O MI ウェブブラウザ WebSocket
83.
本日使うライブラリ Tornado
84.
せっかく歩けるようになったので 歩く機能をウェブに実装
85.
Web画面作った
86.
<script language="javascript"> var ws
= new WebSocket("ws://localhost:8080/ws"); var sent_deleter = null; var receiverd_deleter = null; ws.onopen = function() { }; function OnWalkButtonClick() { ws.send("walk_forward"); } </script> ボタンを押したら、 walk_forward というメッセージを投げる
87.
サーバー側の実装
88.
class SocketHandler(tornado.websocket.WebSocketHandler): #on_message ->
receive data #write_message -> send data def open(self): self.i = 0 self.callback = tornado.ioloop.PeriodicCallback(self._send_message, 50) self.callback.start() print("WebSocket opened") # origin check disabled def check_origin(self, origin): return True def on_message(self, message): print("got message:",message) if message == "walk_forward": if vsidoconnect: vsidoconnect.send_data(vsidoconnect.make_walk_command(100, 0)) def on_close(self): self.callback.stop() print("WebSocket closed")
89.
受け取るだけだと、 IoT的にイマイチなので、 ハード側から送る機能も
90.
Web画面作った
91.
ロボットとどんなコマンドの やりとりをしたのかがわかる
92.
class SocketHandler(tornado.websocket.WebSocketHandler): #on_message ->
receive data #write_message -> send data def open(self): self.i = 0 self.callback = tornado.ioloop.PeriodicCallback(self._send_message, 50) self.callback.start() print("WebSocket opened") def _send_message(self): if len(vsidoconnect.message_buffer) > 0: self.write_message(vsidoconnect.message_buffer.pop(0)) def on_close(self): self.callback.stop() print("WebSocket closed")
93.
(デモ)
94.
やった!動いた!
95.
これでセンサー情報とか ブラウザに簡単に 送ることができますね
96.
ハードウェアとWebは Pythonで 結構簡単につなげることができる
97.
UI作るのは PythonのGUIライブラリでも いいけど JavaScriptの方が僕は楽 (分業もしやすいしね)
98.
業務効率化に ハードウェアを!
99.
ネットと連携するデバイス
100.
ウェアラブルデバイス
101.
新しい入力装置
102.
「モノ」ができると 楽しい。 (続けるモチベーション)
103.
色んなものが作れる。 もっともっとhackしよう。
104.
業務効率化に ロボットを!
105.
106.
なお…
107.
V-Sido公式で、 WebSocketで接続する JavaScript向けのAPIを 公開している模様
108.
何たる「車輪の再発明」!
109.
ご清聴 ありがとうございました。 email: daisimai@asratec.co.jp twitter: @hine Facebook:
hine.gdw 本日のコード https://github.com/hine/PythonVSido
Descargar ahora