站内搜索
发作品签到
HARTLink便携式HART手操器
专业版

HARTLink便携式HART手操器

简介

基于 CH32L103 + DS8500 的便携式HART手操器,支持 OLED 本地调节、实现1200Hz/2200Hz FSK 信号的调制、解调实现与仪表的通讯、支持上位机更多命令

简介:基于 CH32L103 + DS8500 的便携式HART手操器,支持 OLED 本地调节、实现1200Hz/2200Hz FSK 信号的调制、解调实现与仪表的通讯、支持上位机更多命令
星火计划2026
复刻成本:100

开源协议

CC BY-NC-SA 4.0

(未经作者授权,禁止转载)
创建时间:2026-07-03 16:06:40更新时间:2026-07-16 11:51:32

描述

HARTLink M1|便携式 HART 手操器与 USB 透传工具

HARTLink M1 便携式 HART 手操器封面

> 一台装进口袋的小型 HART 调试工具:本机负责安全读取,电脑负责复杂操作。 连接现场时,USB 仅为 HARTLink 本机供电,4–20 mA/HART 回路需要独立外部供电。

掌上 HART 手操器
掌上尺寸,本机读取
本机与 USB 双模式
OLED 手操 + USB 透传
开放工程资料
原理图、固件与工程资料
HART FSK 实测波形
HART FSK 实测波形
安全只读菜单
现场设备安全只读菜单
USB HID IAP 在线升级
USB HID IAP 在线升级

项目简介

HARTLink M1 是一套面向学习、实验和现场调试的便携式 HART 工具。硬件以 CH32L103F8U6 为主控,集成 HART 调制解调、128×64 OLED、旋转编码器、蜂鸣器、USB Type-C 和回路接口;固件提供设备发现、基础变量读取、本地轮询、诊断状态查看、USB CDC 原始帧透传以及 USB HID IAP 升级。

项目的设计边界很明确:

  • 不连接电脑时,通过屏幕和编码器完成扫描、身份识别、PV/SV/TV/QV、环路电流、量程与状态等基础读取。
  • 连接电脑时,HARTLink 作为 USB 与 HART 物理层之间的原始数据通道,复杂命令由上位机组织。
  • 本机对现场设备只读,不在掌上菜单中提供会修改仪表参数或状态的命令,降低误触风险。
  • USB 不给 4–20 mA 回路供电。HARTLink 本机由 USB 供电,现场仪表与回路必须由外部电源或 PLC/DCS 供电。

这是一套源码开放、面向非商业用途的工程项目,不是商业校验仪或安全认证设备。用于真实工业过程前,请先确认回路条件、作业权限和现场安全要求。

核心功能

功能说明
便携本机操作128×64 SSD1306 OLED、SIQ-02FVS3 旋转编码器、按键与蜂鸣器,中英文菜单
设备发现扫描轮询地址 0–15,通过 Cmd0 缓存设备身份、HART 版本与长地址
安全只读命令本机提供 Cmd0/1/2/3/7/9/12/13/14/15/20/48 等读取命令
数据显示显示 PV/SV/TV/QV、环路电流、百分比、量程、状态及常用工程单位
自动轮询可选择 Cmd1 或 Cmd3,并在本机调整轮询地址与周期
长文本适配结果先停留 0.8 秒,再按 0.25 秒/字符循环滚动
USB 透传USB CDC 虚拟串口双向转发原始 HART 字节流
总线仲裁USB 主机活跃时本机显示 HOST BUSY,本地命令不会抢占 HART 总线
在线升级常驻 Bootloader,支持 USB HID IAP;另保留 USART1 备用 IAP
设置保存OLED 亮度、蜂鸣器音量和菜单语言保存到独立 Flash 设置区

> 这里的“只读”是指本机不会向现场 HART 设备发送写参数命令;亮度、音量、语言等 HARTLink 自身设置仍可在本机保存。

硬件组成

模块主要器件 / 作用
主控CH32L103F8U6,RISC-V MCU,系统时钟 48 MHz
USB 与电源USB Type-C 接口、CC 下拉、电源与数据线 ESD 保护、3.3 V LDO
显示1.3寸SSD1306 128×64 OLED,I²C 接口
人机交互SIQ-02FVS3 A/B 相旋转编码器与按键、4 kHz 蜂鸣器驱动
HART 调制解调DS8500 HART modem,连接 MCU 的 TX、RX、RTS 与载波检测信号
回路模拟前端HR228434 变压器、RC 网络、TS5A3167 模拟开关、LMV321 运放
接口保护回路侧串联阻抗与 SMBJ36CA 瞬态抑制器件

