みなさん,こんにちは
おかしょです.
制御器の勉強をしていると,その性能を数値シミュレーションで確かめたくなります.
その制御器を適用する対象は伝達関数でてきとうに表現したものでも良いのですが,具体的にどのようなシステムに適用するのかをイメージできた方が理解しやすいです.
この記事では制御対象をワンリンクアームロボットにするために,運動方程式の導出を行います.
この記事を読むと以下のようなことがわかる・できるようになります.
- ワンリンクアームロボットとは
- ワンリンクアームロボットの運動方程式
- 運動方程式の求め方
この記事を読む前に
以下の記事では運動方程式の導出法を倒立振子を用いて詳細に解説しています.
運動方程式の導出方法を知りたい方はそちらを先に読んでおくことをおすすめします.
ワンリンクアームロボットとは
ワンリンクアームロボットとは,関節が一つのアームロボットのことで,図にすると以下のようになります.
このロボットは関節が一つだけですが,ロボットアームに分類されます.よくロボットアームと言われると人間の腕や手のように動くものを想像するかと思いますが,関節が一つしかないというだけでこれも立派なロボットアームと呼べます.
このワンリンクアームをいくつも連結されたものがロボットアームだと考えることもできます.
なので,複数の関節を持ったロボットアームについて学習したい方は,まずはこのワンリンクアームロボットから学習していくのがおすすめです.
これは単純な振子のようですが,運動方程式を求めると非線形になるので,制御対象としてもよい教材となると思います.
運動方程式の導出
二輪型倒立振子の時はラグランジュ法で運動方程式を導出しましたが,今回は単純な仕組みなのでニュートン・オイラー法で運動方程式を導出します.
ニュートン・オイラー法の場合は,以下のような運動方程式に力やモーメントなどを当てはめるようにして運動方程式を求めます.
$$ m\ddot{x}=F $$
$$ I\ddot{\theta} = M $$
上の式は並進方向の運動方程式,下の式は回転方向の運動方程式を表しています.
式中の\(m\)は質量,\(x\)はロボットの位置,\(F\)はロボットに働く力,\(I\)はロボットの慣性モーメント,\(\theta\)は傾き,\(M\)はモーメントを表しています.
今回のワンリンクアームロボットの場合は,位置は動かないので回転方向の運動方程式のみ考えます.
回転の運動方程式の左辺は特にいじる必要はないので,このまま使います.
求めなければいけないのは,右辺のモーメントです.
ここで,ワンリンクアームロボットに働く力を確認しておきます.
このロボットに働くと考えられる力は,重力・空気抵抗力・駆動力の3つです.
まず,一つ目の重力は地球上にあればすべての物体に働くので特に説明は必要ないと思います.
二つ目の空気抵抗力は,空気の当たる面積や角速度に比例して大きくなります.例えば,うちわを持って腕を振った時と何も持たずに腕を振った時では負荷が違うと思います.うちわを持った時に感じた負荷が空気抵抗力です.今回のアーム部分は一本の棒ですが,空気抵抗は必ず存在します.なので,運動方程式でもこの空気抵抗力を考慮します.
三つ目の駆動力は,今回は関節部分にモータを取り付けたとして,そのモータから生まれるトルクとします.
これらの力や回転方向などを先程の図に書き加えると以下のようになります.
ここで,アームの質量は\(m\),アームの全長は\(2L\)として重心の位置はアームの中心にあるとします.
この力をモーメントに変換して,先程の回転の運動方程式に当てはめると以下のようになります.
$$ I\ddot{\theta} = -mgL\sin \theta -\mu \dot{\theta}+\tau $$
右辺の第一項は重力から生じるモーメント,第二項は空気抵抗で\(\mu\)は空気抵抗の係数を表しています.
ワンリンクアームロボットの運動方程式は以上のようになります.
使用用途
このようなワンリンクアームロボットは応用すれば,ロボットアームにすることも可能です.
ロボットアームを作りたい,もしくは構造を知りたい方はまずはこのワンリンクアームロボットを作成して,制御をしてみるといいかもしれません.
また,運動方程式の右辺第一項に三角関数があり,非線形となっています.このことから,このロボットは非線形システムなので,非線形制御の学習にも使えます.
私は以前,ワンリンクアームロボットを対象として適応制御やモデル予測制御などの数値シミュレーションを行ったことがあります.その数値シミュレーションの結果から,多くの学びを得ることができたので皆さんもこの運動方程式から数値シミュレーションを行ってみると非常に勉強になると思います.
私は現在,二輪型倒立振子の自律制御を目標にしていますが,いずれはロボットアームも作ってみたいと考えています.
そのためにも,今回求めたワンリンクアームロボットの運動方程式を発展させて,多関節のロボットアームの運動方程式を求めたいと思っています.
まとめ
この記事ではワンリンクアームロボットの運動方程式の導出とこのロボットの使用用途をご紹介いたしました.
この運動方程式を利用して学習した制御器の性能を評価してみると多くのことを学べると思うので利用してください.
続けて読む
以上のように運動方程式を求めることができたら,数値シミュレーションを行いたいです.
以下の記事では運動方程式を求めた後にどのようにすれば数値シミュレーションを行えるのかを解説しています.
数値シミュレーションを行いたい方は参考にしてください.
Twitterでは記事の更新情報や活動の進捗などをつぶやいているので気が向いたらフォローしてください.
それでは最後まで読んでいただきありがとうございました.
コメント
[…] 二輪型倒立振子の運動方程式をLagrange法で導出するワンリンクアームロボットの運動方程式 […]