Показано с 1 по 10 из 72

Тема: Управление работой вентиляторов

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11
    Пользователь
    Регистрация
    23.01.2008
    Адрес
    Белгородская область, Валуйки
    Сообщений
    274

    По умолчанию

    теперь компилируется теперь нужно только заставить работать как надо
    Код:
    FUNCTION_BLOCK set_cul_march_EL
    VAR_INPUT
    	in: DWORD;
    END_VAR
    
    VAR_OUTPUT
    	Do1, Do2, Do3, Do4, Do5, Do6, Do7, Do8, Do9, Do10, Do11, Do12, Do13, Do14,
           Do15, Do16, Do17, Do18, Do19, Do20, Do21, Do22, Do23, Do24, Do25, Do26,
           Do27, Do28, Do29, Do30, Do31, Do32, Do33, Do34, Do35, Do36, Do37, Do38,
           Do39, Do40, Do41, Do42, Do43, Do44, Do45, Do46, Do47, Do48, Do49, Do50,
           Do51, Do52, Do53, Do54, Do55, Do56, Do57, Do58, Do59, Do60, Do61, Do62,
           Do63, Do64: BOOL;
    END_VAR
    
    VAR
    	Stop1, Start1, Stop2, Start2, Stop3, Start3, Stop4, Start4, Stop5, Start5, Stop6, Start6,
           Stop7, Start7, Stop8, Start8, Stop9, Start9, Stop10, Start10, Stop11, Start11, Stop12,
           Start12, Stop13, Start13, Stop14, Start14, Stop15, Start15, Stop16, Start16, Stop17,
           Start17, Stop18, Start18, Stop19, Start19, Stop20, Start20, Stop21, Start21, Stop22,
           Start22, Stop23, Start23, Stop24, Start24, Stop25, Start25, Stop26, Start26, Stop27,
           Start27, Stop28, Start28, Stop29, Start29, Stop30, Start30, Stop31, Start31, Stop32,
           Start32, Stop33, Start33, Stop34, Start34, Stop35, Start35, Stop36, Start36, Stop37,
           Start37, Stop38, Start38, Stop39, Start39, Stop40, Start40, Stop41, Start41, Stop42,
           Start42, Stop43, Start43, Stop44, Start44, Stop45, Start45, Stop46, Start46, Stop47,
           Start47, Stop48, Start48, Stop49, Start49, Stop50, Start50:TP:= ( PT := T#5s);
           Stop51, Start51, Stop52, Start52, Stop53, Start53, Stop54, Start54, Stop55, Start55,
           Stop56, Start56, Stop57, Start57, Stop58, Start58, Stop59, Start59, Stop60, Start60,
           Stop61, Start61, Stop62, Start62, Stop63, Start63, Stop64, Start64, Stop65, Start65,
           Stop66, Start66, Stop67, Start67, Stop68, Start68, Stop69, Start69, Stop70, Start70,
           Stop71, Start71, Stop72, Start72, Stop73, Start73, Stop74, Start74, Stop75, Start75,
           Stop76, Start76, Stop77, Start77, Stop78, Start78, Stop79, Start79, Stop80, Start80,
           Stop81, Start81, Stop82, Start82, Stop83, Start83, Stop84, Start84, Stop85, Start85,
           Stop86, Start86, Stop87, Start87, Stop88, Start88, Stop89, Start89, Stop90, Start90,
           Stop91, Start91, Stop92, Start92, Stop93, Start93, Stop94, Start94, Stop95, Start95,
           Stop96, Start96, Stop97:TP:= ( PT := T#5s);
           Start97, Stop98, Start98, Stop99, Start99, Stop100, Start100, Stop101, Start101,
           Stop102, Start102, Stop103, Start103, Stop104, Start104, Stop105, Start105, Stop106,
           Start106, Stop107, Start107, Stop108, Start108, Stop109, Start109, Stop110, Start110,
           Stop111, Start111, Stop112, Start112, Stop113, Start113, Stop114, Start114, Stop115,
           Start115, Stop116, Start116, Stop117, Start117, Stop118, Start118, Stop119, Start119,
           Stop120, Start120, Stop121, Start121, Stop122, Start122, Stop123, Start123, Stop124,
           Start124, Stop125, Start125, Stop126, Start126, Stop127, Start127, Stop128, Start128
           :TP:= ( PT := T#5s);
           Stop129, Start129, Stop130, Start130, Stop131, Start131, Stop132, Start132, Stop133,
           Start133, Stop134, Start134, Stop135, Start135, Stop136, Start136, Stop137, Start137,
           Stop138, Start138, Stop139, Start139, Stop140, Start140, Stop141, Start141, Stop142,
           Start142, Stop143, Start143, Stop144, Start144, Stop145, Start145, Stop146, Start146,
           Stop147, Start147, Stop148, Start148, Stop149, Start149, Stop150, Start150, Stop151,
           Start151, Stop152, Start152, Stop153, Start153, Stop154, Start154, Stop155, Start155,
           Stop156, Start156, Stop157, Start157, Stop158, Start158, Stop159, Start159, Stop160,
           Start160:TP:= ( PT := T#5s);
    
    	fan: DWORD;(*32 bita*)
    	i: DWORD;(*32 bita*)
    
    	mech : ARRAY[1..160] OF BOOL;
    	setmech : ARRAY[1..160] OF BYTE :=
           (*В этом массиве хранитса состояние вентиляторов
           для каждого из 160 маршрутов норий №1-4*)
    (*16*)
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
               остальные одинаковы непоказаны
    (*160*)
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000,
           2#00000000000000000000000000000000;
    END_VAR
    (****************************************************)
    	fan:=0;
    FOR i :=1 TO 160 DO
    	fan:=SEL( mech[i], fan, fan OR setmech[i] );
    END_FOR
    
    mech[1]:=in.0;
    mech[2]:=in.1;
    mech[3]:=in.2;
    mech[4]:=in.3;
    
    	Start1(IN :=  fan.0 OR fan.2, Q =>Do1);
    	Stop1(IN :=  NOT fan.0 OR fan.2, Q => Do2);
    	Start2(IN :=  fan.1 OR fan.3, Q => Do3);
    	Stop2(IN :=  NOT fan.1 OR fan.3, Q => Do4);
    Вложения Вложения

Ваши права

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