
简介这份资源是艾德克斯ITECHIT6300系列三路可编程直流电源的官方用户手册型号覆盖IT6322A、IT6332A、IT6333A及其B、C版本。内容面向实验室研发、产线测试与设备维护人员用于解决程控电源的接线、面板操作、串口远程控制和故障排查。手册中说明了三路输出的电压、电流设定方法、串口命令格式与参数含义例如通过VSET 10这类命令设置输出电压、调节电流与查询状态也介绍了精度、稳定度等技术指标和安全标志含义。压缩包共1个PDF文件约2.09MB为完整中文手册含安全声明、环境条件、保固条款与操作注意事项适合作为案头速查与二次开发参考。目前已有5277人学习下载读者可据此掌握串口通信配置、命令下发流程与安全使用规范快速完成电源自动化控制与日常维护。1. 某实验室的 A 同学抱着 IT6332A 来找我说串口调了两晚发出去的命令像丢进井里某实验室的 A 同学抱着 IT6332A 来找我说串口调了两晚发出去的命令像丢进井里。他手上只有一份厂商介绍文档和一张抄来的命令表端子接对了参数却全是默认值。这类三路可编程直流电源在实验室、产线和老化台上太常见了装不好不至于炸机但会让人误以为设备坏了——实际是通信没打通、通道没选对、终止符不匹配。这篇按我平时装机的顺序走先认清型号和供电再把 RS-232、USB、GPIB、LAN 接通最后用命令把某一路的电压电流设起来并读回验证。第一次上手的人照着能跑通换过几台的人也能在版本差异上少走两步。2. 型号与上电IT6300 系列三个后缀差别在哪2.1 先看型号后缀再看单通道能力面板右下角那串型号别急着跳过。IT6300 系列按后缀分三档直接决定你能走哪条通信路。买机器的时候没在意等到写上位机才发现后面板少了一个口这种事我见过不止一次。后缀标配通信接口现场结论IT6300AIT6322A、IT6332A、IT6333AUSB RS-232想走串口选这档最省事IT6300BUSB GPIB RS-232老产线上的 GPIB 卡还能继续用IT6300CLAN USB GPIB没有 RS-232后面板 DB9 位置是空的C 系列没有串口这一条是血泪教训级别的坑。网上能找到的教程八成都是串口版照着敲命令串口助手一直显示端口打开失败人就开始怀疑是不是线坏了、电脑坏了。其实是这台机器压根没那个口。所以动手之前先做一件事把后面板拍照数一数有几个接口再回来看这张表。再看通道能力这个决定你脚本里的上限值写多少。九款型号的通道额定值只有三种组合型号CH1CH2CH3IT6322A、IT6322B、IT6322C30V / 3A30V / 3A5V / 3AIT6332A、IT6332B、IT6332C30V / 6A30V / 6A5V / 3AIT6333A、IT6333B、IT6333C60V / 3A60V / 3A5V / 3A这里要专门纠一个偏。网上流传的一些资料把 IT6332A 写成「0-30V、0-10A、300W」跟型号表对不上。以机器面板和型号表为准IT6332A 是两路 30V/6A 加一路 5V/3A。如果你按 10A 去写脚本设CURR 8的时候不会报错但输出被限幅在 6A负载一重就直接掉进恒流查半天以为是负载的问题。另外几个跟脚本相关的参数记一下分辨率 1mV/1mA支持 CH1、CH2 串联或并联来抬电压或抬电流面板能存 36 组设定定时输出范围 0.199999.9 秒带过压和过热保护断电后设定值还能保住。这些不是参数堆料后面写命令的时候都要用到——比如你要做老化循环就不必在上位机里自己写延时直接把定时器配上。2.2 供电、接地与摆放上电前必须确认的四件事第一件也是最容易出人命的底部那个 110V/220V 切换开关。出厂可能是任意一档插上就开机的后果是烧电源。开机之前低头看一眼开关位置必须和墙上插座的实际电压对上输入允许波动 ±10%频率 4763Hz。这一步花十秒钟省一台机器。第二件接地。随机配的是三芯电源线必须接到带保护接地的三芯插座上。机箱后面的保护接地端子不是装饰浮地或者用两芯插座转接测量读数会飘严重的时候还会通过测试线把干扰带进被测板。第三件电源线型号。IT-E171 到 IT-E174 是四种不同插座规格随机只配一根。买错了不用自己改线直接找经销商换。自己拿剪刀改插头的我劝一句这条线要过整机电流接虚了的发热量不是闹着玩的。第四件空间和温度。整机是 1/2 2U 体积两侧和后面要留散热空间别紧贴着别的仪器塞进机柜。上架套件是 IT-E151 和 IT-E151A注意 IT-E151A 只适配 IT6322A、IT6322B、IT6322C 这三款别的型号装不上。使用环境写在手册里的硬指标室内、040℃、湿度 20%80% 非冷凝、海拔 2000 米以内。超过 40℃ 的机房夏天很常见机器会自己降额甚至过热保护这时候别急着报修。最后一条属于玄学但确实有效开机温机半小时再开始校准和测量。冷机状态下的读数和热稳定后的读数能差出几个 mV你要是拿冷机读数去校万用表后面全是糊涂账。3. 通信接线RS-232、USB、GPIB、LAN 四条路怎么选3.1 RS-232 直连线、参数、终止符A 系列和 B 系列有 DB9 串口这是最不用装驱动的一条路也是踩坑最集中的一条路。三件事定生死线序、串口参数、终止符。线序先看随机附带的线。厂商配的是直连线如果自己找了一根交叉线Null Modem接上去现象是端口能打开、发出去没回音串口助手的接收区一片空白。分辨方法很简单拿万用表测两端 DB9 的 2 脚和 3 脚一端 2 脚对另一端 2 脚导通就是直连。我一般就用手上那根原厂线不自制。串口参数按面板菜单里的通信设置来对出厂常见是 9600 波特率、8 数据位、无校验、1 停止位、无流控。菜单里改过波特率的话上位机要跟着改。流控一定要关硬件流控打开之后很多 USB 转串口线因为没有 RTS/CTS 握手会直接卡住看着像死机。终止符是最大的黑匣子。SCPI 命令一般以换行符 LF\n结尾有些固件认 CRLF\r\n。发命令没反应的时候先把终止符换一遍再怀疑别的。# 用 pyserial 打通 RS-232先确认链路是否活着 import serial, time ser serial.Serial( portCOM5, # Windows 在设备管理器里查Linux 一般是 /dev/ttyUSB0 baudrate9600, # 必须和面板菜单里的一致 bytesize8, parityN, stopbits1, timeout1, # 读超时 1 秒避免 readline 永久阻塞 xonxoffFalse, # 软件流控关 rtsctsFalse, # 硬件流控关USB 转串口线尤其要关 ) time.sleep(0.1) # 有些转换芯片上电后需要一点时间稳住 def query(cmd, wait0.08): ser.write((cmd \n).encode(ascii)) # 先试 LF 终止符 time.sleep(wait) # 给设备留出解析时间 return ser.readline().decode(ascii, errorsignore).strip() print(query(*IDN?))这段的关键点在两个参数上。timeout1决定了读不到数据时等多久返回空串设成None会让脚本永远挂在那里排查时根本判断不出是没回还是没读完。wait0.08是发送后到读取之间的间隔短命令够用遇到MEAS:VOLT?这种要采样再回传的可以放到 0.10.2 秒。*IDN?是通用握手命令返回四段信息厂商、型号、序列号、固件版本能返回就说明线、参数、终止符全对了。3.2 USB、GPIB、LAN驱动、地址与资源字符串USB 口是最省心的但有个隐藏分支有的固件把 USB 枚举成虚拟串口USBCDC有的走 USBTMC。前者在设备管理器里会多出一个 COM 口用上面那段 pyserial 代码就能通后者不会出现 COM 口必须用 VISA 库访问。插上去发现没多出串口先别认定驱动装错了翻一下手册通讯章节确认这台机器的 USB 是哪种模式。GPIB 只有 B 系列和 C 系列有需要一台带 GPIB 卡的工控机或者 USB-GPIB 转换器。地址在面板菜单里设出厂常见是 5可改范围 031。同一个 GPIB 总线上挂两台地址相同的仪器两台都会失联这是总线级的冲突症状是单独接一台好用、并起来就乱。LAN 只有 C 系列有。菜单里能看到当前 IP改之前先跟网管确认网段别跟现场设备撞 IP。开机后先ping通再谈命令。SCPI-RAW 常用的端口是 5025具体以手册通讯章节为准端口填错的表现是 TCP 能连上但发命令没回音。import pyvisa rm pyvisa.ResourceManager() for res in rm.list_resources(): print(res) # 串口 - ASRL5::INSTR # USB - USB0::0x????::0x????::序列号::INSTR序列号直接抄打印出来的 # GPIB - GPIB0::5::INSTR5 是面板里设的地址 # LAN - TCPIP0::192.168.x.x::inst0::INSTRlist_resources()打印出来的字符串不要自己拼尤其是 USB 那串 VID/PID 加序列号手抄一个字符错就连不上。直接复制打印结果传给open_resource()。四种接口用同一套 VISA 资源字符串脚本换机器只要换这一行这是它比 pyserial 更值得用的地方。3.3 本地与远程的切换别忽略接上通信线之后面板会进入远程状态按键被锁住面板上通常有个 REMOTE 或类似的提示。这时候手按面板设电压没反应别以为按键坏了——按一下 Local 键退回本地控制或者发SYST:LOC之类的命令。写自动化脚本时反过来要注意脚本跑完不释放第二天同事上手操作会觉得机器坏了。4. 命令落地把 CH1 的电压电流设起来4.1 命令帧的拼法SCPI 主干和短命令不是一回事先统一一个概念。这台机器支持的是 SCPI 主干命令形如VOLT 12、CURR 1.5、OUTP ON而有些介绍文档里写的VSET 10这种属于某些二次封装库或者早期短命令风格的写法两者不能混用。命令集以随机光盘里那份「编程与语法指南」为准型号和固件版本不同个别命令树会差一两个节点。常用命令对照这是我现场用得最多的几条动作命令参数说明选通道INST CH1或INST:NSEL 1后续设定都作用在这个通道上设电压VOLT 12.00单位 V保留两位小数上限看型号设电流CURR 1.500单位 A同时也是恒流限值开输出OUTP ON关是OUTP OFFOUTP?查状态读实测电压MEAS:VOLT?返回当前端子的实际输出值读实测电流MEAS:CURR?带载时才有意义查错误队列SYST:ERR?返回 0 表示没有错误命令大小写不敏感volt 12和VOLT 12等价但参数必须带对单位量级。VOLT 12000不是 12000mV是 12000V会被直接判超范围。设值和查询的区别只在结尾那个问号漏掉问号就是把设定命令当查询用读回来永远是空的。4.2 设定 → 输出 → 读回的完整序列单通道设定没多少行但顺序错了结果就错。下面这段是我固化的模板改通道号和数值就能复用import serial, time ser serial.Serial(COM5, 9600, bytesize8, parityN, stopbits1, timeout1, xonxoffFalse, rtsctsFalse) time.sleep(0.1) def send(cmd, wait0.08): ser.write((cmd \n).encode(ascii)) time.sleep(wait) def ask(cmd, wait0.15): ser.write((cmd \n).encode(ascii)) time.sleep(wait) return ser.readline().decode(ascii, errorsignore).strip() send(*CLS) # 清状态和错误队列避免上次的残留干扰判断 print(ask(*IDN?)) # 握手确认链路 send(INST CH1) # 先选通道顺序不能颠倒 send(VOLT 12.00) # 设定 12V必须小于该通道额定电压 send(CURR 1.500) # 限流 1.5A负载电流超过就进恒流 send(VOLT:PROT 13.5) # 过压保护点比设定值高 10%~15% send(OUTP ON) # 打开输出缺这一步端子永远是 0V time.sleep(1.0) # 等输出建立也让读数稳定下来 print(实测电压:, ask(MEAS:VOLT?)) print(实测电流:, ask(MEAS:CURR?)) print(错误队列:, ask(SYST:ERR?))几处细节值得单独说。*CLS放在最前面是因为上一次异常退出时错误队列里可能堆着东西不清掉的话SYST:ERR?返回的不是当前这次操作的结果白查。INST CH1必须排在设定命令之前SCPI 是有状态的通道没选默认作用在面板当前通道上脚本里如果没人手动点过面板默认通道可能是 CH1 也可能不是。过压保护点别设成刚好等于设定值输出纹波和回冲会让它误触发往上留 10%15% 比较稳妥。还有一个顺序上的取舍先设电压电流再开输出还是先开输出再设我坚持前者。先开输出再设值负载会先吃到上一次的残留电压带敏感板子的时候这一下很难受。4.3 保护、定时器与保存位的参数取舍过压保护OVP是这套机器里最值得配的一项。它和恒压恒流的限值不是一个东西CURR限的是电流OVP 限的是电压上限一旦触发直接关输出防止误设高压把下游板子烧掉。给 3.3V 的板子供电我会把VOLT:PROT设在 3.63.8V而不是图省事设 30V——设 30V 等于没设。定时输出适合做老化循环。范围 0.199999.9 秒设好之后输出到点自动关不需要上位机守着。做 24 小时循环测试的时候这一项能省掉一整晚的进程常驻。保存位一共 36 组配合*SAV和*RCL用。参数取舍上我一般把「常用工况」存成固定几组3.3V/1A、5V/2A、12V/1.5A开机先*RCL调出来避免每次重新敲。存之前确认保存位没有被别的工况占用36 组听着多其实几个月就乱了建议在脚本里维护一张对照表。三路同时用的时候还有一个坑CH1 和 CH2 可以串联或者并联来提升电压或电流能力但这是通过后面板端子和菜单模式切过去的切完再按单通道思路去设值读数会对不上。做串联的时候两路的设定值要同时考虑别只改一路。5. 排查记录五条踩过的坑5.1 发命令没回音串口助手接收区一片空白现象端口能成功打开发*IDN?之后等十秒也是空的没有任何报错。原因三种可能按概率排序——终止符不匹配、波特率和面板菜单不一致、用了交叉线。串口能打开只说明操作系统层面端口占住了不代表电气和协议层通了。解决先换终止符\n和\r\n各试一次再确认面板菜单里的波特率改过就跟着改最后拿万用表量线序。三步走完还不行把 TX 和 RX 短接做自环测试能收到自己发的字符就说明线没问题问题在设备侧参数。5.2 电压设了端子量出来还是 0V现象VOLT 12发出去没报错MEAS:VOLT?返回 0万用表量端子也是 0。原因OUTP ON没发或者当前通道不是你以为的那个通道。还有一种情况是面板处于远程锁定状态手按输出键没反应人就以为是硬件坏了。解决先发OUTP?查状态返回 0 就补一条OUTP ON再发INST?或INST:NSEL?确认真实通道号把INST CH1明确写进脚本开头面板锁住就按 Local 键退出远程。5.3 CH3 设 12V 设不上去读回永远是 5V现象INST CH3之后VOLT 12读回还是 5.00。原因CH3 的额定输出只有 5V/3A超范围设定会被固件限幅而且不一定报错。这在三路电源上非常典型——CH1、CH2 是 30V 或 60V人很容易顺手套到 CH3 上。解决这条得从设计阶段就避开需要 12V 的负载就别往 CH3 上挂。查一下型号表确认每一路的额定值脚本里对通道和电压做一次合法性校验超范围直接抛异常别让设备默默限幅。5.4 显示值和六位半表差出几十毫伏现象面板显示 5.000V万用表在端子上量到 4.96V。原因线损。负载电流在测试线上产生压降机器在端子上输出的确实是 5V到你板子上的就不是了。另一个因素是冷机未温漂稳定读数本身还在爬。解决开远端测量功能四线接法把采样点挪到负载端机器会自动补偿线上压降同时确认已经温机半小时以上。做精密测量的时候这两条缺一不可。5.5 上位机跑一会儿就掉线或者返回乱码现象脚本刚跑通几分钟后报超时或者读回来的字符串里混着不可见字符。原因USB 线太长或者不是屏蔽线工频干扰串进来了GPIB 总线上地址冲突LAN 同网段有两个相同 IP。手册的 EMC 部分明确要求用高性能屏蔽接口电缆这条不是客套话。解决换短的屏蔽线USB 线别超过 1.5 米GPIB 逐台拔掉做二分法定位冲突地址LAN 先ping通再谈命令间歇性丢包基本就是 IP 冲突或者交换机口的问题。读回来的字符串统一做一次strip()过滤能挡掉大部分不可见字符。6. 验证跑通三步确认这台电源真的听命令装完不算完我的习惯是走三步确认少一步都不算交付。这三步花不了十分钟但能把「设备坏了」和「配置错了」区分开。第一步握手。发*IDN?期望返回四段逗号分隔的信息厂商、型号、序列号、固件版本。四段齐全说明线、串口参数、终止符全对。返回空串说明链路没通返回半截说明终止符或者读取时机不对。这一步不要跳后面的判断全建立在链路上。第二步空载设定加万用表实测。选 CH1设 5.00V / 0.100A开输出等一到两分钟让输出稳定用六位半表直接量端子。判定标准按下面这张表走检查项通过标准不通过先看哪面板显示 vs 万用表偏差在 12mV 以内温机时间、表笔接触、远端测量MEAS:VOLT?返回值与面板显示一致通道号是否选对改设 10.00V 后读回跟随变化无残留命令是否真的发出去了SYST:ERR?返回 0错误队列里第一条的内容第三步带载读回。CH1 接一个大功率电阻按欧姆定律算出理论电流比如 12V 接 10Ω 应该是 1.2A限流设到 1.5A 让它工作在恒压模式比较MEAS:CURR?和串联万用表的读数。再把限流降到 0.5A看电压是否掉下来、电流是否稳在 0.5A——这一下验证的是恒流环路很多人只测恒压就收工恒流没验过等真带载才发现限流点根本不准。顺手再验一项把VOLT:PROT设到比当前电压略低看输出是否立刻关断。保护这条平时感觉不到等它该动作的时候不动作就是烧板子。从那以后我每次装完一台程控电源都强制走一遍「IDN → 空载 → 带载」这三步哪怕只是换了一根 USB 线、换了一台电脑。省下的不是这十分钟而是事后怀疑设备坏了的两个晚上。希望帮到你。本文还有配套的精品资源点击获取