- •1.2.1.2 Лінійні датчики серії длп.
- •1.3 Датчики кута повороту – енкодери
- •1.4 Датчики кута нахилу - инклинометра.
- •1.5 Принцип роботи uart.
- •3.1.2 Критерій вибору датчика для визначення лінійного зміщення.
- •5.1 Визначення вартості витратних матеріалів, необхідних для розробки програмного продукту
- •5.3 Розрахунок відрахувань на соціальні заходи
- •5.4 Розрахунок витрат на оплату машинного часу при розробці програмного продукту
- •5.5 Розрахунок інших накладних витрат у складі витрат на розробку програмного продукту
- •5.6 Розрахунок собівартості апаратного забезпечення
- •5.7.2 Аналіз собівартості системи
- •Висновок
- •Додаток а
- •Єдина тарифна сітка розрядів і коефіцієнтів по оплаті праці робітників
- •Розрахунок сумарної потужності устаткування
- •Приложение I
- •Int y0,y1,y2,y3,y4; //буфер для значения датчика
Int y0,y1,y2,y3,y4; //буфер для значения датчика
try
{
serialPort1.Write("r"); //команда получить данные
Thread.Sleep(1);
serialPort1.Read(Mes, 0, 11); //получить посылку с данными
//определяем координату У
y0 = (Mes[0] << 8);
y0 |= (Mes[1]);
y1 = (Mes[2] << 8);
y1 |= (Mes[3]);
y2 = (Mes[4] << 8);
y2 |= (Mes[5]);
y3 = (Mes[6] << 8);
y3 |= (Mes[7]);
y4 = (Mes[8] << 8);
y4 |= (Mes[9]);
//расчет силы
textBox1.Text = (0.05 * y0).ToString();
// добавим в список точку
list0.Add(y1, y0);
list1.Add(y2, y0);
list2.Add(y3, y0);
list3.Add(x, y0);
list4.Add(y4, y0);
// добавим в список точку
listControl0.Add(x, y0*(1/1.024));
listControl1.Add(x, y1*(1 / 1.024));
listControl2.Add(x, y2*(1 / 1.024));
listControl3.Add(x, y3*(1 / 1.024));
listControl4.Add(x, y4*(1 / 1.024));
//вывести значения
label10.Text = (y0 * (1 / 1.024)).ToString();
label11.Text = (y1 * (1 / 1.024)).ToString();
label12.Text = (y2 * (1 / 1.024)).ToString();
label13.Text = (y3 * (1 / 1.024)).ToString();
label14.Text = (y4 * (1 / 1.024)).ToString();
//сохранить данные в excel файле
global_CSVWriter.Write(list0[list0.Count - 1].X.ToString() + ";" + list0[list0.Count - 1].Y.ToString() + ";;"
+ list1[list1.Count - 1].X.ToString() + ";" + list1[list1.Count - 1].Y.ToString() + ";;"
+ list2[list2.Count - 1].X.ToString() + ";" + list2[list2.Count - 1].Y.ToString() + ";;"
+ list3[list3.Count - 1].X.ToString() + ";" + list3[list3.Count - 1].Y.ToString() + ";;"
+ list4[list4.Count - 1].X.ToString() + ";" + list4[list4.Count - 1].Y.ToString() + "\n");
global_CSVWriter.Flush();
//время
x++;
// Обновим график
zedGraph.AxisChange();
zedGraph.Invalidate();
zedGraph1.AxisChange();
zedGraph1.Invalidate();
zedGraph2.AxisChange();
zedGraph2.Invalidate();
zedGraph3.AxisChange();
zedGraph3.Invalidate();
zedGraph4.AxisChange();
zedGraph4.Invalidate();
//проверочные
zedGraphControl1.AxisChange();
zedGraphControl1.Invalidate();
zedGraphControl2.AxisChange();
zedGraphControl2.Invalidate();
zedGraphControl3.AxisChange();
zedGraphControl3.Invalidate();
zedGraphControl4.AxisChange();
zedGraphControl4.Invalidate();
zedGraphControl5.AxisChange();
zedGraphControl5.Invalidate();
}
catch (Exception ex)
{
timer1.Enabled = false;
//заблокировать кнопки
button1.Enabled = true;
button2.Enabled = false;
btnStart.Enabled = true;
serialPort1.Close();
global_CSVWriter.Close();
MessageBox.Show("Произошол сбой.Возможные причины: \n1)Устройство не отвечает на запросы;\n2)Файл стал недоступен для записи.", " Ошибка ", MessageBoxButtons.OK);
}
}
//остановить опрос
private void button2_Click(object sender, EventArgs e)
{
serialPort1.Write("c"); //прекратить измерения
//задаем настройки опроса
timer1.Enabled = false;
serialPort1.Close();
//отобразить время завершения измерений
data2 = DateTime.Now;
lblEnd.Text = DateTime.Now.ToString();
//продолжительность измерения
lblTime.Text = (data2 - data1).ToString();
global_CSVWriter.Write("\n");
//время конца
global_CSVWriter.Write("Date end: ;" + data2.ToString() + "\n");
//продолжительность
global_CSVWriter.Write("Time: ;" + lblTime.Text + "\n");
//количество записей
global_CSVWriter.Write("Count: ;" + list0.Count.ToString() + "\n");
global_CSVWriter.Close();
//заблокировать кнопки
button1.Enabled = true;
button2.Enabled = false;
btnStart.Enabled = true;
}
//Начало измерений
private void btnStart_Click(object sender, EventArgs e)
{
frmConfig frmCnf = new frmConfig();
frmCnf.ShowDialog();
}
private void btnSave_Click_1(object sender, EventArgs e)
{
//Отображение диалога для сохранения
saveFileDialog1.Filter = "CSV files (*.csv)|*.csv";
saveFileDialog1.ShowDialog();
//получить имя файла
txtNameT.Text = saveFileDialog1.FileName;
button3.Enabled = true;
}
private void tabPage2_Click(object sender, EventArgs e)
{
}
private void button3_Click(object sender, EventArgs e)
{
//открыть файл для записи (Excel)
StreamWriter CSVWriter;
//получить имя файла
CSVWriter = new StreamWriter(txtNameT.Text);
//записать шапку
//записать информацию о измерениях
//время начала
CSVWriter.Write("Date start: ;" + data1.ToString() + "\n");
//время конца
CSVWriter.Write("Date end: ;" + DateTime.Now.ToString() + "\n");
//продолжительность
CSVWriter.Write("Time: ;" + (DateTime.Now - data1).ToString() + "\n");
//количество записей
CSVWriter.Write("Count: ;" + listControl0.Count.ToString() + "\n");
//цена деления
CSVWriter.Write("Frequency (ms): ;" + txtFren.Text + "\n");
//название графика
CSVWriter.Write("Name graph: ;" + zedGraphControl1.GraphPane.Title.Text +";;;"
+ zedGraphControl2.GraphPane.Title.Text + ";;;"
+ zedGraphControl3.GraphPane.Title.Text + ";;;"
+ zedGraphControl4.GraphPane.Title.Text + ";;;"
+ zedGraphControl5.GraphPane.Title.Text + "\n");
//Записываем заголовки осей Х и У
string _xAxisHeader0 = CheckCSVString(zedGraphControl1.GraphPane.XAxis.Title.Text);
string _yAxisHeader0 = CheckCSVString(zedGraphControl1.GraphPane.YAxis.Title.Text);
string _xAxisHeader1 = CheckCSVString(zedGraphControl2.GraphPane.XAxis.Title.Text);
string _yAxisHeader1 = CheckCSVString(zedGraphControl2.GraphPane.YAxis.Title.Text);
string _xAxisHeader2 = CheckCSVString(zedGraphControl3.GraphPane.XAxis.Title.Text);
string _yAxisHeader2 = CheckCSVString(zedGraphControl3.GraphPane.YAxis.Title.Text);
string _xAxisHeader3 = CheckCSVString(zedGraphControl4.GraphPane.XAxis.Title.Text);
string _yAxisHeader3 = CheckCSVString(zedGraphControl4.GraphPane.YAxis.Title.Text);
string _xAxisHeader4 = CheckCSVString(zedGraphControl5.GraphPane.XAxis.Title.Text);
string _yAxisHeader4 = CheckCSVString(zedGraphControl5.GraphPane.YAxis.Title.Text);
CSVWriter.Write( _xAxisHeader0 + ";" + _yAxisHeader0 + ";;"
+ _xAxisHeader1 + ";" + _yAxisHeader1 + ";;"
+ _xAxisHeader2 + ";" + _yAxisHeader2 + ";;"
+ _xAxisHeader3 + ";" + _yAxisHeader3 + ";;"
+ _xAxisHeader4 + ";" + _yAxisHeader4 + "\n");
//сохранить данные
//записываем точки из списка
for (int i = 0; i < listControl0.Count; i++)
{
CSVWriter.Write(listControl0[i].X.ToString() + ";" + listControl0[i].Y.ToString() + ";;"
+ listControl1[i].X.ToString() + ";" + listControl1[i].Y.ToString() + ";;"
+ listControl2[i].X.ToString() + ";" + listControl2[i].Y.ToString() + ";;"
+ listControl3[i].X.ToString() + ";" + listControl3[i].Y.ToString() + ";;"
+ listControl4[i].X.ToString() + ";" + listControl4[i].Y.ToString() + "\n");
}
CSVWriter.Close();
}
}
}