ADAM 5510 & LabVIEW8.2 DSC |
Ответить | Страница 123> |
Автор | |
Новичок Присоединился: 15 Октябрь 2007 Категория: Russian Federation Online Status: Offline Публикации: 18 |
Опубликовано: 16 Октябрь 2007 20:49 |
Здравствуйте!
Реализуем АСУТП: нижний уровень на ADAM-5510-A2 (15 штук, сеть PLCNET на RS485), верхний на LabVIEW 8.2 DSC (далее LV). В сети при скорости 57600 и 115200 б/с порядка 500 тегов типа Int16 обмениваются очень медленно (до 10 сек). Такое ощущение, что многопотоковость тормозит OPC server. Поэтому хотим перейти на MODBUS rtu. Вопросы: 1. Почему при настройке Modbus OPC server в LV нет возможности указать адрес контроллера? Может LV соединяется только к одному контроллеру по RS232? 2. Если кто-то писал обмен с 5510 через RS485 киньте пример проги на Turbo C, пожалуйста. 3. Смотрел осциллограммы на RS485 от OPC server и не могу понять, почему столько много служебных посылок? Вроде как, OPC сервер перебирает адреса контроллеров. Заранее спасибо! |
|
С уважением, mrv
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 25 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 116 |
|
> В сети при скорости 57600 и 115200 б/с порядка 500 тегов типа Int16 обмениваются очень медленно (до 10 сек). Такое ощущение, что многопотоковость тормозит OPC server. < Интересно, у вас что, две скорости в одной сети или сети разные? Насчет скорости передачи в сети PLCNET почитай на http://asutpseta.narod.ru/plcdll/plcdll.htm Тамже пример на VB6 и Delphi4 для связи с контроллером. |
|
Vel
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 02 Октябрь 2007 Категория: Russian Federation Online Status: Offline Публикации: 427 |
|
Приведенное вами время 10 секунд - очень хороший результат. Проблема не в том что используется символьный или несимвольный протокол обмена, а в том, что значения получаются поодному, не пакетом-сразу все измеренные значения на контроллер за одну команду.
|
|
При экспериментах ни один чайник не пострадал
----------- Плохому системному интегратору всегда OPC сервер мешает. ______________ Пишу на C++ за еду |
|
Новичок Присоединился: 15 Октябрь 2007 Категория: Russian Federation Online Status: Offline Публикации: 18 |
|
Пробовали на разных скоростях, последовательно.
Сначала на одной, затем на другой. Приведенную ссылку видел, порадовался за автора, но поскольку dll без исходника, пользоваться не рискнул. |
|
С уважением, mrv
|
|
Новичок Присоединился: 15 Октябрь 2007 Категория: Russian Federation Online Status: Offline Публикации: 18 |
|
Складывается ощущение, что Вы прошли через эти проблемы. Не могли бы поделиться решениями? Может быть я неверно использую Fastwel PLCNET OPC сервер? Сейчас контроллеры разбиты на подсети, которые через ADAM-4570 подключаются к компьютеру верхнего уровня. Совершенно очевидно, что пропускной способности RS485 на 115200 с избытком хватает на обслуживание группы по 3-4 контроллера. Однако, сеть тормозит. В Fastwel Opc server объявлены 4 сегмента сети, которые завязаны на виртуальные порты, создаваемые от ADAM 4570. Исключение из конфига OPC сервера подсети повышает быстродействие. Грешу на OPC server. |
|
С уважением, mrv
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 25 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 116 |
|
В корне не правильно! Результат УЖАСНЫЙ, не в какие ворота!!! Передача запроса (2 байта любой адрес): 360 * 11 / 57600 = 0,0687 (68.7 миллисекунд) для скорости 57600 360 * 11 / 115200 = 0,0343 (34.3 миллисекунды) для скорости 115200 Получение данных Int (2 байта): 211 * 11 / 57600 = 0,0403(40.3 миллисекунд) для скорости 57600 68.7 + 40.3 = 109 * 5 = 545 (500 тегов Int) миллисекунд для скорости 57600 Если реально, то увеличиваем на 20-30%. И ЧТО МЫ ПОЛУЧИЛИ, СРАВНИТЕ САМИ!!! |
|
Vel
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 25 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 116 |
|
Все данные в сети PLCNet передаются пакетами, до 512 байт информации в одном пакете + заголовок + контрольные суммы данных и заголовка. Это на один контроллер. У нас есть проект в котором 15 контроллеров ADAM5510 и 1270 тегов (всяких типов) - скорость 115200, две независимых сети (на два ПК с разных портов контроллера), время полного цикла опроса ~1,2..1,5 сек. для каждого ПК. В первую очередь откажитесь от разных скоростей, делайте единую на все! Переключение со скорости на скорость ужасно затормозит работу. И постарайтесь избавиться от подсетей, они мешают друг другу. Проверьте сеть осциллографом на помехи и настойте сеть (методики есть в инете) с помощью терминаторов и предустановки 0 и 1. Это поможет избавиться от збоев пакетов и лишних перезапросов в сети, а заодно и перейти на скорость 115200 бод. >Приведенную ссылку видел, порадовался за автора, но Там есть описание функций dll и исходник примера клиента (тот же ОРС сервер по виду), а исходник dll вам зачем, Вы же не требуете исходника Fastwel PLCNET OPC сервер для работы с ним? |
|
Vel
|
|
Новичок Присоединился: 15 Октябрь 2007 Категория: Russian Federation Online Status: Offline Публикации: 18 |
|
1. Времени анализировать сеть нет, откуда взяли информацию? Киньте ссылку или по пейджеру. 2. Как может Fastwel OPC Server обеспечивать пакетный режим обмена, если у него нет типов данных array[]? Если есть, подскажите как создать его в сервере и в контроллере. В контроллере программа написана на смеси UltraLogik32 и Turbo C? 3. Во-первых, чем Вы пользуетесь? Если Fastwel OPC server, то, простите, я не верю, так как не получаю этого на практике и не понимаю как сделать пакетный режим. Во-вторых, если библиотекой PLC_DLL, то по Вашей ссылке указано, что доступная демо-версия поддерживает 200 тегов. Мне этого недостаточно. Может Вы подскажете где взять не демо-версию? 4. ??? Вы не поняли. Речь идет о том, что сначала обмен попробовали на 57600, затем перешли на 115200, естественно перепрограммировав все контроллеры. Осциллографом сеть смотрел, терминаторы ставил, сеть чистая и без них, так как не является протяженной. Все компактно, длина шлейфа витой пары не более 1,5 м. |
|
С уважением, mrv
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 25 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 116 |
|
1. Воспользуйтесь поисковиком, сейчас человек который скачивал информацию в отпуске, а у меня ссылок нет. 2. Сеть PLCNet (Структура пакета из описания протокола): Каждый передаваемый пакет обязательно содержит преамбулу, заголовок пакета и контрольную сумму заголовка пакета, дополнительно пакет может содержать передаваемые данные и контрольную сумму передаваемых данных. Так как я и есть разработчик PLC_DLL, то уж поверьте что данные передаются пакетами, а не по одному! И Fastwel OPC Server обеспечивает пакетный режим обмена. Это так не только для протокола PLCNet, а и для всех других протоколов обмена. 3. 1270 тегов (1 сегмент сети) на Fastwel OPC server и это реальность! И этот проект работает уже 4 года. И немного о конфигурировании Fastwel OPC server: Перед созданием новой конфигурации ВСЕГДА удаляйте старую конфигурацию! Иначе все старые теги останутся в новой конфигурации, хотя их и не видно. config.acf это снимок памяти ОРС сервера для получаемых данных и если на удалена старая конфигурация, то к ней добавляется новая и ОРС сервер страшно тормозит. Както у нас был такой случай и в итоге скорость опроса ~300 тегов составила 15...20 сек. 4. Да действительно я недопонял. На таких коротких линиях даже без согласования сети скорость 115200 работает без проблем. У нас на 1 линии 850 м (под эстакадой с силовыми кабелями) скрость 57600, но только после согласования сети. P.S. моя dll сделана под UltraLogik16 (всех версий), под UltraLogik32 не адаптирована, небыло неоходимости. Полная версия платная. |
|
Vel
|
|
Новичок Присоединился: 15 Октябрь 2007 Категория: Russian Federation Online Status: Offline Публикации: 18 |
|
1. Документация на PLCNET в сети отсутствует. Во всяком случае не лежит на поверхности.
2. То же самое в первом приближении можно сказать и про Modbus. Но в MODBUS предусмотрены функции запроса и передачи группы регистров, а в PLCNET нигде явно об этом не говорится. Уточню: я столкнулся впервые с PLCNET только в связке Ultralogik32 Fastwel PLCNET server. Как я понимаю, ни в описании к UL32, ни к фаствелу не указана возможность передачи массива данных. Что касается UL32 массивы в нем и не поддерживаются (явно). Судя по тому, что написал vel_ насчет 1270 тегов и двух портов, реализация сети делается им как-то нестандартно, например, своей прогой, слинкованной через TLink. Словом "пакет" я неудачно обозначил передачу массива данных, а не то, что vel_. 3. Итак, на контроллерах АDAM5510 закрытая реализация PLCNET клиента, на ПК --- закрытый FASTWEL OPC SERVER. Как повысить скорость обмена по сети? Как уже говорил, рассматриваю переход на Modbus. Какие есть мысли? |
|
С уважением, mrv
|
|
Ответить | Страница 123> |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |