2022年4月 この範囲を時系列順で読む この範囲をファイルに出力する
ライトアップのバラシで半日イントレに登っていたら気力の残量がゼロ。
今日は工作作業をオフです。
そういえば中国に頼んでいた基板が入荷。
とてもキレイです。こんな上物がこの数でこの価格?と素直に思えます。有難いを越えて商売になっているのか心配になるほどです。
リフローハンダで使おうと思って手配した工業用のホットプレートも入荷。
気力が残っていれば、次のオフでリフローハンダの実験をしたいなと。
リフローハンダが上手くいけば、随分前に試作だけしたTASCAM製プレイヤーのリモコンも作ろうかなと。
所属会社の音響君たち曰く、バックアッププレイヤーも同時制御出来ると心強いらしい。同じソースを入れておくのは言うまでもありませんが、RS232を2分配するだけで2台同時に動くので難しいことはありません。
今となってはMD/CDではなくCDプレイヤーが主になっていますが、TASCAM製のプレイヤーはRS232による制御方法がほぼ同じなので基本的な機能だけなら高い互換性を持たせられます。
#電子工作
今日は工作作業をオフです。
そういえば中国に頼んでいた基板が入荷。
とてもキレイです。こんな上物がこの数でこの価格?と素直に思えます。有難いを越えて商売になっているのか心配になるほどです。
リフローハンダで使おうと思って手配した工業用のホットプレートも入荷。
気力が残っていれば、次のオフでリフローハンダの実験をしたいなと。
リフローハンダが上手くいけば、随分前に試作だけしたTASCAM製プレイヤーのリモコンも作ろうかなと。
所属会社の音響君たち曰く、バックアッププレイヤーも同時制御出来ると心強いらしい。同じソースを入れておくのは言うまでもありませんが、RS232を2分配するだけで2台同時に動くので難しいことはありません。
今となってはMD/CDではなくCDプレイヤーが主になっていますが、TASCAM製のプレイヤーはRS232による制御方法がほぼ同じなので基本的な機能だけなら高い互換性を持たせられます。
#電子工作
送信元をIPアドレスで選択する方法は完成。ライブラリの段階ですから、コマンドで現在受信中の送信元一覧を取得し、IPアドレスを送って設定する機能の追加です。最終的にはユーザーインターフェースからこれらのコマンドを使って指示します。
その他の訂正は、Delayのためのスタック順を逆にし、定数を出来るだけ外から設定するようにしました。
スタック順を逆にしたのは、Delay値で読み出す際の計算を簡単にするためです。スタックの際にポインタを加算で行うと読み出しでは減算になりますが、配列のインデックスを得る際に加算とmodを使うと配列を一括計算出来ますから、スタックの際のポインタ計算を減算にしました。なんのこと?ですけど・・・。
そんなこんな、基本機能の煮詰めをしていたら時間オーバー。
今日も今日とてライトアップのバラシをしてきた昭和産まれのオジサンは、これ以上頑張ると明日に差し障ります。
風呂して一杯飲んで寝る時間です。
基本機能は見るたびに直しや追加が出てなかなか終わりませんが、ここが肝なので、アタマが働く状態で取り組んで後で直しが出ないようにした方が良さそうです。
#Python #[Art-Net]
その他の訂正は、Delayのためのスタック順を逆にし、定数を出来るだけ外から設定するようにしました。
スタック順を逆にしたのは、Delay値で読み出す際の計算を簡単にするためです。スタックの際にポインタを加算で行うと読み出しでは減算になりますが、配列のインデックスを得る際に加算とmodを使うと配列を一括計算出来ますから、スタックの際のポインタ計算を減算にしました。なんのこと?ですけど・・・。
そんなこんな、基本機能の煮詰めをしていたら時間オーバー。
今日も今日とてライトアップのバラシをしてきた昭和産まれのオジサンは、これ以上頑張ると明日に差し障ります。
風呂して一杯飲んで寝る時間です。
基本機能は見るたびに直しや追加が出てなかなか終わりませんが、ここが肝なので、アタマが働く状態で取り組んで後で直しが出ないようにした方が良さそうです。
#Python #[Art-Net]
送信元を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 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