2022年4月 この範囲を時系列順で読む この範囲をファイルに出力する
送信元をIPアドレスで選択する方法は簡単でした。丁寧に書いてきたおかげで左程の書き換えもせずに対応できそうです。
現在受信中の送信元一覧を得るためのプロセス間通信チャンネルを追加し、指定した送信元のデータだけを取り出す試験はものの数分で終わりました。
この後、一連の処理を関数化すれば完成です。
ただ、ライトアップのバラシに気力体力が奪われているので方向性が見えたところで終わりにします。丸一日、お日様を浴びながら立ったりかがんだりを延々繰り返していたので流石にシンドイ。集中力が落ちている時に書き進めるといいことはありません。
受信モジュールから取り出す際、それなりに大きな3次元配列からスロット毎の最大値を取り出す処理が不要になったので処理が少し軽くなりました。
送信元を選択式にするとバックアップ卓の切り替えに使えますし、フェスなどで複数の卓を切り替えて使う際にも使えます。パッチは一意で卓を切り替えて使えるとかなり便利だと思います。
#Python #[Art-Net]
現在受信中の送信元一覧を得るためのプロセス間通信チャンネルを追加し、指定した送信元のデータだけを取り出す試験はものの数分で終わりました。
この後、一連の処理を関数化すれば完成です。
ただ、ライトアップのバラシに気力体力が奪われているので方向性が見えたところで終わりにします。丸一日、お日様を浴びながら立ったりかがんだりを延々繰り返していたので流石にシンドイ。集中力が落ちている時に書き進めるといいことはありません。
受信モジュールから取り出す際、それなりに大きな3次元配列からスロット毎の最大値を取り出す処理が不要になったので処理が少し軽くなりました。
送信元を選択式にするとバックアップ卓の切り替えに使えますし、フェスなどで複数の卓を切り替えて使う際にも使えます。パッチは一意で卓を切り替えて使えるとかなり便利だと思います。
#Python #[Art-Net]
マルチマスタ処理はHTPではなく選択式が良い気がしてきました。
HTPは同じスロットの高い値を採用しますが、ムービングの制御においてはよくありません。かといってLTPが良いワケでもない。
ならば受信する卓(送信元IPアドレス)を選択したらどうかというアイデア。
この処理をするには入力部の大幅な変更が必要です。
・・・まだまだかかるなぁ。
#Python #[Art-Net]
HTPは同じスロットの高い値を採用しますが、ムービングの制御においてはよくありません。かといってLTPが良いワケでもない。
ならば受信する卓(送信元IPアドレス)を選択したらどうかというアイデア。
この処理をするには入力部の大幅な変更が必要です。
・・・まだまだかかるなぁ。
#Python #[Art-Net]
荒天のため時間が空いたのでArt-Netを書き進めてみました。
処理の整理とマルチプロセス化です。
マルチプロセス化は多コア、多スレッドのCPUを有効に使う手段です。何もせずにPythonを実行しますとシングルコア(スレッド)ですべてが実行されるので能力を引き出せません。RaspberryPi4Bは4コア4スレッドですから、単純に4倍とはいきませんが、プロセスを分割することで処理負荷が複数のCPUスレッドに分散されるようです。
どの処理がどのCPUスレッドに割り当てられているかはOS次第なので実際のところどうなのかはわかりませんけど、topで処理負荷を見る限り、総処理負荷は100/400%、プロセス当たりの負荷は最大でも50%くらいになったので良いと思われます。
ここまで負荷のかかる処理をさせるならC++で書けって話もありますが、処理の大半はプロセス間通信とnumpyなので、私がC++で書いても軽くなるのか?って疑問はあります。numpyは達人がC++で書いたライブラリですからね。
このまま書き進め、Art-Netのフロントエンドのライブラリとしてまとめましょう。
今後の課題はパッチ処理です。早々に手を付けるつもりでしたが、パッチ処理のアイデアに変更が出るとArt-Net処理に書き直しが多発し3歩進んで何とやらを繰り返していたのです。
パッチ処理はnumpyの「ファンシーインデックス」に全面的に頼ります。詳細は以前の書き込みを読んで頂きたいのですが、マップファイルを与えるとそれに従ってデータを抽出して配列を生成します。つまり、「ファンシーインデックス」の流儀に合わせたパッチマップを作ればnumpyのコマンドに与えるだけです。パッチマップの生成はレスポンスを求めませんし頻繁に更新されるものではありません。
処理の構造をよく考えて進めましょう。
マルチマスタ化(HTPミックス)の確認は、荒天で別棟に置いてあるもう一台の卓を取りに行けず、動作確認は明日以降です。
#Python #[Art-Net]
処理の整理とマルチプロセス化です。
マルチプロセス化は多コア、多スレッドのCPUを有効に使う手段です。何もせずにPythonを実行しますとシングルコア(スレッド)ですべてが実行されるので能力を引き出せません。RaspberryPi4Bは4コア4スレッドですから、単純に4倍とはいきませんが、プロセスを分割することで処理負荷が複数のCPUスレッドに分散されるようです。
どの処理がどのCPUスレッドに割り当てられているかはOS次第なので実際のところどうなのかはわかりませんけど、topで処理負荷を見る限り、総処理負荷は100/400%、プロセス当たりの負荷は最大でも50%くらいになったので良いと思われます。
ここまで負荷のかかる処理をさせるならC++で書けって話もありますが、処理の大半はプロセス間通信とnumpyなので、私がC++で書いても軽くなるのか?って疑問はあります。numpyは達人がC++で書いたライブラリですからね。
このまま書き進め、Art-Netのフロントエンドのライブラリとしてまとめましょう。
今後の課題はパッチ処理です。早々に手を付けるつもりでしたが、パッチ処理のアイデアに変更が出るとArt-Net処理に書き直しが多発し3歩進んで何とやらを繰り返していたのです。
パッチ処理はnumpyの「ファンシーインデックス」に全面的に頼ります。詳細は以前の書き込みを読んで頂きたいのですが、マップファイルを与えるとそれに従ってデータを抽出して配列を生成します。つまり、「ファンシーインデックス」の流儀に合わせたパッチマップを作ればnumpyのコマンドに与えるだけです。パッチマップの生成はレスポンスを求めませんし頻繁に更新されるものではありません。
処理の構造をよく考えて進めましょう。
マルチマスタ化(HTPミックス)の確認は、荒天で別棟に置いてあるもう一台の卓を取りに行けず、動作確認は明日以降です。
#Python #[Art-Net]
昨日、LED-BARの箱で使う本体の受けにポリエステル樹脂を塗布しました。今回はエアガンです。
エアガンに慣れがないので上手くいったとは言えませんが、硬化すると表面が硬く滑らかに仕上がります。いいですね。
ガス圧を低めにして先日作った換気扇を併用すると飛び散りが少なく作業が出来ます。
#ガチ工作
エアガンに慣れがないので上手くいったとは言えませんが、硬化すると表面が硬く滑らかに仕上がります。いいですね。
ガス圧を低めにして先日作った換気扇を併用すると飛び散りが少なく作業が出来ます。
#ガチ工作
Art-Netパッチは入力部の書き直しが終わったようです。
「ようです」というのは動作確認が済んでいないからです。一見正常に動いていますが、エラーが出る条件を考えて色々試さないといけません。
今回の書き直しはマルチマスタ対応です。HTPミキサー化とも言えますが、ミキサーにするのはオマケで、Art-Net送信機を複数繋げてもおかしな挙動に陥らない様にする対策です。
複数の送信機のデータをHTPでミックスして内部の時間単位で並べます。[ 時間単位, ルート, スロットアドレス ]の3次元配列でデータをスタックします。
パッチにしてもディレイにしても、この3次元配列からデータを取り出して処理しますから、これがどれだけ堅固に動作するかが肝です。
#Python #[Art-Net]
「ようです」というのは動作確認が済んでいないからです。一見正常に動いていますが、エラーが出る条件を考えて色々試さないといけません。
今回の書き直しはマルチマスタ対応です。HTPミキサー化とも言えますが、ミキサーにするのはオマケで、Art-Net送信機を複数繋げてもおかしな挙動に陥らない様にする対策です。
複数の送信機のデータをHTPでミックスして内部の時間単位で並べます。[ 時間単位, ルート, スロットアドレス ]の3次元配列でデータをスタックします。
パッチにしてもディレイにしても、この3次元配列からデータを取り出して処理しますから、これがどれだけ堅固に動作するかが肝です。
#Python #[Art-Net]
明日はオフなので、Art-Netの処理を書き進めたい。
初めて手掛ける難しい処理は頭を全振りして半日以上没頭して書きたいのですが、ここ半月はコロナの反動需要と年度末が重なって思うように時間が取れませんでした。
そんな日々から解放されましたし、Delayのアイデア主であるプランナーさんに「連休前にはアルファ版見せます」と断言して締め切りを目の前にぶら下げましたので、これから半月は飛ばしましょう。開発費を頂戴している案件ではありませんから純然たる趣味の領域ですが、怠け者はお尻に火が点かんと怠けっぱなしです。
こんな日(4/1)ですが、ウソではありません。
#ノリと勢いスイッチ
初めて手掛ける難しい処理は頭を全振りして半日以上没頭して書きたいのですが、ここ半月はコロナの反動需要と年度末が重なって思うように時間が取れませんでした。
そんな日々から解放されましたし、Delayのアイデア主であるプランナーさんに「連休前にはアルファ版見せます」と断言して締め切りを目の前にぶら下げましたので、これから半月は飛ばしましょう。開発費を頂戴している案件ではありませんから純然たる趣味の領域ですが、怠け者はお尻に火が点かんと怠けっぱなしです。
こんな日(4/1)ですが、ウソではありません。
#ノリと勢いスイッチ
2022年3月 この範囲を時系列順で読む この範囲をファイルに出力する
何をすればいいかが見えている修理は楽ですが、どこがおかしくてどうすればいいのかがわからない修理は気疲れします。
昨日から手を付けているウォッシュタイプのムービングですが、今のところですけど、ICのハンダ付が原因だったように思われます。
今まで正常に動いていたのですから付いてはいるのですが、盛り方が悪くハンダに髭が出ていて、そこに汚れが溜まって短絡とは言えない微妙な接触が発生して隣の端子に漏れ電流が流れてしまったようです。ピンが細くて間隔も狭いICですから肉眼で見ただけではわかりませんが、試しにアルコールを吹きかけて歯ブラシで擦ったところ一時回復。再起動で再発したのでハンダ吸収線でなぞったら今のところ発症せずです。
明日はミニ顕微鏡で確認し、ヤバそうなのがあれば針の様に先端が細いハンダゴテで整えてみます。
プロファイル系のはリニアブッシュを交換して一応の回復。
#照明器具 #本業
昨日から手を付けているウォッシュタイプのムービングですが、今のところですけど、ICのハンダ付が原因だったように思われます。
今まで正常に動いていたのですから付いてはいるのですが、盛り方が悪くハンダに髭が出ていて、そこに汚れが溜まって短絡とは言えない微妙な接触が発生して隣の端子に漏れ電流が流れてしまったようです。ピンが細くて間隔も狭いICですから肉眼で見ただけではわかりませんが、試しにアルコールを吹きかけて歯ブラシで擦ったところ一時回復。再起動で再発したのでハンダ吸収線でなぞったら今のところ発症せずです。
明日はミニ顕微鏡で確認し、ヤバそうなのがあれば針の様に先端が細いハンダゴテで整えてみます。
プロファイル系のはリニアブッシュを交換して一応の回復。
#照明器具 #本業
月末処理の他には急ぎの要件が無かったので、不調になったムービングの修理を試みました。
1台はプロファイル系でフォーカスが動かない。
もう1台はウォッシュ系でランプが点灯せず、ズームが動かない。
プロファイル系はリニアブッシュ(シャフトの上を直線に滑り動くベアリング)がダメです。シャフトに対して見た目でわかるガタがあるため、動かす際に斜めになって引っかかるようです。つか、ダメになったというより最初からダメだったのでは?という疑い。シャフトの精度は出ていますので、リニアブッシュに見た目でわかるガタが出るなど普通はありえません。ミスミで同等品を手配して付け替えてみます。
ウォッシュ系は原因が謎ですが、コネクタを全て抜き差ししたところ回復。ただし、後日同様の症状が出ないとは限りません。20分くらいの繰り返し動作をさせた後、電源を落として冷まし、再度繰り返し動作をさせるということを何回が繰り返してみます。もちろん、搬送中に受けるであろう振動も与えてみます。これらを経て動く様なら大丈夫でしょう。
#照明器具 #本業
1台はプロファイル系でフォーカスが動かない。
もう1台はウォッシュ系でランプが点灯せず、ズームが動かない。
プロファイル系はリニアブッシュ(シャフトの上を直線に滑り動くベアリング)がダメです。シャフトに対して見た目でわかるガタがあるため、動かす際に斜めになって引っかかるようです。つか、ダメになったというより最初からダメだったのでは?という疑い。シャフトの精度は出ていますので、リニアブッシュに見た目でわかるガタが出るなど普通はありえません。ミスミで同等品を手配して付け替えてみます。
ウォッシュ系は原因が謎ですが、コネクタを全て抜き差ししたところ回復。ただし、後日同様の症状が出ないとは限りません。20分くらいの繰り返し動作をさせた後、電源を落として冷まし、再度繰り返し動作をさせるということを何回が繰り返してみます。もちろん、搬送中に受けるであろう振動も与えてみます。これらを経て動く様なら大丈夫でしょう。
#照明器具 #本業
ウクライナ侵攻において効果を発揮した携行兵器「ジャベリン」についてよくわかる動画です。
究極のゲリラ戦術です。
#雑談
究極のゲリラ戦術です。
#雑談
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132