SlideShare une entreprise Scribd logo
1  sur  33
Промышленный Интернет вещей.
Мастер-класс: отправка данных с
ПЛК в Google Sheet с
использованием Node-RED.
Александр Пупена
pupena_san@ukr.net
www.i4u.in.ua
страница курса
Постановка задачи
Google Sheet
Google Sheet
С реальным оборудованием
Без оборудования
1. Инсталляция Node-RED
2. Знакомство с Node-RED
3. Визуализация Dashboard
4. Соединение Modbus TCP/IP
5. Соединение с Google Sheet
План
Google Sheet
1. Инсталляция Node-RED
2. Знакомство с Node-RED
3. Визуализация Dashboard
4. Соединение Modbus TCP/IP
5. Работа с Google Sheet
Предусловия
• ПК, большинство ОС подойдут
https://nodered.org/docs/faq/node-versions
• аккаунт Google (для Google Sheet)
• доступ к Интернет
1. Install Node-RED
1. Install Node.js LTS https://nodejs.org (инсталлировать все по
умолчанию)
2. Посмотреть версию node.js и npm: запустить командную строку
node -v
npm –v
3. Инсталлировать Node-RED:
npm install -g --unsafe-perm node-red
Node-RED и Node.js
проект Node-RED в JSON
Размещение среды исполнения
Node-RED
ПК
Raspberry PI
Android
Clouds
2. Знакомство с Node-RED (1-3)
1. Запустить Node-RED с командной строки
node-red
2. Открыть Node-RED в браузере
http://127.0.0.1:1880
3. Познакомиться с редактором
2. Знакомство с Node-RED (4-5)
4. Разместите в рабочей области узлы (Node) и соедините между
собой
• common ->inject
• common ->Debug
5. Сделайте Deploy проекта:
• Deploy->Full
• Deploy
2. Знакомство с Node-RED (6-7)
6. Откройте панель отладки
• кнопка с жуком Debug messages
7. Инициируйте поток
• нажмите кнопку `timestamp`
2. Знакомство с Node-RED (8)
8. Отобразите всё сообщение
• настройте узел debug на ‘compete message’
• сделайте deploy
• инициируйте `inject` и посмотрите структуру на панели отладки
2. Знакомство с Node-RED (9)
9. Настройте периодическое обновление
• настройте узел inject на обновление каждые 5 секунд
• сделайте Deploy и проверьте работу
3. Знакомство с Dashboard
1. Инсталлируйте библиотеку Dashboard
• в настройках палитры на вкладке `Install`
в поле фильтра введите `node-red-
dashboard`
• нажмите `install`
• подтвердите сообщение
3. Знакомство с Dashboard (2)
2. Добавьте закладки
• откройте панель настройки Dashboard
• создайте две закладки
• создайте две группы
3. Знакомство с Dashboard (3)
3. Добавьте и настройте узлы
• разместите и соедините узлы `slider` , `Gauge` и `debug`
• настройте как на рисунке (диапазон, Label)
3. Знакомство с Dashboard (4)
4. Сделайте Deploy и проверьте работу
• Deploy
• открыть Dashboard (GUI)
• подвигать ползунком
• посмотреть сообщения в Debug
4. Modbus TCP/IP Node-RED
1. Инсталлируйте библиотеку
• і менеджере пакетов выберите node-red-contrib-modbustcp
Google Sheet
4. Modbus TCP/IP Node-RED (2-3)
2. Загрузите эмулятор Modbus Server
• загрузите и инсталлируйте https://sourceforge.net/projects/modrssim2/
3. Запустите эмулятор Modbus Server
• Запустите PLC Simulator C:Program Files (x86)EmbeddedIntelligenceMod_Rssim
• разрешите брандмауеру включить к списку разрешенніх
• укажите протокол Modbus TCP
4. Modbus TCP/IP Node-RED (4)
4. Настройка узла modbustcp-read
• в Node-RED с палитры Input вставьте modbustcp-read
• добавьте в настройках узла Modbus Server (как на рисунке)
• добавьте узел `debug` и соедините их между собойй
4. Modbus TCP/IP Node-RED (5)
5. Проверка чтения регистров
• в Mod_Rssim изменить первые 10 регистров
• в окне Debug посмотреть их значение
4. Modbus TCP/IP Node-RED (6)
6. Реализация отображения значения на виджете
• добавьте узел `change`
• соедините c узлом виджета и modbus_read
• сделайте Deploy
• измените значение регистра в Mod_Rssim и посмотрите на виджет
5. Google Sheet
1. Активация использование сервисов Google Cloud Platform
• зайдите на https://console.cloud.google.com/apis
• первый раз активируйте
5. Google Sheet (2)
2. Создание проекта
• создайте проект и настройте его
5. Google Sheet (3)
3. Создайте сервисный аккаунт
• нажмите создать сервисный аккаунт
• пользуясь помощником
укажите название, потом все
шаги пропускать «Далее»
5. Google Sheet (4)
4. Создайте ключа для сервисного аккаунта
• выбрать в списке сервисный аккаунт и выбрать «Создать ключ»
• сохранить JSON с данными ключа
5. Google Sheet (5)
5. Настройка доступа к Google Sheet
• перейти на страницу API и сервисы -> библиотека ->Google Sheet Api
• включить сервисы Google Sheet API
5. Google Sheet (6)
6. Создать таблицу Google Sheet
• создайте таблицу Google Sheet
• дайте ей имя, например RPI Data
5. Google Sheet (7)
7. Предоставление доступа к Google Sheet
• зайдите в https://console.cloud.google.com/apis/credentials
• скопируйте почтовый адресс
• в Гугл Таблице в меню файл «Предоставить доступ» и вставьте это адресс
5. Google Sheet (8)
8. Инсталляция библиотеки node-red-contrib-google-sheets
• в Node-RED инсталлируйте node-red-contrib-google-sheets
5. Google Sheet (9)
9. Настройка конфигурационного узла
• вставьте на палитру узел Gsheet
• в настройки узла вставьте скачанный ранее ключ (открывается блокнотом)
5. Google Sheet (10)
10. Настройка записи в Google Sheet
• в настройках узла Gsheet выберите метод Update Cells
• в SpreedsheetID укажите часть URL выделенно красным (см внизу)
• в Cells укажите ячейки с названием страницы
https://docs.google.com/spreadsheets/d/1UuVIH2O38XK0TfP
MGHk0HG_ixGLtLk6WoBKh4YSrDm4/edit#gid=0
5. Google Sheet (11)
11. Проверка работы
• измените значение переменных в Mod_Rssim и посмотрите меняются ли
они в Google Sheet
Курс Технологии Индустрии 4.0
• страница курса Технологии Индустрии 4.0
www.i4u.in.ua
• Програмна інженерія в системах управління
• Технології Індустрії 4.0

