Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Пр-4_Работа с базой данных. Получение данных с мобильного телефона

.docx
Скачиваний:
15
Добавлен:
17.06.2023
Размер:
304.24 Кб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное бюджетное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ

им. проф. М.А. БОНЧ-БРУЕВИЧА»

(СПБГУТ)

Факультет информационных сетей и систем

Кафедра сетей связи и передачи данных

Практическая работа 4

По дисциплине:

Интернет вещей и самоорганизующиеся сети

Тема работы:

Работа с базой данных. Получение данных с

мобильного телефона

Номер группы:

4

Работу выполнил студент

группы:

Проверил:

Доцент кафедры ССиПД

Комарова Ксения Александровна

Санкт-Петербург

2022

Задание

С телефона отправляем температуру (поле «температура»), время (поле «время») и считываем температуру за окном (смотри прошлую лабораторную работу). Определяем необходимую интенсивность нагрева помещения исходя из разницы температур.

Соответствие разниц температур должно храниться в таблице (например, если разница от 0 до 5 градусов – 0 градусов; от 5 до 10 – 30 градусов и тд).

Изменить значение интенсивности нагрева, записать в таблицу (поля: текущее время и интенсивность нагрева, температура за окном, температура в доме).

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

Во freeboard выводим для таблицы «Значения интенсивности нагрева» два поля «время» и «интенсивность». Во второй панели с помощью sparkline вывести текущую погоду с телефона и погоду за окном.

Выполнение

  1. Запустим необходимое ПО: node-red, сервер mqtt (mosquitto), сервер mysql

  1. Создадим базу данных и таблицу

  1. Соберем схему

Группа «температура за окном» имитирует поступление температуры с датчика каждые 5 секунд через блок inject.

Блок function 1 генерирует случайное число в диапазоне от 0 до 30

Далее происходит запись в топик temp/outdoor

В группе «запись в базу данных» мы подписаны на два топика temp/outdoor и temp/indoor, за счет блока function 2 в случаи поступления данных с телефона происходит запись в базу данных через блок sql.

В группе «вывод данных» за счет периодичной работы блока inject на блок sql каждую секунду приходит запрос на считывание последней записи в таблице. Далее эти данные отправляются в блок dashboard на панель контроля.