-----
18.11.2017 форум перенесён на другой хостинг. О замеченых глюках просьба сообщать администраторам.
-----
На форуме обязательно:
  1. Заполнить свой профиль на Русском языке. См. Правила, п.2.d.
  2. Не писать свой вопрос в первую попавшуюся тему, а вместо этого создать свою. См. Правила, п.3.a.
Рекламу на своём форуме мы не размещаем ни на каких условиях.

Оптимизация проекта для ControlLogix???

PLC, прочие контроллеры, промышленные компьютеры, операторские панели

Автор темы
gvtret

Оптимизация проекта для ControlLogix???

Сообщение gvtret » 01 дек 2009, 12:01

Доброго времени суток!
Проблема в следующем:
Есть проект. Нехилый такой проект. Так вот, может кто подскажет, как еще можно оптимизировать его (удаление неспользуемых тегов и комментариев не предлагать - уже сделано). У головы 1756-L63 не хватает памяти?
Помогите советом!!!

Память: 8,388,608 байт
Проект (где-то 2/3 от всего):6,426,128 байт


alc15
новенький
новенький
Сообщения: 1
Зарегистрирован: 20 мар 2009, 07:51
Имя: Чернов Алексей Евгеньевич

Re: Оптимизация проекта для ControlLogix???

Сообщение alc15 » 01 дек 2009, 13:27

По возможности, замените FBD на Ladder. Ну и используйте подпрограммы, циклы и т.д. для уменьшения повторяющихся кусков кода.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2428
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 58 раз
Контактная информация:

Re: Оптимизация проекта для ControlLogix???

Сообщение Михайло » 01 дек 2009, 16:08

Какой язык программирования?


AlexV
здесь недавно
здесь недавно
Сообщения: 7
Зарегистрирован: 24 июл 2008, 09:49
Имя: Вишневский Алексей Анатольевич
Контактная информация:

Re: Оптимизация проекта для ControlLogix???

Сообщение AlexV » 02 дек 2009, 02:33

gvtret писал(а): как еще можно оптимизировать его (удаление неспользуемых тегов и комментариев не предлагать - уже сделано). У головы 1756-L63 не хватает памяти?

Так, давайте отделим мух от котлет... комментарии в принципе память занимать не могут, поэтому можете смело вернуть все комментарии на место, они сохраняются исключительно в исходном файле и в процессор не грузятся.
Если бы не было упоминания про комментарии, я бы не заподозрил неладное :)

gvtret писал(а):
Память: 8,388,608 байт
Проект (где-то 2/3 от всего):6,426,128 байт

Как вы измеряли эти 2/3?
По размеру файла исходника? (если так - то это абсолютно никак не связано с памятью процессора!!!)
или по занятой памяти в процессе работы процессора? - тогда совершенно не понятно к чему этот вопрос, 2/3 от максимума нормальный объем ;)


Автор темы
gvtret

Re: Оптимизация проекта для ControlLogix???

Сообщение gvtret » 04 дек 2009, 10:56

Так. Проект полностью написан на ST. Насколько я знаю ST не компилируется, а обрабатывается "as is". Отсюда и про комментарии вопрос.

Смотрелось состояние памяти контроллера. 2/3 занимает отнюдь не весь проект, а чуть больше половины.


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2428
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 58 раз
Контактная информация:

Re: Оптимизация проекта для ControlLogix???

Сообщение Михайло » 04 дек 2009, 20:51

А Вы попробуйте Upload с ПЛК в компьютер. Будут ли у Вас комментарии в аплоаде?

Начинаю изучать ST, чтобы знать его недостатки, которые в общем-то явны.


AlexV
здесь недавно
здесь недавно
Сообщения: 7
Зарегистрирован: 24 июл 2008, 09:49
Имя: Вишневский Алексей Анатольевич
Контактная информация:

Re: Оптимизация проекта для ControlLogix???

