Найти в Дзене
AEHA Laba120

платформа IOT BortX и ATtiny85+ Ds18b20+ SSD1306

Оглавление

-2

Датчик температуры DS18b20, простой как мычание
и надежный как кирпич. Для подключения к устройству
требуется всего одна нога контроллера, ибо Информация
передается по протоколу
1-Wire.

-3

Есть только маленький косячок ,
Датчики
Ds18b20 даже купленные в одном месте
в один день, могут показывать разную
температуру, Разброс в пределах одного градуса
Не особо критично

-4

Есть еще вариант использования применения данного изделия
В качестве ключа защиты прошивки от копирования
подробно описано тут

ATtiny85 и DS18b20

Данный девайс прекрасно программируется в среде
разработки
BasCom Avr, и тут будет описание такой программы

Обратите внимание! Именно DS18
B20 другие типа DS18S20 DS1820
работают иначе

Наша конструкция будет получать значение с трех датчиков температуры
Выводить показания на дисплей
SSD1306. Отправлять в Com port
данные в специальном формате, для Скада
BortX
Процессором системы будет контроллер
ATtiny85

А так как осталась еще одна свободная нога контролера
Будем вести подсчет импульсов на ней, на случай использования
датчика движения, или счетчика входящих на турникете
а так же вести подсчет числа перезапусков системы

Полученные данные будем отправлять в Скада BortX для визуализации и обработки
Полученные данные будем отправлять в Скада BortX для визуализации и обработки
-6

программа для ATtiny85

Написана в BasCom Avr
Для дисплея
SSD1306 библиотека не используется, а управляется он
в командах шины
I2c. Видимо ресурсов контролера ATtiny85 маловато
и провернуть библиотеку
$lib "
glcdSSD1306-I2C.lib" он не в силах
но на просторах интернета нашел данный исходник
и он прекрасно работает с
SSD1306 на прямую

Получается текстовый дисплей 8 строк по 16 символов
мелковато но для отладки само то, графики нет
но есть регулировка контраста

Описывать исходник вроде нет надобности
там везде написаны комментарии, но если возникнут вопросы
задавайте в комментариях

ссылка на скачивание в конце заметки

BortX

Описание ТУТ

-7

Такая микро скада, построена на ESP8266 передает данные посредством вашего домашнего интернета через роутер с WiFi на сайт , на котором можно смотреть данные, управлять устройствами подключенными к ESP8266 а также менять настройки и редактировать скрипт управления девайсом. Размер скрипта ограничен 20 строками кода, и 20 меток для переходов, скрипту доступны десять встроенных числовых переменных $X0-$X9. В эти переменные можно передать любые цифровые данные с контролера AVR или Arduino Через COM PORT (UART , rs232) в специальном формате На BasCom Avr ATtiny85 это выглядит так - Open "comb.4:19200,8,n,1" For Output As #1

' ОДНИМ ОПЕРАТОРОМ



Print #1, "<0>";100;"</0> <1>";111;"</1> <2>" ;222;"</2>"



'ИЛИ КАЖДЫЙ ТЕГ ПО ОТДЕЛЬНОСТИ



Print #1, "<3>";333;"</3>"

Print #1, "<4>";444;"</4>"

после обработки скриптом BortX

1:$X0=$input;
$S0=$X0;
$S1=$X1;
$S2=$X2;
$S3=$X3;
$S4=$X4;
trans{1};

эти значения будут присвоены переменным $X
с соответствующими номерами

отобразить в браузере на данный момент получится
только пять, в окнах $S0 - $S4, которым в настройках
можно дать понятные имена типа

Temp1
Temp2
Temp3
CNT
RESET_DEVICE

-8
  1. однако в браузере увидите только 7 символов от названия, терпимо.
    Скрипт также может отправлять сообщения в телеграм мессенджер
    и на электронную почту,

    Переписывать инструкцию не буду, прочитать ее можно
    на сайте BortX


    Скада система
    BortX
    была проверена на модулях
    ESP8266 01,07, weMos D1 mini
    работает с разными степенями корявости,
    питаются модули ESP8266 от 3,3 вольта
    можно использовать зарядное от телефона и копеечные
    стабилизаторы ams1117 или L78L33, вполне хватает
    для работы вывод CH_PD должно соединить с VCC

-9

на 01 понравилось больше, хотя выходов там всего 2
GPIO0 GPIO2 , и есть UART RxD TxD соответственно
И поэтому UART bortX , может работать с переферией
датчиками и прочим

по умолчанию в прошивке
BortX ESP8266 для Serial port
задана скорость
115200, Однако для ATtiny85 такая бешеная ни к чему
понизить ее можно отредактировав исходник
BortX.ino в Arduino IDE
который доступен для скачивания

********
для этого в коде, нужно найти
Serial.begin(115200); и заменить на 19200 (к примеру)

Так как Мастер настройки у меня не заработал (но может вам повезет)
редактировать прошивку все равно пришлось
Ибо потребовалось указать
ssid точки доступа, и password
к ней же, в строках

String wifi_ssid = "ssid"; // INSERT HERE Your_wifi_ssid
String wifi_password = "password"; // INSERT HERE Your_wifi_password

-10



Прошивается
BortX в ESP8266 01, 07 , программой ESP8266Flasher.exe
через
USB-UART PL2303HX или похожий

-11

WeMos D1 mini USB-UART уже установлен нужен только телефонный USB шнур, и установленные драйвера

при этом вывод GPIO0 любого модуля ESP8266 нужно посадить на землю

-12

Видео по теме

Вопросы в комментарии

Скачать

***