BH38旋转编码器初步测试
■ 实验背景
在 42HS48EIS步进闭环电机最大转速 对于42HS48EIS这款步进电机和驱动合在一起的电机进行了测试,准备将其应用到实验室机械臂关节驱动中。但这款电机体积略长,现在又购得同款小体积的步进电机。通过实验确认它的一些基本应用性能。
▲ 实验电机的外观以及旋转光电编码器
在 使用高精度旋转编码器BH60测量步进电机转动角度 中介绍了BH60绝对位置高精度编码器的接口。这款编码器体积有些大。
BH38-Z06-S16384 是一款绝对14bit的位置传感器。在上述TB网站中界面中也给出了它的基本的接口协议。在 BH38-Z06数据手册 给出了详细的接口资料。
▲ BH38-Z06-S16384-MB1旋转传感器
BH38的主要特点:
- ■ RS485自由协议(或Modbus RTU)/SSI/模拟输出,方便连接各种PLC、HMI及上位机设备
■ 多用途、多功能,直接对应单圈角度、长度测量
■ 宽工作电压,极低的耗电流
■ 外部置位线设定预设位置,安装方便,无需找零
对于上述传感器的型号中对应的基本参数可以参照BH38产品的命名规则来获得:
▲ BH38-产品选型命名规则
对比 BH60绝对位置旋转编码器 可以看到这款编码器的精度提高了4倍,原来的BH60的单圈输出为12bit(4096)。
相关应用:
- 基于STC8H1K28双轴机械臂驱动模块
- 42HS48步进电机实验
- 双轴机械臂调试
01测试BH38旋转编码器
1.通讯协议
(1) 传感器接口功能定义
对比 BH60绝对位置旋转编码器编程资料 和 BH38-Z06单精度绝对值旋转编码器数据手册 中对于传感器接口定义,它们是相同的。因此后面的测试可以使用相同的 BH60绝对位置编码器测试 电路板进行测试。
▲ 传感器接口定义:BH60,BH38
(2) 传感器MODBUS协议
根据 MODBUS 协议,MODBUS对于设备的功能实现主要通过访问不同的寄存器空间来实现。下面是在 BH38-Z06单精度绝对值旋转编码器数据手册 给出的定义,对比之前的BH60编码器,它们的功能定义是完全相同的。
▲ MODBUS寄存器功能定义
2.测试实验
(1) 编码器读写MCU模块1
读写编码器的单片机模块还是使用在 基于STC8H1K28的BH60的角度读写模块 中给出的实验电路模块。
▲ 实验MCU电路板|STC8H1K28
(2) 接口制作
传感器的接口制作参考: BH60绝对位置编码器测试 中制作的方案。
▲ 传感器接口
连接传感器到实验MCU小板的接口。
(3) 测试结果
通过旋转角度,可以看到读出的数值的确是在0至16383之间变化。从而证明了该器件的:
- 是一个绝对位置传感器;
- 单圈的分辨率为14bit
- 重新上电后传感器的位置依然存在。
静止传感器不同,连续读出100个数据,数据保持恒定。这说明传感器的精度满足最小分辨率的要求。
▲ 手工旋转传感器过程中读取的100个数值
※ 结论
通过实验检验了BH38旋转旋转角度传感器的硬件接口和软件协议。验证了传感器单圈分辨率。
通过读取数据也检测传感器本身的稳定性。
对于传感器的旋转线性性、温度的稳定性等问题,有待在其它工程应用中进行检测。
在 42HS48步进电机测试实验 中使用了BH38测量步进电机输出轴的的角度信息。
▲ 将步进电机的输入与旋转角度传感器连接在一起
单片机C51工程文件:C51\STC\Test\2020\Tools\BH60ReadSTC8H1K28\BH60ReadSTC8H1K28.uvproj ↩︎
BH38旋转编码器初步测试相关推荐
- 初出茅庐的小李第36篇博客之读取旋转编码器正反转状态(arduino uno 测试)
旋转编码器的引脚 CLK(A相) DATA(B相) SWITCH VCC GND 工作原理 旋转编码器的工作原理以及如何在Arduino中使用 https://www.yiboard.com/thre ...
- linux4.6 EC11旋转编码器的驱动
最近项目使用了旋转编码器EC11,遍查内核,发现并没有它的驱动,查了查CSDN,终于找到一篇有用的.根据自己的需要和对最基础的gpio_key.c的理解,我改写出了一份EC11的专用驱动. 感谢下面博 ...
- 两款旋转编码器测量LDP3806,BH60
■ 编码器型号 用于实验室机械臂控制高精度旋转编码器: LPD3806_400BW_G5_24C BH60_Z10_M1212_MB1 通过单片机来测试两款旋转编码器的参数和基本信号. ▲ 两款旋转编 ...
- Arduino 使用 旋转编码器
相关资料链接 点这里 1.1 介绍: 本模块主要由旋转编码器组成,编码器(encoder)是将信号(如比特流)或数据进行编制.转换为可用以通讯.传输和存储的信号形式的设备.编码器把角位移或直线位移转换 ...
- 旋转编码器的原理和使用方法
一.基本原理 旋转编码器是一种机电装置,可将轴的角运动,转换为A/B两相相位偏差90°的脉冲信号,其中C是A/B信号的参考地 [1]根据A/B信号的相位关系可以获取正反转方向. [2]通过脉冲的计数可 ...
- 旋转编码器:如何在 Arduino 上使用 Keys KY-040 编码器
旋转编码器是一种输入设备,您可以在任一方向连续旋转.当您转动设备时,它会生成数字脉冲,以使用两个相控输出信号显示旋转方向.这两个输出还指示单个位置运动,因此您可以在控制面板中使用它们来增加或减少参数. ...
- Arduino使用旋转编码器
这次介绍的是我买的37款传感器套件中的旋转编码器.首先是实物图. 通过查阅资料,旋转编码器既可以左右旋转,又能当成按钮按下.首先测试一下按下的功能,该功能对应的输出引脚是SW. 测试代码如下: in ...
- 三菱PLC读取旋转编码器信号
定义: 旋转编码器是用来测量转速的工具,可将输出轴的角位移.角速度等机械量转换成相应的电脉冲以数字量输出,同时旋转编码器可以配合PWM技术实现对速度的调节. 旋转编码器有单路输出.双路输出和三路输出等 ...
- 使用Arduino开发板连接ec11旋转编码器
使用Arduino开发板连接ec11旋转编码器 因为最近要用到旋转编码器,从网上花了好长时间找了好多关于arduino使用旋转编码器的资料,总是找不到合适的,最后总结了一下(部分内容有借鉴,仅作分享, ...
最新文章
- html点击播放生日快乐歌曲大全,播放生日快乐歌曲.doc
- ArcPy学习入门(三):ArcPy 函数列表
- WEB学习-CSS盒模型
- java yii_一条路线不起作用(yii)
- 【Python+selenium Wendriver API】之鼠标悬停事件
- 计算机应用 范文,计算机应用基础(范文).doc
- 按照行数分割excel
- spring-第十篇之XML Schema的简化配置,p、c、util命名空间
- mysql bit_or() bit_count()函数
- android lottie大小,android-Lottie动画填充
- 20款英文LOGO字体
- html label 背景图片,Qt添加窗口背景图片、Label图片显示、、Label文字显示
- python语句分号_你知道分号在各种编程语言中的作用吗?
- 如何成为一个游戏制作人——第5.5章一个小游戏的框架
- 寒江独钓windows 内核安全编程学习笔记(双机调试)
- 我每年得忽悠10万程序员上车
- java实现身份证正反面图片的身份信息的识别
- 大漠穷秋叫狼哥哥要学好的书
- C++ 模板的显示具体化
- 人工神经网络基本构成有哪些,具有什么特征