我给电化学工作站写了个宏命令生成器
起因
做电化学测试的时候,要让 CHI760E 工作站按我想要的方式跑,得给它写一段「宏命令」——一堆 tech:cv、eh=0.8、v=0.1 这样的文本指令。
手写有两个让人头疼的地方:一是参数多、格式死,少个字母、点错小数点就跑不起来;二是重复劳动,做一组对比实验时,常常只是把扫描速率从 0.1 改到 0.2、0.5……同一段命令要反反复复改十几遍,又枯燥又容易抄错。
所以我干脆做了个小工具:把这些参数搬进图形界面,点一点、填一填,一键生成宏命令。
它能做什么
界面长这样👇

核心功能有这么几块:
两种常用测试技术。支持循环伏安法(CV)和计时电流法(i-t)。选好技术,界面会自动切换成对应的参数项——CV 给你高电位 / 低电位 / 扫描方向 / 循环圈数 / 扫描速率,i-t 给你初始电位 / 采样时间这些。
参数扫描。这是我最想要的功能。比如想看不同扫描速率下的曲线,不用手动改十几遍:设好起始和终止速率,它会自动按线性或倍率帮你算出每一档,一次生成一整组命令。电压窗口也能这么扫。
多任务实验。可以把好几个实验任务按顺序串起来——先跑几圈 CV、再来一段 i-t——每个任务参数独立,能添加、编辑、排序。生成的是一整条按顺序执行的宏。
运行时间估计。每个任务、以及整场实验大概要跑多久,它会先帮你算出来,省得干等。
配置存取。一组常用参数可以保存下来,下次直接加载,不用重头填。
生成的东西长什么样
填好参数点「生成宏命令」,出来的就是一段可以直接喂给工作站的文本,大致是这样:
folder:E:\experiments\cv
tech:cv
ei=0.0
eh=0.8
el=-0.8
pn=p
v=0.1
cl=3
si=0.001
qt=2
autosens
run
save:CV_ei0.0_eh0.8_el-0.8_v0.1
tsave:CV_ei0.0_eh0.8_el-0.8_v0.1
celloff
end
文件名也会按参数自动拼好(像 CV_ei0.0_eh0.8_el-0.8_v0.1),一组扫描下来每个文件叫什么一目了然,不会混。
把它复制到工作站软件的 Macro Command 里,先 Test 一下没问题,再 Run Macro 就开跑了。
技术上
界面用 PyQt6 写,参数计算和文件处理用 Python,做了实时的参数校验和错误提示——填了不合法的值会当场标出来,而不是等生成了导进工作站才发现跑不动。
一点感想
这个工具本身不复杂,但它特别能代表我喜欢做的那种事:把一件重复、易错、磨人的体力活,变成点几下鼠标就搞定的事。写它花的时间,后来在一次次实验里早就赚回来了。
工具的价值,往往不在它多炫,而在它真的让某件事变轻松了一点点。