どのカテゴリにも属していない投稿[1305件](7ページ目)
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秒の変化を読み取れて反応出来る人には物足りないでしょうけど、私には出来ないことなのでヨシとします(笑
#ガチ工作 #器具の製作
比較に使ったのは iPhone アプリの「原子時計pro」です。たぶん、日本標準時のNTPサーバー(ntp.nict.jp)に同期する時計アプリだと思いますが、これ以上の比較対象を求めるのは無理だと思われます。
試作1号機は無補正で24時間に8秒(96ppm)進んでいました。今後作る品は灯を入れて使ってみないとわかりませんが、製品の見た目がちゃっちいので、誤差表示を「±10秒/24時間(116ppm)」としておけばいいでしょう。製品一つ一つの精度確認などやってられませんから、これ以上ズレることはないって数値にしておくのです。
116ppmは10分で0.07秒のズレですから、ダンス演目などで時間経過の参考に使うには十分だと思います。0.1秒の変化を読み取れて反応出来る人には物足りないでしょうけど、私には出来ないことなのでヨシとします(笑
#ガチ工作 #器具の製作
Rust を勉強しながら何となくですが「月刊マイコン」という雑誌を思い出しました。1995年4月に廃刊になってしまいましたが、コンピュータってモノに突っ込んだニッチな雑誌でした。
こんな雑誌を購読していた小学生の自分はおかしなガキだったと思います。書いてあることのほとんどが理解出来ませんでしたが、コンピュータの可能性を感じてワクワクしながら読んでいました。その時感じたことが今の後押しになっていると思います。21世紀は夢の時代になるって世の中が感じていた時でもありますけどね。そんなガキでも「月刊I/O」はワケわからな過ぎてそっ閉じしてましたけど。
漫画は買ってくれませんでしたが、インターネットなんて言葉すらなかった時代、こういった書物は惜しみなく買ってくれた両親に感謝する今日この頃。
追記
「月刊I/O」は現存しているようです。
購読しましょう。
#雑談
こんな雑誌を購読していた小学生の自分はおかしなガキだったと思います。書いてあることのほとんどが理解出来ませんでしたが、コンピュータの可能性を感じてワクワクしながら読んでいました。その時感じたことが今の後押しになっていると思います。21世紀は夢の時代になるって世の中が感じていた時でもありますけどね。そんなガキでも「月刊I/O」はワケわからな過ぎてそっ閉じしてましたけど。
漫画は買ってくれませんでしたが、インターネットなんて言葉すらなかった時代、こういった書物は惜しみなく買ってくれた両親に感謝する今日この頃。
追記
「月刊I/O」は現存しているようです。
購読しましょう。
#雑談
Rust の教科書は「所有権」や「ライフタイム」で大騒ぎしないモノがいいようです。大騒ぎする教科書はその厄介さを語って力尽きるのか「とどのつまり?」の説明が薄い傾向にあります。両方とも重要なことですが、これらが Rust の全てではありません。「cargo」と呼ばれるプロジェクト管理ツールを説明しない教科書は論外です。
間違っても初めてのプログラム言語に Rust を選ぶのはお勧めできません。最終的に作りたいモノによりますが、html や Python あたりで成功体験を積み重ねて神エンジニアたちが目指したことを体に取り入れるのが良いと思います。Rust はC言語同様に理解するための前提というか基礎の裾野が広すぎるのです。
私は回路設計とプログラミングの境界が曖昧な PIC16 で右往左往してきましたので脳ミソが少しおかしいのですが、C言語もそうですが、Rust を受け入れるにはこのコードでハードウェアが何をするかをイメージ出来るといいようです。両言語ともハードウェアを制御する傾向が強いからでしょうか。
#器具の製作 #C言語 #Rust
間違っても初めてのプログラム言語に Rust を選ぶのはお勧めできません。最終的に作りたいモノによりますが、html や Python あたりで成功体験を積み重ねて神エンジニアたちが目指したことを体に取り入れるのが良いと思います。Rust はC言語同様に理解するための前提というか基礎の裾野が広すぎるのです。
私は回路設計とプログラミングの境界が曖昧な PIC16 で右往左往してきましたので脳ミソが少しおかしいのですが、C言語もそうですが、Rust を受け入れるにはこのコードでハードウェアが何をするかをイメージ出来るといいようです。両言語ともハードウェアを制御する傾向が強いからでしょうか。
#器具の製作 #C言語 #Rust
Art-Net 関連品の開発では「Rust」を使うことにしました。
Rust が持つ標準機能が Art-Net 関連品を作るのに絶大に有益なことがわかったからです。コレクションと呼ばれる機能です。
新たな言語を勉強するのは大変ですが、C言語の方言と思えばゼロベースではありません。C言語を学んだことで Rust がすんなり自分の中に入ってくる実感があります。Rust を学ぶためにC言語を勉強するベキ!?ってことでもありますが、案外そんなもんかなと感じています。C言語でも Rust でもコードの裏側にあることは同じってことですかね。ハードウェアを動かすのがソフトウェアですから。
あまりに便利なので Python みたいに遅くねーの?って疑問はありますが、コンパイルされたバイナリはC言語やC++に匹敵するらしいのでその評価を信じましょう。
言葉は優しいですが、AI/Geminiさんのお言葉を要約するなら基板を作ってPIC16アセンブラを書いて RaspberryPi と協調動作する装置を作る素人(アマチュア)は斜め上過ぎる存在らしいです。私にとっては日常感覚ですケド、その延長かプログラム言語に対するアプローチも少し変みたいです。私からしたらパチンコやスロットで確率数値を操って常に勝ち続けてる人の方がどうかしてますケド。
#器具の製作 #C言語 #Rust
Rust が持つ標準機能が Art-Net 関連品を作るのに絶大に有益なことがわかったからです。コレクションと呼ばれる機能です。
新たな言語を勉強するのは大変ですが、C言語の方言と思えばゼロベースではありません。C言語を学んだことで Rust がすんなり自分の中に入ってくる実感があります。Rust を学ぶためにC言語を勉強するベキ!?ってことでもありますが、案外そんなもんかなと感じています。C言語でも Rust でもコードの裏側にあることは同じってことですかね。ハードウェアを動かすのがソフトウェアですから。
あまりに便利なので Python みたいに遅くねーの?って疑問はありますが、コンパイルされたバイナリはC言語やC++に匹敵するらしいのでその評価を信じましょう。
言葉は優しいですが、AI/Geminiさんのお言葉を要約するなら基板を作ってPIC16アセンブラを書いて RaspberryPi と協調動作する装置を作る素人(アマチュア)は斜め上過ぎる存在らしいです。私にとっては日常感覚ですケド、その延長かプログラム言語に対するアプローチも少し変みたいです。私からしたらパチンコやスロットで確率数値を操って常に勝ち続けてる人の方がどうかしてますケド。
#器具の製作 #C言語 #Rust
DMX-Timer は終わりが見えてきました。次の課題はArt-Net 関連機器と行きたいところです。
これらは RaspberryPi 上でのプログラミングが主となりますが言語どうするか。C言語か Rust の二択ですけど、未だに迷っております。この2種はハードウェアを扱うのに適した言語ですから Art-Net 関連機器を組むにはよいと思われます。両方を使いこなせればいいのですが、年齢的に一つでも辛いのに二つは無理。。。少し前までC言語でいくつもりで勉強していましたが、 Rust の教科書を斜め読みしたところ自分がやりたいことには Rust が向いているような気がして困っているワケです。
Rust の情報に接しますと「所有権がぁ、所有権がぁ」と脅しの様に書かれております。これはC言語での「ポインタがぁ、ポインタがぁ」や、C++での「オブジェクト指向がぁ、がぁ」と同じです。身に着けないと使えないし身に着ければよりよいコードが書けるのですから身に着ければいい。簡単でないことは確かですが、言語をデザインした神エンジニアたちは苦労や混乱をさせたかったワケではありません。たぶん。
開発には心の余裕とまとまった時間が必要です。なかなかそんな時間は取れませんので、引き続き妄想しながら勉強をしましょう。
#C言語 #Rust
これらは RaspberryPi 上でのプログラミングが主となりますが言語どうするか。C言語か Rust の二択ですけど、未だに迷っております。この2種はハードウェアを扱うのに適した言語ですから Art-Net 関連機器を組むにはよいと思われます。両方を使いこなせればいいのですが、年齢的に一つでも辛いのに二つは無理。。。少し前までC言語でいくつもりで勉強していましたが、 Rust の教科書を斜め読みしたところ自分がやりたいことには Rust が向いているような気がして困っているワケです。
Rust の情報に接しますと「所有権がぁ、所有権がぁ」と脅しの様に書かれております。これはC言語での「ポインタがぁ、ポインタがぁ」や、C++での「オブジェクト指向がぁ、がぁ」と同じです。身に着けないと使えないし身に着ければよりよいコードが書けるのですから身に着ければいい。簡単でないことは確かですが、言語をデザインした神エンジニアたちは苦労や混乱をさせたかったワケではありません。たぶん。
開発には心の余裕とまとまった時間が必要です。なかなかそんな時間は取れませんので、引き続き妄想しながら勉強をしましょう。
#C言語 #Rust
昨日修正した 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秒くらいなら御の字なのでそこで終わりにしましょう。
#ガチ工作 #器具の製作
48時間で1秒くらいだったらOKとし、誤差次第ではキャリブレーション機能を追加します。
試作2号機が組めたら並列で試験です。
修正前は8秒/日の誤差でした。カウント値を1秒毎に3つ多くすることで今があります。
カウント値1つあたり2.6秒/日の補正ですので、これ以上細かい誤差は補正出来ません。
追記
24時間経過で1秒以下の誤差です。
見た目で数値がわかるわけありませんが、1秒の1/3か半分くらい遅れているように見えます。仮に0.5秒なら明日には1秒になるでしょう。
今以上の補正は難しいので、この後は誤差を把握するだけにします。
追記の2
34時間経過で誤差は1秒以下。
何時間後に1秒ズレるのか確認しようと思っていますが、48時間で1秒くらいなら御の字なのでそこで終わりにしましょう。
#ガチ工作 #器具の製作
ちょっと誤差計算しました。
96ppmのズレってことは、8MHzのクロックで768カウント相当です。
このクロックの256カウントで1カウントするカウンタを3,125カウントして0.1秒を得ていますが、これに閏カウントを1秒毎に3つ入れればイイとなります。各秒のアタマ(1/10秒がゼロの時)に768カウント分まとめて入れてもいいかな?違いは96usecですから気にならないと思う。これなら簡単かも。
実際の誤差は96ppm丁度ではありませんし水晶発振子に誤差があるならば単純ではありませんが、1秒あたり256x3のカウント調整をすれば今よりずっと良い値になると思うのです。
追記
モヤモヤしてしまうので書き直し。30分くらいの作業でした。
またもや動作試験です。
#ガチ工作 #器具の製作
96ppmのズレってことは、8MHzのクロックで768カウント相当です。
このクロックの256カウントで1カウントするカウンタを3,125カウントして0.1秒を得ていますが、これに閏カウントを1秒毎に3つ入れればイイとなります。各秒のアタマ(1/10秒がゼロの時)に768カウント分まとめて入れてもいいかな?違いは96usecですから気にならないと思う。これなら簡単かも。
実際の誤差は96ppm丁度ではありませんし水晶発振子に誤差があるならば単純ではありませんが、1秒あたり256x3のカウント調整をすれば今よりずっと良い値になると思うのです。
追記
モヤモヤしてしまうので書き直し。30分くらいの作業でした。
またもや動作試験です。
#ガチ工作 #器具の製作
昨日は見間違えをしたようです。
基準となる時計の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秒くらいの精度は出ると思いますので、年中動かしっぱなしならお勧めの方法です。
#ガチ工作 #器具の製作
基準となる時計の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秒くらいの精度は出ると思いますので、年中動かしっぱなしならお勧めの方法です。
#ガチ工作 #器具の製作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131

