Professional Documents
Culture Documents
диплом Островский
диплом Островский
Пояснювальна записка
до дипломного проекту (роботи)
________________Магістр__________________
(ступінь вищої освіти)
2021
2
Форма № 25
ЗАТВЕРДЖУЮ
Завідувач кафедри ІТЕЗ_____________
_______________________________
«_______» _________________20___року
З А В Д А Н Н Я
НА ДИПЛОМНИЙ ПРОЄКТ (РОБОТУ) СТУДЕНТА(КИ)
Підпис, дата
Прізвище, ініціали та посада прийняв
Розділ
консультанта завдання видав виконане
завдання
1-3 Фарафонов О.Ю. 01.10.21
4 Севастьянов Н.М. 15.10.21
5 Якімцов Ю.В. 03.11.21
КАЛЕНДАРНИЙ ПЛАН
Строк виконання
№ Назва етапів дипломного
етапів проєкту Примітка
з/п проєкту (роботи)
( роботи )
1 Аналіз використання залізничних ваг 9.10.21
2 Постановка технічного завдання 11.10.21
3 Класифікація типів товарних вагонів 12.10.21
4 Розробка структури системи для створення 20.10.21
методології
5 Розробка методу та алгоритму 15.11.21
6 Вибір засобів реалізації 25.11.21
7 Розробка програмного забезпечення для ПК 02.12.21
8 Оформлення ПЗ та захист дипломного проекту 18.12.21
РЕФЕРАТ
ЗМІСТ
Реферат........................................................................................................................ 4
Вступ ........................................................................................................................... 7
2.1 Огляд існуючих підходів вирішення проблем при зважуванні вагонів ... 15
Висновки ................................................................................................................... 68
Додаток В – Презентація......................................................................................... 83
7
ВСТУП
Для розуміння ситуації щодо існуючих систем було проведено гляд існуючих
систем для зважування залізничного транспорту.
Найфункціональнішим програмним забезпеченням по роботі з електроними
залізничними вагами є система «Укрвес». Система «Укрвес» забезпечена
персональним комп'ютером з прикладним програмним забезпеченням, яке дозволяє:
- виконувати облік виваженої продукції та роздруковувати звітні документи;
12
Вагони бункерного типу - по суті, криті вагони або криті хопери з тією
різницею, що на одній рамі змонтовано кілька ємностей, призначених для
перевезення специфічних сипких вантажів (борошно, нафтобітум, гранульовані
матеріали).
20
У процесі визначенні типу вагонів нас цікавить факт різкого зростання або
спаду значень (процес наїзду або з'їзду окремих осей та обох відразу) і наближення
проїзду осі по вагону в рамках допустимої похибки.
Оскільки різні вагони можуть мати одну вісність але різне значення бази,
співвідношення заїздів/проїздів/з'їздів у часі буде різним. Так ми можемо
ідентифікувати рухомі об'єкти, що мають однакову осність.
Запропонований метод наближення дозволяє, маючи ряд експериментальних
даних, аналітично описати кожен тип рухомого об'єкту, висловивши переходи
наїздів/проїздів/з'їздів, а також їх співвідношення у процентах, що дозволить, при
однаковій вісності, але відмінних інших характеристиках (база, довжина вагона і
т.п.) відрізнити один тип вагону від іншого.
Загалом робота алгоритму ідентифікації залізничного рухомого складу
ілюструється рис. 3.10 і полягає у наступному.
Ваги формують множину сигналів S, що складається з підмножини Sm
сигналів з тензодатчиків та підмножини Sa сигналів з датчиків проходу осей
(можлива відсутність підмножини Sa, якщо ваги не оснащені датчиками проходу
осей).
29
(3.1)
Для камер відеоспостереження з ПЗС-матрицею 1/2":
(3.2)
де:
𝑓 – необхідне фокусне розташування об'єктива [мм];
𝐷 – максимальний відстань до об'єкта [м];
𝑉 – висота, 𝐻 - довжина об'єкта [м].
Коефіцієнти в зазначених формулах відображають розміри ПЗЗ-матриці (ПЗЗ –
прилад із зарядним зв'язком) камери відеоспостереження: по вертикалі і горизонталі
відповідно. З отриманих значень фокусна відстань об'єктива вибирається або
рівним, або в найближчою у меншу сторону (для відповідності випущеному
асортименту).
Для коректної роботи системи на основі запропонованих методів та алгоритмів
ІЧ-датчики повинні мати такі властивості:
- мати «сухі» контакти (несигнальні контакти, що забезпечують
замикання/розмикання електричного кола без подачі струму/напруги в ланцюг);
- підходящим часом реагування для спрацювання та повернення у вихідний
стан при проходженні міжколесної відстані;
- забезпечувати стабільну роботу на відстані від передавача до приймача.
При установці ІЧ-датчиків необхідно виконати такі вимоги:
- слід розташовувати ІЧ-датчик та відеокамеру в одній вертикальній площині;
- ІЧ-датчики повинні розташовуватися на такій висоті, щоб їх промені
переривали тільки колеса, а не інші елементи.
- у разі використання датчиків для отримання інформації щодо наявності
вагону на ваговій платформі при необхідності виявлення вагонів типу «платформа»
41
4 ОРГАНІЗАЦІЙНО-ЕКОНОМІЧНІ РОЗРАХУНКИ
Можливості: Загрози:
– масштабування – можливість збоїв при
– зручність роботи; нестандартних габаритах вагонів;
– можливість налаштування на будь
які габарити вагонів;
за на
змі доб
н у
Основні 1 4 62.5 160 12000 10 1000 133332 29333,
працівн 04
ики
Допомі 1 1 34.38 160 5500 12,73 700 74400 16368
жні
працівн
ики
Разом 1 5 X X Х X 1700 207732 45 701
виробни ,04
чих
працівн
иків
k - тариф;
n - обсяг послуг.
Розрахуємо вартість послуг для електропостачання за формулою 6.5:
S1 = 360 * 19.35 = 6966
Розрахуємо вартість послуг для Інтернету за формулою 6.5:
S1 = 360 * 10 = 3600
У табл. 4.9 внесені узагальнені дані з усіх попередніх таблиць. На основі цих
даних обчислюється загальна вартість витрат на реалізацію проекту протягом року.
49
, (5.1)
( )
.
( )
(5.2)
( )[ ]
(5.3)
( )
(5.4)
[ ]
(5.5)
h3=H-hp-h=3,2-0,8-2,14=0,26м (5.6)
При i = 1,5, ρстелі = 70%, ρстін = 50%, ρп = 30% для світильника ЛПО01
коефіцієнт використання дорівнює ŋ = 0,5.
Визначаємо сумарний світловий потік освітлювальної установки у даному
виробничому приміщенні:
(5.6)
ŋ
(5.9)
Nл=N*∙n=6*2=12 (5.10)
m=Фл*/Фл=2970/3200=0,928 (5.11)
- спецвзуття;
- засоби захисту голови, рук, обличчя, органів слуху, очей;
- захисні дерматологічні засоби;
- комплексні засоби захисту.
Індивідуальні засоби захисту органів дихання Даний вид ЗІЗ класифікують за
принципом дії і поділяють на фільтрувальні (Ф) і ізолюючі (І). Якщо перші подають
в зону дихання очищене повітря з робочої зони, то другі забезпечують подачу
повітря із спеціальних резервуарів або чистого середовища, яка знаходиться поза
робочою зоною. За призначенням індивідуальні засоби захисту органів дихання
поділяють на: протиаерозольні (пилозахисні); протигазові (газозахисні);
універсальні (пилегазозащітние). Ізолюючі ЗІЗ органів дихання в свою чергу
діляться на шлангові і автономні. Автономні ЗІЗ органів дихання мають власне
джерело дихальної суміші, який знаходиться в корпусі. Ці джерела бувають двох
типів - резервуарні і генеративні.
Індивідуальні засоби захисту людини. Спецодяг та спецвзуття Спецодяг - це
різноманітні костюми, куртки, комбінезони, халати, плащі, фартухи тощо. Спецодяг
ділиться на спеціальні групи: М, 3, Т, Р, Е, П, Я, В, К, Щ, В, Н, Б, що відповідають
тій середовищі, для якої спецодяг призначений. Основні вимоги до ізолюючих
костюмів, призначеним для захисту від небезпечних і шкідливих факторів хімічно
агресивних середовищ і т.д .: повинен бути герметичним і виключати попадання
води, поверхнево-активних речовин, газів, парів, рідин; не повинен втрачати
захисних властивостей при низькій або високій температурі; повинен забезпечувати
захисні властивості при наявності в навколишньому середовищі одночасно
декількох шкідливих факторів.
Спецвзуття також класифікується відповідно до критеріїв їх подальшої
експлуатації. До спецвзуття належать різноманітні чоботи, діелектричні боти,
черевики, напівчеревики, валянки, бахіли, калоші тощо. Окремі види спецвзуття
мають спеціальну посилену підошву від запобігання поранень ступні від гострих
предметів на будівельному майданчику. Також існує взуття для захисту від вібрації
тощо.
66
Засоби індивідуального захисту рук ЗІЗ для захисту рук від забруднень або
для недопущення удару електрострумом, недопущення опіків від агресивних
середовищ, від обморожень і т.п., налічує величезну кількість рукавичок і рукавиць,
яких сьогодні маса на ринку. Виготовляють їх з бавовни, льону, шкіри,
шкірозамінника, гуми, азбесту, полімерів.
Дерматологічні засоби індивідуального захисту Порівняно новим видом
індивідуальних захисних засобів для рук є дерматологічні засоби, багато з яких
використовуються і для захисту особи. Вони не тільки захищають шкіру під час
роботи, але і ефективно очищають її від стійких забруднень. Виділяють 3 групи
дерматологічних ЗІЗ: захисні, очищувальні, що регенерують. Такі ЗІЗ можуть бути у
вигляді кремів, гелів, спреїв. Для захисту працівників, що контактують з олійними
(водонерозчинними) робочими матеріалами (нафтопродуктами, маслами, фарбами,
клеями, смолами, сажею, кіптявою і т.д.), застосовуються захисні креми
гідрофільної дії. Для захисту працівників, що мають справу з розчинами солей,
кислот, лугів, мастильно-охолоджуючими рідинами, миючими та дезінфікуючими
засобами, вапном, цементом застосовують креми гидрофобної дії. Існують креми
універсальні, що захищають від всіх перерахованих вище факторів.
Засоби індивідуального захисту голови Застосування цих ЗІЗ направлено на
зниження травматизму співробітників на виробництві. Згідно з нормами і правилами
безпеки, вони повинні використовуватися всюди, де є ймовірність падіння на голову
будь-яких предметів. Класифікація ЗІЗ цієї категорії передбачає: захисні каски,
каскетці, шапки, шоломи, ковпаки і так далі. Найбільш поширеними в цій категорії
ЗІЗ є каски, які можуть бить6 загального призначення (газовики, будівельники і
т.д.), спеціального (шахтарі, лісоруби). Основним матеріалом для їх виготовлення є
пластмаса різного ступеня міцності з додаванням інших речовин (визначається
конкретними умовами експлуатації).
Засоби індивідуального захисту очей Засоби індивідуального захисту
працівників також повинні забезпечувати і захист очей. У більшості випадків з цією
метою використовують захисні окуляри, а для деяких видів робіт - захисні маски
67
ВИСНОВКИ
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/imgproc/imgproc.hpp"
#include <iostream>
#include <stdio.h>
using namespace cv;
int main(int argc, char** argv)
{
Mat src, src_gray;
src = imread( argv[1], 1 );//читаємо зображення з вказаного джерела
if( !src.data )
{ return -1; }
cvtColor( src, src_gray, CV_BGR2GRAY );//робимо перетворення у чорно-біле
GaussianBlur( src_gray, src_gray, Size(9, 9), 2, 2 ); //позбавляємось від шумів на зображенні
vector<Vec3f> circles;
HoughCircles( src_gray, circles, CV_HOUGH_GRADIENT, 1, src_gray.rows/8, 200, 100, 0, 0 );
for( size_t i = 0; i < circles.size(); i++ ) //Малюємо знайдені кола
{
Point center(cvRound(circles[i][0]), cvRound(circles[i][1]));
int radius = cvRound(circles[i][2]);
// circle center
circle( src, center, 3, Scalar(0,255,0), -1, 8, 0 );
// circle outline
circle( src, center, radius, Scalar(0,0,255), 3, 8, 0 );
}
waitKey(0);
return 0;
}
72
unit Main;
interface
uses
type
TForm_Main = class(TForm)
MainMenu1: TMainMenu;
N_Menu: TMenuItem;
N_Setup: TMenuItem;
N_Exit: TMenuItem;
N_CamerasSetup: TMenuItem;
N_ParametersSetup: TMenuItem;
N_About: TMenuItem;
N_Reference: TMenuItem;
N_Contacts: TMenuItem;
N_BlockSetup: TMenuItem;
N_UsersSetup: TMenuItem;
N_MenuExit: TMenuItem;
N_Log: TMenuItem;
Image_LeftPhoto: TImage;
Image_RightPhoto: TImage;
Label_ResultLeft_Inscr: TLabel;
73
Label_ResultRight_Inscr: TLabel;
N_Developer: TMenuItem;
N_LeftTestPhoto: TMenuItem;
N_RightTestPhoto: TMenuItem;
OpenDialog_TestPhoto: TOpenDialog;
Label_LeftCoord1_Inscr: TLabel;
Label_LeftCoord2_Inscr: TLabel;
Label_RightCoord1_Inscr: TLabel;
Label_RightCoord2_Inscr: TLabel;
Label_TotalResult_Inscr: TLabel;
Label_TotalResult: TLabel;
Button_FindLeftPositions: TButton;
Button_FindRightPositions: TButton;
Label_LeftCoord1: TLabel;
Label_LeftCoord2: TLabel;
Label_RightCoord1: TLabel;
Label_RightCoord2: TLabel;
Button_WagonType: TButton;
Label_Cam1_Inscr: TLabel;
Label_Cam2_Inscr: TLabel;
Label_LeftPos: TLabel;
Label_RightPos: TLabel;
private
74
{ Private declarations }
public
{ Public declarations }
end;
var
Form_Main: TForm_Main;
implementation
uses
Authorisation;
{$R *.dfm}
begin
end;
begin
end;
begin
75
end;
var
bmp: TBItmap;
mem: TMemoryStream;
jpeg0: TJPEGImage;
begin
jpeg0:=TJPEGImage.Create;
jpeg0.LoadFromFile(Input_Photo);
bmp:= Tbitmap.Create;
try
bmp.Width := Output_Width;
bmp.Height:= Output_Height;
jpeg0.Assign( bmp );
Result:=true;
except
Result:=false;
end;
bmp.free;
jpeg0.SaveToFile(Output_Photo);
jpeg0.Free;
76
end;
//!!!----------------------------------------------------------------------------
var
Color: integer;
begin;
repeat;
Color:=pBuf^;
) shr 8
) * $00010101;
dec(Count);
inc(pBuf);
until Count<=0;
end;
var
p, q: pInteger;
begin;
p:=ScanLine[Height-1];
q:=ScanLine[0];
end;
end;
var
Color: integer;
begin;
repeat;
Color:=pBuf^;
) shr 24
) * $00010101;
dec(Count);
inc(pBuf);
until Count<=0;
end;
var
p, q: pInteger;
begin;
p:=ScanLine[Height-1];
q:=ScanLine[0];
end;
78
end;
const
var
begin;
c0:=pBuf[0];
t0:=c0 * Coeff;
inc(integer(pBuf),SizeOf(pBuf[0]));
dec(Count);
end;
c0:=pBuf[0];
dec(integer(pBuf),2*SizeOf(pBuf[0]));
c1:=pBuf[3];
t1:=c1 * Coeff;
t0:=c0 * Coeff;
c0:=pBuf[4];
dec(Count,4);
79
inc(integer(pBuf),4*SizeOf(pBuf[0]));
c1:=pBuf[1];
t1:=c1 * Coeff;
t0:=c0 * Coeff;
c0:=pBuf[2];
end;
c1:=pBuf[1];
t1:=c1 * Coeff;
t0:=c0 * Coeff;
end;
end;
var
p, q: pIntegerArray;
begin;
p:=ScanLine[Height-1];
q:=ScanLine[0];
end;
end;
80
var
jpeg: TJPEGImage;
bmp: TBitmap;
begin
jpeg := TJPEGImage.Create;
try
jpeg.LoadFromFile(FileName);
bmp := TBitmap.Create;
try
bmp.Assign(jpeg);
bmp.SaveTofile(ChangeFileExt(FileName, '.bmp'));
finally
bmp.Free
end;
finally
jpeg.Free
end;
end;
var
jpeg: TJPEGImage;
bmp: TBitmap;
81
begin
jpeg := TJPEGImage.Create;
try
jpeg.LoadFromFile(FileName);
bmp := TBitmap.Create;
try
bmp.Assign(jpeg);
//ShaBitmapToGrayscale1(bmp);
//Form_main.Image_LeftPhoto.Picture.Bitmap:=bmp;
bmp.SaveTofile(ChangeFileExt(FileName, '.bmp'));
finally
bmp.Free
end;
finally
jpeg.Free
end;
end;
//!!!----------------------------------------------------------------------------
var
LPhotoName:String;
begin
Form_Main.OpenDialog_TestPhoto.Execute;
LPhotoName:=Form_Main.OpenDialog_TestPhoto.FileName;
JPEGtoGrayBMP(LPhotoName);
82
ChangeFileExt(LPhotoName, '.bmp');
Form_main.Image_LeftPhoto.Picture.LoadFromFile(LPhotoName);
//!!!
Form_Main.Label_TotalResult.Font.Color:=clGreen;
end;
var
RPhotoName:String;
begin
Form_Main.OpenDialog_TestPhoto.Execute;
RPhotoName:=Form_Main.OpenDialog_TestPhoto.FileName;
JPEGtoGrayBMP(RPhotoName);
ChangeFileExt(RPhotoName, '.bmp');
Form_main.Image_RightPhoto.Picture.LoadFromFile(RPhotoName);
end;
end.
83
ДОДАТОК В – ПРЕЗЕНТАЦІЯ