DSPによるモータ制御

このQ&Aのポイント
  • 二輪車の操舵軸にモータを取り付け、安定制御を行おうとしています。
  • 操舵角度のタイムチャートはシミュレーションによってわかっています。
  • simulinkのs-boxにより、DSPボードを用いてモータの角度もしくは、角速度制御を行なうことは可能でしょうか。
回答を見る
  • 締切済み

DSPによるモータ制御

二輪車の操舵軸にモータを取り付け、安定制御を行おうとしています。 おおよその操舵軸の慣性モーメント 操舵角度のタイムチャートはシミュレーションによってわかっています。 simulinkのs-boxにより、DSPボードを用いて モータの角度もしくは、角速度制御を行なうことは可能でしょうか。 よろしくお願いします。

noname#230358
noname#230358

みんなの回答

noname#230359
noname#230359
回答No.1

この質問の前提として 2輪車はステアリングを切って旋回するのでは無いと言う事を 理解しているとした上での質問なのでしょうか? http://www.kyosho.com/jpn/products/rc/detail.html?product_id=100395 http://www.tt-japan.com/ 例外的に http://www.murataboy.com/about/ http://www.murataboy.com/audiovisualroom/secret.html でも、ステアリングをサーボ駆動してるようには見えない

noname#230358
質問者

補足

説明不足で申し訳ありません。 旋回を目標としたステアリングでなく 倒立振り子のように、倒れる方向に重心移動するための、速度を発生させるための操舵です。 ジャイロ等はまったく考慮していません。 操舵入力により、倒れないモデル(私ではないのですが実機で検証済み)があるうえで、考えてもらえるとありがたいです。 よろしくお願いします。

