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

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

or 管理画面へ

全年全月8日の投稿[36件]

2025年6月 この範囲を時系列順で読む この範囲をファイルに出力する

Icon of admin
 と、なると、って書き出しは私のアタマの中の言葉のままですが、プロセスかスレッドかはともかく、処理のスジを次の様に分けようかと。

1)アプリの起動部で、共有物を設定して以下のモジュールを呼ぶ「ap_main」
2)画面表示やユーザー操作を司る「ap_console」
3)Art-Netを受信する「ap_receiver」
4)受信値や設定値から出力値まとめ、Art-Net を出力する「ap_transmitter」
5)データのタイムアウト管理をする「ap_timeout」

 大きなデータは共有メモリ「mmap」と「semaphore」でやりとりし、指示や返答は「queue」で繋げます。自分ナリに得手不得手を検討した結果です。

 タイムアウトを別枠で勝手にやらせる発想が出たら役割分担が楽になりました。
 これが出来るのも共有メモリとセマフォのオカゲです。

 まだまだ決定ではありませんが、タイミングがラフなところはOS に任せてしまえ!って思えたら気が楽になったかも。
 メモリ管理も処理タイミングの管理も OS に頼った方が間違いないのです。
 この役割分担をしたら RaspberryPi でも処理しきれそうな気になってきたかも。

追記
 成り行き任せで後回しにしても構わない処理はプロセスやスレッドを別にして区切りのいいところに短い「sleep」を入れればいい。こうすると OS のジャッジで急ぎと思われるプロセスやスレッドを優先的に処理をしてくれるようです。
 厳密なタイミング管理が必要なら「RTOS」ベースのカーネルを使ってガチガチに管理するのが良いと思いますが、そこまででない処理のため導入の敷居が高い RTOS を使うのはどうかと。

#[Art-Net] #器具の製作
Icon of admin
 Art-Net の処理についてタイミングをイロイロ検討してみました。
 まず、全受信のスタックと受信の次の工程に送るスタックは完全に別物にした方が良さそうです。先日の書き込みと真逆のことですが、Art-Net 全体のモニターをするためのスタックとパッチの前工程のスタックは別物にするってことです。細かい理由は割愛しますが、同じ結果を得られるならメモリを大食いしても処理は軽い方がいい。DMXの処理で使うメモリ量など増えても数KBですから、GBクラスのメモリを持った RaspberryPi で気にするこっちゃありません。また、全受信のスタックを元にすべてを行うと最低でも2秒分の履歴を残さなければなりませんが、モニターするだけなら最新値のスタックだけで済みますし、Delay では深い履歴が必要でもパッチにおけるユニバース数だけあればいいので、想定される入力のすべてを数秒分スタックするほどのメモリは不要です。結果、処理が軽くなってメモリの使用量が減るなら御の字ってことです。あとは、タイムアウトの処理も大きな理由です。パケット毎に受信時刻のチェックをすることになりますが、チェックするパケットの数が減り、モニターならチェック頻度を落としてタイムアウトの実効値が2秒とか3秒でも大丈夫です。
 データをどのように取り込んでスタックして処理するかのイメージを整理して処理時間や工数が最も少ないであろう構成を決めてからソースコードを書こうと思っています。

追記
 上記の考え方にするなら、パッチの前工程の処理をする位置や共有メモリの扱いを明確にしておけばソースを書き始められるかも。完全に Art-Net モニタです。受信の後の各種処理や画面表示を別プロセスにするのでまだまだ考えることはありますけどね。
 今思い付いたのですが、タイムアウトの処理を別プロセスや別スレッドにしたら受信プロセスが凄く簡単になるかも。socket の受信をタイムアウトせずに何かを受信するまでブロックするってことです。シングルプロセスの PIC マイコンに慣れ過ぎて手作業のマルチスレッド処理がアタマの中で前提になっているようです。ブロックすることが一般的な処理をあえてタイムアウトさせてエラー処理するくらいならプロセスを分けてタイムアウトさせずに待たせればいいのです。OSが得意な部分はOSにやってもらえばいいのです。

#[Art-Net] #器具の製作
Icon of admin
 Art-Net の扱いを送信元8、ユニバース各8、44fpsにしますと毎秒の最大受信パケット数は2,816です。1パケットあたり355usec以下で捌かないといけません。実用においてここまでの量になることは無いと思いますし、確認する環境を整えるのも現実的ではありませんが、一度は想定最大負荷をかけてみたいものです。

 実作業を始められるのがいつになるかわかりませんが基本設計は進めます。アタマが空いてる時のヒマ潰しにはちょうどいいですし。

#器具の製作

2025年5月 この範囲を時系列順で読む この範囲をファイルに出力する

Icon of admin
 Antari F1-FAZER のヒーター(発煙器)が入荷しました。早速取り付け。新品並みの煙量です。
20250508221220-admin.jpg 202505082212201-admin.jpg
 定格電圧はAC120vとありますが細かいことは気にしない。
 半年近く試行錯誤しましたが、達成感より解放された気分が強いですね。。。
 部品取りとして倉庫に眠っていた最初に買った機体も使えるようになったことは素直に嬉しいですケド。

 煙量が減ったり詰まったら四の五の言わずヒーター(発煙器)を交換した方がいいので、納期が半月ほどかかりますから予備を2個くらい買っておきましょう。ヒーター1個が$153に対し1個でも数個でも送料は$100なのでまとめ買いするのがよさそう。
 あとは、現場での使用後すぐに洗浄液を通すことにします。洗浄液はホワイトビネガー20%+精製水(バッテリー補充液)80%(重量比)です。

