Страница 36 из 39 ПерваяПервая ... 263435363738 ... ПоследняяПоследняя
Показано с 351 по 360 из 385

Тема: Бэта-версия OWEN Logic 1.9

  1. #351
    Пользователь Аватар для anthrwpos
    Регистрация
    13.02.2017
    Адрес
    Ленобл
    Сообщений
    188

    По умолчанию

    Спасибо за оперативность, буду иметь ввиду)
    - ά ν θ ρ ω π ο ς -
    Мои универсальные макросы https://github.com/anthrwpos1/macros

  2. #352

    По умолчанию

    Цитата Сообщение от ParuSnow Посмотреть сообщение
    Вот вариант генератора: который должен был ускоряться после каждого такта!
    к сожелению он замедляется после каждого тактаВложение 32684.
    Не удивительно что он замедляется, так как время периода растет, что бы он разгонялся нужно в CTN значение N задать например 1000, а импульсы от BLINK подавать на вход D. как то так11.png

  3. #353
    Пользователь Аватар для ParuSnow
    Регистрация
    23.05.2017
    Адрес
    Мордовия
    Сообщений
    76

    По умолчанию

    Relaymen....
    Это неудавшееся идея генератора.
    Идея была в том чтобы: допустим от нуля вверх 0-536... и вниз 0-0.00000001,
    Но из-за отсутствия write to fb для чисел с запятой это провалилось
    жаль что в ол есть только fbd


    Как-то так, маленькая глупость приводит к Большим проблемам!
    Все проекты ParuSnow

  4. #354

    По умолчанию

    Цитата Сообщение от ParuSnow Посмотреть сообщение
    Relaymen....
    Это неудавшееся идея генератора.
    Идея была в том чтобы: допустим от нуля вверх 0-536... и вниз 0-0.00000001,
    Но из-за отсутствия write to fb для чисел с запятой это провалилось
    жаль что в ол есть только fbd
    Ну учитывая что write to fb записывает значение в BLINK в миллисекундах то наименьшее время выдержки 0,01с как и время такта ПР, так что диапазон задания получается от 0,01 секунды до 655,35 секунд

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

    По умолчанию

    Цитата Сообщение от ParuSnow Посмотреть сообщение
    Relaymen....
    Это неудавшееся идея генератора.
    Идея была в том чтобы: допустим от нуля вверх 0-536... и вниз 0-0.00000001,
    Но из-за отсутствия write to fb для чисел с запятой это провалилось
    жаль что в ол есть только fbd
    представляете всемирное время идет в миллисекундах, а когда нам надо секунды и так далее, мы делим на соответствующее значение и получаем нужную единицу, кроме того целочисленная арифметика выполняется быстрее вещественной, поэтому поводов расстраиваться нету
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

  6. #356
    Пользователь Аватар для ParuSnow
    Регистрация
    23.05.2017
    Адрес
    Мордовия
    Сообщений
    76

    По умолчанию

    Всё равно Должен быть такой write.!!!
    Relaymen .......
    Ещё остались добавить к вводам ctu
    u и d переключатель из and,
    Допустим прогресс доходит: от 0 до 100 (U), переключается на (D) от 100 до 0!
    Как-то так, но это очень мелкий диапазон
    Последний раз редактировалось ParuSnow; 29.08.2017 в 14:19.


    Как-то так, маленькая глупость приводит к Большим проблемам!
    Все проекты ParuSnow

  7. #357
    Пользователь Аватар для anthrwpos
    Регистрация
    13.02.2017
    Адрес
    Ленобл
    Сообщений
    188

    По умолчанию

    Думаю, для обсуждения работы над ОЛ 1,9 эта более подходящая тема
    Цитата Сообщение от wal79 Посмотреть сообщение
    макрос должен себя вести также как в редакторе в режиме симуляции. Так вот, Для выполнения этого требования при встрече макроса на своем пути анализатор вычисляет его полностью один раз. Алгоритмы те же самые что и у схем проектов. Логика проста. Но в чем преимущества ЛЗ? В том что они выполняются в высоком приоритете. Именно это дает эффект выполнения обратной связи, которую задумал пользователь.
    Мне лично представляется, что ЛЗ внутренне есть разрыв между итерациями цикла.
    То есть конец ЛЗ - это значение предыдущей итерации, оно проходит программу и попадает в начало ЛЗ.
    На основании такого понимания я проектирую свои схемы.
    Можно сказать, что оно так работает? А если нет, то какие можно привести примеры, когда оно не будет так работать?
    Так вот, если вы задумали какой-то алгоритм обернуть в макрос, то нужно понимать, что это "закрытый" будет алгоритм, что он будет вычисляться как отдельная схема. Надеюсь, понятно разъяснил.
    Тоже хочется знать примеры того, когда некая схема обернутая в макрос, начинает выполняться по-другому, чтобы научиться их проектировать с учетом этих особенностей.
    Таких примеров будет полностью достаточно для понимания работы ОЛ пользователями безо всяких "спецификаций".

    PS в обновлении касающегося отмены "прозрачности макросов" есть некая иллюстрация очень маленького размера.
    Выложите её где нибудь в нормальном размере посмотреть, пожалуйста. Там может быть что нибудь полезное для понимания.
    Последний раз редактировалось anthrwpos; 31.08.2017 в 12:05.
    - ά ν θ ρ ω π ο ς -
    Мои универсальные макросы https://github.com/anthrwpos1/macros

  8. #358

    По умолчанию

    Цитата Сообщение от anthrwpos Посмотреть сообщение
    Тоже хочется знать примеры того, когда некая схема обернутая в макрос, начинает выполняться по-другому, чтобы научиться их проектировать с учетом этих особенностей.
    Таких примеров будет полностью достаточно для понимания работы ОЛ пользователями безо всяких "спецификаций".
    Не будет достаточно.
    Вот Вам один из таких примеров.
    Оберните в макрос просто ЛЗ.
    И попробуйте в схеме соединить выход этого макроса со входом.
    ОЛ поставит ещё одну ЛЗ.
    Нужна она? Нет. Никакой необходимости с точки зрения "развёрнутой" схемы в ЛЗ здесь не будет.
    Но ОЛ мерещится в данном случае, что для вычисления значения на выходе такого макроса, необходимо точно знать значение на его входе.
    Т.е., схема с макросом, в котором только лз, и схема с лз, не "обёрнутой" макросом, абсолютно по-разному анализируется и считается.
    И эта ситуация не всегда очевидна так, как в этом примере. И в какой именно схеме, и какая из лз внутри макроса даст "артефакты" "неразворачивания" макроса при анализе и вычислении, зависит от многих факторов.
    Т.е., необходим анализ КАЖДОЙ КОНКРЕТНОЙ СХЕМЫ, содержащей КОНКРЕТНЫЙ МАКРОС, чтобы понять как она себя поведёт.

  9. #359
    Пользователь Аватар для anthrwpos
    Регистрация
    13.02.2017
    Адрес
    Ленобл
    Сообщений
    188

    По умолчанию

    Цитата Сообщение от pop70 Посмотреть сообщение
    Оберните в макрос просто ЛЗ.
    И попробуйте в схеме соединить выход этого макроса со входом.
    ОЛ поставит ещё одну ЛЗ.
    Нужна она? Нет. Никакой необходимости с точки зрения "развёрнутой" схемы в ЛЗ здесь не будет.
    Но ОЛ мерещится в данном случае, что для вычисления значения на выходе такого макроса, необходимо точно знать значение на его входе.
    Похоже проблема следующая.
    Программа в ОЛ есть цикл. У цикла есть начало и конец. Конец цикла находится либо в выходе, либо в начале ЛЗ, начало цикла - во входе, либо в конце ЛЗ.
    Макрос вставляется в цикл между элементами так, что сначала входы передаются первым элементам макроса. Затем мы доходим до конца ЛЗ и записываем туда полученное значение. Предыдущее значение считываем из буфера и вычисляем макрос до выходов.
    Именно так получается лишняя задержка.
    Как сделать так, чтобы она не появлялась и всё работало корректно пока не понятно. Банальное решение вычислять элементы от концов ЛЗ первыми до выходов макроса явно приведет к ошибкам.
    - ά ν θ ρ ω π ο ς -
    Мои универсальные макросы https://github.com/anthrwpos1/macros

  10. #360

    По умолчанию

    Цитата Сообщение от anthrwpos Посмотреть сообщение
    Похоже проблема следующая.
    Программа в ОЛ есть цикл. У цикла есть начало и конец. Конец цикла находится либо в выходе, либо в начале ЛЗ, начало цикла - во входе, либо в конце ЛЗ.
    Макрос вставляется в цикл между элементами так, что сначала входы передаются первым элементам макроса. Затем мы доходим до конца ЛЗ и записываем туда полученное значение. Предыдущее значение считываем из буфера и вычисляем макрос до выходов.
    Именно так получается лишняя задержка.
    Как сделать так, чтобы она не появлялась и всё работало корректно пока не понятно. Банальное решение вычислять элементы от концов ЛЗ первыми до выходов макроса явно приведет к ошибкам.
    Нет здесь особых проблем.
    Просто, при анализе схемы, нужно учитывать макрос не как "функцию" (значение на выходе которой зависит только от того, что на входе), а как конкретный набор элементов, и анализировать и считать схему с "развёрнутым" макросом.
    Когда макрос - это исключительно созданная этим же инструментом схема, проблем никаких. А написание ФБ другими инструментами, как я понял, никто не собирается реализовывать.
    Т.е., неявно вместо графического представления макроса подставляются его "внутренности" столько раз, сколько встречается в схеме макрос, и анализируется и расчитывается полная развёрнутая схема.

Страница 36 из 39 ПерваяПервая ... 263435363738 ... ПоследняяПоследняя

Похожие темы

  1. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Среда программирования OWEN Logic
    Ответов: 402
    Последнее сообщение: 29.07.2016, 06:48
  2. Owen Logic версия: 1.8.4 build 108 beta
    от Руслпн в разделе Программируемые реле
    Ответов: 108
    Последнее сообщение: 29.12.2015, 08:21
  3. Версия OWEN Logic.
    от smk1635 в разделе Трёп (Курилка)
    Ответов: 5
    Последнее сообщение: 25.05.2014, 22:18
  4. ПО OWEN Logic !!!
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 3
    Последнее сообщение: 11.10.2011, 16:33
  5. OWEN Logic 1.2.0.14b
    от Ельцов Андрей в разделе Программируемые реле
    Ответов: 40
    Последнее сообщение: 21.02.2011, 14:16

Ваши права

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