全年全月13日の投稿(時系列順)[28件]
2022年1月 この範囲を新しい順で読む この範囲をファイルに出力する
客席テーブルは基本的な機能を作り終えましたので、抜いた脚の収納などの細かい艤装を整理し始めました。
脚の収納はちょうど良くハマる受けに差し込んでスプリング蝶番を用いた跳ね返りフックで固定する方法です。収納場所は天板の裏側です。
課題は、収納した脚を持ち手代わりに運んでも外れず、付け外しが簡単なことです。
簡単そうで難しい。
#ガチ工作
脚の収納はちょうど良くハマる受けに差し込んでスプリング蝶番を用いた跳ね返りフックで固定する方法です。収納場所は天板の裏側です。
課題は、収納した脚を持ち手代わりに運んでも外れず、付け外しが簡単なことです。
簡単そうで難しい。
#ガチ工作
客席テーブルの天板には試行錯誤の名残りのネジ穴が沢山空いています。気にしなきゃいいのですが、無いにこしたこたない。
ネジ穴を塞ぐ方法はいろいろありますが、捨てネジを裏から入れ、表から2液式のエポキシ接着剤を入れます。接着剤ですから食い付きがよく、2液式ですから厚盛りしても固まります。何よりも、硬くなるけれど適度に柔軟性もあるのが良い。
パテは硬度はあるけど脆くて肉やせしやすいので、盛り込むと形のまま取れてしまうことがあります。
固まったら手直し程度に更に塗り、ペーパーで慣らしからウレタン塗装を上塗りして仕上げです。
ちなみに、2液エポキシ接着剤はヒートガンで温めるとサラサラになります。溶剤の揮発などではなく化学反応で固まるので温度を多少上げても性質はあまり変わりません。今の時期は室温でも粘り気が強く扱いにくいのですが、ヒートガンで硬度を調整すると塗り込むというより流し込むに近くなり作業し易いです。
ver5の天板は合板にFRPのエポキシを塗ろうかと検討中。扱いはいささか面倒ですが、硬くて丈夫だし、硬化すればアセトン以外の溶剤では溶けません。ガラス繊維を塗り込むのが本来の方法ですが、そこまでの強度は不要と思われるので、丈夫な塗料として使えばよいかと。ツヤツヤになってしまうのは問題ですが。
#ガチ工作
ネジ穴を塞ぐ方法はいろいろありますが、捨てネジを裏から入れ、表から2液式のエポキシ接着剤を入れます。接着剤ですから食い付きがよく、2液式ですから厚盛りしても固まります。何よりも、硬くなるけれど適度に柔軟性もあるのが良い。
パテは硬度はあるけど脆くて肉やせしやすいので、盛り込むと形のまま取れてしまうことがあります。
固まったら手直し程度に更に塗り、ペーパーで慣らしからウレタン塗装を上塗りして仕上げです。
ちなみに、2液エポキシ接着剤はヒートガンで温めるとサラサラになります。溶剤の揮発などではなく化学反応で固まるので温度を多少上げても性質はあまり変わりません。今の時期は室温でも粘り気が強く扱いにくいのですが、ヒートガンで硬度を調整すると塗り込むというより流し込むに近くなり作業し易いです。
ver5の天板は合板にFRPのエポキシを塗ろうかと検討中。扱いはいささか面倒ですが、硬くて丈夫だし、硬化すればアセトン以外の溶剤では溶けません。ガラス繊維を塗り込むのが本来の方法ですが、そこまでの強度は不要と思われるので、丈夫な塗料として使えばよいかと。ツヤツヤになってしまうのは問題ですが。
#ガチ工作
客席テーブルの仮組み写真です。
脚の長さはボールロックピンを用いて25mmピッチで調整できます。無段階調整機構は座屈が怖いので用いません。
赤茶色の角材が座席の肘掛けに乗せるバーです。この方法が是か非かは劇場さん次第ですが、結局は背もたれや肘掛けに加重をかけるならキチンとかけた方がマシだろうという発想です。もちろん毛布やクッションなどで養生した上に乗せた方がいいでしょう。
伸縮脚の機構のために多少のガタはあります。私は気にならない程度ですけど。
強度は私が乗って揺らしても平気なので十分でしょう。
#ガチ工作
脚の長さはボールロックピンを用いて25mmピッチで調整できます。無段階調整機構は座屈が怖いので用いません。
赤茶色の角材が座席の肘掛けに乗せるバーです。この方法が是か非かは劇場さん次第ですが、結局は背もたれや肘掛けに加重をかけるならキチンとかけた方がマシだろうという発想です。もちろん毛布やクッションなどで養生した上に乗せた方がいいでしょう。
伸縮脚の機構のために多少のガタはあります。私は気にならない程度ですけど。
強度は私が乗って揺らしても平気なので十分でしょう。
#ガチ工作
客席テーブルはver5仕様の脚が使えそうなので気分としてはアルファ版からベータ版に格上げです。脚が決まらないと細かい部位を考えても意味がありませんでしたが、ようやく次のステップに進めます。
脚まわりは一見シンプルですが工数が多いのです。脚6本+脚受け+アームレスバーを作るのに丸々1週間かかります。アイデアが出ても試作が進まなかった理由でもあります。
早くver5を完成させて手離れしたいですね。
#ガチ工作
脚まわりは一見シンプルですが工数が多いのです。脚6本+脚受け+アームレスバーを作るのに丸々1週間かかります。アイデアが出ても試作が進まなかった理由でもあります。
早くver5を完成させて手離れしたいですね。
#ガチ工作
2022年2月 この範囲を新しい順で読む この範囲をファイルに出力する
ありがちな1液式の塗料は1週間以上放置しないと現場で使えませんが、ポリエステル樹脂は2日もあれば完全硬化して使えます。扱いが面倒なところや少なくない制限もありますが、現場投入までの工程としてはむしろ使いやすいかもしれません。
そんなポリエステル樹脂を塗布した客席テーブルは今日から現場に出向です。自分は行きませんが、在籍園児が数百人いる幼稚園のお遊戯会で部下が一週間ほど使います。客席に卓を仮設するので客席テーブルの本業であります。使い勝手の確認はもとより、荷重をかけ続ける状況なのでロードテストにはうってつけです。
この幼稚園は若園長が好き者で、スモーク炊いてムービング使って有名アイドルのアリーナコンサートよろしくゴリゴリにしたいとか。過去映像を見ましたが、明かりは頑張ってイイ感じに作ってますが、園児たちが自由過ぎてアンバランスなのか面白いのかよーわからん。お遊戯会でここまでしてどうする!?ってのが本音ですが、園児たちの思い出になって親御さんが楽しんでくれるなら仕事としては成立。
ということで、ダメなところと傷みやすいところがもっともっと見えてくるといいかな。
#ガチ工作
そんなポリエステル樹脂を塗布した客席テーブルは今日から現場に出向です。自分は行きませんが、在籍園児が数百人いる幼稚園のお遊戯会で部下が一週間ほど使います。客席に卓を仮設するので客席テーブルの本業であります。使い勝手の確認はもとより、荷重をかけ続ける状況なのでロードテストにはうってつけです。
この幼稚園は若園長が好き者で、スモーク炊いてムービング使って有名アイドルのアリーナコンサートよろしくゴリゴリにしたいとか。過去映像を見ましたが、明かりは頑張ってイイ感じに作ってますが、園児たちが自由過ぎてアンバランスなのか面白いのかよーわからん。お遊戯会でここまでしてどうする!?ってのが本音ですが、園児たちの思い出になって親御さんが楽しんでくれるなら仕事としては成立。
ということで、ダメなところと傷みやすいところがもっともっと見えてくるといいかな。
#ガチ工作
Art-Netのアプリは画面表示とキー操作まで一応の完成をみました。
キー操作はレスポンスに少しムラがあるので改善したい点です。使えるレベルなので今のところは将来課題としておきますが、ユーザーがご機嫌をうかがいながら使うユーザーインターフェースは大嫌いなのでとても重要です。
余談ですが、売れている卓とそうでもない卓の違いにはこういった点の僅かなストレスの差もあります。卓は手段としての道具ですが、国内メーカーはカタログスペックばかり求めて手に馴染む道具を作ろうとしない。買うのは使う人ではありませんから仕方ないことでもありますが、国産のホール卓がダメな点です。国産で唯一、松村さんの卓にはこういったストレスが少ないのですが・・・。
とまぁ愚痴はおいといて、これで本丸であるArt-Netの受信に取り掛かれます。
単純な受信は別回しするThread内のsocketで受けるだけなので難しくないと思うのですが、パケットのデコードが少し面倒かもしれません。Art-Netのパケットはバイト列ですが、これらをPythonで扱いやすい様に分解して変換しなければなりません。Pythonはバイト型の扱いが少し苦手ですし、パケットにはアスキーテキスト、LSBの2バイト数、MSBの2バイト数、バイト型が混在しているので、よく考えて作らないといけません。実行回数が多い処理なだけに軽さも重要です。
#[Art-Net] #Python
キー操作はレスポンスに少しムラがあるので改善したい点です。使えるレベルなので今のところは将来課題としておきますが、ユーザーがご機嫌をうかがいながら使うユーザーインターフェースは大嫌いなのでとても重要です。
余談ですが、売れている卓とそうでもない卓の違いにはこういった点の僅かなストレスの差もあります。卓は手段としての道具ですが、国内メーカーはカタログスペックばかり求めて手に馴染む道具を作ろうとしない。買うのは使う人ではありませんから仕方ないことでもありますが、国産のホール卓がダメな点です。国産で唯一、松村さんの卓にはこういったストレスが少ないのですが・・・。
とまぁ愚痴はおいといて、これで本丸であるArt-Netの受信に取り掛かれます。
単純な受信は別回しするThread内のsocketで受けるだけなので難しくないと思うのですが、パケットのデコードが少し面倒かもしれません。Art-Netのパケットはバイト列ですが、これらをPythonで扱いやすい様に分解して変換しなければなりません。Pythonはバイト型の扱いが少し苦手ですし、パケットにはアスキーテキスト、LSBの2バイト数、MSBの2バイト数、バイト型が混在しているので、よく考えて作らないといけません。実行回数が多い処理なだけに軽さも重要です。
#[Art-Net] #Python
Art-Netの受信データをデコードする処理を書いてみました。
製作環境はRspberryPi4、Rasbian_buster、Python 3.7.3です。
------
import numpy as np
class coding:
def decode(self, artnet_packet):
""" Art-Netのbyte列を要素に分解する """
id = artnet_packet[0:8]
opcode = int.from_bytes(artnet_packet[8:10], 'little')
prover = int.from_bytes(artnet_packet[10:12], 'big')
sequence = int.from_bytes(artnet_packet[12:13], 'little')
physical = int.from_bytes(artnet_packet[13:14], 'little')
subuni = int.from_bytes(artnet_packet[14:15], 'little')
sub = subuni // 16
uni = subuni % 16
net = int.from_bytes(artnet_packet[15:16], 'little')
length = int.from_bytes(artnet_packet[16:18], 'big')
data = np.frombuffer(artnet_packet, dtype=np.uint8, count=length, offset=18)
return (id, opcode, prover, sequence, physical, net, sub, uni, length, data)
if __name__ == '__main__':
an = coding()
id, opcode, prover, sequence, physical, net, sub, uni, length, data_uint8 = an.decode(test_artnet_packet)
※ 行頭の空白には全角を使っています。
------
test_artnet_packetに受信データを入れ、codingのインスタンスanでdecodeを呼び出します。
書いてみたら案外スッキリした物になったので記念に掲載しました。
socketで受信するのはバイナリデータ(Pythonで言うところのバイト列)ですが、これを一発でnumpy.arrayに変換してくれるnumpy.frombufferは便利です。
int.from_bytesもバイト列をエンディアン指定でint数に一発変換してくれて便利です。
私はPICマイコンと協調させて使うことが多いので、こういった機能があると助かります。
上記ですとdataの戻り値がnumpy.uint8ですが、計算するためにはnumpy.uint16の方が良いと思います。
data_uint16 = data.astype(np.uint16)
とかで型変換するといいかもしれません。
#Python #[Art-Net]
製作環境はRspberryPi4、Rasbian_buster、Python 3.7.3です。
------
import numpy as np
class coding:
def decode(self, artnet_packet):
""" Art-Netのbyte列を要素に分解する """
id = artnet_packet[0:8]
opcode = int.from_bytes(artnet_packet[8:10], 'little')
prover = int.from_bytes(artnet_packet[10:12], 'big')
sequence = int.from_bytes(artnet_packet[12:13], 'little')
physical = int.from_bytes(artnet_packet[13:14], 'little')
subuni = int.from_bytes(artnet_packet[14:15], 'little')
sub = subuni // 16
uni = subuni % 16
net = int.from_bytes(artnet_packet[15:16], 'little')
length = int.from_bytes(artnet_packet[16:18], 'big')
data = np.frombuffer(artnet_packet, dtype=np.uint8, count=length, offset=18)
return (id, opcode, prover, sequence, physical, net, sub, uni, length, data)
if __name__ == '__main__':
an = coding()
id, opcode, prover, sequence, physical, net, sub, uni, length, data_uint8 = an.decode(test_artnet_packet)
※ 行頭の空白には全角を使っています。
------
test_artnet_packetに受信データを入れ、codingのインスタンスanでdecodeを呼び出します。
書いてみたら案外スッキリした物になったので記念に掲載しました。
socketで受信するのはバイナリデータ(Pythonで言うところのバイト列)ですが、これを一発でnumpy.arrayに変換してくれるnumpy.frombufferは便利です。
int.from_bytesもバイト列をエンディアン指定でint数に一発変換してくれて便利です。
私はPICマイコンと協調させて使うことが多いので、こういった機能があると助かります。
上記ですとdataの戻り値がnumpy.uint8ですが、計算するためにはnumpy.uint16の方が良いと思います。
data_uint16 = data.astype(np.uint16)
とかで型変換するといいかもしれません。
#Python #[Art-Net]
2022年3月 この範囲を新しい順で読む この範囲をファイルに出力する
報道かくあるべしといった印象
当事者でない人が語る言葉でありますが、一般人には出来ない深読みの一つという意味で良いと思います。
今の報道の大半が子供っぽ過ぎるために印象に残っただけかもしれませんが・・・
#雑談
当事者でない人が語る言葉でありますが、一般人には出来ない深読みの一つという意味で良いと思います。
今の報道の大半が子供っぽ過ぎるために印象に残っただけかもしれませんが・・・
#雑談
2022年4月 この範囲を新しい順で読む この範囲をファイルに出力する
今日も今日とてライトアップのバラシ。
規模は大きいですが、10日間で終わりが見えてきました。
そんな現場作業をしながらArt-Netの受信処理を考え直しています。やらなきゃならない処理内容は見えましたから、主に処理の順序の整理です。
順序を整理していくとコンパクトでシンプルな内容になってきます。これまで書いてきたモノは試しながら書き加えをしてきましたから、部分というより基本的な構造に無駄があったようです。
#Python #[Art-Net]
規模は大きいですが、10日間で終わりが見えてきました。
そんな現場作業をしながらArt-Netの受信処理を考え直しています。やらなきゃならない処理内容は見えましたから、主に処理の順序の整理です。
順序を整理していくとコンパクトでシンプルな内容になってきます。これまで書いてきたモノは試しながら書き加えをしてきましたから、部分というより基本的な構造に無駄があったようです。
#Python #[Art-Net]
どうしたのか、所属会社のネットワークがインターネットに接続出来なくなる。LANで内側サーバー機にアクセスする分には正常。
ゲートウェアサーバーを覗くとPPPoEのインターフェースにIPアドレスが表示されない。これは光回線側が落ちているサイン。
ゲートウェアサーバーと光回線インターフェースを再起動したりと、わちゃわちゃしているウチに何事もなかった様に接続が回復。
ライトアップのバラシから上がってきてこういった対応をするのは気が滅入ります。
#サーバー
ゲートウェアサーバーを覗くとPPPoEのインターフェースにIPアドレスが表示されない。これは光回線側が落ちているサイン。
ゲートウェアサーバーと光回線インターフェースを再起動したりと、わちゃわちゃしているウチに何事もなかった様に接続が回復。
ライトアップのバラシから上がってきてこういった対応をするのは気が滅入ります。
#サーバー