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

Icon of admin
 午後は緩い感じだったので DMX-Timer の製造を始めました。とりあえず5台。所要時間を確認するためでもあります。
 表面実装の部品を取り付けるところまでやって夕方にになったので終わりにしましたが1枚あたりのラップは40分くらいです。スルーホールの部品まで取り付けて基板を完成させるのに1時間15分くらいでしょうか。作業時間を実測して作業の目安を立てられるようにしましょう。
 箱やらケーブルの加工も案外時間がかかります。1台あたりの総作業時間は4時間くらいかな・・・。結構かかりますね。
 工賃は3,500円/時くらいにしていますので14,000円?部品代は12,000円くらい?開発からのチャージは20,000円くらい欲しいので46,000円が現実的な売価でしょうか。高い安いではなくかかるものを積算しての金額です。量産数モノではない手作り品の価格は甘くありません。
 そもそも売る気はありません。カスハラや迷走問い合わせに応えることは自分にとって何の意味も価値も無いからです。自分と部下が使う分を確保して話の通じる知人から評価とご意見をもらえたらそれでいいかなと。
 「お客様は神様です」を真に受けたアホに売るなら一億万円。どんだけ嫌な思いをしたかお察し頂けましたら幸いです。
 完全ノンサポート・マニュアル無しの無垢基板(アセンブラソース付)なら300円(梱包費・送料は別)でいいかな?。組めるもんなら組んでみろ!(笑

#ガチ工作 #器具の製作
Icon of admin
 Art-Net 関連品を作るべくプログラム言語 Rust の勉強を進めております。
 関門とされる「所有権」や「ライフタイム」はアセンブラやC言語を書く際に普通にやっていたことを明示的に自動的にしてくれるモノであってそれ以上でも以下でもありませんでした。ただ、これらに対するアセンブラやC言語での書き方は人によって様々だと思いますので、Rust の流儀に慣れることは必要です。
 ベースはC言語だと思って間違いないと思います。私はC言語が進化したものだと思って取り組んでいますが、比較的ストレス無く習得を進められています。
 実際のところは Rust そのものより教科書の選び方が難しいと思います。所有権がぁ~、ライフタイムがぁ~と Rust 独特の機能は難しいぞと煽るのにとどのつまり何?ってことが書いていない教科書が多い。借用における制限・制約は書いてあっても解除されるタイミングについて書かれているものは皆無。自分は AI/Geminiさんに質問してようやく理解できました。本家の解説書である「The Book」の上澄みだけ書き写したのでしょうか。理解が進まないと教科書の良し悪しは評価出来ませんから痛し痒しです。
 私がわかりやすいと思える教科書を1冊見つけました。学習速度が爆上がりしています。ただ、私とっての「当たり前」が前提にあって読める内容だと思うのでご紹介は控えておきます。

#Rust

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

Icon of admin
 安いスタンド(amazonにて1,300円)に取り付けてみました。
20260527120609-admin.jpg
 こんなんでいいような気がします。

#ガチ工作 #器具の製作
Icon of admin
 一つ目玉の小型ムービングライトはLED素子のナマが逝ってました。
 点くには点くのですが色がおかしい。バラシて素子を見たらナマだけ焦げています。制御回路が正常とは言い切れませんが、LED素子がダメではダメです。
 よくよく見ると冷却ファンが回っていません。冷却不足だったのかな?
 ファンが壊れたかと配線を見ていたら「カラコロリン」とサビたナットが落ちてきました。その後、何事もなかったようにファンが始動。挟まっていたのでしょう。 
 ナットが外れたところは見当たらなかったので混入ですね。おいおい!
 幸い中華電機に同じ型番のLED素子がありました。安いから交換しましょ。

#器具の修理

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

Icon of admin
 Windows11 の設定をしてみました。
 の、まとめ。
 おかしくなっても何の保証もありません。

1)スリープ用のキャッシュをOFF
powershell(管理者)にて
> powercfg /hibernate off
再起動する
効果:システムディスクの使用量が減るのと、自分のパソコンでは起動した後に使える状態になるまでの時間が短くなった。

2)BitLockerをOFF
オフにする方法はネットにいくらでもあるのでここでは割愛。
効果:ストレージの中身を暗号化する機能だが、余程の機密を扱ってなければ無意味。そのクセ自分で開けなくなることがあるので外した方がいい。

