Страница 3 из 13 ПерваяПервая 12345 ... ПоследняяПоследняя
Показано с 21 по 30 из 126

Тема: Логика: Распознать отдельно короткое и отдельно длинное нажатия (CodeSys v3)

  1. #21

    По умолчанию

    Валенок, не работает такой код. Проверил.
    При подаче короткого импульса на IN, выход OUT_SHORT зажегся и больше не гас.
    +79104444236
    С уважением,
    Лапшин Вячеслав

  2. #22
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,583

    По умолчанию

    krollcbas цикл в 10-20 мс не заметен. А вот когда он растягивается на 100 и более становится заметным.
    Коротко это как мы привыкли нажимать выключатель, длинно - регулируемая величина.

    Cs-Cs по этому я пришел к выводу, что кнопки управления светом должны обрабатываться локально при помощи контроллеров в этажном щите, если это частный дом например. Для этих целей хорошо подходят ПР от Овен. А надо их в глобальную систему вводить, то через основной мозг, который занимается управлением на верхнем уровне - HMI, управление через интернет и так далее.

    Ха. Два действия кнопки можно сделать ТОЛЬКО по отпусканию чтобы сохранить адекватную реакцию в скорости. Другого к сожалению не дано.
    алгоритм просто "нажали - отпустили = реакция" или "нажали и держим (блок первого действия) = реакция"
    Все остальное МЕДЛЕННО

    Сильно не пинайте, делалось много лет назад, когда были только ПР110 и ПР114
    У всех кнопок однократное действие (то есть только включение и выключение света по короткому нажатию), начиная с входа I6 два действия или три, в зависимости от включен свет или выключен. Может идея сама поможет. Как раз для регулировки яркости можно делать, так как свет включен и пауза выдержана, короткое действие заблокировано - регулируем.
    Вложения Вложения
    Последний раз редактировалось melky; 13.12.2020 в 17:55.

  3. #23
    Пользователь
    Регистрация
    28.08.2008
    Адрес
    23..93..123
    Сообщений
    1,656

    По умолчанию

    Офигеть на 3 страницы .
    Если каждую фигню, типа диммера-выключателя делать на командоаппарате, то самая простая программа превратится в собрание сочинений В.И Ленина.
    Во вложении проект КДС2 (ПЛК110-30[M02]), принципиальной разницы с КДС3 нет, есть визуализация.
    Вложения Вложения

  4. #24

    По умолчанию

    Sergey666 А точно ли нет принципальной разницы с CDS3? Я-то знаю, что она есть. Потому что CDS3 АДСКИ медленный по сравнению с CDS2 по опросу модулей IO.
    И там от реального нажатия кнопки до того, как её увидит ПЛК, может пройти около 100-200 мсек.
    И поэтому все алгоритмы, которые основаны на потенциалах (смене TRUE/FALSE) на CDS3 косячат. Например, может быть такой случай, время условное:
    0 мсек => Опрашиваем модуль IO, значение FALSE
    20 мсек => Человек нажал кнопку
    100 мсек => Опрашиваем модуль IO, значение TRUE
    130 мсек => Человек отпустил кнопку
    195 мсек => Человек нажал кнопку второй раз
    200 мсек => Опрашиваем модуль IO, значение TRUE
    280 мсек => Человек отпустил кнопку второй раз
    300 мсек => Опрашиваем модуль IO, значение FALSE

    И получается что человек сделал двойное нажатие, а ПЛК увидел одинарное. Или вообще длинное. Так что нетушки. В третьем CDS нужны дикие извраты, например (в будущем я когда-нибудь напишу пост с названием типа "Ускоряем CodeSys v3"):
    а) Опросы модулей IO внутри щита (критичных) не через штатный кофигурал, а через OCL. Это снижает число ошибок из-за тормозов планировщика, и увеличивает скорость опроса в 1,5 раза;
    б) Длинные нажатия можно сделать по классике через TON, так как плавающее время +/-100..150 мсек - пофиг
    в) А вот короткие нажатия в третьем CodeSys правильно ловить только через изменение встроенного счётчика импульсов модуля IO. Там и нажатия бешеного барабанщика прокатывают (пример бешенства можно глянуть тут, пока не удалил, это я тренируюсь, сбиваюсь и поэтому это в ЮТуб не пошло).

    melky Ой! Пропустил я твой ответ! Отвечу по частям тебе:
    а) От этажных щитов я ушёл сразу же, как только внедрил IPM™ в своих щитах (переключение на сеть, генератор и инвертор, читать тута). А то в этажные щиты надо по 3-6 кабелей питания от основного тянуть. При этом селективность никакая. Про это я писал ещё и тут.
    Ссылки привёл как свои аргументы про "нафиг этажные щиты".
    Но никто не мешает разместить ПРки в основном щите. Как-нибудь попробую такое замутить, чтобы на СПК инфа шла только в визуализацию. Хотя пока я хочу из СПК выжать максимум!
    б) Ага, мы мыслим в одном ключе, ура! Я тоже всегда за быструю реакцию в нажатиях кнопок. Есть два подпункта:
    * Я выжимаю из СПК всё-всё, потому что мне нравится то, что всё делается в одной среде - HMI, код и само проганье.
    * Некоторые современные светильники (от Arlight/Centrsvet например) имеют такие хитрые драйвера от Mean Well, которые сами по себе включаются с задержкой аж в секунду. И это западло может свести на нет все фишки "убыстрим кнопки на ПРке".
    в) Ага, вот как раз по нажатию у меня есть FB, который ловит одинарное и двойное по счётчику импульсов модуля IO. Только они там не разделяются. А с разделением я знал что надо по отпусканию, но сел в лужу в логике.

    Всем. УРА! Вроде бы я скрестил код от krollcbas со своей обработкой одинарных нажатий по счётчику импульсов. Кажись работает!
    Сейчас вот думаю над тем, выкинуть ли из него обработку одинарного нажатия по числу тиков или оставить. Склоняюсь к тому, чтобы выкинуть, и оставить счёт тиков только для длинного.

    Пока выкладываю то, что получилось. Я код снабдил комментариями, потому что тупил и разбирался. Ну и другие дела ещё на неделе делал.
    Вложения Вложения
    Последний раз редактировалось Cs-Cs; 19.12.2020 в 02:21. Причина: Перенёс код в файл: хочу, чтобы видели зареганные юзеры. И ещё добавил ответ для melky

  5. #25

    По умолчанию

    Cs-Cs, сейчас поднимаю похожее решение на ПЛК210 и тоже надо делить импульсы длинных и коротких, но там у меня есть еще сетка кнопок с KNX и UMC шлюз, который нужно очень быстро опрашивать.
    В умном доме реакция света на кнопку - штука принципиально важная. Пока рано мне рассуждать про задержки CDS3, они же там в аппаратной части. Постараюсь все замерить и доложусь по итогу.
    +79104444236
    С уважением,
    Лапшин Вячеслав

  6. #26

    По умолчанию

    krollcbas А вот я на CFC во вложении видел уже.
    Скажи, а ты по KNX кнопки в ПЛК затащил? Мне пара заказчиков хотела подкинуть эту идею, но мне казалось что они будут долго опрашиваться.
    Отпишись пожалуйста потом, что с задержками было. У меня всё IO - на дискретных модулях Мх110. И основная задержка там тупо в Modbus RTU, потому что он в CodeSys v3 реализован совсем не так, как в CodeSys v2.

  7. #27

    По умолчанию

    Ну, мне так видится что делать освещение используя ввод/вывод на Modbus RTU не самая хорошая идея вообще (извини за критику). Ведь рассуди сам как сигнал идет: Модуль, принял, записал в таблицу(задержка), далее ждет запроса от мастера, далее мастер принял/обработал/передал в алгоритм, алгоритм ну обязан взять время на реализацию, далее запись в регистр, далее посылка телеграммы в другой модуль, далее его задержка, далее задержка самого реле, далее свет горит.
    Ну встречал такие системы от известной компании. Владельцы квартиры не в восторге, если говорить мягко. Причем ладно задержка, она плавает!!! то есть не всегда одинаковая.
    В моем случае KNX этот протокол он событийный скорость до шлюза быстрая. Шлюз от Iridium Mobile уже опрашивал с циклом 10мс, пока полет нормальный, но жизнь конечно скорее всего меня развернет. В моем случае везде эзернет
    +79104444236
    С уважением,
    Лапшин Вячеслав

  8. #28
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,583

    По умолчанию

    Cs-Cs ну, вы меня немного не поняли. Делайте на СПК и т.д. на чем нравится в разных щитах или одном тоже не важно. Просто для таких вещей как кнопки вместо модуля IO примените ПР (например, тут как бы цена играет роль, ну не ПЛК же брать).
    То есть ловля нажатий выполняется САМИМ ПР, включение, регулирование димером (есть же у ПР и аналоговые выходы) от кнопок выполняет он, а из сети - HMI визуализация, через Internet ПР просто выступает как модуль IO.

    То есть логически ПР-ка является тем же самым модулем ввода=вывода для основного мозга, но кнопки берет на себя.
    Тогда вопросов об извращенных победах не стоял бы

    Ну и чистое имхо, применяйте ПЛК, где модули на внутренней шине, может увидите разницу в скорости
    В общем немного не для тех задач вы выбрали Овен. Тут либо вообще его менять, либо использовать ПР-ки для быстрых процессов и часть логики скидывать в них.
    Последний раз редактировалось melky; 19.12.2020 в 09:28.

  9. #29

    По умолчанию

    melky Так я ж про то и написал же, про чего ты мне ответил =)
    Меня пугает один вопрос... если у меня примерно 100 входов и 100 выходов - это ж СКОЛЬКО ПРок надо будет? =) Я наоборот убежал от "поставим три комплекта Siemens Logo в щит" на ПЛК, а тут назад вертаться...
    Я бы лучше такое с ПЛК110 провернул, потому что он умеет IO опрашивать быстрее.
    А возможно, если ОВЕН уберёт Мх110 с поставок (вон, они писали что увлекаются Ethernet), то мне придётся от них уйти. Мне Мх110 очень нравятся.

    Вообщен, CodeSys v3 САМЫЙ тормозной по опросу Modbus. Потому что (это уже часть ответа для krollcbas) я ж шёл по нарастающей:
    0) Аппаратные импульсные реле.
    а) Логические реле + их модули расширения IO. Работали быстро, все алгоритмы я там легко кодил на FBD и делал щиты.
    б) ПЛК110. Работали тоже быстро, и все алгоритмы с Siemens Logo я туда портировал, перешёл на ST и продолжал фигачить по тем же принципам: ПЛК + модули IO и думал, что оно так и должно работать - быстро.
    в) Потом перешёл на СПК на CodeSys v3. И вот тут и начались приколы. И не с самим СПК, а конкретно с Modbus, причём пофигу с каким - TCP/RTU - пофиг. Он там ТОРМОЗИТ, если опрашивать его штатными средствами.

    Ишьты! Вот про шлюз спасибо! Я ещё не про всё в курсе, потому что шёл по пути "надоели реле - возьми логические, не хватает - бери простой ПЛК - нужна визуализация - бери СПК", а не от "Так, мне тут KNX надо".
    Повторюсь, мне пара заказчиков подкидывала идею взять кнопки от KNX и прокинуть их через шлюз в ПЛК, чтобы не тащить кучу кабелей к ним. Как я понял, у тебя это же и сделано?

    У меня по Modbus TCP опрашивается ABB CMS. Вроде не тормозит, да. Но там одно устройство всего. А вот шесть штук Mx210 на ПЛК210 уже тормозили.
    Сколько у тебя на каких каналах устройств?
    Ты их опрашиваешь штатными средствами, добавляя в дерево устройств?

  10. #30
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,583

    По умолчанию

    Просто это называется разделение задач Если нужно выиграть время, то вместо Mx110 берем ПР ну или даже второй ПЛК с кучей дисретных входов и выходов и никаких RS485 для чтения кнопок.

    Вот посчитайте стоимость второго ПЛК вместо некоторого количества MX ? сравните по цене.

Страница 3 из 13 ПерваяПервая 12345 ... ПоследняяПоследняя

Похожие темы

  1. отключение звука нажатия СП307
    от vendor в разделе Панели оператора (HMI)
    Ответов: 2
    Последнее сообщение: 25.01.2018, 10:12
  2. Ответов: 5
    Последнее сообщение: 24.07.2017, 12:08
  3. Ответов: 0
    Последнее сообщение: 31.05.2017, 19:40
  4. Подтверждение нажатия
    от Carter в разделе Master SCADA 3
    Ответов: 9
    Последнее сообщение: 14.11.2016, 17:32
  5. Нечеткая логика в CoDeSys
    от Fallensky в разделе ПЛК1хх
    Ответов: 38
    Последнее сообщение: 09.07.2011, 14:01

Ваши права

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