Dark JV Routine Commands¶
This section lists the commands specific to the Dark JV routine.
Settings JSON¶
{
"scan_settings":{
"V start (V)":-0.1,
"V end (V)":0.5,
"dV (V)":0.01,
"Scan rate (V/s)":0.1,
"Scan Order":"FW -> RV",
"Precondition (s)":1,
"Turn Hold (s)":0
},
"device":{
"type":"SMU",
"general":{
"mode":"Constant Voltage",
"sample_rate":10,
"autorange":false
},
"specific":{
"current_compliance":0.02,
"voltage_compliance":6,
"sense":"4-wire"
}
},
"photodetector":{
"type":"Spectrometer",
"settings":{
"integration_time_s":0.1,
"averages":1,
"smoothing":1
}
},
"sweep_settings":[]
}
Notes¶
scan_settings.Scan Order (enum)
Allowed values: FW -> RV, RV -> FW, FW Only, RV Only,
device.specifc
The device.specific object changes based on the device.type selected:
"specific":{
"current_compliance":0.02, //in A
"voltage_compliance":6, //in V
"sense":"4-wire"
}
"specific":{
"port":"GPIB0::24::INSTR",
"shutter":true,
"remote_sense":true
}
"specific":{
"port":"KE2600",
"Hi-C Mode":0,
"Sense":"4 Wire"
}
photodetector.settings
The photodetector.settings object changes based on the photodetector.type selected:
"settings":{ }
"settings":{
"integration_time_s":0.01,
"averages":10,
"smoothing":1
}
Data JSON¶
{
"measurement":[
{
"sweep_direction":"forward",
"data_schema":[
{"name":"Voltage","unit":"V"},
{"name":"Current","unit":"A"}
],
"data":[
[0.5,1E-4],
[0.49,1E-4],
[0.48,1E-4],
[0.47,1E-4]
],
"spectral_data":{
"wavelengths_nm":[336.1982,336.7949,337.3916,337.9883],
"spectra":[
{"data_point":{"voltage":{"value":-0.1,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[81.43687,77.80354,79.80354,80.02021],"integrated_irradiance":{"value":0.01333607343767,"unit":"W/cm^2"}},
{"data_point":{"voltage":{"value":-0.09,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[81.46875,79.97708,81.32708,80.48542],"integrated_irradiance":{"value":0.0134262674463728,"unit":"W/cm^2"}},
{"data_point":{"voltage":{"value":-0.08,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[84.09125,79.69958,79.58292,80.09125],"integrated_irradiance":{"value":0.0133268793241002,"unit":"W/cm^2"}},
{"data_point":{"voltage":{"value":-0.07,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[81.59,79.315,80.29,80.14833],"integrated_irradiance":{"value":0.0132556837644618,"unit":"W/cm^2"}}
]
}
},
{
"sweep_direction":"reverse",
"data_schema":[
{"name":"Voltage","unit":"V"},
{"name":"Current","unit":"A"}
],
"data":[
[-0.1,1E-4],
[-0.09,1E-4],
[-0.08,1E-4],
[-0.07,1E-4]
],
"spectral_data":{
"wavelengths_nm":[336.1982,336.7949,337.3916,337.9883],
"spectra":[
{"data_point":{"voltage":{"value":0.5,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[82.2675,79.2425,79.85083,79.12583],"integrated_irradiance":{"value":0.0134023001641542,"unit":"W/cm^2"}},
{"data_point":{"voltage":{"value":0.5,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[81.98813,79.03812,80.55479,80.50479],"integrated_irradiance":{"value":0.0133804762362235,"unit":"W/cm^2"}},
{"data_point":{"voltage":{"value":0.49,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[81.55625,79.18958,80.07291,79.86459],"integrated_irradiance":{"value":0.0133407251182057,"unit":"W/cm^2"}},
{"data_point":{"voltage":{"value":0.48,"unit":"V"},"current":{"value":1E-4,"unit":"A"}},"spectrum":[80.6525,77.96917,79.26917,80.38583],"integrated_irradiance":{"value":0.0133075743331856,"unit":"W/cm^2"}}
]
}
}
]
}
Note
If no photodetector is selected, "spectral_data":{} will still be included as an empty object. It can then simply be ignored
Progress JSON¶
Custom Commands¶
No custom commands are available for the Dark JV routine
Example Command Sequence¶
{ "target": "MAIN", "command": "StartRoutine", "parameter": { "routine": "Dark JV"} }
{ "target": "ROUTINE", "command": "GetTestStatus" } // repeat until routine_status == "Ready"
{ "target": "ROUTINE", "command": "ApplySettings", "parameter": { ... Settings JSON ... } }
{ "target": "ROUTINE", "command": "StartMeasurement" }
{ "target": "ROUTINE", "command": "GetTestStatus" } // repeat until routine_status != "Running"
{ "target": "ROUTINE", "command": "GetTestData" }
{ "target": "ROUTINE", "command": "CloseRoutine" }