<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
	<title><![CDATA[ No.483 - 電装工芸日記 - 舞台照明機器の製作とか - ]]></title>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi</link>
	<description><![CDATA[ 今年は開発案件を進めたい ]]></description>
	<language>ja</language>
	<copyright>Copyright 2026</copyright>
	<lastBuildDate>Fri, 24 Apr 2026 07:46:09 +0900</lastBuildDate>
	<generator><![CDATA[ <!-- てがろぐ Version: -->Powered by <a href="https://www.nishishi.com/cgi/tegalog/" target="_top">てがろぐ</a> Ver 3.4.0 ]]></generator>
	<!-- BEGIN ENTRIES -->
	<!-- One Entry Data for RSS Feed -->
<item>
	<title><![CDATA[ 　オレメモであります。 ]]></title>
	<description><![CDATA[ 　オレメモであります。<br />　参考になりそうな先達のページ<br /><br />● UDP/IP通信全体の参考<br /><a class="url" href="https&#58;//hensa40.cutegirl.jp/archives/780" target="_blank" title="https&#58;//hensa40.cutegirl.jp/archives/780">UDP / IP でパケットの送受信を行う</a><br />● broadcast通信の参考<br /><a class="url" href="https&#58;//www.geekpage.jp/programming/linux-network/broadcast.php" target="_blank" title="https&#58;//www.geekpage.jp/programming/linux-network/broadcast.php">UDPブロードキャスト送信サンプル</a><br />● ネットワークデバイスを指定した通信の参考<br /><a class="url" href="https&#58;//qiita.com/KazumichiShirai/items/969fc588299e0f2c9681" target="_blank" title="https&#58;//qiita.com/KazumichiShirai/items/969fc588299e0f2c9681">Ethernetインターフェース(eth0, eth1)を指定してソケットを作成する (Linux, C, Raspberry Pi)</a> <br />● 受信タイムアウトの参考<br /><a class="url" href="https&#58;//daeudaeu.com/timeout-recv/" target="_blank" title="https&#58;//daeudaeu.com/timeout-recv/">selectを使用してタイムアウト付き受信を実現する</a> &lt;= recvもrecvfromも受信があるまでひたすら待ち続けるので、タイムアウトさせることは必須。<br /><a class="url" href="https&#58;//ryo-n.hatenablog.com/entry/20080125/1201265780" target="_blank" title="https&#58;//ryo-n.hatenablog.com/entry/20080125/1201265780">UDP通信におけるselectの使い方。</a> &lt;= recvの例が多い中、recvfromの書式を確認出来る。recvfromを使う理由は送信元アドレスを取得したいから。<br />● 時間の扱い方<br /><a class="url" href="https&#58;//www.mm2d.net/main/prog/c/time-01.html" target="_blank" title="https&#58;//www.mm2d.net/main/prog/c/time-01.html">時間情報の取得方法と扱い方</a> &lt;= これの５ページ目の「POSIX環境」が結構大事。DelayをするにもDMXのタイムアウトをするにもこれが必要。<br />● ターミナルの行長と行数を取得する<br /><a class="url" href="https&#58;//zombie-hunting-club.net/archives/300" target="_blank" title="https&#58;//zombie-hunting-club.net/archives/300">ターミナルのサイズを取得する</a><br /><a class="url" href="https&#58;//zenn.dev/kusaremkn/articles/abdbd2f38c3d98b145eb" target="_blank" title="https&#58;//zenn.dev/kusaremkn/articles/abdbd2f38c3d98b145eb">ターミナルの幅と高さを得る</a> <br />● ANSIエスケープシーケンス<br /><a class="url" href="https&#58;//qiita.com/PruneMazui/items/8a023347772620025ad6" target="_blank" title="https&#58;//qiita.com/PruneMazui/items/8a023347772620025ad6">ANSIエスケープシーケンス チートシート</a> <br /><br />　この辺りを参考にすれば「ネットワークデバイスを指定してbroadcastで通信する」が出来そうな気がします。<br />　ただし、１行々々読み込んで使われている構造体をよく把握することが大切です。構造体の中に必要な情報が隠れていることが多いからです。構造体の中に構造体があったりもするので、十分に読み込まないといけません。<br /><br />　実験は受信が当面の課題となり、<br />１）ネットワークデバイスを指定せずArt-Netを受信する。&lt;= とにかく受信する<br />２）ネットワークデバイスを指定してArt-Netを受信する。&lt;= ネットワークデバイスを制限して受信する。<br />３）送信元IPアドレスを取得し、IPアドレスをもとに受信値を振り分ける。&lt;= 複数の送信元(卓)がある場合の不確実性排除とミックス処理のためには不可欠。<br />　といった手順で進めることになろうかと思います。<br />　受信値を確認するため、習作を兼ね、バイナリをダンプ表示をするライブラリも作ってみましょう。<br /><br /><a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%ef%bc%a3%e8%a8%80%e8%aa%9e" class="taglink" title="Ｃ言語">#Ｃ言語</a> <a href="https&#58;//www.densokogei.jp/tegalog/tegalog.cgi?tag=%41%72%74%2d%4e%65%74" class="taglink" title="Art-Net">#&#91;Art-Net&#93;</a> -- Posted by 電装工芸 〔980文字〕 ]]></description>
	<link>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=483</link>
	<guid>https://www.densokogei.jp/tegalog/tegalog.cgi?postid=483</guid>
	<category>tegalog</category>
	<pubDate>Tue, 24 Jan 2023 11:34:36 +0900</pubDate>
</item>

	<!-- END ENTRIES -->
</channel>
</rss>

