So-net無料ブログ作成
ロボットを作ってみる! ブログトップ
前の10件 | 次の10件

プロペラの推力を測定をしてみた!(2) [ロボットを作ってみる!]

ちょっとした事故があり、随分と時間がかかってしまいましたが、新しいバッテリーで推力測定をしてみました。前回の測定の様子はこちらを参照してください。


DSC04489.JPG


こちらが今回の測定結果です。青いのが今回のバッテリで測定した結果で、オレンジが前回の結果です。前回にくらべて若干推力があがっていますが、思ったほど向上していません。

これがこのモーターの限界なのかなぁ・・・。


PropellaThrust.png


だいたい1.7g と少しなので、4つで7gくらい。これではバッテリーを持ち上げるのも厳しいかも。測定方法の問題ということも考えられるので、とにかく組み上げてみて試してみたいと思います。案ずるより産むが易し!
σ(-`ω´-;)






ESPr Developer(ESP-WROOM-02開発ボード)

ESPr Developer(ESP-WROOM-02開発ボード)

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス










ミニドローンを買ってみた! [ロボットを作ってみる!]

実験ばかりではなかなか検討が進まないので、ミニドローンを買ってしまいました!バラすこと前提なので、一番安いものにしました。


DSC04485.JPG


おもちゃなのでさすがにプロポは安っぽいです。しかしこのミニドローン、いっちょ前にモード2だけでなくモード1もサポートしているようです。使う気にはなりませんが。。。


DSC04486.JPG


アップにしてみると、なかなかカッコいいですね。


DSC04487.JPG


試運転の様子は、そのうち披露したいと思います。
(^_^)/~








GoolRC CX-10W 4CH 6軸ジャイロ Wifi ミニ ドローン カメラ付 シルバー

GoolRC CX-10W 4CH 6軸ジャイロ Wifi ミニ ドローン カメラ付 シルバー

  • 出版社/メーカー: GoolRC
  • メディア: おもちゃ&ホビー



ドローンの教科書 標準テキスト - 無人航空従事者試験(ドローン検定)3級4級対応 改正航空法・完全対応版 (ドローン検定協会)

ドローンの教科書 標準テキスト - 無人航空従事者試験(ドローン検定)3級4級対応 改正航空法・完全対応版 (ドローン検定協会)

  • 作者: 山下 壱平
  • 出版社/メーカー: デジテックブックス
  • 発売日: 2016/11/23
  • メディア: 単行本(ソフトカバー)




ESP8266で駆動しているFET(モータードライバ)を測定してみた [ロボットを作ってみる!]

前回のプロペラの推力測定で途中で推力がダウンしてしまう原因を探るために、FETの様子を観察してみることにしました。


DSC04471.JPG


測定するのは、FETのゲートとソースの間、ドレインとソースの間の電圧です。


VDSandVGS.png


実際に測定をしてみた結果がこちらです。


VDSandVGS_pwm.png


動画だとPWMで変化している様子がよく分かります。





電圧を見る限り特段おかしなところはありません。デューティ100%になったときのドレインとソースの電圧を見てみます。


VDS.png


だいたい 0.01V。ちょっと低すぎる感じがします。データシートを見てみます。VDSが0.01Vで、VGSが3.1Vくらいになります。


datasheet.png


データシートから類推するに、ほとんど電流が流れていないということになります。推力のサチりはどうも、バッテリーが原因っぽいですね。
ε~(=. = )





サインスマート 手持型 USBオシロスコープ DDS-140 バンド幅40MHz 200M/S + 信号発生器 + ロジックアナライザ

サインスマート 手持型 USBオシロスコープ DDS-140 バンド幅40MHz 200M/S + 信号発生器 + ロジックアナライザ

  • 出版社/メーカー: サインスマート(SainSmart)
  • メディア: エレクトロニクス



Hantek デジタルオシロスコープ 70MHz 1GSa/s DSO-5072P

Hantek デジタルオシロスコープ 70MHz 1GSa/s DSO-5072P

  • 出版社/メーカー: Hantek
  • メディア: エレクトロニクス



SODIAL(R)10個 Nチャネルパワー MOSFET2N60 低ゲート電荷 2A 600V

SODIAL(R)10個 Nチャネルパワー MOSFET2N60 低ゲート電荷 2A 600V

  • 出版社/メーカー: SODIAL(R)
  • メディア: エレクトロニクス




プロペラの推力を測定をしてみた! [ロボットを作ってみる!]

ついに念願のプロペラの推力測定をしてみました!

DSC04471.JPG


動画で見ると変化の様子が、よく分かります。





PWMのレンジは0-1000までを設定し、100ずつ変更して測定をしてみました。その結果がこちら。


プロペラ推力グラフ.png


最大でも1.4g程度。推力なさすぎ。。。OTZ... デューティ比50%を過ぎると推力がダウンしてしまっています。モータードライバーの使い方が悪いのかも知れません。もう少し調査が必要そうです。
ε=(-. ー )





ESPr Developer(ESP-WROOM-02開発ボード)

ESPr Developer(ESP-WROOM-02開発ボード)

  • 出版社/メーカー: スイッチサイエンス
  • メディア: エレクトロニクス






PXYNANOプロペラセット(8枚入)

PXYNANOプロペラセット(8枚入)

  • 出版社/メーカー: G-FORCE(ジーフォース)
  • メディア: おもちゃ&ホビー




プロペラの推力測定器を作ってみた。 [ロボットを作ってみる!]

この週末を利用して、プロペラ推力測定器を作りました。いくつか試作を経た後にようやく落ち着いたデザインがこちら。AutoDesk 123D Design で設計しました。


propella_thrust.png


こちらは完成形です。モーターは下向きにつけます。足の底には滑り止めと振動吸収のためにグルーガンでグルーをつけました。


DSC04477.JPG


滑り止めをつけるときに活躍したのが、3Dプリンターのホットベッドです。ホットベッドを加熱しておいて、グルーが固まらないようにして足をつけました。


DSC04465.JPG

DSC04466.JPG


こんな感じで精密秤において測定します。試運転をしてみたら、滑り止めがかなり効果を発揮し、プロペラの回転にも耐えていました。


DSC04470.JPG


さて、どんなデータがとれるか楽しみです。
(^_^)/~






自宅ではじめるモノづくり超入門 ~ 3DプリンタとAutodesk 123D Designによる、新しい自宅製造業のはじめ方 ~

自宅ではじめるモノづくり超入門 ~ 3DプリンタとAutodesk 123D Designによる、新しい自宅製造業のはじめ方 ~

  • 作者: 水野 操
  • 出版社/メーカー: ソフトバンククリエイティブ
  • 発売日: 2013/05/28
  • メディア: 大型本






スリーアキシス(three axis) 電池式コードレスグルーガン 20303

スリーアキシス(three axis) 電池式コードレスグルーガン 20303

  • 出版社/メーカー: ミツトモ製作所
  • メディア: Tools & Hardware




ESP8266(ESP-WROOM-02)とFET(モータードライバ)でコアレスモーターを駆動してみた [ロボットを作ってみる!]

ESP-WROOM-02 で、FET(モータードライバ)を使ってコアレスモーターを駆動をしてみました。手元にTPC8407というFETがあったので、それで試してみました。


TPC8407 データシート http://akizukidenshi.com/download/ds/toshiba/TPC8407_datasheet_ja_20140107.pdf


回路は下記のように組んでみました。本来は電源を3.3Vにレベルダウンする必要がありますが、動作確認なので端折ってしまっています。ESP-WROOM-02 は3.7V入力しても結構耐えてくれますね。


driving coreless motor.png


FETを保護するためのダイオード、コンデンサも手元になかったので省いてしまっています。実際に組むときは考えないといけませんね。

組み上がった回路がこちらです。


DSC04441.JPG


FETは恥ずかしながら空中配線です。(^^;


DSC04443.JPG


それでは動かしてみましょう。スケッチは前回と同じものを使っています。





ポートから駆動するよりもはるかに力強く回ってくれています。これなら飛びそうかなぁ。
σ(^. ^)















ドローンのシステム基礎を学ぶ(13) [ロボットを作ってみる!]

年越しテーマとなってしまいましたが、ドローンのシステム基礎の続きです。前回までプロポから、ロール目標速度(Φ target rate)、ピッチ目標速度(θ target rate)、ヨー目標速度(ψ target rate)を設定するようにしていました。


Drone-PID-system.png


しかし冷静に考えると、プロポでヨーの速度(Z軸回転:ψ)を設定するのはなんとなく分かりますが、ロール速度(X軸回転:Φ)、ピッチ速度(Y軸回転:θ)をプロポで設定するのは至難の業です。


drone.PNG


プロポからはロール(Φ)、ピッチ(θ)の目標角度を設定するのが現実的です。ということで、システム図をロール(Φ)、ピッチ(θ)の目標角度を設定するように変更してみました。


drone_basic_system.png


基本的な構成は二段階PID制御システムになります。目標角度(target angle)と測定角度(measured angle)から、目標角速度(target rate)をPID制御を使って算出し、それを後段のPID制御ブロックに渡してPWM値を求めます。

ここで、測定角度(measured angle)を算出には、ジャイロセンサーと加速度センサーを用いたセンサーフュージョンを使います。

センサーフュージョンは下記のような算出式と、DCM(Direction Cosign Matrix)もしくはQuaternion、Kalman Filter などのアルゴリズムで構成されています。

// preΦg、preθg、preψg は前回の測定角度
// Δt はジャイロセンサーの測定間隔
Φa = arctan(-ay/-az)
θa = arctan(ax/√(ay*ay + az*az))
Φg = preΦg + (Φ measured rate) * Δt 
θg = preθg + (θ measured rate) * Δt 
ψg = preψg + (ψ measured rate) * Δt 



センサーフュージョンは、最近は各センサーメーカーから提供されていることが多いので、利用するにあたって詳細まで知る必要はありません。

これで基本的な理論背景はだいたい整ったかな。あとは実践しながら考えていきたいと思います。
p(^ー^)q





SODIAL(R) GY-521 MPU-60503軸ジャイロ+3軸加速度センサ

SODIAL(R) GY-521 MPU-60503軸ジャイロ+3軸加速度センサ

  • 出版社/メーカー: SODIAL(R)
  • メディア: Personal Computers



ArduPilot -UAV Controller w/ ATMega328 [並行輸入品]

ArduPilot -UAV Controller w/ ATMega328 [並行輸入品]

  • 出版社/メーカー: SHANHAI
  • メディア: エレクトロニクス



Building Your Own Drones: A Beginners' Guide to Drones, UAVs, and ROVs

Building Your Own Drones: A Beginners' Guide to Drones, UAVs, and ROVs

  • 作者: John Baichtal
  • 出版社/メーカー: Que Publishing
  • 発売日: 2015/09/14
  • メディア: ペーパーバック




実証試験用のモーターとプロペラを購入 [ロボットを作ってみる!]

ドローンの理論がだんだん分かってくると、試してみたくなるのが人の常。ということで、実証試験するためのモーターとプロペラを購入しました。ちっさー。これ、まともに飛ばせるかな・・・。


DSC04396.JPG


あとはマイコンとモータードライバを決めて、6軸センサーのMPU6050をつければ電気部品はそろいます。筐体はなんで作ろうかなぁ・・・悩む。
(^_^;








PXYNANOプロペラセット(8枚入)

PXYNANOプロペラセット(8枚入)

  • 出版社/メーカー: G-FORCE(ジーフォース)
  • メディア: おもちゃ&ホビー



サインスマート(SainSmart) MPU-6050 3軸ジャイロスコープ モジュール for Arduino

サインスマート(SainSmart) MPU-6050 3軸ジャイロスコープ モジュール for Arduino

  • 出版社/メーカー: サインスマート(SainSmart)
  • メディア: エレクトロニクス




ドローンのシステム基礎を学ぶ(12) [ロボットを作ってみる!]

前回まで、PID制御の基礎理論について学びました。今回はこれをドローンに応用したいと思います。ドローンの制御系を振り返ってみます。詳しくはこちらを参照してください。


BasicDroneControl.png


この時K(-1) は、下記のように表現できます。詳しくはこちらを参照してください。


drone_control4.PNG


これにPID制御を加えると下記のようになります。システムを簡単化するために、Kr = Kp = Ky = Kt = 1/4k としました。また、p1, p2, p3, p4 はそれぞれのモーターのばらつきを補正する係数です。


Drone-PID-system.png


次はこれがどのようなプログラムになるのか確認してみたいと思います。
(^_^)/~





Building Your Own Drones: A Beginners' Guide to Drones, UAVs, and ROVs

Building Your Own Drones: A Beginners' Guide to Drones, UAVs, and ROVs

  • 作者: John Baichtal
  • 出版社/メーカー: Que Publishing
  • 発売日: 2015/09/14
  • メディア: ペーパーバック



ジーフォース G-FORCE PXY CAM ドローン オレンジ・GB301 1067656 【1点】

ジーフォース G-FORCE PXY CAM ドローン オレンジ・GB301 1067656 【1点】

  • 出版社/メーカー: UNderSell(アンダーセル)
  • メディア: ホーム&キッチン



HPHELI Batfly 250 Quad Racer Drone DIY Kit [並行輸入品]

HPHELI Batfly 250 Quad Racer Drone DIY Kit [並行輸入品]

  • 出版社/メーカー: HPHELI
  • メディア:




ドローンのシステム基礎を学ぶ(11) [ロボットを作ってみる!]

前回、PI制御について学びました。PI制御は精度は高いですが収束まで時間がかかります。動きの激しいシステムでは使えません。


PIsystem.png


収束まで時間がかかるのは、小さな値を積算してフィードバックをかけるためです。小さな値を累積させてフィードバックに意味ある値にするまで時間がかかるためです。

時間がかかるのであれば、変化に応じてフィードバック量を増やしてやればよいということで、変化量の微分値を加える方法が考えられました。これが微分制御(D制御)です。


pidformura.png


変化量の傾き(微分量)を加えることによって、変化がはげしいときはフィードバック量が増えターゲット値に早く近づけることができます。


d.png


しかし、ハンドル操作で容易に想像がつくように、変化が激しい状況でフィードバック量をあまりに大きくすると制御不能に陥ってしまいます。


実際にプログラムを作って試してみましょう。質量は1g、測定間隔は0.1秒、手始めに 比例係数Kp、積分項係数Ki、微分項係数Kd の値はすべて1.0にしてみました。

#include <stdio.h>

#define MASS 1
#define TIME_INTERVAL 0.1
#define Kp 1.0
#define Ki 1.0
#define Kd 1.0

void main()
{
    float Vt = 80.0;  // Target Velocity
    float Vm = 60.0;  // Measured Velocity
    float Time = 0.0;
    float err_integ = 0.0;
    float pre_err = 0.0;

    printf("%f, %f\n", Time, Vm);
    for (int i = 0; i < 500; i++) {
	
	float err = Vt - Vm;
	err_integ += err * TIME_INTERVAL;
	float derr = (err - pre_err) / TIME_INTERVAL;
	
	float force = Kp * err + Ki * err_integ + Kd * derr;
        float dAcc = force / MASS;

        Vm += dAcc * TIME_INTERVAL;
        Time += TIME_INTERVAL;

        printf("%f, %f\n", Time, Vm);

	pre_err = err;
    }
}



これをグラフにしてみました。なんと微分項係数Kd が大きすぎたのか発散をしてしまいました。


PID_Kp1Ki1Kd1.png


ということで、Kp、Ki、Kd の値を変えてみて収束の様子を観察をしてみました。


PID_adjustment.gif


どうやら、この制御系の場合は、Kp = 7.0、Ki = 0.2、Kd = 0.02 がもっともよいようです。各係数の求め方はいくつか手法が編み出されていますので、皆さんも試してみてください。

この系をシステムとして表現すると下記のようになります。


pidsystem.png


これが有名なPID制御系になります。いわゆる古典制御と言われているものですが、ドローン制御やロボット制御でも未だに使われている現役の制御理論です。

次はこれをドローンの制御系に適用してみたいと思います!
(^_^)/~





エンジニアのためのフィードバック制御入門

エンジニアのためのフィードバック制御入門

  • 作者: Philipp K. Janert
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2014/07/26
  • メディア: 単行本(ソフトカバー)






ArduinoとMATLABで制御系設計をはじめよう! (Physical Computing Lab)

ArduinoとMATLABで制御系設計をはじめよう! (Physical Computing Lab)

  • 作者: 平田光男
  • 出版社/メーカー: TechShare
  • 発売日: 2012/12/07
  • メディア: 単行本(ソフトカバー)




前の10件 | 次の10件 ロボットを作ってみる! ブログトップ