自作デジポット(デジタルポテンショメーター)---(1)::maboのblogです。maboのblogです。mabo個人のサイトです。いろいろなことを日記風に書いてます。場合によっては、間違った記載もあるかもしれないということをご承知おきください。Sunーーーグレイコード(1)---縁あって,X9C,AD5220というデジタルポテンショメーターを弄る機会に恵まれました。存在は,たまに見かけて知っていましたが,スピンドルのDCモーターのコントロールもなんとかできました。そこで,同じような原理で,自作してみようかなと思いたちました。構想として,ロータリーエンコーダーや,タクトスイッチ等でアップ・ダウンができること。7セグLEDかLCDでモニターできること等,できればいいなと思ってます。そこで,いろいろ調べ始めました。手始めに,ロータリーエンコーターをあたりました。以前,自作のMPGを作成した時に,ちょっと,調べたのですが調べるといくつか分からないことがでてきました。それぞれ表すものとして,D=f(t0<1)+f(t1)という回転判別式を定義します。00,01,11,10・・・・・・であるので,D0=(00<1)+01=01D1=(01<1)+11=01D2=(11<1)+10=00D3=(10<1)+00=00の記述があり,演算結果の2ビットめを見ると,回転方向を判別できると記載がありました。ここで,なぜ,シフトするのか,なぜ,ex-orをするのか,釈然としませんでした。HPをあさりましたが,どうやら,グレイコードに関係がありそうだということが諸兄のHPで分かりました。グレイコードに関係するということがなんとなく分かりました。グレイコードについて,調べて見ます。|コメント猛牛ロックさん,こんばんは。書き込み並びに情報ありがとうございます。使う予定は,インクリメンタル,秋月の安い物の予定です。当初,割り込みとDFFを使おうかなと考えました。以前,これで,MPG関連のもの作ったので。秋月のものにあった記載が気になって,調べ始めた次第です。|グレイコードの事は知りませんでした。使う予定なのはインクリメントタイプですよね?それなら、ChaNさんのが役に立ちます。基本的には、片側の相が変化(↑又は↓)の瞬間にもう一方を読めば回転方向は判ります。片側の↑で、外部割り込みをかけて、もう一方を読んでHIGHなら正転、LOWなら反転、みたいな感じなのですけど、それで通用するのはチャタリングの無い光学式のやつです。機械式のおもちゃエンコーダはより難しいです。私も最初は上記のように割り込みでやったと思います。時間をおいてから再取得させるようなやり方だったと思います。それだと高速回転だったりすると結構きついです。ChaNさんの方法だと、チャタリング対策が既に入っているので、簡単かつ正確に読み取れます。最近のものは、(例えば、疑似手パなども)殆どこの手法を使っています。※簡単に言えば、両相の変化を2回分(前回と今回)とって、あるパターンなら正転、反転とするものです。>11.22重なってます。>11.22重なってます。>05.30保留中コメント:10件LINKSraspberryPi3で運用です。Press相互リンクさせていただいてます。Riderお世話になりました。maboのblogです。Reserved.Script:Blogn/Skin:BlognSP。