支持 Keithley 系列源表设备
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
Línea de trabajo
Lee primero la estructura existente de UniversalDriver y de los controladores de dispositivos; después, revisa el repositorio de GitHub de Keithley y TSP Toolkit referenciados en el issue. Define el soporte en torno a los archivos de controlador keithley propuestos, priorizando las series 2400, 2600 y 2450. Se considera terminado cuando se admiten las interfaces estándar de source, medición, output, reset, scan y comunicación.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
功能描述
Uni-Lab-OS 需要支持 Keithley 系列源表(Source Measure Unit, SMU)设备,以扩展平台在半导体测试、材料表征等领域的应用能力。
背景
Keithley 是业界领先的精密测量仪器品牌,其源表产品广泛应用于:
- 半导体器件特性测试
- 太阳能电池测试
- LED/OLED 测试
- 材料电学特性表征
- 电池测试
Keithley 提供了丰富的 Python 控制接口和驱动库,可以方便地集成到 Uni-Lab-OS 中。
参考资料
- Keithley GitHub 仓库:https://github.com/tektronix/keithley
- 包含设备驱动、应用示例和 KickStart 模板项目
- 支持多种编程语言(Python、TSP、LabVIEW 等)
实现建议
1. 设备驱动目录结构
unilabos/devices/keithley/
├── __init__.py
├── keithley_smu.py # SMU 设备驱动基类
├── 2400_series.py # 2400 系列(通用型 SMU)
├── 2600_series.py # 2600 系列(高速 SMU)
└── 2450_series.py # 2450 系列(图形界面 SMU)
2. 核心功能
- 电压源模式:设置输出电压、电流限制
- 电流源模式:设置输出电流、电压限制
- 测量功能:电压、电流、电阻测量
- 扫描功能:线性扫描、对数扫描
- 脉冲模式:脉冲 I-V 测试
- 四象限操作:支持四象限源/载操作
3. 标准接口
继承 Uni-Lab-OS 的 UniversalDriver 基类,提供标准化接口:
set_voltage(voltage, current_limit)- 设置电压输出set_current(current, voltage_limit)- 设置电流输出measure()- 测量电压、电流、电阻output_on()/output_off()- 输出开关reset()- 设备复位
4. 通信接口
- SCPI 命令集(通过 VISA/PyVISA)
- TSP(Test Script Processor)脚本
- TCP/IP、USB、GPIB 接口支持
应用场景
-
半导体器件测试
- I-V 曲线测量
- 击穿电压测试
- 漏电流测试
-
太阳能电池测试
- I-V 曲线追踪
- 填充因子计算
- 效率测试
-
材料表征
- 电阻率测量
- 霍尔效应测量
- 阻抗谱测量
优先级
建议优先支持:
- Keithley 2400 系列(应用最广泛)
- Keithley 2600 系列(高速、多通道)
- Keithley 2450 系列(现代化图形界面)
相关资源
- Keithley GitHub: https://github.com/tektronix/keithley
- TSP Toolkit: https://github.com/tektronix/tsp-toolkit
- KickStart Software: https://www.tek.com/products/keithley/keithley-control-software-bench-instruments/kickstart
- Lenguaje dominante
- Python
- Estrellas
- 184
- Forks
- 79
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de deepmodeling/Uni-Lab-OS
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
deepmodeling/Uni-Lab-OS#327 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
deepmodeling/Uni-Lab-OS#326 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
deepmodeling/Uni-Lab-OS#325 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
deepmodeling/Uni-Lab-OS#324 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
deepmodeling/Uni-Lab-OS#323 · 1 comentario ·
Todos los issues de deepmodeling/Uni-Lab-OS
Issues similares
-
[yugabyted] xcluster set_up and add_to_replication fail for database names containing - . or (Abiertokind/bug priority/medium qa_automation
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
yugabyte/yugabyte-db#37324 ·
Los mantenedores suelen responder en 1 día
-
good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 87/100
btclib-org/btclib-node#2260 ·
Los mantenedores suelen responder en 1 día
-
ChatBedrockConverse changes the keys of JSON tool results to camelCase (`order_id` becomes `orderId`)Posiblemente ocupada @geyazheng la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
langchain-ai/langchain-aws#1469 ·
Los mantenedores suelen responder en 1 día
-
GCToggler leaves collection enabled if the body re-enables itPosiblemente ocupada @Gambit-Checkmate la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 7 días
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
EESSI/docs#949 · 1 comentario ·
Los mantenedores suelen responder en 1 día