1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/google1-spring-boot-jlibmodbus

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 4.5 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 25.11.2024 11:11 a9133ae

spring-boot-jlibmodbs

Введение

{Ниже приводится описание платформы Gitee. Вы можете заменить это введение. Gitee — это платформа для управления кодом, основанная на Git и поддерживающая SVN, разработанная OSCHINA. Она предоставляет разработчикам стабильную, эффективную и безопасную облачную платформу для совместной разработки программного обеспечения. Независимо от того, являетесь ли вы индивидуальным разработчиком, командой или предприятием, вы можете использовать Gitee для управления кодом и управления проектами, а также для совместной разработки. Для корпоративных проектов см. https://gitee.com/enterprises.}

Архитектура программного обеспечения

Описание архитектуры программного обеспечения.

Руководство по установке

  1. Используйте modbusslave для тестирования и параллельно настройте различные типы функций:
    • F01: катушка;
    • F02: состояние ввода;
    • F03: сохранение регистра;
    • F04: регистр ввода.
  2. В проекте используется springboot 2.4.6 + mybatis-plus 3.4.3 + jlibmodbus + websocket для реализации мониторинга данных Modbus.

Инструкция по использованию

  1. При использовании данных ПЛК: анализ данных в регистре в соответствии с конкретным кодом. /**
  • Анализирует значения в функциональном объекте
  • @param bos
  • @param funData */ private void parse(List bos, Map<String, List> funData) { parseF01(bos, funData.get("F01"), "F01"); parseF01(bos, funData.get("F02"), "F02"); parseF02(bos, funData.get("F03"), "F03"); parseF02(bos, funData.get("F04"), "F03"); } private void parseF01(List bos, List data, String type){ bos.forEach(item->{ if (item.getFunNo().equals(type)){ item.setValue(Boolean.getBoolean(data.get(item.getOffset()).toString())?"1":"0"); } }); }

private void parseF02(List bos, List data, String type){ bos.forEach(item->{ if(item.getFunNo().equals(type)){ if (item.getType().equals("INT")){ item.setValue(data.get(item.getOffset()).toString()); }else if(item.getType().equals("BIT")){ byte[] bytes = DataUtils.toByteArray(Integer.valueOf(data.get(item.getOffset()).toString())); byte tmp = bytes[0]; bytes[0] = bytes[1]; bytes[1] = tmp; boolean[] bs = DataUtils.toBitsArray(bytes, 16); item.setValue(bs[item.getLocal()]?"1":"0"); }else if (item.getType().equals("FLOAT")){ byte[] bs = new byte[4]; byte[] firstBs = DataUtils.toByteArray(Integer.valueOf(data.get(item.getOffset()).toString())); byte[] secondBs = DataUtils.toByteArray(Integer.valueOf(data.get(item.getOffset()).toString())+1); bs[0] = secondBs[1]; bs[1] = secondBs[0]; bs[2]= firstBs[1]; bs[3] = firstBs[0]; item.setValue(DataUtils.toFloat(bs)+""); } } }); }

Участие и вклад

  1. Fork этот репозиторий.
  2. Создайте ветку Feat_xxx.
  3. Отправьте код.
  4. Создайте Pull Request.

Специальные навыки

  1. Использование Readme_XXX.md для поддержки разных языков, например Readme_en.md, Readme_zh.md.
  2. Официальный блог Gitee blog.gitee.com.
  3. Вы можете https://gitee.com/explore узнать об отличных проектах с открытым исходным кодом на Gitee.
  4. GVP (Gitee Most Valuable Project) — это список лучших проектов с открытым исходным кодом, отобранных Gitee.
  5. Официальное руководство по использованию Gitee https://gitee.com/help.
  6. Лица обложки Gitee — это раздел, демонстрирующий достижения членов Gitee https://gitee.com/gitee-stars/.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/google1-spring-boot-jlibmodbus.git
git@api.gitlife.ru:oschina-mirror/google1-spring-boot-jlibmodbus.git
oschina-mirror
google1-spring-boot-jlibmodbus
google1-spring-boot-jlibmodbus
master