3)高速スタートアップのOFFと電源スイッチ周り
コントロール パネル - 電源オプション - システム設定
「電源ボタンを押したときの動作」シャットダウン
「画面を閉じたときの動作」シャットダウン
「スリープボタンを押したときの動作」何もしない
「スリープ」「ロック」のチェックを外す(外せないときは青字の「現在利用可能でない設定を変更します」をクリック)
効果:高速スタートアップと言いながら、使い続けるとスタートアップが遅くなる。外した方がマシ。

4)通知を切る・・・その1
設定 - システム - 通知 - 追加の設定
3項目すべてのチェックを外す
効果:望んでない通知がやたらくるのは五月蠅い。

5)通知を切る・・・その2
設定 - システム - 通知
「通知」をオフにする
効果:望んでない通知がやたらくるのは五月蠅い。

6)ウィジェットを無効にする
PowerShell(管理者)にて
> Get-AppxPackage *WebExperience* | Remove-AppxPackage
効果:好みだが、ツールバーに天気予報など望んでいない方にはお勧め。

7)アドレスバーbingをネットから切断させる
① レジストリエディターを開く
Windowsキー + R を同時に押す(「ファイル名を指定して実行」ウィンドウが出る)
regedit と入力
Enterキーを押す
② 以下の場所に移動
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows
【検索ワードこれが確実】
コンピューター\HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows
もし「Explorer」というキーがあれば入る
無ければ、右クリックで「新規→キー」で作成
③ 右側の空白部分で右クリック
「新規 → DWORD(32ビット)値」を選びます
名前:DisableSearchBoxSuggestions
値:1
④ パソコンを再起動
効果:好みだけど、ツールバーにネット検索は不要。

8)WindowsUpdate
設定 - WindowsUpdate - 詳細オプション - 配信の最適化
「他のデバイスからのダウンロードを許可する」オフ
「以下のダウンロードを許可する」
「ローカルネットワーク上のデバイス」チェック
効果:P2Pを使ったWindowsUpdateを切るので、通信を減らすことが出来る。

 余計な挙動が減って軽くなります。特に操作への反応が良くなります。
 好みとしては、今時のパソコンで動いてアプリやデバイスが扱えるWindows2000が欲しい。

#パソコン

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

