PDA

Просмотр полной версии : ПЛК1хх + GPRS



alext1981
11.02.2013, 16:31
Спасибо за ответ, Дмитрий!
Хорошо, а как быть, если у нас будет использоваться контроллер ПЛК100?

osipov86
28.02.2013, 12:56
Присоединяюсь к теме. Весьма актуальна удаленная диспетчерезация используя GPRS. Кто-то может посоветовать как решать данную проблему? Будет ПЛК1ХХ + GPRS модем. Как настроить связь и передавать данные на TCP сервер? Для решения alext1981, там вроде все просто, могу описать. Но меня именно интересует работа с модемом(установка выхода в Интернет, ppp,GPRS), после чего отправка данных на TCP сервер(Socket)

Николаев Андрей
28.02.2013, 13:52
http://www.owen.ru/forum/showthread.php?t=13582

osipov86
28.02.2013, 15:03
http://www.owen.ru/forum/showthread.php?t=13582
Там используется протокол Modbus(наблюдаю некоторые проблемы в работе модуля modbus master, как повторю проблему, отпишусь о ней), а хочется свой протокол. Есть ли примеры по работе с socket?

capzap
28.02.2013, 15:12
Там используется протокол Modbus(наблюдаю некоторые проблемы в работе модуля modbus master, как повторю проблему, отпишусь о ней), а хочется свой протокол. Есть ли примеры по работе с socket?

Смотрите в сторону веб-сервера. Через сокет до полутора килобайт можно передать за раз

osipov86
28.02.2013, 15:17
Не совсем понял причем тут веб-сервер? Полтора килобайта данных мне вполне хватит для большинства переменных

capzap
28.02.2013, 15:21
Вы же просили пример, я предложил где его поискать

osipov86
28.02.2013, 15:40
Веб-сервер предлагается реализовать на ПЛК? Если да, то у меня другая задача: к плк подключен модем GPRS(динамический ip), Есть ПК с статическим IP и TCP сервером. Соотвественно нужно с плк подключатся к серверу TCP и передавать данные. Это можно сделать, если TCP-сервер будет как бы Modbus slave устройством(отвечать на соотвествующие запросы от ПЛК). Тут вроде ничего сложного, как в примерах для связи с Lectus, организовываем на ПЛК Modbus Master, Modem и отправляем данные. Но почему-то заметил, что в ПЛК при долгом отсутсвии связи с TCP сервером(в данном случае Modbus Slave устройством) появляется ошибка Modbus Master(84). Если же эта ошибка появилась и TCP сервер уже доступен, то почему-то ПЛК(Master Modbus) перестает подключатся к ПК(TCP серверу, хотя он уже доступен). Лечится это перезагрузкой ПЛК(это даже указано в примерах от ОВЕНА (http://www.owen.ru/forum/showthread.php?t=13582)). Но перезагружать ПЛК считаю совсем неправильным. Вот и поэтому стал смотреть на алгоритм с сокетами(создали сокет, попробовали подключится, все ок->передаем данные, в случае же ошибок на стороне сервера TCP мы просто пытаемся восстановить подключение, а не перезагружать ПЛК)

capzap
28.02.2013, 16:02
так Вам кто мешает посмотреть как устроена работа с сокетами на примере сервера. Можно еще найти мои вложения в поиске по слову tcpudplib

osipov86
28.02.2013, 16:45
так Вам кто мешает посмотреть как устроена работа с сокетами на примере сервера. Можно еще найти мои вложения в поиске по слову tcpudplib
Работа с сокетом на примере сервера отличается от работы клиента, это разные реализации. В сервере используется listen,accept,send,receive, а в клиенте connect,send,receive. Я создал тему (http://www.owen.ru/forum/showthread.php?t=14412), только пока ответа там не нашел. У меня проблемы с функцией connect, а также проверкой состояния сокета. Но все равно, спасибо большое.

capzap
28.02.2013, 19:21
www.owen.ru/forum/showpost.php?p=83532&postcount=4

capzap
28.02.2013, 19:22
www.owen.ru/forum/showpost.php?p=83833&postcount=11