• 締切済み

ロータリーエンコーダーの波形観測

ロータリーエンコーダーの波形観測 秋月のロータリーエンコーダーEC16Bを購入し、A,B端子をそれぞれ10kの抵抗を介して電池4.5V)に、またC端子をGNDにつなぎ、回転したときの波形をオシロ(150M 2チャンネルアナログ)と簡単なロジックテスタで観測しようとしました。 確かに回転するとhigh、lowがA,Bともに瞬間的に変化しているのは判るのですが、いつも見えるのは4.5Vに相当する2本の直線だけ(当然か)で、よくみるような方形の信号がどうしてもでてきません。 これではチャタリングどころか、0,1の関係すらわかりません。 「波形をオシロで見ると」といった記載がよく目に付き、簡単に見れると思ったのですが、どうしたらいいのでしょう? これはロータリーエンコーダーの問題ではなくオシロの使い方の問題なのかもしれませんがあまり詳しくないのですいませんが、教えてください。

みんなの回答

  • lumiheart
  • ベストアンサー率47% (1097/2289)
回答No.3

>ストレッジ機能がついたオシロでないとだめなのでしょうか。 まさかのアナログオシロでしょうか? それではほぼ不可能です アナログオシロは電波等の連続した正弦波を見るには良いのですが 1発だけのパルスを観測する事は困難です >ノーマルモードでみているとトリガがかかっている様です。 一発のパルスをノーマルモードで検出可能ですが あっという間に流れてしまい肉眼では難しい 最近はデジタルオシロの方がアナログより安くなってるので 買い替えをお勧めします

  • 86tarou
  • ベストアンサー率40% (5094/12701)
回答No.2

A,B層とも波形もチャタリングも一応期待される様な出方(?)をしているのですが、一瞬で消えてしまうので結局どうなっているのかよくわかりません。> 回転させていれば一瞬で消えることはなく、表示され続けるはずです。トリガが掛かってる間は表示されますから。

  • 86tarou
  • ベストアンサー率40% (5094/12701)
回答No.1

オシロスコープの使い方に問題があるように思います。おそらく、トリガの掛け方や時間軸の調整が出来てないのかもしれません。実際にそこに居れば、原因も分かり説明も簡単なのですが、如何せん文字の遣り取りなので… ^^; ノーマルモードにしてAまたはBの立ち上がり(または立ち下がり)トリガが掛かるようにします。その状態で回転数に応じた時間軸調整にすれば良いでしょうか。

toyono6
質問者

お礼

>実際にそこに居れば、原因も分かり説明も簡単なのですが、如何せん文字の遣り取りなので 早速のアドバイスありがとうございました。要はオシロ操作のテクニックの問題でそばにいて下さればすぐにわかることなのだろうと思います。 その後参考書なども読みながらいろいろやってみたところ、ノーマルモードでみているとトリガがかかっている様です。 A,B層とも波形もチャタリングも一応期待される様な出方(?)をしているのですが、一瞬で消えてしまうので結局どうなっているのかよくわかりません。 ストレッジ機能がついたオシロでないとだめなのでしょうか。

