隨著市場需求的發(fā)展,C2000實(shí)時(shí)處理器不斷地在性價(jià)方面做優(yōu)化, 高性價(jià)比的F28002x系列在2020年開始量產(chǎn)。 F28002x系列擁有100MHz C28x 32Bit DSP CPU,高達(dá)128KB Flash 和24KB RAM,有兩個(gè)獨(dú)立的12位ADC 轉(zhuǎn)換器,每個(gè)ADC 轉(zhuǎn)換器高達(dá)3.45MSPS采樣率,有16個(gè)ADC通道,有14路ePWM 輸出(其中8路支持高精度HRPWM,最高可到達(dá)150ps精度),有四個(gè)窗口比較器CMPSS,支持CAN 和LIN 通訊,有48腳/64腳/80腳LQFP三種封裝,因此,非常適合做各種風(fēng)機(jī),水泵,油泵,空調(diào)壓縮機(jī)等電機(jī)控制應(yīng)用以及做交錯(cuò)式PFC,圖騰柱PFC, LLC,移相全橋等數(shù)字電源拓?fù)淇刂啤?/p>
F280023C/F280025C 型號內(nèi)置TI 高性能的無傳感器InstaSPIN FOC控制算法,其優(yōu)異的觀測器性能,可以提升客戶產(chǎn)品的啟動(dòng)性能,也可以讓客戶產(chǎn)品運(yùn)行在更低的工作頻率。過調(diào)制功能可以讓客戶產(chǎn)品運(yùn)行在更高的工作頻率,從而提升了電機(jī)運(yùn)行的效率。InstaSPIN FOC 同時(shí)還自帶電機(jī)參數(shù)自學(xué)習(xí)功能,通過自學(xué)習(xí)功能,可以識別電機(jī)的電阻,電感和反電勢參數(shù), 從而自動(dòng)生成速度環(huán)和電流環(huán)控制的PID,因此大大簡化了客戶匹配電機(jī)的過程,減少了客戶的開發(fā)時(shí)間。同時(shí)降低了客戶對于FOC電機(jī)控制的經(jīng)驗(yàn)要求,因此深受廣大客戶的歡迎。從而廣泛應(yīng)用于白電空調(diào)壓縮機(jī),冰箱壓縮機(jī),洗衣機(jī)電機(jī),無人機(jī)動(dòng)力電機(jī),新能源汽車空調(diào)壓縮機(jī),各種風(fēng)機(jī),水泵,油泵等控制場合。
本文將介紹基于F280025C ControlCard和DRV8312-Kit 的InstaSPIN FOC 軟硬件使用指南。
硬件準(zhǔn)備工作
首先, 請準(zhǔn)備好下面三個(gè)硬件:
1. TMDSCNCD280025C -- F280025C ControlCard
2. DRV8312-C2-KIT/DRV8312-69M-KIT — DRV8312電機(jī)控制套件
這個(gè)套件包含以下內(nèi)容:
DRV8312 三相電機(jī)控制板
Piccolo TMDSCNCD28035ISO controlCARD或者TMDSCNCD28069MISO controlCARD
1個(gè) BLDC/BLAC NEMA17 55W 電機(jī)
24 V 電源
USB 線
3. TMDSADAP180TO100 — 180PIN 到100PIN轉(zhuǎn)接卡
因?yàn)镈RV8312-KIT是比較早的電機(jī)控制套件, 設(shè)計(jì)時(shí)ControlCARD的接口是按第二代C2000 ControlCARD 設(shè)計(jì)的100PIN 接口, 而F280025C ControlCARD是按照第三代C2000 ControlCARD 設(shè)計(jì)的120接口,因此F280025C ControlCARD需要通過TMDSADAP180TO100轉(zhuǎn)接才能接到DRV8312-KIT的接口上。
硬件設(shè)置
接下來請按下面步驟來設(shè)置硬件。
步驟一. DRV8312-KIT跳線和撥碼開關(guān)設(shè)置:
如下圖所示:JP1 跳線接到VR1, M1 接到H ,RSTA/RSTB/RSTC 撥到中間(MCU)位置
步驟二. F280025C ControlCard 撥碼開關(guān)設(shè)置
如下圖所示:S1A 全撥到上面, S3 撥到上面 ,S5 左邊的撥到下面,右邊的撥上面
步驟三:將F280025C ControlCard 接到TMDSADAP180TO100 上, 然后將它們一起接到DRV8312-KIT 的J1 ControlCard 插槽上,如下圖所示:
步驟四:
1.將電機(jī)三相輸入接到M0A/MOB/MOC,
2.將Mini USB 接口一端鏈接電腦USB 口,一端連接到F280025C ControlCard J1:A 接口上,
3.24V 電源接到J9
整體安裝完成圖如下:
軟件準(zhǔn)備工作請確保已經(jīng)安裝C2000Ware_MotorControl_SDK_F28002x_3_00_00_01
步驟一:打開CCS,導(dǎo)入項(xiàng)目CCS 項(xiàng)目,例如is05_motor_id_eabi
(項(xiàng)目在“..\C2000Ware_MotorControl_SDK_F28002x_3_00_00_01\solutions\drv8312_c2_kit\f28002x
\ccs\sensorless_foc”路徑下)
步驟二:確保hal.c(在..\C2000Ware_MotorControl_SDK_F28002x_3_00_00_01\solutions\
drv8312_c2_kit\f28002x\drivers\source\hal.c路徑下)文件,HAL_setupADCs(HAL_Handle handle)函數(shù)中, ADC SOC 配置如下:
// configure the SOCs for drv8312kit_revD
// IA-FB - A1/RA0
ADC_setupSOC(obj->adcHandle[0], ADC_SOC_NUMBER0, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN1, 14);
// IB-FB - C1/RC0
ADC_setupSOC(obj->adcHandle[1], ADC_SOC_NUMBER0, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN1, 14);
// IC-FB - A3/RA1
ADC_setupSOC(obj->adcHandle[0], ADC_SOC_NUMBER1, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN3, 14);
// ADC-Vhb1 - C11/RC1
ADC_setupSOC(obj->adcHandle[1], ADC_SOC_NUMBER1, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN11, 14);
// ADC-Vhb2 - A7/RA2
ADC_setupSOC(obj->adcHandle[0], ADC_SOC_NUMBER2, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN7, 14);
// ADC-Vhb3 - C7/RC2
ADC_setupSOC(obj->adcHandle[1], ADC_SOC_NUMBER2, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN7, 14);
// VDCBUS - A14/RA3. DRV8312 board does not have capacitor on Vbus feedback, so
// the sampling needs to be very long to get an accurate value
ADC_setupSOC(obj->adcHandle[0], ADC_SOC_NUMBER3, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN14, 200);
// throttle - C0->RC3
ADC_setupSOC(obj->adcHandle[1], ADC_SOC_NUMBER3, ADC_TRIGGER_EPWM1_SOCA,
ADC_CH_ADCIN0, 14);
步驟三:確保user.h(在..\C2000Ware_MotorControl_SDK_F28002x_3_00_00_01\solutions\
drv8312_c2_kit\f28002x\drivers\include\user.h路徑下) 中電流,電壓,截止頻率參數(shù)如下:
//! \brief Defines the nominal DC bus voltage, V
//!
#define USER_NOMINAL_DC_BUS_VOLTAGE_V ((float32_t)(24.0f))
//! \brief Defines the maximum voltage at the AD converter
//!
// Full scale voltage of AD converter, not the current voltage
#define USER_ADC_FULL_SCALE_VOLTAGE_V ((float32_t)(66.32f))
//! \brief Defines the maximum current at the AD converter
//!
// DRV8312 motor control kit
#define USER_ADC_FULL_SCALE_CURRENT_A ((float32_t)(17.3f))
//! \brief Defines the analog voltage filter pole location, Hz
//!
#define USER_VOLTAGE_FILTER_POLE_Hz ((float32_t)(714.14f))
步驟四:增加下面部分內(nèi)容,并確保 #define USER_MOTOR my_motor_new
#define my_motor_new 600
#elif (USER_MOTOR == my_motor_new)
#define USER_MOTOR_TYPE MOTOR_TYPE_PM
#define USER_MOTOR_NUM_POLE_PAIRS (4)
#define USER_MOTOR_Rr_Ohm (NULL)
#define USER_MOTOR_Rs_Ohm (0.417878777f)
#define USER_MOTOR_Ls_d_H (0.0007190173f)
#define USER_MOTOR_Ls_q_H (0.0007190173f)
#define USER_MOTOR_RATED_FLUX_VpHz (0.0327013217f)
#define USER_MOTOR_MAGNETIZING_CURRENT_A (NULL)
#define USER_MOTOR_RES_EST_CURRENT_A (1.5f)
#define USER_MOTOR_IND_EST_CURRENT_A (-1.5f)
#define USER_MOTOR_MAX_CURRENT_A (5.0f)
#define USER_MOTOR_FLUX_EXC_FREQ_Hz (20.0f)
#define USER_MOTOR_NUM_ENC_SLOTS (NULL)
#define USER_MOTOR_INERTIA_Kgm2 (7.06154e-06f)
#define USER_MOTOR_MIN_MAX_HZ (5.0) // Hz
#define USER_MOTOR_FREQ_MAX_HZ (390.0) // Hz
#define USER_MOTOR_FREQ_LOW_HZ (10.0) // Hz
#define USER_MOTOR_FREQ_HIGH_HZ (400.0) // Hz
#define USER_MOTOR_VOLT_MIN_V (4.0) // Volt
#define USER_MOTOR_VOLT_MAX_V (24.0) // Volt
至此軟硬件準(zhǔn)備工作完畢,接下來可以參考MotorControl SDK InstaSPIN Lab Guide.pdf進(jìn)行具體的InstaSPIN FOC 軟件調(diào)試工作。
(MotorControl SDK InstaSPIN Lab Guide.pdf在..\C2000Ware_MotorControl_SDK_F28002x_3_00_00_01\
solutions\common\sensorless_foc\docs\labs路徑下)
注意事項(xiàng):
C2000Ware_MotorControl_SDK_F28002x_3_00_00_01 軟件包并未公開發(fā)布,有需要的客戶請聯(lián)系所對應(yīng)的TI銷售和FAE 進(jìn)行申請。
參考文檔:
1.InstaSPIN FOC 詳細(xì)說明文檔,請參考手冊
InstaSPIN-FOC and InstaSPIN-MOTION User's Guide
審核編輯:湯梓紅
-
轉(zhuǎn)換器
+關(guān)注
關(guān)注
27文章
8736瀏覽量
147537 -
cpu
+關(guān)注
關(guān)注
68文章
10888瀏覽量
212362 -
adc
+關(guān)注
關(guān)注
98文章
6524瀏覽量
545186
發(fā)布評論請先 登錄
相關(guān)推薦
評論