AdditionSummand (Extensible)SumGreater than or equal toInput 1..32OutputAdditionSummand (Extensible)SumRising Edge of an operandBOOL valueRising Edge of INініціалізаціякоманда відкривати/більшекоманда закривати/меншезадане значення позиціонеру 0-10000клапан відкритийклапан закритийположення штока/заслінки 0-10000коефіцієнт витрати від 0 до 1періодичність викликучас повного відкриття клапану/заслінки (с)TRUE - клапан з позиціонером, управління аналоговехар-ка, 0- лінійна, 1-швидкого відкриття, 2-рівнопроцентнаположення штока/заслінки 0-100%закритивідкритиExponentiation of a real by a numericalReal input valueNumerical exponent valueIN1 to the power of IN2Greater thanInput 1..32Outputтеплообмінниккоманда ініціалізації (задання початкових умов)вхідна витрата рідини, м3/свитрата теплоагента, м3/свхідна температура, град Cтемпература теплоагента, м3/стемпература рідини в теплообміннику, град Стемпература теплоагента в теплообміннику, град Сперіодичність виклику, спочатк. темпеаратура рідини в теплообміннику, м3початк. температура теплоносія в теплообміннику, град Споверхня теплообміну, м2теплоємність рідини, кДж/(кг*К)теплоємність теплоносія, кДж/(кг*К)коефіцієнт теплопередачі, кВт/(м2*градС)густина рідини, кг*м3густина теплоносія, кг*м3об'єм рідини в теплообміннику, м3об'єм теплоносія в теплообміннику, м3if init then
T:=T0; Ta:=Ta0;
end_if;
T:=T+(d_t/V)*(F*(Tin-T)+k*S*(Ta-T)/(ro*C));
Ta:=Ta+(d_t/Va)*(Fa*(Tain-Ta)-k*S*(Ta-T)/(roa*Ca));
Assignment of a real value table with a realValue to be movedReal out tablesSubtractionMinuendSubtrahendDifferenceSquare rootReal input valueSquare root of INSET TO 1Operand to be settedThis EF is used to simulate (write) a INT value at a %IW inputValue to be assigned to a %IW input%IW input to be modifiedSET TO ZEROOperand to be resetedExponentiation of a real by a numericalReal input valueNumerical exponent valueIN1 to the power of IN2This EF is used to simulate (write) a value at a %I inputValue to be assigned to a %I input%I input to be modifiedLess thanInput 1..32Outputініціалізаціякоманда відкривати/більшекоманда закривати/меншезадане значення позиціонеру 0-10000клапан відкритийклапан закритийположення штока/заслінки 0-10000коефіцієнт витрати від 0 до 1періодичність викликучас повного відкриття клапану/заслінкиTRUE - клапан з позиціонером, управління аналоговехар-ка, 0- лінійна, 1-швидкого відкриття, 2-рівнопроцентнаположення штока/заслінки 0-100%відкритизакритиLimitLower limitInputUpper limitOutputSubtractionMinuendSubtrahendDifferenceтанк з теплообмінним кожухомкоманда ініціалізації (задання початкових умов)вхідна витрата рідини, м3/свихідна витрата рідини, м3/свитрата теплоагента, м3/свхідна температура, град Cтемпература теплоагента, м3/срівень рідини в ємності, моб'єм рідини в ємності, м3температура рідини в ємності, град Стемпература теплоагента в кожусі, град Сперіодичність виклику, соб'єм ємності, м3поперечний переріз ємності, м2 початк. обєм рідини в ємності, м3початк. темпеаратура рідини в ємності, м3початк. температура теплоносія в кожусі, град Сповна поверхня теплообміну кожуха, м2теплоємність рідини, кДж/(кг*К)теплоємність теплоносія, кДж/(кг*К)коефіцієнт теплопередачі, кВт/(м2*градС)густина рідини, кг*м3густина теплоносія, кг*м3об'єм кожуха, м3висота кожуха, мкоефіцієнт коефіцієнтоб'єм на попередньому кроці, м3ефективна поверхня теплообміну кожуха з ємністю, м2/сif init then
V:=V0; T:=T0; Ta:=Ta0;
end_if;
(*-------розрахунок обєму*)
Vold:=V;
V:=V+d_t*(Fin-Fout);
if V<0.0 then V:=0.0; end_if;
if V>Vmax then V:=Vmax;end_if;
L:=V/Sv;
(*--------розрахунок температур*)
if L>La then S:=(L/La)*Sa; else S:=Sa; end_if;
K1:=k*S/(ro*C);
K2:=k*S/(roa*Ca);
if V>Vmax/1000.0 then (*обєм відмінний від нуля*)
if V<Vmax then (*ємність не повна*)
T:=T*(Vold/V)+(d_t/V)*(Fin*Tin+K1*(Ta-T)-Fout*T);
else (*ємність повна*)
T:=T+(d_t/Vmax)*K1*(Ta-T);
end_if;
Ta:=Ta+(d_t/Va)*(Fa*(Tain-Ta)-K2*(Ta-T));
else (*порожня ємінсть*)
T:=Tin; Ta:=Ta+(d_t/Va)*(Fa*(Tain-Ta));
end_if;
AND functionInput bit sequence (Extensible)Output bit sequenceLess than or equal toInput 1..32OutputSquare rootReal input valueSquare root of INLess thanInput 1..32OutputMultiplexerSelection inputInput (IN0..IN30)Selected outputFalling Edge of an operandEBOOL valueFalling Edge of INGreater than or equal toInput 1..32OutputLimitLower limitInputUpper limitOutputMultiplicationFactor (Extensible)ProductDivisionDividendDivisorQuotientType conversionInput valueOutput valueGreater thanInput 1..32OutputMultiplexerSelection inputInput (IN0..IN30)Selected outputType conversionInput valueOutput valueMultiplicationFactor (Extensible)Productініціалізаціявхідвихід з транспортним запізненнямперіодичність виклику в секундахчас запізнення в секундахбуфер-масив значень вихідний елемент масивуif init then
MOVE_REAL_ARREAL(IN :=IN, OUT =>BUF);
end_if;
last:=real_to_int(DELAY/d_t);
ROL_ARREAL (N := 1,INOUT:=BUF);
BUF[0]:=IN;
if last<100 then OUT:=BUF[last];end_if;
обєктініціалізаціякоманда відкрити кл набору Т1команда відкрити кл зливу Т1команда відкрити кл набору Т2команда відкрити кл зливу Т2команда відкрити кл набору дозатору D1команда відкрити кл набору дозатору D2команда відкрити кл зливу дозатору D1команда відкрити кл зливу дозатору D2команда ступінь відкриття РО подачі теплоагента в Т1 команда ступінь відкриття РО подачі теплоагента в Т2TRUE команда перемкнути РО подачі дози на Т2, FALSE на T1ВКЛ мішалкуВКЛ мішалкуклапан набору Т1 відкритий клапан набору Т2 відкритийклапан зливу Т1 відкритийклапан зливу Т2 відкритийклапан набору Т1 закритийклапан набору Т2 закритийклапан зливу Т1 закритийклапан зливу Т2 закритийклапан набору дозатору D1 закритийклапан набору дозатору D2 закритийклапан зливу дозатору D1 закритийклапан зливу дозатору D2 закритийсигналізатор верхнього рівня дозатору D1сигналізатор нижнього рівня дозатору D1сигналізатор верхнього рівня дозатору D2сигналізатор нижнього рівня дозатору D2датчик рівня танка Т1датчик рівня Т2датчик температури Т1датчик температури Т2клапан дозування переключений на Т1клапан дозування переключений на Т2мішалка включенамішалка відключенаперіодичність виклику, с10,0503441110.05345truetrue2115smTank1.d_t:=d_t;
smVNaborT1.d_t:=d_t;
smVSlivT1.d_t:=d_t;
smVnagrevT1.d_t:=d_t;
smTank2.d_t:=d_t;
smVNaborT2.d_t:=d_t;
smVSlivT2.d_t:=d_t;
smVnagrevT2.d_t:=d_t;
smD1.d_t:=d_t;
smVnaborD1.d_t:=d_t;
smVslivD1.d_t:=d_t;
smD2.d_t:=d_t;
smVnaborD2.d_t:=d_t;
smVslivD2.d_t:=d_t;
smVdoz_T1_T2.d_t:=d_t;
AND functionInput bit sequence (Extensible)Output bit sequenceBinary selectionSelection inputInput 0 (false)Input 1 (true)Selected outputCircular shift left in a real value tableNumber of shiftsTable of reals to which rotation is appliedдозаторкоманда ініціалізації (задання початкових умов)вхідна витрата задається в м3/с або в л/свихідна витрата задається в м3/с або в л/срівень в метрах або в сантиметрахсигналізатор верхнього рівнясигналізатор нижнього рівняперіодичність виклику в секзначення обєму при ініціалізації моделіоб'єм рідини в ємностіоб'єм ємності задається в м2 при витратах м3/с або см2 при витратах л/сif init then V:=V0;
else
V:=V+d_t*(Fin-Fout);
if V<0.0 then V:=0.0; end_if;
if V>Vmax then V:=Vmax; end_if;
L:=V/S;
LSH:=(V/Vmax)>0.999;
LSL:=(V/Vmax)>0.001;
end_if;
AssignmentInput valueOutput valueLess than or equal toInput 1..32OutputDivisionDividendDivisorQuotient???????? ??'????3-ходовий клапан (0 - на T1, 1 - на T2)3-ходовий клапан в позиції T13-ходовий клапан в позиції T2 клапан зливу D1клапан зливу D1 закритийклапан зливу D2клапан зливу D2 закритийклапан зливу T2клапан зливу T2 закритийклапан зливу Т1клапан зливу Т1 закритийклапан набору D1клапан набору D1 закритийклапан набору D2клапан набору D2 закритийклапан набору Т1клапан набору Т1 закритийклапан набору Т2клапан набору Т2 відкритийклапан набору Т2 закритийклапан нагрівання T1 (0-10000)клапан нагрівання T2 (0-10000)рівень T1 (0-10000)рівень T2 (0-10000)сигналізатор верхнього рівня D1сигналізатор верхнього рівня D2сигналізатор нижнього рівня D1сигналізатор нижнього рівня D2тмпература в T1 (0-10000)тмпература в T2 (0-10000)Пускач двигуна мішалки Т1Пускач двигуна мішалки Т2Контакт пускача двигуна мішалки Т1Контакт пускача двигуна мішалки Т2задана швидкість перемішування Т1 (0-10000)задана швидкість перемішування Т2 (0-10000)клапан набору Т1 відкритийІмітаційна модель блоку запізнювання50.1Імітаційна модель клапану1Ініціалізація імітаційної моделіІмітаційна модель підігрівника0.10.5570імітація збурення