SlideShare ist ein Scribd-Unternehmen logo
1 von 26
シリアル通信
RUTILEA勉強会
2020/02/21 八鳥孝志
大まかな目標
• コンピュータ同士の通信の種類を知ること
• 最近のコンピュータは大体シリアル通信をしていることを理解
すること
• ArduinoやGRBLを扱う上でのシリアル通信の重要性を学ぶこと
目次
• 身近な通信
• シリアル通信 と パラレル通信
• パラレル通信の問題
• シリアル通信の種類
• 実際の事例を交えて
• まとめ
身近な通信
• 身の回りの通信
Bluetooth,USB,WiFi, ラジオ などなど
• もっと大きく捉えると...
会話や手紙も通信!
目次
• 身近な通信
• シリアル通信 と パラレル通信
• パラレル通信の問題
• シリアル通信の種類
• 実際の事例を交えて
• まとめ
シリアル通信
• Serial … 連続的な、ひと続きの
• 一度に送受信するデータは1つ
• シリアル通信のイメージ
https://www.lineeye.co.jp/html/term_serialpara.html
パラレル通信
• Parallel… 平行の、(…と)平行して
• 一度に複数の情報を送受信する
• パラレル通信のイメージ
https://www.lineeye.co.jp/html/term_serialpara.html
シリアル通信
• Serial … 連続的な、ひと続きの
• 一度に送受信するデータは1つ
• シリアル通信のイメージ
こ
ん
に
ち
は
「こんにちは」
「こんにちは」
パラレル通信
• Parallel… 平行の、(…と)平行して
• 一度に複数の情報を送受信する
• パラレル通信のイメージ
「 สวัสดี ครับ 」
「 สวัสดี ครับ 」
パラレル通信
• Parallel… 平行の、(…と)平行して
• 一度に複数の情報を送受信する
• パラレル通信のイメージ
聖徳太子
シリアル通信とパラレル通信の比較
シリアル通信 パラレル通信
通信効率 悪い 良い
配線の数 少ない 多い
配線の複雑さ 複雑 単純
ただしパラレル通信には問題が…
漏話
スキュー
目次
• 身近な通信
• シリアル通信 と パラレル通信
• パラレル通信の問題
• シリアル通信の種類
• 実際の事例を交えて
• まとめ
パラレル通信の問題点
• 漏話
混線ともいう
近くの通信回線の通信内容が混じること
原因は電磁誘導など
→ツイスト線,シールド線を用いる
• スキュー
複数の回線のタイミングのズレ
回線の長さや素子の影響で発生
高速通信への障害
https://xtech.nikkei.com/it/article/lecture/20061220/257432/
https://ja.wikipedia.org/wiki/%E6%BC%8F%E8%A9%B1
通信の目指すところ
• データ通信速度 が最も重要
• そのほかには
データの信頼性
回路設計の簡便さ
配線の数
などなど
• スキュー
複数の回線のタイミングのズレ
クロック周波数を上げれば上げる
ほど回避が困難に
クロック周波数を上げる
(人で言うところの早口)
目次
• 身近な通信
• シリアル通信 と パラレル通信
• パラレル通信の問題
• シリアル通信の種類
• 実際の事例を交えて
• まとめ
まずは分類から… 全二重と半二重通信
• 一方向の通信=単向通信
• 双方向の通信=二重通信
半二重通信
送信と受信を切り替える
イメージ)トランシーバー
全二重通信
送信と受信の回線が別にある
イメージ)電話
まずは分類から… 同期式と非同期式通信
• クロックとデータの両方を送信=同期式通信
• 最初にクロックを合わせてデータのみを送信=非同期式通信
http://www.maroon.dti.ne.jp/koten-kairo/works/dsPIC/serial1.html
シリアル通信の種類
信号線 双方向性 同期方式 通信速度 接続形態 実際の用途
I2C通信 2本 半二重
クロック
(同期式)
0.1 ~ 1
Mbps
1対多
デバイスー
マイコン間
SPI通信 3~4本 全二重
クロック
(同期式)
1 ~ 数 Mbps 1対多
デバイスー
マイコン間
UART通信 1~2本 全二重
タイミング
信号(調歩
同期/非同期
式)
0.1 ~
115kbps
1対1(一
部1対多)
マイコンー
マイコン間
https://qiita.com/Gri_Gra/items/b6f901b35d3917ffc580
シリアル通信の種類
• RS232C
昔使われていた規格
ピンが多いのは,送信要求や送信可能
を示すピンが存在するため
最大20kbps
電源電源は±5~15 V
• USB(Universal Serial Bus)
非同期式通信
USB3.0 では5Gbps
絶賛活躍中
電源電圧は5V±10%
プロトコルが厳格に決まっている
USBについて少し詳しく
• ケーブルの長さは?
USB2.0 最大5m
USB3.0 最大3m
• 転送速度は?
USB2.0 最大480Mbps
USB3.0 最大5Gbps
→転送速度とケーブルの長さは
トレードオフ
→規格以上の長さでも通信可能だが,
ノイズが大きくなるため,
不安定になる可能性がある.
目次
• 身近な通信
• シリアル通信 と パラレル通信
• パラレル通信の問題
• シリアル通信の種類
• 実際の事例を交えて
• まとめ
Arduinoはどうなってるの?
• USB接続なのにCOMポート?
USB-to-serial アダプタチップに
よって通信が変換されている.
ArduinoとPCはRS232のプロトコル
の通信をしているが,途中でUSBプ
ロトコルに変換-復元されている.
OSからはRS232で接続されていると
認識される.
COMポート
Windows における,RS232Cポートの呼び方
※GRBLも同様
Arduinoはどうなってるの?
• センサの接続はどうするの?
Arduinoに限らずマイコンではピン
の数が限られている.
→センサを複数つけるとすぐにピン
が埋まる.
I2CかSPIを使う
I2C…占有するピンが少ない
遅い
例)センサによく使われる
SPI…占有するピンが多い
速い
例)SDカードやLANなど
• アナログセンサの場合は
一度デジタル変換する必要がある.
※I2C, SPI通信できるピン番号は決まっ
ているので注意
I2C通信のケーブルを伸ばすと
• I2Cでは信号線はHighにプル
アップされていて,デバイ
スがLowに落とすことで通
信
• 寄生容量によってL→Hの波
形がなまる
• 寄生容量が速やかに充電さ
れるようにプルアップ抵抗
を小さくする
• 駆動電流に注意!!
Arduinoは通常20mAまで
バスバッファを使うと60mA
https://www.macnica.co.jp/business/semiconductor/articles/analog_d
evices/127585/
目次
• 身近な通信
• シリアル通信 と パラレル通信
• パラレル通信の問題
• シリアル通信の種類
• 実際の事例を交えて
• まとめ
まとめ
• 通信にはたくさん種類がある
• 現在その多くがシリアル通信である
• I2C通信やUSBもその一種
• センサを使う開発では,
→センサがアナログかデジタルか
→ポートを一つづつ与えるのか,I2Cなどでバス接続するのか
→ケーブルの長さはどのくらいか,バスバッファは必要か
などに注意しましょう

