FC2ブログ

Eachine E011Silverware(NotFastEnuf/E011-BWHOOP-H8-Silverwareを適用する際のカスタマイズ箇所をまとめました。

※3月時点のソースに比べて、設定項目が増えていますね。


■ 必要なもの

  1. NotFastEnuf/E011-BWHOOP-H8-Silverware
    GitHubからダウンロードします。

  2. Keil uVision5
    ソースを修正し、ファームウェアをビルドするためのソフトウェアです。
    リンク先の「MDK-ARM」を入手します。


■ カスタマイズ

  1. Keil uVision5の起動
    E011-BWHOOP-H8-Silverware-master.zipを解凍してできたSilverwareフォルダ配下の
    silverware.uvprojxをダブルクリックすると、Keil uVision5が起動します。
    ※Keil uVision5が既にインストールされている前提です。

    E011_fw2-01.png

  2. ソース修正
    Keil uVision5で、左画面の各ファイルをダブルクリックし、右画面に表示されたソースを編集します。
    E011_fw2-02.png

    E011_fw2-03.png


    【config.h】(2018/5/12時点のものとなります)
    □ 機種の選択
    BWHOOPの行をコメントアウトし、E011の行を有効にします。
    09: // *************DEFINE FLIGHT CONTROLLER HARDWARE
    10: // *************SELECT ONLY ONE
    11: // *************uncomment BWHOOP define for bwhoop, bwhoop pro, E011C Santa Edition, and Beta FPV Lite Flight Controllers
    12: // *************uncomment E011 define for E011 flight Controller
    13: // *************uncomment H8mini_blue_board for the H8 mini flight controller with blue circuit board
    14: //#define BWHOOP
    15: #define E011
    16: //#define H8mini_blue_board
    17: //#define Alienwhoop_ZERO // requires defining RX_SBUS radio protocol

    □RATEの設定
    22: // *************rate in deg/sec
    23: // *************for acro mode
    24: #define MAX_RATE 860.0
    25: #define MAX_RATEYAW 500.0

    □ EXPOの設定
    acroモードとangle(level)モード、それぞれでEXPO値を設定することができるようになっています。
    無効にする場合、0を設定します。
    33: // ***34: **********EXPO from 0.00 to 1.00 , 0 = no exp
    35: // *************positive = less sensitive near center
    36: #define ACRO_EXPO_ROLL 0.80
    37: #define ACRO_EXPO_PITCH 0.80
    38: #define ACRO_EXPO_YAW 0.60
    39:
    40: #define ANGLE_EXPO_ROLL 0.55
    41: #define ANGLE_EXPO_PITCH 0.0
    42: #define ANGLE_EXPO_YAW 0.55

    □ Transmitterの設定
    デフォルトではDEVOとなっているため、使用するプロポに合わせて、コメントアウトを外します。
    57: // ***58: **********Transmitter Type Selection
    59: //#define USE_STOCK_TX
    60: #define USE_DEVO
    61: //#define USE_MULTI

    □ ARMスイッチの設定
    77: #define ARMING CHAN_5

    □ AIRモードの設定
    AIRモードのスイッチとスロットルがゼロの時の回転数を設定します。
    デフォルトでスイッチは、ARMスイッチと同じになっています。
    airモードを使用しない場合は、コメントアウトします。
    78: #define IDLE_UP CHAN_5
    79: #define IDLE_THR 0.05f

    □ LEVELモード、RACEモード、HORIZONモードスイッチの設定
    85: #define LEVELMODE CHAN_6
    86: #define RACEMODE CHAN_7
    87: #define HORIZON CHAN_8

    ※DEVOとMultiprotocolモジュールでは、CHAN_5~CHAN_10がCH5~CH10に該当します。
    ※付属プロポでは、以下となります。
     CHAN_5:RATEボタン(スピードボタン)
     CHAN_6:スティックジェスチャー(右右下、左左下)
     CHAN_7:ヘッドフリーボタン
     CHAN_8:ロールトリムボタン
     CHAN_9:ピッチトリムボタン

    □ スロットルカーブの設定
    デフォルトでは無効となっています。
    172: // // *************motor curve to use - select one
    173: // *************the pwm frequency has to be set independently
    174: #define MOTOR_CURVE_NONE
    175: //#define MOTOR_CURVE_6MM_490HZ
    176: //#define MOTOR_CURVE_85MM_8KHZ
    177: //#define MOTOR_CURVE_85MM_32KHZ
    178: //#define BOLDCLASH_716MM_8K
    179: //#define BOLDCLASH_716MM_24K

    【pid.c】(2018/5/12時点のものとなります)
    □ PIDの設定
    36: //************************************PIDS****************************************
    37:
    38: //7mm Whoop NotFastEnuf "High and Tight Pids" -kalman gyro at 90hz, D 2nd at 100hz, motor filter at 90hz, mix increase 3 max strength at .20 (These pids help tighten up old batteries and worn motors)
    39: // ROLL PITCH YAW
    40: //float pidkp[PIDNUMBER] = { 27.0e-2 , 27.0e-2 , 11.5e-1 };
    41: //float pidki[PIDNUMBER] = { 20.5e-1 , 20.5e-1 , 16e-1 };
    42: //float pidkd[PIDNUMBER] = { 11.4e-1 , 11.4e-1 , 4.9e-1 };
    43:
    44: //7mm Whoop NotFastEnuf "Default Pids" -kalman gyro at 90hz, D 2nd at 100hz, motor filter at 90hz, mix increase 3 max strength at .20 (These pids work nicely with new or HV batteries and fresh motors)
    45: // ROLL PITCH YAW
    46: //float pidkp[PIDNUMBER] = { 26.5e-2 , 26.5e-2 , 8.5e-1 };
    47: //float pidki[PIDNUMBER] = { 16e-1 , 16e-1 , 13e-1 };
    48: //float pidkd[PIDNUMBER] = {11.1e-1 , 11.1e-1 , 4.9e-1 };
    49:
    50: //6mm Whoop 615 19600kv -kalman gyro at 90hz, D 2nd at 100hz, motor filter at 90hz
    51: // ROLL PITCH YAW
    52: //float pidkp[PIDNUMBER] = {19.5e-2 , 19.5e-2 , 7.5e-1 };
    53: //float pidki[PIDNUMBER] = { 14e-1 , 15e-1 , 13e-1 };
    54: //float pidkd[PIDNUMBER] = { 6.9e-1 , 6.9e-1 , 5.5e-1 };
    55:
    56: //6mm and 7mm Abduction Pids (Team Alienwhoop)-kalman gyro at 90hz, D 2nd at 100hz, motor filter at 90hz, mix increase 3 max strength at 100%
    57: // ROLL PITCH YAW
    58: float pidkp[PIDNUMBER] = {20.5e-2 , 20.5e-2 , 11.5e-1 };
    59: float pidki[PIDNUMBER] = { 14e-1 , 15e-1 , 16e-1 };
    60: float pidkd[PIDNUMBER] = { 7.4e-1 , 7.4e-1 , 5.5e-1 };
    61:
    62: //6mm AwesomeSauce 20000kv Pids (Team Alienwhoop)-kalman gyro at 90hz, D 2nd at 100hz, motor filter at 90hz
    63: // ROLL PITCH YAW
    64: //float pidkp[PIDNUMBER] = { 25.5e-2 , 25.5e-2 , 11.5e-1 };
    65: //float pidki[PIDNUMBER] = { 20.5e-1 , 20.5e-1 , 16e-1 };
    66: //float pidkd[PIDNUMBER] = { 11.4e-1 , 11.4e-1 , 4.9e-1 };
    67:
    68: //BOSS 6 & 7 - 615 and 716 motors, hm830 46mm props -1st gyro at 70hz, D 2nd at 80hz, motor filter at 70hz
    69: // ROLL PITCH YAW
    70: //float pidkp[PIDNUMBER] = { 24.5e-2 , 24.5e-2 , 9.5e-1 };
    71: //float pidki[PIDNUMBER] = { 12e-1 , 12e-1 , 8e-1 };
    72: //float pidkd[PIDNUMBER] = {14.1e-1 , 14.1e-1 , 7e-1 };
    73:
    74: //(EXPERIMENTAL) BOSS 7 with TORQUE_BOOST at 2.0 - same gyro & d filters as regular boss 7 tune
    75: // ROLL PITCH YAW
    76: //float pidkp[PIDNUMBER] = { 22.7e-2 , 22.7e-2 , 9.5e-1 };
    77: //float pidki[PIDNUMBER] = { 12e-1 , 12e-1 , 8e-1 };
    78: //float pidkd[PIDNUMBER] = {8.7e-1 , 8.7e-1 , 0e-1 };
    79:
    80: //BOSS 8.0 - 816 motors, kingkong 66mm props -kalman gyro at 90hz, D 2nd at 100hz, motor filter at 90hz
    81: // ROLL PITCH YAW
    82: //float pidkp[PIDNUMBER] = { 26.7e-2 , 26.7e-2 , 9.5e-1 };
    83: //float pidki[PIDNUMBER] = { 12e-1 , 12e-1 , 8e-1 };
    84: //float pidkd[PIDNUMBER] = {16.2e-1 , 16.2e-1 , 7e-1 };
    85:
    86: //BOSS 8.5 - 820 motors, kingkong 66mm props -kalman at 80hz, D 2nd at 90hz, motor filter at 90hz
    87: // ROLL PITCH YAW
    88: //float pidkp[PIDNUMBER] = { 29.5e-2 , 29.5e-2 , 11.5e-1 };
    89: //float pidki[PIDNUMBER] = { 12e-1 , 12e-1 , 12.0e-1 };
    90: //float pidkd[PIDNUMBER] = {17.5e-1 , 17.5e-1 , 7e-1 };


  3. ファームウェアのビルド
    メニューにあるBuildアイコンをクリックし、ビルドします。
    E011_fw2-04.png

    ビルド後、エラーが発生していないことを確認します。
    E011_fw2-05.png

    正常に完了すると、Objectsフォルダ配下にbwhoop.hexが作成されます。
    E011_fw2-06.png


■ ファームウェアの書き込み

STM32 ST-Link Utilityを使用して、FCにObjectsフォルダ配下のbwhoop.hexを書き込みます。


■ LINK



関連記事
スポンサーサイト
Posted by