Страница 150 из 421 ПерваяПервая ... 50100140148149150151152160200250 ... ПоследняяПоследняя
Показано с 1,491 по 1,500 из 4210

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

  1. #1491

    По умолчанию

    Цитата Сообщение от R2_ Посмотреть сообщение
    2. Часто выскакивает системное окно "Доступ открыт", хотя никакой ФО связанной с доступом вроде нет. Есть единственный элемент - "Переход на экран", требующий ввод пароля, но в тестах его не трогаем.
    3. Как лучше организовать систему индикации обрыва связи с каждым Слейвом? через макрос, вызываемый каждую секунду и считывающий, например какой-то бит у Слейва, но что будет при обрыве связи, вернет ли считывание 0 или останется последний считанный результат? (можно конечно считывать регистр, который инкриментировать на Slave при каждом считывании и проверять на панеле, изменилось ли значение). может есть какой-то более прямой способ.
    4. Есть ли какая-то API для отслеживания ошибок протокола, т.е. когда в старшем байте функции возвращается 0х8Х?
    5. В стандарте С допустимы такого вида сравнения if ((!GetPSBStatus(xxx))&&(var1))||(GetPSBStatus(yyy) &&(var2>10)){...} -подскажите пожалуйста правильный синтаксис задания множественного условия. Что-то в таком виде не хочет компилировать, приходится вложенными if-ами решать вопрос.
    Здравствуйте.

    2. Сложно прокомментировать, не видя проекта и не имея инструкций по воспроизведению проблемы.
    3. Если обмен организован через макросы - то функции чтения/записи возвращают FALSE в случае ошибки обмена. Если обмен настроен в элементах - то можно в макросе контролировать регистры PSW66 (Download-порт) / PSW76 (PLC-порт) - в них записываются адреса слэйвов, при последнем сеансе обмена с которыми произошли ошибки.
    4. Такое возможно, если обмен писать на низкоуровневых функциях. См. здесь:
    https://www.owen.ru/uploads/aip_47_s...slov_36-37.pdf

    5. У вас со скобками проблемы. Проще всего, конечно, было бы разбить такое длинное условие на несколько более простых и потом проверять результирующие биты.
    Вот так - компилируется (не уверен, что правильно понял желаемые приоритеты операций в исходной записи):

    Код:
    BOOL var1;
    int  var2;
    
    if ( ( !GetPSBStatus(300) && var1 ) || ( GetPSBStatus(400) && (var2 > 10) ) )
    {
    		;
    }

  2. #1492

    По умолчанию

    Добрый день.

    Не получается задать цвет кнопки. Выбираю нужный цвет, жму "Применить", "ОК", но цвет кнопки не меняется. В чем может быть причина ?
    Изображения Изображения
    Последний раз редактировалось Newcomer; 02.10.2019 в 11:46.

  3. #1493

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Добрый день.

    Не получается задать цвет кнопки. Выбираю нужный цвет, жму "Применить", "ОК", но цвет кнопки не меняется. В чем может быть причина ?
    Если изображение кнопки является картинкой - то надо менять картинку.
    Эти настройки влияют на цвет только в том случае, если используется скин кнопки из галерей 3-5:

    02-10-2019 11-50-41.png

  4. #1494

    По умолчанию

    Спасибо большое.
    Очень помогли.

  5. #1495

    По умолчанию

    Имеем Цифровой дисплей и Функциональную кнопку. Цифровой дисплей должен обнуляться при нажатии на Функциональную кнопку. Если на дисплее отображается число =< 65535, то обнуление происходит. Если на дисплее отображается число >= 65536, то при нажатии на кнопку на дисплее вместо 0 высвечивается 65536.
    Изображения Изображения
    • Тип файла: png 1.png (23.7 Кб, Просмотров: 7)
    • Тип файла: png 2.png (24.5 Кб, Просмотров: 6)
    • Тип файла: png 3.png (16.2 Кб, Просмотров: 6)
    • Тип файла: png 0.png (1.3 Кб, Просмотров: 5)
    Последний раз редактировалось Newcomer; 02.10.2019 в 15:09.

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

    По умолчанию

    Цитата Сообщение от Newcomer Посмотреть сообщение
    Имеем Цифровой дисплей и Функциональную кнопку. Цифровой дисплей должен обнуляться при нажатии на Функциональную кнопку. Если на дисплее отображается число =< 65535, то обнуление происходит. Если на дисплее отображается число >= 65535, то при нажатии на кнопку на дисплее вместо 0 высвечивается 65536.
    Проверьте операнд в функции, тип должен быть DWORD
    Захват-1.png

    Иначе Вы только половину слова в дисплее обнуляете - младшую, а старшая, которая > 65535 остается неизменной
    Скрытый текст:
    Последний раз редактировалось petera; 02.10.2019 в 15:22.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Мой канал на РУТУБЕ
    https://rutube.ru/channel/23641433/
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  7. #1497

    По умолчанию

    Слона-то я и не заметил. Спасибо.

  8. #1498

    По умолчанию

    А можно ли скачать проект из панели ?

  9. #1499

  10. #1500

    По умолчанию

    Друзья. Подскажите пожалуйста.
    Возможен досрочный выход из макроса?
    Типа if (GetPSBStatus(300)) return;

    Вопрос снят.
    Да. такая конструкция работает.
    Последний раз редактировалось R2_; 03.10.2019 в 19:47.

Страница 150 из 421 ПерваяПервая ... 50100140148149150151152160200250 ... ПоследняяПоследняя

Похожие темы

  1. Ответов: 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

Ваши права

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