Доброго времени суток! Ведется разработка АСУТП на базе контроллеров ipac 8841 фирмы ICP DAS. Cвязь между ПЛК и ПК должна быть реализована при помощи ModBus/TCP. Собственно просьба: может кто подсказать и объяснить какие библиотеки и функции использовать? Поскольку самому рыться в документации от ICP DAS уже нет никаких сил, там сам черт ногу сломит! К примеру на ADAM 5510/TCP это решалось подключением одной библиотеки и использовании 3-х функций.
А что изменилось? Те же две функции 3 и 16.
При экспериментах ни один чайник не пострадал
-----------
Плохому системному интегратору всегда OPC сервер мешает.
______________
Пишу на C++ за еду
Я возможно плохо сформулировал вопрос, за это извиняюсь, но его суть в другом. Необходимо создать ModBus/TCP сервер на контроллере, так вот не понятно, какую библиотеку подключить к Си проекту, и какими Си функциями из этой библиотеки пользоваться, что бы этот сервер создать и удачно с ним общаться. Желательно вообще увидеть кусок рабочей программы.
На случай, если тема еще актуальна. Смотрите на диске из комплекта поставки или на фирменном ftp-сервере: napdos/modbus/8000e/demo/. Там есть и примеры программ с комментами, и набор библиотек. В свое время я сделал рабочий Modbus TCP - сервер на основе таких демок, но для контроллера 7188EX. Там другие библиотеки, но суть та же.
Теория - это когда все знаешь, но ничего не работает.
Практика - это когда все работает, но никто не знает как.
Спасибо, эти примеры рассматривал, но по-моему они подходят для реализации ModBus/TCP клиента. Воспользовался только примером для открытия и прослушки сокета, а ModBus сервер реализовал сам, в принципе ничего сложного, как оказалось
Первоначально опубликовано ADAMus
Спасибо, эти примеры рассматривал, но по-моему они подходят для реализации ModBus/TCP клиента.
Неверно. Вызов функции iRet=InitModbus(iMemory_DI,iMemory_DO,iMemory_AI,iMemory_AO); запускает библиотечную реализацию Modbus TCP сервера. Массивы, указатели на которые передаются функции, становятся наборами регистров сервера. Впрочем, реализовать свой сервер действительно несложно.
Теория - это когда все знаешь, но ничего не работает.
Практика - это когда все работает, но никто не знает как.
Я разрабатываю программы для контроллеров серии iPAC-8841, I-8831, i-7188EX, uPAC-7186 используя всего три основные библиотеки это собственные библиотеки соответствующих контроллеров например для iPAC-8841 8000a.h (8000.lib) сетевая библиотека tcpip16 или tcpip32 или tcpip48 (tcp2dm16.lib или tcp2dm32.lib или tcp2dm48.lib) и библиотека функционального ядра mfw.h (mfw09313.lib).
В программе реализованы весь набор функций опрос различного рода модулей по протоколам Modbus/RTU, Modbus/ASCII, МЭК 101 и по протоколам других разработчиков модулей.
Реализованы логические функции разного рода. Передача на верхний уровень реализована по протоколам МЭК 101/104, Modbus/RTU-TCP/IP, Modbus/RTU. Функции телеуправления также реализованы для всех модулей с дискретными выходами.
А также разработал отдельную программу регистратор последовательности дискретных входных сигналов на модулях I-8058 параллельной шины с полным циклом опроса всех 8 модулей за 6-7 мсек.
Добрый день.
Тема немного перекликается с моей, потому не буду создавать новую.
Помогите понять мне вот что, имеется ICP CON i7188E5(RS-485)
Что я хочу от него. Есть два устройства, подключённые друг к другу по RS-485 modbus rtu, на каждом из устройств всего один сетевой интерфейс. Так вот, возможно ли подключиться моим icp con к этой сети параллельно для её прослушки и выдирания нужных значений (адреса значений которыми обмениваются два устройства в сети известны) после передача этих значений по Modbus tcp на скаду.
И есть ли среди примеров на сайте icp con что-то похожее, никак что-то не обнаружу.
Добрый LSiazsaHrd!
На сайте подобных примеров нет.
Это делается так:
1.Пишется программа на С++ по следующему алгоритму:
- чтение данных с СОМ-порта;
- обработка полученных данных (команда запрос данных, ответ на запрос) по протоколу MODBUS/RTU;
- запись полученных данных в массив (необходимо знать количество передаваемых переменных для формирования массива хранения информации);
- передача данных из массива клиентам по протоколу Modbus/TRU/TCP.
Программа пишется с использованием следующих библиотек:
Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме