Страница 88 из 426 ПерваяПервая ... 3878868788899098138188 ... ПоследняяПоследняя
Показано с 871 по 880 из 4260

Тема: Фичи и баги OWEN Logic

  1. #871

    По умолчанию

    Цитата Сообщение от Ревака Юрий Посмотреть сообщение
    При создании схемы нужно понимать где обратные связи использовать, иначе компилятор сам их расставит. В общем как-то так.
    Будет очень мило с вашей стороны отразить это в РЭ к Owen Logic следующей версии.
    А если с примерами - вообще изумительно.

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

    По умолчанию

    Цитата Сообщение от Алексей Геннадьевич Посмотреть сообщение
    Будет очень мило с вашей стороны отразить это в РЭ к Owen Logic следующей версии.
    А если с примерами - вообще изумительно.
    это будет полная ерунда, найдутся те кто будет ссылаться что ОВЕН таким образом запрещает пользоваться обратными связями.
    Это задача самой среды разработки заставить пользователя отказаться от идей неправильно "строить" схему проекта, не зря же в КДС все блоки пронумерованы согласно очереди выполнения
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  3. #873

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Это задача самой среды разработки заставить пользователя отказаться от идей неправильно "строить" схему проекта, не зря же в КДС все блоки пронумерованы согласно очереди выполнения
    По результатам анализа, возможно, будет добавлен функционал, когда будут выделены на схеме связи, которые компилятор определил как обратные. И пользователь должен сам подумать - вставить явную обратную связь и задать ей порядок или оставить на усмотрение компилятору. Пока не могу обещать что это появится, но идея такая возникла.
    С уважением, Ревака Юрий.
    Инженер группы технической поддержки компании "ОВЕН"
    e-mail: yu.revaka@owen.ru

    Шаблон описания ошибки ПР или OL http://ftp-ow.owen.ru/softupdate/OWE...s/Shablon.docx
    Видео уроки по ПР200 и OWEN Logic http://edu.owen.ru/series/pr200_rev/
    Другие видеоролики по тематике ПР https://www.youtube.com/channel/UCj4...H5H3d_t6iDlQOQ

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

    По умолчанию

    Я выше писал, что независимо от наличия, количества обратных связей компилятор ПРОСТО обязан выполнять задержку на один цикл у обратной связи по отношению к прямой, если они исходят из одного источника

    Да сдался вам тот RTRIG (полагаю вы про тот, который с выхода RS макроса), вы его можете убрать к черту а проблема останется.

    И прошу заметить, что даже в том примере, когда макрос начинает лажать, если открыть макрос на редактирование и запустить эмуляцию то макрос будет работать ИСПРАВНО.
    Разрабы как-то узко смотрят на проблему, имхо, без обид....

  5. #875

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Да сдался вам тот RTRIG (полагаю вы про тот, который с выхода RS макроса), вы его можете убрать к черту а проблема останется.
    Без обид, но если вы сами исключите лишние элементы из схемы, но так, чтобы проблема ещё оставалась, то это сильно упростит анализ программистам ОЛ.

    Если rtrig не влияет, то зачем его было оставлять?

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

    По умолчанию

    Вот еще для разрабов, не поленился и сделал 4 версии одного макроса. Обращаю внимание на последний CRabw_v4, в котором применено тело макроса AI! (SelChange) в оригинале. В остальных использованы частично или как в v1 во всех стоит двойное ИЛИ с обратными связями.

    И пожалуйста, не надо рассказывать сказок про RTRIG. Все наглядно и понятно, последний вариант просто перестает считать, хотя де факто не отличается практически ничем от других трех макросов...

    Так же держите модификацию, которая глючит. Убрал обратную связь внутри макроса, запуск только по импульсу на входе С.
    Убрал внешний RTRIG.

    Я уже не знаю в который раз повторяю свой вопрос - ПОЧЕМУ элементы после макроса, в данном случае SEL, которые по логике никак не должны влиять на работу самого макроса ломают его работу ?
    Макрос имеет собственные переменные, для каждого экземпляра они свои и никак не должны затрагивать переменные основной программы и должны быть изолированы от основной программы кроме входов и выходов. С этим же вы спорить не будете ?
    Вложения Вложения
    Последний раз редактировалось melky; 21.10.2016 в 15:35.

  7. #877

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    Я уже не знаю в который раз повторяю свой вопрос - ПОЧЕМУ элементы после макроса, в данном случае SEL, которые по логике никак не должны влиять на работу самого макроса ломают его работу ?
    Макрос имеет собственные переменные, для каждого экземпляра они свои и никак не должны затрагивать переменные основной программы и должны быть изолированы от основной программы кроме входов и выходов. С этим же вы спорить не будете ?
    Вот проблема:
    Снимок экрана 2016-10-21 в 15.41.21.png

    Вы сделали цикл из не-обратных связей. Попросту говоря, от AND'а (слева вверху от зелёного поля) идёт на SEL не-обратная связь, из него выходит на другой SEL, и возвращается опять в AND.
    Как оно по-вашему, должно работать?

    Оно само должно догадаться какую из связей вы хотели сделать обратной?
    Не уверен, что вообще существует алгоритм, который во всех случаях правильно определяет какая из простых связей подразумевалась автором программы как "обратная".


    Приведу более простой пример, чтобы мой вопрос понятнее был:
    Снимок экрана 2016-10-21 в 15.44.44.png

    Должен ли вход на 2-ом входе ADD'а всегда быть равен выходу этого самого ADD'а?
    А, если подать 1 на первый вход?
    Блок ADD же должен складывать свои входы, но в то же время, результат должен тут же подаваться на второй вход.

    В симуляторе, разумеется, значения на 2-ом входе и на выходе ADD различаются, не смотря на то, что они соединены "простой связью".
    Последний раз редактировалось Владимир Ситников; 21.10.2016 в 15:59.

  8. #878
    Евстигнеев Максим
    Гость

    По умолчанию

    Владимир, спасибо большое за проделанную работу

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

    По умолчанию

    Все циклы абсолютно рабочие в макросе. На данный момент у меня этот макрос вообще реализован БЕЗ единой обратной связи только требует жесткого наличия переменных на входе и выходе. Например если я им считаю время и мне не нужны секунды, я все равно обязан создать переменную для секунд.
    Это точно не является проблемой в падении работы макроса, когда в него добавляется все 4 оригинала SelChange.

    А второй пример смотрели с SEL после макроса ? там вообще НИ ЕДИНОЙ обратной связи нет.

    БЛИН. ПОВТОРЯЮ ВОПРОС ЕЩЕ РАЗ.

    независимо как компилятор вычисляет шаги для блоков, связей и так далее. ПОЧЕМУ НАРУШАЮТСЯ ШАГИ прямой и обратной линии связи, идущие от ОДНОГО ВЫХОДА ???? Забудьте, что программа для каждого блока назначает свой шаг цикла, речь идет, что происходит нарушение в одной конкретной точке.

    з.ы. я уже не знаю, как русским языком написать вопрос, чтобы его поняли программисты

    И главное, что такого в SEL, если при 1 на входе он передает данные с одного входа, а при нуле с другого ?



    Проблема в красном кружке, когда на выходе ADD появляется 1, то на входе EQ сразу фиксируется 1 на обоих входах, хотя должно быть на одном шаге 1, 0, на следующем 1, 1

    То, что в синем кружке работает при этом корректно.
    И прошу заметить, что проблема начинается если в макросе вставлено все 4 блока оригинала макроса SelChange, когда вставлено 2 и 3 блока нарушений в работе нет.
    Изображения Изображения
    Последний раз редактировалось melky; 21.10.2016 в 16:18.

  10. #880

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    А второй пример смотрели с SEL после макроса ? там вообще НИ ЕДИНОЙ обратной связи нет.
    Цитата Сообщение от melky Посмотреть сообщение
    з.ы. я уже не знаю, как русским языком написать вопрос, чтобы его поняли программисты
    Вы приводите слишком много примеров. Это и хорошо и плохо одновременно.
    Плохо то, что когда говорите "второй пример", то можете говорить конкретнее?
    Там два многомегабайтных ОЛ проекта. Вы что понимаете под вторым примером?

    Если честно, я, увидев кольцо из не-обратных связей, прекратил исследования, т.к. "правильно" работать оно вряд ли может.


    Владислав как-то говорил, что в ОЛ прошло много лет, прежде чем победили все проблемы с обратными связями.
    Мне не верилось, и, похоже, действительно, все "проблемы" вызваны не самими обратными, а тем, что часть "не обратных" неявно превращается в обратные. Т.е. ОЛ-то работает как и заявлено, но просто оно не предупреждает пользователей, что "нельзя делать кольца из необратных связей".


    Цитата Сообщение от melky Посмотреть сообщение
    Проблема в красном кружке, когда на выходе ADD появляется 1, то на входе EQ сразу фиксируется 1 на обоих входах, хотя должно быть на одном шаге 1, 0, на следующем 1, 1

    То, что в синем кружке работает при этом корректно.
    Передам палочку Максиму =)
    Последний раз редактировалось Владимир Ситников; 21.10.2016 в 16:48.

Страница 88 из 426 ПерваяПервая ... 3878868788899098138188 ... ПоследняяПоследняя

Похожие темы

  1. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Среда программирования OWEN Logic
    Ответов: 404
    Последнее сообщение: 25.08.2020, 15:17
  2. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Программируемые реле
    Ответов: 401
    Последнее сообщение: 28.07.2016, 19:46
  3. OWEN Logic 1.2.0.14b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 40
    Последнее сообщение: 21.02.2011, 14:16
  4. OWEN Logic 1.1.0.11b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 58
    Последнее сообщение: 12.10.2010, 20:55

Ваши права

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