БП нужен, чтобы выход работал и если нужен гальванически развязанный, то БП отдельный от питания ПР.
Подали питание, и используете только O (это Out +) и V- (это Out -)
Вид для печати
Прошу прощение, хочу уточнить, вот набросал схемку комутации с аналоговым входом ЧП Вложение 88950 , правильно?
Неправильно.
Вот здесь пример подключения к твердотелке по 0..10В https://owen.ru/uploads/479/pr205-24...ele_0-10_v.pdf
А. вот так верно? Вложение 88951
Вот так
Вложение 88952
Большое спасибо:o
Всем добрый день. Подскажите как подключить NPN энкодер к пр103?
Например через модуль опторазвязки.
Максимальная частота с энкодера какая будет? Для этого надо его разрешение умножить на обороты в секунду, если энкодер вращения. Если до 40кГц, то можно даже на коленке собрать опторазвязку на оптронах PC817.
Либо посмотреть подключение для NPN-датчиков на странице товара:
https://owen.ru/uploads/263/pr103_sh...4_di_d_npn.svg
Тоесть напрямую такой инкрементальный энкодер не подключить к быстрым входам?
Выше схема подключения. NPN-энкодер с выходами типа "открытый коллектор" подключается напрямую.
Номинал резисторов Rд - ориентировочно 2.4 кОм. Ток в цепи выхода энкодера будет 10 мА.
Более точно расчет этих дополнительных резисторов расписан в манулале на ПР, стр. 66.
Спасибо. Всё получилось.
Доброго времени суток, коллеги.
В OwenLogic есть функциональный блок ClockWeek. В свойствах данного блока есть время уставки вкл и выкл. А можно ли задавать это время с Экрана? И как если можно :-)
Можно вводить в макрос ClockWeek_ из менеджера, выводите на экран как целые числа и задаёте Вложение 89363
Юникс тайм можно взять из этих ФБ с 1970г. https://owen.ru/forum/showthread.php...l=1#post444236
Маска недели обычные упакованные биты
Вложение 89601Вложение 89600Вложение 89602
Здравствуйте, только начинаю работать с ПР205 и хотелось бы уточнить как правильно подключить мне привод заслонки 0-10В. Обратный сигнал так же нужен, чтобы отслеживать положение.
Так же интересно как правильно настроить в OwenLogic. На выход я подаю от 0-1 (то есть будет лиюо 0-10В), а вот вход будет показывать 0-1 или же 0-10?
Подключение к ПР205
https://docs.owen.ru/product/pr205-p...8#topic-120570
На рисунке "Подключение аналогового выхода, находящегося в режиме источника напряжения" Uн1 - блок питания, Rн1 - привод.
Как подключать к приводу - на фото - блок питания и сигнал напряжения от ПР205.
Что будет на входе при измерении настраиваете в свойствах входа. Если вход ограничен (например, 4-20 мА), то можно настроить масштабирование, которое пропорционально входному диапазону - там же в настройках.
Вложение 89614Вложение 89615Вложение 89616
Здравствуйте, работаю с ПР225 и есть небольшая проблема. Не могу понять как работать с временем. В симуляторе показывает синхронизированное время с компьютером, но в переменную не записывается. Может кто-то подсказать что делать? Заранее благодарю за ответ!
ПРки нового поколения не умеют в симуляции время из привязанных переменных забирать.
Если очень нужно, используйте свой блок выдачи времени.
Например
Код:// <Description>Извлечение даты и времени из формата UnixTime от 01.01.2000</Description>
/// <GroupName>Дата и время</GroupName>
function_block UDT_to_DT // от 01.01.2000
var_input
UDT: udint := 0; //дата и время в формате Unix от 01.01.2000 в секундах (если = 0, то берем системное время)
end_var
var_output
day: udint;
month: udint;
year: udint;
hour: udint;
min: udint;
sec: udint;
week: udint;
end_var
var
day_month: array [1..12] of udint := [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334];
uiDate, uiDay: udint;
days_to_year, days_to_month: udint;
is_leap_year: bool;
end_var
if UDT = 0 then UDT := dt_to_udint(get_date_time()); end_if;
//Дата
uiDate := UDT / 86400; //Общее количество дней
year := uiDate / 365; //Приблизительно определяем год
days_to_year := year * 365 + (year + 3)/4 - (year + 99)/100 + (year + 399)/400; //Количество дней от 01.01.2000 до начала года
if uiDate < days_to_year then //Уточняем год
Year := Year - 1;
days_to_year := year * 365 + (year + 3)/4 - (year + 99)/100 + (year + 399)/400;
end_if
year := year + 2000; //Добавляем эпоху
uiDay := uiDate - days_to_year + 1; //Количество дней от начала года
month := uiDay / 29 + 1; //Приблизительно определяем месяц
if month > 12 then month := 12; end_if //На всякий случай
is_leap_year := (year mod 400 = 0) or ((year mod 4 = 0) and (year mod 100 <> 0)); //Проверяем год на високосность
days_to_month := day_month[month] + bool_to_udint(is_leap_year and month > 2); //Количество дней от нового года до начала месяца
if uiDay <= days_to_month then //Уточняем месяц
Month := Month - 1;
days_to_month := day_month[month] + bool_to_udint(is_leap_year and month > 2);
end_if
Day := uiDay - days_to_month; //Находим день
//Время
hour := (UDT / 3600) mod 24;
min := (UDT / 60) mod 60;
sec := UDT mod 60;
//День недели (1-пн, 2-вт ... 7-вс)
week := ((UDT / 86400 + 5) mod 7) + 1;
end_function_block
Хорошо, спасибо большое за обьяснение
Тоже вопрос по времени в ПР225-230.1208.01.X.0. Почему то нет функциональных блоков для работы со временем. так же когда настраиваешь устройство можно создавать переменные для времени но когда хочешь указать эту переменную для компонента время на экране их не видно.. и в целом не понял как вывести время на экран. если зайти в настройки через ОК на устройстве то там часы есть и показывают актуальное время. Вывод времени пока сделал через костыли. сделал переменную куда записываю время из настроек, а потом ее передаю во вторую переменную к которой получаю доступ из компонента время))))
Если открыть ГОСТ (IEC) на язык ST (или FBD), то набор ФБ работы с временем тоже не слишком велик.
Т.к. Owen Logic развивается, то не исключаю, что после непрерывных напоминаний о конкретных функциях - их добавят в библиотеку или компоненты.
До этой поры - придётся обходиться самопалом.
Вывод времени на экран - да, именно таким образом и выполняется - какие-то особенности переменных. Может быть исправят.
А что требуется?
В ST Лоджика есть такие функции https://docs.owen.ru/product/program...0#topic-120817
Требуется сделать график включении выхода пр. К сожалению примеры для ST в документации тоже не подходят так как он тоже не видит эти функции. Есть только SYS.COMPARE_DATE_TIME. этот проект изначально делался для ПР200 и там все эти функциональные блоки были. потом было принято решении реализовать его на ПР225 и посмотрев что у него тоже есть часы реального времени я не ожидал что столкнусь с такой ситуацией. И надеялся что я просто чего то не знаю или делаю не правильно и здесь мне подскажут мою ошибку. Но я так понял это все таки особенности либо ПР225 или owenlogic. Если кто то может подсказать как в такой ситуации можно выкрутится например на ST буду благодарен. Мне нужно реализовать выбор дней недели и время срабатывания. То есть выбираются дни недели и есть одно общее время для всех дней когда это будет срабатывать.
Ну, во-первых, в ST Лоджика есть вот это https://docs.owen.ru/product/program...0#topic-120852
Далее, в менеджере компонентов есть макросы ClockWeek_ и CLOCK_WEEK
А можно и самому написать
Возможно я не правильно формулирую, но я как раз и пытался сказать что всего вами перечисленного нет, но для ПР200 это все действительно было. И хочу спросить есть какие то действия которые я не выполнил или выполнил с ошибкой что бы это исправить или все таки такая проблема существует.
Вам нужен недельный таймер из ПР200?
Вложение 89622
В новой линейке он отсутствует, но в ST есть системный ФБ SYS.CLOCKWEEK, и в менеджере компонентов есть два макроса, которые реализуют недельный таймер
Можно ли внутри макроса использовать стандартную переменную из основного холста?
Передать переменную в ФБ как параметр. Если её значение изменяется внутри ФБ - вывести и сохранить в ту же переменную.
Добрый день. возможно не сюда. заранее извиняюсь. необходима помощь в корректировке проекта на плк 110-32. подскажите где то на просторах форума можно есть информация
mauser25
Не сюда. Вам в ветку по CoDeSys 2.3.
Спасибо!!!