Имею следующую конфигурацию:
PLC100 с модулем GPRS - ПМ01 и панелькой - weintek 6070i
Задача - подвязать панельку как слейв, т.е. нужно, чтобы PLC обязательно был мастером. Модем тоже должен быть слейвом, т.к. IP симки динамический, а OPC-сервера статический, поэтому PLC также должен выступать в роли мастера по отношению к модему.
Пытался решить следующим образом:
1. Хотел, чтобы на RS-485 висело 2 мастера - т.к. нельзя создать одного мастера на эти 2 устройства, модем требует своего собственного узла.
Причем первый работает в режиме TCP, а второй соответственно serial.
Не вышло. Либо модем либо панель отваливаются.
Решил попробовать повесить на RS-485 хотя бы мастера ( для модема ) и слейва (для панельки), но тоже не вышло! Хотя это противоречит протоколу RS-485-2w. Я использовал 2-ух проводную связь именно с этой целью, так как она не обязывает четко задавать мастера и слейва. Одно и тоже устройство может быть и мастером и слейвом. Так как в любой промежуток времени только 2 устройства могут взаимодействовать, а остальные выводятся в высокоомное Z-состояние и таким образом отключаются от шины. Поэтому режим, протокол обмена данными и функции связи могут быть любыми и в данный момент определяться конфигурацией тех устройств, которые взаимодействуют между собой.
Но, это почему то не работает. Интересно, почему?
Ладно, дальше я решил развести мастеров по разным портам - одного на RS-485(для панели) а другого на RS-232 (DB-9F) (для модема). Спаял кабель для подключения модема, все расключил - и заработало, но...недолго, а именно в пределах от 40с - 15 мин. Затем PLC спонтанно и неожиданно перезагружается и после старта все повторяется циклически. В рабочий период времени все работает без сбоев, передача и согласование данных идет во всех направлениях без задержек и ошибок, но потом кранты по непонятной причине.
Далее я слелал панель мастером и таким образом в конфигурации PLC у меня остался лишь один мастер на RS-232 и один слейв на RS-485.
В этом случае все работает без сбоев и неопределенно долго, но это мне не подходит, потому что я планирую вешать еще MB8A и еще пару модулей через RS-485 и мне поэтому нужен мастер на RS-485.
Как-то так. Будут у кого советы?
И еще - интересно, но именно такая же перезагрузка происходит при закрытии удаленного OPC-сервера. Если рвется соединение с интернетом, ничего не происходит, просто модем переподключает интеренет и продолжает работать в штатном режиме, но стоит только нажать кнопку "стоп" на удаленном OPC и PLC незамедлительно перезагружается - мистика или кривые руки разработчиков?