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

能登半島地震で被災された方々にお見舞い申し上げます。

or 管理画面へ

全年全月4日の投稿(時系列順)[35件]

2022年1月 この範囲を新しい順で読む この範囲をファイルに出力する

Icon of admin
年末年始休暇も今日で終わり。珍しく一週間ありました。
始業時間が自由なだけでオフって感じは全くしませんでしたけどね・・・
喰って寝て体力の回復を図ったり、終わらない本業をやってたのもあるけど、趣味という煩悩を撒き散らしたのが一番よくないかな。

ちなみにArt-Netには全く手を付けられず。
目の前のライトアップをデザイナーチームに引き渡し、自宅の工作部屋を片付けてからでしょうねぇ。

明日から本業の勤務が始まります。
ライトアップで使うプロジェクタ群の箱に現地施工で冷暖房を仕込むことからです。灯を入れれば箱内は高温になりますので冷却が必須であり、深夜早朝の冷え込みで結露しないように暖房もしないといけません。
これが簡単そうでなかなか難しい。前回の反省から仕組みを変えたのが蛇を呼ぶか否か。
使用環境を模したテスト環境なんて作れません。フォークリフトが入れる様な大型冷凍庫でも間借りしないとね。

#ノリと勢いスイッチ

2022年2月 この範囲を新しい順で読む この範囲をファイルに出力する

Icon of admin
 ANSIエスケープシーケンスを組んでて思ったのですが、大昔のN-BASICみたいだなと。書式こそ違いますが、COLOR命令やLOCATE命令を思い出す風味です。N-BASICリアル世代。
 ANSIエスケープシーケンスはテキスト画面の制御コードを文字列としてprintします。画面の文字を消去しろとか、カーソル位置を何処にしろとか、引き続いて表示する文字列の色をどうしろとかを命令ではなくコードで渡すのです。大昔のVT100などで用いられたテキスト表示の制御方法ですが未だに使えるとは驚きてす。さすがUNIXの末裔。

#RaspberryPi
Icon of admin
 LED-BARのケースで使う受けを作っています。
 3x6の合板を2枚使い切りの切り出し。
 接着中で写真に入っていないのもありますが、切っても切っても終わらない。

20220204204537-admin.jpg

 上に乗っているようなのを12個作ります。

 一見少なく感じますが、この量で合板1枚分。
 切ってはバリ取り、切ってはバリ取りの繰り返し。
 小さい短冊でも60枚ですから、そう簡単には終わらない。
 今日はここまで。

 日中は切った貼った。
 陽が暮れたらソースコードを書き書き。
 アホですわ(笑

#ガチ工作
Icon of admin
 ANSIエスケープシーケンスを研究中ですが表示がおかしい。
 コードは間違いなくprintしているのに表示されない。いや、表示されることもある。
 さて・・・

 どうやらバッファの挙動によるものでした。
 printで表示される文字列は一度バッファに蓄積され、バッファが一杯になるか、改行コードなどを受けると表示に渡されるのだとか。

 単にprintするならその都度改行コードが発行されますのでその都度表示されるのですが、文字は表示したいけど改行したくないことがあります。

 pythonのprintですと、

 print('表示したい文字列', end='')

 とすると改行せずに表示が実行されますが、改行が発行されないとバッファが一杯になるまで何も表示されません。
 表示されたり表示されなかったりで困ったのですが、強制的に表示に送る方法がありました。

 print('表示したい文字列', end='', flush=True)

 最後に flush=True を加えるのです。
 こうすると、バッファや改行コードに関係なく、printが実行される度に表示されます。

 自由度が広がりました。

#Python

2022年3月 この範囲を新しい順で読む この範囲をファイルに出力する

Icon of admin
 レガシーDMX512の出力インターフェースを作るには少し工夫が必要です。
 RaspberryPiでもPICでも使えるインターフェースで十分な速度を持つのはSPIです。I2Cは便利ですがPICが最大400kbpsなので1ユニバースしか扱えません。
 かといって、高速のSPIで複数のPICで扱うのはかなり難しい。解決するにはロジックICを用いた分岐回路を用いるのが良さそうですが、ICが5個くらい必要なので実装面積に問題があります。
 ならばGALを使うのはどうかと。FPGAやCPLDの祖先であり、今回の構成に丁度良いスペックです。何と言っても安い。
 ただし、GALはすでに過去の物で開発は終わっています。決して多くないニーズに応えて生産されているだけですし、開発ソフトウェアも正規対応がWindowsXP止まり。
 されど、10個未満のTTL-ICで組む様な事を1個で組めるのは便利ですし、数十MHzまで対応するので、RaspberryPiなどのLinux系小型マイコンの外付け回路を組むには丁度良いと思います。
 便利そうですが微妙なので導入を控えていましたが、改めて調べたところ書き込み装置などの開発用品が安くなっていたので、この際環境を整えてみましょう。
 RaspberryPiとPICとGALを組み合わせれば製品が作りやすくなるような気がします。

#電子工作

2022年4月 この範囲を新しい順で読む この範囲をファイルに出力する

Icon of admin
 昨日、LED-BARの箱で使う本体の受けにポリエステル樹脂を塗布しました。今回はエアガンです。
 エアガンに慣れがないので上手くいったとは言えませんが、硬化すると表面が硬く滑らかに仕上がります。いいですね。
 ガス圧を低めにして先日作った換気扇を併用すると飛び散りが少なく作業が出来ます。

#ガチ工作
Icon of admin
 荒天のため時間が空いたので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]

