🗐 電装工芸日記 - 舞台照明機器の製作とか -

今年は開発案件を進めたい

or 管理画面へ

タグ「Art-Net」を含む投稿[131件]

Icon of admin
 Art-Net切替器の構成メモ
・マザーボード:EtherNet-Portを2つ、Wi-fiを1つ持つ RaspberryPi (CM4 + Dual Ether Boardなど)
・Ether Hub:ごく普通の EtherNet-Hub × 2
・NICの設定:OEMコードとMACアドレスからIPv4アドレスを定義しこれを基本アドレスとする
・ネットワークの構成:ネットワークはArt-Net切替器を挟んで卓側とノード側の2ゾーン構築する。この2ゾーンは全く同じ構成とする。Wi-fiは操作用のスマホやタブレットなどを接続するアクセスポイントとする。
・IPアドレスの工夫:手打ちやArtPollを用いてネットワーク上のArt-NetデバイスのIPアドレスを取得し、卓側ゾーンのArt-NetデバイスのIPアドレスをノード側ゾーンのエイリアスとして設定し、ノード側ゾーンのArt-NetデバイスのIPアドレスを卓側ゾーンのエイリアスとして設定する。

追記
 必要になりそうなコードをChatGPTに聞いたところそれらしいモノが出てきました。これで動いたらこの上なく便利ですね。雛形であってもChatGPTと10分もやりとりするだけで得られるのは生産性が無茶苦茶いい。IPアドレスのエイリアスを一覧の状態にするコードを尋ねたのですが自分ですべて書いたら何日かかったでしょう。
 こういった手段でC言語の関数ライブラリを増やしていけばいいのかもしれません。
 ただ、概要を理解して質問しないと求める答えに近づくには時間が掛かるようです。

追記の2
 「IPv4アドレスの配列から「0.0.0.0」と重複を削除する」とか
 「4バイトのchar配列からIPv4アドレスの文字列配列を作る」とか
 「IPv4アドレスの文字列配列から4バイトのchar配列を作る」などの一見地味だけど絶対必要になる処理は chatGPT で一発解決。先人が作った関数ライブラリがあれば簡単ですが、自作するには案外時間がかかったりする代物かもしれません。得られたコードを整理して関数ライブラリ化しヘッダーファイルまで作っておけば便利に使えそうです。この他にも使いそうなローレベルの関数を chatGPT に質問してコレクションしています。IPv4アドレスの一覧からIPアドレスのエイリアスをNICに定義する処理も得ましたが、Google検索だけで自作するには数週間かかったかもしれません。これは本当に凄い。Google検索で先人たちの成果を参考に書いていた時とやっていることは同じですが、より答えに近いところに短時間で到達出来るので生産性は良さそうです。別にC言語を身に着けたいのではなく、C言語でないと処理速度を確保出来ないから仕方なくC言語で書いているだけですからね。
 ただ、やってて思ったのですが、全体のアルゴリズムを chatGPT にまとめてもらうにはプロの設計さん並みの知識と説明力が必要かもしれません。求める結果と状況を適切な言葉で簡潔に表さないといけないからです。AIはこちらの求めていることを推測しようとしてくれますが、説明が足りなければ、AIからの提案を理解出来なければ、その先に進むことは出来ません。いや、無料で得られる範囲では限度があると思うべきでしょう。

#器具の製作 #[Art-Net] #C言語
Icon of admin
 現場に出るまで少し時間があったので Art-Net切替器について考えてみました。
 Art-Net切替器を挟んで物理的なネットワークゾーンが二つある状態になります。片方には卓が数台居て、片方にはノードが数台居ます。これらを全く同じ構成に見えるようにしたらどうかなと。Art-Net切替器の卓側のネットワークインターフェースにはノードのIPアドレスを持ったエイリアスを作り、ノード側のネットワークインターフェースには卓のIPアドレスを持ったエイリアスを作るのです。それぞれのゾーンは見た目が全く同じになり、エイリアスのIPアドレスへの通信はArt-Net切替器で受信されます。もちろん、エイリアスであってもネットワークインターフェースに実在するIPアドレスですからsocketによる通信は普通の手段で可能なハズです。
 DMXのレベルデータを扱うArtDmxだけなら不用かもしれませんが、出来るだけクソ真面目にやってみようかなと。
 ちょっと面倒ではありますが、こういうことでいいのかな?

