Еще, для переменных которые назначаются в поле "Изменение значение переменной" нет необходимости управлять ими принудительно, после переключения на экран, они должны сброситься аппаратно.
Вид для печати
Подскажите пожалуйста как можно перебросить проект с одного типа ПР200 на другой?
Ну, да. И видимо, отрабатывает за время менее цикла. Поэтому даже детектор фронта ей не фиксирует? См. 3377: в ОЛ - отрабатывает стабильно, а в аппарате - случайным образом (об этом примере, собственно и вопрос был).Цитата:
для переменных которые назначаются в поле "Изменение значение переменной" нет необходимости управлять ими принудительно, после переключения на экран, они должны сброситься аппаратно
пример можете привести для наглядности? Заранее благодарен.Цитата:
А вообще желательно функцию автоматического сброса сделать управляемой.
Добрый день. Никак не получается выполнить запись команды по Modbus. Суть в том, что регистр на чтение/запись один (ПЧ Mitsubishi FR740). Соответственно в обычном режиме нужно читать состояние ПЧ из регистра, а при изменении команды выполнить запись. При изменении команды я взвожу бит записи триггером (drvCmdSetWord), но запись не происходит.
Вложение 38887
Вложение 38888
Не могу понять, в чём проблема.
Выбросить всю эту лабуду и просто включить галку "Запись по изменению"
Давайте начнем с простого, по отдельности данный регистр читается и пишется, без сложных схем, просто сначала читаем, затем пишем. После того как убедились что по отдельности работает, усложняем. Либо ставим одну переменную и читаем пишем по флагам, либо одну на чтение, другую на запись, соответственно в той что на запись, выключаем 3 команду и наоборот. В общем, как-то так.
Смотрите в проекте http://ftp-ow.owen.ru/softupdate/OWE...10-X.4X.4X.owl пример чтения записи аварийных значений.
У меня выплыл вопросик, по ПР200 + СМИ2 (slave). Отображается переменная типа Float (измерение температуры), но вот задача, надо убрать лишние знаки после запятой. В конфигураторе для СМИ2 в графе положение десятичной точки выставляю (3) 00.00 , но по факту никак не влияет, ещё и записывается раза с десятого, но всё-же записывается. В int всё нормально, сколько знаков сказал столько и отображает, а во Float отображает всё что есть (например 3,123 , а мне надо 3,12 или 3,1). Но в int не всё так просто с отрицательными числами, придётся какой-то макрос городить (готового не нашел), и не факт что получится (ещё не пробовал). Можно ли как-то сделать так, как я хочу ?!? Спасибо ))
Здесь посмотрите: http://www.owen.ru/forum/showthread.php?t=13106&page=3
И можно округлить, короче, FLOAT округляете до десятых, умножаете на 10(до целого), далее через макрос передаёте на СМИ2, в СМИ2 смещаете запятую на один знак влево, всё!
Вот я так и пробую, ничего не выходит. И в конфигураторе для СМИ2 выбирал разное положение десятичной точки для Float, и через ПР200 загонял в регистр 18 разные значения от 0 до 3, это никак не влияет на реальное положение десятичной точки в выводимой на экран СМИ2 информации.
Вот для переменных int положение десятичной точки действует без проблем, куда хочу туда и ставлю, а с float то что ?
Пришлось воспользоваться макросом от Сергея "FLOAT-to-INT" (обратный есть в онлайн базе) , умножить на 10 и выводить на экран СМИ2 со смещением "2" в конфигураторе (один знак после запятой). Только так заработало корректно. Спасибо ! (да, отрицательные числа мне тоже нужны были)
Попутно ещё вопрос возник. В OL настройках интерфейса->устройство есть параметр период опроса. По умолчанию 100мс, но т.к. у меня нет надобности так часто опрашивать устройство, я изменил на 1000мс, но как-то в реальности это не повлияло, как менялись показания несколько раз в секунду вокруг да около одного значения, так и продолжают меняться, с любым периодом опроса. Отфильтровать можно, я так и сделал, но сам факт того что всё-равно опрос идёт гораздо чаще 1000мс.
Или еще проще
Для float в СМИ2, это может не работать, если чекбокс запись по изменению установлен, а значение идет с AI, то либо фильтрацию настроить, либо снять чекбокс.