全年全月5日の投稿[47件](4ページ目)
2023年1月 この範囲を時系列順で読む この範囲をファイルに出力する
C言語はプロセスの管理方法を調査中です。
直近の課題はAr-Netパッチです。この機構は大きく分けて、(1)Art-Netエンジン(受信、パッチ、送信)、(2)DMXの状況モニタ表示、(3)ユーザーからのコマンド操作となります。
C言語で書けば主な機能をスレッドに分ければいいような気もしますが、スレッドを分けるのもプロセスを分けるのも手間は大差ないので、プロセスを分けておけばいいかなと。
先日も書きましたが、ランチャー的な親プロセスから各機能を子プロセスとして起動しようと思っています。これなら親プロセスで共有メモリを定義して子プロセスにポインタを渡すことが簡単だからです。また、子プロセスとして起動するなら親プロセスがプロセスIDを確実に把握出来ますので管理上のメリットもあります。
まだわからない調査中のことは、子プロセスの終了のさせ方です。killコマンドでプロセスを消す方法はありますが、後処理(設定の現在値の保存など)をしてから子プロセスを終了したいので、有無言わさずプロセスを消すkillコマンドはよろしくありません。望ましいのは、親プロセスからコマンドを送って子プロセス自身で終了させることです。Python的に考えるなら、親プロセスからの指示で子プロセスに何かしらの例外が発生してwhileをbreakで抜け出すような処理です。共有メモリでコマンドをやり取りするのが現実的だと思いますが、出来るだけシンプルで汎用的な方法を構築したいところです。
いずれにしても、親プロセスから子プロセスを起動し、プロセス間で通信(変数の共有)をし、親プロセスから子プロセスを終了させる方法の定型化です。
もう少し学習が進んでからになりますが、共有メモリの挙動も調査しないといけません。
共有メモリは複数のプロセスから読み書きできるメモリ空間ですが、マネジメントされていませんので衝突(読み書きの処理タイミングが被ること)による不整合が起きる可能性があります。これを回避する手段としてセマフォなどの機能があるのですが、出来るだけシンプルな方法を見つけたいと思っています。
調査したいのは、共有メモリに書き込み出来るプロセスを唯一とし、他のプロセスは読み出しのみとした場合にどうかという点です。機能的に共有メモリの読み書きは頻繁に行われますので出来るだけ手数を少なくしたいのですが、結果的に書き込みのタイミングをマネジメントしなくていいなら手数は最小だし、何かが必要だとしてもどこまでやるのかを知りたいワケです。
#C言語
直近の課題はAr-Netパッチです。この機構は大きく分けて、(1)Art-Netエンジン(受信、パッチ、送信)、(2)DMXの状況モニタ表示、(3)ユーザーからのコマンド操作となります。
C言語で書けば主な機能をスレッドに分ければいいような気もしますが、スレッドを分けるのもプロセスを分けるのも手間は大差ないので、プロセスを分けておけばいいかなと。
先日も書きましたが、ランチャー的な親プロセスから各機能を子プロセスとして起動しようと思っています。これなら親プロセスで共有メモリを定義して子プロセスにポインタを渡すことが簡単だからです。また、子プロセスとして起動するなら親プロセスがプロセスIDを確実に把握出来ますので管理上のメリットもあります。
まだわからない調査中のことは、子プロセスの終了のさせ方です。killコマンドでプロセスを消す方法はありますが、後処理(設定の現在値の保存など)をしてから子プロセスを終了したいので、有無言わさずプロセスを消すkillコマンドはよろしくありません。望ましいのは、親プロセスからコマンドを送って子プロセス自身で終了させることです。Python的に考えるなら、親プロセスからの指示で子プロセスに何かしらの例外が発生してwhileをbreakで抜け出すような処理です。共有メモリでコマンドをやり取りするのが現実的だと思いますが、出来るだけシンプルで汎用的な方法を構築したいところです。
いずれにしても、親プロセスから子プロセスを起動し、プロセス間で通信(変数の共有)をし、親プロセスから子プロセスを終了させる方法の定型化です。
もう少し学習が進んでからになりますが、共有メモリの挙動も調査しないといけません。
共有メモリは複数のプロセスから読み書きできるメモリ空間ですが、マネジメントされていませんので衝突(読み書きの処理タイミングが被ること)による不整合が起きる可能性があります。これを回避する手段としてセマフォなどの機能があるのですが、出来るだけシンプルな方法を見つけたいと思っています。
調査したいのは、共有メモリに書き込み出来るプロセスを唯一とし、他のプロセスは読み出しのみとした場合にどうかという点です。機能的に共有メモリの読み書きは頻繁に行われますので出来るだけ手数を少なくしたいのですが、結果的に書き込みのタイミングをマネジメントしなくていいなら手数は最小だし、何かが必要だとしてもどこまでやるのかを知りたいワケです。
#C言語
2022年10月 この範囲を時系列順で読む この範囲をファイルに出力する
盆と正月が一度に来た状況です。
コロナ明け感の反動だろうがなんだろうが現場を沢山頂けることは有難いのですが、それにしても多すぎ。
ですが、来週になるとそうでもない。明らかに休める日程。連休の魅力はわかるのですが、もちょっとバラけてくれんもんでしょうかねぇ~。
息抜きのインターカムパワーサプライ製作はイイ感じ。
内部の基板を中国に発注したので完成は届いた後ですがケースの仮組みが完了。
明日にでも写真に撮って揚げてみようと思います。
そういや、ノイトリックのXLRコネクタの値段が上がってます。インターカムパワーサプライにはなくてはならない部品です。
原材料の高騰、製造業の混乱、その上円安ですから仕方のないことですが、ちょっと前の倍以上の価格には驚きました。
納期はかかりますが、中華電器で65円(送料入れても160円)のXLR3Pレセプタクルをオーダーしました。
#本業 #電子工作
コロナ明け感の反動だろうがなんだろうが現場を沢山頂けることは有難いのですが、それにしても多すぎ。
ですが、来週になるとそうでもない。明らかに休める日程。連休の魅力はわかるのですが、もちょっとバラけてくれんもんでしょうかねぇ~。
息抜きのインターカムパワーサプライ製作はイイ感じ。
内部の基板を中国に発注したので完成は届いた後ですがケースの仮組みが完了。
明日にでも写真に撮って揚げてみようと思います。
そういや、ノイトリックのXLRコネクタの値段が上がってます。インターカムパワーサプライにはなくてはならない部品です。
原材料の高騰、製造業の混乱、その上円安ですから仕方のないことですが、ちょっと前の倍以上の価格には驚きました。
納期はかかりますが、中華電器で65円(送料入れても160円)のXLR3Pレセプタクルをオーダーしました。
#本業 #電子工作
回路図を描いたので基板も描いてみました。

