概述
BLDC 中的三个霍尔效应传感器输出送入微控制器后,信号便可以像三通道编码器那样进行处理。输出数据可以显示出来,或者用来确定脉冲计数、旋转方向和平均每分钟转数 (RPM)。RPM 求取的是平均值,以便使显示的值平滑过渡。
PJRC Teensy 3.5 开发板
SparkFun 的 PJRC Teensy 3.5 开发板 (1568-1464-ND) 配有焊入式针座,并可产生足够多的数字中断,用于处理霍尔传感器的三个信号输入。由于具有大量的额外 I/O 通道,Teensy 3.5 有能力执行很多其他任务,并且可使用内置 SD 卡进行数据记录。
使用试验板测试传感器输出和 PJRC Teensy 3.5
使用一块试验板(438-1045-ND 或类似产品),将 Teensy 3.5 的 USB 连接器放置在右侧,并将上方针座引脚插入分隔槽上面的第一行试验板插孔中(图 2)。这样可以留出空间,以便将传感器输出连接到 Teensy I/O。
使用实芯跳线 (BKWK-3-ND) 进行试验板上的所有连线。将 5 V、1 A 电源的正极 (+) 引线连接到试验板的上方或下方正电源轨上,随后将负极 (-) 电源引线连接到上方或下方负电源轨上。将霍尔传感器连接器的正极(红色)和负极(黑色)引线,分别连接到试验板的正、负电源轨上,然后将连接器的三根传感器引线,以任意顺序连接到 Teensy 3.5 的第 2、3 和 4 号引脚。
传感器输出为有源低电平,这是指当触发时,输出连接到负电源轨;而没有触发时,需要将传感器输出上拉至正电源轨,以创建两个定义的逻辑状态。在试验板中插入三个 4 KΩ – 8 KΩ 的电阻器,即可用作传感器输出的上拉电阻器(图 2)。
使用 Micro B 转标准 A 型 USB 电缆,将 Teensy 3.5 连接到计算机。
软件
为便于编程,Teensy 3.5 与 Arduino 集成开发环境 (IDE) 相兼容。IDE 和 Teensyduino 插件可在线获取。
下文中提供的编程示例代码使用了三个硬件中断,来监控霍尔传感器输出的任何变化(上升沿和下降沿)。一旦发生中断,将读取 Teensy 3.5 的历时时钟和三个输入引脚中的两个引脚。之后将比较传感器的值,以确定旋转方向,然后再进行其他计算来确定脉冲计数和平均 RPM。中断之间的时间间隔计算方法是:比较当前时钟值与上一次中断中存储的时钟值。
在 void loop 中,有四个值可用于串行打印。可以通过注释或取消注释代码行,来禁用或激活串行打印功能,然后将代码下载到 Teensy 并启动串行监视器,以查看实时数据。旋转 BLDC 电机,在打印监视器中观察值的变化情况。
总结
BLDC 霍尔传感器现在配置为三通道、低分辨率编码器,能够提供精准数据,帮助进行导航和电机轮位置检测,而不会妨碍其主要的电机控制功能。一些 BLDC 控制器只使用反电动势来确定线圈和磁铁的位置,使霍尔传感器输出仅用于导航和位置检测。但无论如何,传感器对于用户而言,不只具有电机控制功能,还有其他更多价值。
-
微控制器
+关注
关注
48文章
7546浏览量
151325 -
霍尔传感器
+关注
关注
27文章
723浏览量
63175
发布评论请先 登录
相关推荐
评论