Keithley 2750配7702 MUX/3740继电器卡编程遇-221设置冲突
Keithley 2750 + 7702/3740 SCPI代码修改方案(解决-221 Settings Conflict错误)
问题核心
多次切换通道触发-221 Settings conflict,根源是通道切换时未正确管理MUX与继电器的互斥逻辑。原ROUT:OPEN:ALL会全开继电器不符合测试需求,提前打开所有MUX通道也无法规避冲突,需用SCPI模拟TSP中scan.MODE_OPEN_SELECTIVE仅激活当前测量通道的逻辑。
具体修改方案
1. 初始化配置互斥规则
*RST ROUT:MUX:MODE SINGLE // 设置MUX为单通道导通模式,同一时刻仅一个通道激活 ROUT:RELay:3740:MODE EXCLusive // 配置3740继电器为互斥模式,避免多继电器同时触发冲突
2. 单次测量的通道切换逻辑
每次测量前执行以下指令,确保仅目标通道导通,其余保持关闭:
// 示例:测量7702的101通道 + 3740的K1继电器 ROUT:CLOSE (@101) // 选中目标MUX通道 ROUT:RELay:CLOSE (@K1) // 闭合目标继电器 MEAS:VOLT:DC? // 执行测量(按需替换为对应测量指令) ROUT:OPEN (@101) // 测量完成后关闭当前MUX通道 ROUT:RELay:OPEN (@K1) // 关闭当前继电器
3. 批量循环测量优化写法
若需循环测量多组通道,可按以下逻辑编写(以VISA脚本为例):
// 定义测量通道列表,格式为[MUX通道, 继电器通道] CHAN_LIST = [[101, K1], [102, K2], [103, K3]] FOR EACH CHAN IN CHAN_LIST: // 仅清空当前模块的通道,避免误操作其他设备 ROUT:OPEN:ALL (@100:130) // 关闭7702的所有MUX通道 ROUT:RELay:OPEN:ALL (@K1:K8) // 关闭3740的所有继电器 // 激活目标通道 ROUT:CLOSE (@CHAN[0]) ROUT:RELay:CLOSE (@CHAN[1]) // 执行测量 MEAS:VOLT:DC? // 关闭当前通道 ROUT:OPEN (@CHAN[0]) ROUT:RELay:OPEN (@CHAN[1])
关键注意事项
- 需明确指定MUX和继电器的通道范围,避免误操作其他模块
- 测量完成后必须关闭当前通道,防止后续切换时出现状态冲突
- 不同模块的通道标识符需严格匹配设备手册(例如7702通道为101-130,3740继电器为K1-K8)
内容的提问来源于stack exchange,提问作者Jakob Kenda
相关产品推荐
相关产品推荐

