Оглавление:
- Шаг 1. Требуется оборудование и программное обеспечение
- Шаг 2: Шаги по отправке данных на платформу вибрации и температуры Labview с использованием беспроводного датчика вибрации и температуры большого радиуса действия IoT и беспроводного модема сети ZigBee Coordinator с USB-интерфейсом:
- Шаг 3. Загрузка кода в ESP32 с помощью Arduino IDE
- Шаг 4: последовательный выход монитора
- Шаг 5: заставить Ubidots работать
- Шаг 6: Вывод
- Шаг 7: Создание событий в Ubidots
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
В этом проекте мы создадим оповещение по электронной почте о вибрации и температуре машины с помощью датчика вибрации Ubidots и ESP32
Вибрация - это действительно движение вперед и назад - или колебание - машин и компонентов в моторизованных гаджетах. Вибрация в промышленной системе может быть симптомом или мотивом неприятностей или может быть связана с повседневной работой. Например, осциллирующие шлифовальные машины и вибропогружатели зависят от вибрации. Двигатели внутреннего сгорания и привод инструментов, опять же, упиваются неизбежной вибрацией. Вибрация может вызвать неприятности и, если ее не остановить, может привести к повреждению или ускоренному ухудшению состояния. Вибрация может быть вызвана одним или дополнительными факторами в любой момент времени, максимум из которых не является необычным - это дисбаланс, несоосность, надевание и расшатывание. Этот ущерб можно минимизировать, анализируя данные о температуре и вибрации на Ubidot с помощью беспроводных датчиков вибрации и температуры esp32 и NCD.
Шаг 1. Требуется оборудование и программное обеспечение
Аппаратное обеспечение
- ESP-32: ESP32 упрощает использование Arduino IDE и языка Arduino Wire для приложений IoT. Этот модуль ESp32 IoT сочетает в себе Wi-Fi, Bluetooth и Bluetooth BLE для множества разнообразных приложений. Этот модуль полностью оснащен 2 ядрами ЦП, которыми можно управлять и питать их индивидуально, и с регулируемой тактовой частотой от 80 МГц до 240 МГц. Этот модуль ESP32 IoT WiFi BLE со встроенным USB-портом разработан для установки во всех IoT-продуктах ncd.io.
- Беспроводной датчик вибрации и температуры IoT с большим радиусом действия: Беспроводной датчик вибрации и температуры IoT с большим радиусом действия работает от батарей и работает без проводов, а это означает, что для его включения и работы не нужно тянуть за проводами тока или связи. Он постоянно отслеживает информацию о вибрации вашей машины и фиксирует часы работы в полном разрешении вместе с другими температурными параметрами. В этом случае мы используем промышленный беспроводной датчик вибрации и температуры NCD Long Range IoT Industrial с диапазоном действия до 2 миль с использованием беспроводной ячеистой сетевой архитектуры.
- ZigBee Coordinator Long Range Wireless Mesh Modem с интерфейсом USB
Используемое программное обеспечение
- IDE Arduino
- Убидотс
Используемая библиотека
- Библиотека PubSubClient
- Wire.h
Клиент Arduino для MQTT
Эта библиотека предоставляет клиент для простого обмена сообщениями публикации / подписки с сервером, поддерживающим MQTT.
Для получения дополнительной информации о MQTT посетите mqtt.org.
Скачать
Последнюю версию библиотеки можно скачать с GitHub.
Документация
В библиотеке есть несколько примеров эскизов. См. Раздел «Файл»> «Примеры»> «PubSubClient» в приложении Arduino. Полная документация по API.
Совместимое оборудование
Библиотека использует API-интерфейс Arduino Ethernet Client для взаимодействия с базовым сетевым оборудованием. Это означает, что он просто работает с растущим числом плат и щитов, в том числе:
- Arduino Ethernet
- Шилд Arduino Ethernet
- Arduino YUN - используйте включенный YunClient вместо EthernetClient и обязательно сначала выполните Bridge.begin () Arduino WiFi Shield - если вы хотите отправлять пакеты размером более 90 байт с этим экраном, включите параметр MQTT_MAX_TRANSFER_SIZE в PubSubClient.h.
- Sparkfun WiFly Shield - при использовании с этой библиотекой
- Intel Галилео / Эдисон
- ESP8266
- ESP32 В настоящее время библиотека не может использоваться с оборудованием на базе микросхемы ENC28J60, например Nanode или Nuelectronics Ethernet Shield. Для них доступна альтернативная библиотека.
Библиотека проводов
Библиотека Wire позволяет вам связываться с устройствами I2C, часто также называемыми «2-проводными» или «TWI» (двухпроводными интерфейсами), которые можно загрузить с Wire.h
Основное использование
Wire.begin () Начните использовать Wire в основном режиме, в котором вы будете инициировать и контролировать передачу данных. Это наиболее распространенное использование при взаимодействии с большинством периферийных микросхем I2C. Wire.begin (адрес) Начните использовать Wire в ведомом режиме, когда вы будете отвечать по «адресу», когда другие микросхемы I2C-мастера инициируют обмен данными.
Передача
Wire.beginTransmission (адрес) Начать новую передачу устройству по «адресу». Используется мастер-режим. Wire.write (данные) Отправить данные. В главном режиме сначала необходимо вызвать beginTransmission. Wire.endTransmission () В ведущем режиме это завершает передачу и вызывает отправку всех буферизованных данных.
Получение
Wire.requestFrom (адрес, счетчик) Чтение «счетчика» байтов из устройства по «адресу». Используется мастер-режим. Wire.available () Возвращает количество байтов, доступных при вызове метода receive. Wire.read () Получить 1 байт.
Шаг 2: Шаги по отправке данных на платформу вибрации и температуры Labview с использованием беспроводного датчика вибрации и температуры большого радиуса действия IoT и беспроводного модема сети ZigBee Coordinator с USB-интерфейсом:
- Во-первых, нам нужна служебная программа Labview, которая представляет собой файл ncd.io Wireless Vibration and Temperature Sensor.exe, в котором можно просматривать данные.
- Это программное обеспечение Labview будет работать только с беспроводным датчиком вибрационной температуры ncd.io.
- Чтобы использовать этот пользовательский интерфейс, вам необходимо установить следующие драйверы. Установить движок времени выполнения отсюда 64-битный.
- 32 бит
- Установите драйвер NI Visa
- Установите LabVIEW Run-Time Engine и NI-Serial Runtime.
- Руководство по началу работы с этим продуктом.
Шаг 3. Загрузка кода в ESP32 с помощью Arduino IDE
- Загрузите и включите библиотеки PubSubClient и Wire.h.
- Вы должны назначить свой уникальный ТОКЕН Ubidots, MQTTCLIENTNAME, SSID (имя WiFi) и пароль доступной сети.
- Скомпилируйте и загрузите код Ncd_vibration_and_temperature.ino.
- Чтобы проверить возможность подключения устройства и отправленные данные, откройте монитор последовательного порта. Если ответа нет, попробуйте отключить ESP32, а затем снова подключить. Убедитесь, что скорость передачи последовательного монитора такая же, как указанная в вашем коде 115200.
Шаг 4: последовательный выход монитора
Шаг 5: заставить Ubidots работать
- Создайте учетную запись на Ubidots.
- Перейдите в мой профиль и запишите ключ токена, который является уникальным ключом для каждой учетной записи, и вставьте его в свой код ESP32 перед загрузкой.
- Добавьте новое устройство на панель управления Ubidot с именем ESP32.
- Нажмите на устройства и выберите устройства в Ubidots. Теперь вы должны увидеть опубликованные данные в своей учетной записи Ubidots внутри устройства под названием «ESP32».
- Внутри устройства создайте новый датчик имени переменной, в котором будет отображаться ваше значение температуры.
- Теперь вы можете просматривать данные температуры и других датчиков, которые ранее просматривались на последовательном мониторе. Это произошло из-за того, что значение различных показаний датчика передается в виде строки, сохраняется в переменной и публикуется в переменной внутри устройства esp32. Перейдите на панель управления данными и внутри панели создайте разные виджеты и добавьте новый виджет на экран панели инструментов.
- Создайте дашборд в Ubidots.
Шаг 6: Вывод
Шаг 7: Создание событий в Ubidots
- Выберите События (из раскрывающегося списка Данные.
- Чтобы создать новое событие, щелкните желтый значок плюса в правом верхнем углу экрана.
Типы событий Ubidots поддерживает уже интегрированные события, чтобы вы могли отправлять события, предупреждения и уведомления тем, кому нужно знать, когда им нужно знать. Предварительно созданные интеграции Ubidots включают:
1. Уведомления по электронной почте
2. SMS-уведомления.
3. События Webhook - подробнее
4. Уведомления в Telegram.
5. Уведомления Slack - подробнее
6. Уведомления о голосовых звонках - подробнее
7. Вернуться к обычному уведомлению - подробнее
8. Уведомления геозоны - подробнее
- Затем выберите устройство и соответствующую переменную, которая указывает «значения» устройств.
- Теперь выберите пороговое значение для запуска вашего события и сравните его со значениями устройства, а также выберите время для запуска вашего события.
- Установите и настройте, какие действия должны быть выполнены и сообщение получателю: отправить SMS, электронную почту, веб-перехватчики, телеграммы, телефонные звонки, SLACK и веб-перехватчики тем, кому нужно знать.
- Настройте уведомление о событии.
- Определите окно активности, в котором события могут / не могут выполняться.
- Подтвердите свои события.