PDA

Просмотр полной версии : СПК107 - ПМ01 GRPS



Lexxikare
27.12.2014, 18:09
Здравствуйте, нужна помощь в диспетчеризации.
Есть АРМ с master opc (inSAT) с выходом в интернет, к нему надо подключить удаленные объекты через ПМ01 с СПК107 и подключенными к нему МДВВ.

вопрос: как правильно сконфигурировать ОПС сервер?

Как я понимаю, так как связь будет через GPRS в опс надо указать IP симки, что вставлена в ПМ01 (со статическим IP). далее добавить устройство СПК и его таги, и где-то там еще добавить МДВВ??

murdemon
27.12.2014, 18:58
Напиши в личные сообщения.. Есть подобный опыт. Готов помочь.

TANGATAR
28.12.2014, 11:04
Собственно, вопрос остается открытым. Как организовать обмен между master opc и СПК107 посредством GPRS соединения через модемы ПМ01? На данный момент в модеме со стороны СПК107 симка со статическим IP адресом, модем выходит в интернет. Со стороны АРМ интернет подключение через 3G модем. Непонятно как сконфигурировать обмен по modbus TCP со стороны СПК107 и ОРС сервера? Пробуем добавить slave modbus TCP в СПК107, но непонятно как передавать туда требуемые данные для отправки на АРМ. Со стороны АРМ TCP/IP узел, в котором указан статический IP адрес симки (которая стоит в ПМ01 со стороны СПК107). Все примеры на сайте и форуме указаны для ПЛК1хх, как быть с СПК107 непонятно, может кто-то сталкивался и есть пример?

RV9WFJ
29.12.2014, 21:06
3G свисток в АРМ + ПМ01 с СПК = вам потребуется очень много удачи чтоб все это заработало без сбоев ИМХО. Это по моему опыту, меняйте в этой схеме что-то или будете всю жизнь заниматься обслуживанием этого объекта.

capzap
29.12.2014, 21:22
Собственно, вопрос остается открытым.
элементарно, что показывает пинг на статический адрес симки а так же при работе панели команда telnet xxx.xxx.xxx.xxx 502

TANGATAR
30.12.2014, 16:29
Пинг есть, связи добились. Остался вопрос по адресации modbus переменных. Какого рода добавляются переменные (в соотнесении переменных с входами modbus tcp slave) в %IW и %QW? Как узнать адрес регистров этих переменных в hex для master OPC, если, скажем, переменная привязана к адресу %QW3.6? У меня есть переменная, в которую я считываю значение входа МДВВ, но если я привязываю ее к адресу %IW в modbus tcp slave, во время компиляции возникает ошибка, что переменная привязана к разным устройствам. Если привязать эту же переменную к %QW ошибок нет.

capzap
31.12.2014, 08:27
Вы ваго что ли раньше программировали, для меня вобще на другом языке изъесняетесь,, перечитайте документацию, примеры посмотрите как работать с модбас с овеновским оборудованием

TANGATAR
31.12.2014, 10:53
Вы ваго что ли раньше программировали, для меня вобще на другом языке изъесняетесь,, перечитайте документацию, примеры посмотрите как работать с модбас с овеновским оборудованием

Раньше программировали SIEMENS в основном. Вопрос вполне конкретный. Как выдернуть переменные по modbus tcp? Документацию по тому, как организована память в СПК107 не нашел, в примере для Лектуса, который выдала техподдержка, три переменные типа word опрашиваются по порядку в hex (1, 2, 3). Ну ок, это для переменных типа word. А как обратиться скажем к переменной типа BOOL? Маски битовые накладывать и считать каждый адрес? Если не трудно, дайте пример.

Трофимов Артем
31.12.2014, 11:23
не надо привязывать всё сразу адресами. создайте пару переменных, если требуется в нескольких интерфейсах использовать, а у Вас ошибки компиляции выдайте, переприсвойте значение и через асистента присвойте к нужной ячейке в слэйве.

capzap
31.12.2014, 11:31
Раньше программировали SIEMENS в основном. Вопрос вполне конкретный. Как выдернуть переменные по modbus tcp? Документацию по тому, как организована память в СПК107 не нашел, в примере для Лектуса, который выдала техподдержка, три переменные типа word опрашиваются по порядку в hex (1, 2, 3). Ну ок, это для переменных типа word. А как обратиться скажем к переменной типа BOOL? Маски битовые накладывать и считать каждый адрес? Если не трудно, дайте пример.