描いたついでに中国に発注してみました。
銅膜を2ozと厚めにして少し高くなりましたが、10枚で$62(1ozなら$48)、送料が$16、合計$78です。日本円にすると12,000円超。
感光基板の価格と手作りの手間を考えたらまだまだ安価ですが、円相場の現実を実感。
#電子工作

描いたついでに中国に発注してみました。
銅膜を2ozと厚めにして少し高くなりましたが、10枚で$62(1ozなら$48)、送料が$16、合計$78です。日本円にすると12,000円超。
感光基板の価格と手作りの手間を考えたらまだまだ安価ですが、円相場の現実を実感。
#電子工作
2022年9月 この範囲を時系列順で読む この範囲をファイルに出力する
久しぶりに気力体力がある状態のオフになったので修理案件に手をつけています。販売店さん、遅くなってすみません。
自分で作ったモノが戻ってくるとどこが壊れるか傷むか凄く勉強になります。
と、言ってないでさっさと修理しろって。。。
#ガチ工作
自分で作ったモノが戻ってくるとどこが壊れるか傷むか凄く勉強になります。
と、言ってないでさっさと修理しろって。。。
#ガチ工作
2022年8月 この範囲を時系列順で読む この範囲をファイルに出力する
昨日こさえたアームレストは良い感じです。
一晩経過して思ったのですが、ニスの硬化が明らかに早い。
今までは原液のまま塗って完全に硬化するのに2-3日かかっていましたが、今回は20%くらいの希釈で24時間で完全に硬化しています。
猛暑で気温が高いのもあるかもしれませんが、水を足した方が早いのも不思議な気がします。原液のままですと表面が先に固まって中が固まらないのでしょうか。
正直言いますと、少し前に作った品でニスが足りない感じだったので水でカサ増ししたのが最初です。カスが落ちない程度に目止めになればと塗ったのですが、僅かな不足のために新品買うのもなぁ~というケチ心が由来です。面白い結果が出たので良かったのですが。
#ガチ工作
一晩経過して思ったのですが、ニスの硬化が明らかに早い。
今までは原液のまま塗って完全に硬化するのに2-3日かかっていましたが、今回は20%くらいの希釈で24時間で完全に硬化しています。
猛暑で気温が高いのもあるかもしれませんが、水を足した方が早いのも不思議な気がします。原液のままですと表面が先に固まって中が固まらないのでしょうか。
正直言いますと、少し前に作った品でニスが足りない感じだったので水でカサ増ししたのが最初です。カスが落ちない程度に目止めになればと塗ったのですが、僅かな不足のために新品買うのもなぁ~というケチ心が由来です。面白い結果が出たので良かったのですが。
#ガチ工作
2022年7月 この範囲を時系列順で読む この範囲をファイルに出力する
現場がひと段落したらホール資料の図面描きです。こちらの別件や作業量など考慮されずに知らないところで決まった納期とはいえ、過ぎていますから1日でも早く出さなきゃなりません。
建築のCADデータの使い方は要領が見えたのでピッチを上げましょう。
つか、どんな資料が必要か依頼主から仕様が来ないので何をどう描いたらいいかよくわからんのですけどね。
#本業
建築のCADデータの使い方は要領が見えたのでピッチを上げましょう。
つか、どんな資料が必要か依頼主から仕様が来ないので何をどう描いたらいいかよくわからんのですけどね。
#本業
auの障害のせいで通話が出来ず高額の契約を落としたなんて書き込みをする方がいます。ありえないとは言い切れませんが、本当にそうなのかな?
疑問なのは、そんなレベルの契約を担当する方が手持ちの携帯電話が使えなくなっただけで仕事が出来なくなるほど不器用だとは思えないことです。他のキャリアを持つ同僚知人、固定電話、数は減っても公衆電話もあります。タクシー飛ばして直接話しをしに行ってもいい。
本当ならお悔み申し上げますが、未熟者の自己紹介のようなブラフはネタだとしても書くもんぢゃありません。
#雑談
疑問なのは、そんなレベルの契約を担当する方が手持ちの携帯電話が使えなくなっただけで仕事が出来なくなるほど不器用だとは思えないことです。他のキャリアを持つ同僚知人、固定電話、数は減っても公衆電話もあります。タクシー飛ばして直接話しをしに行ってもいい。
本当ならお悔み申し上げますが、未熟者の自己紹介のようなブラフはネタだとしても書くもんぢゃありません。
#雑談
2022年6月 この範囲を時系列順で読む この範囲をファイルに出力する
マイコン内蔵RGB LED WS2822S

