Files
controller-wisetopdataserver/python/res/devlib/json/Elite_BAT_1.0.devlib.json
T
2023-03-08 10:09:06 +08:00

1666 lines
36 KiB
JSON

{
"name": "Elite_BAT_1.0",
"version": "1.2.30",
"match_rule": {
"local_name_pattern": "Elite.*",
"major_product_number": 0,
"minor_product_number": 3,
"major_version_number": 1,
"minor_version_number": 1
},
"constant": {
"TIME_MAX": 100000,
"VOLT_MAX": 65536,
"Const_Current_Range": 1500001,
"BLE_WRITE_MAX": 255
},
"parameters": {
"DPV_e_init": {
"description": "DPV initial voltage ",
"record_meta": true,
"initial": 20000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"DPV_e_final": {
"description": "DPV final voltage",
"record_meta": true,
"initial": 30000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"DPV_e_1": {
"description": "DPV voltage return 1",
"record_meta": true,
"initial": 35000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"DPV_e_2": {
"description": "DPV voltage return 2",
"record_meta": true,
"initial": 15000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"DPV_amp": {
"description": "DPV pulse amplitude",
"record_meta": true,
"initial": 25125,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"DPV_pul_width": {
"description": "DPV pulse width",
"record_meta": true,
"initial": 50,
"domain": [
1000001
],
"value": {
"expression": "VALUE"
}
},
"DPV_increment": {
"description": "DPV increment",
"record_meta": true,
"initial": 25025,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"DPV_step_time": {
"description": "DPV step time = time of one period",
"record_meta": true,
"initial": 500,
"domain": [
1000001
],
"value": {
"expression": "VALUE"
}
},
"DPV_notify_rate": {
"description": "DPV sample rate",
"record_meta": true,
"initial": 1000,
"domain": [
1001
],
"value": {
"expression": "VALUE"
}
},
"DPV_curr_rec": {
"description": "DPV current recording period start",
"record_meta": true,
"initial": [
25,
100
],
"domain": {
"list": [
101
]
},
"value": "VALUE"
},
"DPV_curr_rec_min": {
"description": "DPV current recording period start",
"record_meta": true,
"initial": 25,
"domain": [
101
],
"value": {
"expression": "VALUE"
}
},
"DPV_curr_rec_max": {
"description": "DPV current recording period end",
"record_meta": true,
"initial": 100,
"domain": [
101
],
"value": {
"expression": "VALUE"
}
},
"DPV_pulse_option": {
"description": "Invert of pulse option",
"record_meta": true,
"domain": "bool",
"initial": false
},
"DPV_mode": {
"description": "AUTO: 0 / ADVANCED: 1/ ENGINEERING: 2",
"record_meta": true,
"initial": 0,
"value": [
0,
1,
2
]
},
"DPV_engineering_enable": {
"description": "Engineering mode switch",
"record_meta": true,
"domain": "bool",
"initial": false
},
"V_initial": {
"description": "Pulse Mode Segment Voltage",
"record_meta": true,
"initial": [
50000,
25000,
25000,
25000
],
"domain": {
"list": [
50001
]
},
"value": "VALUE"
},
"V_initial_0": {
"description": "Pulse Mode Segment Voltage 0",
"record_meta": true,
"initial": 50000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"V_initial_1": {
"description": "Pulse Mode Segment Voltage 1",
"record_meta": true,
"initial": 25000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"V_initial_2": {
"description": "Pulse Mode Segment Voltage 2",
"record_meta": true,
"initial": 25000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"V_initial_3": {
"description": "Pulse Mode Segment Voltage 3",
"record_meta": true,
"initial": 25000,
"domain": [
50001
],
"value": {
"expression": "VALUE"
}
},
"t_pulse": {
"description": "Pulse Mode Segment Duration",
"record_meta": true,
"initial": [
750,
9250,
1000,
1000
],
"domain": {
"list": [
1000001
]
},
"value": "VALUE"
},
"t_pulse_0": {
"description": "Pulse Mode Segment Duration 0",
"record_meta": true,
"initial": 750,
"domain": [
1000001
],
"value": {
"expression": "VALUE"
}
},
"t_pulse_1": {
"description": "Pulse Mode Segment Duration 1",
"record_meta": true,
"initial": 9250,
"domain": [
1000001
],
"value": {
"expression": "VALUE"
}
},
"t_pulse_2": {
"description": "Pulse Mode Segment Duration 2",
"record_meta": true,
"initial": 1000,
"domain": [
1000001
],
"value": {
"expression": "VALUE"
}
},
"t_pulse_3": {
"description": "Pulse Mode Segment Duration 3",
"record_meta": true,
"initial": 1000,
"domain": [
1000001
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC": {
"description": "Pulse Mode Current Recording Period",
"record_meta": true,
"initial": [
[
35,
90
],
[
35,
99
],
[
35,
95
],
[
35,
95
]
],
"domain": {
"list": {
"list": [
100
]
}
},
"value": "VALUE"
},
"CURR_REC_START_0": {
"description": "Pulse Mode Current Recording Period Start",
"record_meta": true,
"initial": 35,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC_START_1": {
"description": "Pulse Mode Current Recording Period Start",
"record_meta": true,
"initial": 35,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC_START_2": {
"description": "Pulse Mode Current Recording Period Start",
"record_meta": true,
"initial": 35,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC_START_3": {
"description": "Pulse Mode Current Recording Period Start",
"record_meta": true,
"initial": 35,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC_END_0": {
"description": "Pulse Mode Current Recording Period End",
"record_meta": true,
"initial": 90,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC_END_1": {
"description": "Pulse Mode Current Recording Period End",
"record_meta": true,
"initial": 99,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC_END_2": {
"description": "Pulse Mode Current Recording Period End",
"record_meta": true,
"initial": 95,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"CURR_REC_END_3": {
"description": "Pulse Mode Current Recording Period End",
"record_meta": true,
"initial": 95,
"domain": [
100
],
"value": {
"expression": "VALUE"
}
},
"segment_ui_order": {
"description": "Pulse Mode Segment Order",
"record_meta": true,
"initial": [
0,
1,
-1,
-1
],
"domain": {
"list": [
-1,
6
]
},
"value": "VALUE"
},
"segment_order": {
"description": "Pulse Mode Segment Order",
"record_meta": true,
"initial": [
0,
1,
-1,
-1
],
"domain": {
"list": [
-1,
6
]
},
"value": "VALUE"
},
"segment_ui_order_0": {
"description": "Pulse Mode Segment UI Order 0, value: segment ID + 1",
"record_meta": true,
"initial": 1,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"segment_ui_order_1": {
"description": "Pulse Mode Segment UI Order 1, value: segment ID + 1",
"record_meta": true,
"initial": 2,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"segment_ui_order_2": {
"description": "Pulse Mode Segment UI Order 2, value: segment ID + 1",
"record_meta": true,
"initial": 0,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"segment_ui_order_3": {
"description": "Pulse Mode Segment UI Order 3, value: segment ID + 1",
"record_meta": true,
"initial": 0,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"segment_order_0": {
"description": "Pulse Mode Segment Order for ID 0, value: order (1,2,3,4), 0 means not use the segment",
"record_meta": true,
"initial": 1,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"segment_order_1": {
"description": "Pulse Mode Segment Order for ID 1, value: order (1,2,3,4), 0 means not use the segment",
"record_meta": true,
"initial": 2,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"segment_order_2": {
"description": "Pulse Mode Segment Order for ID 2, value: order (1,2,3,4), 0 means not use the segment",
"record_meta": true,
"initial": 0,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"segment_order_3": {
"description": "Pulse Mode Segment Order for ID 3, value: order (1,2,3,4), 0 means not use the segment",
"record_meta": true,
"initial": 0,
"domain": [
6
],
"value": {
"expression": "VALUE"
}
},
"DATA_OUTPUT": {
"description": "Pulse Mode Data Output",
"initial": 0,
"value": [
"Average",
"Raw Data"
]
},
"CHANNEL": {
"description": "record channels",
"record_meta": true,
"domain": "property",
"value": "[0, 1, 2]"
},
"CHANNEL_LABEL": {
"description": "channel label",
"record_meta": true,
"domain": "property",
"value": "['current', 'voltage', 'impedance']"
},
"SAMPLE_RATE": {
"description": "data sampling rate",
"record_meta": true,
"initial": 1000,
"domain": [
1001
],
"value": {
"expression": "VALUE"
},
"on_change": "set_sample_rate"
},
"AMP_GAIN": {
"description": "amp gain",
"record_meta": true,
"domain": "constant",
"value": 1
},
"MODE": {
"description": "working mode",
"record_meta": true,
"value": [
"I-V Curve",
"Cycle I-V",
"Function Generator",
"R-T Graph",
"V-T Graph",
"I-T Graph",
"Constant Current",
"Cyclic Voltammetry",
"Linear Sweep Voltammetry",
"Chronoamperometric",
"Cali DAC - test",
"Cali ADC - test",
"Dev Mode",
"Open Circuit Potential",
"Pulse Sensing",
"Differential Pulse Voltammetry (DPV)",
"Chronopotentiometry"
]
},
"VOLT_ORIGIN": {
"description": "Origin Voltage of Scan",
"record_meta": true,
"initial": 25000,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"VOLT_FINAL": {
"description": "The last Voltage of Scan",
"record_meta": true,
"initial": 25000,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": " VALUE"
}
},
"VOLT_STEP": {
"description": "Voltage Step",
"record_meta": true,
"initial": 1000,
"domain": [
1001
],
"value": {
"expression": "VALUE"
}
},
"STEP_TIME": {
"description": "How much time between two step",
"record_meta": true,
"initial": 1,
"value": [
0.5,
1.0,
2.0
]
},
"CYCLE_NUMBER": {
"description": "CV cycle number",
"record_meta": true,
"initial": 1,
"domain": [
65536
],
"value": {
"expression": "VALUE"
}
},
"CALI_VOLT": {
"description": "CALI output Voltage",
"record_meta": true,
"initial": 25000,
"domain": [
65536
],
"value": {
"expression": "VALUE"
},
"on_change": "set_para_DAC_VOLT"
},
"DAC_VOLT": {
"description": "DAC output Voltage",
"record_meta": true,
"initial": 25000,
"domain": [
65536
],
"value": {
"expression": "VALUE"
},
"on_change": "set_para_DAC_VOLT"
},
"ADC_VALUE_I": {
"description": "ADC value current value",
"domain": "int"
},
"Const_Current_value": {
"description": "Constant Current value Setting",
"initial": 0,
"domain": [
"Const_Current_Range"
],
"value": {
"expression": "VALUE"
}
},
"Charge": {
"description": "Charge battery or not",
"initial": 1,
"value": [
"Charge",
"Discharge"
]
},
"VOLT_INITIAL": {
"description": "Initial Voltage of Scan",
"record_meta": true,
"initial": 25000,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"VOLT_EFINAL": {
"description": "Final Voltage of Scan",
"record_meta": true,
"initial": 25000,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"VOLT_MAX": {
"description": "Max Voltage of Scan",
"record_meta": true,
"initial": 27500,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"VOLT_MIN": {
"description": "Min Voltage of Scan",
"record_meta": true,
"initial": 22500,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"Scan_Rate": {
"description": "Voltage Scan Rate",
"record_meta": true,
"initial": 10000,
"domain": [
100001
],
"value": {
"expression": "VALUE"
}
},
"CURRNET_LIMIT_VALUE": {
"description": "Current value Setting",
"initial": 1500000,
"domain": [
"Const_Current_Range"
],
"value": {
"expression": "VALUE"
}
},
"VOLTSTOP_MAX": {
"description": "Max Voltage of Scan",
"record_meta": true,
"initial": 50000,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"VOLTSTOP_MIN": {
"description": "Min Voltage of Scan",
"record_meta": true,
"initial": 0,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"CA_VOLT": {
"description": "Voltage of VScan",
"record_meta": true,
"initial": 25000,
"domain": [
"VOLT_MAX"
],
"value": {
"expression": "VALUE"
}
},
"CC_CP_SPEED": {
"description": "charge speed for CC and CP mode",
"initial": 1,
"value": [
"low",
"normal",
"high"
]
},
"ADC_LEVEL_I_15": {
"description": "ADC level",
"record_meta": true,
"initial": 4,
"value": [
"0",
"1",
"2",
"3",
"auto"
],
"on_change": "set_adc_gain_I"
},
"ADC_LEVEL_V_IN_15": {
"description": "ADC level",
"record_meta": true,
"initial": 3,
"value": [
"0",
"1",
"2",
"auto"
],
"on_change": "set_adc_gain_Vin"
},
"DAC_LEVEL_V_OUT_15": {
"description": "DAC level",
"record_meta": true,
"initial": 2,
"value": [
"0",
"1",
"auto"
],
"on_change": "set_dac_gain_Vout"
},
"CTRL_HIGH_Z_15": {
"description": "ctrl highZ level",
"record_meta": true,
"initial": 1,
"value": [
"On",
"Off"
],
"on_change": "set_ctrl_highZ"
},
"ADC_DAC_CHANNEL_15": {
"description": "read ADC data",
"initial": 0,
"value": [
"Iin",
"Vin"
]
},
"BLE_WRITE": {
"description": "send msg to elite",
"domain": {
"list": [
"BLE_WRITE_MAX"
]
},
"initial": "[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]",
"value": "VALUE"
},
"BLE_READ": {
"description": "receive msg from elite",
"domain": "int"
},
"TIME_UNIT": {
"description": "Duration unit",
"initial": 2,
"value": [
"h",
"m",
"s",
"ms"
]
},
"TIME_DURATION": {
"description": "Run duration",
"record_meta": true,
"initial": 0,
"domain": [
"TIME_MAX"
],
"value": {
"expression": "VALUE"
}
}
},
"instruction": {
"start": [
{
"expression": "MODE",
"when": {
"10": "cali_dac_test",
"11": "cali_adc_test",
"12": "",
"*": "start_data"
}
}
],
"cali_dac_test": [
"set_dac_gain_Vout",
"cali_Vout_dac",
"VIS_STI"
],
"cali_adc_test": [
"data_format",
"_notify(True)",
"set_adc_gain_I",
"set_adc_gain_Vin",
{
"expression": "ADC_DAC_CHANNEL_15",
"when": {
"0": "cali_Iin",
"1": "cali_Vin"
}
},
"_sync(True)",
"VIS_STI",
"_cdr('1X;4X>ADC_VALUE_I')"
],
"start_data": [
"data_format",
"_notify(True)",
{
"expression": "MODE",
"when": {
"0": "set_adc_gain_I",
"1": "set_adc_gain_I",
"2": "set_adc_gain_I",
"4": "set_adc_gain_I",
"5": "set_adc_gain_I",
"6": "set_adc_gain_I",
"7": "set_adc_gain_I",
"8": "set_adc_gain_I",
"9": "set_adc_gain_I",
"13": "set_adc_gain_I",
"16": "set_adc_gain_I"
}
},
{
"expression": "MODE",
"when": {
"0": "set_adc_gain_Vin",
"1": "set_adc_gain_Vin",
"2": "set_adc_gain_Vin",
"4": "set_adc_gain_Vin",
"5": "set_adc_gain_Vin",
"6": "set_adc_gain_Vin",
"7": "set_adc_gain_Vin",
"8": "set_adc_gain_Vin",
"9": "set_adc_gain_Vin",
"13": "set_adc_gain_Vin",
"16": "set_adc_gain_Vin"
}
},
{
"expression": "MODE",
"when": {
"0": "curve_iv",
"1": "curve_cv",
"2": "func_gen",
"3": "curve_zt",
"4": "curve_vt",
"5": "curve_it",
"6": "const_current",
"7": "curve_cv3",
"8": "curve_lsv",
"9": "curve_const_vscan",
"13": "curve_ocp",
"14": "curve_pulse_sensing",
"15": "curve_dpv",
"16": "curve_cp"
}
},
{
"expression": "MODE",
"when": {
"7": "curve_cv3_para2",
"8": "curve_lsv_para2"
}
},
"_sync(True)",
"VIS_STI"
],
"data_format": [
"_data_format('I4V4Z4T4')",
{
"expression": "MODE",
"when": {
"0": "_disable_cache(True)",
"1": "_disable_cache(True)",
"*": "_disable_cache(False)"
}
}
],
"set_sample_rate": {
"type": "RIS",
"parameter": {
"va": "SAMPLE_RATE"
},
"data": [
"XE0;2B>va"
]
},
"set_dac_gain_Vout": {
"type": "RIS",
"data": [
"XE1;X02;B>DAC_LEVEL_V_OUT_15"
]
},
"set_adc_gain_I": {
"type": "RIS",
"data": [
"XE1;X00;B>ADC_LEVEL_I_15"
]
},
"set_adc_gain_Vin": {
"type": "RIS",
"data": [
"XE1;X01;B>ADC_LEVEL_V_IN_15"
]
},
"set_ctrl_highZ": {
"type": "RIS",
"data": [
"XE1;X03;B>CTRL_HIGH_Z_15"
]
},
"cali_Vout_dac": {
"type": "RIS",
"parameter": {
"v": "DAC_VOLT"
},
"data": [
"XF0;2B>v"
]
},
"cali_Iin": {
"type": "RIS",
"data": [
"XF1;B>ADC_DAC_CHANNEL_15;B>ADC_LEVEL_I_15"
]
},
"cali_Vin": {
"type": "RIS",
"data": [
"XF1;B>ADC_DAC_CHANNEL_15;B>ADC_LEVEL_V_IN_15"
]
},
"curve_iv": {
"type": "RIS",
"parameter": {
"va": "VOLT_ORIGIN",
"vb": "VOLT_FINAL",
"vc": "VOLT_STEP",
"vd": "STEP_TIME * 0x12",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X01;",
"2B>va;2B>vb;2B>vc;B>vd;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_cv": {
"type": "RIS",
"parameter": {
"va": "VOLT_ORIGIN",
"vb": "VOLT_FINAL",
"vc": "VOLT_STEP",
"vd": "STEP_TIME * 0x12",
"ve": "CYCLE_NUMBER",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X02;",
"2B>va;2B>vb;2B>vc;B>vd;2B>ve;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"func_gen": {
"type": "RIS",
"parameter": {
"va": "DAC_VOLT",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"X03;",
"2B>va;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_zt": {
"type": "RIS",
"parameter": {
"va": "DAC_VOLT",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"X04;",
"2B>va;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_vt": {
"type": "RIS",
"parameter": {
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"X05;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_it": {
"type": "RIS",
"parameter": {
"va": "DAC_VOLT",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"X06;",
"2B>va;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"const_current": {
"type": "RIS",
"parameter": {
"va": "Charge",
"vb": "Const_Current_value",
"vc": "VOLTSTOP_MAX",
"vd": "VOLTSTOP_MIN",
"ve": "CC_CP_SPEED",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"X07;",
"B>va;4B>vb;2B>vc;2B>vd;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe;",
"4b>0b0001;4b>ve"
]
},
"curve_cp": {
"type": "RIS",
"parameter": {
"va": "Charge",
"vb": "Const_Current_value",
"vc": "VOLTSTOP_MAX",
"vd": "VOLTSTOP_MIN",
"ve": "CC_CP_SPEED",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"X0C;",
"B>va;4B>vb;2B>vc;2B>vd;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe;",
"4b>0b0000;4b>ve"
]
},
"curve_cv3": {
"type": "RIS",
"parameter": {
"va": "VOLT_INITIAL",
"vb": "VOLT_MAX",
"vc": "VOLT_MIN",
"vd": "Scan_Rate",
"ve": "CURRNET_LIMIT_VALUE",
"vf": "CYCLE_NUMBER",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X09;",
"1X01;",
"2B>va;2B>vb;2B>vc;4B>vd;4B>ve"
]
},
"curve_cv3_para2": {
"type": "RIS",
"parameter": {
"va": "VOLT_INITIAL",
"vb": "VOLT_MAX",
"vc": "VOLT_MIN",
"vd": "Scan_Rate",
"ve": "CURRNET_LIMIT_VALUE",
"vf": "CYCLE_NUMBER",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X09;",
"1X02;",
"2B>vf;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_lsv": {
"type": "RIS",
"parameter": {
"va": "VOLT_INITIAL",
"vb": "VOLT_EFINAL",
"vc": "Scan_Rate",
"vd": "CURRNET_LIMIT_VALUE",
"ve": "CYCLE_NUMBER",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0A;",
"1X01;",
"2B>va;2B>vb;4B>vc;4B>vd;2B>ve"
]
},
"curve_lsv_para2": {
"type": "RIS",
"parameter": {
"va": "VOLT_INITIAL",
"vb": "VOLT_EFINAL",
"vc": "Scan_Rate",
"vd": "CURRNET_LIMIT_VALUE",
"ve": "CYCLE_NUMBER",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0A;",
"1X02;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_const_vscan": {
"type": "RIS",
"parameter": {
"va": "CA_VOLT",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0B;",
"2B>va;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_ocp": {
"type": "RIS",
"parameter": {
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"X08;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd;",
"2B>pe"
]
},
"curve_pulse_sensing": [
{
"expression": "segment_ui_order[0]",
"when": {
"0": "pul_sen_segment_0",
"1": "pul_sen_segment_1",
"2": "pul_sen_segment_2",
"3": "pul_sen_segment_3"
}
},
{
"expression": "segment_ui_order[1]",
"when": {
"0": "pul_sen_segment_0",
"1": "pul_sen_segment_1",
"2": "pul_sen_segment_2",
"3": "pul_sen_segment_3"
}
},
{
"expression": "segment_ui_order[2]",
"when": {
"0": "pul_sen_segment_0",
"1": "pul_sen_segment_1",
"2": "pul_sen_segment_2",
"3": "pul_sen_segment_3"
}
},
{
"expression": "segment_ui_order[3]",
"when": {
"0": "pul_sen_segment_0",
"1": "pul_sen_segment_1",
"2": "pul_sen_segment_2",
"3": "pul_sen_segment_3"
}
},
"pul_sen_start"
],
"pul_sen_start": {
"type": "RIS",
"parameter": {
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0D;",
"1XFF",
"4b>pa;4b>pb;",
"4b>pc;4b>pd"
]
},
"pul_sen_segment_0": {
"type": "RIS",
"parameter": {
"va": "V_initial[0]",
"vb": "t_pulse[0]",
"vc": "CURR_REC[0][0]",
"vd": "CURR_REC[0][1]",
"ve": "segment_order.index(segment_order[0])",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0D;",
"1X01;",
"2B>va;4B>vb;1B>vc;1B>vd;1B>ve"
]
},
"pul_sen_segment_1": {
"type": "RIS",
"parameter": {
"va": "V_initial[1]",
"vb": "t_pulse[1]",
"vc": "CURR_REC[1][0]",
"vd": "CURR_REC[1][1]",
"ve": "segment_order.index(segment_order[1])",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0D;",
"1X02;",
"2B>va;4B>vb;1B>vc;1B>vd;1B>ve"
]
},
"pul_sen_segment_2": {
"type": "RIS",
"parameter": {
"va": "V_initial[2]",
"vb": "t_pulse[2]",
"vc": "CURR_REC[2][0]",
"vd": "CURR_REC[2][1]",
"ve": "segment_order.index(segment_order[2])",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0D;",
"1X03;",
"2B>va;4B>vb;1B>vc;1B>vd;1B>ve"
]
},
"pul_sen_segment_3": {
"type": "RIS",
"parameter": {
"va": "V_initial[3]",
"vb": "t_pulse[3]",
"vc": "CURR_REC[3][0]",
"vd": "CURR_REC[3][1]",
"ve": "segment_order.index(segment_order[3])",
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0D;",
"1X04;",
"2B>va;4B>vb;1B>vc;1B>vd;1B>ve"
]
},
"curve_dpv": [
{
"expression": "DPV_mode",
"when": {
"0": "dpv_auto_mode",
"1": "dpv_advanced_mode",
"2": "dpv_engineering_mode"
}
}
],
"dpv_auto_mode": [
"dpv_auto_mode_ins_1",
"dpv_auto_mode_ins_2",
"dpv_auto_mode_ins_3",
"dpv_auto_mode_ins_final"
],
"dpv_auto_mode_ins_1": {
"type": "RIS",
"parameter": {
"va": "DPV_mode",
"vb": "DPV_engineering_enable"
},
"data": [
"1X0E;",
"1X01;",
"B>va;B>vb"
]
},
"dpv_auto_mode_ins_2": {
"type": "RIS",
"parameter": {
"va": "DPV_e_init",
"vb": "DPV_e_final",
"vc": "DPV_amp",
"vd": "DPV_pul_width",
"ve": "DPV_increment"
},
"data": [
"1X0E;",
"1X02;",
"2B>va;2B>vb;2B>vc;4B>vd;2B>ve"
]
},
"dpv_auto_mode_ins_3": {
"type": "RIS",
"parameter": {
"va": "DPV_step_time",
"vb": "DPV_notify_rate",
"vc": "DPV_curr_rec[0]",
"vd": "DPV_curr_rec[1]"
},
"data": [
"1X0E;",
"1X03;",
"4B>va;2B>vb;B>vc;B>vd"
]
},
"dpv_auto_mode_ins_final": {
"type": "RIS",
"parameter": {
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X0E;",
"1XFF;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd"
]
},
"dpv_advanced_mode": [
"dpv_advanced_mode_ins_1",
"dpv_advanced_mode_ins_2",
"dpv_advanced_mode_ins_3",
"dpv_advanced_mode_ins_4",
"dpv_advanced_mode_ins_final"
],
"dpv_advanced_mode_ins_1": {
"type": "RIS",
"parameter": {
"va": "DPV_mode",
"vb": "DPV_engineering_enable"
},
"data": [
"1X10;",
"1X01;",
"B>va;B>vb"
]
},
"dpv_advanced_mode_ins_2": {
"type": "RIS",
"parameter": {
"va": "DPV_e_init",
"vb": "DPV_e_final",
"vc": "DPV_amp",
"vd": "DPV_pul_width",
"ve": "DPV_increment"
},
"data": [
"1X10;",
"1X02;",
"2B>va;2B>vb;2B>vc;4B>vd;2B>ve"
]
},
"dpv_advanced_mode_ins_3": {
"type": "RIS",
"parameter": {
"va": "DPV_step_time",
"vb": "DPV_notify_rate",
"vc": "DPV_curr_rec[0]",
"vd": "DPV_curr_rec[1]"
},
"data": [
"1X10;",
"1X03;",
"4B>va;2B>vb;B>vc;B>vd"
]
},
"dpv_advanced_mode_ins_4": {
"type": "RIS",
"parameter": {
"va": "DPV_e_1",
"vb": "DPV_e_2",
"vc": "DPV_pulse_option",
"vd": "CYCLE_NUMBER"
},
"data": [
"1X10;",
"1X04;",
"2B>va;2B>vb;B>vc;2B>vd"
]
},
"dpv_advanced_mode_ins_final": {
"type": "RIS",
"parameter": {
"pa": "ADC_LEVEL_I_15",
"pb": "ADC_LEVEL_V_IN_15",
"pc": "DAC_LEVEL_V_OUT_15",
"pd": "CTRL_HIGH_Z_15",
"pe": "SAMPLE_RATE"
},
"data": [
"1X10;",
"1XFF;",
"4b>pa;4b>pb;",
"4b>pc;4b>pd"
]
},
"dpv_engineering_mode": [
{
"expression": "DPV_engineering_enable",
"when": {
"0": "dpv_engineering_mode_auto",
"1": "dpv_engineering_mode_advanced"
}
}
],
"dpv_engineering_mode_auto": [
"dpv_auto_mode"
],
"dpv_engineering_mode_advanced": [
"dpv_advanced_mode"
],
"ble_instru_send": [
"ble_write",
"_cdr('20X>ADC_VALUE_I')"
],
"ble_write": {
"type": "RIS",
"data": [
"XFF;",
"1B>BLE_WRITE[0];1B>BLE_WRITE[1];1B>BLE_WRITE[2];1B>BLE_WRITE[3];",
"1B>BLE_WRITE[4];1B>BLE_WRITE[5];1B>BLE_WRITE[6];1B>BLE_WRITE[7];",
"1B>BLE_WRITE[8];1B>BLE_WRITE[9];1B>BLE_WRITE[10];1B>BLE_WRITE[11];",
"1B>BLE_WRITE[12];1B>BLE_WRITE[13];1B>BLE_WRITE[14];1B>BLE_WRITE[15];",
"1B>BLE_WRITE[16];"
]
},
"dev_version": [
"CIS_VERSION",
"_cdr('20X>ADC_VALUE_I')"
],
"dev_battery": [
"CIS_VOLT",
"_cdr('20X>ADC_VALUE_I')"
],
"set_para_DAC_VOLT": {
"type": "RIS",
"data": [
"XE2;X01;2B>DAC_VOLT"
]
}
}
}