KRModbus.pas

Константы

  • MB_QUEUE_MAX_ITEMS – максимальное количество пакетов в очереди на отправку
  • MB_ERRORS_COUNT – количество стандартных ошибок протокола Modbus
  • MBERR_OK – ошибка отсутствует
  • MBERR_ILLEGAL_FUNCTION – недопустимый номер функции
  • MBERR_ILLEGAL_DATA_ADDRESS – некорректный адрес устройства
  • MBERR_ILLEGAL_DATA_VALUE – некорректное значение в пакете
  • MBERR_FAILURE_IN_ASSOCIATED_DEVICE – отказ оборудования удаленного устройства
  • MBERR_ACKNOWLEDGE – данные не готовы
  • MBERR_BUSY_REJECTED_MESSAGE – система занята
  • MBERR_NAK_NEGATIVE_ACKNOWLEDGMENT – отрицательное квитирование
  • MBERR_MEMORY_PARITY_ERROR – ошибка четности памяти
  • MODBUS_ERRORS_MSG – список сообщений о ошибках
  • mbfReadCoils – функция чтение состояния группы дискретных регистров
  • mbfReadDiscretInputs – функция чтение состояния группы дискретных входов
  • mbfReadHoldingRegisters – функция чтение значения регистров
  • mbfReadInputRegisters – функция чтение значения входящих регистров
  • mbfWriteCoil – функция записи состояния дискретного регистра
  • mbfWriteHoldingRegister – функция записи значения в регистр
  • mbfReadStatus – функция запроса статуса устройства
  • mbfWriteCoils – функция записи состояния группы дискретных регистров
  • mbfWriteHoldingRegisters – функция записи данных в группу регистров

Типы данных

  • TModbusError – ошибки Modbus протокола
  • TMBFunc – стандартный набор функций протокола Modbus
  • TMBType – тип протокола Modbus
    • mbtRTU – протокол Modbus RTU
    • mbtTCP – протокол Modbus TCP
    • mbtASCII – протокол Modbus ASCII

Функции

  • MBLRC – расчет контрольной суммы для Modbus ASCII
    • ABuffer – буфер, содержащий пакет Modbus ASCII
    • ALength – длина пакета
  • MBRegsToBYTE – преобразование регистра в тип Byte
    • AData – массив регистров
    • AHighByteFirst – последовательность байт в славе
  • MBRegsToWORD – преобразование регистра в тип Word
    • AData – массив регистров
    • AHighByteFirst – последовательность байт в славе
  • MBRegsToDWORD – преобразование регистра в тип DWORD
    • AData – массив регистров
    • AHighWordFirst – последовательность слов
    • AHighByteFirst – последовательность байт в каждом слове
  • MBRegsToSMALLINT – преобразование регистра в тип SmallInt
    • AData – массив регистров
    • AHighByteFirst – последовательность байт в слове
  • MBRegsToINT – преобразование регистра в тип Integer
    • AData – массив регистров
    • AHighWordFirst – последовательность слов
    • AHighByteFirst – последовательность байт в каждом слове
  • MBRegsToINT64 – преобразование регистра в тип Int64
    • AData – массив регистров
    • AHighDWordFirst – последовательность двойных слов
    • AHighWordFirst – последовательность слов
    • AHighByteFirst – последовательность байт в каждом слове
  • MBRegsToUINT64 – преобразование регистра в тип UInt64
    • AData – массив регистров
    • AHighDWordFirst – последовательность двойных слов
    • AHighWordFirst – последовательность слов
    • AHighByteFirst – последовательность байт в каждом слове
  • MBRegsToSINGLE – преобразование регистра в тип Single
    • AData – массив регистров
    • AHighWordFirst – последовательность слов
    • AHighByteFirst – последовательность байт в каждом слове
  • MBRegsToDOUBLE – преобразование регистра в тип Double
    • AData – массив регистров
    • AHighDWordFirst – последовательность двойных слов
    • AHighWordFirst – последовательность слов
    • AHighByteFirst – последовательность байт в каждом слове
  • MBRegsToSTRING – преобразование регистра в строку
    • AData – массив регистров
    • AHighByteFirst – последовательность байт
 
Поделиться:
0
Sergej Ivanov
24.03.2022 15:35
 
Здравствуйте!
Делаю расфасовщик полученного по ModbusRTU массива переменных. Подскажите пожалуйста, как наиболее удобно скармливать функциям преобразования (таким как MBRegsToSINGLE) массив TKRRegisters начиная не с нулевого элемента.

Прилагаю неработающий код для примера. Компилятор ругается так как функция преобразования требует параметр типа TKRRegisters, а получает Word
Показать полностью
13
Руслан Кандирал
24.03.2022 19:06
Sergej Ivanov
 
Здравствуйте!

Попробуйте так:
Показать полностью
0
alex Misst
14.09.2021 18:45
 
добрый день! скажите функция MBRegsToSINGLE – преобразование регистра в тип Single
это реализация hex to IEEE754 (Dword to Float) ?
Показать полностью
13
Руслан Кандирал
14.09.2021 19:10
alex Misst
 
Здравствуйте!
Да DWORD в IEEE754
Показать полностью
0
Ян Иванцев
24.06.2020 12:40
 
Здравствуйте! Скажите, пожалуйста, возможно ли присвоить какое либо событие (OnChange и т.g.) полю TKRField? У меня при попытке выдает сообщение "Cannot create a method for an unnamed component". Спасибо!
Показать полностью
13
Руслан Кандирал
24.06.2020 12:53
Ян Иванцев
 
Здравствуйте! Да можно, я только что у себя проверил. Тем более, что данное событие не перегружается в классе TKRField, оно берется из родительского класса TCustomEdit.
Судя по сообщению об ошибке, ваш компонент(KRField) не имеет имени. Такое обычно получается с дочерними(подкомпонентами). Скорее всего проблема где-то в вашем проекте.
Показать полностью
0
Ян Иванцев
24.06.2020 13:17
Руслан Кандирал
 
Да, так и было. Спасибо!!!
Показать полностью

Новости сайта

18.07.2021 14:30
Новая статья по экспорту Google Sheet в MS Excel
Экспорт таблиц Google Sheets в файл MS Excel с помощью Google Script, а также сохранение на Google Drive и отправка на e-mail
30.03.2021 14:53
Обновлен набор компонентов для Delphi
Пакет компонентов для Delphi обновлен до версии от 30.03.2021 г.
14.03.2021 04:54
Обновлен скрипт экспорта Google таблиц в PDF
Добавлены новые возможности при экспорте Google таблиц в PDF файл
22.01.2021 11:45
Обновлен пакет компонентов для Delphi
В пакет компонентов для Delphi было внесено большое количество изменений, касающиеся протокола Modbus и мультиязычности

Популярные статьи

Экспорт таблиц Google Sheets в PDF файл, на email и на Google диск
Экспорт таблиц Google Sheets в PDF файл с помощью Google Script с последующим скачиванием или сохранением на Google Drive или отправкой на почту
Набор компонентов для Delphi
Набор компонентов для Delphi включает в себя компонент для работы с файловой системой, сетью, автоматизацией и другие.
Пример передачи данных по протоколу Modbus на Delphi
Пример передачи данных с контроллера ОВЕН ПЛК100 в программу на Delphi по протоколу Modbus
Инструкция по установке компонентов на Delphi
Подробная инструкция по установке компонентов на Delphi с видео обзором