Сообщение AlexV » 05 дек 2009, 06:19

А Вы попробуйте Upload с ПЛК в компьютер. Будут ли у Вас комментарии в аплоаде?

Комментарии там будут!
Но ST все-таки НЕ обрабатывается как есть, он может и хранится в контроллере как есть, но в упакованном виде. Проверяется это очень легко, подпрограмма с комментариями на мегабайт в чистом виде занимает в контроллере около 6 килобайт :D

gvtret писал(а):Так. Проект полностью написан на ST. Насколько я знаю ST не компилируется, а обрабатывается "as is". Отсюда и про комментарии вопрос.


А почему вы это сразу не указали? Тут телепатов нет :evil:
Все дальнейшие разговоры будут ни о чём, пока не выложите сам проект (чтоб что-то посоветовать по оптимизации - надо видеть саму программу)...
Может у вас на ST для проверки булевых условий используются DINT переменные, что приводит к увеличению объема в 32:!: раза???

Мне за 10 лет работы еще не попадались контроллерные навороты в виде мегабайтов именно кода... Так что лучше код в студию, чтобы можно было общаться предметно. Может вам действительно ничего не поможет, кроме переделки всего на LD :D


Михайло
почётный участник форума
почётный участник форума
Сообщения: 2428
Зарегистрирован: 10 ноя 2009, 04:58
Имя: Толмачев Михаил Алексеевич
Благодарил (а): 1 раз
Поблагодарили: 58 раз
Контактная информация:

Re: Оптимизация проекта для ControlLogix???

Сообщение Михайло » 05 дек 2009, 07:59

Про язык ST:
http://ru.wikipedia.org/wiki/Structured_Text писал(а):Удобен для написания больших программ и работы с аналоговыми сигналами и числами с плавающей точкой.


Вы случайно не работаете по большей части с двоичными сигналами?

Аватара пользователя

TEB
администратор
администратор
Сообщения: 8957
Зарегистрирован: 17 июн 2008, 15:01
Имя: Евгений свет Брониславович
Благодарил (а): 85 раз
Поблагодарили: 117 раз
Контактная информация:

Re: Оптимизация проекта для ControlLogix???

Сообщение TEB » 05 дек 2009, 11:17

Читаю я вот читаю....
Когда-то в молодости столкнулся с такой же проблемой - из-за отсутствия опыта просто не учёл что память в ПЛК не резиновая. Тогда вопрос "что делать" как-то и не возник. Взял исходный алгоритм, описал его с помощью графа переходов (до этого руководствовался только блок-схемами), а потом перенёс полученный граф на ST. Код заметно уменьшился. Много времени это не заняло потому что все нюансы и грабли по алгоритму были уже найдены и устранены на прошлом этапе написания кода.
Может быть и в этом случае просто изменить модель представления алгоритма?
По вопросам работы Форума можно обратиться ко мне, или по этим контактам.


Автор темы
gvtret

Re: Оптимизация проекта для ControlLogix???

Сообщение gvtret » 07 дек 2009, 10:08

Проект предоставить, увы, не могу. Ввиду конфиденциальности. Скажу лишь, что проект преставляет собой сервер алгоритмов контроля и управления "Единой Системы Управления ВСТО".
Вопрос сам по себе почти отпал, так как почти удалось продавить два контроллера, по одному с резервом, на каждый технологический участок трубы, коих имеем 2 штуки.

Все равно всем спасибо. Идеи записаны.


Автор темы
gvtret

Re: Оптимизация проекта для ControlLogix???

Сообщение gvtret » 07 дек 2009, 10:34

AlexV писал(а):
Мне за 10 лет работы еще не попадались контроллерные навороты в виде мегабайтов именно кода... Так что лучше код в студию, чтобы можно было общаться предметно. Может вам действительно ничего не поможет, кроме переделки всего на LD :D


Большая часть будет переписана на SFC, как более подходящий для этой задачи.