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

Тема: Панели оператора СП3xx. Вопросы и ответы

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #10
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    4,108

    По умолчанию

    Цитата Сообщение от paul-th Посмотреть сообщение
    petera Спасибо ещё раз, связь наладилась, процесс пошел. То что касается температуры и ТРМа всё хорошо работает, логика цикла выполняется правильно.
    Но есть но.
    В выдержками времени, по задержке и работа в цикле происходит не понятно что.
    Задал увеличение уставки на 10 единиц, Мах Темп 40 гр. время выдержки 10 мин. внутри цикла 5 мин., первое изменение произошло не через 5 минут, а через 2 минуты и сразу на 20 градусов, текущая была 22 гр. и цикл встал на ожидание выдержки, она закончилась через 3 мин. вместо 10.
    Сделал увеличение 2 единицы и время выдержки 5 мин. Увеличение температуры произошло так же через две минуты, но уже на 6 градусов и следующее увеличение произошло буквально через 20 сек. на 12 градусов, уставка достигла 40 гр. цикл встал на выдержку.
    Что то со временем не так и с суммированием, что сделать чтобы было нормально?
    Покажите проект с последними изменениями

    ЗЫ.
    Задал увеличение уставки на 10 единиц, Мах Темп 40 гр. время выдержки 10 мин. внутри цикла 5 мин., первое изменение произошло не через 5 минут, а через 2 минуты и сразу на 20 градусов, текущая была 22 гр. и цикл встал на ожидание выдержки,
    Так и должно работать :
    Код:
    .............................................
    do {
        CurMinute = (PSW[34] / 16) * 10 + PSW[34] % 16; 
        
        if (CurMinute % 5 == 0)
        { CurTemp = CurTemp + 10; 
    	  Write(PLC, 16, MODBUS_RTU_REG_4X, 0X11, 0, TYPE_WORD, CurTemp);
          }
          
    Delay(10);
    
    } while ( CurTemp < MaxTemp );
    ..................................................
    Пятиминутное изменение уставки привязано к часам панели и происходит каждые 0, 5, 10, 15 ... 55 мин. По этому если запустили макрос в 14:53 или 17:13, то первое изменение и произойдет через 2 минуты - в 14:55 или 17:15
    И так как условие if (CurMinute % 5 == 0) будет истинно в течение последующих 60 секунд, то и тело if
    { CurTemp = CurTemp + 10;
    Write(PLC, 16, MODBUS_RTU_REG_4X, 0X11, 0, TYPE_WORD, CurTemp);
    }
    будет выполнятся непрерывно, и будет казаться, что "сразу на 20 градусов"

    Тут надо использовать другой источник времени - регистр PSW38. Формат у него DWord.
    В PSW38 находится время работы панели от момента включения. Дискретность 0,1 сек.
    Последний раз редактировалось petera; 22.09.2017 в 17:43.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Похожие темы

  1. Экспорт CSV в панели СП3xx и порядок квитирования событий
    от theoretician в разделе Панели оператора (HMI)
    Ответов: 30
    Последнее сообщение: 24.08.2021, 16:17
  2. Индикатор ИП120 , вопросы- ответы
    от rovki в разделе Программируемые реле
    Ответов: 56
    Последнее сообщение: 03.11.2017, 15:58
  3. Сенсорные панели оператора ОВЕН СП3ХХ
    от Боднар Олег Миколайович в разделе Подбор Оборудования
    Ответов: 7
    Последнее сообщение: 17.12.2015, 09:09
  4. СПК 107 в качестве панели оператора
    от Леонид в разделе СПК1xx (архив)
    Ответов: 15
    Последнее сообщение: 20.11.2015, 08:17

Ваши права

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