関連するQ&A

  • ロータリエンコーダの波形について

    こんにちは。電気の素人です。 工作機械のテーブル割出に某有名海外メーカのロータリエンコーダを使用しています。A,B波形はよく聞くのですが、Z波形というものがよくわかりません。目的、使い方をご指導頂きたく。また、関連WEBあれば教えて頂きたく宜しくお願いします。

  • ロータリーエンコーダについて

    電子制御工学専門の学生です。 研究で以下に示しますロータリーエンコーダを使用する予定なのですが、 マニュアルがなく、A、B相の分解能がわからず使用に困ってます。 SUNXのHPを調べたところ、受注終了品であり、マニュアルは見つかりませんでした。 以下に示しますロータリーエンコーダの分解能等の詳細を教えていただけませんでしょうか。 (これは、推測ですが、型番にある1000V05とあるので、A、B相は1000パルス/1回転??) ―――――――――――――― SUNX ROTARY ENCODER ORE-38-1000V05 ――――――――――――――

  • ロータリーエンコーダのチャタリング・バウンスノイズ除去方法について

    ロータリーエンコーダのチャタリング・バウンスノイズ除去方法について 接点式ロータリーエンコーダの電圧Hi/Loのレベル をソフトウェアで確定する方法を教えてください。 ロータリーエンコーダの仕様は以下です ※回転軸を360°/sの速さで回転した場合 接点ON:GND(電圧Lo) 接点OFF:5V(電圧Hi) チャタリング:3ms以下 バウンスノイズ:2ms以下 →接点ONが1ms以上のときに発生。接点OFFのときは発生しない。 以上、お願いします。

  • ロータリーエンコーダーのノイズ対策について

    DCサーボモーターに1回転20000パルスのロータリーエンコーダーを 取り付けてあります。PWM制御で回しています。 速度制御はこのロータリーエンコーダーで行っています。 速度制御にしてはこのロータリーエンコーダーの分解能は異常かと思いますが なにぶんにも客先の仕様なのでつっこまないで下さい。 エンコーダーのパルスにはモータのジッターもあります。 このエンコーダーで位置制御も行おうとしています。 分解能が高いのでチャタリングのような現象がでます。 エンコーダーからのパルスのAB相の最短周期は1μSECで、最長は 直流までになります。静止状態でもサーボによりチャタリングのような 状態になります。 このような範囲でチャタリングのようなものを取る方法はあるのでしょうか。 宜しくお願い致します。

  • ロータリーエンコーダについて

    電子工作初心者です。 ロータリーエンコーダの出力形式について、 質問があり投稿しました。 現在、電源電圧(5V電源を使う予定)と出力電圧(A,B,Z相が5V)が同じ ロータリーエンコーダを探しているのですが、 ロータリーエンコーダの性能表(下記サイト参照)に出力電圧値が表記されていなく、 どの出力形式のロータリーエンコーダを購入すればよいか分からない状態にあります。 そこで質問なのですが、 「ロータリーエンコーダは出力形式に関わらず、電源電圧と出力電圧は全て同じなのですか?」 「また、もし違う場合、電源電圧と出力電圧が同じロータリーエンコーダは存在するのでしょうか?」 よろしくお願いいたします。 ■↓使用しようと考えているロータリーエンコーダ■ http://www.fa.omron.co.jp/product/family/487/index_r.html

  • ロータリーエンコーダーの使い方について教えていただきたいことがあります

    ロータリーエンコーダーの使い方について教えていただきたいことがあります. ロータリーエンコーダの値を,Arduino Fioで検出したいのですが どの様な回路で接続すればよいのか分かりません. また,ロータリーエンコーダはpanasonicの「EVE-VCGJL016B」を使用しているのですが,何故,B端子が2つもあるのか分かりません. ↓「EVE-VCGJL016B」データシート http://industrial.panasonic.com/www-data/pdf/ATC0000/ATC0000CJ15.pdf 不勉強のため,知識が足りないのですが,どうかご教授お願いします.

  • ロータリーエンコーダのパルス。

    ボール式マウスであれば、ボールの回転を活かしてロータリーエンコーダを回転させ、A相、B相と2つのパルス信号が出来、回転方向や速度を定めるわけですが....(角度を出すことの出来るZ相はないものとします)。 この2つのパルスなのですが、ロータリーエンコーダなしに、回路で再現することは出来ないのでしょうか? 単なる一つのパルスを作るのであれば、トランジスタとコンデンサや555シリーズだけでも作れると思いますが、一つのパルスと連動する形でもう一つのパルスを発生させることは出来ないものでしょうか? 色々と考えてはいるつもりなのですが、確信を持てません....。検索もしているのですが、マウス関連の技術的なサイトや文献(PDF形式)があまりなく、調べようがないために困っております。 どうぞよろしくお願い申し上げます。

  • ポテンショメータとロータリーエンコーダについて

    ポテンショメータとロータリーエンコーダについて 倒立振子を制作しているのですが、困っています。 ポテンショメータとロータリーエンコーダ関連の公式?でこのような式をどなたか知りませんか?? また、この式が表す意味も教えてほしいです。 y1はエンコーダの値を読み取った値 y2はロータリーエンコーダの値を読み取った値 G:車輪の減速比 rw:モータの回転数 N:パルス波 y1 = C1x y2 = C2θ C1 = N*G/2π*rw C2 = 4095/2π*(330/360) ポテンショメータの型番:RDC506002A

  • ロータリエンコーダ

    下記条件に見合うロータリエンコーダを探しています。 ご存じの方いらっしゃいませんでしょうか? アブソリュート形 分解能:2048パルス/回転 以上 出力コード:グレイ2進 外形:φ40以下(←可能であれば) 電源電圧:DC24V(←可能であれば) 三菱電機さんのシーケンサに接続する予定です。 以上、宜しくお願いいたします。

  • ロータリーエンコーダがうまく動かない.

    よろしくお願いします. arduino UNOと秋月で購入したロータリーエンコーダ(RE-160F-40E3-(L)A-24P)を用いて, シリアルモニタ上で数値のインクリメント・デクリメントを見ようとしています. 初心者のため, http://www.ct-robo.sakura.ne.jp/371 を参考にまずはやっています. 配線は同じ,ソースはほんの少しだけいじっていますが, デクリメントされるのに,インクリメントされません. ソースはこんなかんじです. // ロータリーエンコーダーの配線に合わせる int dRotAPin = 2; int dRotBPin = 4; int R_count = 0; //時刻表示 int minute = 0; int second = 0; int msecond = 0; // ロータリーエンコーダーの状態を記憶する // 割り込み中に変化する変数はvolatileはをつけて宣言する volatile int m_nOldRot = 0; volatile int m_nValue = 0; void setup() { // ピンの設定 // INPUTモードにします。 pinMode(dRotAPin, INPUT); pinMode(dRotBPin, INPUT); // プルアップを有効にします digitalWrite(dRotAPin, HIGH); digitalWrite(dRotBPin, HIGH); // 外部割り込みを設定します // D2ピンが 変化 した時にrotRotEnd()を呼び出します attachInterrupt(0, rotRotEnc, CHANGE); //シリアル通信速度 Serial.begin(9600); } void loop() { //シリアルモニター角度表示 if(m_nValue == 1){ R_count++; m_nValue = 0; //if(R_count == 12){ // R_count = -11; //} } if(m_nValue == -0.5){ R_count--; m_nValue = 0; //if(R_count == -12){ // R_count = 11; //} } //Serial.println(R_count); //delay(10); Serial.print("m_nValue:"); Serial.print(m_nValue); Serial.print("---m_nOldRot:"); Serial.println(m_nOldRot); //delay(500); } // 外部割り込みから呼び出される変数 void rotRotEnc(void){ if(!digitalRead(dRotAPin)){ // ロータリーエンコーダー回転開始 if(digitalRead(dRotBPin)){ //右回転 m_nOldRot = 'R'; }else{ //左回転 m_nOldRot = 'L'; } }else{ // ロータリーエンコーダー回転停止 if(digitalRead(dRotBPin)){ if(m_nOldRot == 'L'){ // 左回転の時の処理 m_nValue--; } }else{ if(m_nOldRot == 'R'){ //右回転の時の処理 m_nValue++; } } // ここでロータリーエンコーダーの状態をクリア m_nOldRot = 0; } } 完全にインクリメントされないわけではなく, 何回か回している時に何度かだけはインクリメントされるときがあります. http://just-k.mydns.jp/blog/?p=6619 このサイトのやり方も参考に,同じように回路を組んで動作させてみたのですが, やはりインクリメントされません. 解決策ありましたら教えていただきたいです. よろしくお願いいたします.