感谢大家对基于STM32的MATLAB电机控制方案直播的支持,谢谢大家的热情参与!本文给大家汇总了本次直播回放视频、直播答疑Q&A、直播讲义、获奖名单等。我们从直播答疑中选一些比较有代表性的提问在这里与大家分享,供大家回顾。
Q:STM32CubeIDE和STM32CubeMX是否必须升级到最新版本?A:安装MATLAB SupportPackages 的时候对 STM32CubeProgrammer 和 STM32CubeMX 的版本有要求,不能用最新版本。这个联合开发过程中不用 STM32CubeIDE,需要使用 STM32CubeProgrammer2.6.0,STM32CubeMX6.4.0。
Q:STM32电机控制库无感控制算法采用的是滑模观测器吗?A:不是,ST X-CUBE-MCSDK使用的是线性状态观测器。但是,直播中解说的方案是用的滑膜观测器。Q:STM32G4需要安装哪个 MATLAB SupportPackages呢?A:需要在MALTAB里安装,Embedded Coder Support Package for STMicroelectronics STM32 Processors。
A:STM32F373,STM32H7系列都带有16bit ADC。A:所有集成高级定时器(Advanced Timer-ADT)的STM32都可以用于三相电机(全桥逆变器)控制。我们现在比较推荐STM32C0、STM32G0、STM32H5、STM32G4、STM32H7等系列产品用于电机控制。Q:STM32F4和STM32G4有什么区别,STM32F4适合电机控制吗?A:STM32F4系列产品也可以用于电机控制。相对于STM32F4系列,STM32G4集成了CORDIC,和丰富的模拟外设有,比如运放、比较器等。Q:CCM-SRAM跟普通SRAM有什么区别,不是都可以把需要快速访问的程序装载到这里执行吗?A:CCM-SRAM只装载FLASH中的程序,无需额外的程序预装载。而SRAM一般只用于变量存取,如果需要访问FLASH中的程序 ,需要额外的程序装载。A:从SDK2.0到目前的SDK6.1.1,已经广泛地用于各类电机控制场合。包括风机、水泵、通用变频器、电动自行车、变频家电等等。A:CORDIC已经做为硬件数学协处理器集成到STM32G4系列了,无需额外的程序。具体应用,可以参考STM32 电机控制的软件开发包,参看基于G4的电机控制方案的程序。A:G0目前没有集成PGA。但是我们有带预驱的STSPIN32产品,内部是集成了运放的。Q:STM32CubeMX,STM32CubeProgrammer以及STM32CubeIDE相互关系,主要区别是什么?以及在联合开发过程中STM32生态的作用?A:首先STM32CubeMX和STM32CubeProgrammer 单独运行是没有版本要求的。STM32CubeMX是配置工具,用于MCU选型,引脚配置,时钟树初始化 、外设配置,中间件配置,代码生成等;STM32CubeProgrammer是用来烧录程序的,两个软件都是STM32Cube家族的程序员,有不同的功能。STM32CubeIDE是集成开发环境,用于程序编辑,编译和调试,本次联合开发中并没有涉及到它。
目前之所以要求 STM32CubeMX 采用6.4.0版本 和STM32CubeProgrammer采用2.6.0版本,以及G4Firmware的几个固定版本,是因为在MATLAB中安装SupportPackages的时候对这些内容的版本有要求。在安装SupportPackages时,如果安装了指定版本的STM32CubeMX,STM32CubeProgrammer,以及G4 FW pacakge的话,会很容易安装成功,否则会提示报警信息。在联合开发G474这个模型中,STM32CubeMX是用来对G474进行时钟、外设以及IO口设定的,文件后缀为.ioc。在Simulink编译的时候,会调用这个.ioc文件,生成的hex文件中已经包含了对MCU的以上设定。Simulink在线调试时会后台调用STM32CubeProgrammer,将编译好的hex文件下载到芯片里,以便于硬件在环仿真。A:MATLAB 软件提供丰富的电机控制应用相关模块和算法,辅助用户快速开展电机本体模型的搭建和控制设计的优化。在算法开发后期,还可以利用MATLAB提供的丰富的测试验证工具链开展基于模型的测试和验证工作,进而将可信赖的算法自动生成C代码/HDL代码并下载到硬件中。A:MATLAB是MathWorks公司的商业软件,收费产品,按所需应用购买相关的产品模块。A:网络研讨会中使用的模型是MATLAB软件自带demo,点击这里访问相关链接。A:MATLAB软件除了控制设计之外,也深耕AI应用,点击这里访问相关链接。Q:可以把自己写的代码加到MATLAB里一起仿真吗?A:可以。为了方便用户将自己手写的代码集成到MATLAB/Simulink环境中集成仿真,MathWorks开发出各种模块以及工具,便于实现代码的集成,从高度灵活的S function,到简单易用的Legacy C Code Tool,再到C caller 以及Simulink Code Importer等等。A:Simulink Coder可以将模型自动生成c 代码并用于实时应用,但相比Embedded Coder 来说,可读性较差,更多的用于实时仿真。如果想生成高度优化的,可读性好的代码,需要使用Embedded Coder,该工具给用户提供了大量的代码生成配置选项,可以生成媲美于手写代码的可读性。Q:目前,基于STM32 的Matlab电机控制方案可否支持构建位置-速度-电流三闭环控制?A:在Simulink 平台下,可以支持PID三环,或者任意结构形式的控制。Q:MATLAB功能确实强大,但是自己不好搭建。有没有介绍MATLAB常用功能模块的手册?A:MathWorks官网有大量的教学视频,帮助用户快速上手进行建模仿真,点击这里并按页面左侧的过滤器筛选出感兴趣的内容。
请以上获奖的小伙伴联系客服(微信号: STM32_01)领奖,没有获奖的小伙伴也不要灰心!更多精彩活动请关注STM32微信公众号。
© THE END
▽点击“阅读原文”,可观看直播回放