站内搜索
发作品签到
4-20mA/0-10V信号发生器
专业版

4-20mA/0-10V信号发生器

简介

基于 CH32V003F4U6 + GP8630 的便携式模拟量输出控制器,支持 OLED 本地调节、0-10 V / 4-20 mA 输出、波形输出和Modbus RTU 网页上位机控制。

简介:基于 CH32V003F4U6 + GP8630 的便携式模拟量输出控制器,支持 OLED 本地调节、0-10 V / 4-20 mA 输出、波形输出和Modbus RTU 网页上位机控制。
星火计划2026
复刻成本:60

开源协议

CC BY-NC-SA 4.0

(未经作者授权,禁止转载)
创建时间:2026-06-17 12:52:42更新时间:2026-07-03 11:53:36

描述

AOMaster 便携式模拟量输出控制器

aomaster-open-source-home.png

快速入口

入口链接
GitHub 开源资料https://github.com/txp666/AOMaster
3D 模型下载MakerWorld AOMaster 3D 打印模型
网页上位机https://modusignal.cn/

项目简介

AOMaster 是基于 CH32V003F4U6 + GP8630 的便携式模拟量输出控制器,面向工程调试、设备输入验证、教学演示和二次开发。设备支持 0-10 V 电压输出4-20 mA 电流输出(两线制:24V环路电压)、OLED 本地读数、旋转编码器调节、Flash 参数保存,以及 USART1 / Modbus RTU 网页上位机控制。

这个项目的目标是做一个随手可用的小型模拟量信号源:现场调试时可以直接给 PLC、仪表、采集卡或传感器输入链路提供稳定电压/电流,也可以通过网页上位机配置波形、观察回读曲线和导出数据。

taobao-01-main-aomaster.pngtaobao-02-output-capability.png
taobao-03-browser-host.pngtaobao-04-core-specs.png
15-total-spec-table.png17-application-scenes.png

核心功能

功能说明
电压输出0-10 V 电压输出,最大 0-12 V
电流输出4-20 mA 电流输出,最大 0-24 mA
本地显示OLED 显示当前模式、输出值、步进档位、电池/状态信息
本地调节旋转编码器调节输出值,短按切换步进档位,长按进入菜单
波形输出支持恒定、阶跃、斜坡、方波、三角波、正弦波
参数保存输出模式和关键参数写入 Flash,上电恢复上次状态
上位机控制USART1 / Modbus RTU,支持寄存器写入、轮询回读和曲线监测
低功耗空闲主循环空闲时进入 WFI,由定时器、编码器或串口中断唤醒

硬件组成

模块型号/接口作用
主控 MCUCH32V003F4U6RISC-V 内核,负责 UI、波形、Modbus 和外设调度
模拟输出芯片GP8630B生成模拟量输出,覆盖电压/电流调试场景
OLED 显示SSD1306,I2C显示当前输出模式、数值、菜单和状态
旋转编码器SIQ-02FVS3本地调节输出值和菜单选择
USB 串口CH340NType-C 连接电脑,提供上位机串口通信
蜂鸣器PC0 控制旋转和按键声音反馈
外壳3D 打印结构件便携封装,模型见 MakerWorld

整机功耗

500R负载 12V输出500R负载 24mA输出空载
<160mA<160mA<10mA

输出纹波 / 噪声测试

AC 耦合,10× 探头,时间基准为 20 µs/div,采样率为 500 MS/s,并开启 DSP/20M带宽限制。

  • 输出:5 V / 12 mA 1.2 倍超量程模式:0-12V / 0-24mA
  • 负载:500R
  • 测量位置:负载两端
  • 耦合方式:AC
  • 探头倍率:10×
  • 带宽限制:已开启

4f9c68a93bd452c2f08b806f1e2491ac.jpg

5V输出

峰峰值范围约为 28.9 mVpp ~ 262.1 mVpp,平均值约为 97.31 mVpp

测试条件:

747cdafc2154373f4b3112d51fb860ba.png

12mA输出

峰峰值范围约为 31.33 mVpp ~ 179.8 mVpp,平均值约为 104.9 mVpp

cf20c22e4b54edb4f2acbc6e6b4a3748.png