#器具の修理

2025年1月 この範囲を時系列順で読む この範囲をファイルに出力する

Icon of admin
 久しぶりに腰痛。調べると膝下のヒラメ筋と後脛骨筋がカチカチ。
 足三里(ツボ)とヒラメ筋と後脛骨筋のコリの酷いところにピップエレキバンを貼ったのですが、30分もしないウチに足の裏の血行が実感する程良くなり、腰痛が軽くなってきました。完治には程遠いですが、この効果は凄い。
 ピップエレキバンを貼る位置は自分ナリとは言えちょっと難しいかも。

追記
 ピップエレキバンは偉大な磁石です。
 足のツボとコリに貼ると腰まで解れる不思議。効果が出るのに数日かかりますけどね。
 指圧やマッサージをしたいところに貼ればいいのですが、そこがわからんと効果無し?
 何にしても効果絶大。

#自分を修理しよう!『指圧の世界』へようこそ!?
Icon of admin
 Antari F1-FAZER の発煙器の目詰まりは頑固です。細かいカスや約5mm四方のGの羽のカケラみたいなカスが出てきたりするので相当酷く焦げ付いていると思われますが、お酢溶液を通すだけではどうにもならない感じです。
 ならばと思い付いたのが超音波洗浄。容器の底にチューブを取り付けて発煙口に繋げ、精製水を注いで発煙器の中に満たします。容器の中にスティック糊サイズの超音波洗浄機(振動子)を入れて超音波を中に伝えて焦げ付きを砕いてやろうとうアイデアです。出て来るカスは硬さがあるけれど脆い(柔軟性がない)ので、超音波を当てることで効果があるような気がします。
 もはやメンテナンスというより趣味の実験となっていますが、これで発煙器の内部の焦げカスを除去出来れば面白いかと。

追記
 超音波はダメでした。
 正しくは、超音波が発煙器の中まで入っていかない様子。

#器具の修理

2024年12月 この範囲を時系列順で読む この範囲をファイルに出力する

Icon of admin
 持ち歩きパソコンはHMBを無効にしたところ調子が良くなりました。
 HMBはディスクキャッシュの部類ですがメモリがDDR3ではむしろ足枷になるのかも。いや、本体が古すぎてHMBに対応していないのかも。原因は不明ですが、無効にしたことで改善は見られています。約300GBのコピーをして確認していますが、済んだらもう一度クリーンインストールをして手順を確定しましょう。
 HMBの設定はレジストリエディタを使います。Googleなどで「Regedit HMB」と検索すると手順が見つかります。

 これまでの経緯ですが、Windows11をインストールしてドライバのインストールと進めていくとディスクアクセスが遅くなりブルースクリーンが出やすくなることが障害です。一応安定している現状はドライバの最小インストールを経た後にディスクアクセスが遅くなってからHMBを無効にしたものです。ならばWindows11のインストール直後(ドライバを入れる前)にHMBを無効にするのがいいんじゃね?ってのが次に試したい手順です。ドライバ類が正しくインストールされてない可能性があるのでやり直したいのもあります。

 HMBはSSDがキャッシュメモリを持たない場合に本体のメモリにその役割をさせる機能のようです。主にNVMeのM.2におけることのようですが、今回はSATAですから関係するのでしょうか。不思議です。
 Windows11に非対応のパソコンですから本来使用しない機能が誤認識で(意図して?)起動したのかなぁ。

#パソコン
 

2024年8月 この範囲を時系列順で読む この範囲をファイルに出力する

Icon of admin
 ハンガーの横ネジのリビルドを先日書きましたが、ハンガー本体も直してみました。
 と言いますのも、脱落防止がネジではなくスプリングピンの物は部品を紛失すると再生し難いのです。
 ならばと、次の手段で脱落防止をM5ネジにしました。

1)脱落防止ピンの穴をφ8.5にしM10のタップを立てる。
2)メタルロックを塗布したM10のボルトを入れて穴を塞ぐ。
3)余ったボルトを切断し穴が無かったことにする。
4)φ4.2で貫通穴を空けM5のタップを立てる。
5)錆止め塗装をする。
6)ネジ穴の錆止めにグリスを塗布したM5の蝶ネジを入れて脱落防止にする。

 って感じです。ネジ穴を再生する方法の応用です。
 写真を撮り忘れましたがイメージして頂けたでしょうか。
 一見面倒ですが、この程度の工作で復活するならアリでしょう。

#器具の修理

2024年7月 この範囲を時系列順で読む この範囲をファイルに出力する

Icon of admin
 移動中に RaspberryPi pico について調べてみました。
 RaspberryPi というより Arudino に近いのは言うまでもありませんが、PWM を16系統も出せるのがポイントかもしれません。
 PWM を沢山出せるならモーターやLEDの制御に優位です。DMXを受信するライブラリを作ってしまえばLED-PARやムービングを作ることも出来そうです。
 なんとかして作りたい状況ではないので、妄想だけ進めてみましょう。

#RaspberryPi

2024年5月 この範囲を時系列順で読む この範囲をファイルに出力する

Icon of admin
 Windows11を非対応とされるパソコンにインストールする方法です。

 appraiserres.dllをnullファイル化する方法には驚いた。

#パソコン

■思ってみた

社屋を囲む田んぼの田植えが終わり季節を感じます。

編集

■全文検索:

複合検索窓に切り替える

■複合検索:

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

■日付検索:

■カレンダー:

2025年6月
1234567
891011121314
15161718192021
22232425262728
2930

■カテゴリ:

■最近の投稿:

最終更新日時:
2025年6月22日(日) 15時27分49秒