深度评测 【硬石直流有刷驱动板试用体验】之按键控制电机启停及...

发布时间: 2018-11-28
阅读: 1142
0
产品概况
本帖最后由 SingleYork 于 2018-11-28 18:08 编辑

今天笔者要跟大家分享一下硬石有刷直流电机的基本控制,其实这款电机的控制是非常简单的,只需要给电机两端施加一个电压差,这个电压差大于电机的启动电压,电机就能实现旋转了。

本例中采用的是硬石的《直流有刷驱动板》跟硬石的《STM32F407开发板》来实现对直流有刷电机的控制。限于篇幅,就不再重头一步一步的来写操作步骤了,利用硬石现有的例程,简单分析一下硬件部分和主要代码。

首先,我们来看一下电机本身接口引脚图:



接下来,我们根据电机接口,将对应的线一一接到驱动板上,同时用排线直接插到STM32F407开发板上:



硬件链接好后,我们可以来看代码部分了,打开例程源码“直流有刷电机_按键控制”,虽然说,MDK编译的时候比较慢,但是笔者在这里还是选择用自己比较熟悉的MDK来进行讲解。另外顺便说下,用HAL库开发的程序,在MDK环境下编译很慢,可以在这里设置一下,把“Browse Infomation”前面的勾去掉,编译就会快很多了,当然,这样做的话,会导致代码追踪的时候追踪不了:



好了,言归正传,现在我们来看代码部分。由于不是硬石的购买用户,所以没找到使用手册(硬石部分资料是只针对购买用户开发,不过硬石的视频教程中,有“直流无刷电机专题”,讲的还是很详细的),所以,就直接来看代码吧,还在,硬石的每个工程源码中都有“例程功能说明”,这也是一个值得我们借鉴的好习惯。



从上述例程功能说明中,我们可以清楚的看到,这个例程,就是通过5个按键分别来控制电机的加速、减速、正转、反转、停止这五个状态。

首先,我们来配置这五个按键的输入模式,将其均配置成了“输入上拉模式”:



接下来,为每个按键专门写了一个函数,来获取按键的状态,以KEY1为例,其他都是一样的方式:



接下来,我们看下按键逻辑部分,结合例程功能说明,相信应该很容易就能看明白:



按键KEY1和按键KEY2,是通过按键按下时,改变PWM_Duty的值,然后再通过SetMotorSpeed(PWM_Duty) 函数来根据PWM_Duty的值改变电机的速度:



按键KEY3和按键KEY4是通过调用SetMotorDir()函数,来改变电机的方向:



按键KEY5直接关闭了PWM和他的互补通道的输出,从而让电机停止。



将程序编译后,下载到程序中,然后按不同的按键,就可以看到效果了:http://v.youku.com/v_show/id_XMzk0MDU1OTYwNA==.html




原创作品,未经权利人授权禁止转载。详情见转载须知

硬石直流有刷驱动板
  • 硬石直流有刷驱动板
  • ¥378.00
立即申请
SingleYork
评论(0)

登录后可评论,请 登录注册

X
提交成功 ! 谢谢您的支持
返回