Страница 707 из 720 ПерваяПервая ... 207607657697705706707708709717 ... ПоследняяПоследняя
Показано с 7,061 по 7,070 из 7195

Тема: ВОПРОС-ОТВЕТ (отвечаем на простые вопросы от новичков)

  1. #7061

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Слейв - 1. Портов на него - 2. И никаких синхронизаций. Если только не нужно как-то различать мастеров.
    А можно тупо программный слейв-сервер. Тогда и порт один и клиентам проще.
    А программный слейв-сервер это как? Через библиотеки? Пример можно или направление указать?!

  2. #7062
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Нерезиновая, ЮЗАО
    Сообщений
    2,409

    По умолчанию

    Цитата Сообщение от Casper17 Посмотреть сообщение
    А программный слейв-сервер это как? Через библиотеки?
    Да. Syslibsocket

  3. #7063
    Пользователь Аватар для Rednaxel
    Регистрация
    15.05.2015
    Адрес
    Минск
    Сообщений
    115

    По умолчанию

    Цитата Сообщение от Casper17 Посмотреть сообщение
    Это тогда придется дублировать данные и как-то синхронизировать между двумя ModBus TCP элементами в ПЛК...
    Цитата Сообщение от Валенок Посмотреть сообщение
    Слейв - 1. Портов на него - 2. И никаких синхронизаций. Если только не нужно как-то различать мастеров.
    А можно тупо программный слейв-сервер. Тогда и порт один и клиентам проще.
    У меня похожая ситуация: в сети Modbus TCP к ПЛК 110 нужно подключить несколько панелей.
    Давайте уточним для ясности:
    1) Разные порты нужны для разных модулей TCP в ПЛК: один порт для Modbus Slave и другой для Modbus Master? Правильно я понял, или нет?
    2) Несколько мастеров (панелей или ПК), которые опрашивают и пишут в один ПЛК Slave в сети TCP вполне могут работать за счет параллельно открытых TCP соединений. Это так? Или нет?

    Правда в последнем случае возникает вопрос стабильности и скорости, особенно когда панелей больше 2х. И вот тут сразу возникает мысль о сервере. Но только я задумывался об отдельном устройстве, как посреднике между панелями и ПЛК. Как здесь может помочь тот-же ПЛК: не совсем понимаю?

  4. #7064
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Нерезиновая, ЮЗАО
    Сообщений
    2,409

    По умолчанию

    Цитата Сообщение от Rednaxel Посмотреть сообщение
    1) Разные порты нужны для разных модулей TCP в ПЛК: один порт для Modbus Slave и другой для Modbus Master? Правильно я понял, или нет?
    Нет. Серверу-слейву порт назначаете Вы, мастеру - местная ОС.

    Цитата Сообщение от Rednaxel Посмотреть сообщение
    2) Несколько мастеров (панелей или ПК), которые опрашивают и пишут в один ПЛК Slave в сети TCP вполне могут работать за счет параллельно открытых TCP соединений. Это так? Или нет?
    Так, но чтоб и порт слейва один - только при программном слейве.
    А для штатного слейва - к одному слейву прицепить несколько портов. Внешние мастера цепляются к разным портам, но всё падает в одну область слейва - штатно различить откуда прилетело не сможете. (Открытое окно на улицу. Кто украл трусы с подоконника - не узнаете)

    Цитата Сообщение от Rednaxel Посмотреть сообщение
    Правда в последнем случае возникает вопрос стабильности и скорости, особенно когда панелей больше 2х
    Стабильность одинаковая во всех случаях. Предел (для МО2) около 1000 модбас-запросов в секунду.
    Для программного : в принципе можно сделать больше за счет потока запросов от одного клиента. Но тут уже сам клиент должен уметь организовать поток запросов. Ну и при программном исполнении никто не запрещает несколько "расширить" модбас.

    Цитата Сообщение от Rednaxel Посмотреть сообщение
    посреднике между панелями и ПЛК. Как здесь может помочь тот-же ПЛК..
    Для каких-то конкретных задач - поможет. Для других - лишнее звено.

  5. #7065
    Пользователь Аватар для Rednaxel
    Регистрация
    15.05.2015
    Адрес
    Минск
    Сообщений
    115

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Так, но чтоб и порт слейва один - только при программном слейве.
    А для штатного слейва - к одному слейву прицепить несколько портов. Внешние мастера цепляются к разным портам, но всё падает в одну область слейва - штатно различить откуда прилетело не сможете. (Открытое окно на улицу. Кто украл трусы с подоконника - не узнаете)
    Эксперимент подтвердил: подключается только один мастер.
    Кроме панели Овен СП-310 в проекте планируется использовать в качестве панелей несколько iPad и Android планшетов с помощью ПО Iridium Mobile.
    Оно умеет только в режиме Мастер. Сбило утверждение разработчиков что множество панелей нормально работают с одним контроллером.
    Как теперь выяснилось, не все контроллеры поддерживают множественные подключения и ОВЕН в их числе.
    Трюк с портом срабатывает, благодарю за подсказку! Но этот вариант усложняет разработку и обновление проектов.
    Возможно придется разработать процедуру автоматического выбора порта при подключении, или внедрять Iridium сервер, который несомненно решит проблему за счет удорожания.
    Буду думать. Благодарю за обсуждение!

  6. #7066

    По умолчанию

    Подскажите пожалуйста, на сайте Овен нашел библиотеку СЭТ-4ТМ.03М для Codesys 3.5, а есть ли для версии Codesys 2.5?

  7. #7067

    По умолчанию

    Добрый день господа, подскажите в какую сторону думать, необходимо реализовать многозадачность на плк, первая программа основная (PLC_PRG) должна работать при срабатывании какого либо события (в моем случае это автоподмена аквариума по кнопке), вторая программа doliv (автодолив воды в коллектор аквариума) тоже должна работать при включенной переменной (другой кнопке). На просторах разных форумов нашел лишь кусочек кода в котором не смог разобраться как его прилепить и работает ли он вообще
    IF ФлагОбнаруженияСиналаСтоп=TRUE
    THEN ПрограммаПустышка
    ELSE ОсновнаяПрограмма
    END_IF;
    в конфигурации задач если выставить выполнение по событию, то он не сбрасывает значение выхода что критично, в библиотеках порылся и не совсем разобрался как реализовать этот останов программы, привлекла внимание лишь SysLibTasks.lib, помогите кто знает или имел дело

  8. #7068
    Пользователь Аватар для Rednaxel
    Регистрация
    15.05.2015
    Адрес
    Минск
    Сообщений
    115

    По умолчанию

    Цитата Сообщение от Maddyson Посмотреть сообщение
    Добрый день господа, подскажите в какую сторону думать, необходимо реализовать многозадачность на плк,
    По умолчанию ПЛК циклически выполняет задачу, содержащую вызов одной программы PLC_PRG в которой Вы и пишете свой алгоритм на одном из выбранных языков.

    При этом, в зависимости от заданных Вами условий (значения входов ПЛК например), выполняется то или иное действие, программа может ветвится, запуская в нужный момент дополнительные функции, блоки и подпрограммы.

    Когда программа пользователя отработает один цикл, ПЛК считывает состояние входов, устанавливает выходы, обрабатывает коммуникационные каналы и снова запускает программу. И так примерно 1000 раз в секунду, ну или медленнее если программа достаточно сложная.

    Конфигурация задач на закладке Ресурсы позволяет гибко настроить этот механизм, но если Вы новичок оно Вам точно не нужно.

    Вам просто нужно описать алгоритм своей задачи по типу "если ... то".
    Посмотрите простые примеры программ. Думаю разберетесь. Если будут затруднения, опишите подробнее свой алгоритм, подскажем. Успехов

  9. #7069
    Пользователь Аватар для Солнечный заяц
    Регистрация
    16.08.2009
    Адрес
    г. Рыбинск, Яр.обл.
    Сообщений
    161

    По умолчанию

    Уважаемые знатоки, почему переменная "а" всегда False? Как это работает?
    UPD: b - переменная типа WORD. Если изменить тип переменной на INT, то компилятор будет ругаться.
    Изображения Изображения
    Последний раз редактировалось Солнечный заяц; 22.08.2019 в 15:12.

  10. #7070
    Пользователь Аватар для A.Simonov
    Регистрация
    11.07.2017
    Адрес
    Москва
    Сообщений
    89

    По умолчанию

    Добрый день.

    Попробуйте поставить b=10 в скобки, так процедура сравнения будет проводиться корректно.
    a:= NOT (b = 10);

    Инженер по продуктам «ПЛК, модули и OwenCloud»
    Симонов Александр Андреевич
    e-mail: support@owen.ru
    e-mail: a.simonov@owen.ru

Страница 707 из 720 ПерваяПервая ... 207607657697705706707708709717 ... ПоследняяПоследняя

Метки этой темы

Ваши права

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