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

OSCHINA-MIRROR/fredxuji-profibus_DP_PA_soft

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

profibus_DP_PA_soft

Стеки протоколов Profibus DP и PA на основе микроконтроллеров (MCU).

  1. Стеки протоколов реализованы на базе микроконтроллеров семейства cortex-M4 GD32F30x и STM32L. Стеки протоколов и пользовательские приложения могут использовать общие ресурсы одного микроконтроллера.
  2. Размер стека протоколов в FLASH составляет менее 48 КБ, а использование RAM составляет менее 12 КБ. Стеки используют один UART, TIMER и I2C ресурс.
  3. Поддерживается полный набор функций DPV0, DPV1 и PA. Поддерживается адаптивная скорость передачи данных, максимальная скорость передачи данных для серии STM32 составляет 3 Мбит/с. На основе этого можно разрабатывать DP-слейты, резервные слейты, устройства PA и PROFIsafe.
  4. Вы можете использовать Releaselib/libdppa.a, но не имеете права вносить изменения или использовать коммерчески. Если вам это необходимо, свяжитесь с автором.
  5. Если вам необходимы демонстрационные устройства, перенос на другие платформы или более подробные материалы, свяжитесь с автором. email: xuji.zhao@foxmail.com, Wechat: fredzxj.

Описание демонстрационного примера DP-V1

Этот демонстрационный пример моделирует слейт для управления температурой. Описание функций приведено ниже.

Слейт представляет собой модульный DP-V1 слейт (логически).- Модуль 1: Обеспечивает сбор данных о температуре окружающей среды в реальном времени (int16_t), аналоговые входы AI, температура в реальном времени возвращается контроллеру PLC, 16-битное значение температуры определено: фактическая температура умножена на 100. (int16_t) temp_trans = (int16_t)((float)temp * 100.0). Например, 10.01°C представлено как 1001 в десятичном формате.

  • Модуль 2: Обеспечивает мониторинг состояния включения/выключения нагрева и охлаждения, и возвращает состояние в реальном времени контроллеру PLC, цифровые входы DI, бит 0: состояние включения/выключения нагрева, 0 - выключен, 1 - включен; бит 1: состояние включения/выключения охлаждения, 0 - выключено, 1 - включено.
  • Модуль 3: Обеспечивает управление нагревом и охлаждением, сигналы управления поступают от контроллера PLC, цифровые выходы DO, бит 4: управление включением/выключением нагрева, 0 - выключен, 1 - включен; бит 5: управление включением/выключением охлаждения, 0 - выключен, 1 - включен.Контроллер PLC на основе данных о температуре слейта и текущего состояния управления нагревом и охлаждением выполняет вычисления алгоритма PID и отправляет слейту команды управления нагревом или охлаждением.

Слейт имеет функцию оповещения о превышении верхнего или нижнего предела температуры, минимальный нижний предел -40°C, максимальный верхний предел 80°C.

Определение ресурсов слейта

Определение ввода/вывода слейта

Модуль Ресурс Конфигурационный идентификатор
слот 1 Температура AI, 2 байта 0x50
слот 2 Состояние управления DI, 1 байт 0x10
слот 3 Сигнал управления DO, 1 байт 0x20

Определение параметров слейта

Модульный номер Определение ресурса Идентификатор параметра (смещение)
слот 1 Верхний предел температуры, 2 байта, пример: 80°C, значение: 8000 0x1F 0x40 (11)
слот 1 Нижний предел температуры, 2 байта, пример: -40°C, значение: -4000 0xF0 0x60 (13)
слот 3 Включение сигнала управления, 1 байт, bit4: нагрев, bit5: охлаждение 0x03 (15)

Определение сигналов тревоги | Номер модуля | Определение ресурса | Идентификатор сигнала тревоги (смещение) |

| :----: | :----: | :----: | | слот 1 | Температура превышает верхний предел, пользовательский фрагмент 3 байта, появление | 0x06 0x01 0x01 0x05 0x01 0x1F 0x43(7) | | слот 1 | Температура превышает верхний предел, пользовательский фрагмент 3 байта, исчезновение | 0x06 0x01 0x01 0x06 0x00 0x1F 0x00(7) | | слот 1 | Температура ниже нижнего предела, пользовательский фрагмент 3 байта, появление | 0x06 0x01 0x01 0x05 0x02 0xF0 0x68(7) | | слот 1 | Температура ниже нижнего предела, пользовательский фрагмент 3 байта, исчезновение | 0x06 0x01 0x01 0x06 0x00 0xF0 0x00(7) |#### Поддержка DPV1 Поддержка DPV1 позволяет реализовать следующие функции через непериодические операции чтения и записи:

  • Сброс параметров удаленного модуля
  • Устройство I&M, основная цель функции I&M — идентификация устройства и предоставление дополнительной информации в различных сценариях жизненного цикла устройства, таких как конфигурация, отладка, параметризация, диагностика, обслуживание, ремонт, обновление прошивки, управление активами, аудит и т. д., чтобы поддержать конечного пользователя.
Номер модуля Индекс Определение ресурса
слот 1 индекс 2 Верхний предел температуры, RW
слот 1 индекс 3 Нижний предел температуры, RW
слот 2 индекс 2 Включение сигнала управления, RW
слот 0 индекс 255 I&M, RW
слот 0 индекс 240 Загрузка прошивки, MSAC2_Data_Transport
слот 0 индекс 241 Получение информации о прошивке, RO
слот 0 индекс 242 Обновление информации о прошивке, MSAC2_Data_Transport
слот 0 индекс 243 Выполнение обновления прошивки, WO

Руководство по использованию

Комментарии ( 0 )

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

Введение

Протокольные стеки PROFIBUS DP и PA на основе микроконтроллера (MCU). Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/fredxuji-profibus_DP_PA_soft.git
git@api.gitlife.ru:oschina-mirror/fredxuji-profibus_DP_PA_soft.git
oschina-mirror
fredxuji-profibus_DP_PA_soft
fredxuji-profibus_DP_PA_soft
main