5mm角のLEDモジュールです。電飾さんが使っているLEDリボンに搭載されている素子の部類です。
DMX-512(拡張互換プロトコル)で動かせます。3色ですから3スロットで制御します。信号の電気特性はTTL5vですのでRS485から変換する必要がありますが、LT1785などで変換するだけなので簡単です。
この製品で言うところの拡張互換プロトコルとは、DMX-512が最大512スロットのところ1536スロットまで扱えるようにしたものですが、データ量が3ユニバース分に増えただけで基本的な考え方は同じです。電気特性を変換すればDMX-512(1990)で直接制御出来ると思っていいでしょう。
面倒なのはアドレスの設定です。RDMではない専用の設定プロトコルを用います。
データシートの説明ですとイマイチわかりにくいのですが、接続順に3スロットづつ拾って設定する方法です。DMX-512にとても似た信号ですが、ビット列のエンディアンがDMX-512と違うことに注意です。
以前からWS2812の類を使って電飾が出来ないかと考えていましたが、アドレスの設定器さえ作ってしまえば、舞台照明の環境ではこのWS2822Sの方が扱いやすいと思います。
#LED

5mm角のLEDモジュールです。電飾さんが使っているLEDリボンに搭載されている素子の部類です。
DMX-512(拡張互換プロトコル)で動かせます。3色ですから3スロットで制御します。信号の電気特性はTTL5vですのでRS485から変換する必要がありますが、LT1785などで変換するだけなので簡単です。
この製品で言うところの拡張互換プロトコルとは、DMX-512が最大512スロットのところ1536スロットまで扱えるようにしたものですが、データ量が3ユニバース分に増えただけで基本的な考え方は同じです。電気特性を変換すればDMX-512(1990)で直接制御出来ると思っていいでしょう。
面倒なのはアドレスの設定です。RDMではない専用の設定プロトコルを用います。
データシートの説明ですとイマイチわかりにくいのですが、接続順に3スロットづつ拾って設定する方法です。DMX-512にとても似た信号ですが、ビット列のエンディアンがDMX-512と違うことに注意です。
以前からWS2812の類を使って電飾が出来ないかと考えていましたが、アドレスの設定器さえ作ってしまえば、舞台照明の環境ではこのWS2822Sの方が扱いやすいと思います。
#LED
ホールの増員です。
空き時間があったので、間数マーカーの明るさを舞台でチェックしました。
視認性が良いのにドン帳を照らし出すことがありません。ELを使った以前の物に近い特性です。
明るさがちょうどいいので十分に使えるでしょう。
#舞台の小物
空き時間があったので、間数マーカーの明るさを舞台でチェックしました。
視認性が良いのにドン帳を照らし出すことがありません。ELを使った以前の物に近い特性です。
明るさがちょうどいいので十分に使えるでしょう。
#舞台の小物
2022年4月 この範囲を時系列順で読む この範囲をファイルに出力する
送信元をIPアドレスで選択する方法は簡単でした。丁寧に書いてきたおかげで左程の書き換えもせずに対応できそうです。
現在受信中の送信元一覧を得るためのプロセス間通信チャンネルを追加し、指定した送信元のデータだけを取り出す試験はものの数分で終わりました。
この後、一連の処理を関数化すれば完成です。
ただ、ライトアップのバラシに気力体力が奪われているので方向性が見えたところで終わりにします。丸一日、お日様を浴びながら立ったりかがんだりを延々繰り返していたので流石にシンドイ。集中力が落ちている時に書き進めるといいことはありません。
受信モジュールから取り出す際、それなりに大きな3次元配列からスロット毎の最大値を取り出す処理が不要になったので処理が少し軽くなりました。
送信元を選択式にするとバックアップ卓の切り替えに使えますし、フェスなどで複数の卓を切り替えて使う際にも使えます。パッチは一意で卓を切り替えて使えるとかなり便利だと思います。
#Python #[Art-Net]
現在受信中の送信元一覧を得るためのプロセス間通信チャンネルを追加し、指定した送信元のデータだけを取り出す試験はものの数分で終わりました。
この後、一連の処理を関数化すれば完成です。
ただ、ライトアップのバラシに気力体力が奪われているので方向性が見えたところで終わりにします。丸一日、お日様を浴びながら立ったりかがんだりを延々繰り返していたので流石にシンドイ。集中力が落ちている時に書き進めるといいことはありません。
受信モジュールから取り出す際、それなりに大きな3次元配列からスロット毎の最大値を取り出す処理が不要になったので処理が少し軽くなりました。
送信元を選択式にするとバックアップ卓の切り替えに使えますし、フェスなどで複数の卓を切り替えて使う際にも使えます。パッチは一意で卓を切り替えて使えるとかなり便利だと思います。
#Python #[Art-Net]