Показано с 1 по 10 из 3635

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

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

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

    По умолчанию

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

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

    По умолчанию

    Цитата Сообщение от Alex469 Посмотреть сообщение
    Сергей0308, спасибо огромное, практически то, что нужно. Особенно интересно решение с приоритетами при одновременном нажатии более одного входа. Вот только не пойму назначение переменной IN1_8.
    Если я понял правильно, то в OUT_w формируется код аварии (от 1 до 8). Как правильно сбрасывать это код в 0? Записью 0 в локальную переменную Q ? Или формированием некоторого значения (какого ?) в IN1_8 ?
    Какова связь между срабатыванием входов и значением переменной IN1_8 ?
    Насколько я смог понять, Вы хотели сбрасывать код ошибки(1-8) только по сети?!
    В данном случае, для примера ПР200(мастер) считывает 51 регистр модуля дискретного ввода(слейв) и если на его первом входе появляется "1" сбрасывает значение ошибки в "0". Можно одним регистром передавать до 16 дискретных сигналов! Короче, сброс происходит значением "1" в сетевой переменной IN1_8, так как такой весовой коэффициент у первого входа(нулевого бита), у второго входа(первого бита) это будет "2" у третьего входа - "4", у четвёртого входа - "8", у пятого входа - "16", у шестого входа - "32", у седьмого входа - "64" и у восьмого входа - "128", если сброс сделать с этих входов, всё!

    Для передачи кода ошибки(диапазона 0-6) достаточно задействовать три бита(диапазон 0-7)!
    Последний раз редактировалось Сергей0308; 28.11.2020 в 20:23.
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Сергей0308, спасибо за пояснение. Я понял назначение данной переменной в Вашем примере.

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

    По умолчанию

    Цитата Сообщение от Alex469 Посмотреть сообщение
    Сергей0308, спасибо за пояснение. Я понял назначение данной переменной в Вашем примере.
    Может Вы планировали обойтись одной сетевой переменной?
    Если куда Вы посылаете код ошибки и откуда его сбрасываете - одно устройство и достаточно "умное", например ПР, то можно обойтись и одной переменной, мастер читает и пишет эту переменную, например так:

    Авария_4.PNG

    Авария_4.owl
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Сергей0308, еще раз спасибо! Тоже интересный вариант. Меня сейчас заботит несколько другой аспект, который пока не получается реализовать. Хочется, что бы код ошибки (OUT_w) можно сбросить в 0 при наличии активных аварий (ошибок) и следующая ошибка появится сразу же после сброса, если есть любые активные аварии на входах. Например, если по времени последовательно расписать так (ti - момент времени i):
    t1: вход I5 = 1, OUT_w = 5 - сработал вход I5, код ошибки = 5
    t2: вход I7 = 1 - сработал вход I7
    t3: вход I5 = 0 - вход I5 сброшен
    t4: OUT_w = 0 - сброс кода ошибки
    t5: OUT_w = 7 - код ошибки = 7, т.к. вход I7 активен.
    Так же должно работать, если мы сбрасываем код ошибки, а вход I5 все еще активен.

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

    По умолчанию

    Цитата Сообщение от Alex469 Посмотреть сообщение
    Сергей0308, еще раз спасибо! Тоже интересный вариант. Меня сейчас заботит несколько другой аспект, который пока не получается реализовать. Хочется, что бы код ошибки (OUT_w) можно сбросить в 0 при наличии активных аварий (ошибок) и следующая ошибка появится сразу же после сброса, если есть любые активные аварии на входах. Например, если по времени последовательно расписать так (ti - момент времени i):
    t1: вход I5 = 1, OUT_w = 5 - сработал вход I5, код ошибки = 5
    t2: вход I7 = 1 - сработал вход I7
    t3: вход I5 = 0 - вход I5 сброшен
    t4: OUT_w = 0 - сброс кода ошибки
    t5: OUT_w = 7 - код ошибки = 7, т.к. вход I7 активен.
    Так же должно работать, если мы сбрасываем код ошибки, а вход I5 все еще активен.
    Тогда наверно как-то так:

    Авария_5.PNG

    Вы, наверно, в первый раз с логикой сталкиваетесь?

    Авария_5.owl
    Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
    справиться с проблемами, либо это не твои проблемы.

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

    По умолчанию

    Цитата Сообщение от Сергей0308 Посмотреть сообщение
    Тогда наверно как-то так:
    Сергей0308, Спасибо огромное! Именно то, что нужно.

Похожие темы

  1. Вопросы новичка!!!
    от sau в разделе ПЛК1хх
    Ответов: 42
    Последнее сообщение: 02.05.2022, 19:57
  2. Вопросы новичка по MasterScada
    от MrNobody в разделе Master SCADA 3
    Ответов: 4
    Последнее сообщение: 04.09.2014, 15:39
  3. ПЛК 110 - Вопросы новичка?
    от di-s в разделе ПЛК1хх
    Ответов: 10
    Последнее сообщение: 06.09.2011, 15:12
  4. Вопросы полного новичка
    от Korion в разделе ПЛК1хх
    Ответов: 11
    Последнее сообщение: 09.02.2010, 10:08
  5. Вопросы новичка по ПЛК
    от Ollegator в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 07.07.2009, 10:29

Ваши права

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