讓Hi3861驅(qū)動(dòng)交流電機(jī)變頻器
想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):
51CTO和華為官方戰(zhàn)略合作共建的鴻蒙技術(shù)社區(qū)
變頻器(Variable-frequency Drive,VFD)是應(yīng)用變頻技術(shù)與微電子技術(shù),通過(guò)改變電機(jī)工作電源電壓及頻率方式來(lái)控制交流電動(dòng)機(jī)的電力控制設(shè)備。在工農(nóng)業(yè)生產(chǎn)的自動(dòng)化控制,節(jié)能降耗,動(dòng)力驅(qū)動(dòng)等領(lǐng)域有著廣泛和深入的應(yīng)用。鴻蒙輕量化設(shè)備除了可以應(yīng)用于智能家居等消費(fèi)領(lǐng)域,在生產(chǎn)領(lǐng)域的應(yīng)用也有著巨大的潛力。
這次用Hi3861的PWM來(lái)驅(qū)動(dòng)變頻器,改變其輸出頻率,開(kāi)始:
準(zhǔn)備
Windows 開(kāi)發(fā)環(huán)境準(zhǔn)備
IDE: DevEco Device Tool 2.2 Beta2
源碼: OpenHarmony 2.2 Beta2
開(kāi)發(fā)板: 小熊派 BEARPI-HM Nano Hi3861 主板
變頻器: 一款國(guó)產(chǎn)2.2kw變頻器
簡(jiǎn)介
1.常用變頻器的啟停方式有 操作面板,端子啟停和通訊命令啟停等方式,為了簡(jiǎn)化,本實(shí)驗(yàn)采用操作面板的啟停按鍵。
2.常用變頻器的頻率給定方式有操作面板,模擬量(電流,電壓),端子,及通訊等,本實(shí)驗(yàn)采用電壓模擬量來(lái)調(diào)節(jié)頻率。
3.小熊派開(kāi)發(fā)版的GPIO_1腳初始化為PWM4輸出,串聯(lián)300歐電阻連接至變頻器的模擬量輸入端,通過(guò)改變PWM占空比的大小,從而改變GPIO_1腳輸出電壓,進(jìn)而改變變頻器的輸出頻率。

4.對(duì)應(yīng)本款變頻器,設(shè)定參數(shù)P0.01頻率來(lái)源為“VI模擬給定”,參數(shù)P0.03運(yùn)行命令通道為“操作面板”
5. GPIO_1的PWM輸出電壓為0-3.3v,對(duì)應(yīng)變頻器輸出頻率為0-50Hz,設(shè)定變頻器參數(shù)P1.04為“3.3”v,對(duì)應(yīng)參數(shù)P1.05最大輸出頻率50Hz。
Hi3861編程
1.將GPIO_1初始化為PWM4輸出,占空比從0-99%,每?jī)擅腌娬伎毡仍黾?0%,測(cè)試變頻器的輸出頻率是否可以在0-50HZ之間對(duì)應(yīng)改變。
2.代碼如下:
- #include <stdio.h>
- #include <unistd.h>
- #include "ohos_init.h"
- #include "cmsis_os2.h"
- #include "iot_pwm.h"
- #include "iot_gpio.h"
- #define PWM_TASK_STACK_SIZE 2048
- #define PWM_TASK_PRIO 25
- #define DAC_GPIO 1
- static void PWMTask(void)
- {
- unsigned int i;
- //初始化GPIO_1,設(shè)置引腳復(fù)用功能為PWM,引腳為輸出模式,初始化PWM4端口
- IoTGpioInit(DAC_GPIO);
- IoTGpioSetFunc(DAC_GPIO, 5);
- IoTGpioSetDir(DAC_GPIO, IOT_GPIO_DIR_OUT);
- IoTPwmInit(4);
- while (1)
- {
- for (i = 0; i < 10; i++)
- {
- //間隔一定時(shí)間,輸出0-90%占空比的PWM波,驅(qū)動(dòng)變頻器頻率改變
- IoTPwmStart(4, i * 10, 40000);
- printf(" %d Hz \n", i * 5);
- //間隔2秒,便于觀察
- sleep(2);
- }
- // 輸出99%占空比,50HZ
- IoTPwmStart(4, i * 10 - 1, 40000);
- printf(" %d Hz \n", i * 5);
- sleep(2);
- i = 0;
- }
- }
- static void PWMExampleEntry(void)
- {
- osThreadAttr_t attr;
- attr.name = "PWMTask";
- attr.attr_bits = 0U;
- attr.cb_mem = NULL;
- attr.cb_size = 0U;
- attr.stack_mem = NULL;
- attr.stack_size = PWM_TASK_STACK_SIZE;
- attr.priority = PWM_TASK_PRIO;
- if (osThreadNew((osThreadFunc_t)PWMTask, NULL, &attr) == NULL)
- {
- printf("Falied to create PWMTask!\n");
- }
- }
- APP_FEATURE_INIT(PWMExampleEntry);
編譯,燒錄
1.點(diǎn)擊DevEco Device Tool待編譯工程下“PROJECT TASK"的“Clean"清除之前的編譯文件。
2.點(diǎn)擊“PROJECT TASK"的“Build”開(kāi)始編譯。
3.9月2日,DevEco Device Tool升級(jí)到V2.2 Beta2后,點(diǎn)擊“PROJECT TASK"的“Upload”后,等待“BootromDownloadBoot”出現(xiàn)后再?gòu)?fù)位開(kāi)發(fā)板,這是V2.2 Beta2相對(duì)之前版本的變化

4.V2.2 Beta2相比之前版本,下載速度較慢,請(qǐng)耐心等待。
運(yùn)行結(jié)果
1.連接開(kāi)發(fā)板和變頻器,通電后,操作面板按鍵啟動(dòng)變頻器,可以看到輸出頻率從0到50Hz間隔2秒不斷變化,基本達(dá)到實(shí)驗(yàn)的目的。演示視頻見(jiàn)附件。
2.Hi3861PWM的占空比和變頻器實(shí)際輸出頻率的對(duì)應(yīng)關(guān)系見(jiàn)下表:
3.同樣適用于潤(rùn)和和其它基于Hi3861的開(kāi)發(fā)板。
4.實(shí)驗(yàn)中變頻器為380V供電,須注意操作安全。
想了解更多內(nèi)容,請(qǐng)?jiān)L問(wèn):
51CTO和華為官方戰(zhàn)略合作共建的鴻蒙技術(shù)社區(qū)