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

Тема: Макросы в проекте для СП307Б ОВЕН

  1. #1
    Пользователь
    Регистрация
    28.09.2024
    Адрес
    Санкт-Петербург
    Сообщений
    3

    По умолчанию Макросы в проекте для СП307Б ОВЕН

    Всем добрый день!

    Суть вопроса вот в чем - необходимо вызывать окна тревоги по значению числа сетевой переменной (переменная целочисленная, значения меняются от 0 до 21 в зависимости от события. Организовать это по значению первого бита для каждой переменной отдельно не проблема, но количество сетевых переменных ограничено, а аварийных событий 21. То есть в распоряжении есть только одна целочисленная переменная.

    В этой связи у меня следующая идея: 1. Запись значения сетевой переменной в локальную, например PSW256 (с помощью функциональной области) а потом присваивать значения локальным регистрам в зависимости от значения PSW256. Реализовать это решение можно через макрос, я почитал справку и мне кажется должен сработать макрос SWITCH (пример ниже), будет ли это работать? Или есть какое то более простое решения, подскажите...

    Заранее спасибо,

    пример:

    switch (PSW[256])
    {
    case 1: PSW[400]=1;
    break;
    case 2: PSW[401]=1;
    break;
    case 3: PSW[402]=1;
    break;
    case 4: PSW[403]=1;
    break;
    case 5: PSW[404]=1;
    break;
    case 6: PSW[405]=1;
    break;
    case 7: PSW[406]=1;
    break;
    case 8: PSW[407]=1;
    break;
    case 9: PSW[408]=1;
    break;
    case 10: PSW[409]=1;
    break;


    default: PSW[400]=0
    default: PSW[401]=0
    default: PSW[402]=0
    default: PSW[403]=0
    default: PSW[404]=0
    default: PSW[405]=0
    default: PSW[406]=0
    default: PSW[407]=0
    default: PSW[408]=0
    default: PSW[409]=0
    default: PSW[410]=0

    break;
    }

    ит.д...

    Спасибо всем кто откликнется..

  2. #2

    По умолчанию

    Думаю будет работать.

    У товарища с форма petera в подписи есть ссылка на элементы. Там много чего есть, посмотри.

  3. #3

    По умолчанию

    Думаю, что можно добавить глобальную ФО (функциональная область, которую сделать глобальной).
    Режим запуска "Непрерывно".
    В список действий добавить "Вызов макроса", в который вставить:
    Код:
    switch(PSW[256]){
        case 1: OpenWindow(61001, 200, 200); break;
        case 2: OpenWindow(61002, 200, 200); break;
        case 3: OpenWindow(61003, 200, 200); break;
        // и т.д.
    }
    где 61001 = это ID созданного окна, а 200, 200 - координаты его размещения

    Еще вариант:
    Код:
    WORD wins[4] = {0, 61001, 61002, 61003};
    OpenWindow(wins[PSW[256]], 200, 200);
    Последний раз редактировалось EFrol; 21.02.2025 в 17:48.

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

    По умолчанию

    Цитата Сообщение от Aleksandr81 Посмотреть сообщение
    пример:

    switch (PSW[256])
    {
    case 1: PSW[400]=1;
    break;
    case 2: PSW[401]=1;
    break;
    case 3: PSW[402]=1;
    break;
    case 4: PSW[403]=1;
    break;
    case 5: PSW[404]=1;
    break;
    case 6: PSW[405]=1;
    break;
    case 7: PSW[406]=1;
    break;
    case 8: PSW[407]=1;
    break;
    case 9: PSW[408]=1;
    break;
    case 10: PSW[409]=1;
    break;


    default: PSW[400]=0
    default: PSW[401]=0
    default: PSW[402]=0
    default: PSW[403]=0
    default: PSW[404]=0
    default: PSW[405]=0
    default: PSW[406]=0
    default: PSW[407]=0
    default: PSW[408]=0
    default: PSW[409]=0
    default: PSW[410]=0

    break;
    }
    .
    могу ошибатся но типа того
    Код:
    for(i=400;i<411;i++)PSW[i]=PSW[256]==(i-399)?1:0;
    Последний раз редактировалось Валенок; 21.02.2025 в 20:24.

Похожие темы

  1. СП310Р-> СП307Б
    от BSA в разделе Панели оператора (HMI)
    Ответов: 9
    Последнее сообщение: 04.11.2024, 08:01
  2. Не грузится СП307Б
    от ibog44 в разделе Панели оператора (HMI)
    Ответов: 2
    Последнее сообщение: 19.10.2023, 16:59
  3. СП307Б+ПЛК-160+ПЛК-160
    от Коля О в разделе Панели оператора (HMI)
    Ответов: 1
    Последнее сообщение: 28.05.2020, 12:29
  4. Выгрузка проекта с сп307б
    от xsanderd в разделе Панели оператора (HMI)
    Ответов: 3
    Последнее сообщение: 22.03.2018, 15:15
  5. Универсальные макросы для ОВЕН ЛОДЖИК
    от rovki в разделе Программируемые реле
    Ответов: 197
    Последнее сообщение: 28.06.2016, 09:53

Ваши права

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