miniSMU MS01에는 펌웨어 버전 1.3.4부터 I-V 스윕 기능이 내장되어 있습니다. 이 기능을 사용하면 전압 스윕을 장치에서 직접 구성하고 실행할 수 있으므로, 호스트 컴퓨터에서 전압 포인트를 하나씩 보내는 방식에 비해 필요한 통신량이 크게 줄어듭니다.
펌웨어 v1.3.4 필요: 온보드 I-V 스윕 기능을 사용하려면 펌웨어 버전 1.3.4 이상이 필요합니다. 펌웨어를 업데이트해야 한다면 펌웨어 업데이트 페이지에서 최신 펌웨어 버전을 다운로드하여 설치하십시오.
개요
온보드 I-V 스윕 기능의 이점은 다음과 같습니다:
- I/O 오버헤드 감소: 스윕 파라미터를 한 번만 구성한 다음 실행하고 결과를 가져옵니다
- 일관된 타이밍: PC와 miniSMU 사이의 통신 간섭 없이 측정 포인트 사이의 대기 시간(dwell time)이 더 정밀해집니다
- 유연한 출력 형식: CSV 또는 JSON 데이터 형식 중에서 선택할 수 있습니다
- 실시간 모니터링: 실행 중에 스윕 진행 상황을 조회할 수 있습니다
- 자동 출력 제어: 필요하면 스윕하는 동안 채널 출력을 자동으로 켜고 끌 수 있습니다
스윕 구성 명령
전압 스윕 파라미터
스윕의 전압 범위와 측정 파라미터를 구성합니다:
| 명령 | 기능 | 예 | 비고 |
|---|---|---|---|
SOUR1:SWEEP:VOLT:START <voltage> | 스윕 시작 전압 설정 | SOUR1:SWEEP:VOLT:START -0.5 | 시작 전압(볼트) |
SOUR1:SWEEP:VOLT:END <voltage> | 스윕 종료 전압 설정 | SOUR1:SWEEP:VOLT:END 1.5 | 종료 전압(볼트) |
SOUR1:SWEEP:POINTS <count> | 포인트 수 설정 | SOUR1:SWEEP:POINTS 100 | 최대 1,000포인트 |
SOUR1:SWEEP:DWELL <milliseconds> | 포인트 사이의 대기 시간 설정 | SOUR1:SWEEP:DWELL 50 | 최대 10,000 ms |
채널 출력 제어
스윕하는 동안 채널 출력을 자동으로 관리할지 여부를 제어합니다:
| 명령 | 기능 | 예 | 비고 |
|---|---|---|---|
SOUR1:SWEEP:AUTO:ENA | 자동 출력 제어 켜기 | SOUR1:SWEEP:AUTO:ENA | 스윕 중에는 출력이 켜지고, 스윕 후에는 꺼짐 |
SOUR1:SWEEP:AUTO:DIS | 자동 출력 제어 끄기 | SOUR1:SWEEP:AUTO:DIS | 수동 출력 제어(기본값) |
SOUR1:SWEEP:AUTO? | 자동 제어 설정 조회 | SOUR1:SWEEP:AUTO? | 0 또는 1 반환 |
출력 형식 선택
스윕 결과의 데이터 형식을 선택합니다:
| 명령 | 기능 | 예 | 비고 |
|---|---|---|---|
SOUR1:SWEEP:FORMAT CSV | CSV 형식 설정 | SOUR1:SWEEP:FORMAT CSV | 단순한 쉼표 구분 값(기본값) |
SOUR1:SWEEP:FORMAT JSON | JSON 형식 설정 | SOUR1:SWEEP:FORMAT JSON | 메타데이터를 포함한 구조화된 형식 |
SOUR1:SWEEP:FORMAT? | 현재 형식 조회 | SOUR1:SWEEP:FORMAT? | "CSV" 또는 "JSON" 반환 |
스윕 실행 명령
스윕 시작 및 중지
| 명령 | 기능 | 예 | 비고 |
|---|---|---|---|
SOUR1:SWEEP:EXECUTE | 구성한 스윕 실행 | SOUR1:SWEEP:EXECUTE | 현재 설정으로 스윕 시작 |
SOUR1:SWEEP:ABORT | 실행 중인 스윕 중단 | SOUR1:SWEEP:ABORT | 스윕을 즉시 중지 |
SOUR1:SWEEP:STATUS? | 스윕 상태 조회 | SOUR1:SWEEP:STATUS? | 상태 및 진행 정보 반환 |
SOUR1:SWEEP:DATA? | 스윕 데이터 가져오기 | SOUR1:SWEEP:DATA? | 선택한 형식으로 데이터 반환 |
상태 모니터링
SOUR1:SWEEP:STATUS? 명령은 다음 형식으로 상태 정보를 반환합니다: "status,current_point,total_points,elapsed_ms,estimated_remaining_ms"
응답 예: "RUNNING,49,100,4495,4641"
- status: 현재 스윕 상태(
RUNNING,COMPLETED,IDLE등) - current_point: 현재 측정 중인 데이터 포인트
- total_points: 스윕의 전체 포인트 수
- elapsed_ms: 스윕 시작 후 경과 시간(밀리초)
- estimated_remaining_ms: 예상 남은 시간(밀리초)
데이터 형식
CSV 형식
CSV 형식은 헤더 없이 단순한 쉼표 구분 값을 제공합니다. 각 줄에는 다음 값이 들어 있습니다: timestamp,voltage,current
각 값의 의미:
- timestamp: 마이크로초 단위의 miniSMU 시스템 시간
- voltage: 볼트 단위의 전압 측정값
- current: 암페어 단위의 전류 측정값
CSV 데이터 예:
129793905,-9.969e-01,-8.998e-09
129883905,-9.768e-01,9.865e-09
129973905,-9.566e-01,-9.194e-09
130063905,-9.365e-01,1.017e-08
JSON 형식
JSON 형식에는 측정 데이터와 함께 스윕 구성 메타데이터가 포함됩니다:
{
"sweep_config": {
"channel": 1,
"start_voltage": -1,
"end_voltage": 1,
"points": 100,
"dwell_ms": 50,
"auto_enable": true
},
"data": [
{
"t": 129793905,
"v": -0.9969,
"i": -8.998e-9
},
{
"t": 129883905,
"v": -0.9768,
"i": 9.865e-9
},
{
"t": 129973905,
"v": -0.9566,
"i": -9.194e-9
}
]
}
기본 I-V 스윕 예
다음은 기본 I-V 스윕을 구성하고 실행하는 전체 예입니다:
SOUR1:SWEEP:VOLT:START -0.5 # Start at -0.5V
SOUR1:SWEEP:VOLT:END 1.5 # End at +1.5V
SOUR1:SWEEP:POINTS 100 # 100 measurement points
SOUR1:SWEEP:DWELL 50 # 50ms between measurements
SOUR1:SWEEP:AUTO:ENA # Auto-enable output during sweep
SOUR1:SWEEP:FORMAT JSON # Use JSON output format
SOUR1:SWEEP:EXECUTE # Start the sweep
SOUR1:SWEEP:DATA? # Retrieve results when complete
고급 사용법
스윕 진행 상황 모니터링
시간이 오래 걸리는 스윕을 실시간으로 모니터링하려면:
# Start sweep
SOUR1:SWEEP:EXECUTE
# Check status periodically
SOUR1:SWEEP:STATUS?
# Response: "RUNNING,25,100,2250,6750"
# Continue checking until complete
SOUR1:SWEEP:STATUS?
# Response: "COMPLETED,100,100,9000,0"
# Retrieve data
SOUR1:SWEEP:DATA?
스윕 중단
스윕이 끝나기 전에 중지해야 하는 경우:
SOUR1:SWEEP:ABORT
SOUR1:SWEEP:STATUS?
# Response: "ABORTED,45,100,4050,0"
제한 사항 및 고려 사항
- 최대 포인트 수: 스윕당 데이터 포인트 1,000개
- 최대 대기 시간: 포인트 사이 10,000 ms(10초)
- 채널 지원: 명령은 채널 1 기준으로 표시되어 있습니다. 채널 2에서는
SOUR1을SOUR2로 바꾸십시오 - 펌웨어 요구 사항: 온보드 I-V 스윕을 사용하려면 펌웨어 버전 1.3.4 이상이 필요합니다