Платформа интеллектуального коммутатора Интернета вещей с открытым исходным кодом, включая сервер, оборудование, Android и интерфейсную часть
Платформа интеллектуального коммутатора Интернета вещей с открытым исходным кодом, включая сервер, оборудование, Android и интерфейсную часть

Введение в платформу

Платформа интеллектуального коммутатора включает в себя сервер, Аппаратную часть、PCДуаньхэ Андроидконец。Использование оборудованияESP8266модуль,относительно низкая стоимость,Можно использовать воображение,В сочетании с различными датчиками,Реализуйте свой собственный умный терминал.

Сценарии применения:умный переключатель Сценарии Применение относительно широко распространено. Как правило, устройства, которые можно использовать дома, можно оснастить этим модулем и обновить до сетевой версии для сетевого управления. Распространенными из них являются интеллектуальные выключатели, интеллектуальные розетки и интеллектуальные светильники. Их можно использовать с датчиками влажности почвы для осуществления интеллектуального полива, а с помощью датчиков температуры и влажности они могут контролировать температуру и влажность. Другие датчики, такие как: Сенсорный. переключатель、Обнаружение капель дождя、датчик звука、Светочувствительный датчик、датчик дыма、сигнализация пламени、Ощущение человеческого тела и так далее.

Функции, которые в настоящее время поддерживаются интеллектуальными коммутаторами

  • пульт дистанционного управления
  • Память при выключении
  • Сенсорный переключатель
  • Инфракрасный пульт дистанционного управления
  • Мониторинг температуры и влажности
  • местный контроль
  • Поддержка одиночного и двойного реле
  • Интеллектуальная распределительная сеть (для входа нажмите и удерживайте кнопку конфигурации)
  • Автономный режим (дважды нажмите кнопку конфигурации, чтобы переключиться)
  • Плановое выполнение (должно быть завершено...)
  • Голосовое управление (нужно завершить...)
  • Облачное обновление (будет завершено...)

стек технологий

  • В настоящее время проект находится на стадии рассмотрения часть основана на системе управления разрешениями Ruoyi
  • Аппаратное обеспечение коммутатора использует модуль реле Wi-Fi Beike IoT.
  • Android использует EspTouch от Espressif и голосовой SDK от iFlytek.
Схема архитектуры платформы:

Схема архитектуры платформы

Схема структуры проекта:

Схема структуры проекта

задняя часть
  • Связанные технологии: Spring boot, MyBatis, Spring Security, Jwt, Mysql, Redis, Mongodb, MQTT.
  • Инструменты разработки: ИДЕЯ
внешний интерфейс
  • Связанные технологии: ES6, Vue, Vuex, Vue-router, Vue-cli, Axios, Element-ui.
  • Инструменты разработки: код Visual Studio.
Андроид
  • Связанные технологии: Smartconfig, GSON, OkHttp, iFlytek Voice.
  • Инструменты разработки: Android Studio.
Аппаратная часть
  • Связанные технологии: Arduino, ESP8266 Arduino Core, OneButton, IRromoteESP8266, PubSubClient
  • Инструменты разработки: Arduino IDE, код Visual Studio.
  • Вспомогательные инструменты: кабель загрузки USB-TTL.、Понижающий модуль AC-DC (опция)、Инфракрасный пульт дистанционного модуль управления (опция), датчик температуры и влажности DHT11 (опция), Сенсорный переключатель(Необязательный)
  • Изображения оборудования: изображения оборудования взяты с официального сайта Shell IoT.
  • Схема аппаратного обеспечения:
  • Схема подключения: (напряжение по умолчанию составляет 5 В, если вы хотите подключиться к 220 В переменного тока, вам необходимо подобрать понижающий модуль AC-DC)

Демонстрационная схема

Команда Docker для установки связанных контейнеров

Ниже приведена команда для установки связанных контейнеров в системе Linux. В Windows измените символ новой строки и путь к монтируемому тому в команде. Эти команды могут облегчить вашу разработку и развертывание. Вы также можете использовать dockerfile, docker-compose.yml или свой собственный образ. Конечно, можно обойтись и без докера, но устанавливать приложения по одному хлопотнее.

  • установка MySQL (с учетной записью и паролем)
Язык кода:javascript
копировать
1. Установите программное обеспечение
docker run \
   --name mysql \
    --publish 3306:3306 \
    --volume /var/data/mysql/mysql:/var/lib/mysql \
    --env MYSQL_DATABASE="databaseName" \
    --env MYSQL_USER="root" \
    --env MYSQL_ROOT_PASSWORD=123456 \
    --restart always \
    --detach \
 mysql:5.7 \
     --character-set-server=utf8 \
     --collation-server=utf8_unicode_ci 

2. Войдите в контейнер
docker exec -it containId /bin/bash

3. Измените файл конфигурации и установите кодировку.
tee /etc/mysql/conf.d/mysql.cnf <<-'EOF'
[client]
default-character-set=utf8
 
[mysql]
default-character-set=utf8
EOF
  • установка Redis (с паролем)
Язык кода:javascript
копировать
docker run \
  --name redis \
  --restart always \
   --publish 6379:6379 \
  --volume /var/data/redis/data:/data \
  --detach \ 
redis \
  --requirepass "123456" \
  --appendonly yes
  • установка mongodb (с учетной записью и паролем)
Язык кода:javascript
копировать
docker run \
    --name mongo \
    --env MONGO_INITDB_ROOT_USERNAME=root \
    --env MONGO_INITDB_ROOT_PASSWORD=123456 \
    --volume /var/data/mongodb:/data/db \
    --publish 27017:27017 \
    --restart unless-stopped \
    --detach \
mongo:4.0

Совет: При использовании mongodb сначала создайте библиотеку, а затем обязательно создайте пользователей и роли в соответствующей библиотеке, иначе созданные пользователи не смогут подключиться к соответствующей базе данных.
  • установка mosquitto (с паролем учетной записи, Mqtt Broker)
Язык кода:javascript
копировать
1. Установите программное обеспечение
docker run \
   --name mosquitto \
   --privileged \
   --publish 1883:1883 \
   --publish 9001:9001 \
   --volume /var/data/mosquitto/data:/mosquitto/data \
   --volume /var/data/mosquitto/log:/mosquitto/log \
   --restart always \
   --detach \
eclipse-mosquitto
 

2. Войдите в контейнер:docker exec -it name sh

3. Отредактируйте файл конфигурации: vi. /mosquitto/config/mosquitto.conf
  # Отключить анонимный режим
  allow_anonymous false
  # Укажите файл паролей
  password_file /mosquitto/config/pwfile.conf

4. Сгенерируйте пароль:
  #Используйте команду mosquitto_passwd для создания пользователя. Первый администратор — это имя пользователя, а второй администратор — пароль.
  mosquitto_passwd -b /mosquitto/config/pwfile.conf admin admin

5. Выйдите из контейнера и перезапустите контейнер:
  #Выходим из контейнера
  exit
  #Перезапустить контейнер
  docker restart mosquitto

Пользователи сети могут продолжать изучать новые функции.

boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.