让Hi3861驱动交流电机变频器

想了解更多内容,请访问:

和华为官方战略合作共建的鸿蒙技术社区

https://harmonyos.

变频器(Variable-frequency Drive,VFD)是应用变频技术与微电子技术,通过改变电机工作电源电压及频率方式来控制交流电动机的电力控制设备。在工农业生产的自动化控制,节能降耗,动力驱动等领域有着广泛和深入的应用。鸿蒙轻量化设备除了可以应用于智能家居等消费领域,在生产领域的应用也有着巨大的潜力。

这次用Hi3861的PWM来驱动变频器,改变其输出频率,开始:

准备

Windows 开发环境准备

IDE: DevEco Device Tool 2.2 Beta2

源码: OpenHarmony 2.2 Beta2

开发板: 小熊派 BEARPI-HM Nano Hi3861 主板

变频器: 一款国产2.2kw变频器

简介

1.常用变频器的启停方式有 操作面板,端子启停和通讯命令启停等方式,为了简化,本实验采用操作面板的启停按键。

2.常用变频器的频率给定方式有操作面板,模拟量(电流,电压),端子,及通讯等,本实验采用电压模拟量来调节频率。

3.小熊派开发版的GPIO_1脚初始化为PWM4输出,串联300欧电阻连接至变频器的模拟量输入端,通过改变PWM占空比的大小,从而改变GPIO_1脚输出电压,进而改变变频器的输出频率。

4.对应本款变频器,设定参数P0.01频率来源为“VI模拟给定”,参数P0.03运行命令通道为“操作面板”

5. GPIO_1的PWM输出电压为0-3.3v,对应变频器输出频率为0-50Hz,设定变频器参数P1.04为“3.3”v,对应参数P1.05最大输出频率50Hz。

Hi3861编程

1.将GPIO_1初始化为PWM4输出,占空比从0-99%,每两秒钟占空比增加10%,测试变频器的输出频率是否可以在0-50HZ之间对应改变。

2.代码如下:

 
 
 
 
  1. #include  
  2. #include  
  3. #include "ohos_init.h" 
  4. #include "cmsis_os2.h" 
  5. #include "iot_pwm.h" 
  6. #include "iot_gpio.h" 
  7.  
  8. #define PWM_TASK_STACK_SIZE 2048 
  9. #define PWM_TASK_PRIO 25 
  10. #define DAC_GPIO 1 
  11.  
  12. static void PWMTask(void) 
  13.     unsigned int i; 
  14.  
  15.     //初始化GPIO_1,设置引脚复用功能为PWM,引脚为输出模式,初始化PWM4端口 
  16.     IoTGpioInit(DAC_GPIO); 
  17.     IoTGpioSetFunc(DAC_GPIO, 5); 
  18.     IoTGpioSetDir(DAC_GPIO, IOT_GPIO_DIR_OUT); 
  19.     IoTPwmInit(4); 
  20.  
  21.     while (1) 
  22.     { 
  23.         for (i = 0; i < 10; i++) 
  24.         { 
  25.             //间隔一定时间,输出0-90%占空比的PWM波,驱动变频器频率改变 
  26.             IoTPwmStart(4, i * 10, 40000); 
  27.             printf("   %d Hz \n", i * 5); 
  28.             //间隔2秒,便于观察 
  29.             sleep(2); 
  30.         } 
  31.         // 输出99%占空比,50HZ 
  32.         IoTPwmStart(4, i * 10 - 1, 40000); 
  33.         printf("   %d Hz \n", i * 5); 
  34.         sleep(2); 
  35.  
  36.         i = 0; 
  37.     } 
  38.  
  39. static void PWMExampleEntry(void) 
  40.     osThreadAttr_t attr; 
  41.  
  42.     attr.name = "PWMTask"; 
  43.     attr.attr_bits = 0U; 
  44.     attr.cb_mem = NULL; 
  45.     attr.cb_size = 0U; 
  46.     attr.stack_mem = NULL; 
  47.     attr.stack_size = PWM_TASK_STACK_SIZE; 
  48.     attr.priority = PWM_TASK_PRIO; 
  49.  
  50.     if (osThreadNew((osThreadFunc_t)PWMTask, NULL, &attr) == NULL) 
  51.     { 
  52.         printf("Falied to create PWMTask!\n"); 
  53.     } 
  54.  
  55. APP_FEATURE_INIT(PWMExampleEntry); 

编译,烧录

1.点击DevEco Device Tool待编译工程下“PROJECT TASK"的“Clean"清除之前的编译文件。

2.点击“PROJECT TASK"的“Build”开始编译。

3.9月2日,DevEco Device Tool升级到V2.2 Beta2后,点击“PROJECT TASK"的“Upload”后,等待“BootromDownloadBoot”出现后再复位开发板,这是V2.2 Beta2相对之前版本的变化

4.V2.2 Beta2相比之前版本,下载速度较慢,请耐心等待。

运行结果

1.连接开发板和变频器,通电后,操作面板按键启动变频器,可以看到输出频率从0到50Hz间隔2秒不断变化,基本达到实验的目的。演示视频见附件。

2.Hi3861PWM的占空比和变频器实际输出频率的对应关系见下表:

3.同样适用于润和和其它基于Hi3861的开发板。

4.实验中变频器为380V供电,须注意操作安全。

想了解更多内容,请访问:

和华为官方战略合作共建的鸿蒙技术社区

https://harmonyos.

分享名称:让Hi3861驱动交流电机变频器
文章位置:http://www.hantingmc.com/qtweb/news31/357931.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联