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.7k
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
410
KiCadでPad on Viaの基板作ってみた
iotengineer22
0
500
オープンソースのハードウェアのコンテストに参加している話
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
20250807_Kiroと私の反省会
riz3f7
0
240
Cloud WANの基礎から応用~少しだけDeep Dive~
masakiokuda
3
110
形式手法特論:位相空間としての並行プログラミング #kernelvm / Kernel VM Study Tokyo 18th
ytaka23
3
1.4k
AWS DDoS攻撃防御の最前線
ryutakondo
1
170
Amazon Qで2Dゲームを作成してみた
siromi
0
150
Strands Agents & Bedrock AgentCoreを1分でおさらい
minorun365
PRO
8
360
薬屋のひとりごとにみるトラブルシューティング
tomokusaba
0
370
いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか(改)
nullpo_head
7
2.7k
LLMをツールからプラットフォームへ〜Ai Workforceの戦略〜 #BetAIDay
layerx
PRO
1
1k
Segment Anything Modelの最新動向:SAM2とその発展系
tenten0727
0
840
Claude Codeは仕様駆動の夢を見ない
gotalab555
23
6.8k
Amazon Inspector コードセキュリティで手軽に実現するシフトレフト
maimyyym
0
120
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
25
1.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Into the Great Unknown - MozCon
thekraken
40
2k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
20k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Measuring & Analyzing Core Web Vitals
bluesmoon
8
550
The Cost Of JavaScript in 2023
addyosmani
52
8.8k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
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を弄りたい・遊びたい方におすすめです
最後に ご清聴ありがとうございました