Адаптивный светофор
![Адаптивный светофор](/userdata/blogs/blogs_27144/image_l.png)
блог
Битаева Жадра, Садыков Алихан, Максимов Омирбек - магистранты 2 курса Кафедры "Искусственный интеллект и BigData" Казахского национального университета имени аль-Фараби. Зав.кафедрой Мансурова М. Е., старший эдвайзер Сакыпбекова М.Ж.
Представляем к вашему вниманию использование IOT в адаптивном светофоре. Проект заключается в применении микроконтроллера SIEMENS SIMATIC S7 1200, цветных LED, Блок питания HTR60-24, ESP-32, Smartphone. Код написан на языке LAD программы TIA Portal, язык программирования С.
Описание проекта
Адаптивный светофор должен работать по следующим принципам:
· Загорается красный сет , далее через 5с загорается желтый, при этом красный свет выключается, через 2с выключается желтый, загорается зеленый свет на 5с;
· Для чрезвычайных ситуаций управление светофором осуществляется через кнопку в любом смартфоне программе BluetoothLE (загорается желтый свет на 2с, после загорается зеленый).
Алгоритм выполнения
Необходимо установить используемые компоненты проекта на рейку.
1. Подключение осуществляется путем протягивания соответствующих проводов от розетки до соединительных клемм через выключатель автоматический, т.е. один провод «+», второй «-».
2. Соединительные клеммы используют в качестве шины (для увеличения количества входов и выходов). Контроллер подключен напрямую к блоку питания через клеммы.Блок питания предназначен для преобразования переменного тока в постоянный 24V1.
3. Вход («+») реле подключен к постоянному току к соответствующим соединительным клеммам, выход МК подключен к выходу («-») реле.
4. Светофор подключен к реле и берет питание от переменного тока.
5. ESP32 подключен к ПК, написание программы осуществляется в среде Arduino IDE.
6. Загрузка программы BluetoothLE в смартфон и подключение к ПК.
Код программы на языке С:
#include "BluetoothSerial.h" // библиотека
BluetoothSerial ESP_BT; // Объектдля Bluetooth
char incoming; // значениес Bluetooth
const int relayPin = 2; // пинподключенияреле
void setup() {
ESP_BT.begin("Portal-PK"); // Имя Bluetooth
pinMode (relayPin, OUTPUT);// подключаемреле
}
void loop() {
if (ESP_BT.available()) // Еслиполучилипо Bluetooth
{
incoming = ESP_BT.read(); // Считываем информацию
if (incoming == '0')
{
digitalWrite(relayPin, LOW); // релевключили
ESP_BT.println("Relay On — Portal-Pk.ru");
}
if (incoming == '1')
{
digitalWrite(relayPin, HIGH); // реле выключиди
ESP_BT.println("RelayOff — Portal-Pk.ru");
}
}
delay(20);
}
К сожалению скрины работ и код программы на LAD не загрузились.