Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя
Показано с 31 по 40 из 41

Тема: Как ускорить считывание регистров?

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

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

    По умолчанию

    Народ, хэлп ми! В общем те же груши только в профиль. Такая проблема: расшарил на контроллере 50 регистров, всё работало даже вроде неплохо, добавил ещё десяток регистров и пропала какая-либо возможность читать регистры из контроллера по модбас тср, просто ошибка при подключении и таймаут, что при чтении орс-сервером, что при чтении другим устройством, тупо нет связи, методом тыка убавлял регистры по одному, дошел обратно до 50 и все снова заработало. Таймауты и время опроса выставлял разное от 10мс до 20с толку нет.
    Все регистры в одном слейв-модбас-девайсе, проект выше.
    В общем сколько регистров может быть в одном слейве?
    Сколько может быть слейвов? Можно ли создать несколько слейвов разбросать их по портам, адресам и в каждый подобавлять ещё регистры?
    Ещё такой нюанс: при первой попытке опроса ответ приходит очень долго, а потом всё работает относительно быстро, что я сделал не так?
    Последний раз редактировалось Parovoz; 15.04.2021 в 17:09.

  2. #2

    По умолчанию

    В общем, что бы я не пытался делать (сбрасывать плк, очищать проект, заливать другой заведомо рабочий проект) свзяи по MBTCP, где ПЛК был в роли слейва не было, при этом плк стабильно и без проблем управлял другими устройствами по MBTCP, при этом при перезаливке проекта случалось и такое, что кодесис не подключался к плк, при этом плк также работал и всем управлял. Перезагрузка по питанию также не спасала ситуацию. Приходилось сбрасывать с помощью тумблера и снова заливать.
    Помогла только прошивка с 1.0.12 до актуальной. И все регистры сразу же откликнулись без задержек, ошибок и таймаутов, время ответа 20-30 мс. Добавил ещё 30 регистров, перезалил проект и новые регистры без проблем заработали.
    И всё бы ничего, но при перепрошивке поменялся адрес плк, причем не на дефолтный, а на какой-то другой. что-то типа 10.0.2.11. Хоть бы в инструкции указали этот момент, а то ночь на дворе USB-кабеля нет, связи нет, тех. поддержка молчит. Что делать непонятно...
    В общем ситуация вроде как решилась, что было - непонятно.

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

    По умолчанию

    Цитата Сообщение от Parovoz Посмотреть сообщение
    В общем, что бы я не пытался делать (сбрасывать плк, очищать проект, заливать другой заведомо рабочий проект) свзяи по MBTCP, где ПЛК был в роли слейва не было, при этом плк стабильно и без проблем управлял другими устройствами по MBTCP, при этом при перезаливке проекта случалось и такое, что кодесис не подключался к плк, при этом плк также работал и всем управлял. Перезагрузка по питанию также не спасала ситуацию. Приходилось сбрасывать с помощью тумблера и снова заливать.
    Помогла только прошивка с 1.0.12 до актуальной. И все регистры сразу же откликнулись без задержек, ошибок и таймаутов, время ответа 20-30 мс. Добавил ещё 30 регистров, перезалил проект и новые регистры без проблем заработали.
    И всё бы ничего, но при перепрошивке поменялся адрес плк, причем не на дефолтный, а на какой-то другой. что-то типа 10.0.2.11. Хоть бы в инструкции указали этот момент, а то ночь на дворе USB-кабеля нет, связи нет, тех. поддержка молчит. Что делать непонятно...
    В общем ситуация вроде как решилась, что было - непонятно.
    На 129 странице в РП есть инфа об этом IP.
    Это IP который ставится если удаляется файл сетевых настроек.
    Код:
    IP 10.2.11.119
    GATE 10.2.1.1
    MASK 255.255.0.0

    Александр Андреевич Симонов
    Инженер по продуктам «ПЛК, модули и OwenCloud»

    Не работаю в ОВЕН с 01.07.22
    По всем вопросам обращайтесь на почту: support@owen.ru

  4. #4

    По умолчанию

    Цитата Сообщение от A.Simonov Посмотреть сообщение
    На 129 странице в РП есть инфа об этом IP.
    Это IP который ставится если удаляется файл сетевых настроек.
    Код:
    IP 10.2.11.119
    GATE 10.2.1.1
    MASK 255.255.0.0
    Так а почему бы об этом не сделать краткое упоминание в инструкции по перепрошивке..? Я, как и многие не читали руководство целиком, а обращаются к нему по мере необходимости. Есть руководство по прошивке, где об этом ни слова, неужели так сложно туда добавить эту информацию, если уж вы не удосуживаетесь отвечать на звонки на вашу горячую линию 24/7?

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

    По умолчанию

    Цитата Сообщение от Parovoz Посмотреть сообщение
    Так а почему бы об этом не сделать краткое упоминание в инструкции по перепрошивке..? Я, как и многие не читали руководство целиком, а обращаются к нему по мере необходимости. Есть руководство по прошивке, где об этом ни слова, неужели так сложно туда добавить эту информацию, если уж вы не удосуживаетесь отвечать на звонки на вашу горячую линию 24/7?
    При перепрошивке на другие версии сетевые параметры не сбрасывались.
    Обновим инструкцию.

    UPD: Поправил инструкцию.
    Последний раз редактировалось A.Simonov; 16.04.2021 в 13:51.

    Александр Андреевич Симонов
    Инженер по продуктам «ПЛК, модули и OwenCloud»

    Не работаю в ОВЕН с 01.07.22
    По всем вопросам обращайтесь на почту: support@owen.ru

  6. #6

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    накой весь опрос по tcp пихнули в одного мастера ?
    Потому что мне так сказала тех поддержка несколько лет назад. Когда я делал на каждое устройство отдельный мастер у меня валились ошибки связи. Я звонил в тех поддержку, мне сказали, что надо сделать одного мастера на интерфейс, что одним интерфейсом может управлять только один мастер и в него уже надо пихать все устройства подключенные к интерфейсу, в противном случае мастеры будут конфликтовать за право пользования интерфейсом, как-то так, почти дословно.

    т.е. на каждое устройство надо создавать отдельного мастера? это ускорит обмен? но опять же, когда я только начинал работать с этими модулями, если мне память не изменяет, я добавил один модуль, чтобы проверить максимальную частоту считываемых импульсов в реальном времени, и она там была в пределах 5 Гц, чуть быстрее, но не 20Гц как предполагает опрос в 50мс.

    Тем не менее сегодня попробую перекроить состав устройств. О результате сообщу.

  7. #7

    По умолчанию

    Цитата Сообщение от Parovoz Посмотреть сообщение
    Потому что мне так сказала тех поддержка несколько лет назад. Когда я делал на каждое устройство отдельный мастер у меня валились ошибки связи. Я звонил в тех поддержку, мне сказали, что надо сделать одного мастера на интерфейс, что одним интерфейсом может управлять только один мастер и в него уже надо пихать все устройства подключенные к интерфейсу, в противном случае мастеры будут конфликтовать за право пользования интерфейсом, как-то так, почти дословно.

    т.е. на каждое устройство надо создавать отдельного мастера? это ускорит обмен? но опять же, когда я только начинал работать с этими модулями, если мне память не изменяет, я добавил один модуль, чтобы проверить максимальную частоту считываемых импульсов в реальном времени, и она там была в пределах 5 Гц, чуть быстрее, но не 20Гц как предполагает опрос в 50мс.

    Тем не менее сегодня попробую перекроить состав устройств. О результате сообщу.
    Речь шла о 485!!!
    Тролль-наседка, добрый, нежный и ласковый

  8. #8

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    И это оптимизируется легко. Читать "для показать" можно редко (1..4 сек) и оно же кипалив.

    По входам можно читать именно счетчики (не смотрел проект). Реагировать на факт и четноть изменения.
    Тогда и входам можно 50..100мс

    Какой-то режим "переключения" - это случайно не инверсия конкретного выхода ?
    Смотреть счётчики слишком мудрёно, поэтому и хотел сделать максимально по "тупому" просто мониторить в реальном времени состояния входов, по счётчикам я уже делал на другом объекте, слишком громоздко получается, тут я считываю с одного модуля 32 бита, а то пришлось бы считывать 20х32 бита чтобы каждый канал мониторить, а таких модулей 8 штук, короче в 20 раз бы вырос трафик и количество обрабатываемых данных, нафиг оно надо. Когда мне нужен был именно частотомер для импульсов вращения барабана нории, я читал счётчики каждые полсекунды, это было точно и меня устраивало.
    Тут же бытовые выключатели, такой изврат ни к чему. 10мс меня вполне устраивает. Как бы я ни старался долбить по клавише ни одной осечки по входящему импульсу у меня не получилось сделать, считаю цель достигнутой, а метод оправданным.

  9. #9

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Повеселили. Хоть про размер eth-пакетов посмотрели. Но раз устраивает - и норм.

    Мне ? Мне пофиг. Чтоб чего там синхронизировать а то "термостатный блок решил открыть термоголовку и весь свет потух" в многопортовом полном дуплексе устраивают голимый поллинг.
    Не понимаю сарказма.

    Если есть возможность обрабатывать и считывать 20 битов вместо 20-ти 32-битовых модулей и обрабатывать их самым примитивным образом (false/true) на кой тогда городить огород из чётности/нечётности и сравнении счётчиков? В моём конкретном случае порядка 160 счётчиков вместо 160 Битов.
    Когда мне надо было мониторить частоту вращения барабана нории по датчику импульсов, я использовал счётчики, здесь же в этом смысла нет никакого. Это касаемо модулей ввода.

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

    Объясняю ситуацию на пальцах: все выходы допустим изначально выключены, потом я с айпада включаю 5 первых выходов (свет), но контроллер об этом не знает. Тыкаю на клавишу, завязанную на плк, включить 6 выход. И плк благополучно перезаписывает весь модуль с одним включенным 6 выходом, потому что "думает", что надо включить только 6 выход, т.к. контроллером в модуль вывода я пишу по изменению модуль 32 бита.

    Чтобы таких ситуаций не происходило я контроллером постоянно считываю фактическую битовую маску выходов и перезаписываю модуль с учётом имеющейся фактической картины. И на команду включить 6 выход, контроллер перезаписывает модуль с включенными первыми пятью и ещё одним 6 выходом. Что я делаю неправильно?

    Также есть ещё такие устройства как замки, краны, привод ворот, которые управляются также с разных мест, разноименными сигналами, и считывание фактической битовой маски позволяет исключить одновременное закрытие и открытие крана/ворот/штор/замков и т.п.

    Если есть какой-то боле простой и правильный способ это благополучно делать без чтения фактической маски выходов из модуля, мне было бы очень интересно узнать этот способ.
    Последний раз редактировалось Parovoz; 27.03.2021 в 03:12.

  10. #10
    Banned
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,664

    По умолчанию

    Цитата Сообщение от Parovoz Посмотреть сообщение
    Объясняю ситуацию на пальцах: все выходы допустим изначально выключены, потом я с айпада включаю 5 первых выходов (свет), но контроллер об этом не знает. Тыкаю на клавишу, завязанную на плк, включить 6 выход. И плк благополучно перезаписывает весь модуль с одним включенным 6 выходом, потому что "думает", что надо включить только 6 выход, т.к. контроллером в модуль вывода я пишу по изменению модуль 32 бита. .
    возможно Вы уже высказывались, но я вот не пойму, чем не устраивают регистры с 340по 363, концепция не нарушится, изменятся будет состояние только одного выхода
    Последний раз редактировалось capzap; 27.03.2021 в 09:16.

Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя

Похожие темы

  1. Считывание программы из ПЛК
    от MasterZ в разделе ПЛК1хх
    Ответов: 29
    Последнее сообщение: 30.12.2020, 20:24
  2. Считывание времени
    от Василий_S в разделе ПЛК1хх
    Ответов: 24
    Последнее сообщение: 08.06.2020, 12:47
  3. Считывание архива с ПЛК 304
    от Шевцов Игорь в разделе ПЛК3xx (архив)
    Ответов: 18
    Последнее сообщение: 15.09.2016, 09:08
  4. Считывание температуры
    от shtorm в разделе Эксплуатация
    Ответов: 7
    Последнее сообщение: 27.05.2012, 19:50
  5. Как ускорить процесс опроса для мастера ModBus
    от AWA1971 в разделе Сетевые технологии
    Ответов: 14
    Последнее сообщение: 15.10.2010, 00:58

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

Ваши права

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