Weitere ähnliche Inhalte

Was ist angesagt?

[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative ModelsDeep Learning JP
 
数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga Jiro
数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga Jiro数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga Jiro
数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga JiroJiro Iwanaga
 
[DL輪読会]Autonomous Reinforcement Learning: Formalism and Benchmarking
[DL輪読会]Autonomous Reinforcement Learning: Formalism and Benchmarking[DL輪読会]Autonomous Reinforcement Learning: Formalism and Benchmarking
[DL輪読会]Autonomous Reinforcement Learning: Formalism and BenchmarkingDeep Learning JP
 
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみたFacebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみた株式会社メタップスホールディングス
 
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object Detection
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object Detection[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object Detection
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object DetectionDeep Learning JP
 
3週連続DDDその3 ドメイン駆動設計 戦略的設計
3週連続DDDその3  ドメイン駆動設計 戦略的設計3週連続DDDその3  ドメイン駆動設計 戦略的設計
3週連続DDDその3 ドメイン駆動設計 戦略的設計増田 亨
 
工数見積りのぶれ幅を理解してチームの見積り精度を上げた話
工数見積りのぶれ幅を理解してチームの見積り精度を上げた話工数見積りのぶれ幅を理解してチームの見積り精度を上げた話
工数見積りのぶれ幅を理解してチームの見積り精度を上げた話chome maru3
 
マインドフルネスと人工知能
マインドフルネスと人工知能マインドフルネスと人工知能
マインドフルネスと人工知能Youichiro Miyake
 
Pynqでカメラ画像をリアルタイムfastx コーナー検出
Pynqでカメラ画像をリアルタイムfastx コーナー検出Pynqでカメラ画像をリアルタイムfastx コーナー検出
Pynqでカメラ画像をリアルタイムfastx コーナー検出marsee101
 
[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入
[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入
[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入Takahiro Moteki
 
機械学習 / Deep Learning 大全 (4) GPU編
機械学習 / Deep Learning 大全 (4) GPU編機械学習 / Deep Learning 大全 (4) GPU編
機械学習 / Deep Learning 大全 (4) GPU編Daiyu Hatakeyama
 
Network weight saving_20190123
Network weight saving_20190123Network weight saving_20190123
Network weight saving_20190123Masakazu Shinoda
 
【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces Underfitting【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces UnderfittingDeep Learning JP
 
(講演資料)開発現場で役立つ論文の書き方のお話
(講演資料)開発現場で役立つ論文の書き方のお話(講演資料)開発現場で役立つ論文の書き方のお話
(講演資料)開発現場で役立つ論文の書き方のお話Makoto SAKAI
 
プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)
プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)
プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)Toshihiko Yamasaki
 
コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527
コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527
コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527ssuser5ec200
 
ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』
ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』
ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』Yamato OKAMOTO
 
技術系文書作成のコツ
技術系文書作成のコツ技術系文書作成のコツ
技術系文書作成のコツHideo Terada
 

Was ist angesagt? (20)

[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
[DL輪読会]Transframer: Arbitrary Frame Prediction with Generative Models
 
数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga Jiro
数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga Jiro数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga Jiro
数理モデリングからはじめるPython数理最適化 PyData.Tokyo 2017/6/28 Retty Inc. Iwanaga Jiro
 
[DL輪読会]Autonomous Reinforcement Learning: Formalism and Benchmarking
[DL輪読会]Autonomous Reinforcement Learning: Formalism and Benchmarking[DL輪読会]Autonomous Reinforcement Learning: Formalism and Benchmarking
[DL輪読会]Autonomous Reinforcement Learning: Formalism and Benchmarking
 
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみたFacebookの人工知能アルゴリズム「memory networks」について調べてみた
Facebookの人工知能アルゴリズム「memory networks」について調べてみた
 
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object Detection
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object Detection[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object Detection
[DL輪読会]Libra R-CNN: Towards Balanced Learning for Object Detection
 
3週連続DDDその3 ドメイン駆動設計 戦略的設計
3週連続DDDその3  ドメイン駆動設計 戦略的設計3週連続DDDその3  ドメイン駆動設計 戦略的設計
3週連続DDDその3 ドメイン駆動設計 戦略的設計
 
工数見積りのぶれ幅を理解してチームの見積り精度を上げた話
工数見積りのぶれ幅を理解してチームの見積り精度を上げた話工数見積りのぶれ幅を理解してチームの見積り精度を上げた話
工数見積りのぶれ幅を理解してチームの見積り精度を上げた話
 
マインドフルネスと人工知能
マインドフルネスと人工知能マインドフルネスと人工知能
マインドフルネスと人工知能
 
Pynqでカメラ画像をリアルタイムfastx コーナー検出
Pynqでカメラ画像をリアルタイムfastx コーナー検出Pynqでカメラ画像をリアルタイムfastx コーナー検出
Pynqでカメラ画像をリアルタイムfastx コーナー検出
 
[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入
[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入
[社内勉強会]ワークフローエンジンdigdag研究&プロダクトF.O.Xに導入
 
機械学習 / Deep Learning 大全 (4) GPU編
機械学習 / Deep Learning 大全 (4) GPU編機械学習 / Deep Learning 大全 (4) GPU編
機械学習 / Deep Learning 大全 (4) GPU編
 
Network weight saving_20190123
Network weight saving_20190123Network weight saving_20190123
Network weight saving_20190123
 
【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces Underfitting【DL輪読会】Dropout Reduces Underfitting
【DL輪読会】Dropout Reduces Underfitting
 
(講演資料)開発現場で役立つ論文の書き方のお話
(講演資料)開発現場で役立つ論文の書き方のお話(講演資料)開発現場で役立つ論文の書き方のお話
(講演資料)開発現場で役立つ論文の書き方のお話
 
プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)
プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)
プレゼン・ポスターで自分の研究を「伝える」 (How to do technical oral/poster presentation)
 
TVM の紹介
TVM の紹介TVM の紹介
TVM の紹介
 
コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527
コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527
コンピュータビジョンで作る未来の栽培技術POL共催セミナー_20220527
 
nginxの紹介
nginxの紹介nginxの紹介
nginxの紹介
 
ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』
ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』
ICLR'19 研究動向まとめ 『Domain Adaptation』『Feature Disentangle』
 
技術系文書作成のコツ
技術系文書作成のコツ技術系文書作成のコツ
技術系文書作成のコツ
 

Mehr von TRUE_RUTILEA

RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」
RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」
RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」TRUE_RUTILEA
 
RUTILEA社内勉強会第6回 「超解像」
RUTILEA社内勉強会第6回 「超解像」RUTILEA社内勉強会第6回 「超解像」
RUTILEA社内勉強会第6回 「超解像」TRUE_RUTILEA
 
RUTILEA社内勉強会第5回 「強化学習」
RUTILEA社内勉強会第5回 「強化学習」RUTILEA社内勉強会第5回 「強化学習」
RUTILEA社内勉強会第5回 「強化学習」TRUE_RUTILEA
 
RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」
RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」
RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」TRUE_RUTILEA
 
RUTILEA社内勉強会第2回 「多重検定」
RUTILEA社内勉強会第2回 「多重検定」RUTILEA社内勉強会第2回 「多重検定」
RUTILEA社内勉強会第2回 「多重検定」TRUE_RUTILEA
 
RUTILEA社内勉強会第1回 「転移学習」
RUTILEA社内勉強会第1回 「転移学習」RUTILEA社内勉強会第1回 「転移学習」
RUTILEA社内勉強会第1回 「転移学習」TRUE_RUTILEA
 
RUTILEA社内勉強会第3回 「意外な統計」
RUTILEA社内勉強会第3回 「意外な統計」RUTILEA社内勉強会第3回 「意外な統計」
RUTILEA社内勉強会第3回 「意外な統計」TRUE_RUTILEA
 

Mehr von TRUE_RUTILEA (7)

RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」
RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」
RUTILEA社内勉強会第7回 「LSTMを用いた異常検知」
 
RUTILEA社内勉強会第6回 「超解像」
RUTILEA社内勉強会第6回 「超解像」RUTILEA社内勉強会第6回 「超解像」
RUTILEA社内勉強会第6回 「超解像」
 
RUTILEA社内勉強会第5回 「強化学習」
RUTILEA社内勉強会第5回 「強化学習」RUTILEA社内勉強会第5回 「強化学習」
RUTILEA社内勉強会第5回 「強化学習」
 
RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」
RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」
RUTILEA社内勉強会第4回 「敵対的生成ネットワーク(GAN)」
 
RUTILEA社内勉強会第2回 「多重検定」
RUTILEA社内勉強会第2回 「多重検定」RUTILEA社内勉強会第2回 「多重検定」
RUTILEA社内勉強会第2回 「多重検定」
 
RUTILEA社内勉強会第1回 「転移学習」
RUTILEA社内勉強会第1回 「転移学習」RUTILEA社内勉強会第1回 「転移学習」
RUTILEA社内勉強会第1回 「転移学習」
 
RUTILEA社内勉強会第3回 「意外な統計」
RUTILEA社内勉強会第3回 「意外な統計」RUTILEA社内勉強会第3回 「意外な統計」
RUTILEA社内勉強会第3回 「意外な統計」
 

RUTILEA社内勉強会第8回 「シリアル通信」

Hinweis der Redaktion

  1. ところで... クロック周波数をあげる=それに準じて通信速度もあげないとコンピュータの進歩に追いつかない
  2. 半二重だとケーブルの数が少なくなるが,片方が話している間はもう片方は話せない 全二重だとケーブルは増えるが,送受信を同時に行える
  3. 非同期式 調歩同期式とも言う 餅つきに例えるなら ひとつきごとに掛け声をかけるのが同期式 最初に1秒間隔でつきます,せーの,といってつくのが非同期式 同期式は余分なケーブルが増えるが,信頼性が高く 非同期式はケーブルが少なくなるが,同期信号分通信効率が悪くなる. この図だと1byteごとに2bitの同期信号が必要 非同期だと構造が簡単
  4. これらから,より高速かつ正確に通信を行うために 物理的なコネクタを統一し, 通信プロトコルを策定し, バッファーがフローした時の対処や, データの訂正, などなどいろんな機能を付け足した規格が これらです
  5. RS232C 過去あらゆる周辺機器をつないでいた. 非同期式通信も同期式通信もできる規格ではある. 全二重通信 非同期式通信がメイン ケーブルの長さはmax15m ただし1:1の接続しかできなかった USBピンは4つ 半二重 USB3.0から9つになって全2重になった 127台同時に接続可能 USBは送受信のプロトコルがとてもややこしいため,単純に数値データを送るにもIC一個分の処理が必要 ある程度大容量のデータを送る際に便利 プロトコルRS232Cでは送信要求など,通信における役割に対して専用の伝送路を作っていたが, USBではプロトコルに組み込まれている またRS232Cでは一度に送るデータの大きさは可変だったが, USBでは決まっているなど,違いがある
  6. I2Cはバス方式なので,配線を工夫しとくと,断線のリスクを回避できる センサによってI2C接続のものと,アナログ接続のものがあるので注意 I2Cは最大112このセンサをつけることができる 7bit-16の予約アドレス 何番ピンに刺したセンサ,ではなく何番アドレスに設定したセンサと指定できるので勝手がいい SPI通信は,スレーブセレクト線という信号線を接続している対象1っこにつき一本接続するので, センサはいくらでも接続して良いが,センサの数だけケーブルが増えていく どちらにせよ,周辺機器ごとにピンを設定するよりはるかに多くの周辺機器を接続できる.
  7. I2Cの規格では 寄生容量は最大400pF