#器具の製作 #[Art-Net]
Icon of admin
 なんとなく RDM について調べを進めてみました。
 ArtDmx はブロードキャストによる一方通行の通信ですが、RDM はユニキャストによる双方向通信です。
 ArtDmx の中継は簡単ですが、RDM の中継はどうやりましょうってのが現在の懸念。
 切替器のIPアドレスは卓やRDMノードとは無関係なIPアドレスを用います。中継するのですから卓やRDMノードからの送信を一度受信して送信しなおすことになりますが、全く関係ないIPアドレスを持つ切替器でどうやってそれらからの送信を受信するかが懸念というか課題となっています。
 ArtpollでRDMノードを確認して対応したソケットをすべて作るか、ネットワークキャプチャで通信をすべて読んでフィルタするかになりそうですが、どうするにせよ今の知識の範囲では対応できません。

追記
 TCP/IPでは条件がややこしくなりますが、UDP/IPならばC言語のsocketではポートを指定してすべてのIPアドレスから受信が簡単に出来るそうな。送信元IPアドレスとポートを指定しても送信もできるそうな。
 もっと調べないとわからないけど、この方向で対応出来そうな気がする。

追記の2
 socketはネットワークインターフェースに設定されていないIPアドレスは扱えない様子。
 ネットワークインターフェースにエイリアスドレスを設定すれば良いのかもしれない。

#器具の製作 #[Art-Net]
Icon of admin
 Art-Net の実験を始めた当初、複数の卓からの Art-Net をごく普通の Ether-Hub を通じて RaspberryPi で受信し、特定のIPアドレスからの Artdmxパケットを送り出す実験をしました。主機能はコレの延長線でいいのだと思います。
 必要なのはそれらしい操作環境です。web操作が一番コストがかかりませんし、以前 RaspberryPi を web画面で操作したことがありますので経験はあります。やったことがないのは CGI と主機能を結びつける方法としてローカルループバックでソケット通信をすることですが、難しかったら全体が構成出来ませんのでナンとかなるっしょ。以前は RAMディスクをこさえてファイル経由でデータを共有してました。これも悪くないのですが、ソケット通信の方が直球かなと。

#器具の製作 #[Art-Net]
Icon of admin
 Art-Net 切替器は選択した卓からの ArtDmxパケットを通すことを主機能としますが、RDMパケットは ArtDmx とは別に卓を選択出来るようにしようと思います。もちろん双方向です。
 残念ながら RDM に対応した卓もフィクスチャーもありませんのでチェックする環境を作れませんが、これは照明器具の販売やコンサルを生業にされている知人に協力を仰ぎましょう。
 一番の問題は私の時間と気力です。今のところこれらの在庫が切れています・・・。

#器具の製作 #[Art-Net]
Icon of admin
 DMX切り替え機を引き渡しました。
 ちょっと一息です。

 オーダーしてくれた知人と話をしたのですが、DMXのチャンネル数が増えてきたのでもっと沢山のユニバースを扱いたいとのこと。
 ならば Art-Net の切り替え機がイイんぢゃないかと。卓を複数使いそうな現場で使う卓なら Art-Net くらい出すでしょうし。
 これなら妄想中の Art-Net パッチの簡易版的に構成するだけです。ソケットで受信した特定のIPアドレスからのパケットをそのまま送り出すだけで、デコード/エンコードもパッチも、よもやディレイも必要ありません。製作する物理回路はほぼ無く、本機能は RaspberryPi 1個で完結します。その気になれば3日あれば書けてしまいそうなアプリです。ケース作りは別な話ですけど。
 手間暇かかりそうなのは「パケットを中継する送信元IPアドレス(卓)を選択する機能」です。物理的な操作盤を作るのは面倒でコストもかかりますので、操作頻度が少ない装置ですからwifi経由のブラウザ操作でいいでしょう。操作のweb画面と本体アプリにソケット通信するCGIを書くだけです。

