Страница 26 из 38 ПерваяПервая ... 16242526272836 ... ПоследняяПоследняя
Показано с 251 по 260 из 374

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

  1. #251
    Пользователь Аватар для Василий Кашуба
    Регистрация
    20.11.2011
    Адрес
    Ставрополь
    Сообщений
    2,492

    По умолчанию

    Цитата Сообщение от Totuin Посмотреть сообщение
    Ну я так и поступил.

    Вложение 32186

    Но это не всегда возможно и не совсем оптимально. Всё таки переменные занимают память. Например в той схеме которая у Вас в цитате, я воевал за каждый байт. Именованное соединение не занимает памяти, это просто другое отображение соеденительной линии - то есть бесплатное улучшение читаемости.
    А вот так не пробовали делать?Блок управления насосами.JPG

  2. #252
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,125

    По умолчанию

    Цитата Сообщение от Totuin Посмотреть сообщение
    Ну а теперь представьте схемку посложнее (четыре насоса, каруселька, автоматическая замена выведенного ... и.д.)
    Вложение 32182
    Я даже пробовать не буду его переводить на линии - страшно)))) а в таком виде даже читабельно (извините за мелкий размер, на одном экране не помещалось крупнее)
    Это помесь ФБД и СТ .Схема должна читаться параллельно ,а не последовательно (обрывками)....Прочитал переменную ,а потом ищи ее по всей схеме и так сто раз ...
    электронщик до мозга костей и не только

  3. #253
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,125

    По умолчанию

    Цитата Сообщение от Totuin Посмотреть сообщение
    Запомните золотое правило разработчика (если хотите что бы от Вас не отвернулись заказчики) - "Любая схема должна быть читабельна". Вы нарисовали и забыли. А кому то её обслуживать и возможно изменять. Я последние четыре года работаю в обслуге, и меня очень радует политика Сименса. Они везде корректно пишут названия тэгов, все подробно комментируют. Это помогает нам при поиске проблем, а так же позволяет не дёргать их по каждому чиху. Так что даже самая простая схема должна быть понятна и легко читабельна.
    Только правила чтения разные для разных языков ....используйте макросы ,что бы не плодить на схеме промежуточные переменные ,которые нужно читать по буквам .
    электронщик до мозга костей и не только

  4. #254

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Вы дезасемблировали все среды разработки, что уверенно говорите что в ОЛ используются временные переменные, а в других ПО этого нет, ведь если их не видно не значит что их нет
    Ну вообще то в представленном примере используются именно переменные (созданные в таблице переменных). А именованные связи в ZelioSoft точно не жрут памяти. Я это проверял, когда пытался впихнуть в контроллер слишком большой проект (честно говоря я это проверил в первую очередь, когда кончилась память). Да и LogoSoftComfort от сименса (ещё одна среда где они используются) так же была проверенна на это дело. И то же в использовании памяти контроллера для именованных соединений замечено не было. Ну и естественно в FLProg где они применяются это точно просто другой способ отображения соединения.Тут я могу сказать точно.

  5. #255
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,125

    По умолчанию

    Цитата Сообщение от Totuin Посмотреть сообщение
    Вы наверное не работали с действительно большими проектами. Если схема большая, как вы её задокументируете? Стандартный чертёж - это формат А4 или А3. Как Вы там расположите схему с несколькими сотнями датчиков и несколькими сотнями исполнительных устройств? Или как у нас например - проект АСУ турбины, состоящий из нескольких десятков тысяч чартов (аналог листа схемы, содержащий законченную логическую схему). Они соединяются между собой как раз ссылками. Я не зря говорил про осмысленные названия соеденений. Это конечно отдельное умение - давать осмысленные названия соединениям, и непосредственно участкам схемы, и этому надо учится. Тогда не надо будет прыгать по ссылкам. Например рассмотрим один кусочек схемы:

    Вложение 32184

    Включение автомата ДГ произойдёт если:
    "Режим автомат" И "Автомат ДГ отключён" И "Нет напряжения на вводе 1" И "Нет неисправности на вводе 1" И "Нет неисправности на вводе ДГ" И "Есть напряжение на вводе ДГ" И "Ввод 1 отключён"

    И не потребовалось прыгать по схеме, всё понятно из названий. Любую сложную схему можно разбить на отдельные законченные кусочки., которым всегда можно дать осмысленное название. В этом и заключается мастерство промышленного программиста, схемотехника, да и простого програмиста то же. Везде идеология одинакова -"Разделяй и властвуй"
    Сравните опыт 4 и 40 лет ...ссылки хороши внутри щита или между щитами ,но не внутри программы .С ними большой проект не сделать ,если у каждой двухвходовки подписи делать ....
    электронщик до мозга костей и не только

  6. #256

    По умолчанию

    Цитата Сообщение от Totuin Посмотреть сообщение
    Ну я так и поступил.

    Вложение 32186

    Но это не всегда возможно и не совсем оптимально. Всё таки переменные занимают память. Например в той схеме которая у Вас в цитате, я воевал за каждый байт. Именованное соединение не занимает памяти, это просто другое отображение соеденительной линии - то есть бесплатное улучшение читаемости.
    Я думаю, что "переменные" в проекте ОЛ никак не являются "переменными, используемыми в контроллере". Любой "промежуточный результат" - это "переменная", не важно как она называется в проекте - "именованное соединение" или "переменная". Так что, насчёт оптимизации памяти МК, и то, и другое - абсолютно равнозначно. Если, конечно, не использовать энергонезависимые или сетевые переменные, которые, действительно, занимают физическую память в конкретной физической области.

  7. #257

    По умолчанию

    Цитата Сообщение от Totuin Посмотреть сообщение
    Ну вообще то в представленном примере используются именно переменные (созданные в таблице переменных).
    Вообще-то, это "таблица переменных" существует только в проекте на компьютере. Очень удивлюсь, если она как-то (статически) живёт в конечном коде программы контроллера. Не должна эта таблица жрать память (контроллера) сама по себе. А экономить память в проекте...
    Т.е., смотрите. При наличии в проекте "именованных цепей" в проекте наверняка есть "таблица цепей", в дополнении к "таблице пользовательских переменных". Разница - только в названии, т.к. в конечном коде не будет ни "цепей", ни "пользовательских переменных"
    Последний раз редактировалось pop70; 23.07.2017 в 20:19.

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

    По умолчанию

    Цитата Сообщение от Totuin Посмотреть сообщение
    Ну вообще то в представленном примере используются именно переменные (созданные в таблице переменных). А именованные связи в ZelioSoft точно не жрут памяти. Я это проверял, когда пытался впихнуть в контроллер слишком большой проект (честно говоря я это проверил в первую очередь, когда кончилась память). Да и LogoSoftComfort от сименса (ещё одна среда где они используются) так же была проверенна на это дело. И то же в использовании памяти контроллера для именованных соединений замечено не было. Ну и естественно в FLProg где они применяются это точно просто другой способ отображения соединения.Тут я могу сказать точно.
    как Вы проверяли, читали ассемблер и только в ОЛ есть складывание в аккумулятор Как это понимать: тестирование - впихнуть большой проект.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

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

  9. #259

    По умолчанию

    Цитата Сообщение от pop70 Посмотреть сообщение
    Я думаю, что "переменные" в проекте ОЛ никак не являются "переменными, используемыми в контроллере". Любой "промежуточный результат" - это "переменная", не важно как она называется в проекте - "именованное соединение" или "переменная". Так что, насчёт оптимизации памяти МК, и то, и другое - абсолютно равнозначно. Если, конечно, не использовать энергонезависимые или сетевые переменные, которые, действительно, занимают физическую память в конкретной физической области.
    Если ОЛ так сделано, то это бредовый подход. В этом просто нет необходимости, гробить память на глобальные переменные для промежуточных значений. Те переменные которые создаются в таблице тэгов - это глобальные переменные (они не возвращаются в кучу после отработки цикла), и под них сразу отводится память. Как реализовано обсчитывание логики в ОЛ я не знаю, но уверен что они не настолько тупы что бы использовать глобальные переменные для всех входов и выходов блоков.

  10. #260

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    как Вы проверяли, читали ассемблер и только в ОЛ есть складывание в аккумулятор Как это понимать: тестирование - впихнуть большой проект.
    ну примерно так - собираю проект, проверяю его - не хватает 20 байт, перевожу часть соединений в линии - проверяю -не хватает 20 байт, оптимизирую проект (меняю логику, убираю блоки, меняю алгоритмы) , проект влазит (около 0 запаса памяти). ОК. Перевожу все соединения в текст, проект влазит, свободного места столько - же. Как то так..... Результат - именованные соединения не жрут памяти.

Страница 26 из 38 ПерваяПервая ... 16242526272836 ... ПоследняяПоследняя

Похожие темы

  1. OWEN Logic v1.7
    от Евгений Сергеевич в разделе Среда программирования OWEN Logic
    Ответов: 404
    Последнее сообщение: 25.08.2020, 15:17
  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

Ваши права

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