Contenu connexe

Tendances

User Experience Design Heuristics
User Experience Design HeuristicsUser Experience Design Heuristics
User Experience Design HeuristicsNathanael Boehm
 
СЕРВІСИ WEB 2.0
СЕРВІСИ  WEB 2.0 СЕРВІСИ  WEB 2.0
СЕРВІСИ WEB 2.0 russoua
 
завдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіадизавдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіадиdzekodno1
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineeringDarshit Metaliya
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models MohsinAli773
 
Апаратне та програмне забезпечення пк
Апаратне та програмне забезпечення пкАпаратне та програмне забезпечення пк
Апаратне та програмне забезпечення пкymcmb_ua
 
Software Engineering chapter 19
Software Engineering chapter 19Software Engineering chapter 19
Software Engineering chapter 19Liz Tee
 
Version Control & Git
Version Control & GitVersion Control & Git
Version Control & GitJason Byrne
 
Understand front end developer
Understand front end developerUnderstand front end developer
Understand front end developerHsuan Fu Lien
 
презентація алгоритми з розгалуженням
презентація   алгоритми з розгалуженнямпрезентація   алгоритми з розгалуженням
презентація алгоритми з розгалуженнямСергій Каляфіцький
 
SQL Injections - A Powerpoint Presentation
SQL Injections - A Powerpoint PresentationSQL Injections - A Powerpoint Presentation
SQL Injections - A Powerpoint PresentationRapid Purple
 