整体纹波表现满足普通 PLC/仪表模拟量输入调试需求,但输出端仍存在一定开关电源尖峰和高频噪声;该设备定位为便携式模拟量信号源,不建议作为高精度低噪声校准源使用。
可优化PCBLayout分割模拟数字地和增大开关电源输出电容尝试减小纹波。

软件结构

目录内容
User/main.c程序入口,初始化系统并进入主循环
User/Sys/系统层:时基、调度、日志、电源空闲
User/Bsp/板级支持:I2C、编码器、蜂鸣器
User/Drv/芯片驱动:SSD1306、GP8630
User/App/应用层:状态机、UI、设置保存、信号输出、Modbus 协议
docs/images/系统概览、硬件模块、上位机连接和轮询流程图

主循环结构:

main
  -&gt; System_Init()
  -&gt; App_Begin()
  -&gt; while(1)
       System_Update()
       App_Update()
       App_SerialPoll()
       Power_Idle()

本地操作

操作作用
旋转编码器增减当前输出值,或在菜单中移动光标
短按编码器切换步进档位,或确认菜单项
长按编码器进入菜单,或返回上一级

主菜单包含:

菜单项功能
Output Mode选择 0-10 V 电压模式或 4-20 mA 电流模式
Signal Gen配置本地信号发生器,选择波形、低值、高值和周期
Calibrate进入 0/10 V 或 4/20 mA 两点校准流程
Brightness调整 OLED 亮度
Status查看 GP8630 状态、I2C 地址和错误计数

网页上位机

  1. 使用 Type-C 数据线连接电脑和 AOMaster。
  2. 在 Chrome / Edge 中打开 modusignal 上位机
  3. 选择 AOMaster,传输方式选择 Serial
  4. 串口参数保持默认:115200 8N1
  5. 连接后可设置输出模式、输出值、波形参数,并查看设定曲线和实际输出曲线。

上位机主要能力:

功能说明
串口连接使用 Web Serial 连接 CH340N 串口
参数写入写入输出类型、波形、目标值、周期、占空比等参数
轮询回读读取当前实际输出值,区分电压/电流单位
曲线监测展示设定曲线和实际输出曲线
数据导出支持 CSV 导出,便于记录和复盘

复杂环境中连接上位机建议通过USB隔离器

微信图片_20260701170202_128_46.jpg

Modbus RTU 寄存器

上位机使用 Modbus RTU 功能码 0x03 一次读取 0x0000..0x0006 共 7 个保持寄存器。典型轮询请求:

01 03 00 00 00 07 04 08
地址读写名称含义
0x0000R/WSIGNAL_TYPE0=current1=voltage
0x0001R/WWAVEFORM0=constant1=step2=ramp3=square4=triangle5=sine
0x0002R/WVALUE_A常量值/低值;阶跃模式为点数
0x0003R/WVALUE_B高值;阶跃模式为单步保持时间
0x0004R/WPERIOD_MS周期;阶跃模式为循环次数
0x0005R/WDUTY方波占空比
0x0006RACTUAL当前实际输出,只读
0x0007..0x0016R/WSTEP_SEQUENCE阶跃序列值,最多 16 点

原始值缩放规则:raw / 1000。例如 10600 表示 10.600 V10.600 mA

元件购买表

类别元件/型号用途
MCUCH32V003F4U6 主控,RISC-V 48 MHz
模拟输出GP8630B0-10 V / 4-20 mA 模拟量输出
显示 SSD1306 OLED 本地菜单和输出值显示
交互SIQ-02FVS3 旋转编码器旋转调节、短按切换、长按菜单
USB 串口CH340NType-C 串口通信
接口Type-C 母座供电与数据连接
提示蜂鸣器旋转/按键声音反馈
接线鳄鱼夹/测试线输出端接线测试
套装AOMaster 整机带线成品

授权说明

仅允许非商业用途。

设计图

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

BOM

暂无BOM

3D模型

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

附件

序号文件名称下载次数
1
AOMaster.hex
16
2
3d8dcc7bd341b395fc28886f869e9076.mp4
9
3
88329feacb7d2d10a93af59527acb84d.mp4
6
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

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

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

底部导航