PDA

Просмотр полной версии : ПМ01 и CSD



Igor_Pavlov
24.04.2013, 14:59
Всем привет!
Есть ПЛК 100; модем ПМ01, соединенный с ПЛК посредством соединения кабелей КС3 и КС7. Перемычка на КС3 в положении ON.
Есть компьютер-сервер с подключенным к нему ПМ01 посредством кабеля КС7 и преобразователя интерфейса COM-USB. 2 SIM Beeline с подключенной услугой передачи данных (CSD).
Задача. Изначально была - удаленная загрузка программы на ПЛК. Но она не удалась. Перешел к более простой - передача данных с ПЛК на Lectus OPC на компьютере через CSD. Взял готовый стандартный пример с сайта. Это тоже не получается.
Выглядет это так в окне Lectus - http://www.owen.ru/forum/attachment.php?attachmentid=8671&stc=1&d=1366802563
А так в окне Терминала со стороны модема, подключенного к ПЛК (слушал команды ПЛК и модема посредством преобразователя RS-485/USB) -
http://www.owen.ru/forum/attachment.php?attachmentid=8672&stc=1&d=1366800222

Отсюда видно, что Lectus инициализирует модем со своей стороны, звонит, устанавливается соединение CONNECT 9600
Далее он отсылает запрос на чтение переменной по данному адресу, затем почему-то повторяет его еще 2 раза? и наконец читает что-то непонятное и почему-то неправильно кладет трубку, после чего модем зависает и в следующем цикле обмена через 2 минуты становится недоступным для инициализации.
В это же время в модеме со стороны ПЛК - идет входной звонок (RING), далее устанавливается соединение, далее принимаются те 3 запроса на чтение переменной, что отправлял LECTUS. И дальше - пусто...
Если бы это не был бы стандартный пример с сайта ОВЕНа, я бы подумал, что ошибка в программе, но и там я не нашел ошибок.
В службе техподдержке предложили проверить установленную скорость модемов, что звучало так же, как когда техподдержка интернет провайдеров в случае пропадания интернета предлагает перезагрузить windows.

И, возвращаясь к удаленной заливке программы, терминал показывает, что ПЛК не обрабатывает входные звонки. Т.е. при попытке дозвона с CodeSys на модеме видны только RING RING и т.д. Может быть нужно установить автоподъем трубки? ATS0=1. Хотя в инструкции сказано, что используются заводские настройки, где автоподъем трубки отключен ATS0=0.
Все перепробовал. Идей нет.

Кстати, вот здесь уже рассматривалась аналогичная проблема, но я не понял способа ее решения.
http://www.owen.ru/forum/showthread.php?t=14197&highlight=%CF%CC01

Пантелеев Дмитрий
24.04.2013, 15:31
Попробуйте на двух модемах установить параметры
AT+IPR=9600
AT&W.

Для того,чтобы модем правильно клал трубку, необходимо установить новую версию Лектуса (скачивается с их сайта) и там в настройках модемного соединения появится таймаут при отключении. По умолчанию 500, установите 300.

Igor_Pavlov
24.04.2013, 17:36
Если бы у меня не стояла скорость 9600, то не произошло бы подключения, о наличии которого свидетельствует CONNECT 9600 с обоих сторон и не произошло бы передачи запроса о чтении, который отображается в терминале при чтении с модема, подключенного к ПЛК.
Но, при всем при этом, я все же выполнил вашу рекомендацию еще после первого звонка к вам и именно в таком виде, как вы предлагаете. Но, как и следовало ожидать эффекта это не дало.

Насчет Lectus, у меня стоит последняя версия и там есть такой параметр, и я пробовал им играться, правда в большую сторону, довел до 1000. Завтра попробую выставить значение, которое Вы предлагаете.
Но я убежден, что дело не в этом. Из приведенных мною скринов очевидно следует, что происходит следующее -
LECTUS звонит - устанавливает соединение - передает запрос на чтение переменной, в ответ он ничего не получает в течении 3 секунд, установленных для ожидания ответа на команду и повторяет команду еще раз и так до тех пор пока либо не получит ответа, либо не кончится чило попыток повтора, в данном случае 3 раза, после чего он рвет соединение так и не дождавшись ответа.
Это можно также увидеть и слушая модем на стороне ПЛК - после установления соединения он получает запрос на чтение от LECTUS, что видно из 2-го скрина. Далее передает его ПЛК, как я понимаю, и не получает от ПЛК ответа, далее получает повторный запрос от LECTUS и также без ответа от ПЛК.
Т.е. я вижу, что проблема в том, что ПЛК не отвечает. Вот почему он не отвечает - вопрос.
Программу в примере, как и все остальное я проверил по 1000 раз, там все железно. А вот насчет самого модема - не знаю, дело в том, что модемы в данной поставке являются новой модификацией, что идет с новым разъмом под RS232 вместо RJ45. Вы же заменили там чип SIM300 на SIM900, а все эти инструкции и примеры испытывались под старый с SIM300. Пробовал ли кто-нибудь повторить это на новом с SIM900?
Более того модемы пришли без кабеля КС5, который как выяснилось идет в поставке, что, как мне у вас сказали, может означать, что это одна из самых первых поставок этой модификации и как следствие возможный брак. Не может ли получится так - что либо железо либо прошивка у модема битые?

Пантелеев Дмитрий
25.04.2013, 09:23
Хорошо. Сделайте следующее. Подключите лектус напрямую к ПК, минуя модемы. В настройках лектуса измените тип соединения на "прямое подключение". Будет в этом случае считывать значения?
Если все ок, то наберите на модемах команду AT+ICF=3,3 ATE0 AT&W.

Поменялся сим-модуль, но на работоспособность примеров это никак не отобразилось.
Так же скиньте свой номер телефона в личку.

Александр Ч.
25.04.2013, 11:41
Для начала можно в HyperTerminal проверить устойчивость связи, правильность выполнения команд.