DNS exfiltration using sqlmap
DNS exfiltration using sqlmapDNS exfiltration using sqlmap
DNS exfiltration using sqlmapMiroslav Stampar
 

Tendances (20)

User Experience Design Heuristics
User Experience Design HeuristicsUser Experience Design Heuristics
User Experience Design Heuristics
 
Sqa plan
Sqa planSqa plan
Sqa plan
 
ЛАБОРАТОРНА РОБОТА №5
ЛАБОРАТОРНА РОБОТА №5ЛАБОРАТОРНА РОБОТА №5
ЛАБОРАТОРНА РОБОТА №5
 
СЕРВІСИ WEB 2.0
СЕРВІСИ  WEB 2.0 СЕРВІСИ  WEB 2.0
СЕРВІСИ WEB 2.0
 
середовище Lazarus
середовище Lazarusсередовище Lazarus
середовище Lazarus
 
Network scanning
Network scanningNetwork scanning
Network scanning
 
Snort IPS
Snort IPSSnort IPS
Snort IPS
 
урок 26 текстові і графічні об'єкти на слайдах
урок 26 текстові і графічні об'єкти на слайдахурок 26 текстові і графічні об'єкти на слайдах
урок 26 текстові і графічні об'єкти на слайдах
 
завдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіадизавдання і етапу всеукраїнської учнівської олімпіади
завдання і етапу всеукраїнської учнівської олімпіади
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Rad model
Rad modelRad model
Rad model
 
Software Process Models
 Software Process Models  Software Process Models
Software Process Models
 
Апаратне та програмне забезпечення пк
Апаратне та програмне забезпечення пкАпаратне та програмне забезпечення пк
Апаратне та програмне забезпечення пк
 
Software Engineering chapter 19
Software Engineering chapter 19Software Engineering chapter 19
Software Engineering chapter 19
 
Version Control & Git
Version Control & GitVersion Control & Git
Version Control & Git
 
Understand front end developer
Understand front end developerUnderstand front end developer
Understand front end developer
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
презентація алгоритми з розгалуженням
презентація   алгоритми з розгалуженнямпрезентація   алгоритми з розгалуженням
презентація алгоритми з розгалуженням
 
SQL Injections - A Powerpoint Presentation
SQL Injections - A Powerpoint PresentationSQL Injections - A Powerpoint Presentation
SQL Injections - A Powerpoint Presentation
 
DNS exfiltration using sqlmap
DNS exfiltration using sqlmapDNS exfiltration using sqlmap
DNS exfiltration using sqlmap
 

Similaire à Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED

RDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDKRDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDKRAMBLER&Co
 
Алексей Горобец - Building Drupal Distributions. Why? When? and How?
Алексей Горобец - Building Drupal Distributions. Why? When? and How?Алексей Горобец - Building Drupal Distributions. Why? When? and How?
Алексей Горобец - Building Drupal Distributions. Why? When? and How?LEDC 2016
 
Как быть с большими сайтами на Word press
Как быть с большими сайтами  на Word pressКак быть с большими сайтами  на Word press
Как быть с большими сайтами на Word pressvovasik
 
Создание дистрибутивов Drupal. Почему, зачем и как?
Создание дистрибутивов Drupal. Почему, зачем и как?Создание дистрибутивов Drupal. Почему, зачем и как?
Создание дистрибутивов Drupal. Почему, зачем и как?Alexei Gorobets
 
