【实测教程】HTOOL-SL22 22MHz~22.6GHz 便携式射频信号源完整使用指南(本地操作 + 上位机程控 + SCPI 指令 + 固件升级) 📅 2026/7/26 8:54:32 产品概述与核心硬件指标1.1 设备定位HTOOL-SL22 是一款轻量化、高性价比微波信号发生器主打便携 宽频 程控可控替代台式高端信号源做中小型射频研发、产线批量测试、高校微波教学实验。1.2 关键硬件参数频率范围45MHz ~ 22600MHz22.6GHz频率分辨率1kHz相位噪声-236dBc/Hz高纯净输出适配接收机灵敏度测试、本振模拟输出通道双通道独立射频输出工作模式点频 POINT、单次扫频 SINGLE SWEEP、循环扫频 CYCLIC SWEEP输出功率档位P0~P78 档功率由低至高可调控制方式本地触屏按键、Type-C USB 串口上位机、标准 SCPI 程控指令多语言支持中文 / 英文 / 俄文界面切换升级方式硬件按键进入 IAP 固件升级模式免拆机更新HTOOL-SL22整机外观整机正面 4 个实体功能按键搭配液晶触控屏上下两路 SMA 射频输出接口整机体积小巧支持桌面便携使用。二、下位机本地面板完整操作教程2.1 右侧实体按键功能说明POINT点频模式快捷键短按直接进入单频输出设置界面SINGLE SWEEP单次扫频快捷键短按配置单次频段扫描参数CYCLIC SWEEP循环扫频快捷键短按配置不间断循环扫频DEVICE设备信息 / 系统设置入口包含语言、功率、固件版本、设备 ID 查看同时是固件升级模式触发按键2.2 三种核心工作模式实操2.2.1 点频模式单频载波输出单次扫频界面点频逻辑一致操作步骤短按POINT进入点频界面点击频率输入框设置目标频率单位 MHz范围 45~22600MHz最小步进 0.001MHz界面右侧滑动开关右滑开启射频输出左滑关闭功率档位在DEVICE界面预先选择 P0~P7。2.2.2 单次扫频模式单次扫频从起始频率到截止频率步进扫描一轮扫描完成自动关闭射频输出。参数配置项开始频率扫频起始点MHz结束频率扫频终止点MHz步长每一跳频的频率间隔MHz单步时间每个频点保持时长单位 ms操作流程短按SINGLE SWEEP→填写四项参数→滑动开关开启执行一轮后自动断电输出。2.2.3 循环扫频模式循环扫频界面界面参数与单次扫频完全一致区别在于开启后持续往复扫频不会自动停止需手动滑动开关关闭射频。适用场景滤波器带宽连续测试、宽带接收机抗干扰长时间测试。2.3 DEVICE 设备信息界面系统设置设备设置界面语言切换下拉框可选中文 / 英文 / 俄文切换后点击任意功能按键刷新界面生效功率档位P0~P7信号输出功率逐级增大设备信息型号、频率区间、固件版本、设备 ID、官方网址上位机连接时会读取该信息校验设备。三、PC 上位机软件控制操作指南3.1 硬件连接方式使用 Type-C 数据线连接设备与电脑设备内置 USB 转串口无需手动配置波特率软件自动识别串口。上位机软件主界面3.2 上位机分区功能拆解串口连接区刷新串口扫描电脑全部 COM 口连接串口选中对应 COM 口点击连接连接成功自动读取设备 Mod/ID/Ver 信息连接前置条件型号下拉框选择SL22否则通信失败。点频控制区设置目标频率点击「发送」下发至设备搭配「信号源启停」开关控制输出。扫频控制区扫频模式下拉选择「单次 / 循环」填写起始 / 结束 / 步长 / 单步时间点击发送一键配置扫频参数。通道与功率双通道 CH1 可选功率上下箭头调整 0~7 档位对应硬件 P0~P7。IAP 固件升级入口独立升级按钮跳转固件更新界面。四、IAP 固件升级完整流程避坑重点4.1 进入升级模式硬件操作DEVICE升级按键位置设备断电按住右侧DEVICE按键不松手接通电源屏幕点亮后松开 DEVICE此时设备进入 IAP 固件下载模式。4.2 上位机升级软件操作步骤加载固件界面扫描串口界面下载成功界面设备 Type-C 连接电脑打开 IAP 升级窗口点击【加载固件】选择.bin固件文件注意固件存放路径不能包含中文否则加载失败点击【扫描】勾选识别到的 COM 端口确认波特率 115200点击【下载】日志窗口输出Successfully即代表升级完成设备自动重启。4.3 升级常见坑路径含中文 → 固件加载失败未按住 DEVICE 上电 → 无法进入升级模式升级中途拔线 → 设备变砖需重新进入 IAP 重刷。五、SCPI 程控指令集自动化测试核心5.1 通信前置规则设备 USB 上电后第一条发送指令必须为*IDN?\r\n设备收到后才会进入 SCPI 标准指令模式所有指令均为 ASCII 字符串每条指令末尾必须携带换行符\r\n若开机后先用自定义协议连接并异常断开SCPI 指令会失效需重启设备。六、典型应用场景射频接收机灵敏度测试超低相噪信号模拟本振点频输出测试接收阈值滤波器 / 天线带宽测试单次 / 循环扫频快速扫测通带、驻波特性产线自动化批量测试Python/LabVIEW 调用 SCPI 指令搭建自动测试台高校微波教学实验宽频覆盖 45M~22.6G满足射频通信、微波原理实验雷达、卫星通信简易本振模拟22.6GHz 上限覆盖主流微波频段。七、使用注意事项射频输出口禁止短路空载使用避免烧毁内部射频芯片切换功率档位时建议先关闭射频输出SCPI 通信异常时重启设备重新发送*IDN?\r\n初始化固件升级务必保证供电稳定不要中途断电上位机连接失败优先检查型号是否选 SL22、USB 线是否数据传输线、串口是否被其他软件占用。Python 完整自动化控制源码可直接运行6.1 环境依赖安装bash运行# 安装串口通信库 pip install pyserial6.2 完整封装类支持点频、扫频、功率、启停python运行import serial import serial.tools.list_ports import time class HTOOL_SL22: def __init__(self, com_port: str, baudrate: int 115200): 初始化信号源串口连接 :param com_port: 串口名如 COM3 :param baudrate: 固定115200 self.ser serial.Serial( portcom_port, baudratebaudrate, timeout1, write_timeout1 ) # 必须先发送初始化指令进入SCPI模式 self.send_cmd(*IDN?) time.sleep(0.2) print(设备初始化完成设备信息, self.read_response()) def send_cmd(self, cmd: str): 发送SCPI指令自动追加\r\n cmd_full cmd \r\n self.ser.write(cmd_full.encode(ascii)) def read_response(self) - str: 读取设备返回数据 resp self.ser.readline().decode(ascii).strip() return resp def set_rf_state(self, enable: bool): 射频输出开关 TrueON FalseOFF state ON if enable else OFF self.send_cmd(fGENErator:STATus {state}) time.sleep(0.1) def get_rf_state(self) - str: 查询射频输出状态 ON/OFF self.send_cmd(GENErator:STATus?) return self.read_response() def set_power(self, level: int): 设置输出功率 0~7 对应P0~P7 if not 0 level 7: raise ValueError(功率档位仅支持0~7) self.send_cmd(fFREQuency:LOPW {level}) time.sleep(0.1) def get_power(self) - int: 读取当前功率档位 self.send_cmd(FREQuency:LOPW?) return int(self.read_response()) def set_point_freq(self, freq_mhz: float): 设置点频单位MHz范围45~22600 if not 45.0 freq_mhz 22600.0: raise ValueError(频率超出45MHz~22600MHz范围) self.send_cmd(fGENErator:POINt {freq_mhz:.3f}) time.sleep(0.1) def get_point_freq(self) - float: 读取当前点频 self.send_cmd(GENErator:POINt?) return float(self.read_response()) def set_single_sweep(self, start: float, stop: float, step: float, t_ms: int): 单次扫频配置 start:起始MHz stop:截止MHz step:步长MHz t_ms:单步时间ms cmd fGENErator:SINGle {start:.3f},{stop:.3f},{step:.3f},{t_ms} self.send_cmd(cmd) time.sleep(0.1) def set_cyclic_sweep(self, start: float, stop: float, step: float, t_ms: int): 循环扫频配置 cmd fGENErator:CYCLe {start:.3f},{stop:.3f},{t_ms} self.send_cmd(cmd) time.sleep(0.1) def close(self): 关闭串口 self.set_rf_state(False) self.ser.close() print(串口已关闭射频输出已断开) # ------------------- 测试示例 ------------------- if __name__ __main__: # 1. 扫描本机所有串口 ports serial.tools.list_ports.comports() print(当前可用串口列表) for p in ports: print(f - {p.device}) # 2. 修改为你的设备COM口例如 COM5 COM_NAME COM3 sig HTOOL_SL22(com_portCOM_NAME) # 示例1设置2.4GHz点频功率3档开启射频 sig.set_power(3) sig.set_point_freq(2400.000) sig.set_rf_state(True) print(f当前输出频率{sig.get_point_freq()} MHz) print(f射频状态{sig.get_rf_state()}) time.sleep(5) # 持续输出5秒 # 示例2单次扫频 45MHz~1000MHz步长50MHz单步100ms sig.set_single_sweep(start45, stop1000, step50, t_ms100) sig.set_rf_state(True) print(开始单次扫频完成后自动关射频) time.sleep(20) # 关闭设备 sig.close()6.3 代码使用说明修改代码中COM_NAME COM3为设备实际串口程序启动自动发送*IDN?初始化 SCPI 通信内置异常校验频率超限、功率档位非法会直接抛出提示内置延时保证指令下发稳定避免串口丢包退出时自动关闭射频输出保护射频端口。七、典型应用场景射频接收机灵敏度测试超低相噪信号模拟本振点频输出测试接收阈值滤波器 / 天线带宽测试单次 / 循环扫频快速扫测通带、驻波特性产线自动化批量测试Python/LabVIEW 调用 SCPI 指令搭建自动测试台高校微波教学实验宽频覆盖 45M~22.6G满足射频通信、微波原理实验雷达、卫星通信简易本振模拟22.6GHz 上限覆盖主流微波频段。八、使用注意事项射频输出口禁止短路空载使用避免烧毁内部射频芯片切换功率档位时建议先关闭射频输出SCPI 通信异常时重启设备重新发送*IDN?\r\n初始化固件升级务必保证供电稳定不要中途断电上位机连接失败优先检查型号是否选 SL22、USB 线是否数据传输线、串口是否被其他软件占用。九、总结HTOOL-SL22 凭借 45MHz~22.6GHz 超宽频、便携机身、完整 SCPI 程控、低成本优势是中小研发团队、实验室替代进口台式信号源的高性价比方案。本文完整覆盖本地按键操作、PC 上位机控制、固件升级、SCPI 指令、Python 自动化控制全流程工程师可直接参考完成手动测试与自动化测试脚本开发。后续会补充 LabVIEW 程控范例、滤波器自动扫频数据采集完整工程感兴趣可以收藏关注。附录设备官网https://www.htool.net.cn/说明书版本V1.0.12026.3.12 更新配套上位机软件射频信号源 V1.0.5Python 依赖pyserial3.5