【电机控制不得不学习的干货:】 飞思卡尔MCU正交编/解码器模块

在电机控制领域,我们经常需要得到电机的转速,位置来执行算法,那么想知道转速是如何获得的吗?看过来,猿来你在这里O(∩_∩)O~

正交编码器简介

飞思卡尔增强型正交编码器模块为多种电机控制的应用提供转速和位置型号的感应。正交编码器也叫增量式编码器或者光电编码器,大量应用于检测旋转运动系统的位置和转速,像电机控制,智能小车等。典型的增量式编码器 包括一个放置在电机传动轴上的开槽的轮子和一个用于检测该轮上槽口的发射器/检测器模块,飞思卡尔的正交编码器模块(ENC)提供与正交编码器的接口,为电机控制的应用提供了很大的方便,有五个输入信号,分别为PHASEA,PHASEB,INDEX, TRIGGER,HOME. ENC模块可以用来解码传动旋转轴的位置转速信息,供控制算法使用,像倍加福,国产的长春禹衡等都有大量应用。

系统框图

简单了解正交编码器后,那么在MCU系统上正交编码器模块的构成是什么呢,下面框图带你轻松理解

大体分为三个部分,输入信号经过XBAR,解码器模块,以及计数模块。

正交编/解码器框图

了解了片上系统的框图之后,通过下图可以清楚的看出正交解码器的构成

输入信号经过滤波,进入检测,再触发计数比较,得出位置信息,需要注意一点的是有一个看门口定时器,确保算法的正确的表明轴的运动,两次连续的计数会清掉复位看门口定时器,定时器的定时溢出值是可以编程的,定时溢出的产生会引发中断。

PHASEA 的输入即是正交编码器的输出,PHASEA和PHASEB联合计算方向,在正向旋转的时候,PHASEA是主导相,PHASEB是尾随相,当反方向的时候,PHASEB是主导相,PHASEA是尾随相。也可以应用在单相的输入情况下,当编码器是作为单相脉冲累加器的时候。

通常情况下,INDEX信号会连接到编码器脉冲索引输出口。HOME输入信号,可以用来初始化位置寄存器的上下限。TRIGGER信号输入可以用来清除位置计数器的上下限值,这个信号还会经常连接到定时脉冲发生器,或者定时器表明一个时间周期已消逝。

其他信号的详细信息以及寄存器的详细信息请参阅飞思卡尔官方参考手册。与ENC相关的期存器大概有二十来个,不算多,仔细阅读手册应该很快会掌握驱动操作原理。

中断源

飞思卡尔ENC模块有五个中断源如下表所示:

基本时序图

下图可以看出增量型编码器的基本时序图,关于工业上的应用,推荐大家下载正式的编码器的数据手册仔细研读。

软件解决方案

自己可以根据数据参考手册的描述一步步开发完成编码器的驱动程序,也可以快速参考甚至直接使用飞思卡尔SDK里面的对ENC模块的驱动,推荐大家使用SDK,可以快速评估你的方案,也可以快速上手学习ENC的驱动开发。在SDK1.2版本里面有专门针对ENC的例程。如果是默认路径则打开

C:\Freescale\KSDK_1.2.0\examples\twrkv46f150m\demo_apps\enc_demo\iar

工程如下图所示,使用我们前面反复提到的批处理编译整个工程样例,对照手册学习,甚至可以用示波器抓几个波形跟编码器手册对比,这样你会印象更加深刻。

原文发布于微信公众号 - 嵌入式程序猿(InterruptISR)

原文发表时间:2015-09-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python数据科学

手把手教你制作一个动态炫酷的可视化图表(历年中国大学学术排行榜)

摘要::最近在朋友圈看到一个很酷炫的动态数据可视化表,介绍了新中国成立后各省GDP的发展历程,非常惊叹竟然还有这种操作,也想试试。于是,照葫芦画瓢虎,在网上爬取...

3.4K10
来自专栏大数据杂谈

如何用 Python 执行常见的 Excel 和 SQL 任务

作者:ROGER HUANG 本文翻译自:http://code-love.com/2017/04/30/excel-sql-python/ 来源:https:...

5446
来自专栏小狼的世界

Python数据分析笔记

本书中推荐了edm和ipython作为数据分析的环境,我还是刚开始使用这种集成的环境,觉得交互方面,比传统的命令行方式提高了不少。

1473
来自专栏数说工作室

3行代码实现 Python 并行处理,速度提高6倍!

原标题:Here’s how you can get a 2–6x speed-up on your data pre-processing with Pyth...

4715
来自专栏数据小魔方

流量结构分布图——桑基图(Sankey)

桑基图作为相对复杂的图表种类,平时很少用到,不仅仅是因为它的引用场景相对狭窄,另一方面则是制作难度相对较大,门槛较高。 不过针对第一个问题,如果你能很好地理解自...

1.1K5
来自专栏架构师之旅

JVM内存管理------GC算法精解

相信不少猿友看到标题就认为LZ是标题党了,不过既然您已经被LZ忽悠进来了,那就好好的享受一顿算法大餐吧。不过LZ丑话说前面哦,这篇文章应该能让各位彻...

2008
来自专栏吉浦迅科技

DAY39:阅读扩展数据类型

1432
来自专栏让让子超技术专栏

在Solr中搜索人名的小建议

搜索人名是我们在许多应用程序中经常用到的功能。比如对书店来说,按作者名检索的功能就相当重要。虽然很难起一个完美的名字,但是我们可以使用Solr的一些功能,使绝大...

57712
来自专栏数据结构与算法

2821 天使之城

2821 天使之城  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题解  查看运行结果 题目描述 Descriptio...

3186
来自专栏安恒网络空间安全讲武堂

Writeup丨国赛线上初赛解题第二波~

1514

扫码关注云+社区

领取腾讯云代金券