Drupal и возможности его применения
Drupal и возможности его примененияDrupal и возможности его применения
Drupal и возможности его примененияMedia Gorod
 
Доставка данных в реальном времени.
Доставка данных в реальном времени. Доставка данных в реальном времени.
Доставка данных в реальном времени. beshkenadze
 
Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...
Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...
Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...Mail.ru Group
 
Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Denis Vasilyev
 
Создаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровожденияСоздаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровожденияOvadiah Myrgorod
 
NPM и модульная архитектура приложения
NPM и модульная архитектура приложенияNPM и модульная архитектура приложения
NPM и модульная архитектура приложенияDenis Latushkin
 
инструментарий
инструментарийинструментарий
инструментарийigdweb
 
Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...
Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...
Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...Docsvision
 
GitLab, Prometheus и Grafana с Kubernetes
GitLab, Prometheus и Grafana с KubernetesGitLab, Prometheus и Grafana с Kubernetes
GitLab, Prometheus и Grafana с KubernetesVictor Login
 
Развертывание и управление CMS Drupal в Microsoft Azure
Развертывание и управление CMS Drupal в Microsoft AzureРазвертывание и управление CMS Drupal в Microsoft Azure
Развертывание и управление CMS Drupal в Microsoft AzureArtur Baranok
 
Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.DrupalForumZP2012
 
Процесс разработки и тестирования с Docker + gitlab ci
Процесс разработки и тестирования с  Docker + gitlab ciПроцесс разработки и тестирования с  Docker + gitlab ci
Процесс разработки и тестирования с Docker + gitlab ciАлександр Сигачев
 
От хаоса к космосу: консолидация внутренних веб-ресурсов компании
От хаоса к космосу: консолидация внутренних веб-ресурсов компанииОт хаоса к космосу: консолидация внутренних веб-ресурсов компании
От хаоса к космосу: консолидация внутренних веб-ресурсов компанииSQALab
 

Similaire à Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED (20)

RDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDKRDSDataSource: Автогенерация документации для SDK
RDSDataSource: Автогенерация документации для SDK
 
Алексей Горобец - Building Drupal Distributions. Why? When? and How?
Алексей Горобец - Building Drupal Distributions. Why? When? and How?Алексей Горобец - Building Drupal Distributions. Why? When? and How?
Алексей Горобец - Building Drupal Distributions. Why? When? and How?
 
Как быть с большими сайтами на Word press
Как быть с большими сайтами  на Word pressКак быть с большими сайтами  на Word press
Как быть с большими сайтами на Word press
 
Создание дистрибутивов Drupal. Почему, зачем и как?
Создание дистрибутивов Drupal. Почему, зачем и как?Создание дистрибутивов Drupal. Почему, зачем и как?
Создание дистрибутивов Drupal. Почему, зачем и как?
 
Drupal и возможности его применения
Drupal и возможности его примененияDrupal и возможности его применения
Drupal и возможности его применения
 
Доставка данных в реальном времени.
Доставка данных в реальном времени. Доставка данных в реальном времени.
Доставка данных в реальном времени.
 
Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...
Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...
Как использовать JupyterHub на 100% на примере ML-школы DataGym и компании La...
 
10.website.pdf
10.website.pdf10.website.pdf
10.website.pdf
 
Yulia tsuba
Yulia tsubaYulia tsuba
Yulia tsuba
 
Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++Seminar: Эффективное использование среды разработки и компилятора C++
Seminar: Эффективное использование среды разработки и компилятора C++
 
Создаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровожденияСоздаем Drupal дистрибутив: от идеи до сопровождения
Создаем Drupal дистрибутив: от идеи до сопровождения
 
NPM и модульная архитектура приложения
NPM и модульная архитектура приложенияNPM и модульная архитектура приложения
NPM и модульная архитектура приложения
 
инструментарий
инструментарийинструментарий
инструментарий
 
Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...
Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...
Миграция карточек, разработанных на Конструкторе решений 4.5, на платформу Do...
 
