Показано с 1 по 4 из 4

Тема: ОВЕН ПЛК-100 работа с системным временем. Помогите разобраться!

  1. #1

    По умолчанию ОВЕН ПЛК-100 работа с системным временем. Помогите разобраться!

    Добрый вечер уважаемые форумчане. Помогите советом. Стоит задача организовать ПИД-регулятор системы отопления на базе ПЛК-100 с функцией снижения уставки регулирование в ночное время. Если с ПИД-регулятором мне все понятно, то как организовать функцию снижения температуры в ночное время? Я так понимаю мне нужно использовать библиотеку SYSLIBTIME? Пока ей еще не пользовался. Подскажите советом как справиться с такой задачей?

  2. #2
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    10,583

    По умолчанию

    бибка есть CurTimeEx или как-то так, или ExCurTime

  3. #3

    По умолчанию

    А как ей пользоваться? Ну при помощи массива CurTimeEx я смогу извлечь системное время из ПЛК-100, а как мне при необходимости ввести коррекцию даты и времени? Можете объяснить, а то пока с системным временем не работал....

  4. #4
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,822

    По умолчанию

    Цитата Сообщение от Алексей КИПОВЕЦ Посмотреть сообщение
    А как ей пользоваться? Ну при помощи массива CurTimeEx я смогу извлечь системное время из ПЛК-100, а как мне при необходимости ввести коррекцию даты и времени? Можете объяснить, а то пока с системным временем не работал....
    Был у меня пример https://owen.ru/forum/showthread.php...l=1#post184015 с описанием, но г-н Кислов прибил эту тему вместе с множеством других моих примеров проектов для СП270

    Коротко. Время ПЛК выводится на панель и на панели может редактироваться.

    Код:
    PROGRAM PLC_PRG
    VAR
    	GetTime: CurTimeEx;
    	TimeAndDate: SystemTimeDate;
    	Sys_Time: SysTime64;
    END_VAR
    
    TimeAndDate.Day :=0;
    TimeAndDate.DayOfWeek :=0;
    TimeAndDate.dwHighMsec :=0;
    TimeAndDate.dwLowMSecs :=0;
    TimeAndDate.Milliseconds :=0;
    TimeAndDate.Minute :=0;
    TimeAndDate.Second :=0;
    TimeAndDate.Hour :=0;
    TimeAndDate.Year :=0;
    TimeAndDate.Month :=0;
    Sys_time.ulHigh :=0;
    Sys_time.ulLow :=0;
    GetTime (SystemTime:=Sys_Time , TimeDate:= TimeAndDate);(*Текущее время*)
    (*--------------------------------------------------------------*)
    HMI_Y:=TimeAndDate.Year;
    HMI_M:=TimeAndDate.Month;
    HMI_D:=TimeAndDate.Day;
    HMI_HH:=TimeAndDate.Hour;
    HMI_MM:=TimeAndDate.Minute;
    HMI_SS:=TimeAndDate.Second;
    (*--------------------------------------------------------------*)
    IF set_HH OR set_MM OR set_SS THEN
    	IF set_HH THEN						(*Если set_HH - истина, то менять только часы*)
    		TimeAndDate.Minute:=HMI_MM;	(*Оставляем текущие минуты*)
    		TimeAndDate.Second:=HMI_SS;	(*Оставляем текущие секунды*)
    		TimeAndDate.Hour:=HH;			(*а часы пишем новые*)
    	ELSIF set_MM THEN					(*Если set_MM - истина, то менять только минуты*)
    		TimeAndDate.Minute:=MM;		(*минуты пишем новые*)
    		TimeAndDate.Second:=HMI_SS;	(*Оставляем текущие секунды*)
    		TimeAndDate.Hour:=HMI_HH;	(*Оставляем текущие часы*)
    	ELSIF	set_SS THEN					(*Если set_SS - истина, то менять только секунды*)
    		TimeAndDate.Minute:=HMI_MM;	(*Оставляем текущие минуты*)
    		TimeAndDate.Second:=SS;		(*секунды пишем новые*)
    		TimeAndDate.Hour:=HMI_HH;	(*Оставляем текущие часы*)
    	END_IF
    	GetTime (SystemTime:=Sys_Time , TimeDate:= TimeAndDate);
    	set_HH:=set_MM:=set_SS:=FALSE;
    END_IF
    (*--------------------------------------------------------------*)
    IF set_date THEN	(*Если set_date - истина, то менять дату*)
    	TimeAndDate.Day:=D;
    	TimeAndDate.Month:=M;
    	TimeAndDate.Year:=Y;
    	GetTime (SystemTime:=Sys_Time , TimeDate:= TimeAndDate);
    	set_date:=FALSE;
    END_IF
    Текущее время ПЛК также выводится в визуализации.

    В слейве есть три области для связи с панелью
    Захват-100.png

    Соответственно в панели есть поля ввода
    Захват-102.png

    И при изменении значений на экране панели, устанавливаются биты уведомлений (команды коррекции часов или календаря)
    Захват-103.png

    В проекте панели есть возможность синхронизации времени панели с временем ПЛК,
    Захват-20.png
    но это отдельная тема.
    Вложения Вложения
    Последний раз редактировалось petera; 08.12.2020 в 19:14.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

Похожие темы

  1. ОВЕН КТР-121.01.10 ПОМОГИТЕ РАЗОБРАТЬСЯ!
    от Алексей КИПОВЕЦ в разделе Эксплуатация
    Ответов: 2
    Последнее сообщение: 02.06.2020, 22:57
  2. Ответов: 4
    Последнее сообщение: 01.04.2019, 11:08
  3. Помогите новичку разобраться с настройкой ОВЕН ТРМ 212.
    от Алексей КИПОВЕЦ в разделе Эксплуатация
    Ответов: 3
    Последнее сообщение: 29.03.2017, 17:20
  4. Работа с временем
    от Vitamin в разделе Master SCADA 3
    Ответов: 2
    Последнее сообщение: 02.02.2015, 09:19
  5. Манипулирование системным временем
    от meattt в разделе ПЛК3хх
    Ответов: 2
    Последнее сообщение: 30.11.2012, 08:42

Ваши права

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