STM32 代码生成
文章平均质量分 75
卡洛斯伊
从事电机,电源类系统应用软件开发。记录分享开发中遇到的问题方便日后回顾和交流
展开
-
STM32 Simulink 自动代码生成电机控制:无传感龙伯格观测器仿真自动代码生成到开发板运行
目录1. 龙伯格观测器建模和仿真2. 自动代码生成和系统验证3. 总结1. 龙伯格观测器建模和仿真龙伯格的算法结构如下:龙伯格观测器的基本原理网上有很多,这里就不多说了根据论文搭建出观测器的仿真模型Luenberger+PLL锁相环启动过程需要开环把电机拉起来,这里通过stateflow实现了开环拉的状态切换,可以配置启动电流,加速时间,切换转速等仿真效果如下:速度响应角度估算速度估算2. 自动代码生成和系统验证生...原创 2022-04-18 17:02:43 · 4229 阅读 · 14 评论 -
STM32 Simulink 自动代码生成电机控制:无传感扩展卡尔曼滤波(EKF)仿真和开发板运行
基于卡尔漫滤波的无传感永磁同步电机控制原创 2022-04-14 14:49:51 · 4763 阅读 · 17 评论 -
Simulink 自动代码生成电机控制:自动定点化Fixed-Point Tool 使用
Simulink自动代码生成操作演示原创 2022-04-01 18:55:18 · 6867 阅读 · 5 评论 -
STM32 Simulink 自动代码生成电机控制——DTC控制仿真到代码生成
通过Simulink仿真及生成代码,通过STM32完成DTC的系统控制原创 2022-01-20 11:45:35 · 9942 阅读 · 16 评论 -
STM32 Simulink 自动代码生成电机控制——脉振高频注入
模型简介运行仿真代码生成开发板运行演示原创 2022-01-15 16:46:08 · 8241 阅读 · 9 评论 -
Simulink 自动代码生成电机控制:在某国产ARM0定点MCU上实现自动代码生成无感电机控制
这次尝试了在国产arm0内核的MCU上实现Simulink自动代码生成永磁同步电机无传感控制。机缘巧合之下拿到了一块国产MCU的电机控制板和一个5000RPM的小电机。最后实现了无传感控制,在这里总结下一些经验。掌握定点化流程方法后,系统越复杂就越不要想着通过几个实例就把整个系统完全定点化好,也需要对一些异常的模块进行分析,仿真以达到数据失真小,且不溢出。Simulink定点化后有些数据是16位的,可以考虑把一些数据用32位表示,以确保其精度。原创 2023-03-08 13:46:23 · 3788 阅读 · 2 评论 -
Simulink 自动代码生成电机控制:优化Simulink生成的代码提升代码运行效率
优化前代码执行速度17us, 优化后8.9us, 效率提升了将近一倍,从优化过程可以看出,要提高代码运行效率需要从三个方面入手:1.模型的搭建和配置2.模型算法的优化3. 编译器的优化也至关重要编译器的优化有时候会影响到程序的正常执行,测试过程中都是保证电机能正常工作,具体以实际工程需要进行优化,这里仅供参考%5Cpi%5Cpi。原创 2023-03-02 12:43:13 · 2363 阅读 · 5 评论 -
基于STM32 电机库(5.4.4)的单电阻采样调试总结
验证了在开发板上做单电阻的实验是可行的原创 2023-02-25 18:57:34 · 3548 阅读 · 1 评论 -
Simulink 自动代码生成电机控制:低阶滑模观测器仿真实现及生成代码在开发板上运行
通过实验验证这种简单的滑模估算方法可行,效果也可以,速度变化也能正常使用,这里通过锁相环替换了参考文献的反正切也能正常工作。另外构建了另一个滑模观测器,这个观测器输出的反电动势相位没有发生滞后,开发板运行效果和本文所说的效果基本一致。原创 2023-02-19 13:51:26 · 2875 阅读 · 12 评论 -
Simulink 自动代码生成电机控制:STM32 Encoder编码器使用总结
本实验通过仿真模拟了STM32单片机的Encoder接口,并对其进行角度计算,从仿真系统上实现了整个过程,也把启动和运行的流程通过模型生成代码在硬件上实现,验证了模型的可靠性。原创 2023-02-18 16:38:05 · 6738 阅读 · 7 评论 -
记录为小电机安装一个5012编码器(多摩川协议)的过程
这里用的编码器是一个磁编码器,接口板可以很容易买到也不贵。如下 图,为接口板的正反面。接口板的工作原理是通过把一块永磁体如下图红圈,安装到电机的转子轴上,5012磁编码器采集到的角度通过单片机用485发送出来。PWR:电源指示灯D2:通讯指示灯,闪烁表示正在通讯读取数据通讯协议主控端发送请求命令帧:发送数据(HEX):0x02主控端接收来自编码器的数据帧:接收数据(HEX):0x02 0x00 0x34 0x12 0x00 0x24其中:0x02: 起始字节。原创 2022-11-19 18:58:39 · 4431 阅读 · 1 评论 -
STM32 VOFA+串口调试助手提升电机控制调试效率(下位机代码和上位机操作演示)
合理利用工具可以加速开发的速度,Simulink串口对电脑资源占用还是挺大的,VOFA还可以根据电机的性能配置数据刷新率,是一个挺好用的开发工具!httpshttpshttpshttpshttpshttpshttpshttps。原创 2022-07-15 18:08:09 · 16400 阅读 · 21 评论 -
Simulink串口调试助手的使用----显示电机运行的波形
想要数据显示精确就需要高的波特率,发送周期也要合理,可以根据硬件的实际情况进行调整波特率和发送周期,通过串口调试助手去查看数据是否发送可靠。httpshttpshttpshttpshttpshttpshttpshttpshttpshttpshttps。...原创 2022-07-15 11:23:43 · 4409 阅读 · 0 评论 -
STM32 Simulink 自动代码生成电机控制——死区补偿
死区补偿仿真到代码生成实机演示原创 2022-06-29 21:12:26 · 7710 阅读 · 1 评论 -
STM32 Simulink 自动代码生成电机控制——57次谐波抑制仿真到代码生成
谐波补偿仿真到实机运行效果原创 2022-06-29 20:32:47 · 3037 阅读 · 5 评论 -
Simulink S-function builder创建一个.C的全阶滑模观测器操作步骤
1.输入输出配置,这里因为在最开始定义了SMO参数的结构体,为了方便参数传递,把参数作为了输入量出来就是这造型:2.创建一个.h引入外部变量,.h要如果要用到一些特殊的变量或者函数,需要包含相应的头文件,这里创建的变量是为了在观测器中使用方便3.包含刚刚定义的.h4.写函数体(这里就不放出源代码了),函数体是在Outputs里编写和执行5.用一个子模块把S-fuction封装一下,传递参数6.运行仿真,粉色为Valpha,蓝色为Ealpha...原创 2021-08-25 17:30:15 · 2285 阅读 · 0 评论