public static int per_to_hex(String min) { int lmin = int.Parse(min); OsramDaliInterface atest = new OsramDaliInterface(); TypeDaliCommand[] dali_command_1 = new TypeDaliCommand[1]; dali_command_1[0].type = 0x00; dali_command_1[0].highByte = 0xFE; dali_command_1[0].lowByte = 0xFF; dali_command_1[0].thirdByte = 0xFF; dali_command_1[0].replyType = 0x01; dali_command_1[0].replyValue = 0x01; atest.Init(); atest.ScanForDaliUnitDevices(); atest.GetDaliUnitCount(); atest.OpenDaliUnit(0); atest.DaliVoltageGetState(0, 0); atest.DaliSupplyOn(0, 0); atest.DaliSupplyGetState(0, 0); dali_command_1[0].highByte = 0xA3; dali_command_1[0].lowByte = 0x01; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); dali_command_1[0].highByte = 0xC1; dali_command_1[0].lowByte = 0x06; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); dali_command_1[0].highByte = 0xFF; dali_command_1[0].lowByte = 0xE3; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); dali_command_1[0].highByte = 0xFF; dali_command_1[0].lowByte = 0xE3; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); return((254 * 100) / lmin); }
public static void set_level_max() { OsramDaliInterface atest = new OsramDaliInterface(); TypeDaliCommand[] dali_command_1 = new TypeDaliCommand[1]; dali_command_1[0].type = 0x00; dali_command_1[0].highByte = 0xFE; dali_command_1[0].lowByte = 0xFF; dali_command_1[0].thirdByte = 0xFF; dali_command_1[0].replyType = 0x01; dali_command_1[0].replyValue = 0x01; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); }
public void Changevolte(int i) { dali_command_1[0].highByte = 0xFE; dali_command_1[0].lowByte = 0x00; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); Program.Agilent6063B.SetCV(i.ToString(), setIO_6063B); dali_command_1[0].highByte = 0xFE; dali_command_1[0].lowByte = 0xFE; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); }
public void Test_dali() { measure_point = 0; //设置 Program.Agilent6812B.SetPut(set_Vin, set_Vin_f, set_Vin_M, setIO_6812B); Program.WT210_2.SetReadPF(setIO_WT210_2); Program.Agilent6063B.InitSetCV(setIO_6063B); //level设置为最大 dali_command_1[0].highByte = 0xFE; dali_command_1[0].lowByte = 0xFE; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); Program.delay.Delay1(1); for (int j = set_I_min; j < set_I_max; j += set_I_step) { Set_current(j); for (int i = set_U_min; i < set_U_max; i += set_U_step) { Changevolte(i); Check_status(); Read(i, j); if (i + set_U_step >= set_U_max) { Changevolte(set_U_max); Check_status(); Read(set_U_max, j); } } if (j + set_I_step >= set_I_max) { Set_current(set_I_max); for (int i = set_U_min; i < set_U_max; i += set_U_step) { Changevolte(i); Check_status(); Read(i, set_I_max); if (i + set_U_step >= set_U_max) { Changevolte(set_U_max); Check_status(); Read(set_U_max, set_I_max); } } } } }
public void Test_dali() { measure_point = 0; dali_command_1[0].highByte = 0xFE; dali_command_1[0].lowByte = 0xFE; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); Program.delay.Delay1(1); Program.WT210_2.SetReadPF(setIO_WT210_2); Program.Agilent6063B.InitSetCV(setIO_6063B); for (int j = set_Vin_min; j < set_Vin_max; j += set_Vin_step) { Program.Agilent6812B.SetPut(j.ToString(), set_Vin_f, set_Vin_M, setIO_6812B); for (int i = set_U_min; i < set_U_max; i += set_U_step) { Changevolte(i); Changecurrent(i, j); if (i + set_U_step >= set_U_max) { Changevolte(set_U_max); Changecurrent(i, j); } } if (j + set_Vin_step >= set_Vin_max) { Program.Agilent6812B.SetPut(set_Vin_max.ToString(), set_Vin_f, set_Vin_M, setIO_6812B); for (int i = set_U_min; i < set_U_max; i += set_U_step) { Changevolte(i); Changecurrent(i, j); if (i + set_U_step >= set_U_max) { Changevolte(set_U_max); Changecurrent(i, j); } } } } }
public void Get_linear_level_min() { dali_command_1[0].highByte = 0xFF; dali_command_1[0].lowByte = 0x9A; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); Program.delay.Delay1(1); if (dali_command_1[0].replyType != 0x01) { MessageBox.Show("DELI检测为异常状态", "出错提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); } else { byte[] a = new byte[4]; a[0] = dali_command_1[0].replyValue; set_level_min = System.BitConverter.ToInt32(a, 0); dali_command_1[0].highByte = 0xA3; dali_command_1[0].lowByte = a[0]; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); dali_command_1[0].highByte = 0xFF; dali_command_1[0].lowByte = 0x2B; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); dali_command_1[0].highByte = 0xFF; dali_command_1[0].lowByte = 0x2B; atest.SendDaliCommandSequenz(0, 0, dali_command_1, 1); } }