关键参数

项目参数
产品型号HARTLinkM1
当前固件V1.0.1
MCUCH32L103F8U6
系统时钟48 MHz HSI,USBCLK Div1
HART 串口USART2,1200 baud,8 数据位、奇校验、1 停止位(8O1)
本机扫描范围轮询地址 0–15
HART 前导码默认 5 字节,并根据设备响应自适应,最大 20 字节
显示器1.3寸SSD1306,128×64,I²C
本机操作旋转编码器旋转、短按、长按,长按阈值 800 ms
USB 运行接口USB CDC,设备名 HARTLink CDC,VID:PID 1A86:FE0C
USB 升级接口USB HID,设备名 CH32L103 IAP,VID:PID 1A86:FE17
备用升级接口USART1,PA9/PA10,115200 8N1
供电方式USB 5 V 为 HARTLink 本机供电,板上转换为 3.3 V
回路供电不提供;4–20 mA/HART 回路必须外部供电

信号链与工作原理

HARTLink 的工作链路可以概括为:

OLED / 编码器
       │
       ▼
CH32L103F8U6 ── USART2,1200 baud 8O1 ── DS8500 HART modem
       ▲                                      │
       │                                      ▼
USB CDC 原始帧透传                    RC 网络 / 变压器 / 保护
       ▲                                      │
       │                                      ▼
  Chrome / Edge / 上位机                4–20 mA HART 回路
  • 发送方向:MCU 生成 HART 帧,经 USART2 送入 DS8500;调制后的 FSK 信号再经过耦合、滤波和保护网络叠加到回路。
  • 接收方向:回路中的 FSK 信号经模拟前端送入 DS8500 解调,MCU 接收字节并进行帧校验、命令解析和数据显示。
  • 收发控制:MCU 使用 HART_RTS 控制收发状态,并读取载波检测信号,减少总线冲突。
  • 主机桥接:USB CDC 收到的普通数据按原始字节送往 HART 物理层,HART 返回数据也原样上传;本机只额外识别精确匹配的版本查询字符串。

HART 使用 1200 Hz / 2200 Hz FSK 在 4–20 mA 模拟量上叠加数字通信。它不会替代回路电流与回路电源,因此正确的负载、电源和并联位置仍是能否通信的前提。

接线方法

HARTLink 独立 24 V 回路与 PLC/DCS 回路接线示意

方案 A:独立 24 V 实验回路

  1. 外部 24 V 电源、HART 仪表和约 250 Ω 负载电阻串联组成电流回路。
  2. HARTLink 的两根测试线跨接在 250 Ω 电阻两端(无极性)。
  3. 使用 USB 线给 HARTLink 本机供电。
  4. 确认回路电流和接线无误后,再开始扫描设备。

方案 B:现有 PLC / DCS 回路

  1. 先确认现有回路已经由 PLC/DCS 或独立电源供电,并具备适合 HART 通信的负载条件。
  2. 将 HARTLink 并联到现场仪表端子或指定测试点(无极性)。
  3. USB 仍只给 HARTLink 本机供电,不参与现场回路供电。
  4. 停止可能与手操器冲突的轮询或维护操作,再进行设备扫描。

> 重要:不要把 USB 5 V 当作仪表回路电源,也不要让 HARTLink 承担 4–20 mA 回路供电。 接入真实工艺设备前,应确认防爆分区、接地、隔离、回路负载和作业许可。

本机操作

快速开始

  1. 首次制作时,使用 WCH-Link 或兼容下载器烧录完整固件 HARTLink.hex
  2. 用 USB 数据线给 HARTLink 供电,等待 OLED 显示 HARTLink V1.0.1
  3. 按上一节完成外供电 HART 回路接线。
  4. 长按编码器进入主菜单,选择 Device → Scan 0-15
  5. 扫描到设备后,进入 HART Cmds 查看身份、PV、动态变量、环路与量程等只读信息。
  6. 需要连续观察时,在 Polling 中选择 Cmd1 或 Cmd3,并设置轮询周期。
  7. 需要复杂解析、维护或写参数时,停止本机轮询,连接 USB 上位机。