Icon of admin
 DMX-Timer 2号機の誤差を確認しました。約68時間経過で約1秒遅れ、約+4ppmです。
 水晶発振子のカタログスペック(±10ppm)からするとこんなもんでしょう。キャリブレーション機能は不要っぽいです。
 新しい物を組む度にチェックしますが、水晶発振子のカタログスペックに収まっていれば今以上の精度を出すことは不可能です。くどいようですが、普段使いの安物ストップウォッチより良い精度です。この精度で気持ち悪いって方に会ってみたい(笑
 今回組んだ物は以前の抵抗値で組んだ物から付け替えていますので抵抗の取付け強度に不安があります。最初に組んだ物と合わせてテスト機として手元に残すつもりです。
 部下に使ってもらう物も知人へ送る物も3号機以降です。
 そうそう、本体へ貼る掲示とユーザーマニュアルを作らないといけません。

#ガチ工作 #器具の製作

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

Icon of admin
 組んだ DMX-Timer です。
 スタンドは普段卓上譜面台に使っている物です。安くて使えるスタンドを探してみましょう。
20260521112441-admin.jpg
 正常に動作していますので、誤差の確認をしています。
 当初、RS485トランシーバー(中古)が不安定でしたが、交換(新品)して正常化しました。

追記
 時間補正は試作1号機のまま、5時間経過でズレはほぼありません。水晶発振子の個体差はそれほど無いっぽい。24時間で1秒以下ならいいっしょ。
 100時間くらい動かしてカウントに個体差が出たら補正(キャリブレーション)を考えますが、ファームウェアの調整ですからハードウェアの製作を進めたいですね。
 20台分の部品を仕入れてしまったので放置するワケにはいきません。

#ガチ工作 #器具の製作
Icon of admin
 これでいいと思われる DMX-Timer の回路図です。
20260521070539-admin.jpg
 ついでに基板の3D図。
20260521071244-admin.jpg
 基板上に書かれた抵抗値は一部間違ってます。上記の回路図が正しい。
202605210712441-admin.jpg
 これを数作れば半ばデッドストックになっているPIC16F1939IPTを消費出来ます。
 我が家の片隅で眠るために作られたワケではありませんので使ってあげないと申し訳ない。

#ガチ工作 #器具の製作

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

Icon of admin
 脳ミソが工作モードになってしまったので、本業はあるものの、回路を変更した DMX-Timer を組んでみました。私の脳ミソはファミコンでカセットを入れ替えるイメージですが、日に一回くらいしか差し替えが出来ないのです。
 7segを全て表示(8とドット)しようとすると全てが消灯してしまう現象への対策です。
 トランジスタの使い方を間違っていました。正しくはトランジスタ周辺の抵抗値です。ベース電流にhFE(増幅率)を掛けてコレクタ電流を得るワケですが、AI/Geminiさん曰く、ベース電流はコレクタ電流から単純計算した値の3~5倍にしなさいとのこと。もちろん定格を越えてはいけませんが、原因はベース電流不足だったらしくアッサリ解決。Yグレード(低増幅率)ではなくGRグレード(高増幅率)のトランジスタを使っていたら発生しなかったのですが、YグレードのhFEの半分で設計したのになんでやろと思ってました。アナログ回路は苦手ですが、トランジスタの扱いは深淵だと再認識。定数が分かれば問題解決ですけど。
 てなワケで、DMX-Timer は完成と言ってもいいかな?引き続き、組めたごとに誤差チェックはしますけど。
 実作業二週間で製品一つ完成は過去最短記録!こんなペースのモノ作りは専業にしてもシンドイかも。

#ガチ工作 #器具の製作
Icon of admin
 NGのオンパレード。
 一つ目玉の小型ムービングライトも使っております。向きを決められて色が変わるスピナーみたいな製品です。1台では非力ですが、まとまった数を群で動かすとそこそこ使えます。今となってはPAR球より安いのも魅力。
 そんなムービングですが生色だけ明るさが半分くらいになってしまいます。電源を入れた直後は正常ですが数分経つと減光します。冷却不足か、MOSFETが劣化しているか、電流センシング抵抗が狂っているか、制御ICが定格落ちしているか・・・原因はそんなところでしょう。これらの部品は中華電機で安価に手に入ります。検証が面倒なので全て交換?

#器具の修理
Icon of admin
 スモークマシン Antari F1-FAZER を使っていますが、大修理をして1年、ボチボチ不調が出始めました。
 今回はリキッドを吸い上げませんのでポンプを交換です。同型120v仕様のポンプに最初から付いていた100v仕様のコイルを移植。爆煙復活!
 いずれ発煙器もダメになるだろうと発注。USAのサウンドハウスみたいなところですが、前回は届くまで半月くらいかかったので不調になってからの発注ではよろしくありません。ただ、本体価格は前回並みなのに送料が爆増。78USDから347USDになってました。何じゃこりゃ!?USAからの購入ですから国内宅配便並みのワケありませんが、それにしても昨年に比べて4.5倍ってのは驚きです。原油不足で航空運賃が上がっているのでしょうけど、手に入らないのは困るし新品本体買うよりは安いのでイイですけど・・・。

#器具の修理
Icon of admin
 ムービングライトは磁気ホールセンサを交換して治ったようです。
 問題は「何故壊れたか」です。
 ステッピングモーターを空回ししますと結構な電圧が発生しますので、これが回り込んだのでしょうか。
 先日の故障はモータードライブICでした。これはモーターと直結されていますので、空回しによる電圧が入ってのことだと想像は出来ます。
 ですが、元の電源が+24vに対し磁気ホールセンサへ行っている電圧は+5vですので途中に電圧を変換する何かは入っているハズと思われます。モーターからの電圧が直接かかるものかな?
 モーターからマイナス電圧が出たならば同種のセンサもやられてしまいそうなものです。
 こういった想定外動作による故障事例は資料があるようでありません。文面をよく考えてからAIさんにでも聞いてみましょう。

追記
 AI/Geminiさんとやりとりしました。物理的な破損でなければ異常電圧によるのは間違いないっぽい。
 電源ラインにオシロスコープにつなげて観測できる環境を作ってみます。観測された電圧によってはツェナーダイオードやTVSダイオードを追加してクリッピングすることにします。
 モーターを伴う回路設計で注意すべき点を一つ勉強出来ました。スクローラーを作った時には入れていましたので、基本は大切だと改めて実感したところです。

#電子工作 #器具の修理

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

Icon of admin
 Art-Net 関連機器の製作についてAI/Geminiさんとやりとりをしました。相談出来る達人が近くに居ないので助かります。
 大きなヒントを一つもらいました。ブロッキングの活用です。
 キーボード入力においてもEtnerの受信においても入力や受信があるまで(または設定した一定時間)一時停止して待つ設定です。処理が一時停止しますが、イベントが発生した時に速やかに処理出来ます。他の処理はスレッドを分けておけば大丈夫です。スレッドとは処理を並列化させる(疑似的に複数の処理を同時進行させる)方法です。止まらせることなく延々と回したい処理とブロッキングしたい処理を別スレッドにすれば全体としては止まることがありません。PICマイコンでやってきた「ひたすら回してフラグで分岐する」って感覚がアタマに固着していたようで、スレッドを分けてブロッキングを活用する発想がありませんでした。ただ、無制限のブロッキングをしますと都合が悪いこともあるので0.1~0.5秒ごとにブロッキングを外して周囲を伺うのが良さそうです。

#Rust #[Art-Net]

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

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に対応した単色の安いプリンタを買ってもいいかもしれません。

#ガチ工作 #器具の製作

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

Icon of admin
 DMX-Timer は昨日今日の現場で部下が使ってくれています。問題無く使えている様子なので安心しました。
 今月下旬まで製作する時間はとれませんが、その後出来るだけ多く作りましょう。

#ガチ工作 #器具の製作
Icon of admin
 C言語での ncurses みたいに、Rust で画面にテキスト表示するなら crossterm だそうです。キーボード操作も扱えます。
 あるのか無いのかの確認をしただけですが、あるなら問題ありません。
 C言語ベースで処理段取りの整理を随分やってきましたので、Rust の勉強が進めば Art-Net 関連を書き始められそうです。

#Rust #[Art-Net]
Icon of admin
 合間に Rust の勉強をしています。
 今は「所有権」について整理していますが、変数は内容を保存するメモリ、そのアドレスとメタデータを保存するインデックスで構成されていると捉えれば自然に理解出来ます。ソースコード上での使い方は別問題ですが、「所有権」の譲渡と貸出はこの構成から見ればいいだけでした。挙動の表面だけで理解しようとすると何がどうなっているか、どうしてこんなことをするのか理解し難いようですけど。
 ただ、「所有権」という言葉には疑問があります。私の理解では「変数へのアクセス権限」となりました。この言葉のまんまですが、「所有権」は変数の内容にアクセスできるかどうかですから、持っているかより権限があるかが重要だと思うのです。この場合の「所有権」はこういう意味の言葉だと扱えばいいだけですが、「所有権」と言われると「所有者」は?と聞きたくなり、「所有物」は何?とも聞きたくなります。「所有権」の説明では「所有者」も「所有物」も変数だとする物が多く、当初は何のこっちゃいと感じたものです。「所有者」は変数であり、「所有物」は変数の内容が書かれたメモリとなります。あくまでイメージですけど、「変数の内容が格納されたメモリのパーミッション」だとも思えます。

#Rust

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

Icon of admin
 磁気ホールセンサには次のような種類があるそうです。
 Google/AIからのコピペですが自分のメモとして転載。

1.リニアホールセンサ (リニア出力)
 特徴: 磁束密度(磁石の強さ)に比例した電圧を出力。

2.デジタルホールセンサ (ホールIC)
 特徴: 磁気の有無(しきい値)で出力をON/OFFする。
 ・片極検知(単極): N極またはS極のどちらか一方のみを検知。
 ・両極検知: N極・S極両方に対応。磁極に関わらず検知。
 ・交番検知(ラッチ): S極→N極、N極→S極と磁極が切り替わるたびに出力が反転。

 今回の修理で用いるのは「デジタルホールセンサ:片極検知(S極)」です。

#電子工作 #器具の修理
Icon of admin
 元々の磁気ホールセンサを調べたところ「A1104」らしいです。刻印は「A452」ですが、そういうこともあるんだとか。AI/Geminiさんに聞いたところ判明しました。代替で手配した「A3144」でも動作するだろうとのことですが、感度が少し違うらしいので「A1104」の到着を待ちましょう。中国からですが、早ければ来週半ばには入荷です。

#器具の修理
Icon of admin
 秋月電子さんで扱っている磁気ホールセンサで形状が同じで在庫が豊富な物は2種あります。
ホールIC(ホールラッチ) SK1816G-G03
ホールIC(ホールラッチ) US1881LUA
 違いは「磁束密度しきい値」です。
 磁気に対する反応が違うのだろうと思いますが、元々付いているセンサのデータシートが手に入りませんのでどちらがいいのかわかりません。
 とりあえず前者を頼んでみました。

追記
 磁気ホールセンサには「両極検知」と「交番検知」があるそうです。
 前者はS極でもN極でも磁気を受けたらスイッチが入るもの、後者はどちらかの極性を受けたらスイッチが入り反対の極性を受けたら切れるものらしいです。
 オーダーしたのは後者なのでダメですね。
 探しなおして発注しないと。

追記の2
 求めるのは「両極検知」ですが、秋月さんでは欠品していますので、amazonさんに「A3144」を発注しました。これが「両極検知」なのかわからんのですが、試してみるしかありません。
 本体の基板をあたったところ、電源5v、プルアップ抵抗1kΩでした。スイッチ特性が不明な以外はA3144で問題無さそうです。

#器具の修理

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

Icon of admin
 ムービングライトに不調が出ました。
 カラーホイールの原点が取れず色ズレになります。調べたところ磁気ホールセンサーが反応してません。
 基板のマイコンが壊れている可能性も否定出来ませんが、まずはセンサを交換してみます。
 秋月電子さんにサイズやピンアサインが同じモノがあったので発注しました。
 治るかな・・・。

#器具の修理
Icon of admin
 DMX-Timer は86時間30分経過で1秒弱のズレ(2ppm?)です。誤差を実測しても無意味な気分になってきました。
 比較に使ったのは iPhone アプリの「原子時計pro」です。たぶん、日本標準時のNTPサーバー(ntp.nict.jp)に同期する時計アプリだと思いますが、これ以上の比較対象を求めるのは無理だと思われます。
 試作1号機は無補正で24時間に8秒(96ppm)進んでいました。今後作る品は灯を入れて使ってみないとわかりませんが、製品の見た目がちゃっちいので、誤差表示を「±10秒/24時間(116ppm)」としておけばいいでしょう。製品一つ一つの精度確認などやってられませんから、これ以上ズレることはないって数値にしておくのです。
 116ppmは10分で0.07秒のズレですから、ダンス演目などで時間経過の参考に使うには十分だと思います。0.1秒の変化を読み取れて反応出来る人には物足りないでしょうけど、私には出来ないことなのでヨシとします(笑

#ガチ工作 #器具の製作
Icon of admin
 Rust を勉強しながら何となくですが「月刊マイコン」という雑誌を思い出しました。1995年4月に廃刊になってしまいましたが、コンピュータってモノに突っ込んだニッチな雑誌でした。
 こんな雑誌を購読していた小学生の自分はおかしなガキだったと思います。書いてあることのほとんどが理解出来ませんでしたが、コンピュータの可能性を感じてワクワクしながら読んでいました。その時感じたことが今の後押しになっていると思います。21世紀は夢の時代になるって世の中が感じていた時でもありますけどね。そんなガキでも「月刊I/O」はワケわからな過ぎてそっ閉じしてましたけど。
 漫画は買ってくれませんでしたが、インターネットなんて言葉すらなかった時代、こういった書物は惜しみなく買ってくれた両親に感謝する今日この頃。

追記
 「月刊I/O」は現存しているようです。
 購読しましょう。

#雑談
Icon of admin
 Rust の教科書は「所有権」や「ライフタイム」で大騒ぎしないモノがいいようです。大騒ぎする教科書はその厄介さを語って力尽きるのか「とどのつまり?」の説明が薄い傾向にあります。両方とも重要なことですが、これらが Rust の全てではありません。「cargo」と呼ばれるプロジェクト管理ツールを説明しない教科書は論外です。
 間違っても初めてのプログラム言語に Rust を選ぶのはお勧めできません。最終的に作りたいモノによりますが、html や Python あたりで成功体験を積み重ねて神エンジニアたちが目指したことを体に取り入れるのが良いと思います。Rust はC言語同様に理解するための前提というか基礎の裾野が広すぎるのです。
 私は回路設計とプログラミングの境界が曖昧な PIC16 で右往左往してきましたので脳ミソが少しおかしいのですが、C言語もそうですが、Rust を受け入れるにはこのコードでハードウェアが何をするかをイメージ出来るといいようです。両言語ともハードウェアを制御する傾向が強いからでしょうか。

#器具の製作 #C言語 #Rust

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

Icon of admin
 Art-Net 関連品の開発では「Rust」を使うことにしました。
 Rust が持つ標準機能が Art-Net 関連品を作るのに絶大に有益なことがわかったからです。コレクションと呼ばれる機能です。
 新たな言語を勉強するのは大変ですが、C言語の方言と思えばゼロベースではありません。C言語を学んだことで Rust がすんなり自分の中に入ってくる実感があります。Rust を学ぶためにC言語を勉強するベキ!?ってことでもありますが、案外そんなもんかなと感じています。C言語でも Rust でもコードの裏側にあることは同じってことですかね。ハードウェアを動かすのがソフトウェアですから。
 あまりに便利なので Python みたいに遅くねーの?って疑問はありますが、コンパイルされたバイナリはC言語やC++に匹敵するらしいのでその評価を信じましょう。
 言葉は優しいですが、AI/Geminiさんのお言葉を要約するなら基板を作ってPIC16アセンブラを書いて RaspberryPi と協調動作する装置を作る素人(アマチュア)は斜め上過ぎる存在らしいです。私にとっては日常感覚ですケド、その延長かプログラム言語に対するアプローチも少し変みたいです。私からしたらパチンコやスロットで確率数値を操って常に勝ち続けてる人の方がどうかしてますケド。

#器具の製作 #C言語 #Rust
Icon of admin
 現場から上がったので DMX-Timer を確認しました。48時間経過したのにズレは1秒以下です。
 すごく良いことですが、誤差の数値を得られないと気持ちがスッキリしません。私の趣向的にモヤモヤしてるだけですけどね。。。
 なので継続してみます。あと1日で片付けないといけませんが72時間までチェックできるかな?

#ガチ工作 #器具の製作
Icon of admin
 DMX-Timer は終わりが見えてきました。次の課題はArt-Net 関連機器と行きたいところです。
 これらは RaspberryPi 上でのプログラミングが主となりますが言語どうするか。C言語か Rust の二択ですけど、未だに迷っております。この2種はハードウェアを扱うのに適した言語ですから Art-Net 関連機器を組むにはよいと思われます。両方を使いこなせればいいのですが、年齢的に一つでも辛いのに二つは無理。。。少し前までC言語でいくつもりで勉強していましたが、 Rust の教科書を斜め読みしたところ自分がやりたいことには Rust が向いているような気がして困っているワケです。
 Rust の情報に接しますと「所有権がぁ、所有権がぁ」と脅しの様に書かれております。これはC言語での「ポインタがぁ、ポインタがぁ」や、C++での「オブジェクト指向がぁ、がぁ」と同じです。身に着けないと使えないし身に着ければよりよいコードが書けるのですから身に着ければいい。簡単でないことは確かですが、言語をデザインした神エンジニアたちは苦労や混乱をさせたかったワケではありません。たぶん。
 開発には心の余裕とまとまった時間が必要です。なかなかそんな時間は取れませんので、引き続き妄想しながら勉強をしましょう。

#C言語 #Rust

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

Icon of admin
 昨日修正した DMX-Timer は15時間経過でほぼ合ってます。このまま続けて誤差を出しましょう。
 48時間で1秒くらいだったらOKとし、誤差次第ではキャリブレーション機能を追加します。
 試作2号機が組めたら並列で試験です。

 修正前は8秒/日の誤差でした。カウント値を1秒毎に3つ多くすることで今があります。
 カウント値1つあたり2.6秒/日の補正ですので、これ以上細かい誤差は補正出来ません。

追記
 24時間経過で1秒以下の誤差です。
 見た目で数値がわかるわけありませんが、1秒の1/3か半分くらい遅れているように見えます。仮に0.5秒なら明日には1秒になるでしょう。
 今以上の補正は難しいので、この後は誤差を把握するだけにします。

追記の2
 34時間経過で誤差は1秒以下。
 何時間後に1秒ズレるのか確認しようと思っていますが、48時間で1秒くらいなら御の字なのでそこで終わりにしましょう。

#ガチ工作 #器具の製作

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

Icon of admin
 ちょっと誤差計算しました。
 96ppmのズレってことは、8MHzのクロックで768カウント相当です。
 このクロックの256カウントで1カウントするカウンタを3,125カウントして0.1秒を得ていますが、これに閏カウントを1秒毎に3つ入れればイイとなります。各秒のアタマ(1/10秒がゼロの時)に768カウント分まとめて入れてもいいかな?違いは96usecですから気にならないと思う。これなら簡単かも。

 実際の誤差は96ppm丁度ではありませんし水晶発振子に誤差があるならば単純ではありませんが、1秒あたり256x3のカウント調整をすれば今よりずっと良い値になると思うのです。

追記
 モヤモヤしてしまうので書き直し。30分くらいの作業でした。
 またもや動作試験です。

#ガチ工作 #器具の製作
Icon of admin
 昨日は見間違えをしたようです。
 基準となる時計の00秒で DMX-Timer のズレを見るハズが逆をやっていたようです。
 先ほどチェックしたところ、120時間30分経過で42秒のズレです。誤差は 96ppm 程度。
 一定していますのでそういうものだとしましょう。
 昨日は34秒のズレだったワケです。

 この誤差ですと1日あたり8秒、1時間あたり0.346秒、10分なら0.0576秒のズレです。1秒ズレるのは2時間53分後です。
 DMX-Timer は計測や自動操作ではなく経過時間の目安を見るためのものです。量販店で手に入るストップウォッチと同等かそれ以上の精度ですから問題ないっしょ。
 時間があって気が向いたら精度を高める方法を考えてみましょう。

 もし、時計に相当する仕掛けを作るなら、それ相応の精度を持ったタイマーを使うか RaspberryPi などの NTPサーバーと通信出来るマイコンを使うのが良いかと。
 タイマーを使った定時実行のライトアップを毎年やらせて頂いていますが、年に一回の使用なので翌年のセットアップではタイマーの時刻がズレています。仕込み時に合わせれば問題ありませんが、この程度の精度で十分仕事になっています。より精度が高いのは NTPサーバーや基準電波との同期だと思います。1/100秒くらいの精度は出ると思いますので、年中動かしっぱなしならお勧めの方法です。

#ガチ工作 #器具の製作

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

Icon of admin
 リノリュームを敷くだけ現場です。
 しばらく様子を見ようと思ったのですが大丈夫とのことで早々に退散。本番バラシは明日。
 中途半端に時間が空いたので DMX-Timer の基板をハンダ付けしました。
20260502143729-admin.jpg 202605021437291-admin.jpg
 ケーブル類を作って灯入れしようと思ったら用事が出来てしまったのでここまで。

 誤差確認は100時間と少しで26秒。
 昨日は25秒だったから1日で1秒!?
 あれ?
 エージングすると誤差が減るみたいなことが水晶発振子のデータシートに書いてありますが、そういうこと?
 昨日の段階で実用精度が出ていますが、興味深いのであと数日このまま動かしてみましょう。

#ガチ工作 #器具の製作

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

Icon of admin
 本業が忙しくなってきたので工作は一旦休憩です。

 されど気になったので時計の精度について調べてみました。

一般的: 日差 -10〜+20秒程度
高品質/アンティーク: 日差 +30〜+60秒?
クロノメーター規格: 平均日差 -4〜+6秒以内
クォーツ式時計 通常モデル: 月差 ±15秒前後(日差にすると±0.5秒)
クォーツ式時計 年差モデル: 年差 ±5秒〜±1秒(超高性能)

 とのこと。
 一般的が「日差 -10〜+20秒程度」なら DMX-Timer はまぁまぁでしょう。

 比較対象は原子時計の値を表示するアプリやサイトを使うのが良さそうです。
 ネット回線の遅延もありますし観測期間が短いと評価が難しいので数日単位が良いと思います。4-5日動かして秒のズレで見ればいいかなと。

 妄想ですが、ネットに繋げて原子時計と比較して自動的にキャリブレーションが出来たらいいなぁ~なんて思います。
 DIYとして手に入る水晶発振子ですと温度による変動も大きいようです。製品によって違いますが、一般的には±20~100ppmくらいらしい。今以上の精度を求めるには温度管理が重要になりそう。こりゃ無理ってもんです。

#ガチ工作 #器具の製作
Icon of admin
 DMX-Timer を72時間試してみました。誤差は25秒、96ppm、昨日と同じ値です。このまま96時間(4日間)試しますが、試作1号機の精度はこの値とみてよさそうです。
 96ppm がイイのかダメなのかは使う人によります。私は十分だと思いますのでこれ以上頑張りません。
 もし時計として今以上の精度が必要になったら高精度な水晶発振子を使い、PICで組むとしてもカウント以外の処理をさせないように考えるべきでしょう。

#ガチ工作 #器具の製作