全年全月16日の投稿[53件](5ページ目)
2022年5月 この範囲を時系列順で読む この範囲をファイルに出力する
オープンフレームモニタの脚を作っていますが、形状的にABSでは厳しそうです。失敗の連続・・・
ABSは丈夫で保管温度を気にせず使えますが長い羊かん形状は苦手です。露骨に反ります。
形にならないと意味がありませんのでPLAで作ってみます。PLAの製作物は真夏の倉庫や車の中に据え付けや保管をするとヘニャヘニャになりますが、保管温度に気を付ければ問題はありません。
#工具や資材
ABSは丈夫で保管温度を気にせず使えますが長い羊かん形状は苦手です。露骨に反ります。
形にならないと意味がありませんのでPLAで作ってみます。PLAの製作物は真夏の倉庫や車の中に据え付けや保管をするとヘニャヘニャになりますが、保管温度に気を付ければ問題はありません。
#工具や資材
2022年4月 この範囲を時系列順で読む この範囲をファイルに出力する
Art-Netドライバには追加しないといけないことがあります。
受信したデータにパッチなどを施して送信することには成功しているのですが、現時点ではフリーフェーダーやスタックフェーダーを考慮していません。
当初は[受信するプロセス]-[受信部からデータを取り出して加工するプロセス]-[加工したデータを受け取って送信するプロセス]と分けてイメージしていたので加工するプロセスで出来るだろうと思っていたのですが、プロセス間通信のオーバーヘッドを軽減するためにこれらを1つのプロセスにしましたので同じ考え方はできません。
今もパッチ等のマップデータはプロセス間通信で差し込んでいますが、マップデータが変更された時だけ実行すればいいので頻度が低く問題になりません。されど、即反応して欲しいフェーダー操作の情報は違ってきます。データをどう扱うか、どの位置で処理するか、ちょっと難しくなってきます。
フリーフェーダーだけなら特別なIPアドレス(例えば127.0.0.1)を用いた特別な経路でデータを取り込んでArt-Netと同列に処理する方法もありますが、スタックフェーダーにするにはちょっと無理があるように思ったりします。
ただ、これらのフェーダーはバックアップ的な意味合いが強いので反応がやや遅くてもいいかもしれません。これが許されるならプロセス間通信でデータを差し込んでもいいでしょう。
次のステップに入る前にここは片付けておかないといけません。
追記
スタックフェーダーの方法はアイデアが出ました。Art-Netの入力を記憶します。ただし、記憶するユニバースなりスロットを指定出来ないとディマー以外の動作を邪魔することがあるので一種のフィルターが必要です。フィルターがあればフリーフェーダー的にも機能します。排他的ではなくHTPミックスになりますが、この方がいいでしょう。
操作としては、記憶したい状態でスタックフェーダーとユニバースやスロットを指定してストアします。ユニバースやスロットが無指定ならすべてを記憶です。
#Python #[Art-Net]
受信したデータにパッチなどを施して送信することには成功しているのですが、現時点ではフリーフェーダーやスタックフェーダーを考慮していません。
当初は[受信するプロセス]-[受信部からデータを取り出して加工するプロセス]-[加工したデータを受け取って送信するプロセス]と分けてイメージしていたので加工するプロセスで出来るだろうと思っていたのですが、プロセス間通信のオーバーヘッドを軽減するためにこれらを1つのプロセスにしましたので同じ考え方はできません。
今もパッチ等のマップデータはプロセス間通信で差し込んでいますが、マップデータが変更された時だけ実行すればいいので頻度が低く問題になりません。されど、即反応して欲しいフェーダー操作の情報は違ってきます。データをどう扱うか、どの位置で処理するか、ちょっと難しくなってきます。
フリーフェーダーだけなら特別なIPアドレス(例えば127.0.0.1)を用いた特別な経路でデータを取り込んでArt-Netと同列に処理する方法もありますが、スタックフェーダーにするにはちょっと無理があるように思ったりします。
ただ、これらのフェーダーはバックアップ的な意味合いが強いので反応がやや遅くてもいいかもしれません。これが許されるならプロセス間通信でデータを差し込んでもいいでしょう。
次のステップに入る前にここは片付けておかないといけません。
追記
スタックフェーダーの方法はアイデアが出ました。Art-Netの入力を記憶します。ただし、記憶するユニバースなりスロットを指定出来ないとディマー以外の動作を邪魔することがあるので一種のフィルターが必要です。フィルターがあればフリーフェーダー的にも機能します。排他的ではなくHTPミックスになりますが、この方がいいでしょう。
操作としては、記憶したい状態でスタックフェーダーとユニバースやスロットを指定してストアします。ユニバースやスロットが無指定ならすべてを記憶です。
#Python #[Art-Net]
RaspberryPiのpythonでSPIで使うためのライブラリspidevの本家はこちら。
本家とは違いますが、こちらのサイトはRapberryPiのSPIについてよくまとめられています。ロシア語なんで原文のままではちっともわかりませんが、本家を読んでもわからなかったことがここで解決します。翻訳して転載したらすごく参考になるかも。
一見簡素な内容ですが、SPIの何たるかはこのサイトがわかりやすいかも。SPIには4つのモードがありますが、その違いを分かりやすく書いてくれている資料が少なくて困っていたところ、このサイトを読んで理解できました。シリアル通信に何の知識も無い人に向けた資料ではありませんが、UARTやI2CはわかるけどSPIがイマイチなぁ~って人にはお勧めです。SPIは少し独特な考え方を持っていますが、そのツボ処だけ簡潔に抽出しています。私は、マイコン全般の教科書と言ってもいいPICのマニュアルを読んでもSPIがどうしても理解できなかったのですが、このサイトを参考にPICのマニュアルを読み直したところ「なるほどー!」となりました。
#RaspberryPi #[Art-Net]
本家とは違いますが、こちらのサイトはRapberryPiのSPIについてよくまとめられています。ロシア語なんで原文のままではちっともわかりませんが、本家を読んでもわからなかったことがここで解決します。翻訳して転載したらすごく参考になるかも。
一見簡素な内容ですが、SPIの何たるかはこのサイトがわかりやすいかも。SPIには4つのモードがありますが、その違いを分かりやすく書いてくれている資料が少なくて困っていたところ、このサイトを読んで理解できました。シリアル通信に何の知識も無い人に向けた資料ではありませんが、UARTやI2CはわかるけどSPIがイマイチなぁ~って人にはお勧めです。SPIは少し独特な考え方を持っていますが、そのツボ処だけ簡潔に抽出しています。私は、マイコン全般の教科書と言ってもいいPICのマニュアルを読んでもSPIがどうしても理解できなかったのですが、このサイトを参考にPICのマニュアルを読み直したところ「なるほどー!」となりました。
#RaspberryPi #[Art-Net]
Art-Netの受送信がまとまったので、SPI通信の復習を始めました。人の操作部も大事ですが、ドライバレベルの繰り返し処理が成り立たなければ始まりません。
SPIは受信ハードウェアが無くても送信動作は可能ですから、ソフトウェア的に処理の負荷がかかる様にして試すのは重要です。
SPI通信を使うのはRaspberryPiから複数のDMXを出力する為です。RaspberryPiにはシリアルポートがありますが望む数はありません。何かしらの方法で拡張しなければなりませんが、私が扱える方法で組むならPICをフロントエンドにして数を増やしますので、PICと通信するのにSPIを使います。
SPIがどんな通信かは諸兄達に任せますが、RspberryPiでもPICでも扱えて複数のDMXを扱うのに十分な速度を持った通信です。
RaspberryPiにおいては、SPIを扱うハードウェアモジュールが搭載されているためにソフトウェアには負担がかかりませんので、周辺デバイスとの簡素な高速通信としてとても有効です。
#RaspberryPi #[Art-Net]
SPIは受信ハードウェアが無くても送信動作は可能ですから、ソフトウェア的に処理の負荷がかかる様にして試すのは重要です。
SPI通信を使うのはRaspberryPiから複数のDMXを出力する為です。RaspberryPiにはシリアルポートがありますが望む数はありません。何かしらの方法で拡張しなければなりませんが、私が扱える方法で組むならPICをフロントエンドにして数を増やしますので、PICと通信するのにSPIを使います。
SPIがどんな通信かは諸兄達に任せますが、RspberryPiでもPICでも扱えて複数のDMXを扱うのに十分な速度を持った通信です。
RaspberryPiにおいては、SPIを扱うハードウェアモジュールが搭載されているためにソフトウェアには負担がかかりませんので、周辺デバイスとの簡素な高速通信としてとても有効です。
#RaspberryPi #[Art-Net]
2022年3月 この範囲を時系列順で読む この範囲をファイルに出力する
基板をオーダーしてて思い出しました。
スマホなんて言葉が世の中に無く、インターネットはおろかパソコンですら一部の好き者の嗜好品だった時代、プリント基板を作れないかとイエローページ(電話帳)を片手に専門業者さんに電話をしまくっていた記憶があります。
専門知識を持たない素人の言葉を聞いてくれる業者さんは僅かでしたが、話を聞いてくれた業者さん曰く「ガーバーデータをくれたら作れるよん」とのこと。
ガーバーなんて言葉聞いたこともないし、当時そんなんを作れるのは最上位グレードのPC9801に超絶高価な専用ソフトを入れた環境だけ。よしんばガーバーデータを作れても、版下のフィルムを作るだけで14万円からのご相談。
とても無理で諦めた思い出ですが、それが今は小遣いで買えるパソコンにフリーウェアのCAD入れてガーバーデータをネットで送って1枚100円て・・・。
#ノリと勢いスイッチ
スマホなんて言葉が世の中に無く、インターネットはおろかパソコンですら一部の好き者の嗜好品だった時代、プリント基板を作れないかとイエローページ(電話帳)を片手に専門業者さんに電話をしまくっていた記憶があります。
専門知識を持たない素人の言葉を聞いてくれる業者さんは僅かでしたが、話を聞いてくれた業者さん曰く「ガーバーデータをくれたら作れるよん」とのこと。
ガーバーなんて言葉聞いたこともないし、当時そんなんを作れるのは最上位グレードのPC9801に超絶高価な専用ソフトを入れた環境だけ。よしんばガーバーデータを作れても、版下のフィルムを作るだけで14万円からのご相談。
とても無理で諦めた思い出ですが、それが今は小遣いで買えるパソコンにフリーウェアのCAD入れてガーバーデータをネットで送って1枚100円て・・・。
#ノリと勢いスイッチ
徹夜も辞さない覚悟でしたが、あまりの眠気で終了勧告。
生後半世紀も経ちますとね、明け方まで仕事をすると明らかな影響が出るのですよ。
瞬間の無理はまだ出来ますが、20代や30代の頃には想像も出来なかった反動が洒落にならん有様です。10時間くらい余計に頑張ると3日くらい性能が落ちます。
やらないで困るのも、反動でも困るのも、どっちも困るのですが、今は眠気に白旗を揚げることにします。
多少のことは言葉で誤魔化せるお年頃でもありますので、健康を第一としましょう。
#日常
基板の製造は「PCBgogo」さんにお願いしました。
他社と比較出来る程の知識も経験もありませんが、日本語対応が進んでいるのでやりとりが楽です。
まだ完全ではないと言っていますが、入稿したデータの完成予想画像をアカウント画面から見ることが出来ます。こちらの思惑通りにガーバーデータを受け取ってくれているか確認出来るのは凄い安心感です。
ちなみに他社さんですが、オーダー画面も設定パラメータもPCBgogoさんと大差ありません。言語が英語か日本語かの違いくらい。価格もほぼ同じ。
ここまでネットのシステムが似ていると製造システムも似ているのでは?と思います。仕上がりも大差ないのかもしれません。
ひょっとして、実際に作っているのは一社だったりして・・・
本業の忙しさが落ち着く頃に加熱台と共に入荷する見込みです。届いたら早速試験しましょう。
まずはリフローハンダからです。今回頼んだ基板5枚はリフローハンダの練習台でゴミになるかもしれませんが、大判のリフローの練習になれば御の字です。
リフローハンダに成功して動作チェックするところまで行ければ、確認と手直しをして本オーダーです。
さて、本業再開と・・・
#電子工作
本業がイキナリ忙しくなっています。
クライアント側から間近にならないと資料が来ないためですが、コロナが明けつつある現時点では全てのスタートが遅くなっているので仕方ありません。
数か月先の日程の問い合わせも多くなっています。ありがたいことですが、目先の現場に集中したい時に何故か多い不思議。
久しぶりに照明仕込み図を描きました。現場が少なかったですし、照明よりも舞監モドキをすることが多いので、これも仕方ありません。
裏方のために世の中が回っているワケじゃありませんから仕方ないは仕方ない。
照明の仕込み図が終わったら舞監仕事で別な現場の進行表をカキカキです。
終わる気がしねー。
#本業
KiCadはver6になっています。
以前インストールしたver5を使っていましたが、ver6はかなり使いやすい。
ただ、ネットの参考情報の大半がver5ベースなので、ver5で勉強してからver6にした方がいいかもしれません。ver6ベースの参考情報はまだ少ないようです。
ver5で書いたものをver6に持っていく場合はライブラリ周りで少し引っかかります。一見すんなり行けるのですが、ver5のライブラリはver6で編集出来ないよと言われてしまいます。実際は、ライブラリファイルを更新するのではなく、編集したオブジェクトのみを更新するとすれば問題なく完了します。
どちらかと言えば、ver5で作ったものをver6に持っていかないのがいいのかもしれません。
KiCadは私にとってCADLUS-Xの方言違い程度で使えたので案外楽でした。
基板屋さんもデータを正確に拾ってくれているので、今後基板を作る際にはKiCadです。
基板CADはレイヤーに当初から決められた製造上の役割りがあり、製作上の制約(パターン線間の隙間とか)を描く前に設定する必要があることだけ理解すればVecoterWorksやイラレと同じ感覚で使えます。
KiCadは、配線間違いを防止する観点からか、回路図を描いて部品同士の関係性を作ってからしか描けません。基板を描き始めるまでの儀式が多いかもしれません。
#電子工作
2022年2月 この範囲を時系列順で読む この範囲をファイルに出力する
空き時間が少なかったのですが、Art-Netのエンコードを試してみました。
受信したバイナリをデコードし、パラメータをそのままにエンコードして送信です。単純な動作ですが、これが出来なきゃパッチマシンなど絶対無理というテストです。
卓からの8ユニバースをすべて処理したのですが、負荷の増加は2.5%くらいでした。十分に許容範囲で収まったのは良いことです。
パッチマシンは8in8outくらいを想定していますが、16in16outも可能だったりして。16ユニバース出る卓が無いので試せないし作ってもオーバースペックなので私は不要かな。機能全体を組み込んでから悩むことですが・・・。
今のところ1日1課題。
あとどれくらいの課題があるのかわかりませんが、納期はありませんのでノンビリいきましょう。ここまで出来れば、丁寧にclassライブラリにまとめ上げ、コメントに使い方を明記して後々も使える様にしておきましょう。
そういう意味ではキー操作やモニタ表示もclassライブラリにして汎用性を高めるのがいいですね。
と言いますか、このまま書き増しを続けるとソースコードがグチャグチャになって後で後悔しそうです。
私のメインはPICのアセンブラなのでANSI-Cの関数タイプっぽい書き方をしがちですが、Pythonならオブジェクト指向な書き方をしたいものです。最近、クラス、インスタンス、継承を使う意味と感覚がわかってきましたので、出来るだけそういった書き方をしていこうと思います。
以前は「継承」ってのが感覚的にわからんかったのですが、関数を束ねて新しい関数を作るだけだと簡単に考えればいいみたいです。ただ、関数は実体なのであっちこっちの関数から同じ関数を同時に呼ぶと衝突が起こります。解決には親関数の中で使う関数を親関数にとって専用にすればいいのですが、同じ様な関数を使うだけ書くのは面倒だしやらたとソースが大きくなるので、ひな形であるクラスから実体のインスタンスを作るという発想になったのだと最近ようやく「感覚的に」理解出来ました。
その筋の解説書を読むと「継承はオブジェクト指向という高貴な峰の頂」みたいな奇妙に美化した記述が多いのですが、その実態は「楽して俺様関数書きてぇ〜」って俗っぽい発想でした。美化した手段を書くだけで目的を書かない解説書が多いので感覚的にわからんかったのです。
#Python #[Art-Net]
受信したバイナリをデコードし、パラメータをそのままにエンコードして送信です。単純な動作ですが、これが出来なきゃパッチマシンなど絶対無理というテストです。
卓からの8ユニバースをすべて処理したのですが、負荷の増加は2.5%くらいでした。十分に許容範囲で収まったのは良いことです。
パッチマシンは8in8outくらいを想定していますが、16in16outも可能だったりして。16ユニバース出る卓が無いので試せないし作ってもオーバースペックなので私は不要かな。機能全体を組み込んでから悩むことですが・・・。
今のところ1日1課題。
あとどれくらいの課題があるのかわかりませんが、納期はありませんのでノンビリいきましょう。ここまで出来れば、丁寧にclassライブラリにまとめ上げ、コメントに使い方を明記して後々も使える様にしておきましょう。
そういう意味ではキー操作やモニタ表示もclassライブラリにして汎用性を高めるのがいいですね。
と言いますか、このまま書き増しを続けるとソースコードがグチャグチャになって後で後悔しそうです。
私のメインはPICのアセンブラなのでANSI-Cの関数タイプっぽい書き方をしがちですが、Pythonならオブジェクト指向な書き方をしたいものです。最近、クラス、インスタンス、継承を使う意味と感覚がわかってきましたので、出来るだけそういった書き方をしていこうと思います。
以前は「継承」ってのが感覚的にわからんかったのですが、関数を束ねて新しい関数を作るだけだと簡単に考えればいいみたいです。ただ、関数は実体なのであっちこっちの関数から同じ関数を同時に呼ぶと衝突が起こります。解決には親関数の中で使う関数を親関数にとって専用にすればいいのですが、同じ様な関数を使うだけ書くのは面倒だしやらたとソースが大きくなるので、ひな形であるクラスから実体のインスタンスを作るという発想になったのだと最近ようやく「感覚的に」理解出来ました。
その筋の解説書を読むと「継承はオブジェクト指向という高貴な峰の頂」みたいな奇妙に美化した記述が多いのですが、その実態は「楽して俺様関数書きてぇ〜」って俗っぽい発想でした。美化した手段を書くだけで目的を書かない解説書が多いので感覚的にわからんかったのです。
#Python #[Art-Net]