编码器手势

场景旋转短按长按
主页切换“扫描 / PV / 轮询”快捷项执行当前快捷项进入主菜单
主菜单移动选中项进入或执行返回主页
子页面移动选中项或调整本机设置确认或执行返回 / 放弃修改

本机菜单边界

页面可执行内容
HART CmdsCmd0/1/2/3/7/12/13/14/15/20 等安全读取
Device扫描地址 0–15、刷新身份、改变本地轮询地址、清除缓存
Polling开关本机轮询、选择 Cmd1/Cmd3、调整周期和地址
DiagnosticsCmd48 附加状态、Cmd9 设备变量状态、清除缓存
System亮度、蜂鸣器、语言、保存本机设置、版本、IAP 模式

Cmd11/21 需要 Tag 或 Long Tag 输入,Cmd6/17/18/19/22/38 等会改变设备状态,因此没有放进本机菜单。Cmd1/2/3/9/48 等长地址命令必须先通过 Cmd0 或扫描取得设备长地址;否则屏幕会提示 SCAN FIRST

USB 上位机与原始帧透传

推荐配合 ModeSignal 网页上位机 使用。Chrome 或 Edge 支持 Web Serial,可直接在 HTTPS 页面中选择 HARTLink CDC 对应的串口。

PixPin_2026-07-16_11-16-41.gif

  1. 用支持数据传输的 USB 线连接电脑与 HARTLink。
  2. 打开 ModeSignal,点击串口连接,在浏览器授权窗口中选择 HARTLink CDC
  3. 设置目标轮询地址,先执行扫描或 Cmd0,再读取变量或执行其他功能。
  4. 使用本机菜单前先停止上位机轮询;主机仍在通信时,OLED 会显示 HOST BUSY

HARTLink 的 USB 功能是原始 HART 帧双向透传,并不在设备内部实现完整 DD 库、厂商私有命令或所有参数编辑界面。因此:

  • 能识别哪些设备、解析哪些字段、是否支持写参数,取决于所用上位机的实现。
  • 写操作还取决于现场设备是否支持、用户是否具备权限以及现场是否允许执行。
  • HARTLink 只负责传输,上位机支持某项功能不代表本机菜单也支持该功能。
  • 执行任何写入、维护、回路测试或量程变更前,都应先评估工艺影响。

设备还支持一个不会转发到现场回路的型号/版本查询:

TX: HARTLINK:VERSION?\r\n
RX: HARTLINK:VERSION=V1.0.1;MODEL=HARTLinkM1\r\n

只有整段数据精确匹配查询命令时才由 HARTLink 响应,其余数据保持原始透传。

USB HID IAP 在线升级

首次烧录或完整恢复使用 HARTLink.hex;设备已经包含 Bootloader 后,日常升级使用 HARTLink_app.hex

  1. 在本机选择 System → IAP Mode;也可以按住编码器再上电。
  2. 设备重新枚举为 CH32L103 IAP,VID:PID 为 1A86:FE17
  3. 打开仓库内的 WCHMcuIAP_WinAPP.exe 或兼容的 WCH IAP 工具。
  4. 选择 USB HID,加载 HARTLink_app.hex 并开始下载。
  5. 下载完成后 Bootloader 自动启动应用,设备重新枚举为 HARTLink CDC

> 不要用 WCHISPStudio 给项目 Bootloader 下载 HARTLink_app.hex。WCHISPStudio 面向芯片 BootROM ISP,本项目的在线升级使用自带 Bootloader 的 IAP 协议。

Bootloader 同时保留 USART1(PA9/PA10、115200 8N1)作为备用排查通道。Flash 分区如下:

区域地址用途
Bootloader0x0000–0x4FFF常驻启动与 IAP
应用程序0x5000–0xF7FFHARTLink 主固件
设置区0xF800–0xFFFF亮度、音量和语言
IAP 请求页0x08004F00,256 BBootloader 分区内的升级请求标志

实物与实测

HARTLink 接入现场回路读取过程变量
接入 HART 回路并读取过程变量
HARTLink 掌上尺寸与 OLED 界面
掌上尺寸与中文 OLED 界面

下图为 250 Ω 回路测试中的示例 FSK 波形。示波器光标读数约为 2.2 kHz、464.5 mVpp,可观察到 HART 高频音调分量。该幅值仅对应当次回路、探头和测点条件,不应当作所有设备的统一验收阈值。

