Страница 1 из 8 123 ... ПоследняяПоследняя
Показано с 1 по 10 из 72

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

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

    По умолчанию Управление работой вентиляторов

    Посоветуйте как реализовать на ST управление вентиляторами есть 4 механизма Механизм №1, Механизм №2, Механизм №3 и Механизм №4 и несколько вентиляторов Вентилятор №1, Вентилятор №2, Вентилятор №3. Если включён Механизм №1 должен включится Вентилятор №1 и Вентилятор №2. Если включён Механизм №2 должен включится Вентилятор №1 и Вентилятор №3 и т.п. Если включается Механизм №1 а Вентилятор №1 или Вентилятор №2 используются другим механизмом и уже включены то не трогаем их. Если выключается Механизм №1 а Вентилятор №1 или Вентилятор №2 используются ещё и другим механизмом то не трогаем их пусть работают они выключатся когда последний механизм будет выключатся. Ну вот такая хитрая логика как включить я представляю простое условие а вот как контролировать выключение чтобы не выключить вентилятор использующийся параллельно и другим механизмом.

  2. #2

    По умолчанию

    Код:
    vent1 := false;
    vent2 := false;
    vent3 := false;
    if mech1 then
    vent1 := true;
    vent2 := true;
    end_if;
    if mech2 then
    vent1 := true;
    vent3 := true;
    end_if;
    ...

  3. #3

    По умолчанию

    #2
    vent1 := mech1 or mech2;
    vent2 := mech1 or ...
    vent3 := mech1 or ...

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

    По умолчанию

    да еще хочу сказать что каждый механизм имеет входы пуск и стоп так что тут немного сложнее

  5. #5

    По умолчанию

    отнюдь, воспользуйтесь переключающим реле

  6. #6

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Var
    Mech1 :byte:= 2#0011;
    Mech2 :byte:= 2#0101;
    ..


    Fan:= Mech1 or Mech2 or Mech3 or Mech4;
    Do1 := Fan.0;
    Do2 := Fan.1;
    Do3 := Fan.2;
    Do4 := Fan.3;
    т.к. в разделе объявлений уже заданы "параметры" по F5 первые 3 фана сразу вкл. не вкурил пока идею...

  7. #7

    По умолчанию

    НЕ совсем может ответ - но Ваш выбор совсем другой язык.
    На LD - это всего несколько строк.

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

    По умолчанию

    благадарю вас товарищи за свежие идеи и помощ буду пробовать

  9. #9

    По умолчанию

    кстати очень интересный финт "byte or byte" - изучается еще на первых уроках логики/программирования, а вспомнился только сейчас

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

    По умолчанию

    А можно немного пояснений по коду что то я не в курю что делает таймер Stop4 : TP := ( PT := T#..); какое время выставлять и зачем далее

    Start1,
    Stop1,
    в объявлениях как понять или подразумеваете объявить их BOOL
    да и в обще общая логика

    ну вот что получилось

    PROGRAM PRG_3
    VAR
    Mech1 :BYTE:= 2#0001;
    Mech2 :BYTE:= 2#0011;
    Mech3 :BYTE:= 2#0111;
    Mech4 :BYTE:= 2#1111;
    Stop1 : TP:= ( PT := T#1s);
    Start1 : TP:= ( PT := T#1s);
    Stop2 : TP:= ( PT := T#1s);
    Start2 : TP:= ( PT := T#1s);
    Stop3 : TP:= ( PT := T#1s);
    Start3 : TP:= ( PT := T#1s);
    Stop4 : TP:= ( PT := T#1s);
    Start4 : TP:= ( PT := T#1s);
    Fan: WORD;
    Do1: BOOL;
    Do2: BOOL;
    Do3: BOOL;
    Do4: BOOL;
    END_VAR
    (************************************************* **********)
    Fan:= Mech1 OR Mech2 OR Mech3 OR Mech4;
    Start1(IN:=Fan.0,Q=>Do1 );
    Stop1(IN:=NOT Fan.0,Q=>Do1 );
    работает как то не так точнее хз как
    Последний раз редактировалось alexval2006; 08.09.2011 в 15:16.

Страница 1 из 8 123 ... ПоследняяПоследняя

Ваши права

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