
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
变频器(Variable-frequency Drive,VFD)是应用变频技术与微电子技术,通过改变电机工作电源电压及频率方式来控制交流电动机的电力控制设备。在工农业生产的自动化控制,节能降耗,动力驱动等领域有着广泛和深入的应用。鸿蒙轻量化设备除了可以应用于智能家居等消费领域,在生产领域的应用也有着巨大的潜力。
这次用Hi3861的PWM来驱动变频器,改变其输出频率,开始:
Windows 开发环境准备
IDE: DevEco Device Tool 2.2 Beta2
源码: OpenHarmony 2.2 Beta2
开发板: 小熊派 BEARPI-HM Nano Hi3861 主板
变频器: 一款国产2.2kw变频器
4.对应本款变频器,设定参数P0.01频率来源为“VI模拟给定”,参数P0.03运行命令通道为“操作面板”
5. GPIO_1的PWM输出电压为0-3.3v,对应变频器输出频率为0-50Hz,设定变频器参数P1.04为“3.3”v,对应参数P1.05最大输出频率50Hz。
引脚 | GPIO0 | GPIO1 | GPIO2 | GPIO3 | GPIO4 | GPIO5 | GPIO6 | GPIO7 | GPIO8 | GPIO9 | GPIO10 | GPIO11 | GPIO12 | GPIO13 | GPIO14 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
功能5 | PWM3 | PWM4 | PWM2 | PWM5 | PWM1 | PWM2 | PWM3 | PWM0 | PWM1 | PWM0 | PWM1 | PWM2 | PWM3 | PWM4 | PWM5 |
#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,设置引脚复用功能为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++)
{
//间隔一定时间,输出0-90%占空比的PWM波,驱动变频器频率改变
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);
PWM占空比 % | 0 | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 99 |
---|---|---|---|---|---|---|---|---|---|---|---|
变频器理论频率 Hz | 0 | 5 | 10 | 15 | 20 | 25 | 30 | 35 | 40 | 45 | 50 |
实际输出频率 Hz | 0 | 4.44 | 9.68 | 14.76 | 20.00 | 25.23 | 30.31 | 35.55 | 40.63 | 45.55 | 50 |