Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TSN(Time-Sensitive Networking)を環境構築して遊んでみた
Search
misoji engineer
March 25, 2023
Technology
0
4.8k
TSN(Time-Sensitive Networking)を環境構築して遊んでみた
TSN(Time-Sensitive Networking)を環境構築して遊んでみた
ミソジ 2023/3/26
第13回FA設備技術勉強会 in けいはんな
#FA_Study
misoji engineer
March 25, 2023
Tweet
Share
More Decks by misoji engineer
See All by misoji engineer
Zephyr RTOSを使った開発コンペに参加した件
iotengineer22
1
450
KiCadでPad on Viaの基板作ってみた
iotengineer22
0
540
オープンソースのハードウェアのコンテストに参加している話
iotengineer22
1
1.1k
360° Object Detection Robot Car
iotengineer22
0
250
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
1.8k
Other Decks in Technology
See All in Technology
マイクロモビリティシェアサービスを支える プラットフォームアーキテクチャ
grimoh
1
230
攻撃と防御で実践するプロダクトセキュリティ演習~導入パート~
recruitengineers
PRO
1
190
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
モダンな現場と従来型の組織——そこに生じる "不整合" を解消してこそチームがパフォーマンスを発揮できる / Team-oriented Organization Design 20250825
mtx2s
5
530
RAID6 を楔形文字で組んで現代人を怖がらせましょう(実装編)
mimifuwa
0
300
AIとTDDによるNext.js「隙間ツール」開発の実践
makotot
5
690
あとはAIに任せて人間は自由に生きる
kentaro
3
1.1k
Go で言うところのアレは TypeScript で言うとコレ / Kyoto.なんか #7
susisu
6
1.8k
microCMS 最新リリース情報(microCMS Meetup 2025)
microcms
0
100
LLMエージェント時代に適応した開発フロー
hiragram
1
410
Amazon Bedrock AgentCore でプロモーション用動画生成エージェントを開発する
nasuvitz
6
430
AIドリブンのソフトウェア開発 - うまいやり方とまずいやり方
okdt
PRO
9
600
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
780
A Tale of Four Properties
chriscoyier
160
23k
Music & Morning Musume
bryan
46
6.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Transcript
TSN(Time-Sensitive Networking)を 環境構築して遊んでみた ミソジ 2023/3/26 第13回FA設備技術勉強会 in けいはんな #FA_Study
自己紹介 名前:ミソジ @misoji_engineer 仕事:ハードウェア系のエンジニア エンジニアの電気屋さん(https://misoji-engineer.com/) 「ハードウェア」などの技術ネタをブログにしてます
アジェンダ • TSN(Time-Sensitive Networking)で遊びたい • どうやったらテスト環境構築できるか調べてみる • いろんなパターンでテストしてみる
• まとめ
TSN(Time-Sensitive Networking) リアルタイム性がある拡張された標準イーサネット。 何かカッコいい!遊んでみたい! 時刻同期 (Synchronization) 信頼性 (Reliability) 遅延
(Latency) リソース管理 (Resource management) 次世代の車載 ネットワーク TSN対応 PLC(PC) TSN対応ハブ
FAのTSN対応機器も一部あるが… 怪しい趣味で 周辺機器を含めて集めるには 少しハードルが高い… 既に販売中のTSN対応のFA機器もあるが… ・Beckoff_EK1000 ・三菱電機_CC-Link IE TSN …
TSN対応 ハブ(カプラー) TSN対応PLC
やりたいことは沢山! ・TSNでn(ナノ)secレベルの時刻同期 ・市販PCから簡単にTSN通信 ・TSNの通信設定を確認・調整 ・TSNの時分割(IEEE 802.1QBV)の確認 ・TSNのパケットをキャプチャ(解析) ・TSNの伝送遅延測定を確認 他にも色々… TSNを色々と弄れて+安い
個人環境が欲しい! 重要!
エンジニアのいつもの 無いならば~ TSNの環境が
エンジニアのいつもの 作ればいいじゃない! TSNの環境を
TSNの環境構築できるのか? • 次世代の車載ネットワーク関係者でもない • TSN対応したFA機器も触ったことがない • ハード屋で通信プロトコルの専門家でもない 100%趣味の個人でTSN扱えるの…?
ちょっとTSNを調べてくる 1.適当なPC・デバイスではTSN使えないの? 2.TSNの通信ができるPCに改造する 3.TSNスイッチ(ハブ)にもなれる評価ボード 4.TSNの通信テスト 安くテストできる環境構築
1. 適当なPC・デバイスでは TSN使えないの?
適当なPC・デバイスではTSNは使えない TSNにはPTP(ハードウェアタイムスタンプ)が必要 ※PTP(Precision Time Protocol)…時刻同期の規格 ※正確にはPTPv2(IEEE 1588-2008)を簡略化したgPTP
TSNには時刻同期(PTP)の環境構築が必要 PTPの通信ができる環境構築。 ※金融業界での高精度取引、放送業界の4K/8K、通信業界のLTE …等々にも使われている通信環境 TSN対応 PLC(PC) TSN対応 デバイス TSN対応 デバイス
PTP PTP ハードウェアタイムスタンプで us以下の時刻精度 タイムスタンプ **:**:** タイムスタンプ **:**:** タイムスタンプ **:**:**
2. TSNの通信ができる PCに改造する
TSNの通信ができるPCを作る (家にある)市販のデスクトップPCを改造 5~6年前の型落ち中古PC(2万円)
TSNの通信ができるLANカード(NIC) 数千円でPTP(時刻同期)対応のLANカードが購入できます 詳細はブログ記事に記載済 https://misoji-engineer.com/archives/ptp-lan-card.html
PCのテスト環境はLinuxとlinuxptp TSNの通信ができるPC(テスト環境)が出来ました。 詳細はブログ記事に記載済 https://misoji-engineer.com/archives/linuxptp-ubuntu.html PTPの通信に関しては オープンソースのlinuxptpを利用 https://linuxptp.sourceforge.net/ OSはUbuntu(Linux) ハードウェアタイム スタンプOK!
PTPの通信の初期化OK!
3. TSNスイッチ(ハブ)にもなれる 評価ボード
TSNスイッチ(ハブ)対応のデバイス XilinxのKR260(FPGAボード)を使用 ※現時点では(個人で買える)TSN対応のボードが非常に少ない… 今回は予算の関係で 3つ目以降のデバイスは断念 FPGA…ハードレベルで ロジック書き換え可能なIC
KR260は産業用向けの評価ボード Xilinx公式の手順・サンプルに沿って環境を構築 ※詳細はブログ記事に記載済 https://misoji-engineer.com/archives/kr260-ubuntu.html 約6万円でした。 何とか個人でも買えるレベル…
4. TSNの通信テスト
TSNのテスト環境 TSN通信の機器を2台用意できました。 ※マスター・スレーブを逆にも出来ること確認済
TSNの時刻同期の確認 TSN通信でus以下の時刻同期を確認 ※詳細はブログ記事に記載済 https://misoji-engineer.com/archives/tsn-kr260.html
Wiresharkでパケットキャプチャも可能 TSNのネットワーク調査でWiresharkも使えます。 詳細はブログ記事に記載済 https://misoji-engineer.com/archives/tsn-packet.html
TSNの時分割(IEEE 802.1QBV) TSNの特徴である通信トラフィックをスケジューリング ※詳細はブログ記事に記載済 https://misoji-engineer.com/archives/tsn-time-synchronization.html 例えばFAだと 「位置精度」など重要な情報を 優先的に割り当てれる
TSNの動画デモ + 感想 1.TSNの時刻同期 2.TSN通信をWiresharkでの解析 3.TSNで遊んでみた(すごく個人的な)感想①②③ 代表的なパターンでのデモ + 感想
TSNの時刻同期のデモ ※動画のリンク先 https://youtu.be/uYP5x2dd3TE
Wiresharkで解析したデモ ※動画のリンク先 https://youtu.be/TaQrDHwTMNY
TSNで遊んでみた(すごく個人的な)感想① 1.標準のイーサネットの感覚で通信テスト・使える →今回あくまで大変だったのは「通信環境の構築」 テスト開始したら、よくあるネットワーク弄る感じで色々遊んでいます。 EDS、GSDML、ESI…とか、固有の設定が無くて楽。 →使う側・開発する側も、標準(普通の)イーサネット使う方が 余分な環境・コストはいらないし、特別に覚えることも少ないと思う。 使う分には「標準のイーサネット」の感覚 リアルタイム性は特に意識しなくても勝手やってくれる
…とN=1,趣味で遊び始めた奴が勝手に言っている
TSNで遊んでみた(すごく個人的な)感想② 2.標準イーサネットでus以下の時刻同期が簡単に取れる 世界線が徐々に近づいて来てる →現在は工場・FAなどで、同期した機械制御をするには、 EtherCAT,PROFINETなど含めた産業用イーサネットが主力(簡単)だと思う。 →ただ「5G」とか、その先の将来の通信ネットワーク網で、 ・標準のPC・デバイスでもPTPが使える ・「無線」でもPTPが簡単に使える とかなると、一気に状況・環境が変わってきそう。maybe…多分… 複数軸でusのリアルタイムの機械制御?
→普通のネット環境でも大丈夫! …という未来も遠くないのかもしれない。
TSNで遊んでみた(すごく個人的な)感想③ 3.現時点では、無理してTSNを使う必要は無いと思う →TSNでしか要件を満たせないFAでの場面は、現時点では多くない認識。 ユーザ側では「TSNが当たり前」という状況からでも遅くないと思う。 →ただ、まだ策定中の所も多いと思うが「~~TSN」「~~ over TSN」とか 産業ネットワーク業界もTSNを大分気にしている様子。 TSN対応含めて、これからの動きに筆者も1ユーザとして期待しています。
まだまだTSN対応した 機器・デバイスは少ない… これからの動きに期待しています。
詳細のまとめ記事リンク先 ・TSN通信の仕組みのまとめ。実際にテスト・調べてみた https://misoji-engineer.com/archives/tsn-matome.html
まとめ TSNを環境構築して十分に遊べました! TSNを弄りたい・遊びたい方におすすめです
最後に ご清聴ありがとうございました