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

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

or 管理画面へ

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

Icon of admin
 客席テーブルに塗布したポリエステル樹脂は硬化していました。一安心。
 ただ、アセトンが抜けるのに時間がかかりそうです。急がず焦らず今日は手を付けず、1日なのか2日なのか、アセトンが抜けたのを確認出来てから2層目にかかりましょう。
 2層目は濃い目で肉付けをします。原液ままでは硬いのでアセトンを入れて少し柔らかくするつもりですが、塗り伸ばせる範囲で固めが望みです。熟練者なら室温で判断がつくのでしょうけど。
 3層目は顔料を入れて色付けです。
 単に1層目だからかもしれませんが、アセトンを多めに入れると硬化した表面が半艶になるようです。顔料を入れた3層目がツヤツヤ過ぎるなら、トップコートを兼ねてサラサラを塗ってみましょう。

 小学生の頃、シンナーで溶かした発砲スチロールで紙を固められないか?と実験したのを思い出しました。
 表面が固まっても中が固まらなくてガッカリした思い出ですけど、約半世紀後もやってることに大差がない。「三つ子の魂百まで」という格言がありますがその通りかもしれません。
 ひょっとすると、発砲スチロールはアセトンで溶けるので、ポリエステル樹脂を半艶にする添加剤代わりになるかもしれません。ポリエステル樹脂は不純物を入れると艶が落ちるような気がするのです。

#ガチ工作
Icon of admin
 socketの送受信は簡単ですが、受信は待ち受けになり、タイムアウトはあるものの、有効な受信があるまで全体の動作が一時停止になります。待ち受けをしながら他の処理を止めずに動かす方法の確立が当面の課題になります。
 ネットを探すとそれらしい方法がいくつかあります。たぶんこの中に望んでいる方法があるのだと思いますが、それがどれかをこれから検討するワケです。

#Python
Icon of admin
 今週来週はコロナ騒動で現場が飛びまくり、急ぎの要件はありませんので工作を徹底的に進めます。
 客席テーブルが現場から帰ってきたので天板表面の再塗装です。
 先日も書きましたが、問題はウレタン塗料の柔らかさです。私の施工が間違っていたのかもしれませんが、ゴム脚の当たっていたところが凹んでしまったのです。硬さを増さないといけません。オービタルサンダーで前の塗装を削り落とし、FRPで使うポリウレタン樹脂を塗ります。
 一層目は表面に塗るというよりポリウレタン樹脂を木の繊維に染み込ませるイメージです。気温が低いので硬化剤を重量比1.2%(夏季の2.0倍強)加え、アセトンを重量比40%加えてシャバシャバというかサラサラにし、塗ったというより濡らした感じにしています。
 アセトンの量は変質しないギリギリかと思います。硬化しなかったら笑うしかありませんが、モノ作りの神様に見放されないことを祈りつつジックリ取り組みましょう。

#ガチ工作
Icon of admin
仮ですが、コマンド入力を作りました。
今回はArt-Netの受信データを表示することが目的なので、対象ユニバースを指示するだけの[ニーモニック-数値]のシンプルな物にしました。
Net,Subnet,Universeなどのニーモニックを[N][S][U]のキーで呼び出し、数値を打って[Enter]で確定です。それぞれのコマンドには設定数値の範囲がありますので、範囲外であればエラーというか「このコマンドの数値範囲はこうだよん」と表示する様にもしています。

#RaspberryPi #Python
Icon of admin
 ANSIエスケープシーケンスは何とかモノになりました。
 画面の試作段階ですから受信データを表示することは出来ませんので、仮のnumpy.arrayを加算し続ける処理で動きを確認しています。インクリメントした値の256の剰余(割った余り)です。
 チラつくことなく求める動作をしていますし、画面処理の負荷は(topにて)7%くらい。いいんでないか?
 ちなみにpi4のCPUは4coreなので、topコマンドでの最大値は400%です。

 この後はArt-Netの受信とキー操作です。

 Art-Netはsocket通信で受信したパケット(バイナリ)を適切に変換してデータ化するだけです。通信の難しいことはライブラリがやってくれるので、たぶん、それ程難しくはないと思います。
 キー入力は最終的なコマンド実行までどう持っていくかです。様々な手順が考えられますが、どうやるのがいいかよく考えてみましょう。

#RaspberryPi #Python
Icon of admin
 ANSIエスケープシーケンスのチラつきの原因がわかりました。
 行削除です。コードは'\033[2K'。
 上書きしないと文字が消えないので行を削除してから書いていたのですが、消すのではなく空白で上書きすることで解決しました。
 いやはや。

#RaspberryPi #Python
Icon of admin
 ANSIエスケープシーケンスですが、RaspberryPi上のPythonでは期待する動画が出来ないかもしれません。形にはなるのですがチラつきます。
 開発作業用と画面の試作を兼ねてDMXスロットの値を一覧表示する画面を作っています。値の表示は遅くとも0.1~0.2秒くらいで更新しなければなりませんが、前の表示が完了していないのに次の表示が実行されているような感じで、行単位での一瞬の点滅が不規則に発生します。
 細かいことはともかく、これではダメです。

 動画を表示出来るのですからテキスト画面の更新を0.1秒間隔でやるなど楽勝だろうと思っていたのですが、そもそもテキスト表示の書き換えにこんなレスポンスは不要だと作られているのかもしれません。
 基本的な動作だけに余裕を持って動いてくれないと困ります。

 RaspberryPiの作り的に、ANSIエスケープシーケンスでテキスト画面を構成するより、グラフィカルな画面に今どきの方法で表を書いた方がいいのかもしれません。

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

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

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

 pythonのprintですと、

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

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

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

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

 自由度が広がりました。

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

20220204204537-admin.jpg

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

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

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

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

#RaspberryPi

■当面の課題

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

編集

■複合検索:

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

■日付検索:

■カレンダー:

2022年2月
12345
6789101112
13141516171819
20212223242526
2728

■カテゴリ:

■最近の投稿:

最終更新日時:
2024年4月27日(土) 21時39分45秒