• 締切済み
※ ChatGPTを利用し、要約された質問です(原文:PWM信号を、エンコーダ信号に変換したいのです。)

PWM信号をエンコーダ信号に変換する方法とは?

このQ&Aのポイント
  • PWM信号をエンコーダ信号に変換する方法を検討しています。
  • PWM信号はモータ駆動用の信号であり、エンコーダ信号に変換する方法を知りたいです。
  • DCモータ駆動用のPWM信号をエンコーダ信号に変換する回路の実現方法を教えてください。

みんなの回答

noname#230359
noname#230359
回答No.2

明確な回答で無く申し訳ありません。 PWM信号をパルスに直してもあなたの考え道理に動かないのでは? DCモーターの駆動回路は低速時にPWMの幅を変えても素直に比例して動き 出さないし、減速時にはオーバーラン傾向を示しモーターが先行しますよ。 そのためにエンコーダーを外付けしてフィードバックをかけます。 回路としては最高速のときに6KHZの8倍した発信周波数となるVFをつけ バイナリーカウンターと正逆の信号をつき合わせれば? 回路は自信なし。

noname#230358
質問者

お礼

かめせんにん様 ご回答、ありがとうございます。 ご指摘の通り、モータの制御においては、立ち上がりの遅れや、 惰性回転があると思います。 今回は、仮想モータ+仮想エンコーダ とでも言いましょうか、 「ある基板」に対して、あたかもモータとエンコーダが接続されている かの如く、騙すための回路を検討しております。 「ある基板」から取り出したモータ駆動信号(PWM)を加工して、 エンコーダ信号として、「ある基板に返す」事を目的にしております。 「ある基板」からは、「超理想的モータが接続されている」という風に 見えるかも知れません。 回路のご提案、ありがとうございます。 早速、試してみたいと思います。

noname#230359
noname#230359
回答No.1

毎度JOです。 高速なマイコンであれば、簡単な回路(ソフトウエアはそこそこ重い)で実現できそうですが、ハードウエアのみで実現するとなると、 PWMの正転・逆転で出てくる信号でPWMのパルスの幅に応じて、 エンコーダのA相・B相に対応する信号に変換する事でしょうか? そこで質問なのですが、 例えば、 1)PWMが正転時(+側がH固定 -側がLO固定)の場合、エンコーダに対応する信号は、A相・B相は加算側に6KHzのパルス 2)PWMが逆転時(+側がLO固定 -側がH固定)の場合、エンコーダに対応する信号は、A相・B相は減算側に6KHzのパルス 上記のような動作でよろしいのでしょうか?? 追加の質問 >>ある基板から、DCモータ駆動用のPWM信号が出力されています 1)この電圧は最大何Vでしょうか? 2)PWMのLO電圧(GNDに接続??)とエンコーダ回路のGNDは共通と考えて差し支えありませんか?? 毎度JOです。 >>PWMに応じて周波数が変化し となっていますから、 >>正回転時:A相がB相よりも90度進んでいる >>逆回転時:B相がA相よりも90度進んでいる これらの各相の周波数もPWMの幅の応じて変化する必要がありますね? 追記でも記載している通り、PWMの波形は 正転の場合 1)最小回転数時  -側がH固定・+側はLのわずかなパルス 2)中速回転数時  -側がH固定・+側はH・Lが50%のパルス 3)全速回転数時  -側がH固定・+側はL固定 となっているハズです、そこでこれらのPWMの変化を、 出力である「A相がB相よりも90度進んでいる」波形に周波数で「反映」させねばなりません、 A・B各相の周波数の例として 全速回転数時6KHzのパルス 中速回転数時3KHzのパルス 最小回転数時0.5KHzのパルス?? の如く変化させれば宜しいでしょうか?? 単に正転・逆転の検出だけであれば簡単ですが、PWMの幅に応じてA・B各相の周波数が変化するとすると、 直感的には、PWM制御されたモータに、ロータリーエンコーダが直付けされていて、 このロータリーエンコーダのパルスを、モータを介さずPWM信号から生成したい!!  その時のA・B相の周波数は、モータが正転全速回転時6kHz、と読み取れますが??

noname#230358
質問者

お礼

JO様 早速のご回答、ありがとうございます。 モータ駆動用信号(希望する回路への入力信号)は、+側、-側の2本あり、正回転時:+側がPWM(22KHz)、-側がH固定、 逆回転時:+側がH固定、-側がPWM(22KHz) なっているとお考え下さい。 *Hの時の電圧は、30Vですので、トランジスタ等をかませて、適当な電圧 (5Vや3.3V)に変換する必要があると考えております。 これに対して、出力側はA、B 2つのパルスが出力され 正回転時:A相がB相よりも90度進んでいる 逆回転時:B相がA相よりも90度進んでいる 状態を作り出したいと考えております。 PWMのLowは、出力パルスのLowと共通です。 以上、よろしくお願いいたします。 JO様 ご指摘の通り、最初に書いた「ある基板」には、本来 DCモータと、それに連動したエンコーダ(光学式)が 接続されており、モータの速度制御が行なわれています。 この基板から出力されるPWM信号を元にして、エンコーダ状の パルスを作り、基板に入力して、あたかも、モータとエンコーダが 接続されているかのように、騙したいと考えています。 PWMのDutyに対しての、エンコーダパルスの周波数は、 データ取りをして決めなければなりませんが、ハードだけで 実現する場合、半固定抵抗等で、調整できる仕様になっている事が 望ましいです。 PWMを積分(?)してアナログ電圧に変換し、更にPICマイコン等に 入力して、位相の違うパルスを出力する事も考えているのですが、 出来うるならば、ハードだけで実現したいのです。 技術力のない私に、知恵を授けてください。

関連するQ&A