元驭机器人元驭机器人Hall Lab / 教学 Wiki
本页目录 8 个小节

学习路线

先看原理,再做直线板;读数和校准通过后,再换旋转版。下面按这个顺序操作,每一步的具体步骤在 八个实验。已有板子可从第 2 步开始,先确认接线、供电和固件版本。

0 · 不接硬件

先打开 模型与讲解动画,在直线模式移动磁铁,对照三路曲线,再看旋转版。也可以运行 python software/examples/read_sensor.py --demo;两处都是教学示意,不是实物数据。

这里先对照一下单位:10 mm = 0.01 m。三颗传感器读到的电压不同,算法利用这些差别估计位置。

1 · 搭建直线实验台

没有成品板时,先按 嘉立创裸 PCB 下单 准备文件并下单 HallPos 裸板,同时按 复刻清单 核对并备齐电子元件。现有 PDF 用来查图,不能直接作为制板文件;Gerber、钻孔和可核对的 BOM 尚未齐备,需先补齐并确认设计版本。层数、板厚等参数按确认后的设计填写,不从图片猜测。

收到裸板后按 手工焊接 装配、检查,再做首次上电。已有焊好成品板的读者可跳过下单和焊接,直接从断电检查开始。

直线实验用 Φ10 × 3 mm 轴向充磁磁铁,之后的旋转实验用 Φ6 × 3 mm 径向充磁磁铁;另购 USB 转 RS485 模块。机械目录中的两个 STEP 可以打印成测试结构,再准备参考尺或位移台和限流电源。按 硬件接线 确认 HallPos 的电源、RS485、SWD 和 U1/U2/U4。

断电查线,限流上电,测量 3.3 V。记录板号、供电、磁铁方向与实际气隙。空白板或固件不明时,先 编译与烧录。

2 · 观察三路原码

先把磁铁移远,记录静态 ADC;再沿导向移动,画出三路原码随参考位置变化的曲线。出现削顶或响应很弱,先查接线、极性和气隙。

看到三路原码变化后,再看 采样说明,了解为什么原码仍是 12 位,以及原码、位置值分别表示什么。

3 · 读出直线位置

读取 GET_INFO,确认类型。首次启动和恢复出厂时默认是角度,直线 PCB 需要选择 profile=2。切换会清除旧校准和零点。

按 校准步骤 拿开磁铁采基线,放回磁铁后比较几个已知位置,再设机械零点。看输出是否单调、方向是否正确;±15 mm 是内部限幅,实际好用的范围要靠参考位置比较。

4 · 通过 RS485 读取

先接一台设备,用 115200 / 8N1 和轮询模式。对照 协议参考 看懂一组 GET_INFO、GET_DATA 请求和应答,再用 读取示例 输出米单位。

分清 ID、测量 profile 和通信 mode。拔掉通信线时,程序应报告超时,不把上一帧继续当成新数据。

5 · 换成旋转编码器

按 PCB 与机械 换用旋转布局和磁铁安装。供电、MCU、ADC 和通信可以复用,传感器位置、磁铁运动、解算和校准需要改变。

选择角度 profile=1,先看三路原码,再转满至少一圈校准,最后设置机械零位。只切换 profile 不会让直线 PCB 自动成为角度编码器。

6 · 观察一圈的边界

在 359° 和 0° 附近慢转。用最短有符号角差计算,359° 到 1° 是正向 2°。再在已知角度停留,比较正转、反转和重复回零的结果。

接着看 机器人接入,分清单圈角度、主机累计圈数和掉电后恢复位置。高速旋转、丢帧或断电都会影响主机累计。

7 · 对应到机构

先记录手动滑台或夹爪的位置,再记录旋转关节。写清数字对应哪个运动件、正方向和零点在哪里,单位是 m 还是 rad,以及数据何时收到、何时停用。

这些都检查清楚后,再讨论电机闭环。把实验笔记交给同伴,让他按记录复现一次,通常比只看一条平滑曲线更容易发现遗漏。