Дипломного работа


Download 1.8 Mb.
bet5/13
Sana17.06.2023
Hajmi1.8 Mb.
#1544414
1   2   3   4   5   6   7   8   9   ...   13
Bog'liq
Мирахмедов Н.И. описание

III–Глава. Разработка лабораторного стенда

3.1. Разработка программного обеспечения на базе С++


int rail1 = 0;
int rail2 = 0;
int rail3 = 0;
void setup() {
pinMode(14,INPUT_PULLUP);// вход 1 блок участка
pinMode(15,INPUT_PULLUP);// вход 2 блок участка
pinMode(16,INPUT_PULLUP);// вход 3 блок участка
pinMode(10,OUTPUT);//к1
pinMode(9,OUTPUT); //з1
pinMode(8,OUTPUT); //ж1
pinMode(7,OUTPUT); //к3
pinMode(6,OUTPUT); //з3
pinMode(5,OUTPUT); //ж3
pinMode(4,OUTPUT); //к5
pinMode(3,OUTPUT); //з5
pinMode(2,OUTPUT); //ж5
//ТЕСТ СВЕТОФОРА
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
delay(200);
digitalWrite(3,LOW);
digitalWrite(4,HIGH);
delay(200);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
delay(200);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
delay(200);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
delay(200);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
delay(200);
digitalWrite(8,LOW);
digitalWrite(9,HIGH);
delay(200);
digitalWrite(9,LOW);
digitalWrite(10,HIGH);
delay(200);
digitalWrite(10,LOW);

//таймер считивания сигналов


Serial.begin(9600);
}

void loop() {


int rail1 = !digitalRead(16);
int rail2 = !digitalRead(15);
int rail3 = !digitalRead(14);

//ЖЕЛТИЙ СВЕТ СВЕТОФОРОВ


//второй светофор жолтий
if(rail1 == 1 && rail2 == 1) {
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
digitalWrite(5,LOW);
}else if(rail1 == 1 && rail2 == 0) {
digitalWrite(7,LOW);
digitalWrite(6,LOW);
digitalWrite(5,HIGH);
}else if(rail1 == 0 && rail2 == 0) {
rail1 == 0; rail2 == 0;
}
//третий сетофор жолтий сигнал
if(rail2 == 1 && rail3 == 1){
digitalWrite(10,HIGH);
digitalWrite(9,LOW);
digitalWrite(8,LOW);
}else if(rail2 == 1 && rail3 == 0) {
digitalWrite(10,LOW);
digitalWrite(9,LOW);
digitalWrite(8,HIGH);
}else if(rail2 == 0 && rail3 == 0) {
rail2 == 0; rail3 == 0;
}

//первий светофор


if(rail1 > 0 && rail1 < 2) {
digitalWrite(4,HIGH);
digitalWrite(3,LOW);
digitalWrite(2,LOW);
}
delay(10);
if(rail1 > -1 && rail1 < 1) {
digitalWrite(4,LOW);
digitalWrite(3,HIGH);
digitalWrite(2,LOW);

}


//второй светофор
if(rail2 > 0 && rail2 < 2) {
digitalWrite(7,HIGH);
digitalWrite(6,LOW);
digitalWrite(5,LOW);
}
if(rail2 > -1 && rail2 < 1 ) {
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
}
//третий светофор
if(rail3 > 0 && rail3 < 2) {
digitalWrite(10,HIGH);
digitalWrite(9,LOW);
digitalWrite(8,LOW);
}

if(rail3 < 1 && rail3 > -1) {


digitalWrite(10,LOW);
digitalWrite(9,HIGH);
digitalWrite(8,LOW);
}
}

Информация о команд Arduino которого были использованны в нашем проекте


Функция pinMode
Описание

Устанавливает режим работы заданного вход/выхода(pin) как входа или как выхода. Подробнее про цифровые вход/выходы(pins).
Синтаксис

pinMode(pin, mode)
Параметры




Download 1.8 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   13




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling