新着

2013年2月17日
2軸タイプの倒立振子
2009年11月27日
Embedded Technology 2009 でのデモ

ギャラリー

2軸タイプの倒立振子

ソースが入手できなかったので、1軸タイプを参考に開発しました

XK-1 の上に載っているは、MPC3204 2個 を実装した基板です
床面に凹凸があるので0:13頃にフラッとしますが、踏ん張ってます

2軸タイプはソースが付属していないので、ちょっと苦労しました。
実機デバッグでは、内部の変数の値をシリアル出力していますが、XC-3付属のXTAGを使用しています。

0:09 での、PC画面の下側は、921600bpsのUARTで出力した内部変数をターミナルソフトで受信・表示している様子です。 性能解析を行ったところ、処理負荷にはまだ余裕がありました。

1軸と2軸で使用している基板は全く同じものです。 普通のマイコンですと、周辺I/O機能の制約に縛られて基板配線に手間取る場合がありますが、 XMOS社デバイスは周辺I/O機能自体をソフトウェアプログラミング出来るので、基板設計が楽になります。

XMOS社デバイスを用いて、低コストかつ高速な制御モデルの実装を実現できます。
出展したデモの設計資料や解析内容については、
弊社セミナープログラム
にてご案内いたしております。
他のデモサンプルや、性能解析結果については、お問い合わせよりご連絡下さいませ。

Embedded Technology 2009 でのデモ

この他にも CANコントローラ も出展しましたが多くの方に驚きのお言葉を頂戴しました。

XMOS社のROBOTは、倒立振子が載っているほうはリモコンで操作しており、載っていないほうはCCDカメラで自動追尾します。 画像認識、液晶表示コントローラ、RF通信、PWM制御などを全てソフトウェアで実現しています。

振子は定位置を保持しようとする為、下のロボットが移動すると車輪が回転して移動したと認識するのでロボットの元の位置に戻ろうとします。

XK-1移植版の倒立振子について

倒立振子本体は北斗電子様のPUPPYです。
XMOS社のXK-1にA/Dコンバータを接続して制御ソフトウェアを移植しました。
ただ、基板変更に伴い物理定数が変わるため、Scilabによるシミュレーションでフィードバックゲインを再計算しています。

車輪速度指令値=1.5[rad/s]を与えた時に累積誤差が漸近安定する様子を示します。

(クリックで拡大)

よく見ると微妙に特性が異なっていますが、再設計した方(下段)が早く安定しています。

 

フィードバックゲイン再計算により、ほとんど同じ動きをする事がシミュレーションで確認できました。

※左上グラフ:PUPPY付属ソフトウェアによる状態変化(車体角、車体角速度、車輪角速度、累積誤差)
右上グラフ:PUPPY付属ソフトウェアによるトルク入力値
左下グラフ:XMOSへの移植版ソフトウェアによる状態変化(車体角、車体角速度、車輪角速度、累積誤差)
右下グラフ:XMOSへの移植版ソフトウェアによるトルク入力値

姿勢制御のフィードバック周期を 1/10 にしてみましたが、へっちゃらでした。
400MHzで動作しているので、性能が有り余っているみたいです…