http://www.owen.ru/forum/showthread.php?t=11797&p=88181&viewfull=1#post88181
а так то надо начинать хотябы уже с созданных тем, например http://www.owen.ru/forum/showthread.php?t=15530&p=115706&viewfull=1#post115706

Ilych
04.01.2015, 12:00
Коллеги, подскажите пожалуйста, пару моментов. Есть у меня СПК107 (прошивка 3.939), ПМ01. Занялся свежей библиотекой OwenModemLib, в которой есть поддержка GPRS с помощью функционального блока FB_GPRS. В конце концов стал у меня модем работать некоторое время в режиме GPRS (судя по светодиоду GSM), потом из него вываливается в обычный режим ожидания (т.е. на него проходят звонки и СМСки). Что нужно сделать чтобы связка СПК107+ПМ01 пинговалась? Когда добились пингования, то как принимать и передавать данные? Может быть можно эти вопросы порешать и без библиотеки OwenModemLib? На всякий пожарный прикрепляю архив проекта.
Был бы очень признателен за ответ и/или примерчик.
P.S. На СИМке был статический IP. А теперь, судя по сервису MyIP.ru, динамический. А чтобы урегулировать эту проблему придется ждать пока корпоративный отдел Мегафона выйдет на работу.

TANGATAR
07.01.2015, 12:55
Коллеги, подскажите пожалуйста, пару моментов. Есть у меня СПК107 (прошивка 3.939), ПМ01. Занялся свежей библиотекой OwenModemLib, в которой есть поддержка GPRS с помощью функционального блока FB_GPRS. В конце концов стал у меня модем работать некоторое время в режиме GPRS (судя по светодиоду GSM), потом из него вываливается в обычный режим ожидания (т.е. на него проходят звонки и СМСки). Что нужно сделать чтобы связка СПК107+ПМ01 пинговалась? Когда добились пингования, то как принимать и передавать данные?
P.S. На СИМке был статический IP. А теперь, судя по сервису MyIP.ru, динамический. А чтобы урегулировать эту проблему придется ждать пока корпоративный отдел Мегафона выйдет на работу.

Ну во-первых, насколько я сам разобрался при помощи форума и техподдержки (за что им отдельное спасибо) - статический IP Вам все-таки нужен. Тогда на него и пинги проверяйте. При грамотной конфигурации библиотеки модем сам будет выходить в интернет при подаче TRUE на вход блока. Увидеть, что все заработало и блок выдает Ваш IP можно в режиме отладки. Флаг Done установится в TRUE.

Принимать и передавать данные можно посредством ОРС сервера с использованием ModBus TCP, обращаясь к Вашему статическому IP по 502 порту. Посмотрите ссылки, которые мне кидал capzap - мне они очень помогли.

Успехов!

Ilych
07.01.2015, 13:32
Спасибо большое, TANGATAR! Если не сложно, гляньте пожалуйста мой проект. Мне, конечно, по-любому придется дожидаться пока мегафонщики косяк со статическим IP-шником исправят. И я не совсем представляю как воткнуть в СПК107 Modbus TCP? Через Modbus_COM что-то не увидел возможности.

TANGATAR
08.01.2015, 18:08
Спасибо большое, TANGATAR! Если не сложно, гляньте пожалуйста мой проект. Мне, конечно, по-любому придется дожидаться пока мегафонщики косяк со статическим IP-шником исправят. И я не совсем представляю как воткнуть в СПК107 Modbus TCP? Через Modbus_COM что-то не увидел возможности.

Добавил в Ваш проект Modbus TCP slave (т.е. СПК107 опрашивается как ТСР slave). В проекте добавлено устройство - ethernet adapter, далее есть возможность добавить модуль modbus tcp slave или master. Сильно в проект не глядел, но вроде все настройки боле мене верны для статического IP, единственное вызывает сомнение точка доступа APN по глазам резануло. Перепроверьте на всякий случай.

Ilych
08.01.2015, 22:37
TANGATAR, большое спасибо. Я как-то пробовал добавлять Ethernet-устройство, но смутило то, что оно толком не настраивается.

