void _motorUnits_SelectedIndexChanged(object sender, EventArgs e) { _selectedMotor = _motors[(sender as ComboBox).SelectedIndex]; _project.Motor = _selectedMotor; _selectedMotor.SetCooling(_cooling); _peakForce.Text = _motors[(sender as ComboBox).SelectedIndex].PeakForce.ToString(); _continuousForce.Text = _motors[(sender as ComboBox).SelectedIndex].ContinuousForce.ToString(); _forceConstant.Text = _motors[(sender as ComboBox).SelectedIndex].ForceConstant.ToString(); _motorConstant.Text = _motors[(sender as ComboBox).SelectedIndex].MotorConstant.ToString(); _backEMF.Text = _motors[(sender as ComboBox).SelectedIndex].BackEMFConstant.ToString(); _hotCoilResistance.Text = _motors[(sender as ComboBox).SelectedIndex].Resistance.ToString(); _thermalResistance.Text = _motors[(sender as ComboBox).SelectedIndex].ThermalResistance.ToString(); _coilMass.Text = _motors[(sender as ComboBox).SelectedIndex].CoilMass.ToString(); _coilLength.Text = _motors[(sender as ComboBox).SelectedIndex].CoilLength.ToString(); _movingMass.Text = "0"; _totalStageMass.Text = "0"; _project.Profile.Solve(); }
public Database() { string MotorName; double MotorForceConstant; double MotorMotorConstant; double MotorBackEMFConstant; double MotorResistance; double MotorPeakForce; double MotorPeakCurrent; double MotorContinuousForce_0psi; double MotorContinuousForce_10psi; double MotorContinuousForce_20psi; double MotorContinuousForce_40psi; double MotorContinuousCurrent_0psi; double MotorContinuousCurrent_10psi; double MotorContinuousCurrent_20psi; double MotorContinuousCurrent_40psi; double MotorCoilMass; double MotorCoilLength; double MotorThermalResistance_100CTEMP_0psi; double MotorThermalResistance_100CTEMP_10psi; double MotorThermalResistance_100CTEMP_20psi; double MotorThermalResistance_100CTEMP_40psi; double MotorThermalResistance_Catalog_0psi; double MotorThermalResistance_Catalog_20psi; double MotorThermalResistance_PercentDifference_0psi; double MotorThermalResistance_PercentDifference_20psi; Motor temp; _searchedMotors = new List<Motor>(); _motors = new List<Motor>(); const string sql = "select * from Motors;"; var conn = new SQLiteConnection("Data Source=" + _dbfilename + ";Version=3;"); conn.Open(); DataSet ds = new DataSet(); var da = new SQLiteDataAdapter(sql, conn); da.Fill(ds); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { MotorName = ds.Tables[0].Rows[i]["Motor"].ToString(); MotorForceConstant = 0.0; MotorMotorConstant = 0.0; MotorBackEMFConstant = 0.0; MotorResistance = 0.0; MotorPeakForce = 0.0; MotorPeakCurrent = 0.0; MotorContinuousForce_0psi = 0.0; MotorContinuousForce_10psi = 0.0; MotorContinuousForce_20psi = 0.0; MotorContinuousForce_40psi = 0.0; MotorContinuousCurrent_0psi = 0.0; MotorContinuousCurrent_10psi = 0.0; MotorContinuousCurrent_20psi = 0.0; MotorContinuousCurrent_40psi = 0.0; MotorCoilMass = 0.0; MotorCoilLength = 0.0; MotorThermalResistance_100CTEMP_0psi = 0.0; MotorThermalResistance_100CTEMP_10psi = 0.0; MotorThermalResistance_100CTEMP_20psi = 0.0; MotorThermalResistance_100CTEMP_40psi = 0.0; MotorThermalResistance_Catalog_0psi = 0.0; MotorThermalResistance_Catalog_20psi = 0.0; MotorThermalResistance_PercentDifference_0psi = 0.0; MotorThermalResistance_PercentDifference_20psi = 0.0; MotorForceConstant = Convert.ToDouble(ds.Tables[0].Rows[i]["ForceConstant"].ToString()); MotorMotorConstant = Convert.ToDouble(ds.Tables[0].Rows[i]["MotorConstant"].ToString()); MotorBackEMFConstant = Convert.ToDouble(ds.Tables[0].Rows[i]["BackEMFConstant"].ToString()); MotorResistance = Convert.ToDouble(ds.Tables[0].Rows[i]["Resistance"].ToString()); MotorPeakForce = Convert.ToDouble(ds.Tables[0].Rows[i]["PeakForce"].ToString()); if (ds.Tables[0].Rows[i]["PeakCurrent"].ToString().Length != 0) MotorPeakCurrent = Convert.ToDouble(ds.Tables[0].Rows[i]["PeakCurrent"].ToString()); MotorContinuousForce_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_0psi"].ToString()); MotorContinuousForce_10psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_10psi"].ToString()); MotorContinuousForce_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_20psi"].ToString()); MotorContinuousForce_40psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_40psi"].ToString()); if (ds.Tables[0].Rows[i]["ContinuousCurrent_0psi"].ToString().Length != 0) MotorContinuousCurrent_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_0psi"].ToString()); if (ds.Tables[0].Rows[i]["ContinuousCurrent_10psi"].ToString().Length != 0) MotorContinuousCurrent_10psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_10psi"].ToString()); if (ds.Tables[0].Rows[i]["ContinuousCurrent_20psi"].ToString().Length != 0) MotorContinuousCurrent_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_20psi"].ToString()); if (ds.Tables[0].Rows[i]["ContinuousCurrent_40psi"].ToString().Length != 0) MotorContinuousCurrent_40psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_40psi"].ToString()); MotorCoilMass = Convert.ToDouble(ds.Tables[0].Rows[i]["CoilMass"].ToString()); MotorCoilLength = Convert.ToDouble(ds.Tables[0].Rows[i]["CoilLength"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_0psi"].ToString().Length != 0) MotorThermalResistance_100CTEMP_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_0psi"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_10psi"].ToString().Length != 0) MotorThermalResistance_100CTEMP_10psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_10psi"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_20psi"].ToString().Length != 0) MotorThermalResistance_100CTEMP_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_20psi"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_40psi"].ToString().Length != 0) MotorThermalResistance_100CTEMP_40psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_40psi"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_Catalog_0psi"].ToString().Length != 0) MotorThermalResistance_Catalog_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_Catalog_0psi"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_Catalog_20psi"].ToString().Length != 0) MotorThermalResistance_Catalog_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_Catalog_20psi"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_PercentDifference_0psi"].ToString().Length != 0) MotorThermalResistance_PercentDifference_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_PercentDifference_0psi"].ToString()); if (ds.Tables[0].Rows[i]["ThermalResistance_PercentDifference_20psi"].ToString().Length != 0) MotorThermalResistance_PercentDifference_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_PercentDifference_20psi"].ToString()); temp = new Motor(MotorName, MotorForceConstant, MotorMotorConstant, MotorBackEMFConstant, MotorResistance, MotorPeakForce, MotorPeakCurrent, MotorContinuousForce_0psi, MotorContinuousForce_10psi, MotorContinuousForce_20psi, MotorContinuousForce_40psi, MotorContinuousCurrent_0psi, MotorContinuousCurrent_10psi, MotorContinuousCurrent_20psi, MotorContinuousCurrent_40psi, MotorCoilMass, MotorCoilLength, MotorThermalResistance_100CTEMP_0psi, MotorThermalResistance_100CTEMP_10psi, MotorThermalResistance_100CTEMP_20psi, MotorThermalResistance_100CTEMP_40psi, MotorThermalResistance_Catalog_0psi, MotorThermalResistance_Catalog_20psi, MotorThermalResistance_PercentDifference_0psi, MotorThermalResistance_PercentDifference_20psi); _searchedMotors.Add(temp); _motors.Add(temp); } }
//constructor public Project(IMotor motor) { _Motor = (Motor)motor; }
public List<Motor> Get(String[,] MotorProperties) { string MotorName; double MotorForceConstant; double MotorMotorConstant; double MotorBackEMFConstant; double MotorResistance; double MotorPeakForce; double MotorPeakCurrent; double MotorContinuousForce_0psi; double MotorContinuousForce_10psi; double MotorContinuousForce_20psi; double MotorContinuousForce_40psi; double MotorContinuousCurrent_0psi; double MotorContinuousCurrent_10psi; double MotorContinuousCurrent_20psi; double MotorContinuousCurrent_40psi; double MotorCoilMass; double MotorCoilLength; double MotorThermalResistance_100CTEMP_0psi; double MotorThermalResistance_100CTEMP_10psi; double MotorThermalResistance_100CTEMP_20psi; double MotorThermalResistance_100CTEMP_40psi; double MotorThermalResistance_Catalog_0psi; double MotorThermalResistance_Catalog_20psi; double MotorThermalResistance_PercentDifference_0psi; double MotorThermalResistance_PercentDifference_20psi; Motor temp; _motors = new List<Motor>(); String WhereSQL = ""; for (int i = 0; i <= MotorProperties.GetUpperBound(0); i++) { if (i == 0) { WhereSQL += " WHERE " + MotorProperties[i, 0] + " " + MotorProperties[i, 1] + " " + MotorProperties[i, 2]; } else { WhereSQL += " AND " + MotorProperties[i, 0] + " " + MotorProperties[i, 1] + " " + MotorProperties[i, 2]; } } string sql = "select * from _motors" + WhereSQL + ";"; Console.WriteLine(sql); var conn = new SQLiteConnection("Data Source=" + _dbfilename + ";Version=3;"); conn.Open(); DataSet ds = new DataSet(); var da = new SQLiteDataAdapter(sql, conn); da.Fill(ds); for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { MotorName = ds.Tables[0].Rows[i]["Motor"].ToString(); MotorForceConstant = Convert.ToDouble(ds.Tables[0].Rows[i]["ForceConstant"].ToString()); MotorMotorConstant = Convert.ToDouble(ds.Tables[0].Rows[i]["MotorConstant"].ToString()); MotorBackEMFConstant = Convert.ToDouble(ds.Tables[0].Rows[i]["BackEMFConstant"].ToString()); MotorResistance = Convert.ToDouble(ds.Tables[0].Rows[i]["Resistance"].ToString()); MotorPeakForce = Convert.ToDouble(ds.Tables[0].Rows[i]["PeakForce"].ToString()); MotorPeakCurrent = Convert.ToDouble(ds.Tables[0].Rows[i]["PeakCurrent"].ToString()); MotorContinuousForce_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_0psi"].ToString()); MotorContinuousForce_10psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_10psi"].ToString()); MotorContinuousForce_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_20psi"].ToString()); MotorContinuousForce_40psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousForce_40psi"].ToString()); MotorContinuousCurrent_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_0psi"].ToString()); MotorContinuousCurrent_10psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_10psi"].ToString()); MotorContinuousCurrent_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_20psi"].ToString()); MotorContinuousCurrent_40psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ContinuousCurrent_40psi"].ToString()); MotorCoilMass = Convert.ToDouble(ds.Tables[0].Rows[i]["CoilMass"].ToString()); MotorCoilLength = Convert.ToDouble(ds.Tables[0].Rows[i]["CoilLength"].ToString()); MotorThermalResistance_100CTEMP_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_0psi"].ToString()); MotorThermalResistance_100CTEMP_10psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_10psi"].ToString()); MotorThermalResistance_100CTEMP_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_20psi"].ToString()); MotorThermalResistance_100CTEMP_40psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_100CTEMP_40psi"].ToString()); MotorThermalResistance_Catalog_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_Catalog_0psi"].ToString()); MotorThermalResistance_Catalog_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_Catalog_20psi"].ToString()); MotorThermalResistance_PercentDifference_0psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_PercentDifference_0psi"].ToString()); MotorThermalResistance_PercentDifference_20psi = Convert.ToDouble(ds.Tables[0].Rows[i]["ThermalResistance_PercentDifference_20psi"].ToString()); temp = new Motor(MotorName, MotorForceConstant, MotorMotorConstant, MotorBackEMFConstant, MotorResistance, MotorPeakForce, MotorPeakCurrent, MotorContinuousForce_0psi, MotorContinuousForce_10psi, MotorContinuousForce_20psi, MotorContinuousForce_40psi, MotorContinuousCurrent_0psi, MotorContinuousCurrent_10psi, MotorContinuousCurrent_20psi, MotorContinuousCurrent_40psi, MotorCoilMass, MotorCoilLength, MotorThermalResistance_100CTEMP_0psi, MotorThermalResistance_100CTEMP_10psi, MotorThermalResistance_100CTEMP_20psi, MotorThermalResistance_100CTEMP_40psi, MotorThermalResistance_Catalog_0psi, MotorThermalResistance_Catalog_20psi, MotorThermalResistance_PercentDifference_0psi, MotorThermalResistance_PercentDifference_20psi); _motors.Add(temp); } return _motors; }