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