
- •1 Вступ 8
- •2 Технічне завдання на розробку мікропроцесорної системи керуванням електрообладнанням автомобіля каМаз 10
- •1 Вступ
- •2 Технічне завдання на розробку мікропроцесорної системи керуванням електрообладнанням автомобіля каМаз
- •2.1 Загальний опис системи
- •2.2 Інтерфейсна система управління
- •2.3 Розвиток інтерфейсної системи управління
- •3 Розробка структурної схеми системи
- •4 Розробка схеми електричної принципової
- •4.1 Вибір мікроконтролерів
- •Умовно графічне мікроконтролера aTmega16u2-mur позначення показано на рисунку 4.1.
- •Параметри мікроконтролеру надані в таблиці 4.1
- •4.2 Апаратні обчислювальні платформи
- •4.6 Вибір дисплею
- •4.7 Вибір датчиків
- •5.1 Розробка алгоритму програми
- •6 Економічний розділ
- •6.1 Розрахунок вартості виготовлення пристрою
- •6.1.1 Розрахунок витрат на покупні вироби та матеріали
- •6.2 Розрахунок витрат на експлуатацію пристрою
- •6.3 Розрахунок приведених витрат
- •7. Конструювання плати друкованого монтажу та розрахунок надійності роботи пристрою
- •7.1 Розрахунок провідного малюнка плати
- •7.2 Розрахунок відстані між елементами провідного рисунка
- •8 Охорона праці
- •8.1 Вимоги до освітлення
- •8.2 Пожежна безпека
8.1 Вимоги до освітлення
1) Приміщення з ЕОМ повинні мати природне і штучне освітлення відповідно до СНиП II-4-79 "Естественное и искуственное освещение".
2) Природнесвітло повинно проникати через бічні світлопрорізи, зорієнтовані, як правило, на північ чи північний схід, і забезпечувати коефіцієнт природної освітленості (КПО) не нижче 1,5 %. Розрахунки КПО проводяться відповідно до СНиП II-4-79.
3) Вікна приміщень з відеотерміналами повинні мати регулювальні пристрої для відкривання, а також жалюзі, штори, зовнішні козирки тощо.
4) У виробничих та адміністративно-громадських приміщеннях, де переважають роботи з документами, допускається вживати систему комбінованого освітлення (додатково до загального освітлення встановлюються світильники місцевого освітлення).
5) Загальне освітлення має бути виконане у вигляді суцільних або переривчатих ліній світильників, що розміщуються збоку від робочих місць (переважно зліва) паралельно лінії зору працівників.
6) Як джерело світла при штучному освітленні повинні застосовуватися, як правило, люмінесцентні лампи типу ЛБ. При обладнанні відбивного освітлення у виробничих та адміністративно-громадських приміщеннях можуть застосовуватися металогалогенові лампи потужністю до 250 Вт. Допускається у світильниках місцевого освітлення застосовувати лампи розжарювання.
7) Коефіцієнт запасу (Кз) відповідно до СНиП II-4-79 для освітлювальної установки загального освітлення слід приймати рівним 1,4.
8) Рівень освітленості на робочому столі в зоні розташування документів має бути в межах 300 - 500 лк. У разі неможливості забезпечити даний рівень освітленості системою загального освітлення допускається застосування світильників місцевого освітлення, але при цьому не повинно бути відблисків на поверхні екрану та збільшення освітленості екрану більше ніж до 300 лк.
9) Необхідно використовувати систему вимикачів, що дозволяє регулювати інтенсивність штучного освітлення залежно від інтенсивності природного, а також дозволяє освітлювати тільки потрібні для роботи зони приміщення.
10) Для забезпечення нормованих значень освітлення в приміщеннях з відеотерміналами ЕОМ загального та персонального користування необхідно очищати віконне скло та світильники не рідше ніж 2 рази на рік, та своєчасно проводити заміну ламп, що перегоріли.
8.2 Пожежна безпека
Ступінь вогнестійкості будинків приймається в залежності від їхнього призначення, категорії по вибухопожежній і пожежній небезпеці, по поверховості, площі поверху в межах пожежного відсіку згідно НАПБ Б.03.002-2007.
Будинок, у якому знаходиться лабораторія по пожежній небезпеці будівельних конструкцій відноситься до категорії K1 (малопожежонебезпечні), скільки тут присутні займисті (книги, документи, меблі, оргтехніка і т.д.) і тяжкогорючі речовини (сейфи, різне устаткування і т.д.), що при взаємодії з вогнем можуть горіти без вибуху.
По конструктивних характеристиках будинок можна віднести до будинків з несучими і огороджуючими конструкціями із природних або штучних кам'яних матеріалів, бетону або залізобетону, де для перекриттів допускається використання дерев'яних конструкцій, захищених штукатуркою або важкогорючими листовими, а також плитними матеріалами.
Отже, ступінь вогнестійкості будинку можна визначити як третю (III).
Приміщення лабораторії по функціональній пожежній небезпеці відноситься до класу Ф 4.2 – вищі навчальні заклади.
Причини виникнення пожежі
Пожежа в лабораторії, може привести до дуже несприятливих наслідків (втрата коштовної інформації, псування майна, загибель людей і т.д.), тому необхідно:
-виявити й усунути всі причини виникнення пожежі;
-розробити план заходів для ліквідації пожежі в будинку;
-план евакуації людей з будинку.
Причинами виникнення пожежі можуть бути:
- несправності електропроводки, розеток і вимикачів які можуть
привести до короткого замикання або пробою ізоляції;
- використання ушкоджених (несправних) електроприладів;
- використання в приміщенні електронагрівальних приладів з відкритими нагрівальними елементами;
- виникнення пожежі внаслідок влучення блискавки в будинок;
- загоряння будинку внаслідок зовнішніх впливів;
- неакуратне поводження з вогнем і недотримання мір пожежної безпеки.
Профілактика пожежі
Для профілактики пожежі надзвичайно важлива правильна оцінка пожежонебезпеки будинку, визначення небезпечних факторів і обґрунтування способів і засобів пожежопопередження і захисту.
Одне з умов забезпечення пожежобезпеки – ліквідація можливих джерел запалення.
У лабораторії джерелами запалення можуть бути:
-несправне електроустаткування, несправності в електропроводці, електричних розетках і вимикачах. Для виключення виникнення пожежі з цих причин необхідно вчасно виявляти й усувати несправності, проводити плановий огляд і вчасно усувати всі несправності;
- несправні електроприлади. Необхідні міри для виключення пожежі містять у собі своєчасний ремонт електроприладів, якісне виправлення поломок, не використання несправних електроприладів;
- обігрівання приміщення електронагрівальними приладами з відкритими нагрівальними елементами. Відкриті нагрівальні поверхні можуть спричинити пожежу, тому що в приміщенні знаходяться паперові документи і довідкова література у виді книг, посібників, а папір
-легкозаймистий предмет. З метою профілактики пожежі пропоную не використовувати відкриті обігрівальні прилади в приміщенні лабораторії;
-коротке замикання в електропроводці. З метою зменшення імовірності виникнення пожежі внаслідок короткого замикання необхідно, щоб електропроводка була схованою.
-влучення в будинок блискавки. У літній період під час грози можливе влучення блискавки внаслідок чого можливий пожежа.
Щоб уникнути цього я рекомендую установити на даху будинку блискавковідвід;
З метою запобігання пожежі пропоную проводити протипожежний інструктаж, на якому ознайомити працівників із правилами протипожежної безпеки, а також навчити правилам використання первинних засобів пожежогасіння.
У випадку виникнення пожежі необхідно відключити електроживлення,викликати по телефоні пожежну команду, евакуювати людей із приміщення відповідно до плану евакуації, приведеному на рисунку 1 і приступити до ліквідації пожежі вогнегасниками.
При наявності невеликого вогнища полум'я,можна скористатися підручними засобами з метою припинення доступу повітря до об'єкта загоряння.
Висновок
Мета даного дипломного проекту - розробка мультиплексної системи управління електрообладнанням автомобіля КАМАЗ з використанням мікроконтроллера. В дипломному проекті наведено аналітичний огляд існуючих конструкцій і показана необхідність впровадження мікроконтролерів для збільшення надійності всього електрообладнання автомобіля і зниження кількості джгутів, кабелів, окремих модулів керування та індикації.
Так само розглянуті технічні характеристики, схема підключення і алгоритм роботи Arduino Uno та Arduino Mega і можливість їхнього впровадження на виробництво. Розраховані вихідні параметри, так само присвячені процесу програмування мікроконтролерів Arduino Uno та Arduino Mega. Встановлення мікроконтролера Arduino Uno та Arduino Mega характеризується відносно екологічним виробництвом: застосовуються екологічно чисті матеріали, виробництво не є брудним.
Список використаних джерел
Додаток А Лістинг програми
const int buttonPin = 2;
const int buttonPin1 = 3;
const int buttonPin2 = 4;
const int buttonPin3 = 5;
const int ledPin = 13;
const int ledPin1 = 12;
const int ledPin2 = 11;
int buttonState = 0;
int buttonState1 = 0;
int buttonState2 = 0;
int buttonState3 = 0;
int ledState = 0;
int ledState1 = 0;
int ledState2 = 0;
long previousMillis = 0;
long previousMillis1 = 0;
long previousMillis2 = 0;
long interval = 450;
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(ledPin1, OUTPUT);
pinMode(ledPin2, OUTPUT);
pinMode(buttonPin, INPUT);
pinMode(buttonPin1, INPUT);
pinMode(buttonPin2, INPUT);
pinMode(buttonPin3, INPUT);
}
void loop(loop){
unsigned long currentMillis = millis();
buttonState = digitalRead(buttonPin);
buttonState1 = digitalRead(buttonPin1);
buttonState2 = digitalRead(buttonPin2);
buttonState3 = digitalRead(buttonPin3);
if (buttonState3 == HIGH)
ledState2 = LOW;
else
ledState2 = HIGH;
if(currentMillis - previousMillis1 > interval) {
previousMillis1 = currentMillis;
if ((buttonState == HIGH) or (buttonState2 == HIGH))
ledState = not ledState;
else
ledState = LOW;
if ((buttonState1 == HIGH) or (buttonState2 == HIGH))
ledState1 = not ledState1;
else
ledState1 = LOW;
}
digitalWrite(ledPin1, ledState1);
digitalWrite(ledPin, ledState);
digitalWrite(ledPin2, ledState2);
}
#include <OneWire.h>
#include <UTFT.h>
#include <floatToString.h>
const int buttonPin = 2;
const int buttonPin1 = 3;
int buttonState = 0;
int buttonState1 = 0;
int lastbuttonState = 0;
int lastbuttonState1 = 0;
OneWire ds (10); // on pin 10
extern uint8_t SmallFont[];
extern uint8_t BigFont[];
extern uint8_t SevenSegNumFont[];
extern uint8_t Ubuntu[];
extern unsigned int LOW1[4018];
extern unsigned int HIGH1[7632];
boolean BlinkRight_bool;
unsigned long previousMillis;
extern unsigned int right[4018];
UTFT myGLCD(ITDB50,38,39,40,41);
float GetTempCelsius() {
byte i;
byte present = 0;
byte type_s;
byte data[12];
byte addr[8];
float celsius;
if (! ds.search (addr)) {
ds.reset_search ();
delay (250);
//return 0;
}
ds.reset ();
ds.select (addr);
ds.write (0x44,1); // start conversion, with parasite power on at the end
delay (1000); // maybe 750ms is enough, maybe not
// we might do a ds.depower () here, but the reset will take care of it.
present = ds.reset ();
ds.select (addr);
ds.write (0xBE); // Read Scratchpad
for (i = 0; i < 9; i++) { // we need 9 bytes
data[i] = ds.read ();
}
// convert the data to actual temperature
unsigned int raw = (data[1] << 8) | data[0];
if (type_s) {
raw = raw << 3; // 9 bit resolution default
if (data[7] == 0x10) {
// count remain gives full 12 bit resolution
raw = (raw & 0xFFF0) + 12 - data[6];
}
} else {
byte cfg = (data[4] & 0x60);
if (cfg == 0x00) raw = raw << 3; // 9 bit resolution, 93.75 ms
else if (cfg == 0x20) raw = raw << 2; // 10 bit res, 187.5 ms
else if (cfg == 0x40) raw = raw << 1; // 11 bit res, 375 ms
// default is 12 bit resolution, 750 ms conversion time
}
celsius = (float)raw / 16.0;
return celsius;
}
void setup (void) {
pinMode(2,INPUT);
myGLCD.InitLCD();
myGLCD.clrScr();
myGLCD.setFont(Ubuntu);
myGLCD.setColor(255,255,0);
myGLCD.drawBitmap(700, 0, 98, 41, LOW1, 1);
myGLCD.drawBitmap(700, 42, 98, 41, HIGH1, 1);
myGLCD.print("temp: ", 0, 0);
}
void BlinkRight() {
unsigned long currentMillis = millis();
// if the LED is off turn it on and vice-versa:
if (digitalRead(2) == HIGH) {
if(currentMillis - previousMillis > 600) {
previousMillis = currentMillis;
BlinkRight_bool = !BlinkRight_bool;
if (BlinkRight_bool)
myGLCD.drawBitmap(550,00,144,53,right,1) ;
else {
myGLCD.setColor(0,0,0);
myGLCD.fillRect(550,0,693,52);
myGLCD.setColor(255,255,0);
}
}
}
else {
myGLCD.setColor(0,0,0);
myGLCD.fillRect(550,0,693,52);
myGLCD.setColor(255,255,0);
}
}
void loop (void) {
char buffer[10];
float celsius = GetTempCelsius();
myGLCD.setColor(255,255,0);
myGLCD.print(floatToString(buffer, celsius, 1, 10), 120, 0, 0);
BlinkRight();
}
void setup(){
pinMode(buttonPin, INPUT);
Serial.begin(9600);
}
void loop(){
buttonState = digitalRead(buttonPin);
if (lastbuttonState != buttonState) {
lastbuttonState = buttonState;
if (buttonState == HIGH)
Serial.write('a');
else
Serial.write('b'); }
buttonState1 = digitalRead(buttonPin1);
if (lastbuttonState1 != buttonState1) {
lastbuttonState1 = buttonState1;
if (buttonState1 == HIGH)
Serial.write('c');
else
Serial.write('d'); }
}