- Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
- Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
- Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
- За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
- Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
- Перед тем как что-то написать - читать здесь и здесь.
Оптимизация проекта для ControlLogix???
Оптимизация проекта для ControlLogix???
Доброго времени суток!
Проблема в следующем:
Есть проект. Нехилый такой проект. Так вот, может кто подскажет, как еще можно оптимизировать его (удаление неспользуемых тегов и комментариев не предлагать - уже сделано). У головы 1756-L63 не хватает памяти?
Помогите советом!!!
Память: 8,388,608 байт
Проект (где-то 2/3 от всего):6,426,128 байт
Проблема в следующем:
Есть проект. Нехилый такой проект. Так вот, может кто подскажет, как еще можно оптимизировать его (удаление неспользуемых тегов и комментариев не предлагать - уже сделано). У головы 1756-L63 не хватает памяти?
Помогите советом!!!
Память: 8,388,608 байт
Проект (где-то 2/3 от всего):6,426,128 байт
-
- новенький
- Сообщения: 1
- Зарегистрирован: 20 мар 2009, 07:51
- Имя: Чернов Алексей Евгеньевич
Re: Оптимизация проекта для ControlLogix???
По возможности, замените FBD на Ladder. Ну и используйте подпрограммы, циклы и т.д. для уменьшения повторяющихся кусков кода.
-
- здесь недавно
- Сообщения: 7
- Зарегистрирован: 24 июл 2008, 10:49
- Имя: Вишневский Алексей Анатольевич
- Страна: Россия
- город/регион: Мирный, Якутия
Re: Оптимизация проекта для ControlLogix???
Так, давайте отделим мух от котлет... комментарии в принципе память занимать не могут, поэтому можете смело вернуть все комментарии на место, они сохраняются исключительно в исходном файле и в процессор не грузятся.gvtret писал(а): как еще можно оптимизировать его (удаление неспользуемых тегов и комментариев не предлагать - уже сделано). У головы 1756-L63 не хватает памяти?
Если бы не было упоминания про комментарии, я бы не заподозрил неладное :)
Как вы измеряли эти 2/3?gvtret писал(а):
Память: 8,388,608 байт
Проект (где-то 2/3 от всего):6,426,128 байт
По размеру файла исходника? (если так - то это абсолютно никак не связано с памятью процессора!!!)
или по занятой памяти в процессе работы процессора? - тогда совершенно не понятно к чему этот вопрос, 2/3 от максимума нормальный объем ;)
Re: Оптимизация проекта для ControlLogix???
Так. Проект полностью написан на ST. Насколько я знаю ST не компилируется, а обрабатывается "as is". Отсюда и про комментарии вопрос.
Смотрелось состояние памяти контроллера. 2/3 занимает отнюдь не весь проект, а чуть больше половины.
Смотрелось состояние памяти контроллера. 2/3 занимает отнюдь не весь проект, а чуть больше половины.
-
- почётный участник форума
- Сообщения: 3504
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 4 раза
- Поблагодарили: 230 раз
Re: Оптимизация проекта для ControlLogix???
А Вы попробуйте Upload с ПЛК в компьютер. Будут ли у Вас комментарии в аплоаде?
Начинаю изучать ST, чтобы знать его недостатки, которые в общем-то явны.
Начинаю изучать ST, чтобы знать его недостатки, которые в общем-то явны.
-
- здесь недавно
- Сообщения: 7
- Зарегистрирован: 24 июл 2008, 10:49
- Имя: Вишневский Алексей Анатольевич
- Страна: Россия
- город/регион: Мирный, Якутия
Re: Оптимизация проекта для ControlLogix???
Комментарии там будут!А Вы попробуйте Upload с ПЛК в компьютер. Будут ли у Вас комментарии в аплоаде?
Но ST все-таки НЕ обрабатывается как есть, он может и хранится в контроллере как есть, но в упакованном виде. Проверяется это очень легко, подпрограмма с комментариями на мегабайт в чистом виде занимает в контроллере около 6 килобайт :D
А почему вы это сразу не указали? Тут телепатов нет :evil:gvtret писал(а):Так. Проект полностью написан на ST. Насколько я знаю ST не компилируется, а обрабатывается "as is". Отсюда и про комментарии вопрос.
Все дальнейшие разговоры будут ни о чём, пока не выложите сам проект (чтоб что-то посоветовать по оптимизации - надо видеть саму программу)...
Может у вас на ST для проверки булевых условий используются DINT переменные, что приводит к увеличению объема в 32:!: раза???
Мне за 10 лет работы еще не попадались контроллерные навороты в виде мегабайтов именно кода... Так что лучше код в студию, чтобы можно было общаться предметно. Может вам действительно ничего не поможет, кроме переделки всего на LD :D
-
- почётный участник форума
- Сообщения: 3504
- Зарегистрирован: 10 ноя 2009, 04:58
- Имя: Толмачев Михаил Алексеевич
- город/регион: г. Чехов, МО
- Благодарил (а): 4 раза
- Поблагодарили: 230 раз
Re: Оптимизация проекта для ControlLogix???
Про язык ST:
Вы случайно не работаете по большей части с двоичными сигналами?http://ru.wikipedia.org/wiki/Structured_Text писал(а):Удобен для написания больших программ и работы с аналоговыми сигналами и числами с плавающей точкой.
-
- администратор
- Сообщения: 16539
- Зарегистрирован: 17 июн 2008, 16:01
- Имя: Евгений свет Брониславович
- Страна: Россия
- город/регион: Санкт-Петербург
- Благодарил (а): 625 раз
- Поблагодарили: 1127 раз
Re: Оптимизация проекта для ControlLogix???
Читаю я вот читаю....
Когда-то в молодости столкнулся с такой же проблемой - из-за отсутствия опыта просто не учёл что память в ПЛК не резиновая. Тогда вопрос "что делать" как-то и не возник. Взял исходный алгоритм, описал его с помощью графа переходов (до этого руководствовался только блок-схемами), а потом перенёс полученный граф на ST. Код заметно уменьшился. Много времени это не заняло потому что все нюансы и грабли по алгоритму были уже найдены и устранены на прошлом этапе написания кода.
Может быть и в этом случае просто изменить модель представления алгоритма?
Когда-то в молодости столкнулся с такой же проблемой - из-за отсутствия опыта просто не учёл что память в ПЛК не резиновая. Тогда вопрос "что делать" как-то и не возник. Взял исходный алгоритм, описал его с помощью графа переходов (до этого руководствовался только блок-схемами), а потом перенёс полученный граф на ST. Код заметно уменьшился. Много времени это не заняло потому что все нюансы и грабли по алгоритму были уже найдены и устранены на прошлом этапе написания кода.
Может быть и в этом случае просто изменить модель представления алгоритма?
По вопросам работы Форума можно обратиться по этим контактам.
Re: Оптимизация проекта для ControlLogix???
Проект предоставить, увы, не могу. Ввиду конфиденциальности. Скажу лишь, что проект преставляет собой сервер алгоритмов контроля и управления "Единой Системы Управления ВСТО".
Вопрос сам по себе почти отпал, так как почти удалось продавить два контроллера, по одному с резервом, на каждый технологический участок трубы, коих имеем 2 штуки.
Все равно всем спасибо. Идеи записаны.
Вопрос сам по себе почти отпал, так как почти удалось продавить два контроллера, по одному с резервом, на каждый технологический участок трубы, коих имеем 2 штуки.
Все равно всем спасибо. Идеи записаны.
Re: Оптимизация проекта для ControlLogix???
Большая часть будет переписана на SFC, как более подходящий для этой задачи.AlexV писал(а):Мне за 10 лет работы еще не попадались контроллерные навороты в виде мегабайтов именно кода... Так что лучше код в студию, чтобы можно было общаться предметно. Может вам действительно ничего не поможет, кроме переделки всего на LD :D