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

Тема: В ПК210 не пойму почему не сохраняются значения переменных описанных VAR_GLOBAL RETAI

  1. #1

    По умолчанию В ПК210 не пойму почему не сохраняются значения переменных описанных VAR_GLOBAL RETAI

    Может кто подскажет, почему после выключения эл. питания ПЛК ПК210 не сохраняются значения переменных описанных в VAR_GLOBAL RETAIN ?

    VAR_GLOBAL CONSTANT
    MAX_DINT : DINT := 2147483647;
    END_VAR;
    //================================== Описание Глобальных СОХРАНЯЕМЫХ ПЕРЕМЕННЫХ ================================================
    VAR_GLOBAL RETAIN

    K1_moto_H : UINT; // моточасы K1
    K2_moto_H : UINT; // моточасы K2
    K2_1_moto_H : UINT; //546 // моточасы K2.1
    K2_2_moto_H : UINT; //547 // моточасы K2.2
    K3_1_moto_H : UINT; //548 // моточасы K3.1
    K3_2_moto_H : UINT; //549 // моточасы K3.2
    K6_1_moto_H : UINT; //550 // моточасы K6.1
    K6_2_moto_H : UINT; //551 // моточасы K6.2

    K1_Cnt : UINT; // Кол-во включений K1
    K2_Cnt : UINT; // Кол-во включений K2

    END_VAR;

    //=================================== Описание Глобальных ПЕРЕМЕННЫХ ================================================== =======
    VAR_GLOBAL
    /

    PRU200_wDI :WORD; //Регистр DI - читаемый из ПРУ200
    PRU200_wDO :WORD; //Регистр DO - отсылаемый в ПРУ200

    // Описание глобальных Пользовательских переменных
    FirstScan : BOOL := TRUE; // флаг старта программы и записи первоначальных уставок

    P : UINT; // Счетчик повторных включений

    //-------------сервисные переменные
    CODESYS_DU : BOOL := FALSE;// =1 - Управление из мнемосхемы CODESYS !!! = 0 - управление из HMI Modbus RTU Master
    ON_Btn : BOOL;// нажата кнопка HMI
    //-------для работы с Датой и временем ПЛК ----------------------------------
    PLC_Year : UINT; // Год
    PLC_Month : UINT; // Месяц (1,..,12)
    PLC_Day : UINT; // День месяца(1...31)
    PLC_Hour : UINT;// Часы (0...23)
    PLC_Minute : UINT;// Минуты (0...59)
    PLC_Second : UINT;// Секунды (0...59)
    PLC_Ms : UINT;// Не поддерживается
    PLC_DayOfWeek : UINT; // День недели (1=Воскрес, ...7=Суббота)
    PLC_Yday : UINT;// День года (1...365) 1= 1Января, ...364/365 = 31 Декабря)

    //DayOfWeek : ARRAY[0..6] OF STRING := ['S','M',''D','t','tr', 'f','Su'];

    stRtc: TRG_RTC; // Время в ОВЕН ПЛК210
    //------------------------------------------------------------------------------
    HH : UINT; // ЧЧ в ПЛК
    MM : UINT; // минуты в ПЛК

    //------------------------------------------------------------------------------
    //Диагностика ПЛК
    PLC210_xPowerInput1 : BOOL; //ПЛК: Наличие питания по входу 1
    PLC210_xPowerInput2 : BOOL; //ПЛК: Наличие питания по входу 2
    PLC210_xServiceButton : BOOL; //ПЛК: TRUE - кнопка нажата, FALSE - кнопка отжата
    PLC210_rCpuTemp : REAL; //ПЛК: Температура CPU

    MV210_101_Err : BOOL; //Признак ошибки опроса модуля MD210-101 (8AI)

    //-----------------------------------------------
    MB_Server : OCL.MB_TcpSlave; // ФБ для реализиации Modbus Slave
    MB_Data :udtHMI_a; // MB - буфер данных Modbus Slave

    UST_Grafik_T :ARRAY[0..12] OF REAL := [-40.0,-37.0,-35.0,-30.0,-25.0,-20.0,-15.0,-10.0, -5.0,0.0, 5.0, 8.0, 10.0]; // исп-ся для определения ЗДН по уличной Т

    END_VAR;

  2. #2
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,064

    По умолчанию

    Добрый день.
    Выложите ваш проект (в CODESYS: Файл - Архив проекта - Сохранить/отправить архив, выложить на файлообменник и прикрепить сюда ссылку) и подробно опишите, как воспроизвести проблему.

  3. #3

    По умолчанию

    Входе экспериментов в эмуляторе с холодным сбросом выяснилось, что переменные(в моем случае это AnPar) пользовательского типа не сохраняют свои значения.
    VAR_GLOBAL RETAIN
    holdingRegisters : ARRAY[0..Global.numHoldingRegisters-1] OF CmpModbusKAPP82.ModbusHoldingRegister;
    AnPar : TAnPar; //Символьная структура аналоговых параметров
    AAAAAA : UINT;

    Если же переменнаяAAAAAA ) объявлена стандартного типа, то она сохраняет свое значение.

  4. #4

    По умолчанию

    TYPE TAnPar :
    STRUCT
    // ----ИК
    L : REAL; //Уровень в колодце, м
    AI_2 : REAL; //Т в павильоне, С, -50...+50
    AI_3 : REAL; //Резерв
    AI_4 : REAL; //Резерв
    AI_5 : REAL; //Резерв
    AI_6 : REAL; //Резерв
    AI_7 : REAL; //Резерв
    AI_8 : REAL; //Резерв
    // ----AO параметры
    AO1 : REAL; //Уровень в колодце, м
    AO2 : REAL; //Уровень в колодце, м

  5. #5

    По умолчанию

    Это особенность Codesys ? Подскажите ?

  6. #6

  7. #7

    По умолчанию

    Вопрос такой : Почему в эмуляторе в онлайн введя значение в переменную ААААА и сделав Сброс холодный, значение переменной становится = 0 ?
    Вложения Вложения

  8. #8
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,064

    По умолчанию

    Цитата Сообщение от Luer Посмотреть сообщение
    Вопрос такой : Почему в эмуляторе в онлайн введя значение в переменную ААААА и сделав Сброс холодный, значение переменной становится = 0 ?
    Потому что так работает команда Сброс холодный:
    https://help.codesys.com/webapp/_cds...rsion=3.5.17.0

    Retain variables are initialized, and the previous values are lost.

    У меня с вашим проектом при выполнении команды Сброс холодный и переменная AnPar, и переменная AAAAAA инициализируются нулями - так что я никаких проблем не вижу.

  9. #9

    По умолчанию

    При сбросе эл.питания ПК210 , выполняется тоже холодный рестарт ?

    Если так, то как сохранять значения переменных, после сброса эл. питания ?

  10. #10
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,064

    По умолчанию

    Цитата Сообщение от Luer Посмотреть сообщение
    При сбросе эл.питания ПК210 , выполняется тоже холодный рестарт ?

    Если так, то как сохранять значения переменных, после сброса эл. питания ?
    Нет, при сбросе питания холодный рестарт не выполняется.
    RETAIN-переменные ПЛК210 в этом случае получат свои последние сохраненные значения.

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

Похожие темы

  1. Обнулить значения переменных
    от sekerin в разделе Среда программирования OWEN Logic
    Ответов: 15
    Последнее сообщение: 29.06.2020, 20:58
  2. О переменных VAR_GLOBAL
    от Алексей Александрович в разделе ПЛК1хх
    Ответов: 13
    Последнее сообщение: 22.08.2012, 13:36
  3. Некорректные значения переменных
    от ksn33 в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 15.04.2011, 12:07
  4. Значения переменных bad
    от AndrRus в разделе Master SCADA 3
    Ответов: 0
    Последнее сообщение: 04.07.2009, 01:37
  5. плк154 значения переменных
    от o_nik в разделе ПЛК1хх
    Ответов: 5
    Последнее сообщение: 05.05.2009, 05:39

Ваши права

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