Снова о размере программ
Николай; 25.2.03

Имеется FB, в качестве параметра передается переменная пользовательского типа UDT.

Почему одна команда сброса бита на STL занимает 48 байт ? Другие команды работы с полями UDT занимают примерно столько же.
FB почти ничего не делает, а ее размер составил более 12 000 байт.
Как можно более разумно (в плане уменьшения размера кода) организовать
работу FB с DB пользовательского типа ?
С Уважением, Николай.
Re: Снова о размере программ
Виктор; 26.2.03

Не знаю уменьшит ли это размер программы, но можно попробовать вызывать косвенно

блок FB с DB.
Re: Снова о размере программ
иван жуков; 3.3.03

Надо уходить от операций косвенного вызова. Можете посмотреть в качестве примера, как сделан стандартный пид-регулятор. Только для этого надо снять с него защиту - где-то здесь на форуме упоминалось, как это сделать.ю


Re: Снова о размере программ
Чистяков Дмитрий ОАО СеверСталь; 3.3.03

Так, а может быть просто, стоит использовать этот стандартный пид-регулятор. ;-)

Re: Снова о размере программ
Baby; 5.3.03

Привет, Николай !!!!!

Если это не является секретом, несколько вопросов.....

1. Какую программу Вы пишите (регулятор или ......)....?
2. Какое закладывается время цикла....?
3. Какие оконечные приборы (клапаны, датчики обратной связи и т.д.)....???


Пока......
Re: Снова о размере программ
Николай; 21.3.03

Проблема решена.


Нужно использовать стандартную связку FB - instance DB.
Размер кода снижается в разы.Кроме того часть кода (самый затратный по памяти)переписал на STL.
Насчет использования стандартных блоков Siemens. Для примера, голый драйвер обработки АЦП занимает около
6 кБ, самописный блок с фильтрацией, различными шкалами, проверками на достоверность, алармами,квитированием и т.п. занимает 2 Кб.

Спасибо всем участникам темы.