Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 17 из 17

Тема: ПР205 ModBus Master

  1. #11

    По умолчанию

    А у нас (на этом форуме) есть небожители (сотрудники Овен) которые точно знают ответы на наши вопросы?

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

    По умолчанию

    Цитата Сообщение от Васильев Посмотреть сообщение
    А у нас (на этом форуме) есть небожители (сотрудники Овен) которые точно знают ответы на наши вопросы?
    Ждете мамкину сиську? Взяли и проверили, например так
    Код:
    function_block check
    
        var_input
            go, //"поехали" по фронту при ожидании команды
            in_status: bool;
        end_var
    
        var_output  
            opros,
            out_status: bool;
        //чистое любопытство
            cnt_ok, //счетчик операций
            ms_ok: udint; //мсек от go до ok
        end_var
    
        var 
            go_: bool;
            t: time;
        end_var
        
        if not opros then
            opros := go and not go_; 
            t := get_time();
        elsif in_status then
            opros := false;
            cnt_ok := cnt_ok + 1;
            ms_ok := time_to_udint(get_time() - t);
        end_if
        go_ := go;
        out_status := false; //наглухо
       
    end_function_block
    Изображения Изображения
    Последний раз редактировалось Валенок; 14.09.2024 в 13:20.

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

    По умолчанию

    статус
    не меняется если работа запрещена для любых операций (запись, чтение, отключение линии, включение линии).
    Что такое запрещена. Объявлен "опрос" и он FALSE?
    Логично для 0. Никто не имеет права поднять.
    Если до запрещения был 1 - тоже не падает?
    Что такое отключение линии/включение линии - физический отрыв?


    не меняется если работа разрешена и нет переменных для чтения или записи периодически или по команде
    Логично для 0. Некому поднять.


    не меняется если работа разрешена и отключена линия связи
    Логично для 0. Можно, есть кому, но у Печкина велосипед сломался


    если работа разрешена и если статус был вкл и если отключена линия связи и выполнено принудительное чтение или запись по команде (запись 1) - статус не меняется на выкл
    Что такое принудительное чтение/запись если работа - разрешена


    изменяется из вкл в выкл если работа разрешена, отключена линия связи и выполнена запись по изменению значения сетевой переменной или периодическое чтение переменной
    Все операции прошли с таймаутом.
    Периодические - рано или поздно удостоверятся что-таки ёк
    По изменению - поставитьте повторов по максммуму (255). Через сколько упадет статус (если был поднят)?


    если статус было вкл и отключить линию связи состояние остается активным пока не будет чтения по таймеру или запись по изменению переменной
    Логично. Пока хоть кто-то не попытается позвонить/навестить бабушку она так и будет числится живой
    (когда навестят - то по факту)


    если состояние было выкл и линия связи включена и нет активности на линии (нет записи или чтения) состояние статуса не меняется на вкл
    логично


    если выполнить чтение или запись состояние статуса меняется на вкл
    логично (если все пучком прошло)


    установка бита принудительной записи или чтения в 1 отправляет одну команду записи или чтения (обратного контроля нет)
    Проверка обратной связи предложена выше.
    Но проверки требует сама предоженная проверка)) У меня нет живой ПР


    автоматически сброс в 0 не происходит (в РЭ ОЛ на стр 97 написано, что бит сбрасывается автоматически)
    Логика в этом есть. Кто должен опускать если нет настроек времени после последнего ok?
    Ну а РЭ пишут люди. Я вижу не ошибку а неполное описание.


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


    ----
    Ньюансы конкретного исполнения требуют проверки руками, а не заявлениями в РЭ если хотите быть уверенными за свою работу, а не разводить руками перед клиентом.
    Последний раз редактировалось Валенок; 14.09.2024 в 14:17.

  4. #14

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Ждете мамкину сиську? Взяли и проверили, например так
    Код:
    function_block check
    
        var_input
            go, //"поехали" по фронту при ожидании команды
            in_status: bool;
        end_var
    
        var_output  
            opros,
            out_status: bool;
        //чистое любопытство
            cnt_ok, //счетчик операций
            ms_ok: udint; //мсек от go до ok
        end_var
    
        var 
            go_: bool;
            t: time;
        end_var
        
        if not opros then
            opros := go and not go_; 
            t := get_time();
        elsif in_status then
            opros := false;
            cnt_ok := cnt_ok + 1;
            ms_ok := time_to_udint(get_time() - t);
        end_if
        go_ := go;
        out_status := false; //наглухо
       
    end_function_block
    в том то и дело всё проверено..
    для себя я все выяснил.
    тема была поднята, чтобы всем стало всё ясно и совместными усилиями выявить и выяснить проблемы
    и не натыкаться на грабли в дальнейшем

    для меня остается не понятным
    почему из состояния статус 0
    установка флага принудительной записи или чтения не устанавливает статус в 1,
    в то время как запись по изменению или периодическое чтение статус готовности устанавливает


    Спасибо большое!
    Последний раз редактировалось Васильев; 14.09.2024 в 14:31.

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

    По умолчанию

    Цитата Сообщение от Васильев Посмотреть сообщение
    в том то и дело всё проверено..
    Не всё. Пример выше (просто просьба) проверить. Возможно что будет (или не будет) ответ на:

    Цитата Сообщение от Васильев Посмотреть сообщение
    для меня остается не понятным
    почему из состояния статус 0
    установка флага принудительной записи или чтения не устанавливает статус в 1,
    в то время как запись по изменению или периодическое чтение статус готовности устанавливает
    Тут нужно определить - что поднимает статус (кроме рук)
    В моём мире - любая ок-операция.
    Если(?) так, то значит её у Вас не было - побилась/оборвали командами и т.п.
    Последний раз редактировалось Валенок; 14.09.2024 в 14:50.

  6. #16

    По умолчанию

    Заметил ещё одну особенность…
    Если статус был не в сети (устройство включено, линия связи подключена) команда запись по изменению или чтение периодическое поднимает статус только после выполнения второй команды.

  7. #17

    По умолчанию

    Поддержка подтвердила, что бит принудительной записи в пр205 не сбрасывается, информация передана разработчику.

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. ПР205, получить значения с датчика по MODBUS RTU
    от KRUPSKIY в разделе Программируемые реле
    Ответов: 24
    Последнее сообщение: 06.06.2024, 12:09
  2. Ответов: 1
    Последнее сообщение: 24.04.2024, 13:39
  3. ПР205 И ПВТ110-RS, считать данные по MODBUS
    от KRUPSKIY в разделе Эксплуатация
    Ответов: 1
    Последнее сообщение: 14.02.2024, 16:29
  4. Связь по Modbus ПР205 и ПЧВ3[M01]
    от titan в разделе Среда программирования OWEN Logic
    Ответов: 23
    Последнее сообщение: 16.11.2023, 13:46
  5. Ответов: 2
    Последнее сообщение: 15.09.2014, 16:40

Ваши права

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