本帖最后由 凉风无讯 于 2024-1-23 18:12 编辑

极海APM32F035低压电机通用评估板评测

一、开发板介绍

外观

图片1.jpg

硬件资源

APM32F035x8T7 型号芯片是基于 Arm®Cortex®-M0+内核的 32 位高性能微控制器,工作频率可达72MHz。内置协处理器,支持和 TMR1 进行交互,提高 PWM参数的计算速度,从而提高 PWM 的配置速度。

内置高速存储器(高达 64KB 的闪存和 10KB 的 SRAM),芯片管脚复用了大量增强的外设和 I/O。提供标准的通信接口:I2C 接口、SPI(I2S)接口、USART

接口、CAN 接口。在芯片安全方面,支持 96 位唯一 UID。

APM32F035x8T7 微控制器工作时的环境温度范围为:-40℃~+105℃(温度传感器在-40℃~105℃工作,精度为 3℃),电压范围为:2.0~3.6V,支持上电/掉电复位、睡眠、停机、待机三种低功耗模式确保供电灵活与均衡整体能耗;配备实时时钟RTC,支持可用于遥控的红外接收功能;集成1个16位高级定时器、2个16位基本定时器、1个32位通用定时器、2个看门狗定时器、1个24位自减型系统滴答定时器。

系统硬件实物

系统实物如图所示,其中主要有以下五个接口:

图片2.png

(1) 电源输入接口(接入 24V,注意正负)

(2) 三相电机接口(相序只会影响旋转方向)

(3) HALL 输入接口

(4) SWD 调试接口

(5) 跳线帽端口需接上

二、控制方案

整体硬件电路

整体硬件系统是采用外部 24V 电源供电,并经过相应的电源降压电路转换后输出稳定的 12V、5V、3.3V 电压,其中 12V 电压输出给到 Gate driver IC、3.3V 电压输出给到 APM32F035 系列微处理器,而功率开关管则直接使用 24V 电源。同时,该方案采用可变电阻旋钮调节0~3.3V 的电压输入作为速度命令的输入端,以此调节电机转速。用户实际使用可直接通过转动可变电阻旋钮以此调节输入电压,同时当输入电压值超过起动阈值时,电机将会启动运行,而当电压值低于阈值时电机将会关闭运行。

当电机启动后,APM32F035 处理器通过内置的运算放大器并经由相应的采样电路可获取三相的相电流 Iu、Iv 与 Iw,并将该数据经过坐标轴的转换后进而控制电机的力矩电流大小及相位;通过FOC 控制计算环节后调节 TMR1 外设输出相应的三路互补的 PWM 波控制逆变器的开关元器件。

硬件框图如图所示。


软件介绍

[url=]此项目整体代码架构主要可划分为 4 层,用户层、外设驱动层、电机控制驱动层以及电机算法层,具体功能描述如下:[/url]

1.用户层(USER 层)

main.c:主函数入口,负责初始化电机参数、底层外设、中断优先级、while 循环及低速状态机环路的切换;

apm32f035_int.c:所有的中断处理函数,重点包括TMR1 中断函数、ADC 中断处理函数;

user_function.c:包括电机参数的初始化配置、参数复位等处理函数;

parameter.h:包括了所有的需要配置参数信息;

board.c:包括板级的底层外设初始化配置函数。


2.外设驱动层(HARDWARE 层)

外设驱动层主要负责 APM32F035 芯片的外设驱动函数及配置,主要涉略包括 GPIO、PWM、ADC、OPA、COMP、M0CP 协处理器等,具体如下图所示。


图片3.png


3.电机控制驱动层(MOTOR_CONTROL层)

图片4.png


4.极海电机算法层(Geehy_MCLIB 层)

电机算法层包括坐标变换、矢量控制等相关函数,数学库,滑模观测器等库函数。


图片5.png

四、电机调试

1.电机参数


Cache_739a04595f2e0196..jpg

2.参数修改


以无感矢量控制为例,更改程序中电感、电阻、极对数、额定转速等参数设定
91abe700f2025c904242adaea2e0503.png

3.程序下载与调试


通过J-link仿真器下载
eafa50be61181bb7ec36251a129b117.png
5b5af0340ba405f932803a3ca0053b0.png
将程序烧录后重新上电进行测试。