Страница 93 из 111 ПерваяПервая ... 43839192939495103 ... ПоследняяПоследняя
Показано с 921 по 930 из 1205

Тема: Обновленный ПЛК110?

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    итак, есть чужая библиотека, которая работает странно и наш ПЛК, в котором модбус TCP на наших библиотеках работает быстро. Внимание вопрос, где копать?
    Вероятно в OSCAT - например, переводятся ли там сокеты в неблокирующий режим?
    Вы хотя бы на половину попробуйте, в ПЛК110 - штатный slave через конфигуратор (кстати чем он не устраивает, весь функционал поддерживается)?

    И почему Вы воспринимаете вопросы и советы как вражескую пропаганду?
    Тролль-наседка, добрый, нежный и ласковый

  2. #2

    По умолчанию

    Владислав, извините если я Вас обидел, но мне кажется у Вас уже какая то паранойя по поводу вредителей, врагов, саботажников и провокаторов.

    По поводу конфигуратора в CODESYS 2.
    Прекрасно работающий продукт. У меня к нему нет никаких претензий. Просто на СПК207 у меня находится "рецептура". Этот рецепт мне надо передавать на контроллер. Таких контроллеров может быть несколько. Рецептура фактически является Batch. Объем рецепта может варьироваться в зависимости от количества шагов и установки. Минимальный размер около 2 кб. Для оптимизации процесса передачи данных естественно используются массивы и передача разбивается на несколько циклов. Обратно с контроллера также поступает достаточно большой объем информации. Для этого также используются массивы (которые к тому же имеют некоторую избыточность, для унификации под разные типы оборудования). А теперь давайте, на ПЛК110 попробуем для этой задачи использовать конфигуратор с его AT %QW ... и заодно к массиву привяжем. Дальше. Представим, что у меня нет контроллера. Я сейчас спокойно отлаживаю программу на виндовом контроллере, так как не привязан к железу. И так я работаю уже много лет. Одна и та же программа (за исключением привязки к конкретным адресам ввода-вывода, которые для отладки мне не нужны) прекрасно переносится на контроллеры разных производителей.

    По поводу OSCAT.
    Естественно я понимаю, что в ней могут быть ошибки. Но безошибочной библиотеки под Modbus TCP, производства Овен, я не видел. Библиотека написанная 3s на вашем контроллере не работает (о чем я уже писал выше). Библиотекой под Modbus RTU, написанной специалистами Овен, я пользуюсь.
    P.S. Кстати, одна из библиотек OSCAT на сайте Овен доступна для скачивания (в разделе поддержка). Если Вы категорически против, удалите.

    По поводу неблокирующего режима сокетов.
    Естественно переведены. В блокирующем режиме ПЛК110 не работает вообще. Полностью умирает. Вы же сами порекомендовали мне 14 января
    Сокет надо сразу ставить в неблокирующий режим. Пример тут где-то лежал.
    А у Вас блокирующий, вот через 4 секунды ожидания связи ПЛК и сбрасывается по Watchdog.
    Я воспользовался Вашим советом, не зная ещё, что это вражеская пропаганда.

    По поводу конфигуратора в CODESYS 3.
    Отличный продукт. Есть все функции и можно привязывать массивы. Я им, если честно, часто пользуюсь. Но для конкретной задачи он плохо подходит, так как в нем нет возможности динамически менять адрес для слейва. Как только в 3s это сделают, буду счастлив. А библиотеку без конфигуратора мне подключить не удалось (о чем я уже писал выше).

  3. #3

    По умолчанию

    AT %Q использовать не надо.
    Сам по себе slave хоть на 3 кБ сделайте. И работать он будет вплоть до 123 регистров за раз.
    Ну, а в крайнем случае, ModBus TCP можно сделать и вручную. Он прост как лопата, даже проще чем ModBus RTU, нет контрольной суммы.

    P.S. А не хотите попробовать сетевые переменные CODeSys-а? Под Вашу задачу они ещё лучше подходят.
    Тролль-наседка, добрый, нежный и ласковый

  4. #4

    По умолчанию

    Вот типичный файл local_addres.dat

    /Настройки 0-го интерфейса Ethernet

    EMAC=E9:00:23:00:77:6B
    IP=0A:02:0B:78
    GATE=0A:02:01:01
    MASK=FF:FF:00:00

    //До 4 шт. DCHP заменяет значения
    DNS=10.2.1.1
    DNS=10.2.1.2

    DHCP=(0|1)
    DHCP_NAME=Name_of pribor
    //Если нет - иcпользуется название модели PLC

    //Таблица маршрутизации (общая для 2-х интерфейсов.
    //!Межинтерфейсный роуминг не осуществляется!

    //До 10 маршрутов
    //Формат IP_dest,Mask_dest,IFace_num (IFace=0 - Ethernet, IFace=1 - PPP)
    //Маршруты обрабатываются по приоритету сверху вниз
    //При отсутствии таблицы либо отсутствии правила, подходящего под соединения дейcтвуют следующие правила:
    //Проверяется соответствие IP и MASK диапазону каждого из интерфейсов
    //Если нет соответствия - выбирается интерфейс с Getway!=0
    //Если такого нет - выбирается интерфейс с MASK==255.255.255.255
    //Иначе - соединение не устанавливается
    //ROUTE 192:168:5:0,255:255:255:0,1


    //Настройки 1-го интерфейса модем PPP
    //порт (NONE|COM2|DBGU|RS485-1|RS485-2)
    PORT_MODEM=COM2
    BODRATE_MODEM=(115200...300)

    //Если пин не требуется - закоментировать строку
    GSM_PIN=1234
    GSM_APN=web.vodafone.de

    Login=SVC
    Password=54321
    //Если телефон один - ввести 3 раза одно и то-же
    //Если же есть резервные телефоны - дозвон по очереди
    Tel1=ATDT112
    Tel2=ATDT333
    Tel3=ATDT555

    //Время соединения(сек), =0 - бесконечно
    ConectTime=180
    AmountRepeat=(0..10)
    //Пауза между соединениями (сек)
    RepeatTime=10
    //Время ожидания ответа"CONNECT" (сек) и таймаут реконнекта при отсутсвии обмена
    PolingResumTime=10
    //Автозапуск дозвона по PPP (YES|NO) или пользуемся OwenLibNetcontrol.lib
    AUTORUN_PPP=YES


    Как мы видим, появилось DHCP, DNS (значит работают функции SysSockGetHostName() и SysSockGetHostByName()),
    работает PPP и работает роутинг (можно назначить, к примеру основной маршрут через Ethernet и резервный через PPP - на случай пропадания Ethernet) Или разнести доступ к разным IP по разным интерфейсам.

    RawSockets - это просто голые сокеты. можно организовывать обмен по разнообразным протоколам, к-е не поддерживаются самим ПЛК. Предоставляет прямой доступ к IP уровню.
    Тролль-наседка, добрый, нежный и ласковый

  5. #5
    Пользователь
    Регистрация
    30.11.2012
    Адрес
    40RUS
    Сообщений
    317

    По умолчанию

    Владислав, спасибо за ответ!
    Ещё вопрос: после выполнения SysSockClose, а затем создания нового сокета возвращается дескриптор равный на единицу большим чем предыдущий закрытый - это нормально?
    Напильник, велосипед, бубен, грабли и костыли - основные инструменты программиста.

  6. #6

    По умолчанию

    Цитата Сообщение от _Pavel_ Посмотреть сообщение
    Владислав, спасибо за ответ!
    Ещё вопрос: после выполнения SysSockClose, а затем создания нового сокета возвращается дескриптор равный на единицу большим чем предыдущий закрытый - это нормально?
    Это нормально.
    Тролль-наседка, добрый, нежный и ласковый

  7. #7
    Пользователь
    Регистрация
    13.10.2011
    Адрес
    Златоуст
    Сообщений
    1,021

    По умолчанию

    Дескрипторы вообще не стоит рассматривать как числа в общем случае.

  8. #8
    Пользователь
    Регистрация
    30.11.2012
    Адрес
    40RUS
    Сообщений
    317

    По умолчанию

    Цитата Сообщение от Yegor Посмотреть сообщение
    Дескрипторы вообще не стоит рассматривать как числа в общем случае.
    Меня вот что беспокоит: ПЛК работает в режиме 24/7, и периодически создаёт-закрывает соединение (сеансы связи) при этом значение дескриптора всё растёт и растёт, раньше такого не было. Не могут они "закончиться" ?
    Последний раз редактировалось _Pavel_; 09.02.2016 в 21:25.
    Напильник, велосипед, бубен, грабли и костыли - основные инструменты программиста.

  9. #9
    Пользователь
    Регистрация
    24.07.2012
    Адрес
    Россия
    Сообщений
    1,492

    По умолчанию

    Цитата Сообщение от _Pavel_ Посмотреть сообщение
    Меня вот что беспокоит: ПЛК работает в режиме 24/7, и периодически создаёт-закрывает соединение (сеансы связи) при этом значение дескриптора всё растёт и растёт, раньше такого не было. Не могут они "закончиться" ?
    например в windows тоже дескрипторы растут, потом в определенный момент это число сбрасывается.
    что касается плк овен, если число дескриптора равное 15 или 16 то больше соединяться плк ни с кем не будет.

  10. #10
    Пользователь
    Регистрация
    30.11.2012
    Адрес
    40RUS
    Сообщений
    317

    По умолчанию

    Цитата Сообщение от Scream Посмотреть сообщение
    например в windows тоже дескрипторы растут, потом в определенный момент это число сбрасывается.
    что касается плк овен, если число дескриптора равное 15 или 16 то больше соединяться плк ни с кем не будет.
    Вот я тоже этого опасался. Но в новом 110-м видел значения и 14000 и более. Скорее всего при переполнении число сбросится... я надеюсь ))
    Напильник, велосипед, бубен, грабли и костыли - основные инструменты программиста.

Страница 93 из 111 ПерваяПервая ... 43839192939495103 ... ПоследняяПоследняя

Похожие темы

  1. приобрел обновленный плк110
    от Ruffian в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 04.12.2009, 12:01

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •