本帖最后由 stm1024 于 2018-9-1 17:01 编辑 之前把Profiler测试了一下,让电机转动起来。2 I' I. g: n. s' B' `+ S K( D" W https://www.stmcu.org.cn/module/forum/thread-617295-1-1.html4 y8 D) f: D2 V9 ^3 I4 E 这次通过结合开发板、软件和文档,熟悉了解电机控制的SDK。/ i% V7 X* B' H6 F4 j UM2374 是User manual-Getting started with STM32 motor control SDK v5.0* b0 M( J9 n; K1 o) W 采用的是5.12的MotorControl Workbench,但是匹配的帮助文档仍旧是针对SDK5.0,不过软件界面和手册上稍微存在一些差异,不过这都不是什么大问题。' J6 D' H# U" _ 在昨天能通过profiler把电机玩转以后,基本上硬件连接上已经没有什么问题,重点是从3.3节开始,MC project generation 新建一个项目,按上图进行配置。其实第三步中不一定非要选择Kit,也可以分开选择Power & Control单独配置驱动电路板和控制板 注意看第四步,这个地方选之前标定过的电机就可以了,我用的文件名是XD001,如果选择的是官方标配的奔牛(牛奔,哈)电机,效果也是一样的,选自己的电机,适应性更广,不至于换了电机就懵逼了。 OK之后弹出上图的确认信息框,核对一下即可,因为这些参数都是自动测算的,所以通常不会错。' Z: V; x/ Z$ w* U . n) w# ~8 |4 z: g% s. }2 U 这下来到了主界面(下图左), y1 `0 @- ]) P) z3 t 右图是UM2374 中的说明截图,实际上5.1.2中工具栏上已经没有选择输出目录的,我们可以直接点save,或者在File菜单下使用save project as... 其实来到这里就可以点击生成了,但在生成之前,建议多看看左边这几个标签页面。( x, Y- N4 @; F7 U1 l& H { 例如,打开power stage标签下面的Digital I/O,可以看到控制器的配置方案:4 q8 G& @9 S+ F# w# \: i) @ - X' f7 c6 ]2 N) U* P 下面的生成代码的工作了。点击那个向下的箭头,即Generation: 生成之前,可以根据自己的需要,选择合适的工具链,我使用的是Keil v5,选好之后,点击Generate会在之前保存的项目文件目录下生成一个同名文件夹,包含了所有的项目文件。 ; l4 A3 E' Y7 J* E$ e p 然后就是用工具打开项目文件,编译,下载。至于配置信息,在项目中都帮你自动完成了。 上图中可以看到,连debug的工具都给你配置好了,这个细节做得非常不错,难怪官方的文档说的是:" v5 b" F: t+ O9 C% p, b Download the embedded application to the target from the IDE. If the ST/LINK is correctly9 v- g8 b7 y/ M0 w/ E installed, this is straightforward to perform. 最后就是打开Monitor了: 连接,running~。 测试中发现,如果调速过快,会出现speed feedback的错误,另外就是改变转向,也会出现这样的错误。 最后,我还强行把转子捏死,测试一下堵转时的错误反馈,原本以为是电流会过大,Over Current的故障,结果发现依旧是speed feedback错误,而且在出现错误前,仪表上还有转速显示,这个肯定是不对的,这里先mark一下,后面需要多研究一下转速测量的原理。 出现不要紧,点击一下Fault Ack按钮,就可清除故障信息。. c& T3 F+ C. C ST一如既往地保持了过去文档详实的优点,可以让开发人员快速上手,立即看到效果,使学习曲线变得更加缓和。软件操作界面也很友好,傻瓜式的操作,背后有着很大的学问,不敢说自己掌握了皮毛,只能说是找到感觉了吧,lol。 ( C: S- T% f m& G( N 后面再尝试一下在项目中修改代码,实现电机调控的功能,也就是完成培训的Task。3 B8 m; ~" P0 X9 Z 9 H* D- ~0 ~' h7 a5 L - y" ^" k1 @# r: i# L* `+ y 7 S% {# m; ]! `: G5 n |
好的,谢谢大佬,那我后面也按【原创】发