Страница 18 из 35 ПерваяПервая ... 8161718192028 ... ПоследняяПоследняя
Показано с 171 по 180 из 343

Тема: ПР200 на четырёхзначной логике

  1. #171

    По умолчанию

    . OwenLogic - это среда программирования ПР200, как заявлено в теме, мы находимся на форме ОВЕН и обсуждаем оборудование компании ОВЕН.
    так ваша логическая теория работает только в ОВЕН Лоджик? то есть вашу логику нельзя применить в другом языке программирования? с другим ПО? с дургим контроллером?
    2. Я в теме приводил пример с "Машиной состояний" для программирования на верхнем уровне и аналогией в виде "логической машины состояний" для программирования контроллеров - если аналогия не понятна, то я бессилен.
    так "верхний уровень", или ОВЕН лоджик?
    так вам сказали - напишите СВОЮ программу на своей логике в ОВЕН Лоджике, если вы зафиксировались именно на этом софте

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

    По умолчанию

    Нынче времена другие, чтобы за тобой шли, приходится приплачивать

  3. #173

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    я вам в теме привел пример, когда ваша 4х логика улетает в пустоту. При возникновении Аварийной ситуации вы теряете весь смысл - сохранения событий, предшествовавшей той самой аварии - это раз.
    Два - что дальнейшая логика будет делать? метаться между 00 и 11 значениями?, потому что если она сбросит в 00 - то это штатный останов, а ведь была авария (11)
    Я уже приводил пример строения четырёхзначной логики... Она структурно состоит из двухзначной - состояния 00 - 11 (аналогия 0 -1) и трёхзначной 01 00 10 (аналогия +1 0 -1)

    Состояние 00 - СТОП, это так же состояние ГОТОВ к работе. Состояние 11 - АВАРИЯ, это не ГОТОВ к работе. Это противоположные состояния.
    Изображения Изображения

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

    По умолчанию

    Прочтите анимательне, о чем я, когда авария.
    Вы состоянием авария трёте события направления движения . Зачем тогда этот цирк?

  5. #175

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    0-й бит = 0 стоит, = 1 движется
    1-й бит = 0 - направление в -, = 1 - направление в +
    2-й бит = 0 - нет аварий, =1 - авария

    Ведь все равно вы минимум в байт будете запихивать биты, к тому же направление имеет смысл только при наличии движения, когда 0-й бит = 1 если разобраться. Хотя и при 0-м = 0 тоже имеет смысл, в каком направлении двигалась ось до момента остановки.
    Где тут преимущества 4-х логики в принципе при 3-х то битах ?
    Вроде все логические уровни для понимания соблюдены.

    опять же для понимания.
    00 - стоим
    10 - движемся в минус
    11 - движемся в плюс
    01 - авария
    Не важно, какие комбинации двух битов вы там примените, но вопрос по данному варианту 01 - авария, а причины ее вы начнете пихать в другие переменные, потому что вы не можете в этих двух битах сохранить направление движения, предшествующие аварии.
    Как-то так. и вся логика 4х насмарку.
    melky, вы не правильно поняли...

    Есть события - Кодируется одним битом !!! например сработал датчик.
    Есть состояния - Кодируется двумя битами !!! переход от одного состояния другое возможен, когда сработали например, несколько датчиков по условию AND.
    Бит события не участвует в битах состояния напрямую, это разные логические уровни

    Почитайте пожалуйста про "Машину состояний"

    181eb1ab6c3e4fce96114d3560084a9b.png
    Изображения Изображения
    Последний раз редактировалось Geenerator; 28.04.2025 в 15:36.

  6. #176

    По умолчанию

    Буквально сегодня правил свой код, оптимизировал по размеру... У меня там для реверсивного механизма 17 состояний, каждое из которых это совокупность до 10 событий... Какая 4х значная, мне мало 4х значений, хоть режте.

    Как дальше использовать эти 4 состояния. Как мне применить состояние авария, например, к необходимости запустить этот механизм в противоположную сторону, где у меня как таковой аварии то нет. Но авария у вас общая.

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

    По умолчанию

    Я про что и говорю, что 2-х битов часто недостаточно, по этому эта логика неработоспособна, и скорее всего по этому и не выжила в борьбе.
    Есть 0 и 1 в примитиве, и есть байты, слова, двойные слова, в которые эти примитивы впихиваются как за здрасьте в любых комбинациях. Так зачем ограничивать системы 2-мя битами, четвертое состояние которых превращает все в утиль?

  8. #178

    По умолчанию

    МихаилГл Мы ещё забыли, когда бывает так, что в одну машину состояний на одном из шагов вложена другая машина состояний!!!
    Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте. © Steve McConnell
    Мой рабочий блог со статьями про щиты и автоматику ОВЕН - Cs-Cs.Net | Почта: Info@Cs-Cs.Net | Канал в ТГ @CsCsNetLab

  9. #179

    По умолчанию

    Цитата Сообщение от МихаилГл Посмотреть сообщение
    Буквально сегодня правил свой код, оптимизировал по размеру... У меня там для реверсивного механизма 17 состояний, каждое из которых это совокупность до 10 событий... Какая 4х значная, мне мало 4х значений, хоть режте.

    Как дальше использовать эти 4 состояния. Как мне применить состояние авария, например, к необходимости запустить этот механизм в противоположную сторону, где у меня как таковой аварии то нет. Но авария у вас общая.
    Я пока не представляю о чём вы говорите, но попытаюсь показать на своём примере...

    Берём металлообрабатывающий станок у которого возможны движения по всем 3-м измерениям. За перемещение по оси X, Y, Z отвечает свой двигатель.
    Если двигатель крутиться по часовой стрелке, то ось едет в сторону Х+, если двигатель крутиться против часовой стрелке, то ось едет в сторону Х-. и так далее с остальными осями.

    У каждой из осей будут свои четыре состояния 00 01 10 11. Другими словами, есть "объект" у которого выделяются 4-ре логических состояния. Затем "объекты" могут изменять свои состояние в зависимости от событий относящихся к данному "объекту", либо изменять своё состояние в зависимости от состояния другого "объекта"

    Например, ось Х встала по аварии "частотника", это событие оси Х - её состояние переходит в (11), при этом оси Y, Z переходят в состояние СТОП (00), т.к. объект ось Х в - (11)

    stanok.png

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

    По умолчанию

    Вам же уже 100500 раз сказали, дальше свою логику начните прикручивать, не зацикливайтесь только на состоянии оси и двигателя. И у вас все просыпется к чертям...

Страница 18 из 35 ПерваяПервая ... 8161718192028 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 0
    Последнее сообщение: 08.01.2025, 19:16
  2. ПР200 на троичной логике
    от Geenerator в разделе Программируемые реле
    Ответов: 177
    Последнее сообщение: 04.07.2021, 21:14
  3. ПР200 + ПР200 (или МВ110, МУ110)
    от antonlis в разделе Программируемые реле
    Ответов: 32
    Последнее сообщение: 27.06.2017, 12:07
  4. ПР200 Пропадание связи USB - ПР200. Решено
    от PGK в разделе Программируемые реле
    Ответов: 0
    Последнее сообщение: 18.01.2017, 11:37
  5. ПР200+НПТ1 Пределы измерения ПР200 в режиме 4-20ma
    от Алексей Геннадьевич в разделе Программируемые реле
    Ответов: 13
    Последнее сообщение: 06.04.2016, 20:19

Ваши права

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