JAJU510J March 2018 – February 2025 TMS320F28P550SG , TMS320F28P550SJ , TMS320F28P559SG-Q1 , TMS320F28P559SJ-Q1
このセクションのすべてのラボは、両方の制御カードで実行できます。ただし、TMS320F280039C 制御カードを使用する場合は、以下の点に注意してください。
user_settings.h ファイル内のパラメータを直接変更する必要があります。#define TINV_THIRD_HARMONIC_INJECTION_STATUS TINV_THIRD_HARMONIC_INJECTION_ENABLE#define TINV_MIDDLE_POINT_CONTROL_STATUS TINV_MIDDLE_POINT_CONTROL_ENABLE以下のパラメータは E7 ハードウェアのテストに使用されており、main.syscfg または tinv_settings.h のいずれかで構成できます。E6 を使用する場合は、default main.syscfg 値をそのまま使用します。E7 パラメータは次のコードに示されています:
// Power Stage Settings
//
#define TINV_PWM_SWITCHING_FREQ_HZ ((float32_t)90*1000)
#define TINV_PWM_DEADBAND_US ((float32_t)0.15)
#define TINV_PWM_PERIOD_TICKS (TINV_PWMSYSCLOCK_FREQ_HZ / TINV_PWM_SWITCHING_FREQ_HZ)
#define TINV_PWM_DEADBAND_TICKS (int16_t)((float32_t)TINV_PWM_DEADBAND_US * \
(float32_t)TINV_PWMSYSCLOCK_FREQ_HZ * \
(float32_t)ONE_MICRO_SEC)
#define TINV_AC_FREQ_HZ ((float32_t)60)
#define TINV_VBUS_NOMINAL_VOLTS ((float32_t)800)
#define TINV_LI_INDUCTOR_VALUE ((float32_t)0.13*0.001)
#define TINV_LG_INDUCTOR_VALUE ((float32_t)0.01*0.001)
#define TINV_VGRID_MAX_SENSE_VOLTS ((float32_t)512.5)
#define TINV_VINV_MAX_SENSE_VOLTS TINV_VGRID_MAX_SENSE_VOLTS
#define TINV_VBUS_MAX_SENSE_VOLTS ((float32_t)1100)
#define TINV_IINV_MAX_SENSE_AMPS ((float32_t)33)
#define TINV_IINV_TRIP_LIMIT_AMPS ((float32_t)29)
#define TINV_IGRID_MAX_SENSE_AMPS ((float32_t)32)
#define TINV_IGRID_TRIP_LIMIT_AMPS ((float32_t)29)
//
// PI Controller Settings from Compensation Designer
//
#define TINV_GI_PI_KP ((float32_t)0.0996509341)
#define TINV_GI_PI_KI ((float32_t)0.0070057718)
#define TINV_GV_PI_KP ((float32_t) 1.9979056049)
#define TINV_GV_PI_KI ((float32_t) 0.0041887902)
新しい E7 ハードウェアをサポートするには、C2000Ware_DigitalPower_SDK のソフトウェアの一部の変更が必要です。最初の変更は、セクション 3.1.1.2ですでに説明したように、ファン GPIO の変更です (便宜上、ここに表示)。2 つ目のソフトウェア変更は、最新のE7 が V_PCC と V_SN について非反転電圧検出を使用しているため、デフォルトの SDK ソフトウェアでの電圧検出極性が反転することです。
tinv_user_settings.h でファン GPIO を変更する場合:
//E6
//#define TINV_FAN_GPIO 9
//#define TINV_FAN_GPIO_PIN_CONFIG GPIO_9_GPIO9
//E7
#define TINV_FAN_GPIO 18
#define TINV_FAN_GPIO_PIN_CONFIG GPIO_18_GPIO18
高電力テストの際には、デバッグ セッション中に CCS WATCH ウィンドウの TINV_fanSet 機能を使用して、ファンを有効にしてください。
tinv.h の E7 電圧検出の極性変更には、以下を使用:
// Voltage sensing on the actual board is non-inverted hence a +2.0f needs to be multiplied as below
TINV_vInv_A_sensed_pu = ((float32_t)TINV_VINV_A_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vInv_A_sensedOffset_pu) * 2.0f;
TINV_vInv_B_sensed_pu = ((float32_t)TINV_VINV_B_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vInv_B_sensedOffset_pu) * 2.0f;
TINV_vInv_C_sensed_pu = ((float32_t)TINV_VINV_C_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vInv_C_sensedOffset_pu) * 2.0f;
TINV_vGrid_A_sensed_prev_pu = TINV_vGrid_A_sensed_pu;
TINV_vGrid_A_sensed_pu = ((float32_t)TINV_VGRID_A_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vGrid_A_sensedOffset_pu ) * 2.0f;
TINV_vGrid_B_sensed_pu = ((float32_t)TINV_VGRID_B_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vGrid_B_sensedOffset_pu ) * 2.0f;
TINV_vGrid_C_sensed_pu = ((float32_t)TINV_VGRID_C_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vGrid_C_sensedOffset_pu ) * 2.0f;
E6 の電圧検出の場合、tinv.h から (デフォルトの SDK コードは許容可能):
// Voltage sensing on the actual board is inverted hence a -2.0f needs to be multiplied as below
TINV_vInv_A_sensed_pu = ((float32_t)TINV_VINV_A_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vInv_A_sensedOffset_pu) * -2.0f;
TINV_vInv_B_sensed_pu = ((float32_t)TINV_VINV_B_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vInv_B_sensedOffset_pu) * -2.0f;
TINV_vInv_C_sensed_pu = ((float32_t)TINV_VINV_C_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vInv_C_sensedOffset_pu) * -2.0f;
TINV_vGrid_A_sensed_prev_pu = TINV_vGrid_A_sensed_pu;
TINV_vGrid_A_sensed_pu = ((float32_t)TINV_VGRID_A_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vGrid_A_sensedOffset_pu ) * -2.0f;
TINV_vGrid_B_sensed_pu = ((float32_t)TINV_VGRID_B_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vGrid_B_sensedOffset_pu ) * -2.0f;
TINV_vGrid_C_sensed_pu = ((float32_t)TINV_VGRID_C_READ *
TINV_ADC_PU_SCALE_FACTOR -
TINV_vGrid_C_sensedOffset_pu ) * -2.0f;
E7 ハードウェアの場合、(プリチャージ後に) 3 相リレーをすべてオンにするには、CCS WATCH ウィンドウの TINV_neutralRelaySet 機能を使用します。TINV_allRelaySet は E6 ハードウェアにのみ使用してください。