我们通过上一章节的对开发套件的内容进行了全面的了解,并通过串口控制开发套件是马达振动了起来,不过对于开发套件中的开发板使用的固件相对比较固定,也没有对应的显示单元,所以我们接下来要进行的就是更换一个控制单元,并通过这个开发板使马达振动起来,我们这次选用的依然是红色的低频马达,中心频率为100Hz左一点。
这次咱们选用的开发板为M5stack CoreS3,主控同样是ESP32-S3,不过这个开发板就多了很多的外设了,带有显示和触控,还包括很多的很多的传感器,不过用不到这没多,本章节主要是通过输出PWM去控制马达。
主控如下:
首先我们需要让其正常输出PWM信号,这里我们选用PORT.B的I脚作为PWM的输出引脚,由于马达对电流的需求大概为160mA左右,所以肯定不能用引脚直接去驱动,这里我们就要加入一个开关控制,将PORT.B-I的输出引脚转化为对供电电源的开关控制,这里我们选取的是如下控制电路:
引脚控制三极管,进而控制MOS管的开关。
那么在本阶段如何进行进一步的测试呢?可以看到主控单元上是存在4个参数:
马达状态——Motor,初始是关闭的,通过触屏可以控制开启和关闭;
PWM的占空比,通过触屏改变大小,有限制,只有关闭的时候可以修改;
PWM的频率,通过触屏改变大小,有限制,只有关闭的时候可以修改;
注意马达控制的区间:
可以看到咱们选取的红的低频马达的控制区间为0-110左右,实际上选取30-95惊醒测试,最好不要较小到0,同步进行占空比的测试。
接下来就是软件功能的实现,我们使用的是图形化开发的方式,显示单元都有如下内容:
主要的是按键的采集的和处理:
重点是PWM的输出控制:
现在逻辑控制已经基本没什么问题了,接下来一块看一看控制效果吧:
播放器加载失败: 未检测到Flash Player,请到
安装
驱动效果展示 (1)
在实际的测试体验过程中发现,占空比和频率都会影响马达的振动效果,也就是或我们可以同个这两个参数去改变整体的连续振动效果,音乐的播放应该就是通过这两个参数更改变化的,这里我们不建议占空比太高,在调试过程中发现引脚输出状态不确定的时候,导致马达持续供电,说实话被烫了,甚至都有点闻到味道了,不过马达并没有损坏,这个也是我将占空比控制在0-50%的主要原因。