Автор: Ivan Petrov, 10 Октября 2010 в 22:00, курсовая работа
Программа разработана в среде программирования Delphi
Плотность вероятности выхода из строя деталей автомобиля в результате старения материала описывается законом Вейбула: n
n n-1 -µ n
P(t)=nµ t e t ,где
P(t) – плотность вероятности выхода из строя за время эксплуатации t;
µ, n - параметры закона;
Вероятность выхода из строя деталей автомобиля в результате постепенного старения через Т лет эксплуатации определяется как:
T
Q(T)=∫ p(t)dt
0
Определить Q(T) при изменении Т от Тmin до Tmax с интервалом ΔТ для деталей 1, 2, 3 с параметрами n и µ:
МОСКОВСКИЙ
ГОСУДАРСТВЕННЫЙ
АВТОМОБИЛЬНО-ДОРОЖНЫЙ
ИНСТИТУТ
(ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ
УНИВЕРСИТЕТ)
Кафедра «Автоматизированные системы управления»
Кафедра
«Автоматизированные
системы управления»
Курсовая работа по дисциплине
«Программирование
на языках высокого
уровня»
Тема:
«Расчет
вероятности выхода
из строя деталей
автомобиля»
Выполнил:
Студент группы 2АСУ2
Тимаков Д.Ю.
Проверил:
Доцент кафедры АСУ
Баринов
К.А.
Москва 2008
Вариант 21
Плотность вероятности выхода из строя деталей автомобиля в результате старения материала описывается законом Вейбула: n
n n-1 -µ n
P(t) – плотность вероятности выхода из строя за время эксплуатации t;
µ, n - параметры
закона;
Вероятность выхода из строя деталей автомобиля в результате постепенного старения через Т лет эксплуатации определяется как:
Определить Q(T) при изменении Т от Тmin до Tmax с интервалом ΔТ для деталей 1, 2, 3 с параметрами n и µ:
деталь 1 2 3 |
n
1.54 1.69
1.82
µ 0.00723 0.00913 0.00825 |
T h
Q(T)=∫ p(t)dt=―(P(0)+P(T)+4P(T-h)+∑ (4*P((2k-1)h)+2*P(2kh)), где
2m – число точек деления интервала интегрирования (2m=20);
h=T/2m –
шаг интегрирования;
ЗАДАНИЯ:
Данная программа предназначена для расчета вероятности выхода из строя деталей автомобиля в результате постепенного старения. С помощью этой программы можно определить вероятность выхода из строя деталей за определенный промежуток времени с определенным интервалом.
Для начала работы с программы нужно запустить исполняемый файл Pro.exe. Откроется главное окно программы:
Меню «Файл» содержит в себе пункты: «Загрузить…», «Сохранить…» и «Выход».
Для того чтобы начать работу с программой необходимо выбрать пункт меню «Загрузить…». Вследствие чего произойдет открытие диалога выбора файла.
После открытия текстового файла с параметрами трех деталей, в главном окне отобразиться таблица с названием столбцов и поля ввода значений. Если пользователь задаст промежуток времени эксплуатации и шаг, то при нажатии кнопки «Определить Q(t)» в таблице отобразится: время эксплуатации, результат расчета вероятности выхода из строя деталей автомобиля в результате постепенного старения.
Входными данными является любой текстовый файл, содержащий в себе параметры деталей, требуемые по заданию, например «data.txt». Каждая деталь имеет по два параметра. Все параметры каждой детали записываются в отдельной строке и должны быть разделены хотя бы одним пробелом. Параметры используются в формуле для расчета вероятности, также выводятся в таблицу в качестве названия столбцов.
Содержимое файла «data.txt»,
1.54 0.00723
1.69 0.00913
1.82 0.00825
В
данной программе представлена только
одна форма, а именно «ProForm = class(TForm)».
В данной форме было изменено начальное
положение при запуске – по центру. Все
остальные свойства остались без изменения.
Компонент: класс | Описание | Содержание (значение) |
MainMenu1: TMainMenu; | Главное меню программы | |
N1: TMenuItem; | Элемент главного меню | |
Load: TMenuItem; | Пункт меню «Загрузить…» | |
N3: TMenuItem; | Пункт меню «-» (разделитель) | |
N4: TMenuItem; | Пункт меню «Выход» | |
N7:TMenuItem; | Пункт меню «Расчет вероятности» - «Определить Q(T)» | |
StringGrid1: TStringGrid; | Таблица | |
Panel1: TPanel; | На этой панели расположен компонент StringGrid1 | |
Panel2: TPanel; | На этой панели расположены: кнопка Button1; метки:Label1, Label4, Label5, Label6, label7, Label8, SpinEdit1< SpinEdit2, SpinEdit1 | |
Panel3: TPanel; | На этой панели расположены: Label1, Label2; | |
Button1: TButton; | Кнопка «Определить Q(T)» | Определение вероятности выхода из строя деталей автомобиля |
Label1: TLabel; | Метка на Panel2 | «Введите промежуток лет с» |
Label2: TLabel; | Метка на Panel3 | «Q(T) – вероятность выхода из строя деталей автомобиля в результате постепенного старения через t лет» |
Label3: TLabel; | Метка на Panel3 | «P(T) – плотность вероятности выхода из строя за время эксплуатации t» |
Label4: TLabel; | Метка на Panel2 | «года» |
Label5:TLable; | Метка на Panel2 | «Шаг (лет)» |
Label6:TLable; | Метка на Panel2 | «по» |
Label7:TLable; | Метка на Panel2 | «год» |
Label8:TLable; | Метка на Panel3 | Метка "Шаг" разбивает промежуток лет по шагам. |
SpinEdit1:TSpinEdit; | Окно редактирования со счетчиком №1 | Компонент SpinEdit обеспечивает ввод целых чисел. SpinEdit1 – это счетчик промежутка времени по интервалу. |
SpinEdit2: TSpinEdit; | Окно редактирования со счетчиком №2 | SpinEdit2 – это начальная точка отсчета времени. (Tmin) |
SpinEdit1: TSpinEdit; | Окно редактирования со счетчиком№2 | SpinEdit3 – это конечная точка отсчета времени (Tmax) |
Метод | Описание |
procedure Load(Sender: TObject); | Обработчик выбора функции меню «Файл» - «Загрузить…», вызывает диалоговое окно открытия файла, после его открытия считывает данные, хранящиеся в этом файле |
procedure N2Click(Sender: TObject); | Обработчик выбора функции «Файл» -«Сохранить…», вызывает диалоговое окно сохранения файла, считывает данные из таблицы и сохраняет их в текстовый файл. |
procedure TForm1.N7Click | Пункт меню, дублирующий клавишу «Рассчитать Q(T)» (Вероятность выхода из строя) |
procedure N4Click(Sender: TObject); | Обработчик выбора функции «Файл» - «Выход» |
procedure Button2Click(Sender: TObject); | Обработчик нажатия на клавишу «Рассчитать Q(T)» (Вероятность выхода из строя) |
procedure FormCreate(Sender: TObject); | Задаем названия столбцов |
Так
же программе используются отдельные
функции для расчета плотности вероятности
P(T) и для расчета вероятности Q(T).
Function P
(t,n,m:real):real; параметры: t – время эксплуатации
(количество лет); n, m – параметры закона
Вейбула ;
function Q
(t,a,b:real):real; параметры: t – время; a, b – параметры,
используемые в формуле расчета вероятности
выхода из строя деталей;
unit kurs;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids,
ExtCtrls, Menus, Spin;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
Panel2: TPanel;
Label1: TLabel;
Button2: TButton;
MainMenu1: TMainMenu;
SaveDialog1: TSaveDialog;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
Panel3: TPanel;
Label2: TLabel;
Label3: TLabel;
N5: TMenuItem;
Label5: TLabel;
SpinEdit1: TSpinEdit;
Label6: TLabel;
Label4: TLabel;
Label7: TLabel;
Label8: TLabel;
SpinEdit2: TSpinEdit;
SpinEdit3: TSpinEdit;
N6: TMenuItem;
N7: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure load(Sender: TObject);
procedure N2Click(Sender: TObject);
private
n,m:array of real;
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function P (t,n,m:real):real;
begin
Result:=n*exp(n*ln(m))*exp((n-
end;
function Q (t,a,b:real):real;
var h,sum:real;
i:integer;
begin
h:=t/20;
sum:=0;
for i:=1 to 9 do sum:=sum+4*P((2*i-1)*h,a,b)+2*
Result:=h/3*(P(t,a,b)+4*P(19*
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Panel2.Visible:=false;
Panel3.Visible:=false;
StringGrid1.Visible:=false;
Информация о работе Расчет вероятности выхода из строя деталей автомобиля