追記
 装置の構成図です。
20250924141120-admin.jpg
 操作盤を物理キーとモニタにすれば Art-Net パッチそのものです。

#器具の製作 #[Art-Net]
Icon of admin
 今日の現場で EoC に Art-Net 通してみます。
 倉庫で数十時間のランニングテストをしましたので大丈夫だと思いますが、現場での初使用は怖いものです。
 願わくば光ケーブルで10Gbpsくらいの帯域を確保したいところですが光ケーブルはデリケートで高価です。その点、同軸ケーブルは機械強度が高く安価なのでウチの会社に向いていると思います。
 スループットはカタログ値で100Mbpsですが8ユニバースくらいなら扱えそうなのでこれもウチの会社には手ごろです。
 現実的な機能を出来る限り安価に確保することが大切だと思っています。

追記
 感動も不満も何事もなく平然と動きます。
 タイムラグがあるような気もするけどホール灯体の遅れに比べたら気が付かないレベル。
 えーんでないか。

#[Art-Net]
Icon of admin
 Art-Net node の電源には在庫の電源基板を使うことにしました。
20250703053503-admin.jpg
 数年前に倒産してしまったイーター電機の製品です。この会社の製品はサイズの割に出力が大きく廉価版でも出力波形が綺麗。優秀なメーカーが安いだけの中国製に駆逐されてしまったのは残念でならず、同じモノを買うことは叶いませんが、医療グレード一歩手前の安定した動作を求めたいならこういった製品がいい。国産にこだわりませんが、TDKラムダさんが頑張っていることが救いです。
 とは言うものの、裸の基板ですから何かしらの函に入れねばいけません。もちろん3Dプリンタのお仕事です。無料で使う手続きがわかったFusionでサクッとモデリングしてプリントです。寸法の出し方がわかってきたので一発OK。実装ではひっくり返して写真の表を下にします。
 仮組みにも搬送時の振動に耐えらえる作りは求めたい。

#器具の製作 #[Art-Net]
Icon of admin
 EoC を仮組みしました。
 ちゃんとした箱を作るには手間も時間もかかるのでテスト架台の合板に仮固定です。
 サンテナーB#50に入る合板を規格品にしてテスト架台にしています。

 卓側。EoC コンバータと Hub(PoE電源付)です。
202507021520251-admin.jpg
 出先側。EoC コンバータと Art-Net node です。ACアダプタは外れ落ちそうなので別な電源を考えてみます。
202507021520252-admin.jpg
 レセップステー。3Dプリンタで作ったノイトリックのレセップの取付ステーです。仮組みではこういったモノがあると便利です。
20250702152025-admin.jpg

 同軸ケーブルは75Ω(3C相当)/100mです。
 node からの出力を DoctorMX でモニターしていますが、今のところ正常の様です。

 ほぼこの内容を2Uくらいのラックケースに内蔵しようってのが今の構想です。
 卓側にはインカムのパワーサプライとUPS(無停電電源装置)、出先側には Hub(非PoE) を追加しようかなと。

#[Art-Net]
Icon of admin
 sACN の規格書を読みました。違いは大きいようでそれ程でもありませんので、Art-Net に対応してから考えても良さそうな感じがします。
 Art-Net と同様にライセンス料は無料ですが、sACN の方が望ましい規格のように思います。Art-Net がイイ加減過ぎって気持ちは拭えませんけど、ANSI にも ESTA にも登録されていないのは登録費用以前に理由があるように思ったりして。。。
 違いがそれ程でもなく、拡張という意味で対応出来そうなので背伸びせずに行きましょう。

#sACN #[Art-Net]

■思ってみた

稲刈りが終わったと思ったら夜のBGMは秋の虫の音です。

編集

■全文検索:

複合検索窓に切り替える

■複合検索:

  • 投稿者名:
  • 投稿年月:
  • #タグ:
  • カテゴリ:
  • 出力順序:

■日付検索:

■カレンダー:

2025年9月
123456
78910111213
14151617181920
21222324252627
282930

■カテゴリ:

■最近の投稿:

最終更新日時:
2025年10月21日(火) 07時10分40秒