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

今年は開発案件を進めたい

or 管理画面へ

全年5月12日の投稿[5件]

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

Icon of admin
 Art-Net 関連機器は RaspberryPi_CM4 を母体に Rust でコードを書きます。Rust を使うのはこの件が初めてなので無謀な気もしますが、C言語で動いたモノを Rust で書き直す感じなので大丈夫っしょ。C言語で書いたモノもメモリ構成を大変更するために全部書き直すつもりだったので作業量は大差ありません。
 使ってみないとわかりませんが、C言語で出来ることは Rust でも出来るそうです。これを信じて取り組んでいきましょう。

#[Art-Net] #Rust
Icon of admin
 Rust のことは随分わかってきました。大雑把に括るとC言語と同じです。Python や .NET 系のようにマネージが強くて自由度が狭いってことは無いっぽいです。
 「所有権」や「ライフタイム」は方言程度の違いでした。両方ともC言語ではコードを書く側が注意を払ってきたことを自動的にアシストしてくれる機能です。アルゴリズムの中に埋もれるバグを予防出来るので、難しいというより手間をかけるのが先か後かってだけでした。
 「所有権」は変数の読み書きの不整合や二重処理を防止するための対策です。その対策の意味を理解するには変数の処理構造を知っていた方がいいと思うのですが、その説明をすっ飛ばして「所有権がぁ~」と話をする教科書が多くて読んでいるこちらが混乱します。C言語におけるポインタが理解出来ていればそれほど難しいことではないので、ポインタがわかっている前提で説明をしてくれる教科書があってもいいんぢゃないのかなぁ~って思います。「所有権」によって制限されることはC言語のコードを書く上でも注意しなければならないことなので、だったら前提として管理・制限しときゃいいんぢゃね?ってことなのでしょう。C言語のポインタは自由度が高い反面コードを書く側が管理・制限してきましたが、これをコンパイラが厳密にチェックしてくれるのですからある意味楽です。
 「ライフタイム」は変数のコード上での有効範囲のことです。変数の有効時間の設定・管理ではありません。変数の有効範囲はC言語とほぼ同じですが、変数の有効無効をコード上でチェックで出来ます。関数で用いる変数が有効かをチェックしたり、この関数の処理が済むまで変数を維持するように指示をする機能が追加されたと思えばよさそうです。
 どちらも、ややこしさを追加して意地悪しているのではありません。

#Rust
Icon of admin
 DMX-Timer をご理解を頂けそうな知人にお知らせしたところ興味を持って頂けました。
 月末になりませんと組む時間は取れませんが、その後送ってお試し頂くつもりです。
 ケースはプリントするのにそれなりの時間がかかるので射出で作ったらどのくらいかと聞いてみたのですが、金型を作るのに数百万と言われてしまい30秒で話が終わってしまいました。
 手持ちの3Dプリンタでノンビリ作ることにしますが、今使っているプリンタは運用コストが案外高いです。作る物の大半がABS単色ですから、ABSに対応した単色の安いプリンタを買ってもいいかもしれません。

#ガチ工作 #器具の製作

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

Icon of admin
 PythonでVLCライブラリを使った音源ファイルの再生は驚くほど簡単。
 インストールするべき諸々や音源モジュールの設定などもありますが、貴兄のサイトにいくらでもあるのでここでは割愛。
 VLCで再生が出来、Python本体とPython-VLCがインストールされていればいいと思います。

 以下、sound.mp3を再生するPythonのコード。

import vlc

if __name__ == '__main__':
 p = vlc.MediaPlayer()   #vlc.MediaPlayerのインスタンスを作成
 p.set_mrl('sound.mp3')  #インスタンスに音源ファイルを関連付け
 p.play()         #再生開始


 こんだけです!
 vlcのインスタンスを宣言し、音源ファイルを設定し、再生を指示するだけ。
 再生はバックグラウンドで行われるので、マルチスレッドを使うことなく再生中に他のことが出来るのも良点。
 ちなみに「p」はインスタンス名なので自由に定義して良いようです。

 Python-VLCはC言語などが使うlibVLCをPythonから呼び出せるようにしているので、libVLCで出来ることの大半が出来るようです。
 以下基本的なAPI。
p.set_mrl('sound.mp3')  #インスタンスに音源ファイルを関連付け
p.play()         #再生開始
p.pause()         #再生中なら一時停止、一時停止中なら再生再開
p.get_time()       #開始からの経過時間を取得(msec.)
p.set_time(1000)     #指定した秒数(msec.)にセット
p.audio_set_volume(100)  #0=mute,100=0dB(パーセント指示だと思っていいみたい)
p.stop()         #停止

 やりたいことはこれだけで済んでしまいそうな気もする。

 python-vlcのドキュメント
 沢山の事が出来るようですが、
 vlc.MediaPlayer
 の項を読むと上記のことがわかります。

#Python

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

Icon of admin
 モニタの脚をプリントしていますが、ドライキーパーで保管したフィラメントはいいですね。
 外湿度マイナス35%のドライキーパーですが、内部湿度は25%を示しています。カラカラですね。どの程度がいいかわからんのですが、低すぎてダメってこともなさそうです。
 性能の良いプリンタが良いに決まってますが、フィラメントを低湿度で保管しなければ性能は発揮できないと思います。同じ予算ならドライキーパーに予算を向けることをお勧めします。

#工具や資材

■思ってみた

陽が伸びて暑さを感じるようになってきました。

編集

■全文検索:

複合検索窓に切り替える

■複合検索:

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

■日付検索:

■カレンダー:

2026年5月
12
3456789
10111213141516
17181920212223
24252627282930
31

■カテゴリ:

■最近の投稿:

最終更新日時:
2026年6月7日(日) 11時25分02秒