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.9k
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
520
KiCadでPad on Viaの基板作ってみた
iotengineer22
0
670
オープンソースのハードウェアのコンテストに参加している話
iotengineer22
1
1.1k
360° Object Detection Robot Car
iotengineer22
0
270
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
1.9k
Other Decks in Technology
See All in Technology
analysis パッケージの仕組みの上でMulti linter with configを実現する / Go Conference 2025
k1low
1
250
ユニットテストに対する考え方の変遷 / Everyone should watch his live coding
mdstoy
0
110
Why React!?? Next.jsそしてReactを改めてイチから選ぶ
ypresto
10
3.8k
CData MCP ナイト!「CData × Oracleで実現する新しいデータ活用 ― 国産SaaS 連携から MCP Server for Oracle Database まで」
shisyu_gaku
0
190
Trust as Infrastructure
bcantrill
0
230
API提供者のためのMCPサーバー設計ガイド / MCP Server Design Guide for API Providers
yokawasa
0
240
PyCon JP 2025 DAY1 「Hello, satellite data! ~Pythonではじめる衛星データ解析~」
ra0kley
0
830
"複雑なデータ処理 × 静的サイト" を両立させる、楽をするRails運用 / A low-effort Rails workflow that combines “Complex Data Processing × Static Sites”
hogelog
3
1.4k
PythonとLLMで挑む、 4コマ漫画の構造化データ化
esuji5
0
120
北海道の人に知ってもらいたいGISスポット / gis-spot-in-hokkaido-2025
sakaik
0
190
Go Conference 2025: GoのinterfaceとGenericsの内部構造と進化 / Go type system internals
ryokotmng
3
540
FastAPIの魔法をgRPC/Connect RPCへ
monotaro
PRO
1
580
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
185
22k
Code Reviewing Like a Champion
maltzj
525
40k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
RailsConf 2023
tenderlove
30
1.2k
GraphQLとの向き合い方2022年版
quramy
49
14k
It's Worth the Effort
3n
187
28k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Building Adaptive Systems
keathley
43
2.8k
Making Projects Easy
brettharned
118
6.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Facilitating Awesome Meetings
lara
56
6.6k
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を弄りたい・遊びたい方におすすめです
最後に ご清聴ありがとうございました