Расчет вероятности выхода из строя деталей автомобиля

Автор: 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 и µ:

Работа содержит 1 файл

Курсовой проект по ЯВУ.doc

— 272.50 Кб (Скачать)

МОСКОВСКИЙ  ГОСУДАРСТВЕННЫЙ  АВТОМОБИЛЬНО-ДОРОЖНЫЙ ИНСТИТУТ          (ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ) 
 

Кафедра «Автоматизированные  системы управления»

 
 
 
 
 
 
 
 
 
 
 

Кафедра

«Автоматизированные системы управления» 
 

Курсовая  работа по дисциплине

«Программирование на языках высокого уровня» 
 

Тема:

«Расчет вероятности выхода из строя деталей  автомобиля» 
 
 
 
 
 

Выполнил:              

Студент группы 2АСУ2

Тимаков Д.Ю.

Проверил:

Доцент  кафедры АСУ

Баринов К.А. 
 
 
 
 
 

Москва 2008

Задание

Вариант 21

Плотность вероятности выхода из строя деталей автомобиля в результате старения материала описывается законом Вейбула:                  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 и µ:

деталь      1                2              3                   
n                1.54          1.69         1.82       

µ                0.00723    0.00913   0.00825    

  

                                     T           h                                      m-1

                          Q(T)=∫ p(t)dt=―(P(0)+P(T)+4P(T-h)+∑ (4*P((2k-1)h)+2*P(2kh)),  где

                                    0             3                                    k=1

2m – число точек деления интервала интегрирования (2m=20);

h=T/2m – шаг интегрирования; 

ЗАДАНИЯ:

  1. Результат вычислений представить в виде таблицы, формат которой разработать.
  2. Значение интеграла определять с удвоенной точностью, записав алгоритм в виде процедурного блока.

Назначение программы

      Данная  программа предназначена для  расчета вероятности выхода из строя  деталей автомобиля в результате постепенного старения. С помощью  этой программы можно определить вероятность выхода из строя деталей  за определенный промежуток времени с определенным интервалом.

Выбор среды разработки

    • Среда разработки курсового проекта – Delphi 7, так как в этой среде, в отличие от таких сред программирования как Borland C или Turbo Pascal, имеется привычный для пользователя и удобный интерфейс.

 Руководство пользователя

Общая информация

     Для начала работы с программы нужно  запустить исполняемый файл 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 – параметры, используемые в формуле расчета вероятности выхода из строя деталей; 
 
 
 
 
 
 
 
 

ОПИСАНИЕ  АЛГОРИТМОВ (блок-схемы)

function Q (t,a,b:real):real – функция для расчета вероятности выхода из строя деталей автомобиля в результате постепенного старения через Т лет эксплуатации.

 

procedure TForm1.Button2Click – расчет вероятности выхода из строя деталей

procedure TForm1.load – загрузка файла

procedure TForm1.N2Click – сохранение в файл

 

Текст программы

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-1)*ln(t))/exp(exp(n*ln(m)))*exp(n*ln(t));

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*P(2*i*h,a,b);

Result:=h/3*(P(t,a,b)+4*P(19*t/20,a,b)+sum);

end; 

procedure TForm1.FormCreate(Sender: TObject);

begin

Panel2.Visible:=false;

Panel3.Visible:=false;

StringGrid1.Visible:=false;

Информация о работе Расчет вероятности выхода из строя деталей автомобиля