Страница 117 из 375 ПерваяПервая ... 1767107115116117118119127167217 ... ПоследняяПоследняя
Показано с 1,161 по 1,170 из 4179

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

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    13,864

    По умолчанию

    1) При ошибках/таймауте - в буфере может быть что угодно. Соответственно, надо проверять результат операции чтения/записи и, при необходимости, выполнять нужные действия (например, обнулять регистры, выводимые на экран).
    2) Можно указывать просто имя массива. В примерах везде используется взятие адреса, чтобы не усложнять документацию и отдельно не пояснять, почему такой код не работает:

    Код:
    Reads(HMI_LOCAL_MCH, 0, TYPE_PSW, 300, 4, PSW[400]);
    а такой - работает:

    Код:
    Reads(HMI_LOCAL_MCH, 0, TYPE_PSW, 300, 4, &PSW[400]);

  2. #2
    Пользователь
    Регистрация
    18.05.2017
    Адрес
    Чебоксары
    Сообщений
    119

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    1) При ошибках/таймауте - в буфере может быть что угодно. Соответственно, надо проверять результат операции чтения/записи и, при необходимости, выполнять нужные действия (например, обнулять регистры, выводимые на экран).
    2) Можно указывать просто имя массива. В примерах везде используется взятие адреса, чтобы не усложнять документацию и отдельно не пояснять, почему такой код не работает:

    Код:
    Reads(HMI_LOCAL_MCH, 0, TYPE_PSW, 300, 4, PSW[400]);
    а такой - работает:

    Код:
    Reads(HMI_LOCAL_MCH, 0, TYPE_PSW, 300, 4, &PSW[400]);
    Спасибо! Вопросы сняты!

  3. #3

    По умолчанию

    BOOL IsSuccessReading;
    WORD Value;

    IsSuccessReading = Read(PLC, 1, MODBUS_RTU_REG_4X, 0, 0, TYPE_WORD, &Value);

    PSW[256] = Value;

    if (IsSuccessReading)
    {
    Write(HMI_LOCAL_MCH, 0, TYPE_PFW, 300, 0, TYPE_WORD, 10);
    }
    else
    {
    Write(HMI_LOCAL_MCH, 0, TYPE_PFW, 300, 0, TYPE_WORD, 20);
    }



    в этом примере

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

    По умолчанию

    1. Это запись в регистр панели PSW[256] значения переменной Value.
    2. Можно и в одном, который выполняется параллельно.
    3. Какая у вас версия конфигуратора?

  5. #5

    По умолчанию

    я так понял сначала запись идет в PFW 300 потом в PSW256? я пробовал выводил на дисплей оба регистра, значение выводилось в PFW300 в PSW256 не было

  6. #6

    По умолчанию

    из старого, потом обновил

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

    По умолчанию

    Цитата Сообщение от Евгений76 Посмотреть сообщение
    из старого, потом обновил
    Шаблон-то проекта остался старый, с системным окном о потери связи

    Сделайте так:
    - в настройках проекта поменяйте тип панели сп310 на сп307 (сп307 на сп310)
    - верните в настройках проекта первоначальный тип панели.
    После этого в проекте будет только "ручной" контроль наличия связи
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  8. #8

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    Шаблон-то проекта остался старый, с системным окном о потери связи

    Сделайте так:
    - в настройках проекта поменяйте тип панели сп310 на сп307 (сп307 на сп310)
    - верните в настройках проекта первоначальный тип панели.
    После этого в проекте будет только "ручной" контроль наличия связи
    Не получилось, все равно тормозит, создать новый проект в новом конфигураторе?

  9. #9

    По умолчанию

    Здравствуйте!
    У меня возникла следующая проблема. У меня есть ПЛК150. Я создал графический интерфейс для панели СП307, в котором, в том числе, я записываю в определенные биты 0 или 1 с помощью переключателей с индикацией (переключатели должны работать в режиме "Инверсия"). Самой панели у меня в наличии нет, поэтому я провожу тесты через режим эмуляции, через Ethernet. Эмулятор панели корректно считывает все данные из ПЛК, корректно проводится запись в Float и Int переменные из Эмулятора в ПЛК. Но вот запись одиночных битов в регистры 8bit ПЛК не проходит. Записываются только некоторые биты, которые стоят первыми в регистре, и то не все. Это проблема эмулятора? Хочу попробовать купить преобразователь USB-RS485 и связать эмулятор с ПЛК через него.
    ПЛК - Slave, Панель - Master.
    Последний раз редактировалось andrewvol; 24.11.2018 в 23:31.

  10. #10

    По умолчанию

    последняя с сайта

Страница 117 из 375 ПерваяПервая ... 1767107115116117118119127167217 ... ПоследняяПоследняя

Похожие темы

  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

Ваши права

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