版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第七章
基于P-NUCLEO-IHM03套件的電機入門控制無感FOC快速控制實例1234無感方波控制實例無感速度模式控制實例旋鈕控制電機運行速度實例5故障處理及恢復實例6API函數(shù)應用實例概述本章共分為6個小節(jié),每個小節(jié)即一個實例,每個實例都配有詳細的步驟和解釋,帶大家逐步學習基于P-NUCLEO-IHM03套件的電機入門控制。具體內容包括:無感FOC快速控制實例、無感方波控制實例、無感速度模式控制實例、旋鈕控制電機運行速度實例、故障處理及恢復實例和API函數(shù)應用實例。無感FOC快速控制實例01實驗要求(1)實驗目標①初步掌握MC-SDKV5.4的基本操作②快速實現(xiàn)電機的轉動控制(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件②軟件平臺:STMotorControlSDK5.4STM32CubeMXSTM32CubeIDE實驗步驟參考視頻:/zh/evaluation-tools/p-nucleo-ihm03.html圖7-1參考視頻頁面實驗步驟①首先打開軟件STMotorControlSDK5.4,點擊NewProject,在Control欄中選擇NUCLEO-G431RB板圖7-3驅動板型號選擇在Power欄中選擇X-NUCLEO-IHM16M13sh驅動板Motor欄中選擇GimBalGBM2804H-100T,配置完成后點擊確定,彈出電機參數(shù)導入工程的信息提示。圖7-2開發(fā)板型號選擇圖7-4電機型號選擇圖7-5電機參數(shù)導入工程信息提示實驗步驟圖7-6MotorControlWorkbench主界面②工程生成點擊“SpeedSensing”,打開如圖7-7所示的速度位置反饋管理界面,其中“Sensorselection”下拉框為“Sensor-less(Observer+PLL)”,可以看出本實例是采用無感FOC方式來實現(xiàn)永磁同步電機的控制。圖7-7速度位置反饋管理界面實驗步驟在圖7-9所示界面處視頻中選用IAREWARMIDE,此處建議選用STSTM32CubeIDE或者KeilMDK-ARM。選擇后點擊GENERATE。圖7-8工程命名保存界面圖7-9工程生成配置界面點擊STMotorControlWorkbench主界面中的菜單Tools再點擊Generation后輸入工程名字進行保存。實驗步驟完成后點擊RUNSTM32CubeIDE按鈕即可打開STM32CubeMX。圖7-10工程生成完成界面圖7-11STM32CubeMX主界面打開STM32CubeMX后如圖7-11所示,進入ProjectManager界面選擇IDE后點擊GENERATECODE實驗步驟圖7-12代碼生成成功提示圖7-15發(fā)布配置界面圖7-13選擇工作空間目錄圖7-14編譯運行界面代碼生成成功后,點擊OpenProject,再點擊Launch,進人STM32CubeIDE后找到main.c文件,如圖7-14所示,點擊編譯按鈕,待編譯完成后點擊運行按鈕即可,發(fā)布配置界面如圖7-15所示。實驗步驟然后打開Workbench,按圖7-16所示進行設備連接,然后進入Advanced界面,點擊StartMotor即轉動電機,可在Monitor界面觀測到實時速度。圖7-16電機控制監(jiān)測界面無感方波控制實例02實驗要求(1)實驗目標①了解電機的基本結構,熟悉BLDCM方波控制的基本原理。②基于BLDCM方波控制的原理,結合前面學習的STM32G4的知識,通過MotorControlWorkbench5.4.8軟件包中自帶的6-StepsspeedregulationusingtheP-NUCLEO-IHM03kit的示例程序,基于P-NUCLEO-IHM03套件實現(xiàn)無刷直流電機六步方波控制。(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件②軟件平臺:STMotorControlSDK5.4STM32CubeMXKeil5(5.33版本及以上)實驗步驟(3)X-NUCLEO-IHM16M1板的硬件設置為了運行示例程序,X-NUCLEO-IHM16M1板應做如下設置:?將跳線J5和J6設置在打開位置;?將跳線J2設置在1-2位置;?將跳線J3設置在2-3位置;?可選擇關閉焊橋JP4和JP7,因為它們僅對電流檢測起作用,本例中并未涉及。(4)實驗步驟①打開示例工程打開MotorControlWorkbench5.4.8軟件,如圖7-17所示,在軟件自帶例程里找到Six-stepdrivewithP-NUCLEO-IHM003kit并雙擊打開,打開時會跳出readme.txt文件,同時彈出如圖7-18所示的提示窗口,請仔細查看readme.txt文件后點擊“確定”按鈕以打開工程。圖7-17示例例程選擇圖7-18提示窗口實驗步驟②保存工程將Sixstep_p-nucleo-ihm003.stmcx工程保存到另外一個空的文件夾下。請注意:請勿更改Sixstep_p-nucleo-ihm003.stmcx的名稱,否則示例將無法正常運行或編譯。③更改extras.wb_def文件用記事本的方式打開extras.wb_def文件,如圖7-19所示,用來更改用戶I/F。修改SERIAL_COMMUNICATION鍵的值為false,以便在CLI中使用(默認情況下,它是STMCMonitor用戶界面,此鍵值為true)。圖7-19
extras.wb_def文件更改④選擇對應的軟件版本參數(shù)生成電機工程單擊“Tools”—>“Generation”菜單項。這將彈出如圖7-20所示的工程生成窗口,允許用戶選擇參數(shù):?STM32CubeMX選擇5.3.0或更高版本;?TargetToolchain選擇KeilMDK-ARMV5或IAREWARM版本;?FirewarePackageVersion選擇STM32FWV1.1.0或更高版本;?選中DriveType下方的HAL-HardwareAbstractionLayer復選框。然后,點擊“GENERATE”按鈕生成工程。圖7-20工程生成實驗步驟⑤打開STM32CubeMX文件并生成Keil文件如圖7-21所示,點擊“GENERATECODE”生成Keil文件。⑥打開Keil文件編譯并下載至單片機中如圖7-22所示,打開Keil軟件后,點擊①框中的“OptionsforTargets…”,選擇ST-LinkDebugger,點擊②框中的“Settings”,打開如圖7-23所示配置窗口,添加Flsah,點擊“確定”后,再點擊圖7-22中③框中的“Translate”和④框中的“Download”燒錄程序至單片機中。按下板上的黑色按鈕重置MCU板,運行示例,再按下板上的藍色按鈕啟動和停止電機,實現(xiàn)了無刷直流電機的六步無感控制。圖7-21生成Keil文件圖7-23配置窗口圖7-22程序燒錄界面無感速度模式控制實例03實驗要求(1)實驗目標①初步掌握MC-SDKV5.4的基本操作②實現(xiàn)電機的無傳感運行,電機從開環(huán)啟動到閉環(huán)運行③使用API實現(xiàn)電機變速運行,轉速在300RPM至600RPM之間進行切換(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件②軟件平臺:STMotorControlSDK5.4STM32CubeMXSTM32CubeIDE實驗步驟參考視頻:/coursedetail?id=b69fe93850df41cda9906991e5ec100d①Workbench創(chuàng)建工程與7.1小節(jié)電機快速控制實例類似,新建一個工程,按圖7-24所示選擇Control,Power與Motor,點擊OK。圖7-24新建工程因為參數(shù)已經配置完成,所以直接點擊“保存”按鈕進行保存。保存完成后點擊“工程生成”按鈕生成代碼,如圖7-25所示,點擊“GENERATE”,完成后打開如圖7-26所示的工程生成窗口,點擊“RUNSTM32CubeIDE”按鈕打開STM32CubeMX。圖7-25工程生成圖7-26工程生成完成界面實驗步驟②如圖7-27所示,在ProjectManager界面選擇STM32CubeIDE后點擊“GENERATECODE”。連接設備,注意電源也要連接。代碼生成成功后,點擊“OpenProject”,再點擊“Launch”,進入STM32CubeIDE后找到main.c文件,如圖7-28所示,點擊“Debug”與“Run”,編譯成功。圖7-27
ProjectManager界面圖7-28編譯運行界面然后打開Workbench,按圖7-29所示連接設備,然后進入Advanced界面,點擊“StartMotor”即可轉動電機,可在Monitor界面觀測到實時速度。圖7-29電機控制監(jiān)測界面實驗步驟③在圖7.2-7所示界面中輸入數(shù)值并點擊Execramp即可調節(jié)電機速度。圖7-30電機速度控制④上面使用Workbench對電機進行簡單調速,還可以通過代碼調用API對電機進行精確調速,下面介紹如何調用API函數(shù)使得電機在300rpm與600rpm之間進行均勻變速。本實例中使用的電機控制API函數(shù)包括:MC_ProgramSpeedRampMotor1();MC_StartMotor1();MC_StopMotor1();具體的API函數(shù)調用流程如下:首先,如圖7-31所示,打開main.c文件,在/*USERCODEBEGIN0*/與/*USERCODEEND0*/之間添加代碼。圖7-31用戶代碼添加實驗步驟然后按照圖7-32所示找到int
main(void)函數(shù),在while(1)函數(shù)中調用HandsOn1()。(注意:HandsOn1();請放置在/*USERCODEEND3*/之前)圖7-32
HandsOn1()函數(shù)調用然后按照圖7-33所示點擊“Debug”按鈕,若彈出圖示窗口點擊“Switch”,然后點擊“Run”按鈕就可以看到電機變速旋轉。圖7-33工程編譯運行實驗步驟如果想要更準確的觀測到電機的速度變化,可以打開MotorControlWorkbench,點擊電機監(jiān)測界面,如圖7-34所示,成功連接電機后打開界面中的示波器工具。圖7-34電機監(jiān)測界面圖7-35電機運行速度曲線程序燒錄到單片機后,按下開發(fā)板的黑色按鈕(即復位鍵),可以觀測到電機的轉速變化,電機會在轉速變化五次后停止,顯示結果如圖7-35所示。旋鈕控制電機運行速度實例04實驗要求及條件(1)實驗目標①學會使用STM32CubeMX修改已有的電機工程②學會ADC在電機工程中的使用③學習使用配置旋鈕等硬件對電機進行調速(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件②軟件平臺:STMotorControlSDK5.4STM32CubeMXSTM32CubeIDE實驗步驟①首先在7.3無感速度模式控制實例的基礎上,使用STM32CubeMX打開已有的電機工程,進入到如圖7-36所示的主界面,為了和7.3無感速度模式控制實例進行區(qū)分,可將工程另行保存。按照圖示流程,點擊“Analog”選取ADC1進行ADC配置,將ADC1IN8配置為IN8Single-ended,然后右鍵選擇PC2管腳,將其配置為ADC1_IN8,此處管腳配置是為了后續(xù)將其作為旋鈕的ADC進行使用,管腳配置完成后點擊“GENERATECODE”重新生成代碼即可。圖7-36STM32CubeMX主界面實驗步驟②生成代碼后,點擊“OpenProject”,再點擊“Launch”,進入STM32CubeIDE,打開工程文件,可以看到7.3小節(jié)實例的代碼依然保留,通過STM32CubeMX只是配置了管腳,并不影響代碼文件。下面介紹如何在工程中使用ADC實現(xiàn)旋鈕調速。本實例中用到的API函數(shù)包括:RCM_GetUserConvState();RCM_GetUserConv();RCM_RequestUserConv();首先,如圖7-37所示,在7.3小節(jié)實例函數(shù)定義后加入的代碼。圖7-37用戶代碼添加實驗步驟然后,如圖7-38所示,在main函數(shù)處調用初始化函數(shù)HandsOn2_Init()以及HandsOn2()。注意:①HandsOn2();應放置在/*USERCODEENDWHILE*/之前(注釋掉7.3小節(jié)實驗調用的HandsOn1();)②HandsOn2_Init();建議放置在/*USERCODEBEGIN2*/
與/*USERCODEEND2*/之間圖7-38初始化函數(shù)調用③代碼添加完成后點擊“DEBUG”與“RUN”。當代碼燒錄至單片機之后,按下黑色按鈕即可開始運行,可以通過Workbench來觀測此時電機的運行狀態(tài)。打開Workbench連接電機后按照之前的方法進入監(jiān)測界面,如圖7-39所示左側是電機實際的轉速,右側是電機設定的轉速。圖7-39電機監(jiān)測界面實驗步驟可以通過旋轉藍色旋鈕來控制電機在300rpm至800rpm的范圍內運行。電機運行速度曲線圖如圖7-40所示。圖7-40電機運行速度曲線轉速控制旋鈕示意故障處理及恢復實例05實驗要求及條件(1)實驗目標①學習使用STM32CubeMX生成Timer初始化②學會如何得到電機狀態(tài)③學會如何清除報錯狀態(tài),讓電機重新運行(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件②軟件平臺:STMotorControlSDK5.4STM32CubeMXSTM32CubeIDE實驗步驟①與7.4小節(jié)實例類似,用STM32CubeMX打開之前的工程文件,按照圖7-41所示的流程初始化Timer,在點擊“Timers”后選擇TIM3,將ClockSource配置為InternalClock作為高頻計數(shù),然后將CounterPeriod配置為0xFFFF即65535即可,此時設定的最大溢出時間約為385.5us。圖7-41Timer初始化配置界面實驗步驟②時鐘配置完成后,點擊“GENERATECODE”生成代碼,再點擊“OpenProject”和“Launch”,進入STM32CubeIDE,打開工程文件,按照圖7-42所示選擇打開stm32g4xx_mc_it.c文件,在void
ADC1_2_IRQHandler(void)函數(shù)代碼中的/*USERCODEBEGINADC1_2_IRQn0*/和/*USERCODEENDADC1_2_IRQn0*/之間以及/*USERCODEBEGINADC1_2_IRQn1*/和/*USERCODEENDADC1_2_IRQn1*/之間添加兩段代碼。
volatile
static
uint16_tFOC_Cycle;
volatile
static
uint32_tFOC_Time; TIM3->CNT=0; TIM3->CR1|=0x01;
TIM3->CR1&=0xFFFE;FOC_Cycle=TIM3->CNT;FOC_Time=(uint32_t)FOC_Cycle/170;圖7-42代碼添加界面實驗步驟③再打開main.c文件,與7.4小節(jié)實例一樣,如圖7-43所示在定義的函數(shù)后添加代碼。然后,如圖7-44所示,在main函數(shù)中調用函數(shù)HandsOn3()(注釋掉HandsOn2();與HandsOn2_Init();)然后在main函數(shù)中調用即可(注釋掉HandsOn2();與HandsOn2_Init();)//HandsOn3FaultClear//static
uint16_tState_Mark;static
uint16_tFault_Mark;void
HandsOn3(void){
//GetMotorControlState// State_Mark=MC_GetSTMStateMotor1();
//GetFaultstate// Fault_Mark=MC_GetOccurredFaultsMotor1();
if(Fault_Mark!=MC_NO_FAULTS) {
HAL_Delay(2000);
MC_AcknowledgeFaultMotor1();
MC_ProgramSpeedRampMotor1(MC_GetLastRampFinalSpeedMotor1(),1000); }
if((State_Mark==IDLE)&&(Fault_Mark==MC_NO_FAULTS)) {
MC_StartMotor1(); }}圖7-43HandsOn3函數(shù)代碼添加界面圖7-44HandsOn3函數(shù)調用界面實驗步驟④代碼添加完畢后,點擊“編譯”與“運行”,當程序燒錄到單片機上之后,電機會按照設定的轉速轉動,此時對電機進行堵轉,功率板上的三相指示燈會熄滅,當結束堵轉后2秒(此處2秒是為了展示電機清除了錯誤狀態(tài)而特意設定,日常應用時電機會立即清除狀態(tài)并啟動),電機會自動清除Fault的狀態(tài)并且重新開始轉動,功率板上的三相指示燈會再次亮起來??梢酝瑯油ㄟ^Workbench對電機運行狀態(tài)進行監(jiān)測,打開Workbench并連接電機后進入監(jiān)測界面,當結束堵轉后,會看到圖7-45所示的狀態(tài)為Faultover并且顯示Fault為Speedfeedback。圖7-45電機故障報錯實驗步驟當結束堵轉2秒后電機會清除錯誤狀態(tài)并開始啟動,如圖7-46所示,此時可以看到電機狀態(tài)為Start并且轉速為0。圖7-46電機清除故障并啟動圖7-47電機轉速恢復當電機正常啟動后,如圖7-47所示,可以看到電機狀態(tài)會變?yōu)镽un,并且轉速與堵轉前的轉速保持一致。API函數(shù)應用實例06實驗要求(1)實驗目標①掌握MC-SDKV5.4的基本操作②使用API函數(shù)實現(xiàn)對電機的多種控制方式,熟悉API函數(shù)庫(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件②軟件平臺:STMotorControlSDK5.4STM32CubeMXSTM32CubeIDE或Keil5(5.33版本及以上)API函數(shù)介紹如圖7-48所示,API函數(shù)位于MC-SDKV5.4中的電機應用層,處于用戶層與電機庫之間,一般初級的電機應用操作利用API函數(shù)即可完成,基于電機庫,便于用戶調用,更像是行為描述操作。例如,在7.3無感速度模式控制實例中用到的MC_ProgramSpeedRampMotor1()、MC_StartMotor1()、MC_StopMotor1()都是API函數(shù),他們分別是用來對電機進行調速、啟動和停止操作的。圖7-48API函數(shù)在MC-SDKV5.4中的位置API函數(shù)介紹表3-1展示了可以直接使用的API函數(shù)的名稱、參量、功能及返回值。下面利用表3-1中所示的部分函數(shù)作為示例,來展示API函數(shù)調用的具體操作,幫助讀者在7.3的基礎上更深入地了解API函數(shù)庫中其他函數(shù)的功能。實驗步驟參考視頻:/coursedetail?id=e25dbe52d37b4e278c819ff6b61fe47e①Workbench創(chuàng)建工程與7.1小節(jié)電機快速控制實例類似,新建一個工程,按圖7.3-2所示選擇Control,Power與Motor,點擊OK。圖7-49新建工程因為參數(shù)已經配置完成,所以直接點擊“保存”按鈕進行保存。保存完成后點擊“編譯”按鈕,如圖7-50所示,點擊“GENERATE”,完成后打開如圖7-51所示窗口,點擊“RUNSTM32CubeIDE”按鈕打開STM32CubeMX。圖7-51工程生成完成界面圖7-50工程生成實驗步驟②如圖7-52所示,在ProjectManager界面,Toolchain/IDE選擇STM32CubeIDE,F(xiàn)irewarePackageNameandVersion選擇STM32CubeFW_G4V1.4.0,然后點擊“GENERATECODE”。連接設備,注意電源也要連接。代碼生成成功后,點擊“OpenProject”,再點擊“Launch”,進入STM32CubeIDE后找到main.c文件。圖7-52ProjectManager界面實驗步驟③函數(shù)示例1:MC_ProgramSpeedRampMotor17.3小節(jié)中我們學習了如何對電機進行調速,使用的是MC_ProgramSpeedRampMotor1()函數(shù),而這個函數(shù)不僅可以控制電機運行的速度,改變第一個值的正負還能控制電機正反轉。打開main.c文件,如圖7-53所示,在用戶代碼區(qū)2添加代碼。圖7-53正向轉動代碼若要電機反向轉動,如圖7-54所示,將第一個參數(shù)由300/6改為-300/6,即可實現(xiàn)電機以300rpm反向轉動。圖7-53正向轉動代碼若要電機反向轉動,如圖7-54所示,將第一個參數(shù)由300/6改為-300/6,即可實現(xiàn)電機以300rpm反向轉動。圖7-54反向轉動代碼實驗步驟然后按照圖7-55所示點擊“編譯”按鈕,若彈出圖示窗口點擊“switch”,然后點擊“運行”按鈕將程序下載到MCU當中,按下復位鍵后,如圖7-56所示就可以看到電機以300rpm的速度分別正轉和反轉。圖7-55工程編譯運行圖7-56示例1結果Workbench展示實驗步驟④函數(shù)示例2:MC_ProgramTorqueRampMotor1這個函數(shù)的作用是使電機運行在力矩模式,第一個參數(shù)為力矩的正比例函數(shù),第二個參數(shù)為運行的時間,其中第一個參數(shù)(假設為DI)的計算公式如下:(7.6-1)式中,參數(shù)如下:打開main.c文件,如圖7-57所示,在用戶代碼區(qū)2添加代碼。圖7-57力矩模式代碼同函數(shù)示例1中按照圖7-55所示點擊“編譯”按鈕,若彈出圖示窗口點擊“Switch”,然后點擊“運行”按鈕將程序下載到MCU當中,按下開發(fā)板上的復位鍵后,如圖7-58所示,就可以看到電機以力矩模式轉動,在Workbench界面可以觀測轉矩的大小。圖7-58Workbench觀測轉矩實驗步驟⑤函數(shù)示例3:MC_GetMecSpeedAverageMotor1、MC_GetIqdrefMotor1這個函數(shù)可以得到當前電機的運行速度,并且得到當前Iq,Id的參考數(shù)據(jù)(速度返回時是以0.1Hz作為單位返回,若要轉換為rpm需要對結果*6),由于實驗的結果需要調試,這里推薦使用Keil來進行代碼的添加,以便后續(xù)的變量觀測,這里展示使用Keil編寫的實驗過程,有興趣的讀者可自行學習STM32CubeIDE的Debug功能并進行實驗。打開main.c文件,如圖7-59所示,在用戶代碼區(qū)2添加代碼,使電機在300rpm狀態(tài)下運動。圖7-59正向轉動代碼如圖7-60所示,在while(1)循環(huán)中添加代碼,不斷讀取電機運行速度和Iq,Id的參考數(shù)據(jù):圖7-60電機運行參數(shù)獲取代碼實驗步驟如圖7-61所示,完成代碼添加之后將程序編譯并燒錄到MCU上,無誤后按下開發(fā)板上的reset按鍵,電機開始旋轉,之后進入Keil的debug環(huán)節(jié)中。圖7-61編譯與燒錄如圖7-62所示,在debug界面找到要觀測的變量:Speed_RPM,Iqd_Ref_Value,Iqd_Real_Value,選中后右鍵將他們分別加入到watch1中,然后點擊“運行”按鈕,觀察電機旋轉的過程中三個變量的值。圖7-62添加觀測變量并運行實驗步驟觀測結果如圖7-63所示。圖7-63觀測結果感謝聆聽第八章
基于P-NUCLEO-IHM03套件的有感電機控制案例無刷直流電機的有感方波控制案例12永磁同步電機的有感FOC控制案例概述本章基于P-NUCLEO-IHM03套件、57SW01無刷直流電機和ShinanoLA052-080E3NL1永磁同步電機,進行無刷直流電機和永磁同步電機的有感驅動實踐。
共分為2個小節(jié),每個小節(jié)為一個典型案例,每個案例都配有詳細的步驟,帶大家實現(xiàn)電機的進階控制。具體內容包括:無刷直流電機的有感方波控制案例和永磁同步電機的有感FOC控制案例。無刷直流電機的有感方波控制案例01實驗目標及條件(1)實驗目標①了解電機的基本結構,熟悉BLDCM方波控制的基本原理。②基于BLDCM方波控制原理,結合前面學習的STM32G4的知識,實現(xiàn)對無刷直流電機的有感控制,利用開發(fā)板上的按鈕實現(xiàn)電機的正反轉,并且通過電位器來實現(xiàn)電機的調速功能。(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件、57SW01無刷直流電機②軟件平臺:STMotorControlSDK5.4STM32CubeMX(6.1.1版本及以上)Keil5(5.33版本及以上)57SW01無刷直流電機簡介本節(jié)采用安裝了霍爾傳感器的57SW01無刷直流電機來進行案例搭建。電機具體參數(shù)如表8-1所示,接線顏色對應端子如表8-2所示。表8-157SW01電機具體參數(shù)表8-257SW01電機接線顏色對應端子說明參數(shù)數(shù)值相數(shù)3額定電壓24V額定轉速4000rpm額定轉矩0.11Nm額定功率50W最大轉矩0.35Nm轉矩系數(shù)0.08Nm/A相電阻2.7Ω轉動慣量7.5Kg.mm2長度56mm重量0.5KgUVW+5VHALLAHALLBHALLCGnd藍白黃紅藍白黃黑控制信號以及端口屬性選擇本節(jié)采用安裝了霍爾傳感器的57SW01無刷直流電機來進行案例搭建。根據(jù)BLDCM六步方波控制原理,實現(xiàn)BLDCM的正反轉及調速需要用到的信號有:1)INU、INV、INW:用于輸出PWM波形2)ENU、ENV、ENW:使能STSPIN830芯片3)H1、H2、H3:HALL傳感器信號接口4)ADC采樣端口及按鈕表8-3BLDCM實現(xiàn)正反轉及調速用到的資源列表需要用到的信號對應MCU引腳端口屬性INUPA8TIM1_CH1INVPA9TIM1_CH2INWPA10TIM1_CH3ENUPB13GPIO-OUTPUTENVPB14GPIO-OUTPUTENWPB15GPIO-OUTPUTH1PA15GPIO-INPUTH2PB3GPIO-INPUTH3PB10GPIO-INPUT按鈕PC13GPIO-EXTI3電位器采樣PC2ADC1_IN8對應MCU引腳以及端口屬性如表8-3所示:實驗工程配置步驟一:創(chuàng)建新項目在STM32CubeMX中,有NUCLEO-G431RB工程模板,新建一個STM32CubeMX工程,芯片型號為STM32G431RBTX,如圖8-1所示,打開STM32CubeMX軟件,點擊“ACCESSTOMCUSELECTOR”建立新工程。如圖8-2所示,在BoardSelector頁下的①號框中搜索NUCLEO-G431RB找到NUCLEO-G431RB工程模板,雙擊②加載模板。圖8-1新建工程,選擇MCU圖8-2選擇工程模板實驗工程配置打開如圖8-3所示的工程初始界面,可以看到PC13、PA2、PA3、PA5以及系統(tǒng)時鐘已經配置好了,PA2、PA3是與電腦通訊的串口。圖8-3工程初始界面實驗工程配置步驟二:端口配置配置需要使用的端口,如圖8-4所示,右鍵點擊端口選擇“EnterUserLabel”可以進行重命名。圖8-4端口配置圖8-5配置ADC1①如圖8-5所示,選擇ADC1的IN8并設置采樣時間。實驗工程配置②如圖8-6所示,TIM1的Channel1選擇為PWMGenerationCH1、Channel2選擇為PWMGenerationCH2、Channel3選擇為PWMGenerationCH3,點擊NVICSettings頁,如圖8-7所示,使能TIM1定時器更新中斷。因為配置定時器TIM1的PWM輸出為中心對稱模式,預分頻系數(shù)為0,計數(shù)周期為8500,RepetitionCounter為1,PWM頻率的計算公式為:圖8-6配置TIM1圖8-7NVIC配置中斷頻率等于PWM頻率,根據(jù)式(8.1-1),可以計算得出PWM頻率為10k。實驗工程配置如圖8-8所示,系統(tǒng)時鐘使用默認配置為170MHz。圖8-8系統(tǒng)時鐘配置實驗工程配置步驟三:生成工程代碼如圖8-9所示,點擊“GENERATECODE”按鈕生成工程代碼。圖8-9生成工程代碼軟件設計打開Keil軟件,根據(jù)BLDCM六步方波控制原理進行編程。1)在main.c中定義需要的變量,具體包括:ADC采集值:adc_value啟動狀態(tài):start_state速度參考值:speed_ref速度實際值:speed_relPWM值:pwm_value啟動次數(shù):start_count如圖8-10所示,打開main.c文件,在/*USERCODEBEGIN0*/與/*USERCODEEND0*/之間添加變量定義代碼。圖8-10變量定義軟件設計②轉速給定程序如圖8-13所示,在上述代碼之后繼續(xù)添加轉速給定的代碼。圖8-13轉速給定程序代碼4)在stm32g4xx_it.c中定義電機控制相關變量,具體包括:PWM值:pwm_value霍爾傳感器狀態(tài):HALL霍爾傳感器換相前的狀態(tài):HALL_old速度實際值:speed_rel定時器中斷次數(shù):Interrupt_count圖8-14電機控制相關變量定義如圖8-14所示,打開stm32g4xx_it.c文件,在/*USERCODEBEGIN0*/與/*USERCODEEND0*/之間添加變量定義代碼。軟件設計5)在stm32g4xx_it.c中添加電機控制函數(shù)根據(jù)霍爾傳感器反映的轉子位置,分別使能和關閉對應的相,并通過定時器的CCR寄存器設置占空比。如圖8-15所示,在上述代碼之后繼續(xù)添加電機控制函數(shù)代碼。圖8-15電機控制函數(shù)代碼軟件設計6)在定時器中斷函數(shù)中編寫電機控制程序①HALL獲取如圖8-16所示,在/*USERCODEBEGINTIM1_UP_TIM16_IRQn1*/與/*USERCODEENDTIM1_UP_TIM16_IRQn1*/之間添加HALL獲取的代碼。②計算電機轉速如圖8-17所示,在上述代碼之后繼續(xù)添加電機轉速獲取的代碼。圖8-16HALL獲取代碼圖8-17電機轉速獲取代碼軟件設計③轉速閉環(huán)如圖8-18所示,打開stm32g4xx_it.c文件,在/*USERCODEBEGIN0*/與/*USERCODEEND0*/之間繼續(xù)添加電機轉速閉環(huán)控制的變量定義代碼。如圖8-19所示,在電機轉速獲取的代碼之后繼續(xù)添加轉速閉環(huán)控制代碼。圖8-18轉速閉環(huán)控制變量定義代碼圖8-19轉速閉環(huán)控制代碼軟件設計7)燒錄程序如圖8-20所示,點擊①框中的“OptionsforTargets…”,選擇ST-LinkDebugger,點擊②框中的“Settings”,打開如圖8-21所示配置窗口,添加Flash,點擊“確定”后,再點擊圖8-20中③框中的“Translate”和④框中的“Download”燒錄程序至單片機中。圖8-20程序燒錄界面圖8-21配置窗口實驗結果燒錄程序后按下黑色復位按鍵,然后按下藍色按鍵,可以看到電機旋轉起來,這時電機在六步方波控制模式下運行,如圖8-22所示,可以通過STMStudio來觀察波形。在如圖8-23所示的區(qū)域右鍵點擊import,選擇觀測的燒錄程序和變量,來對電機的速度進行觀測。圖8-22STMStudio變量監(jiān)測圖8-23變量導入實驗結果點擊圖8-23右邊的省略號,選擇工程所在文件夾中的axf燒錄文件,如圖8-24所示,會出現(xiàn)程序中的變量。
結果需要觀測的變量為speed_rel,選擇后點擊右邊的“import”把該變量加入到觀察列表。之后將變量送到VarView1中,右鍵點擊“Sendto”,點擊“VarView1”,點擊右上角的綠色“StartRecordingSession”按鍵。Speed_rel是電機實際轉速,轉速波形如圖8-25所示。圖8-24燒錄文件選擇圖8-25電機轉速監(jiān)測02永磁同步電機的有感FOC控制案例實驗目標及條件(1)實驗目標①了解電機的基本結構,熟悉永磁同步電機矢量控制的基本原理。②基于永磁同步電機矢量控制原理,結合前面學習的STM32G4知識,位置檢測采用光電編碼器,快速實現(xiàn)永磁同步電機的有感FOC轉動控制。③基于永磁同步電機矢量控制原理,結合前面學習的STM32G4知識,位置檢測采用霍爾傳感器,實現(xiàn)對永磁同步電機的轉速電流雙閉環(huán)控制,利用按鈕進行電機運行模式的轉換,并且通過電位器來調節(jié)電機的轉速。(2)實驗條件①硬件平臺:P-NUCLEO-IHM03套件、ShinanoLA052-080E3NL1永磁同步電機②軟件平臺:STMotorControlSDK5.4STM32CubeMX(6.1.1版本及以上)Keil5(5.33版本及以上)ShinanoLA052-080E3NL1永磁同步電機簡介本節(jié)采用安裝了霍爾傳感器和光電編碼器的ShinanoLA052-080E3NL1永磁同步電機來進行案例搭建。具體參數(shù)如表8-4所示,傳感器參數(shù)如表8-5所示。表8-4ShinanoLA052-080E3NL1電機具體參數(shù)表8-5ShinanoLA052-080E3NL1電機傳感器參數(shù)參數(shù)數(shù)值相數(shù)3額定電壓24V額定轉速3000rpm額定轉矩0.255Nm額定功率80W最大轉矩0.765Nm轉矩系數(shù)0.059Nm/A相電阻6.2Ω轉動慣量11.7Kg.mm2長度69.6mm重量0.6Kg類型輸出電路分辨率通道數(shù)電源供應工作電流輸出電壓相位偏差頻率響應工作溫度范圍P/R
V-DCmAV-DC
kHz
霍爾傳感器集電極開路—C1,C2,C35±5%40max.14.4min.(Isink=15mAmax.)——0℃~60℃(編碼器內部溫度)光電編碼器TTL兼容200,400A,B5±5%50max.VOH=2.4min.VOL=0.4max.(Isink=3.2mA)a,b,c,d=90°±45°20min.有感FOC控制過程1)測量三相定子電流。對于具有平衡三相繞組的電機,只需測量兩個電流即可,第三個電流可使用
公式計算得出。2)將三相電流轉換到靜止雙軸系統(tǒng)。該轉換通過測量的
、
和
值提供
和
變量。從定子的角度來看,值
和
是隨時間變化的正交電流值。3)測量在控制環(huán)最后一次迭代時的變換角度,通過該角度將靜止雙軸坐標系轉換為旋轉坐標系,以對準轉子磁通。該轉換將
和
變換為
和
,值
和
是變換到旋轉坐標系的正交電流。對于穩(wěn)態(tài)條件,
和
恒定。電流參考值的說明如下::調節(jié)磁通:控制轉矩4)將誤差信號饋入到PI控制器。電流控制器的輸出提供和,它們是將施加到電機上的電壓向量。5)新的變換角度通過編碼器脈沖輸入測得。這一新角度將指導FOC算法確定放置下一個電壓向量的位置。有感FOC控制過程6)使用新的角度將來自PI控制器的和輸出值進行旋轉坐標系到靜止雙軸坐標系的變換,得到正交電壓值和。7)和值用于計算生成所需電壓向量所用的全新PWM占空比值。8)在每個PWM周期后都會計算機械速度()。圖8-26PMSM有傳感器FOC的框圖
圖8-27PMSM有傳感器FOC流程圖PMSM的位置檢測
獲取確切的轉子位置對于FOC正常工作至關重要。增量式光學編碼器提供兩個彼此正交的脈沖串,如圖8-29和8-30所示。一些編碼器具有索引脈沖,這有助于在空間上明確確切的轉子位置。如果脈沖串A超前脈沖串B,則電機將沿一個方向旋轉,如果脈沖串B超前脈沖串A,則電機將沿相反方向旋轉。編碼器脈沖數(shù)越多,位置測量精度就越高。圖8-29特定旋轉方向的編碼器相位信號和索引脈沖圖8-30相反旋轉方向的編碼器相位信號和索引脈沖1)特定旋轉方向的編碼器相位信號和索引脈沖2)相反旋轉方向的編碼器相位信號和索引脈沖控制信號以及端口屬性選擇
PMSM矢量控制需要ADC采集端口來采集下橋臂串聯(lián)電阻的電壓來計算電流。需要用到的信號有:1)INU、INV、INW:用于輸出PWM波形2)ENU、ENV、ENW:使能STSPIN830芯片3)HALL1、HALL2、HALL3:HALL傳感器信號接口4)Curr_fdbk1、Curr_fdbk2、Curr_fdbk3:ADC采樣端口5)電位器采樣端口及按鈕表8-6實現(xiàn)FOC控制用到的MCU引腳表參數(shù)需要用到的信號對應MCU引腳端口屬性INUPA8TIM1_CH1INVPA9TIM1_CH2INWPA10TIM1_CH3ENUPB13GPIO-OUTPUTENVPB14GPIO-OUTPUTENWPB15GPIO-OUTPUTHALL1PA15TIM2_CH1HALL2PB3TIM2_CH2HALL3PB10TIM2_CH3Curr_fdbk1PA1ADC1_IN2Curr_fdbk2PB1ADC1_IN12Curr_fdbk3PB0ADC1_IN15按鈕PC13GPIO-EXTI3電位器采樣PC2ADC1_IN8永磁同步電機有感FOC快速控制本部分是基于光電編碼器進行位置檢測,通過STMotorControlSDK配置工程快速實現(xiàn)永磁同步電機有感FOC的控制。具體步驟如下:①首先打開軟件STMotorControlSDK5.4,點擊“NewProject”,如圖8-31所示,在Control欄中選擇NUCLEO-G431RB板。如圖8-32所示,在Power欄中選擇X-NUCLEO-IHM16M13sh驅動板。圖8-31開發(fā)板型號選擇圖8-32驅動板型號選擇實驗步驟如圖8-33所示,在Motor欄中選擇ShinanoLA052-080E3NL1,配置完成后點擊“OK”,彈出如圖8-34所示的電機參數(shù)導入工程的信息提示。圖8-34電機參數(shù)導入工程信息提示圖8-35MotorControlWorkbench主界面②工程生成新建工程后的MotorControlWorkbench主界面如圖8-35所示。圖8-33電機型號選擇實驗步驟點擊圖8-35右側的“M”,可以打開如圖8-36所示的電機參數(shù)設置界面,可以看到ShinanoLA052-080E3NL1永磁同步電機的參數(shù)已經自動導入。圖8-36電機參數(shù)設置界面圖8-37傳感器參數(shù)設置界面點擊圖8-36上側的“Sensors”可以打開如圖8-37所示的傳感器參數(shù)設置界面,第一次運行時應該勾選“EncoderAlignment”設定一下初始相位。實驗步驟點擊圖8-35右下側的“SpeedSensing”可以打開如圖8-38所示的速度位置反饋管理界面,將“Sensorselection”下拉框中默認的“Sensor-less(Observer+PLL)”修改為“Quadratureencoder”。圖8-38速度位置反饋管理界面圖8-39啟動參數(shù)設置界面右鍵點擊圖8-35左側的“FirmwareDriveManagement”,在彈出菜單中選擇“Start-upparameters”打開如圖8-39所示的啟動參數(shù)設置界面,此時需要修改“Finalcurrentrampvalue”為1.6。實驗步驟點擊STMotorControlWorkbench主界面中的菜單“Tools”,再點擊“Generation”后輸入工程名字進行保存,之后會打開如圖8-40所示的工程生成配置界面,點擊“GENERATE”,打開如圖8-41所示的工程生成界面,完成后點擊“RUNSTM32CubeIDE”按鈕即可打開如圖8-42所示的STM32CubeMX主界面。圖8-40工程生成配置界面圖8-41工程生成界面實驗步驟進入ProjectManager界面選擇IDE后點擊“GENERATECODE”,代碼生成成功后,彈出如圖8-43所示的窗口,點擊“OpenProject”,打開如圖8-44所示STM32CubeIDE主界面,找到main.c文件,點擊“編譯”按鈕,待編譯完成后點擊“運行”按鈕即可。圖8-42STM32CubeMX主界面圖8-43代碼生成成功提示實驗步驟打開Workbench,按圖8-45所示連接設備,然后進入Advanced界面,點擊“StartMotor”即可轉動電機,可在Monitor界面觀測到實時速度。電機連接及運行狀態(tài)如圖8-46所示,也可以按下板上的藍色按鈕啟動和停止電機。圖8-44STM32CubeIDE主界面圖8-45電機控制監(jiān)測界面圖8-46電機連接及運行狀態(tài)永磁同步電機轉速電流雙閉環(huán)控制工程配置步驟一:創(chuàng)建新項目在STM32CubeMX中,有NUCLEO-G431RB工程模板,新建一個STM32CubeMX工程,芯片型號為STM32G431RBTX。1)打開STM32CubeMX軟件,如圖8-47所示,點擊ACCESSTOMCUSELECTOR建立新工程。2)如圖8-48所示,在BoardSelector頁下的①號框中搜索NUCLEO-G431RB找到NUCLEO-G431RB工程模板,雙擊②加載模板。圖8-47新建工程圖8-48選擇工程模板實驗步驟步驟二:端口配置1)如圖8-49所示,可以看到PC13、PA2、PA3、PA5已經配置好了,PA2、PA3是與電腦通訊的串口。如圖8-50所示,然后在RCC模式配置中進行修改,HighSpeedClock(HSE)選擇Crystal/Ceramicresonator。圖8-49工程初始界面圖8-50RCC配置實驗步驟2)本實例中需要使用外部時鐘,所以在ClockConfiguration進行更改。如圖8-51所示,進行如下設置:①號框:外部晶振24M②號框:選擇HSE通道③號框:調整倍率為6④號框:選擇PLLCLK⑤號框:配置為170MHz3)如圖8-52所示,對照表8-6配置需要使用的端口,右鍵點擊選擇“EnterUserLabel”可以進行重命名。圖8-51外部時鐘設置圖8-52端口配置實驗步驟4)ADC設置①如圖8-53所示,ADC1_IN2、ADC1_IN12、ADC1_IN15、ADC1_IN8設置為“Single-ended”(單端輸入)。圖8-53端口配置圖8-54ADC參數(shù)設置②ADC參數(shù)設置如圖8-54所示,NumberofConversion設置為4;ExternalTriggerConversionSource設置為外部觸發(fā)定時器1事件觸發(fā)轉換;4個通道順序為通道2、12、15、8,采樣事件為6.5個周期。實驗步驟③開啟DMA(直接存儲器訪問)并使能如圖8-55所示,開啟DMA:MODE選擇“Circular”(循環(huán)模式);IncrementAddress選擇“Memory”模式;DataWidth選擇“Word”“Word”(字對字傳輸);如圖8-56所示,使能DMA:在ADC設置中找到ScanConversionMode和DMAContinuousRequests并選擇“Enabled”。圖8-55DMA參數(shù)設置圖8-56使能DMA設置實驗步驟④開啟ADC中斷如圖8-57所示,在NVICSettings頁中勾選ADC1andADC2globalinterrupt的Enabled。圖8-58PWM定時器設置5)PWM定時器設置①TIM1設置:如圖8-58所示,ClockSource選擇內部時鐘,通道1-3選擇PWM輸出。因為配置定時器TIM1的PWM輸出為中心對稱模式,預分頻系數(shù)為0,計數(shù)周期為8500,repetition為1,所以中斷頻率=PWM頻率=170M/8500/(1+1)=10kHz。TriggerEventselectionTRGO選擇UpdateEvent用于觸發(fā)ADC采樣。圖8-57NVIC參數(shù)設置實驗步驟如圖8-59所示,將PWM生成模式改為模式2,計數(shù)器的值大于比較捕獲寄存器值時輸出有效電平。②TIM2設置如圖8-60所示,ClockSource選擇“InternalClock”(內部時鐘),CombinedChannels選擇“XORON/HallSensorMode”(霍爾模式),霍爾模式下每次HALL信號的變換都會產生中斷請求,并在中斷程序中計算電機位置和轉速。圖8-59PWM生成模式設置圖8-61霍爾傳感器參數(shù)設置圖8-60定時器模式和配置設置圖8-62NVIC設置實驗步驟6)CORDIC設置CORDIC算法即坐標旋轉數(shù)字計算方法,通過不斷進行坐標旋轉變換最終得到近似計算結果。主要用于三角函數(shù)、雙曲線、指數(shù)、對數(shù)的計算。該算法通過基本的加和移位運算代替乘法運算,使得矢量的旋轉和定向的計算不再需要三角函數(shù)、乘法、開方、反三角、指數(shù)等函數(shù)。如圖8-63所示,勾選Activated。7)NVIC設置如圖8-64所示,在NVICInterruptTable頁中,勾選EXTIline[15:10]interrupts選項中的Enabled,使能按鍵中斷。圖8-64NVICInterrupt設置圖8-63CORDIC模式和配置設置7)NVIC設置如圖8-64所示,在NVICInterruptTable頁中,勾選EXTIline[15:10]interrupts選項中的Enabled,使能按鍵中斷。實驗步驟步驟三:生成工程代碼如圖8-65所示,在CodeGenerator頁中勾選“Generateperipheralinitializationasapairof‘.c/.h’filesperperipheral”。如圖8-66所示,ApplicationStructure選擇Basic,Toolchain/IDE選擇MDK-ARM,MinVersion選擇v5.27或以上版本。圖8-65工程參數(shù)設置圖8-66工程代碼生成永磁同步電機轉速電流雙閉環(huán)控制軟件設計打開生成的Keil程序,根據(jù)控制原理進行編程。1)點擊左上角File選項新建motordrive.c和motordrive.h文件,分別保存到Src和Inc文件夾中,如圖8-67所示,在Keil軟件左邊的Project欄中右擊Application/User文件夾,在彈出菜單中點擊“ManageProjectItems...”,打開如圖8-68所示管理項目窗口,將motordrive.c文件添加到application/User里面。圖8-67項目管理界面圖8-68文件添加永磁同步電機轉速電流雙閉環(huán)控制軟件設計2)在motordrive.c和motordrive.h文件中添加電機控制中需要用的坐標變換以及SVPWM控制程序等。①CORDIC算法通過角度計算正弦余弦值如圖8-69所示,在motordrive.c中編寫voidCORDIC_SinCos(floattheta,float*sincos)函數(shù)。如圖8-70所示,在motordrive.h聲明函數(shù)、添加需要用的變量。圖8-69CORDIC_SinCos函數(shù)代碼圖8-70變量添加代碼永磁同步電機轉速電流雙閉環(huán)控制軟件設計②Clark變換及Clark反變換如圖8-71所示,根據(jù)公式在motordrive.c中編寫Clark變換及Clark反變換函數(shù)。如圖8-72所示,在motordrive.h聲明函數(shù)和添加需要用的變量。圖8-71函數(shù)代碼添加圖8-72變量添加代碼永磁同步電機轉速電流雙閉環(huán)控制軟件設計③Park變換及Park反變換如圖8-73所示,根據(jù)公式在motordrive.c中編寫Park變換及Park反變換函數(shù)。如圖8-74所示,在motordrive.h聲明函數(shù)。圖8-73函數(shù)代碼添加圖8-74聲明函數(shù)代碼永磁同步電機轉速電流雙閉環(huán)控制軟件設計④SVPWM程序如圖8-75所示,在motordrive.c中編寫SVPWM程序。如圖8-76所示,在motordrive.h聲明函數(shù)和添加變量。圖8-75SVPWM函數(shù)代碼圖8-76變量添加代碼永磁同步電機轉速電流雙閉環(huán)控制軟件設計3)在main.c文件中編寫電機啟動函數(shù)并配置CORDIC功能①編寫電機啟停函數(shù)、添加所需變量并在main.h文件中聲明函數(shù)如圖8-77所示,在main.c文件中編寫電機啟停函數(shù)。如圖8-78所示,在main.c文件中添加需要用的變量。如圖8-79所示,在main.h文件中聲明函數(shù)。圖8-78變量添加代碼圖8-80CORDIC配置及使能代碼圖8-77電機啟停函數(shù)代碼②配置CORDIC并開啟TIM和使能如圖8-80所示,在ma
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新型病原體檢測技術研究-洞察分析
- 藥物遞送系統(tǒng)生物相容性-洞察分析
- 五金工具電商市場現(xiàn)狀分析-洞察分析
- 水下能源開發(fā)裝備-洞察分析
- 虛擬現(xiàn)實設備防護技術-洞察分析
- 營養(yǎng)基因組學方法優(yōu)化-洞察分析
- 軍訓時間學生感想與體會范文
- 兒童情緒管理在家庭育兒中的重要性
- 《生態(tài)學取樣方法》課件
- 辦公室農產品的營銷機會挖掘
- 2023-2024學年全國小學二年級上英語人教版期末考試試卷(含答案解析)
- 中國近代人物研究學習通超星期末考試答案章節(jié)答案2024年
- 變壓器搬遷施工方案
- 建筑施工安全風險辨識分級管控指南494條-副本
- 橙子主題課程設計
- 靜脈留置針所致靜脈炎的標準化護理預防流程
- 廣西百色市縣級市2023-2024學年八年級上學期期末檢測物理試題(原卷版)
- 人教版2024年新教材七年級上冊英語各單元考點復習提綱
- 第八章《運動和力》大單元教學設計 -2023-2024學年人教版物理八年級下學期
- 大學語文智慧樹知到期末考試答案章節(jié)答案2024年成都體育學院
- 2024-2025學年中職生安全無小事防患于未然班會教學設計
評論
0/150
提交評論