関連するQ&A

  • モータの速度制御について

    モータをsimulinkを使ってDSPで速度制御するのですが 指定した速度よりも明らかに遅いのですが 原因は何が考えられますか?

  • 制約条件下でのブラシ付きDCモータの角度制御

    制約条件下でのブラシ付きDCモータの角度制御について教えてください. ブラシ付きDCモータの角度制御の制御シミュレーションをMATLABでしています.連続時間系です. 制御対象のモデルは,「印可電圧を入力,電流を出力とする1次遅れ系の伝達関数」→「電流を入力,モータ軸の角速度を出力とする1次遅れ系の伝達関数」→「角速度から角度に変換するための積分器」,および「角速度から印可電圧に負帰還する逆起電力のフィードバック信号」から構成されています. 制御構造は,電流フィードバックループ(PID制御),角速度フィードバックループ(PD制御),角度フィードバックループ(PID制御)をから成るカスケード制御系です. 制約の無い条件下ではシミュレーションが上手くいったのですが,制御入力(印可電圧)に上限値を設定するとワインドアップが発生しました.そこで,アンチリセットワインドアップ補償器を付けたのですが,制御量(角度)が目標値に収束しません.角度フィードバックループを外して,電流フィードバックループ(PID制御)と角速度フィードバックループ(PD制御)からなる角速度フィードバック制御系にすると,アンチワインドアップ補償器を付けると制御量(角速度)が目標値に収束します. なぜ角度フィードバックループを付けると,アンチリセットワインドアップをつけても目標値に収束しないのでしょうか?どうすれば収束しますでしょうか? ご教授の程よろしくお願い致します.

  • 機構全体の慣性モーメント(イナーシャ)の計算

    よろしくお願いいたします。 モーターで軸を回転させそのトルクをリンクやシャフトで往復運動等 を経て駆動する機構があります。 この慣性モーメント(イナーシャ)はモーター軸のトルクと角加速度が既知の場合 1.トルク/角加速度でもとめることができるのでしょうか? 2.上記は時間軸に対して全域にわたって計算できるのでしょうか?  (時間に伴って負荷=慣性モーメント(イナーシャ)が変化する場合) 3.機構部とモーター軸の回転角度が違うのですがモーター軸で計算すれば様でしょうか? 計算できるような気もしますが、違う気もします・・・ どなたかご存知の方よろしくお願いいたします。

  • モーター制御について教えて下さい。

    初心者ですが、モーター制御で良くわからない点があり、教えて下さい。 ACサーボモーターを使用してトルク制御を行なおうと考えています。 具体的には、ある原点位置から ・角度θ1の位置に至ったら、トルクT1を出力 ・角度θ2の位置に至ったら、トルクT2を出力 (省略) ・角度θxの位置に至ったら、トルクTxを出力 といった出力を連続して行なうことを考えています。 (トルクはフィードバック制御を行なう) ある位置で定義したトルクを超える負荷が掛かると、次の位置に至り、その位置で定義したトルクを超える負荷が掛かるとまた次へ。。。 といった単純な仕組みを考えています。 そこで、良くわからない点というのが、角度θ1からθ2に至る時の軸の回転速度がどの様になるのかです。 例えば、トルクT1が大きい状態からトルクT2が小さい状態へ変化する時、モーター軸の回転速度は負荷イナーシャによって決まる物でしょうか? 速度は制御するわけではないので、単純に考えるとイナーシャの大きさとトルクの変化量によって決まるのかと思うのですが。。。 できれば、このトルク制御をベースに、θ1からθ2に変化する時の速度を増減させる様な事をしたいのですが、原理的に可能でしょうか? (特に、トルクが大きい状態から小さい状態へ変化する時の速度を大きくコントロールしたい) 色々資料を見ていますが、トルク制御をした場合の速度変化をどう考えれば良いか、トルク制御をベースに速度も制御することが可能なのかを明記している資料も事例も無さそうなので、ご教示いただけると幸いです。

  • ステッピングモータのフィードバック制御について

    ステッピングモータのフィードバック制御を使って、シミュレーションを使いたいのですが、 何をフィードバックすればいいのかわかりません。 ACモータの場合は、速度と変位をフィードバックすればいいと思うのですが、 ステッピングモータの場合は、どうすればいいのでしょうか。 ご教授お願いいたします。 ちなみにHB型ステッピングモータを使用したいと思っています。 シミュレーションはSIMULINKを使っています。 もし可能であれば簡単な回路図も教えてくれるとうれしいです。

  • SPMSMモーター センサレスベクトル制御について

    現在、勉強&開発を兼ねてインバータで表記制御を行おうとしています。 あるインバータキットを使用おり、制御部を自在に組み込めるというものを使用してテストしています。 センサ情報はU相とV相の電流センサです。 モータの速度起電力を得るために、ある回転数までオープンループでd軸電流に一定の強い電流を流し、q軸は0[A]に制御して回します。 (位置推定がオープンループで、厳密には電流センサからd,q軸電流のPI制御はあります) ある回転数まで到達したら、位置推定の計算を開始し、センサレス制御に切り替えています。 位置推定には電流推定誤差を用いた手法で計算しています。 (dq軸とδγ軸の角度誤差を0にするように制御、モータの速度起電力を元に計算) 今困っているのが、オープンループ制御で回してセンサレス制御に切り替えた時にモーターがなぜか逆転してしまいます。 もちろん逆転するときにはモーターは一旦0[rpm]で停止して逆転を開始します。 ですので引き込みきれず、脱調する場合も多々あります。(ゲイン調整が悪い可能性もあるかと思いますが・・・) 考え付くのはIPMへのPWM信号がどこかで逆転している、電流センサの読み取りが反転しているorU相、V相が振り変わっている?? ただ、これらの場合はオープンループ制御と呼んでいますが、d,q軸のPI制御があるので仮にどこか振り変わっていたらとても始動しないのでは?と思っています。 乱文申し訳ありませんが、原因、考えられることをご教授いただきたく、よろしくお願いします。 (専門の方が見られたら情報が足りない、表現がわからない等あると思いますのでご指摘下さい)

  • 誘導モータ間接ベクトル制御の位相について

     DSPに、誘導モータの速度センサ付間接ベクトル制御の実装を行うとしている者です。 座標変換に必要な位相角 θr について、質問をさせてください。  永久磁石同期モータのベクトル制御では、ロータ角度 θr = 0 は、 磁束が最大になる点(誘起電圧 = 0)という物理的に検知可能な点になりますが、 誘導モータでは、θr の原点は、具体的にはどこになるのでしょうか?  教科書の間接ベクトル制御のブロック図では、θrを、単にモータ回転速度を積分して 求めていますが、 ・どのロータ位置から速度の積分を開始しても問題ないのでしょうか?  ・ずっと速度を積分し続けていると、速度センサの誤差が蓄積して、θr 値が狂ってくるような  気がするのですが、問題ないのでしょうか?   どうも永久磁石同期モータのイメージで理解しようとして、何か間違っているような 気がします。 よろしくお願いします。  

  • 制御に関する質問です。

    制御に関する質問です。 今、 フットプレート上に足を載せ、フットプレートをモータで回転させることで足首を回転させ、 その際に得られる角度データ、トルクデータを基に足首の粘弾性係数k、d を推定するという問題を考えています。 足とフットプレートの質量M、軸から足、フットプレート重心までの水平距離L 足、フットプレートの重心周りの慣性モーメントI、フットプレートと地面のなす角をθ, 軸周りの回転力τとすると 力学式は Iθ''=τ-dθ'-kθ-Mgcosθ となります。 これをラプラス変換して (Is^2+ds+k)θ(s)=T(s)-Mgcosθ となりますが(間違ってます??)、この時の伝達関数の 表し方が分かりません。 二次遅れ要素の一般系は G=ω^2/(s^2+2ξω+ω^2) なんですが、どうやってもこの形になりません。 どの様にすればよいかどなたか教えていただけませんでしょうか。

  • 分子の慣性モーメント

    H2O分子のC2軸のまわりの慣性モーメントを求めたいのです (H-O-Hの結合角は104.5°、結合長はO-Hは95.7pm) 同様にC H Cl3分子のC3軸のまわりの慣性モーメントもです(H-C-Clは142°、結合長はC-Clは177pm) COのような直線系の慣性モーメントならわかるのですが・・・どうも角度が入り頭が混乱して解けません、教えてくださいお願いします。

  • モーターの加速計算

    お世話になります。 今回設備の主軸を3相モーターとインバーターにてVプーリーを介して 回転させる事になったのですが、モーターサイズの選定に苦労しています。 設備仕様をざっと書くと 主軸側の慣性モーメント(イナーシャ)=J1(kgm^2) 到達回転数=5000rpm 加速時間=3s 増速比=2 モータープーリー+モーターの慣性モーメント=J2(kgm^2) です。 以下は自分で計算したのですが 増速比が2の為モーターにかかる慣性モーメントの合計Jは J=(2×J1)+J2として モーターが2500rpmまで加速するものとして計算しました。 必要トルク=J×(dw/dt)より(w=角速度、t=時間)      =(J×2500/3)×(2π/60)      =87.2J(Nm) となりましたが、 ?単位系はこれであっているのか? ?増速比に対応して慣性モーメントをまとめる方法はただしいのか? ?計算があっていたとしても、3相モーターの回転トルクは果たして  一定なのか?(0~87Hz使用予定) ?この必要トルクはモーターの定格トルクで良いのか? ?プーリーやその他の駆動ロスはどの程度加味するのか? 計算をして色々と疑問が発生してきました。 以上の質問の回答やご指摘、注意点など 宜しくお願いします。