Stunner Client 一次性配置:让脚本能调用仪器
30 秒看懂
激活码要最先填,传应用和传空白都依赖 License .bin 落点必须是网络共享目录,仪器和脚本 PC 的本地盘都不行 存空白要求同一空白至少 3 个重复孔,且测量距今不超过 100 天
系列指南 · 第 3 篇
Stunner Client 一次性配置:让脚本能调用仪器
Stunner 物理装好以后,网线那一端的仪器还是空的,脚本暂时调不动。需要先在 Stunner Client 软件里做一轮一次性配置:
激活 API License
把应用传到仪器
指定原始数据写入的共享目录
给仪器分配 IP 地址:DHCP 还是固定 IP
存常用空白
这些事都在同一个 Automation 页面里完成。除了升级软件后要重传应用、空白超过 100 天要重存,配好之后一般不用再动。
先认识几个名词
Automation 页面 — Stunner Client 软件菜单里的一个页面。所有跟自动化集成相关的配置(激活码、应用、网络、空白)都集中在这一页。
API License — 让外部脚本调用 Stunner 的能力许可。出厂不带,要单独申请;激活码按仪器序列号生成,绑定到具体一台仪器。
Applications / Analytes / Buffers — 三类要传到仪器的数据。Applications 是算法包(浓度、DLS 等);Analytes 是可测物质参数(IgG、BSA、ADC 等);Buffers 是常见缓冲液参数(PBS、Tris 等)。
Blank(空白) — 不含待测物的对照样品,通常就是样品所用的缓冲液(PBS、Tris 等)本身。UV/Vis 测量时,用空白吸光度扣除缓冲液本底信号,样品的真实浓度才能算准。
网络共享目录 — 仪器和脚本 PC 都能访问的网络文件夹,用 Windows SMB 共享。Stunner 把每次测量的原始数据(.bin 文件)写到这里。脚本后续从这里读取。
DHCP / 静态 IP — 仪器拿 IP 地址的两种方式。DHCP 由路由器自动分配,IP 可能变化;静态 IP 手动填地址、子网掩码、网关,IP 从此固定。
配置全景:四个区域一次做完
用 USB 线把 Stunner 接到一台装了 Stunner Client 的 PC 上,登录之后从菜单进 Automation 页面。整页就是下面这张截图,分四个区域。开头列的事项和它对得上:Applications & Blanks 一块管传应用和存空白两件事,所以下文共五步。
Stunner Client 的 Automation 页面。一页之内完成四块配置,左下角的 BACK 按钮返回主菜单。TCP 端口固定 6300。
Activation code — 页面顶部 — 激活 API License。填四段激活码,绿色对勾表示成功。
Applications & Blanks — 右上 — 把算法包和空白传到仪器。Transfer Apps、Transfer Blanks 两个按钮。
Network Settings — 左下 — 配置 .bin 文件的存储位置。Folder/Domain/User/Password 四个字段。
DHCP / Static IP — 右下 — 给 Stunner 分配 IP 地址。DHCP 自动分配,或填一个静态 IP。
顺序约束:激活码要最先填,因为 Transfer Apps 和 Transfer Blanks 都依赖 License 才能用。其它三项可以按方便的顺序来。配置过程里,Stunner 同时要接网线(进局域网)和 USB 线(连这台 PC),缺了哪根,配置都无法完成。配完一项,记得切回菜单确认保存成功;有些按钮配置后会自动回到灰色,表示设置已经写进仪器,并不是失败。
激活 API License
没有 License,API 这边一条命令都发不出去。激活码按仪器序列号绑定生成,因此向 Unchained Labs 申请时,务必把仪器序列号一起提供。Unchained Labs 回信会给一串 32 个十六进制字符的激活码,分成四段,中间用短横线分隔(例如 8918FD35-0FB02760-024D2A8C-0DE3B675)。
把应用传到仪器
Applications 是 Stunner 用来计算结果的算法包,比如 Protein + Advanced Sizing(蛋白浓度 + 粒径)、RNA-LNP EE(包封率)等等。出厂仪器没有预装这些应用,第一次使用之前需要手动传一次。以后每次升级 Stunner Client 软件,也要再传一次,保证仪器和 PC 上的算法版本一致。
在 Automation 页面右上的 Applications & Blanks 区域,点 Transfer Apps。这一步会同时把 Analytes(可测物质参数,IgG/BSA/ADC 等)和 Buffers(常见缓冲液参数,PBS/Tris 等)更新到仪器上。后面写实验定义字符串时,这些字段名都要从这一份数据里引用。按钮左侧的数字(例如 31)是当前仪器上已有的应用数量。传完后这个数字会更新,可以借此确认应用已经送到。
右上区域旁边还有一个 Transfer Blanks 按钮,跟存空白有关。空白放到最后一节单独讲。
配网络共享目录
Stunner 测完一板之后,会把原始数据写成一个 .bin 文件,文件落在哪里由这一步指定。落点必须是仪器和脚本 PC 都能访问的网络共享目录。仪器本地盘和脚本 PC 的本地盘都不能用。脚本 PC 上的文件夹可以先共享出来,再按网络路径填写(见下文)。如果填本地路径(比如 C:/Users/...),Stunner 会把它解释成仪器内部小计算机自己的硬盘。文件不会落到脚本 PC 上你期望的位置。
在 Automation 页面左下的 Network Settings 区域,把四个字段填齐,点 Save Changes。如果哪一项填错或目录访问不到,Stunner 会立刻弹对话框说明原因。问题不会等到第一次取数据时才暴露。
Folder — 网络路径,以 \\ 开头,后面接 IP、服务器名或计算机名,例:\\server\share。
Domain — 通常留空,Windows 一般能自行解析。云域名容易出问题,需要时再单独填。
User — 任意一个能访问这个共享的账号。建议使用密码不常变的账号,减少后续维护。
Password — 账号密码。含空格时整段加半角双引号,例:"your password",否则解析可能崩溃。
网络配置的常见问题
网络共享配错,.bin 文件就落不到共享目录,连续跑的多板原始数据会丢。现场常见的情况如下。
接错网线 — 网线要直接插在 Stunner 背面的网口上。"配置网络"配的是 Stunner 这台仪器自己的网络,不是脚本 PC 的网络。配完想验证通不通,可以在 Stunner Client 的 Instrument 菜单里查到仪器 IP,再从脚本 PC 的命令行 ping 一下。Ping 功能仅 S/N 902250 及以上(Stunner AF 是 904050 及以上)的仪器支持。这条序列号分界只管 ping,和物理集成那篇按序列号划分的坐标批次是两回事。
内网不允许新建共享 — 不少实验室的内网管控严格,无法临时建网络共享。比较省事的做法是在脚本 PC 上直接共享一个本地文件夹。右键文件夹 → 属性 → 共享(Sharing)标签 → 高级共享(Advanced Sharing),勾上"共享此文件夹"。再给这个共享 Everyone 读写权限。完成后,属性页顶部会显示"网络路径"为 \\计算机名\文件夹名(见下图)。把这串路径原样填到 Stunner 的 Folder 字段。
密码里含空格 — 密码本身可以含空格,但要给整段密码加上半角双引号,例 "your password"。不加引号时 Stunner 解析可能临时崩溃。另外,推荐使用一个密码不常变的账号,否则每次改密码都要回到这一页重新配置。
没配好就开始测量 — .bin 文件只在 Get_Results 触发时才会生成。如果网络共享配错了又连续跑了几板,前面几板的原始数据会全部丢失。只有最后一次有机会被 Stunner Client 自动导入。配置完成后,建议跑一板真实数据,验证 .bin 文件确实落到共享目录。
DHCP 还是固定 IP
Automation 页面右下角的 DHCP / Static IP 区域决定 Stunner 怎么拿 IP 地址。两种方式的区别在于 IP 会不会变,以及脚本配置文件相应怎么维护。
自动
DHCP
由路由器自动分配 IP,不用手动填任何字段。适合临时调试或网络环境对 IP 变化不敏感的场景。
· 配置最简单,即插即用
· 路由器重启或租期到期后 IP 可能改变
· IP 变化后,脚本配置文件里的 Stunner 地址要跟着更新
固定
静态 IP
手动指定一个固定 IP,从此不会变。自动化产线上更推荐这种方式,脚本不会因为重启路由器而连不上 Stunner。
· 填 IP 地址、子网掩码、默认网关三项(都不能留空)
· IP 需要事先和 IT 协调,避免和现有设备冲突
· 配完点 Save Changes;路由器重启后 IP 不变,脚本里的地址不用跟着改
最后一件事在右上 Applications & Blanks 区域:Transfer Blanks,把常用空白存进仪器,后续实验直接引用。
存空白:供以后复用
UV/Vis 测浓度时,样品的总吸光度里既包含待测物本身的信号,也包含缓冲液(buffer)的本底信号。空白(blank)就是不含待测物、仅有缓冲液的对照样品。把空白的吸光度从样品总信号里扣掉,得到的才是待测物本身的吸光度,Beer-Lambert 算出来的浓度才准。所以一块板上,既要测样品孔,也要测对应缓冲液的空白孔。
自动化场景里,常用的缓冲液(PBS、HEPES、Tris 等)信号稳定。如果每次都在样品板上专门留几个空白孔,会浪费板位,也增加操作时间。Stunner 支持把已经测过的空白结果存到仪器本地。后续实验直接引用这份"空白库",省掉每板都加空白的步骤。
仪器本地只能保存 1 个实验文件作为空白库。这一个文件里可以包含多个 sample group,对应不同种类的空白(比如 PBS 一组、Tris 一组)。每次新的存储动作会整文件覆盖旧的,所以存之前要确认现有那份不再需要。
日常用 — 从 Automation 页面手动选 — 点 Transfer Blanks 按钮。弹出的对话框会列出所有满足存储条件、已经测过的空白实验,按日期、用户、Plate type、实验名分列显示。选中一行,点 Transfer。
脚本即时 — 刚跑完就存 — 在脚本里调一次 API 命令 Store_Blanks(无参数)。这会把刚跑完的实验里的空白存为新的空白库。
脚本回溯 — 从早先文件存 — 在脚本里调 Store_Blanks 并指定一个实验文件名。这会把网络共享目录里早先某一板的空白存进去。需要事先确认那个 .bin 文件还在,因为这条命令不会重新跑测量。
Stunner 会先检查下面四条标准,全部通过才允许存。否则会返回 −61 至 −64 之间对应的错误码;存空白相关的全部错误码(−61 至 −68)见交付验证那篇的状态码速查表:
仪器在那次空白测量之后没有做过校准
同一空白至少 3 个重复孔,且通过了重复性检查
那次空白测量距今不超过 100 天
那次空白是在当前这台仪器上测的,不是从别的仪器拷过来的
配置完成后的自查清单
开始写脚本之前,对照这六项检查一下。日后脚本连不上,也先按这六项逐一排查。
overview · 配置全景:四个区域一次做完
license · 激活 API License
transfer-apps · 把应用传到仪器
troubleshooting · 网络配置的常见问题
checklist · 配置完成后的自查清单
Automation 页面 · Stunner Client 软件菜单里的一个页面。所有跟自动化集成相关的配置(激活码、应用、网络、空白)都集中在这一页。
API License · 让外部脚本调用 Stunner 的能力许可。出厂不带,要单独申请;激活码按仪器序列号生成,绑定到具体一台仪器。
Applications / Analytes / Buffers · 三类要传到仪器的数据。Applications 是算法包(浓度、DLS 等);Analytes 是可测物质参数(IgG、BSA、ADC 等);Buffers 是常见缓冲液参数(PBS、Tris 等)。
Blank(空白) · 不含待测物的对照样品,通常就是样品所用的缓冲液(PBS、Tris 等)本身。UV/Vis 测量时,用空白吸光度扣除缓冲液本底信号,样品的真实浓度才能算准。
网络共享目录 · 仪器和脚本 PC 都能访问的网络文件夹,用 Windows SMB 共享。Stunner 把每次测量的原始数据(.bin 文件)写到这里。脚本后续从这里读取。
DHCP / 静态 IP · 仪器拿 IP 地址的两种方式。DHCP 由路由器自动分配,IP 可能变化;静态 IP 手动填地址、子网掩码、网关,IP 从此固定。
Activation code · 页面顶部 · 激活 API License。填四段激活码,绿色对勾表示成功。
Applications & Blanks · 右上 · 把算法包和空白传到仪器。Transfer Apps、Transfer Blanks 两个按钮。
Network Settings · 左下 · 配置 .bin 文件的存储位置。Folder/Domain/User/Password 四个字段。
DHCP / Static IP · 右下 · 给 Stunner 分配 IP 地址。DHCP 自动分配,或填一个静态 IP。
提交申请 · 把仪器序列号(S/N)发给 Unchained Labs,申请 API License。
填入激活码 · 收到激活码后,在 Automation 页面顶部的 Activation code 区域,把四段分别填进四个输入框。点 Add Activation Code。
看绿色对勾 · 激活成功的标志是输入框下方出现一个绿色对勾,旁边写着 API/DropControl。判断是否激活到位,看的是这个对勾;按钮自动变回灰色并不代表失败。
记下端口 · 页面 Settings/Info 区域显示 API 的 TCP 端口是 6300,这是固定值,后面写脚本时构造 Stunner 对象要用到。
Folder · 网络路径,以 \\ 开头,后面接 IP、服务器名或计算机名,例:\\server\share。
Domain · 通常留空,Windows 一般能自行解析。云域名容易出问题,需要时再单独填。
User · 任意一个能访问这个共享的账号。建议使用密码不常变的账号,减少后续维护。
Password · 账号密码。含空格时整段加半角双引号,例:"your password",否则解析可能崩溃。
接错网线 · 网线要直接插在 Stunner 背面的网口上。"配置网络"配的是 Stunner 这台仪器自己的网络,不是脚本 PC 的网络。配完想验证通不通,可以在 Stunner Client 的 Instrument 菜单里查到仪器 IP,再从脚本 PC 的命令行 ping 一下。Ping 功能仅 S/N 902250 及以上(Stunner AF 是 904050 及以上)的仪器支持。这条序列号分界只管 ping,和物理集成那篇按序列号划分的坐标批次是两回事。
内网不允许新建共享 · 不少实验室的内网管控严格,无法临时建网络共享。比较省事的做法是在脚本 PC 上直接共享一个本地文件夹。右键文件夹 → 属性 → 共享(Sharing)标签 → 高级共享(Advanced Sharing),勾上"共享此文件夹"。再给这个共享 Everyone 读写权限。完成后,属性页顶部会显示"网络路径"为 \\计算机名\文件夹名(见下图)。把这串路径原样填到 Stunner 的 Folder 字段。
密码里含空格 · 密码本身可以含空格,但要给整段密码加上半角双引号,例 "your password"。不加引号时 Stunner 解析可能临时崩溃。另外,推荐使用一个密码不常变的账号,否则每次改密码都要回到这一页重新配置。
没配好就开始测量 · .bin 文件只在 Get_Results 触发时才会生成。如果网络共享配错了又连续跑了几板,前面几板的原始数据会全部丢失。只有最后一次有机会被 Stunner Client 自动导入。配置完成后,建议跑一板真实数据,验证 .bin 文件确实落到共享目录。
日常用 · 从 Automation 页面手动选 · 点 Transfer Blanks 按钮。弹出的对话框会列出所有满足存储条件、已经测过的空白实验,按日期、用户、Plate type、实验名分列显示。选中一行,点 Transfer。
脚本即时 · 刚跑完就存 · 在脚本里调一次 API 命令 Store_Blanks(无参数)。这会把刚跑完的实验里的空白存为新的空白库。
脚本回溯 · 从早先文件存 · 在脚本里调 Store_Blanks 并指定一个实验文件名。这会把网络共享目录里早先某一板的空白存进去。需要事先确认那个 .bin 文件还在,因为这条命令不会重新跑测量。
License · Automation 页面顶部出现 "API/DropControl" 绿色对勾。
端口与 IP · 记下 TCP 端口 6300 和仪器 IP 地址(在 Instrument 菜单里查),这两项写脚本时要用。
应用 · Transfer Apps 已经点过一次,Applications & Blanks 区域右侧的应用数字大于 0。
共享路径 · Folder 字段以 \\ 开头,而不是 C:/;密码含空格时已经加了双引号。
IP 模式 · 用 DHCP 就记下当前 IP;用静态 IP 则与 IT 确认地址不冲突,IP / 子网掩码 / 网关三个字段都填齐。
验证 · 用一板真实数据跑一次,确认 .bin 文件确实出现在指定的共享目录里。