Dapper + QueryObject
Dapper + QueryObjectDapper + QueryObject
Dapper + QueryObject
 
GitLab, Prometheus и Grafana с Kubernetes
GitLab, Prometheus и Grafana с KubernetesGitLab, Prometheus и Grafana с Kubernetes
GitLab, Prometheus и Grafana с Kubernetes
 
Развертывание и управление CMS Drupal в Microsoft Azure
Развертывание и управление CMS Drupal в Microsoft AzureРазвертывание и управление CMS Drupal в Microsoft Azure
Развертывание и управление CMS Drupal в Microsoft Azure
 
Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.Создаем Drupal дистрибутив: от идеи до сопровождения.
Создаем Drupal дистрибутив: от идеи до сопровождения.
 
Процесс разработки и тестирования с Docker + gitlab ci
Процесс разработки и тестирования с  Docker + gitlab ciПроцесс разработки и тестирования с  Docker + gitlab ci
Процесс разработки и тестирования с Docker + gitlab ci
 
От хаоса к космосу: консолидация внутренних веб-ресурсов компании
От хаоса к космосу: консолидация внутренних веб-ресурсов компанииОт хаоса к космосу: консолидация внутренних веб-ресурсов компании
От хаоса к космосу: консолидация внутренних веб-ресурсов компании
 

Plus de Пупена Александр

Розроблення підсистеми трендів
Розроблення підсистеми трендівРозроблення підсистеми трендів
Розроблення підсистеми трендівПупена Александр
 
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenonПупена Александр
 
8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізації8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізаціїПупена Александр
 
Анімовані компоненти та навігація
Анімовані компоненти та навігаціяАнімовані компоненти та навігація
Анімовані компоненти та навігаціяПупена Александр
 
Розроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементівРозроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементівПупена Александр
 
5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPCПупена Александр
 
Підсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. ModbusПідсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. ModbusПупена Александр
 
Підсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часіПідсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часіПупена Александр
 
Загальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMIЗагальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMIПупена Александр
 
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІПупена Александр
 
2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсу2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсуПупена Александр
 
Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0» Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0» Пупена Александр
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаПупена Александр
 
Короткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOMКороткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOMПупена Александр
 

Plus de Пупена Александр (20)

Node-RED довідник
Node-RED довідникNode-RED довідник
Node-RED довідник
 
Інші підсистеми
Інші підсистемиІнші підсистеми
Інші підсистеми
 
11 Підсистеми захисту
11 Підсистеми захисту11 Підсистеми захисту
11 Підсистеми захисту
 
Розроблення підсистеми трендів
Розроблення підсистеми трендівРозроблення підсистеми трендів
Розроблення підсистеми трендів
 
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
9 Приклади підсистеми тривожної сигналізації в SCADA Citect і SCADA zenon
 
8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізації8 Розробка підсистеми тривожної сигналізації
8 Розробка підсистеми тривожної сигналізації
 
Анімовані компоненти та навігація
Анімовані компоненти та навігаціяАнімовані компоненти та навігація
Анімовані компоненти та навігація
 
Розроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементівРозроблення дисплеїв та анімованих елементів
Розроблення дисплеїв та анімованих елементів
 
5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC5 Підсистема введення/виведення. OPC
5 Підсистема введення/виведення. OPC
 
Підсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. ModbusПідсистема введення/виведення SCADA/HMI. Modbus
Підсистема введення/виведення SCADA/HMI. Modbus
 
Підсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часіПідсистема керування збором та обробкою даних в реальному часі
Підсистема керування збором та обробкою даних в реальному часі
 
Загальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMIЗагальні принципи розроблення АРМ оператора на базі SCADA/HMI
Загальні принципи розроблення АРМ оператора на базі SCADA/HMI
 
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
2_3 Функції графічного людино-машинного інтерфейсу: високоефективний ЛМІ
 
