Skip to main content
Lager 命令行界面(CLI)提供了一种强大且可编写脚本的方式,让您直接从终端与 Lager Box 及其所连硬件交互。它非常适合手动控制、shell 脚本编写,以及集成到 CI/CD 流水线中。

核心概念

CLI 采用标准的 GROUP COMMAND 结构。大多数命令作用于某一台 Lager Box,用 --box 选项指定。

Net

大多数硬件命令作用于 Net —— 代表物理测试点或信号的命名抽象。Net 把易读的名称映射到仪器通道。

主要命令组

下面汇总 Lager CLI 中的主要命令组。

Lager Box 管理

  • Boxes:管理 Lager Box 配置(添加、编辑、删除、导入/导出、锁定)
  • Hello:验证与 Lager Box 的连通性
  • Update:更新 Lager Box 软件
  • SSH:直接 SSH 访问 Lager Box
  • Logs:查看 Lager Box 日志文件的大小,并清理旧日志

配置

  • Instruments:列出已连接的测试设备
  • Nets:创建和管理 Net(测试点抽象)
  • Defaults:设置默认的 Lager Box 和 Net 配置

电源与仿真

  • Supply:控制可编程电源
  • Battery:模拟电池特性(SOC、电压、容量)
  • Solar:控制太阳能板模拟器
  • E-Load:控制电子负载(CC/CV/CR/CP 模式)
  • Watt:从功率计读取功耗
  • Energy:积分能量/电荷并计算功率统计量(Joulescope JS220)

测量

  • Scope:控制示波器进行波形采集
  • Logic:控制逻辑分析仪并进行协议解码
  • ADC:读取模拟电压值
  • Thermocouple:读取温度传感器

I/O 与通信

  • GPI:读取数字输入
  • GPO:写入数字输出
  • DAC:模拟输出电压控制
  • UART:串行通信
  • USB:USB 端口电源控制
  • BLE:低功耗蓝牙扫描

开发

  • Debug:烧录固件、GDB 服务器、内存访问、RTT 日志
  • Python:在 Lager Box 上执行 Python 脚本
  • Exec:在本地 Docker 开发容器中运行构建/测试命令
  • Devenv:配置本地 Docker 开发环境
  • Binaries:在 Lager Box 上运行自定义二进制程序

实用工具

  • Webcam:视频采集与串流
  • Arm:控制机械臂定位

示例:测试脚本工作流程

下面这个 shell 脚本示例演示了一个典型的硬件测试流程。

设置默认 Lager Box

为了避免在每条命令上都写 --box,请设置一台默认 Lager Box:

Box 的解析顺序

需要 Lager Box 的命令按以下顺序选择它:
  1. 该命令的 --box 选项
  2. LAGER_BOX 环境变量
  3. lager defaults add --box 设置的默认 Box
--box 接受已保存 Box 的名称或一个 IP 地址。三者都没有时,命令会失败,并列出您已保存的 Box,或者告诉您如何添加一台。

全局选项

这些选项写在命令组之前,例如 lager --version --box 不是全局选项。每条需要与 Box 通信的命令都有自己的 --box,写在命令之后。每条命令也都接受 --help。在 lager installlager update 上,--version 指定要部署的 Box 版本,而不是 CLI 版本。

提示

  • lager <command> --help 查看任意命令的全部选项
  • 大多数命令支持 --yes 以跳过确认提示
  • lager defaults add 设置默认值可以减少输入
  • 在支持的地方使用 tui 子命令进行交互式控制
  • 读取数值的命令(例如 adcsoc)可以在脚本中使用