Modbus протокол в C++ Builder и датчик давления 'Сапфир-22МП

Modbus протоол в C++ BuilderModbus протокол в C++ Builder реализовать достаточно просто. Протокол Modbus чаще всего работает на базе интерфейса RS485, а значит и на базе RS232. Для реализации данного протокола в среде C++ Builder проще всего воспользоваться общеизвестными Win32 функциями для работы с последовательным портом такими как CreateFile(), GetCommState(), SetCommState(), TransmitCommChar() и др., которые неплохо описаны в соответствующих разделах Help 'Windows SDK' C++ Builder_а.

Что касается микропроцессорного датчика давления 'Сапфир-22МП-ВН', напрямую в нем Modbus протокол применить не удастся, поскольку он в датчике реализован довольно специфично. Протокол немного укорочен и это только выгодно для организации общения с датчиком. При приобретении датчика, полное описание протокола обмена с 'Сапфир-22МП-ВН' можно получить у производителя ОАО 'Теплоконтроль' по запросу.

Для исследования возможностей цифрового выхода датчика был создан небольшой проект на C++ Builder 5. Приложение дает возможность с периодом в 0.5 сек читать давление с датчика и управлять крутизной, смещением нуля и другими параметрами цифрового выхода прибора. Проект будет полезен тем, кто планирует использовать цифровой выход датчика как основной и тем кто только начал разбираться с протоколом обмена данными Modbus.

Протокол Modbus в Сапфир-22МП-ВН

Исхдный текст программы снабжен обильными комментами, которые помогут освоить основной принцип обмена данными по протоколу Modbus на базе интерфейса RS232 (RS485). Кроме всего прочего на базе данного проекта вполне можно строить любое другое C++ Builder приложение для организации обмена с любым другим прибором по протоколу Modbus.

Замечания, аргументированную критику, и просто соображения и комментарии по поводу вышепредставленной статьи и проекта можно оставлять по ссылке для добавления комментов. Если кому проект пригодился просьба оставить свой коммент.

Top.Mail.Ru