2022年5月 この範囲を新しい順で読む この範囲をファイルに出力する

Icon of admin
 部品を買ってあった用品の製作も進めています。
 今は「裸族のパイ」と名付けたサーバー機を組んでいます。
 センチュリーさんの「裸族のカプセルホテル Ver.2(CRCH35U3IS2)」にRspberryPiを内蔵してサーバー機にしたものです。
20220504112545-admin.jpg
 お好み次第ですが、ファイル共有(owncloud含む)とメール程度の自宅サーバーならRaspberryPi4BとUSB3.0でつないだHDDの組み合わせで私は十分です。自分のデータをowncloudで扱っているのもありますが、所属会社のデータのバックアップもしているので、巨大なクラウドストレージを省電力で運用することが第一目的です。サービス対象は自分だけなので処理能力は求めないし。
 裸族のカプセルホテルはUSB3.0のHDDケースです。これにRaspberryPiを入れてコネクタ類を追加するには物理的な改造が多いのですが、3Dプリンタで作ったマウントにKeystoneモジュールのコネクタ類を取り付けると小型でスッキリした物になります。Linuxが使えるNASを使えって話もありますが、こういった改造そのものが楽しいのでいいのです。
 なぜこんなことをするかというなら、HDDケースとして裸族のカプセルホテルを普通に使っていたのが始まりで、これにRaspberryPiを繋げてみたら良かったので、どうせなら一台にまとめてしまえって何となく思ったのです。1年前に作った第一作は無理やりが多くて内部配線的にスッキリとは言い難いものでしたが、サーバー機としては設置感も使い勝手もイイ感じなので改修版を3台くらい作ってネットサーバーもコレにしてしまおうってところです。現在のサーバー機がボチボチ寿命っぽいし。
 裸族のカプセルホテルは8TBのHDDまで扱えます。4台内蔵可能ですから最大32TBですが、実際にはRAID1でデータの保存性とメンテナンス性を優先に使います。3TBのHDDが沢山あるので、これを4台使ってRAID1の3TBを2組かな。

#サーバー #ガチ工作
Icon of admin
 裸族のパイの部品を3Dプリンタで作っていますが、試しに線幅を決めるパラメータを警告が出るくらい細くしたところビックリ。寸法が出るわ1層目から綺麗だわ反りが少ないわでとてもキレイなプリントになりました。もちろん金型射出成型の様にはいきませんが、これなら当面は買い替えを考えなくても良さそうです。
 先日購入したドライキーパーも効果があったのかもしれません。フィラメントが湿気を吸うと仕上がりがとても汚いので、プリントが終わったらフィラメントのボビンを外して入れておきます。
 3Dプリンタは条件が出れば放置プレイです。寝ている間に部品を作ってくれるので「靴屋の小人」って感じです。

 コネクタの変換基板が必要になってしまったのですが、市販品には無さそうなのでKiCADで書いてPCBGOGOさんにオーダー。
 今回はサイズが小さいからか、発注後4日で届くとのこと。凄いですね。
 1枚1.9US$。円が安くなっているので割高になってますが、そもそもが安いので問題無し。10枚オーダーしましたが送料の方が高い。

 工作の質やコスパが向上してご満悦なオジサンでした。

#工具や資材

2022年6月 この範囲を新しい順で読む この範囲をファイルに出力する

Icon of admin
 ホールの増員でヒマな時間があったので、MAの3Dシュミレータに配置する3Dデータの試作をしてみました。
 MAの3Dは拡張子.3dsのファイルを読み込めますが、今となっては少し古い形式のファイルらしく、Fusion360では対応していません。ですが、各種3Dデータを3dsに変換するサイトが幾つかあるので、それを利用すればFusion360で作ったデータをMAの3Dの読ませることが出来ます。
 ただ、XYZの3軸の扱いがCADによって違うので注意が必要です。Fusion360のZ軸方向はMAの3DではY軸方向となったり、Fusion360は奥方向がマイナス値なのにMAの3Dはプラス値です。この辺りを整理してモデリングしないと扱いが面倒なデータとなります。3DプリンタのCAM(スライサー)に持っていく時にも起こることですが、一番大切と思われる前提がマチマチなのは不思議でなりません。
 あと、Fusion360から出力する際に精彩過ぎてもいけません。MAの3Dはベクタではなくポリゴンですが、1オブジェクトの頂点数が65536以下でなければならず、精彩にし過ぎると丸パイプがもの凄い頂点数の多角形とされるので、イントレなどの丸材で構成されたオブジェクトが読み込みエラーを起こすことがあります。
 寸法の単位も違います。Fusion360はmm(ミリメートル)で出力しますが、MAの3Dはそれをm(メートル)として読み込みます。1000倍のサイズのオブジェクトとなって読まれるのです。読み込みの際にこの辺りを変換する機能があるのでわかっていれば大丈夫ですが、ファイルに書かれているハズの寸法定義が読み飛ばされるってのも不思議です。

#3D

■当面の課題

桜のライトアップの季節です。花粉症の季節でもあります。
自分は平気ですが、花粉症の部下は死にそうな顔をしています。

編集

■全文検索:

複合検索窓に切り替える

■複合検索:

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

■日付検索:

■カレンダー:

2022年1月
1
2345678
9101112131415
16171819202122
23242526272829
3031

■カテゴリ:

■最近の投稿:

最終更新日時:
2024年5月8日(水) 13時50分30秒