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