总结前面的文章,整体无感FOC代码生成归纳为以下步骤;
第一步:设置芯片
点击MCU选择,
根据以下界面进入MCU型号选择。
母线电压为24V以供电系统为例,最低电压为12V,最高电压为36V,额定电压为24V,电压范围为±50%
下列参数按设计电路原理图填充,一般为串联电阻分压结构。
同样,根据电机参数表,首先选择电机类型,分为表电机和内置电机。然后是极对数、额定速度、额定电流、母线电压、定子相电阻、定子相电感、反电势系数,可以依次填充。
设置电流采样方,设置了电流采样方法,讲解了采样电阻和增益倍数的计算,(STM32电机库(ST-MC-Workbench)这里不再重复学习记录-电流采样参数设置)。
因为采用的是无感FOC,所以选择 Observer Cordic 模式(滑模反正切),根据电机的实际情况,观测器增益一般软件会给出默认值。
由于不同的硬件回路对应I/O即使实现了相同的功能,也需要根据特定的电路进行分配。例如,下图的原理图,PWM123456分别对应 PA8 PA9 PA10 PB13 PB14 PB15
因此I/O分配界面如下图所示,BKIN我猜是停止信号
点击电流采样模块分配界面,
进入电流采样周期I/O因为STM32芯片的采样端口是固定的,所以设置在此选项卡中。采样时间为143ns,可以更改。
原理图中的采样部分M_IA、M_IB、M_IC,这三个关角分别对应PA6\PA7\PC因此,进行以下分配。
进入人机交互按钮后,取消按钮,用上位机操作,然后打开串口功能。
然后对应原理图,TX对应PB6,RX对应PB7。
因为用的是无感FOC,使用观测器,所以这个地方没有使用hall因此,检测端口不涉及I/O口的分配。
左边是I/O点击总体分布,其界面如下I/Ocheck,防止I/O分配错误。完成后显示。check ok。
整理不易,希望大家帮忙点个赞~
后续文章链接:
永磁同步电机矢量控制到无速度传感器控制学习教程(PMSM)(一)
无刷直流电动机矢量控制(一)——无刷直流电机(BLDC)与永磁同步电机(PMSM)的相同点和区别
无刷直流电动机矢量控制(二)——无刷直流电机的工作原理及其内部结构
无刷直流电动机矢量控制(三)——位置检测和换相
无刷直流电动机矢量控制(四)——simulink仿真搭建(让电机动起来)
无刷直流电动机矢量控制(五)——开环调速原理(方波形式)
STM32电机库(ST-MC-Workbench)学习记录——电机参数及传感器设置
STM32电机库(ST-MC-Workbench)学习记录——电流采样部分
STM32电机库(ST-MC-Workbench)学习记录——电流采样参数设置
STM32电机库(ST-MC-Workbench)学习记录——无感FOC代码生成