Страница 87 из 411 ПерваяПервая ... 3777858687888997137187 ... ПоследняяПоследняя
Показано с 861 по 870 из 4610

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

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Евстигнеев Максим
    Гость

    По умолчанию

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

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

    По умолчанию

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

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

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

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

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

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



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

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

  3. #3

    По умолчанию

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

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


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


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

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

  4. #4
    Пользователь
    Регистрация
    21.01.2011
    Адрес
    еБург
    Сообщений
    890

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    На данный момент у меня этот макрос вообще реализован БЕЗ единой обратной связи
    0) Ты суслика видишь? а он есть!
    1) "обратные связи" бывают явные и не явные
    2) если есть цикл, то обязательно есть обратная связь, даже если вы её не рисовали...
    3) неявная обратная связь может быть блуждающей, т.е. перемещаться по циклу в при незначительном изменении схемы
    (именно из-за этого её и ввели разработчики, кстати, по моей просьбе)
    4) то что "обратные связи" используют как "прямые", но "с задержкой на такт" - это недокументированная фича
    (обнаруженная и впервые примененная опять же мной на практике в макросе "стек на новый лад")

    PS вроде всё это я уже где-то писал...
    PPS пора делать FAQ
    Последний раз редактировалось AI!; 21.10.2016 в 17:48.
    начинающий профессионал

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

    По умолчанию

    AI! то, что прямые связи могут быть "неявными обратными" это и так понятно, вопрос то в другом, что "обратная" связь в понятии ОЛ должна полностью на цикл затормозить сигнал, а этого не происходит. Точнее происходит, но то правильно, то неправильно.

    Еще один момент, как это реализован компилятор, что внешние цепи, не относящиеся к макросу влияют на его работу ? макрос как и любой FBD должен выполняться строго в своей области памяти, со своими переменными и на его ВНУТРЕННИЕ переменные не должна влиять сама программа, а она почему-то влияет

  6. #6
    Пользователь
    Регистрация
    21.01.2011
    Адрес
    еБург
    Сообщений
    890

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    AI! то, что прямые связи могут быть "неявными обратными" это и так понятно, вопрос то в другом, что "обратная" связь в понятии ОЛ должна полностью на цикл затормозить сигнал, а этого не происходит. Точнее происходит, но то правильно, то неправильно.
    ещё раз.
    1) есть цикл значит надо куда то воткнуть обратную связь.
    2) В вашем случае получается что явная и неявная обратные связи выходят из одной точки и входят в одну точку
    3) найдите цикл, и укажите явную обратную связь, тогда не будет неожиданностей.
    начинающий профессионал

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

    По умолчанию

    Выходят из одной точки, входят в две разные.
    Кстати компилятор Siemens LOGO! в такой ситуации выдает предупреждение и предлагает установить флаг (M2, M3 на схеме)
    Компилятор CodeSys сам разбирается с флагами, при чем вполне корректно.
    Только ОЛ пока хромает.

    Изображения Изображения
    • Тип файла: jpg Flags.jpg (87.6 Кб, Просмотров: 109)

  8. #8

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    AI! то, что прямые связи могут быть "неявными обратными" это и так понятно, вопрос то в другом, что "обратная" связь в понятии ОЛ должна полностью на цикл затормозить сигнал, а этого не происходит. Точнее происходит, но то правильно, то неправильно.
    Вам уже все сказали, что от цикла из не-обратных связей вы ничего хорошего не получите.
    Ещё раз: у вас в программе есть кольцо из "не обратных" связей. Есть кольцо -- значит никто не гарантирует как именно оно будет работать.

    Что мешает вот так сделать?

    Снимок экрана 2016-10-21 в 19.20.27.png

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

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

    По умолчанию

    Цитата Сообщение от melky Посмотреть сообщение
    AI!
    Еще один момент, как это реализован компилятор, что внешние цепи, не относящиеся к макросу влияют на его работу ? макрос как и любой FBD должен выполняться строго в своей области памяти, со своими переменными и на его ВНУТРЕННИЕ переменные не должна влиять сама программа, а она почему-то влияет
    На входе непонимание.
    В OWEN Logic компилятор "насквозь" видит все макросы. Это всего лишь "макрос", не подпрограмма, не функция со своими областями.

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

    По умолчанию

    Владимир Ситников Компилятор такой умный, что непонимает, что на входе сигнал придет позже и соответственно и на выходе из узла он окажется позже ?
    именно сменит свое состояние в другой момент ? - браво.

    Евстигнеев Максим, вот, теперь несколько понятнее, что макрос в ОЛ, просто кусок программы, завернутый в эфемерную оболочку.


    Все равно все ломается


    Объясните, как элементы в красном, влияют на работоспособность того, что в синем ?
    Изображения Изображения
    Вложения Вложения
    Последний раз редактировалось melky; 21.10.2016 в 20:29.

Страница 87 из 411 ПерваяПервая ... 3777858687888997137187 ... ПоследняяПоследняя

Похожие темы

  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

Ваши права

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