Страница 158 из 413 ПерваяПервая ... 58108148156157158159160168208258 ... ПоследняяПоследняя
Показано с 1,571 по 1,580 из 4885

Тема: разные вопросы новичка

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    4,220

    По умолчанию

    Цитата Сообщение от Alex469 Посмотреть сообщение
    Приветствую всех. С месяц назад мной был задан вопрос касательно одной задачи. На что были получены отличные ответы от уважаемого petera с конкретными примерами. Вкратце напомню, что речь шла о ПР100 в режиме слейв, которое должно было управлять двумя устройствами по командам от модбас мастера с использованием обратного таймера. Сейчас потребовалось решить аналогичную задачу, но при этом ПР100 должно работать в режиме мастер. Я было взял уже наработанный пример для слейва, "сделал" из слейва мастера и понял, что схема НЕ работает. Прилагаю два проекта: для слейва (от petera) и мою "переделку" для мастера (я здесь даже упростил и оставил только одно устройство).
    Вижу где кроется "закавыка" (в обработке сетевой переменной Start_MB), но никак это "закавыку" не могу победить. А посему прошу помощи знатоков.
    Еще раз поясню, что ус-во, подключенное к выходу Q1 должно включаться по значению переменной Start_MB = 1. И должно выключаться по Start_MB = 0, либо по истечению заданного (не нулевого) времени.
    При этом важно, что если выключение устройства происходит по истечению времени, то переменная Start_MB должна обязательно устанавливаться в 0.
    Нет ПРки под рукой, проверить не могу

    попробуйте включить "Запись в конце цикла"
    Захват-1.png

    ЗЫ
    В Вашем случае думаю можно упростить
    Захват-2.png
    Последний раз редактировалось petera; 20.11.2020 в 12:52.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  2. #2

    По умолчанию Вот проектик

    Шторы.owl проектик

  3. #3
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,841

    По умолчанию

    Цитата Сообщение от ElectricTver Посмотреть сообщение
    Шторы.owl проектик
    А что положение штор другим не бывает, кроме полностью закрыто или открыто, короче, не разумнее подавать сигнал на открытие или закрытие когда кнопка нажата?
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

  4. #4

    По умолчанию

    Суть проблемы описана выше

  5. #5

    По умолчанию

    Хорошо пришлю. Как только буду у компьтера

  6. #6

    По умолчанию

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

  7. #7
    Пользователь
    Регистрация
    05.10.2020
    Адрес
    Питер
    Сообщений
    33

    По умолчанию

    Цитата Сообщение от bayk Посмотреть сообщение
    Поправка, чтобы функция "запись в конце цикла" стала активной переменная должна обязательно быть подключена к экранному элементу, или переменная должна быть энергонезависимой, тогда функция автоматически будет работать, если я ничего не путаю
    В моем случае это сетевая переменная (ПРка в режиме мастер). Соответственно функция "запись в конце цикла" для данной переменной активна.

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

    По умолчанию

    Очередной вопрос: в ПР100 есть 6 цифровых входов I1,...,I6. ПР100 в режиме модбас мастер. Нужно сформировать сетевую слейв переменную Err_MB целого типа по следующему алгоритму.
    Если все входы равны 0, то Err_MB = 0. Если хотя бы один вход стал равен 1, то переменная Err_MB должна стать равна номеру входа, на котором появился 1.
    При этом важно, что бы в переменной Err_MB должен зафиксироваться номер первого сработавшего входа. Т.е. если сначала сработал вход I3, а потом вход I5, то Err_MB должна остаться = 3.
    Более того, как только Err_MB изменилась из 0 в номер сработавшего входа, то изменить ее в 0 потом можно только слейвом (по модбас).

  9. #9
    Пользователь Аватар для Сергей0308
    Регистрация
    25.06.2011
    Адрес
    Галактика Андромеды (M31)
    Сообщений
    9,841

    По умолчанию

    Цитата Сообщение от Alex469 Посмотреть сообщение
    Очередной вопрос: в ПР100 есть 6 цифровых входов I1,...,I6. ПР100 в режиме модбас мастер. Нужно сформировать сетевую слейв переменную Err_MB целого типа по следующему алгоритму.
    Если все входы равны 0, то Err_MB = 0. Если хотя бы один вход стал равен 1, то переменная Err_MB должна стать равна номеру входа, на котором появился 1.
    При этом важно, что бы в переменной Err_MB должен зафиксироваться номер первого сработавшего входа. Т.е. если сначала сработал вход I3, а потом вход I5, то Err_MB должна остаться = 3.
    Более того, как только Err_MB изменилась из 0 в номер сработавшего входа, то изменить ее в 0 потом можно только слейвом (по модбас).
    Не до конца ясно, как должно работать в тех или иных случаях, например должно ли сбрасываться при наличии активных аварий(ошибок), у меня можно сбросить и следующая авария(ошибка) появится только после пропадании всех и возникновении вновь или логика при одновременном нажатии более одного входа(у меня приоритет у более старшего входа), короче, наверно примерно так:

    Авария_3.PNG

    Авария_3.owl
    Последний раз редактировалось Сергей0308; 27.11.2020 в 02:38.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Сергей0308, спасибо огромное, практически то, что нужно. Особенно интересно решение с приоритетами при одновременном нажатии более одного входа. Вот только не пойму назначение переменной IN1_8.
    Если я понял правильно, то в OUT_w формируется код аварии (от 1 до 8). Как правильно сбрасывать это код в 0? Записью 0 в локальную переменную Q ? Или формированием некоторого значения (какого ?) в IN1_8 ?
    Какова связь между срабатыванием входов и значением переменной IN1_8 ?

Страница 158 из 413 ПерваяПервая ... 58108148156157158159160168208258 ... ПоследняяПоследняя

Похожие темы

  1. Вопросы новичка!!!
    от sau в разделе ПЛК1хх
    Ответов: 62
    Последнее сообщение: 27.07.2026, 19:16
  2. ПЛК 110 - Вопросы новичка?
    от di-s в разделе ПЛК1хх
    Ответов: 21
    Последнее сообщение: 15.04.2025, 16:38
  3. Вопросы новичка по MasterScada
    от MrNobody в разделе Master SCADA 3
    Ответов: 4
    Последнее сообщение: 04.09.2014, 14:39
  4. Вопросы полного новичка
    от Korion в разделе ПЛК1хх
    Ответов: 11
    Последнее сообщение: 09.02.2010, 10:08
  5. Вопросы новичка по ПЛК
    от Ollegator в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 07.07.2009, 09:29

Ваши права

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