Страница 140 из 708 ПерваяПервая ... 4090130138139140141142150190240640 ... ПоследняяПоследняя
Показано с 1,391 по 1,400 из 7074

Тема: CODESYS V3.5. Вопросы и ответы

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

    По умолчанию

    Это модель поведения блока. В чем, собственно, проблема? Данный блок используется для чтения системного времени, которое само по себе измеряется с определенной погрешностью. Лишний цикл (10 мс) ничего не изменит. Более того, формат DT вообще представляет время как число секунд, миллисекунды не используются.

  2. #1392

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Это модель поведения блока. В чем, собственно, проблема? Данный блок используется для чтения системного времени, которое само по себе измеряется с определенной погрешностью. Лишний цикл (10 мс) ничего не изменит.
    проблема в том что исходя из вашей логики , что ничего страшного , нужно постоянно получать системное время . хотя если бы данный блок срабатывал за один цикл , то его можно было бы вызывать только при определенном условии и делать проверки. но так как блок отрабатывает за два цикла , логику работы программы выстроить невозможно .

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

    По умолчанию

    ...то его можно было бы вызывать только при определенном условии и делать проверки. но так как блок отрабатывает за два цикла , логику работы программы выстроить невозможно.
    Извините, не могу уловить проблему. Что именно мешает выстроить логику программы? И какой она вообще должна быть?

  4. #1394

    По умолчанию

    у меня одни переменные меняются в течение одного цикла и влияют на условия вызова фб со считыванием времени , а в слудующем цикле переменные уже приняли другие значения а фб еще не отработал. а на второй проход он уже не вызывается.

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

    По умолчанию

    Цитата Сообщение от cad555 Посмотреть сообщение
    у меня одни переменные меняются в течение одного цикла и влияют на условия вызова фб со считыванием времени , а в слудующем цикле переменные уже приняли другие значения а фб еще не отработал. а на второй проход он уже не вызывается.
    Правильно ли я понял, что вы говорите о конструкции типа:

    Код:
    IF условия THEN
    
    считать системное время
    если системное время считано и равно (или больше/меньше/не равно) заданному, то сбросить ФБ и выполнить нужные действия
    
    END_IF
    Если речь об этом - то вы пытаетесь заставить блок выполняться по уровню, но, как уже упоминалось, он запускается по фронту.
    Т.е. просто вызывайте его в стиле:

    Код:
    // выносим запуск ФБ за пределы IF ... END_IF
    dtugt(xExecute:=( условие1 AND условие 2 и т.д.) );
    
    IF dtugt.xDone
    // забираем dtDateAndTime
    END_IF
    Еще раз уточню, что забирать время с выхода блока можно только в тот цикл, когда xDone=TRUE (т.е. блок успешно завершил работу).

  6. #1396

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Правильно ли я понял, что вы говорите о конструкции типа:

    Код:
    IF условия THEN
    
    считать системное время
    если системное время считано и равно (или больше/меньше/не равно) заданному, то сбросить ФБ и выполнить нужные действия
    
    END_IF
    Если речь об этом - то вы пытаетесь заставить блок выполняться по уровню, но, как уже упоминалось, он запускается по фронту.
    Т.е. просто вызывайте его в стиле:

    Код:
    // выносим запуск ФБ за пределы IF ... END_IF
    dtugt(xExecute:=( условие1 AND условие 2 и т.д.) );
    
    IF dtugt.xDone
    // забираем dtDateAndTime
    END_IF
    Еще раз уточню, что забирать время с выхода блока можно только в тот цикл, когда xDone=TRUE (т.е. блок успешно завершил работу).
    да , все верно , спс .

  7. #1397

    По умолчанию

    Здравствуйте. Впервые установил CoDeSyS 3.5. При попытке запуска в режиме эмуляции ругается что не найден файл GWClient.dll Переустановка программы не помогла. Поиски информации по проблеме в интернете не увенчались успехом. CODESYS Gateway в трэе честно светится и говорит что работает. Может кто сталкивался и знает решение?

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

    По умолчанию

    Цитата Сообщение от ArsGaz Посмотреть сообщение
    Здравствуйте. Впервые установил CoDeSyS 3.5. При попытке запуска в режиме эмуляции ругается что не найден файл GWClient.dll Переустановка программы не помогла. Поиски информации по проблеме в интернете не увенчались успехом. CODESYS Gateway в трэе честно светится и говорит что работает. Может кто сталкивался и знает решение?
    Здравствуйте.

    Вы при установке ставите галочки для установки всех компонентов? Данный файл относится CODESYS OPC Server 3, он у вас установлен?

    При установке всех компонентов папка должна выглядеть примерно так:

    25-05-2017 7-04-31.png

  9. #1399

    По умолчанию

    Да, установлены все компоненты. В папке CODESYS OPC Server 3 файл GWClient.dll присутствует.

    UPD. Дело было в косяке винды, не вставали новые обновления и криво работал .net framework. После вылечивания проблемы ошибка ушла.
    Последний раз редактировалось ArsGaz; 25.05.2017 в 13:39.

  10. #1400

    По умолчанию

    Подскажите правильно ли я понимаю работу элемента move.
    Когда на входе "EN" присутствует TRUE , элемент пропускает через себя все сигналы.
    В момент смены TRUE на FALSE на "EN", сигнал на выходе "out" должен пропасть, даже если он присутствует на входе "in".

    У меня получается совсем иначе: подаю TRUE на "in", далее TRUE на "EN", - появляется TRUE на "out".
    Далее меняю TRUE на FALSE на управляющем входе "EN", то же самое делаю на входе "in", но на выходе "out" продолжает висеть TRUE.
    Если же первым убирать сигнал "in", а потом "EN", все работает как нужно.

    move.PNG

    move1.PNG
    move2.PNG

    Как мне заставить этот элемент работать по аналогии с твердотельным реле. Если на управляющем входе есть сигнал, то и на выходе он есть.
    Если нет на входе, его нет и на выходе.

Страница 140 из 708 ПерваяПервая ... 4090130138139140141142150190240640 ... ПоследняяПоследняя

Похожие темы

  1. Панели оператора СП3xx. Вопросы и ответы
    от Мурат Ахриев в разделе Панели оператора (HMI)
    Ответов: 3193
    Последнее сообщение: 15.04.2024, 12:51
  2. Панели оператора ИП320. Вопросы и ответы
    от automat в разделе Панели оператора (HMI)
    Ответов: 822
    Последнее сообщение: 20.11.2023, 17:48
  3. ИПП120. Вопросы и ответы
    от Р.Александр в разделе Программируемые реле
    Ответов: 245
    Последнее сообщение: 02.10.2022, 11:34
  4. Индикатор ИП120 , вопросы- ответы
    от rovki в разделе Программируемые реле
    Ответов: 56
    Последнее сообщение: 03.11.2017, 15:58
  5. Панели оператора СП270. Вопросы и ответы
    от Давидюк в разделе Панели оператора (HMI)
    Ответов: 930
    Последнее сообщение: 15.05.2017, 17:12

Ваши права

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