2 2 Інші функції SCADA/HMI
2 2 Інші функції SCADA/HMI2 2 Інші функції SCADA/HMI
2 2 Інші функції SCADA/HMI
 
2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсу2.1. Функції графічного людино-машинного інтерфейсу
2.1. Функції графічного людино-машинного інтерфейсу
 
Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0» Про курс «Технологии Индустрии 4.0»
Про курс «Технологии Индустрии 4.0»
 
Git и GitHub для создания учебного контента
Git и GitHub для создания учебного контентаGit и GitHub для создания учебного контента
Git и GitHub для создания учебного контента
 
Короткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOMКороткий опис лабораторного практикуму по MOM
Короткий опис лабораторного практикуму по MOM
 
Git4 all
Git4 allGit4 all
Git4 all
 
Presentation 111019 1
Presentation 111019 1Presentation 111019 1
Presentation 111019 1
 

Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED

  • 1. Промышленный Интернет вещей. Мастер-класс: отправка данных с ПЛК в Google Sheet с использованием Node-RED. Александр Пупена pupena_san@ukr.net www.i4u.in.ua страница курса
  • 2. Постановка задачи Google Sheet Google Sheet С реальным оборудованием Без оборудования 1. Инсталляция Node-RED 2. Знакомство с Node-RED 3. Визуализация Dashboard 4. Соединение Modbus TCP/IP 5. Соединение с Google Sheet
  • 3. План Google Sheet 1. Инсталляция Node-RED 2. Знакомство с Node-RED 3. Визуализация Dashboard 4. Соединение Modbus TCP/IP 5. Работа с Google Sheet
  • 4. Предусловия • ПК, большинство ОС подойдут https://nodered.org/docs/faq/node-versions • аккаунт Google (для Google Sheet) • доступ к Интернет
  • 5. 1. Install Node-RED 1. Install Node.js LTS https://nodejs.org (инсталлировать все по умолчанию) 2. Посмотреть версию node.js и npm: запустить командную строку node -v npm –v 3. Инсталлировать Node-RED: npm install -g --unsafe-perm node-red
  • 8. 2. Знакомство с Node-RED (1-3) 1. Запустить Node-RED с командной строки node-red 2. Открыть Node-RED в браузере http://127.0.0.1:1880 3. Познакомиться с редактором
  • 9. 2. Знакомство с Node-RED (4-5) 4. Разместите в рабочей области узлы (Node) и соедините между собой • common ->inject • common ->Debug 5. Сделайте Deploy проекта: • Deploy->Full • Deploy
  • 10. 2. Знакомство с Node-RED (6-7) 6. Откройте панель отладки • кнопка с жуком Debug messages 7. Инициируйте поток • нажмите кнопку `timestamp`
  • 11. 2. Знакомство с Node-RED (8) 8. Отобразите всё сообщение • настройте узел debug на ‘compete message’ • сделайте deploy • инициируйте `inject` и посмотрите структуру на панели отладки
  • 12. 2. Знакомство с Node-RED (9) 9. Настройте периодическое обновление • настройте узел inject на обновление каждые 5 секунд • сделайте Deploy и проверьте работу
  • 13. 3. Знакомство с Dashboard 1. Инсталлируйте библиотеку Dashboard • в настройках палитры на вкладке `Install` в поле фильтра введите `node-red- dashboard` • нажмите `install` • подтвердите сообщение
  • 14. 3. Знакомство с Dashboard (2) 2. Добавьте закладки • откройте панель настройки Dashboard • создайте две закладки • создайте две группы
  • 15. 3. Знакомство с Dashboard (3) 3. Добавьте и настройте узлы • разместите и соедините узлы `slider` , `Gauge` и `debug` • настройте как на рисунке (диапазон, Label)
  • 16. 3. Знакомство с Dashboard (4) 4. Сделайте Deploy и проверьте работу • Deploy • открыть Dashboard (GUI) • подвигать ползунком • посмотреть сообщения в Debug
  • 17. 4. Modbus TCP/IP Node-RED 1. Инсталлируйте библиотеку • і менеджере пакетов выберите node-red-contrib-modbustcp Google Sheet
  • 18. 4. Modbus TCP/IP Node-RED (2-3) 2. Загрузите эмулятор Modbus Server • загрузите и инсталлируйте https://sourceforge.net/projects/modrssim2/ 3. Запустите эмулятор Modbus Server • Запустите PLC Simulator C:Program Files (x86)EmbeddedIntelligenceMod_Rssim • разрешите брандмауеру включить к списку разрешенніх • укажите протокол Modbus TCP
  • 19. 4. Modbus TCP/IP Node-RED (4) 4. Настройка узла modbustcp-read • в Node-RED с палитры Input вставьте modbustcp-read • добавьте в настройках узла Modbus Server (как на рисунке) • добавьте узел `debug` и соедините их между собойй
  • 20. 4. Modbus TCP/IP Node-RED (5) 5. Проверка чтения регистров • в Mod_Rssim изменить первые 10 регистров • в окне Debug посмотреть их значение
  • 21. 4. Modbus TCP/IP Node-RED (6) 6. Реализация отображения значения на виджете • добавьте узел `change` • соедините c узлом виджета и modbus_read • сделайте Deploy • измените значение регистра в Mod_Rssim и посмотрите на виджет
  • 22. 5. Google Sheet 1. Активация использование сервисов Google Cloud Platform • зайдите на https://console.cloud.google.com/apis • первый раз активируйте
  • 23. 5. Google Sheet (2) 2. Создание проекта • создайте проект и настройте его
  • 24. 5. Google Sheet (3) 3. Создайте сервисный аккаунт • нажмите создать сервисный аккаунт • пользуясь помощником укажите название, потом все шаги пропускать «Далее»
  • 25. 5. Google Sheet (4) 4. Создайте ключа для сервисного аккаунта • выбрать в списке сервисный аккаунт и выбрать «Создать ключ» • сохранить JSON с данными ключа
  • 26. 5. Google Sheet (5) 5. Настройка доступа к Google Sheet • перейти на страницу API и сервисы -> библиотека ->Google Sheet Api • включить сервисы Google Sheet API
  • 27. 5. Google Sheet (6) 6. Создать таблицу Google Sheet • создайте таблицу Google Sheet • дайте ей имя, например RPI Data
  • 28. 5. Google Sheet (7) 7. Предоставление доступа к Google Sheet • зайдите в https://console.cloud.google.com/apis/credentials • скопируйте почтовый адресс • в Гугл Таблице в меню файл «Предоставить доступ» и вставьте это адресс
  • 29. 5. Google Sheet (8) 8. Инсталляция библиотеки node-red-contrib-google-sheets • в Node-RED инсталлируйте node-red-contrib-google-sheets
  • 30. 5. Google Sheet (9) 9. Настройка конфигурационного узла • вставьте на палитру узел Gsheet • в настройки узла вставьте скачанный ранее ключ (открывается блокнотом)
  • 31. 5. Google Sheet (10) 10. Настройка записи в Google Sheet • в настройках узла Gsheet выберите метод Update Cells • в SpreedsheetID укажите часть URL выделенно красным (см внизу) • в Cells укажите ячейки с названием страницы https://docs.google.com/spreadsheets/d/1UuVIH2O38XK0TfP MGHk0HG_ixGLtLk6WoBKh4YSrDm4/edit#gid=0
  • 32. 5. Google Sheet (11) 11. Проверка работы • измените значение переменных в Mod_Rssim и посмотрите меняются ли они в Google Sheet
  • 33. Курс Технологии Индустрии 4.0 • страница курса Технологии Индустрии 4.0 www.i4u.in.ua • Програмна інженерія в системах управління • Технології Індустрії 4.0