LabVIEW使用正交编码器进行角位置测量

简介: LabVIEW使用正交编码器进行角位置测量

LabVIEW使用正交编码器进行角位置测量

正交编码器使用两组光源和探测器,沿着不透明和透明段的轨道安装,以检测位置变化。轨道放置在光源和探测器之间,以便当安装轨道的物体移动时,光探测器输出方形波形。


图1-光源和检测器的定位


为了检测轨道的移动方向,将第二个不透明和清晰的段与另一个光源和检测器一起添加到轨道中。现在,当物体移动时,两个光检测器,称为通道A和通道B,输出90度异相的信号。


图2-正交编码器轨道和信号


运动方向由哪个信号引导决定。如果图2中的轨道向左移动,则通道A将比通道B领先90度(如图2所示)。如果轨道向右移动,则通道B将比通道A领先90度。


一些编码器还具有用于位置参考的第三个输出。此输出称为索引或Z端子(零端子)。对于角度编码器,该信号每转检测一次,用于保持精度并参考绝对位置而不是相对于起始位置的位置。


所需设备:NImyDAQ、角度编码器


NI myDAQ的前三条数字线将用于从编码器读取信号。请参阅编码器的数据表,用于识别编码器的引脚以及如何接线。根据下表1将三个输出(如果没有索引,则连接两个)连接到数字通道。


表1-NImyDAQ计数器引脚布局


LabVIEWI已经编写用于读取编码器的通道。下载附加的VI或将下面的代码拖到框图中。


图3-VI代码片段


该VI也可在LabVIEW示例查找器中找到。要以这种方式查找VI,请打开VI并转到位于窗口顶部任务栏中的帮助>>查找示例。示例查找器加载后,搜索“measure angular position”并选择名为“Measure Angular Positon.vi”。


VI打开后,为正在使用的myDAQ设备(ctr0)选择合适的设备和通道。接下来,选择解码类型。


图4-VI前面板


解码方案之间的区别在于正在计算信号的哪个边缘。在“X1”解码中,仅计算通道A信号的上升沿,这给出了与所用编码器每转脉冲数相等的离散点数。


如果使用“X2”解码,则每转的点数可以加倍(分辨率减半)。这是通过计算通道A信号的上升沿和下降沿来实现的。


最后,“X4”解码对通道A和B的上升沿和下降沿进行计数,从而获得最佳分辨率(是“X4”的1倍)。


更多X1、X2、X4的详细说明,参见《LabVIEW编码器测量 20230205.doc》


如果使用Z索引,请按“启用Z索引”按钮并将“Z索引值”和“Z索引阶段”设置为适当的值。


需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。

相关文章
|
7月前
|
算法
【MATLAB】语音信号识别与处理:卷积滑动平均滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:卷积滑动平均滤波算法去噪及谱相减算法呈现频谱
128 0
|
7月前
|
算法
【MATLAB】语音信号识别与处理:一维信号NLM非局部均值滤波算法去噪及谱相减算法呈现频谱
【MATLAB】语音信号识别与处理:一维信号NLM非局部均值滤波算法去噪及谱相减算法呈现频谱
157 1
|
7月前
|
计算机视觉
OpenCV(二十七):图像距离变换
OpenCV(二十七):图像距离变换
74 0
|
7月前
|
资源调度 算法
[Halcon&测量] 一维测量
[Halcon&测量] 一维测量
230 0
[Halcon&测量] 一维测量
|
7月前
|
文字识别 Python
Halcon 学习笔记五:几何定位+仿射变换+测量
Halcon 学习笔记五:几何定位+仿射变换+测量
716 0
|
7月前
Halcon&测量] 模糊测量
Halcon&测量] 模糊测量
146 0
|
7月前
[Halcon&测量] 两线直线的角度测量
[Halcon&测量] 两线直线的角度测量
153 0
|
机器学习/深度学习 传感器 算法
【红外与可见光图像融合】离散平稳小波变换域中基于离散余弦变换和局部空间频率的红外与视觉图像融合方法(Matlab代码实现)
【红外与可见光图像融合】离散平稳小波变换域中基于离散余弦变换和局部空间频率的红外与视觉图像融合方法(Matlab代码实现)
|
传感器 数据采集 算法
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
【使用 DSP 滤波器加速速度和位移】使用信号处理算法过滤加速度数据并将其转换为速度和位移研究(Matlab代码实现)
175 0
|
机器学习/深度学习 算法 自动驾驶
基于图像特征检测——使用相位拉伸变换(Matlab代码实现)
基于图像特征检测——使用相位拉伸变换(Matlab代码实现)
127 0