Ilych
08.01.2015, 22:40
Кстати, возник вопрос по этому самому Ethernet-устройству. Оно ни какому СОМ-порту не привязывается. Т.е. получается, как только возникает соответствующее соединение (вне зависимости от порта), Ethernet-устройство начинает работать. Так? Или все-таки привязка к СОМ-порту как-то производится?

TANGATAR
09.01.2015, 16:46
Кстати, возник вопрос по этому самому Ethernet-устройству. Оно ни какому СОМ-порту не привязывается. Т.е. получается, как только возникает соответствующее соединение (вне зависимости от порта), Ethernet-устройство начинает работать. Так? Или все-таки привязка к СОМ-порту как-то производится?

В Вашем случае com-порт указывается в библиотеке, которая работает с модемом, соответственно: когда модем выходит в интернет, Вашему СПК107 присваивается статический IP симки, ethernet устройство - это что-то вроде виртуальной сетевой платы, считайте, что Вы подключились к СПК107 по ethernet порту, IP знаете, дальше указываете только порт (502 для Modbus TCP) и обращаетесь на статический IP адрес по указанному порту своим ОРС сервером.

Ilych
11.01.2015, 22:56
Спасибо, понял. Жалко, что нигде это внятно в документации не прописано.

energvk
11.01.2015, 23:54
а что есть документация по gprs в СПК1хх? Я тут всё перерыл, бибку то найти не могу. Вы, если не секрет, откуда взяли?

Трофимов Артем
12.01.2015, 09:46
данная библиотека без описания была передана по огромной просьбе клиента. релиза библиотеки не было. так что всё что тут плавает - это не финальная версия и её поддержка не осуществляется. можете не искать описание.

TANGATAR
24.01.2015, 16:56
Добрый день!

Подскажите пожалуйста, как можно реализовать autoreconnect для modbus tcp slave в СПК107? В моем случае СПК107 выступает в роли slave устройства. Периодически пропадает связь и виснет шина, решается лишь перезагрузкой контроллера. В программе пробовал обращаться к modbus_tcp_slave через точку, вариантов типа xReset как для com портов не увидел. Может каких библиотек не хватает? Все перепробовал.

Мурат Ахриев
28.01.2015, 10:29
СПК107 поставляется без лицензии на работу компонента Codesys "Modbus TCP"

energvk
28.01.2015, 10:34
А что это значит?

ASo
28.01.2015, 10:42
Например, всего полчаса работы после запуска контроллера, потом - отключение данного компонента.

Малышев Олег
28.01.2015, 12:41
Следует использовать библиотеку Modbus TCP slave

RV9WFJ
28.01.2015, 13:16
Следует использовать библиотеку Modbus TCP slave
Т.е. получается лицензия распространяется только на визуальную составляющую ModBusTCP? Вроде как в библиотеке ModbusTCP Slave CAA тоже задействована немного т.е. ядро то вроде как общее.

Ilych
02.02.2015, 22:28
Вопрос разработчикам библиотеки OwenModemLib. Заметил такую штуку-после того как возникает сбой GPRS-связи и выставляется сигнал Restarting, переподключиться к GPRS получается только после выключения-включения питания (не знаю - только модема или СПК тоже нужно выключать-у меня они одним кабелем в розетку включены). Это в библиотеке недоработка или это заморочки сотового оператора (в моем случае Мегафона)?

Трофимов Артем
03.02.2015, 10:25
вообще рестарт - это :
1) закрытие всех процессов в линуксе связанных с GPRS
2) проверочное завершение звонка для модема и перевод в режим приёма АТ команд.
3) переподключение.
на крайний случай, можете снять флаг Enable. подождать секунд 10, свести на пару секунд ( пока библиотека проверит стартовые компоненты в системе) , далее снять, выдержать паузу завершения всех процессов пункта 1 и 2. начать заново. проблема в том, что п.1 и п.2 требуют времени на выполнение ( могут доходить до 10 секунд)
если возникнут проблемы пишите пишите в скайп a.trofimov_owen

RV9WFJ
03.02.2015, 10:36
В СПК я не пробовал, но ровно такая же проблема есть в ПЛК1хх с GPRS и ПМ01. И там она так же не решена уже много лет.