250 欧姆回路上的 HART 2.2 kHz FSK 实测波形
250 Ω 测试回路中的 2.2 kHz FSK 波形示例

目前项目实物已用于验证 USB 供电启动、OLED 与编码器交互、地址扫描、基础变量读取、本地轮询、USB CDC 枚举与透传、以及 USB HID IAP 流程。不同厂商仪表、线缆长度、回路负载和现场干扰条件不同,复刻后仍建议在自己的目标设备上完成兼容性测试。

软件结构

Bootloader/        常驻 Bootloader、USB HID 与 USART1 IAP
Core/              WCH RISC-V 核心支持代码
Debug/             调试支持
Ld/                应用与 Bootloader 链接脚本
Peripheral/        WCH CH32L103 外设库
Startup/           启动文件
User/App/          HART 帧、业务逻辑、菜单与 UI
User/Bsp/          OLED、编码器、蜂鸣器、USB、HART 物理层
User/Drv/          SSD1306 驱动与字体
User/Sys/          系统初始化、时钟与任务调度
tools/             固件合并与 IAP 诊断脚本

应用程序采用简单的轮询式任务调度:系统 Tick 驱动 UI、编码器、蜂鸣器、本地轮询、USB 桥接和 HART 接收组帧。上位机通信具有更高优先级;USB 最近有输入或仍有待转发数据时,本机不会抢占总线,也不会进行 Flash 擦写。

源码可在 Windows 10/11 下使用 MounRiver Studio 2 自带的 WCH RISC-V Embedded GCC 或兼容工具链构建:

make all

构建产物包括完整固件、应用固件和独立 Bootloader;首次烧录与在线升级所用文件不要混淆。

已知限制与安全边界

  • 本机菜单只读:面向现场设备的写参数、维护和 DD 相关复杂功能不在本机实现。
  • 上位机能力不等于硬件能力:USB 仅透传原始帧,设备库、DD、私有命令、写入流程与界面均取决于上位机。
  • 不提供回路电源:USB 只为 HARTLink 本机供电,现场 4–20 mA/HART 回路必须外供电。
  • 本机扫描地址为 0–15:超出此范围的寻址或特殊网络场景需要由上位机处理并自行验证。
  • 长地址命令先扫描:未取得设备长地址时,本机会提示 SCAN FIRST
  • 主机优先:USB 通信期间本机可能提示 HOST BUSY,这是为避免两个主站同时抢占总线。
  • 屏幕空间有限:长结果采用滚动显示,复杂结构和厂商扩展数据更适合在上位机查看。
  • 兼容性需实机验证:不同 HART 修订、厂商扩展、回路阻抗和干扰环境可能影响结果。
  • 非认证仪器:本项目按“现状”提供,不替代经过计量、EMC、防爆或功能安全认证的专业设备。
  • 许可限制:项目允许学习、研究、实验等非商业用途;商业生产、销售、付费集成或用于商业产品需另行书面授权。

授权、第三方代码与免责声明

HARTLink 固件、软件、文档、图片、硬件设计文件及衍生产品资料采用 PolyForm Noncommercial License 1.0.0,仅允许许可证定义的非商业用途。商业制造、销售、转售、付费集成或用于商业产品/服务,需要先取得版权所有者的单独书面授权。

Core/Peripheral/Startup/ 及其他带 WCH 版权头的文件属于南京沁恒微电子提供的第三方代码,继续适用文件中的原始声明,且仅可用于南京沁恒生产的微控制器。第三方器件、商标和工具的权利归各自权利人所有。

项目按“现状”提供,不附带任何保证。HART 设备可能连接真实工业过程;涉及参数写入、量程修改、回路测试、维护模式或停机风险的操作,应由具备相应权限和经验的人员执行。作者不对因接线、复刻、使用或修改本项目造成的设备损坏、过程异常或其他损失承担责任。

如果这个项目对你有帮助,欢迎在嘉立创开源硬件平台点赞、收藏、复刻并反馈测试结果;也欢迎通过 GitHub Issue / Pull Request 提交兼容性记录和改进建议。

PixPin_2026-07-16_11-12-26.jpg

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
1
HARTLink上盖.step
7
2
HARTLink底壳.step
7

附件

序号文件名称下载次数
1
Video Project (1).mp4
1
2
HARTLink.hex
7
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航