Просмотр полной версии : Универсальные макросы для OWEN Logic
Urfin_Dzhyus
29.11.2023, 12:25
В смысле, тащить тяжело?
Привт, я, это флужу немножко. А кого и куда тащить то будем?
Urfin_Dzhyus
удобно когда вытащил блок на поляну, кликнул пкм и в высветившемся контекстном меню выбрал пункт:"добавить/удалить" вход/выход"
К сожалению это не про OwenLogic, если бы они такие вещи добавили хотя бы для логики типа OR, AND, XOR уже было бы прекрасно... По мне так хр бы с ним, пусть хоть уйдут от графического поля и перейдут на координаты да меньше косяков в обновлениях добавляют...
Сергей0308
29.11.2023, 13:13
С вами согласн, но не совсем, удобно когда вытащил блок на поляну, кликнул пкм и в высветившемся контекстном меню выбрал пункт:"добавить/удалить" вход/выход"
Привт, я, это флужу немножко. А кого и куда тащить то будем?
Вам же макросы дали, наверно их Вы и собирались таскать, кстати там всё как Вы хотите, в смысле можно легко добавить вход(выход), что Вас не устраивает?
Сергей0308 он не про то добавление входов :)
Urfin_Dzhyus
29.11.2023, 14:13
Товарищи, мы тут расфлудились не на шутку, ну его на фиг. У меня есть конкретный вопрос про ST. Подойдёт любой скетч на ST для создания блока, или только есть ST для ОЛ?
kondor3000
29.11.2023, 14:34
Товарищи, мы тут расфлудились не на шутку, ну его на фиг. У меня есть конкретный вопрос про ST. Подойдёт любой скетч на ST для создания блока, или только есть ST для ОЛ?
Любой не подойдёт, в ОЛ много ограничений, не работают стандартные таймеры и блоки, надо писать свои. Проще попробовать самому и посмотреть.
Есть темы, где выложены готовые блоки и функции для ST.
https://owen.ru/forum/showthread.php?t=38239&page=29#285
https://owen.ru/forum/showthread.php?t=37203
https://owen.ru/forum/showthread.php?t=38239&page=11#105
https://owen.ru/forum/showthread.php?t=38608#4
Товарищи, мы тут расфлудились не на шутку, ну его на фиг. У меня есть конкретный вопрос про ST. Подойдёт любой скетч на ST для создания блока, или только есть ST для ОЛ?
Учитывая, что ST для лоджика сильно урезанный, лучше всего подойдет файл справки. Еще можно видео уроки по ST для лоджика посмотреть в ютьюбе на канале Овена
Urfin_Dzhyus
29.11.2023, 15:14
Учитывая, что ST для лоджика сильно урезанный, лучше всего подойдет файл справки. Еще можно видео уроки по ST для лоджика посмотреть в ютьюбе на канале Овена
Понял. Вопрос не по теме, но пока в чате, не помните часом, какую скорость чтения поддерживают входы пр200.
Понял. Вопрос не по теме, но пока в чате, не помните часом, какую скорость чтения поддерживают входы пр200.
Зависит от времени цикла выполнения конкретной программы, т.е. от ее сложности. Но не быстрее чем 2*Тцикла.
Если программа примитивная и время цикла = 1мс, то не чаще 2мс (500 Гц).
Если время цикла будет 10мс, то соответственно 20мс (50 Гц)
Urfin_Dzhyus
29.11.2023, 15:27
Понял, тоесть расходомер с импульсным выхдом не подключишь, печалька. Надо что то с унифицированным сигналом или по 485.
Сергей0308
29.11.2023, 15:34
Понял, тоесть расходомер с импульсным выхдом не подключишь, печалька. Надо что то с унифицированным сигналом или по 485.
Может ваш расходомер с частотным выходом?
С импульсным выходом обычно гораздо менее 50 имп/с выдают.
И, у Овена есть тахометр:
https://owen.ru/product/tx01rs
Там, где нет быстрых входов вне зависимости, не имеет смысла подключать какие-то расходомеры и т.д. так как импульсы могут приходить во время цикла программы, соответственно будут пропущены.
Urfin_Dzhyus
29.11.2023, 16:10
Может ваш расходомер с частотным выходом?
С импульсным выходом обычно гораздо менее 50 имп/с выдают.
И, у Овена есть тахометр:
https://owen.ru/product/tx01rs
Оборудование полностью не изучал пока, по инструкции расходомера прошолся наискось и скорее всего стоит преобразователь 4-20, если нет то воспользуюсь вашим советом, спасибо. Занимаюсь пока логикой по предоставленному алгоритму.
Там, где нет быстрых входов вне зависимости, не имеет смысла подключать какие-то расходомеры и т.д. так как импульсы могут приходить во время цикла программы, соответственно будут пропущены.
Ну почему, любые механические счётчики с выходом-герконом. Там частота не более чем 0,5 гц (по паспорту) и эти импульсы нормально обрабатываются даже в почти полностью загруженной программе.
по инструкции расходомера прошолся наискось и скорее всего
название то есть у него?
Urfin_Dzhyus
30.11.2023, 13:21
Здравствуйте, товарищи, трбуется ваша помощь. Что бы дрыгать ногами ПР решил использовать битовую маску, число описывающее состояние выходов выбираю при помощи селекторов SEL, где одна константа 0-все выходы 0 и 255-все выходы 1, да вот только не могу подключить выходы с селекторв ко входу маски, не переменными, не линиями, ОЛ матерится. Подобную схему собирал начиная с логических микросхем, продолжая на ардуинке и заканчивая SMLogic. Что не так то, как после такого жить то?!о_0
72016
Здравствуйте, товарищи, трбуется ваша помощь. Что бы дрыгать ногами ПР решил использовать битовую маску, число описывающее состояние выходов выбираю при помощи селекторов SEL, где одна константа 0-все выходы 0 и 255-все выходы 1, да вот только не могу подключить выходы с селекторв ко входу маски, не переменными, не линиями, ОЛ матерится. Подобную схему собирал начиная с логических микросхем, продолжая на ардуинке и заканчивая SMLogic. Что не так то, как после такого жить то?!о_0
72016
А при чем тут мультиплексор?:o
Вы пытаетесь одну и туже переменную прицепить к двум разным выходам, вот он и ругается.
Urfin_Dzhyus
30.11.2023, 13:44
А при чем тут мультиплексор?:o
Вы пытаетесь одну и туже переменную прицепить к двум разным выходам, вот он и ругается.
Сергей, вы всей поляны не видели, чего там только нет от безисходности. Вопрос, как подключить?
поставить еще один SEL
з.ы. Ну нет тут такого как в CodeSys где на поле можно в одну переменную писать несколько раз и тем самым сделать IF-ы
Urfin_Dzhyus
30.11.2023, 14:00
поставить еще один SEL
з.ы. Ну нет тут такого как в CodeSys где на поле можно в одну переменную писать несколько раз и тем самым сделать IF-ы
А подробнее можно, что то типа скрина, а то недовтыкаю от перегрева.
Здравствуйте, товарищи, трбуется ваша помощь. Что бы дрыгать ногами ПР решил использовать битовую маску, число описывающее состояние выходов выбираю при помощи селекторов SEL, где одна константа 0-все выходы 0 и 255-все выходы 1, да вот только не могу подключить выходы с селекторв ко входу маски, не переменными, не линиями, ОЛ матерится. Подобную схему собирал начиная с логических микросхем, продолжая на ардуинке и заканчивая SMLogic. Что не так то, как после такого жить то?!о_0
72016
Вот нифига не понял, в чем проблема
72017
Urfin_Dzhyus а воткнуться в обрезок вашего скрина думаете просто? :)
Просто принять... и простить :) переменную в ОЛ можно записать только дин раз, отсюда и отталкиваться, как писать программу.
Urfin_Dzhyus
30.11.2023, 16:14
Urfin_Dzhyus а воткнуться в обрезок вашего скрина думаете просто? :)
Просто принять... и простить :) переменную в ОЛ можно записать только дин раз, отсюда и отталкиваться, как писать программу.
Вы садист, но спасибо что хть дали намёк вскакую сторону смотреть, не могли скаать что селекторы надо каскадом расположить, но вы же садист:D
Вы садист, но спасибо что хть дали намёк вскакую сторону смотреть, не могли скаать что селекторы надо каскадом расположить, но вы же садист:D
Однако это как посмотреть.:D
Прочтите свое сообщение со скрином, как бы со стороны, и попробуйте понять.:D
Ага, высшая форма садизма просто, это потому, что наверное не экстрасенс
Urfin_Dzhyus
30.11.2023, 18:07
Ага, высшая форма садизма просто, это потому, что наверное не экстрасенс ��
Вот только не надо ля-ля, педагог вы наш, вы то сразу воткнули, да и любой, кто боль-мень имел дело с ОЛ всё понял, это наверное один из самых первых пендалей для новичков, писать в одну переменную:D Спасибо:o
Одну эту переменную на скрине бы и показали, к чему так много информации?
Вот только не надо ля-ля, педагог вы наш, вы то сразу воткнули, да и любой, кто боль-мень имел дело с ОЛ всё понял, это наверное один из самых первых пендалей для новичков, писать в одну переменную:D Спасибо:o
А у Сегнетика, что можно писать в одну переменную из нескольких мест?
Ruslanadm
30.11.2023, 23:36
А у Сегнетика, что можно писать в одну переменную из нескольких мест?
Там есть мультиплексоры в стандартных блоках.
А вот что-то наподобие SelChgF нет.
И нет линий задержки, значит концепция написания такого макроса будет другой.
Скорее всего, через D-триггер (REG), в котором реализуется функция так называемой "защелки".
Urfin_Dzhyus
01.12.2023, 09:30
А у Сегнетика, что можно писать в одну переменную из нескольких мест?
Там есть незадекларированная особенность, либо через задержку, либо через пустой макрос, точно не помню, не заходил 7лет.
Urfin_Dzhyus
01.12.2023, 09:31
Там есть мультиплексоры в стандартных блоках.
А вот что-то наподобие SelChgF нет.
И нет линий задержки, значит концепция написания такого макроса будет другой.
Скорее всего, через D-триггер (REG), в котором реализуется функция так называемой "защелки".
Линия задержки у них была, это точно.
Ruslanadm
01.12.2023, 17:43
Urfin_Dzhyus, я все время считал, что линия задержки - это "фишка" только лоджика.
Так сказать, компромисс конфликта порядка обработки блоков. В других IDE (средах разработки) я такого не встречал.
В SMLogix с этим конфликтом например, борятся совершенно другим образом.
Если вы мне покажете, где там действительно есть линии задержки, я буду только рад.
Если нас конечно раньше не забанят за оффтоп, потому что мы уже достаточно много наговорили не по теме Овена :)
Urfin_Dzhyus, я все время считал, что линия задержки - это "фишка" только лоджика.
Так сказать, компромисс конфликта порядка обработки блоков. В других IDE (средах разработки) я такого не встречал.
В SMLogix с этим конфликтом например, борятся совершенно другим образом.
Если вы мне покажете, где там действительно есть линии задержки, я буду только рад.
Если нас конечно раньше не забанят за оффтоп, потому что мы уже достаточно много наговорили не по теме Овена :)
Это жёлтые связи, проведённые в порядке, обратном нумерации блоков (от большего блока к меньшему)
Ruslanadm
01.12.2023, 19:29
Век живи, век учись. А в справке об этом ни слова. Впрочем, я уже не удивляюсь этим товарищам, у них такое сплошь и рядом.
Надо отметить, что как ни ругают Овен, а с таким у них полный порядок, в руководствах практически всегда все отражено.
Спасибо.
В Logo тоже есть аналог, но он вам вообще не даст создать связь без установки маркера. Он выполняет ту же функцию, что и линия задержки в ОЛ.
Век живи, век учись. А в справке об этом ни слова. Впрочем, я уже не удивляюсь этим товарищам, у них такое сплошь и рядом.
Надо отметить, что как ни ругают Овен, а с таким у них полный порядок, в руководствах практически всегда все отражено.
Спасибо.
Там этот эффект описан под термином "иголки"
Urfin_Dzhyus
04.12.2023, 11:50
Urfin_Dzhyus, я все время считал, что линия задержки - это "фишка" только лоджика.
Так сказать, компромисс конфликта порядка обработки блоков. В других IDE (средах разработки) я такого не встречал.
В SMLogix с этим конфликтом например, борятся совершенно другим образом.
Если вы мне покажете, где там действительно есть линии задержки, я буду только рад.
Если нас конечно раньше не забанят за оффтоп, потому что мы уже достаточно много наговорили не по теме Овена :)
Руслан, на выходных я специально установил SM, что бы освежить свою память, а то я свом выкриком, сделанным в состоянии аффекта, поднял волну флуда в ветка. По этому поясняю:
1. В СМ, так же как и в большенстве подобных программ, нельзя писать в одну переменную.
2. СМ, как было уже сказанно, автоматически определяет обратную связь, подсвечивает её жёлтым в знак того, что эта связь будет доступна в следующем цикле программы. В СМ, линия задержки просто физически не нужна. Я думаю и в ОЛ откажутся от этой "фичи" дописав алгоритм.
3.То что я называл линией задержки в СМ, это был закольцованный арифметический блок и использовался массив таких блоков для сохранения именных связей от потери при удалении блоков, внешне похожих на переменные в ОЛ, отсюда и мой выкрик.
Надеюсь я объяснился, и на этом прекратим флуд. Прошу извинения у всех, чьи чувства были затронуты. Искренне Ваш, Урфин.:p
Я думаю и в ОЛ откажутся от этой "фичи" дописав алгоритм.
Эта фича бывает полезна когда надо поставить линию задержки принудительно или не там где хочет компилятор. Так что отказываться от не надо
Эта фича бывает полезна когда надо поставить линию задержки принудительно или не там где хочет компилятор. Так что отказываться от не надо Именно! Например, если у меня в макроса импульсного реле ВНУТРИ логики сначала должен быть сигнал Save, а потом Reset (в том случае, если на вход импульсного реле их подадут одновременно), то я специально поставлю на Reset внутри макроса, и всё будет отлично работать.
Именно! Например, если у меня в макроса импульсного реле ВНУТРИ логики сначала должен быть сигнал Save, а потом Reset (в том случае, если на вход импульсного реле их подадут одновременно), то я специально поставлю на Reset внутри макроса, и всё будет отлично работать.
Интересно, если снаружи макроса на ресет тоже подать сигнал через линию задержки, что выдаст в итоге компилятор?
Интересно, если снаружи макроса на ресет тоже подать сигнал через линию задержки, что выдаст в итоге компилятор? Ничего. Просто будет задержка ещё на один такт =)
Сергей0308
04.12.2023, 14:26
Я такое заметил, может совпадение(не злой умысел): когда важно где поставить линию задержки, я приводил примеры на форуме, почему-то ОЛ хочет поставить ЛЗ именно в том месте, где её нельзя ставить! В таком случае, если ОЛ будет решать где поставить ЛЗ, нарушится логика работы алгоритма!
Я такое заметил, может совпадение(не злой умысел): когда важно где поставить линию задержки, я приводил примеры на форуме, почему-то ОЛ хочет поставить ЛЗ именно в том месте, где её нельзя ставить! Ага. Я думаю, что это связано со следующим: OWL проверяет схему сверху вниз и, когда понимает что есть зацикливание, предлагает его ставить всегда в "конце" проверок - внизу схемы.
Urfin_Dzhyus
05.12.2023, 08:58
Товарищи старожилы, объяснити пожалса, как это работает. Эксперементирую с простеньким секвенсором, несколько пар таймеров, пауза–работа. Всё идёт хорошо, пока значения времени записываю в блочки напрямую, если же делаю это через блоки записи, то всё идёт плохо, вернее не идёт совсем.
72125
Сергей0308
05.12.2023, 09:14
Товарищи старожилы, объяснити пожалса, как это работает. Эксперементирую с простеньким секвенсором, несколько пар таймеров, пауза–работа. Всё идёт хорошо, пока значения времени записываю в блочки напрямую, если же делаю это через блоки записи, то всё идёт плохо, вернее не идёт совсем.
72125
У Вас все таймеры работают последовательно, я бы предпочёл иметь один таймер на весь колхоз!
Время через блок записи в ФБ задаётся в миллисекундах.
И, здесь ясновидящих нет, в смысле, что Вы там натворили, надо проект прилагать, если конечно разобраться хотите!
Мне кажется для вашего случая хватило бы регистра сдвига на 8 разрядов, использовать через один, промежуточный разряд использовать для задания паузы, всё!
Urfin_Dzhyus Write_To_FB пишет в миллисекундах, не забыли?
Urfin_Dzhyus
05.12.2023, 10:18
Urfin_Dzhyus Write_To_FB пишет в миллисекундах, не забыли?
Забыл.Плохо, когда не знаешь, да ещё забудешь.
Urfin_Dzhyus
05.12.2023, 10:21
У Вас все таймеры работают последовательно, я бы предпочёл иметь один таймер на весь колхоз!
Время через блок записи в ФБ задаётся в миллисекундах.
И, здесь ясновидящих нет, в смысле, что Вы там натворили, надо проект прилагать, если конечно разобраться хотите!
Мне кажется для вашего случая хватило бы регистра сдвига на 8 разрядов, использовать через один, промежуточный разряд использовать для задания паузы, всё!
Спасибо за идею, попробую по разному.
Сергей0308
05.12.2023, 15:46
Спасибо за идею, попробую по разному.
Вот ещё один вариант могу предложить, в смысле выполнения вашего алгоритма:
72150
72156
Может кто лучше сделает, в смысле, сделал из того что первое под руку попалось!
Вот ещё зациклил процесс, теперь будет моргать пока не остановите процесс. Процесс останавливается только по завершению текущего цикла.
72157
72158
Типа чтобы счётчик зря не пропадал, специально для таких целей делал!
Можно сделать что с одной кнопки будет запускаться на один цикл работы алгоритма, а с другой будет мигать пока не выключишь, короче, типа как-то так:
72199
72200
В смысле, можно как угодно сделать!
Urfin_Dzhyus
07.12.2023, 14:33
Вот ещё один вариант могу предложить, в смысле выполнения вашего алгоритма:
72150
72156
Может кто лучше сделает, в смысле, сделал из того что первое под руку попалось!
Вот ещё зациклил процесс, теперь будет моргать пока не остановите процесс. Процесс останавливается только по завершению текущего цикла.
72157
72158
Типа чтобы счётчик зря не пропадал, специально для таких целей делал!
Можно сделать что с одной кнопки будет запускаться на один цикл работы алгоритма, а с другой будет мигать пока не выключишь, короче, типа как-то так:
72199
72200
В смысле, можно как угодно сделать!
Спасибо, Сергей. Вот, как у меня получилось. Это основной рабочий алгоритм, дорисую и выложу, для конструктивной критики).
72204
Сергей0308
07.12.2023, 15:00
Спасибо, Сергей. Вот, как у меня получилось. Это основной рабочий алгоритм, дорисую и выложу, для конструктивной критики).
72204
Мне кажется сильно переусложнено! Второй мультиплексор не нужен, вместо него можно дешифратор поставить или функцию записи бита!
Короче , если Вам нужно(хочется) 8 выходами моргать все мои проекты, что постом выше выкладывал, легко расширяются до 32 выходов включительно практически без переделки или с минимальными переделками!
Если честно, то я уже не знаю чего Вы хотите натворить!
Urfin_Dzhyus
07.12.2023, 15:41
Мне кажется сильно переусложнено! Второй мультиплексор не нужен, вместо него можно дешифратор поставить или функцию записи бита!
Короче , если Вам нужно(хочется) 8 выходами моргать все мои проекты, что постом выше выкладывал, легко расширяются до 32 выходов включительно практически без переделки или с минимальными переделками!
Если честно, то я уже не знаю чего Вы хотите натворить!
Это секвенсор, командоапарат, кулачковый программатор, такой блок в любом лоджике должен быть по умолчанию, при его помощи решаются многие задачи по автоматизации, начиная со стиральной машины и коффеавтомата, таймера промывки молокоохладителя и дойки...А я на будущее делаю мозги для водоподготовки, если старые издохнут. Восемь ног в аккурат, шесть клапанов, насос декарбонизированной воды и насос кислоты, четыре шага программы. Мультиплексоры обрежу в дальнейшем, сейчас эксперементирую. Осталось прикрутить пид регулятор, по которому у меня бдут в дальнейшем вопрсы, несколько показометров расхода и СП300, которую никогда не программировал, но думаю подключившись к коллективному интилекту и покурив форум освою. Ваши же блоки рассмотрю под микроскопом, в образовательных целях, спасибо вам, что делетесь опытом.
Сергей0308
07.12.2023, 16:05
Это секвенсор, командоапарат, кулачковый программатор, такой блок в любом лоджике должен быть по умолчанию, при его помощи решаются многие задачи по автоматизации, начиная со стиральной машины и коффеавтомата, таймера промывки молокоохладителя и дойки...А я на будущее делаю мозги для водоподготовки, если старые издохнут. Восемь ног в аккурат, шесть клапанов, насос декарбонизированной воды и насос кислоты, четыре шага программы. Мультиплексоры обрежу в дальнейшем, сейчас эксперементирую. Осталось прикрутить пид регулятор, по которому у меня бдут в дальнейшем вопрсы, несколько показометров расхода и СП300, которую никогда не программировал, но думаю подключившись к коллективному интилекту и покурив форум освою. Ваши же блоки рассмотрю под микроскопом, в образовательных целях, спасибо вам, что делетесь опытом.
Тогда совсем Вы меня запутали, в смысле, чем мои варианты не подходят?
И мне кажется для универсальности должна быть предусмотрена и возможность параллейного включения(работы) выходов!
В смысле, подобные темы много раз уже обсуждались на форуме.
И, ранее делал командоаппарат реального времени с маской недели на 32 команды 8 канальный: https://owen.ru/forum/showthread.php?t=23201&page=16
Здесь особенность в гибкости настроек, в смысле, любую из 32 уставок можно использовать для включения(выключения) любого из 8 выходов(каналов), тоесть уставки не привязаны к конкретному выходу(каналу) и можно их оперативно менять, например как у меня с помощью экрана ПР200!
Мне кажется, Вы что-то подобное хотите, только уставки привязаны к времени таймера, а не часам реального времени!
Здесь подобный выкладывал в посте #18: https://owen.ru/forum/showthread.php?t=34975&page=2&p=358595&highlight=%CA%EE%EC%E0%ED%E4%EE%E0%EF%EF%E0%F0%E0% F2%20%F0%E5%E0%EB%FC%ED%EE%E3%EE%20%E2%F0%E5%EC%E5 %ED%E8%20%EA%EE%EC%E0%ED%E4%FB#post358595
И, если Вас интересует и прямой(обратный) отсчёт времени, вот здесь таймер выкладывал:
https://owen.ru/forum/showthread.php?t=33720&page=17
В том же посте(проекте) находится макрос преобразования секунд в дни, часы, минуты и секунды!
Urfin_Dzhyus
07.12.2023, 22:14
Тогда совсем Вы меня запутали, в смысле, чем мои варианты не подходят?
И мне кажется для универсальности должна быть предусмотрена и возможность параллейного включения(работы) выходов!
В смысле, подобные темы много раз уже обсуждались на форуме.
И, ранее делал командоаппарат реального времени с маской недели на 32 команды 8 канальный: https://owen.ru/forum/showthread.php?t=23201&page=16
В смысле, мне кажется Вы что-то подобное хотите, только уставки привязаны к времени таймера, а не часам реального времени!
Здесь подобный выкладывал в посте #18: https://owen.ru/forum/showthread.php?t=34975&page=2&p=358595&highlight=%CA%EE%EC%E0%ED%E4%EE%E0%EF%EF%E0%F0%E0% F2%20%F0%E5%E0%EB%FC%ED%EE%E3%EE%20%E2%F0%E5%EC%E5 %ED%E8%20%EA%EE%EC%E0%ED%E4%FB#post358595
Ваши программы просто великолепны и изящны, но я сам хочу научиться программировать, а ваши блоки служат мне наглядным пособием, потестчу, разберу, почешу репу, а уж потом что то соберу. Не люблю использовать того, чего я не понимаю и для начала доведу свою гаргарушку до ума, что бы было что то в загашнике на крайний случай, а эксперименты погодя, хорошо что время не ограничено.:)
Urfin_Dzhyus
13.12.2023, 15:10
Сергей0308, здравствуйте. Не подскажите, для чего на вашем таймере предназначенны выходы TP и TON, Попрбовал ваш командоаппарат и тепрь хочу сделать так, что бы он работал не в цикле, а возваращался в ожидание, отработав заданное количество шагов.
72355
Сергей0308
13.12.2023, 15:25
Сергей0308, здравствуйте. Не подскажите, для чего на вашем таймере предназначенны выходы TP и TON, Попрбовал ваш командоаппарат и тепрь хочу сделать так, что бы он работал не в цикле, а возваращался в ожидание, отработав заданное количество шагов.
72355
В библиотеке ОЛ есть разные таймеры, например таймер с задержкой включения или импульс включения заданной длительности, чтобы несколько макросов не делать решил одному приделать выходы от разных таймеров, как говорится для универсальности, соответственно выходы соответствуют логике работы этих таймеров, что я написал, мне кажется они чаще других встречаются в алгоритмах! Конечно со своей спецификой, в смысле, с возможностью задания паузы отсчёта таймера, затем продолжения процесса отсчёта!
И я ссылку давал, где выкладывал этот макрос, там два проекта, в первом(верхнем) таймер не зациклен.
https://owen.ru/forum/showthread.php?t=33720&page=17
Urfin_Dzhyus
13.12.2023, 16:05
В библиотеке ОЛ есть разные таймеры, например таймер с задержкой включения или импульс включения заданной длительности, чтобы несколько макросов не делать решил одному приделать выходы от разных таймеров, как говорится для универсальности, соответственно выходы соответствуют логике работы этих таймеров, что я написал, мне кажется они чаще других встречаются в алгоритмах! Конечно со своей спецификой, в смысле, с возможностью задания паузы отсчёта таймера, затем продолжения процесса отсчёта!
И я ссылку давал, где выкладывал этот макрос, там два проекта, в первом(верхнем) таймер не зациклен.
https://owen.ru/forum/showthread.php?t=33720&page=17
Спасибо за ответ, понял.
Urfin_Dzhyus
20.12.2023, 23:09
Товарищи, не поможете, голову сломал не могу сделать триггер, вроде всё просто, да не тут то было. Три входа, три соответствующих входам выхода и ресет. При подаче на произвольный вход единицы открывается соответствующий выход, при этом блокируются все остальные входы до подачи единицы на ресет, который обнуляет и выход, разблокируя входы. Вообщем, алгоритм "один из трёх".
Сергей0308
20.12.2023, 23:39
Товарищи, не поможете, голову сломал не могу сделать триггер, вроде всё просто, да не тут то было. Три входа, три соответствующих входам выхода и ресет. При подаче на произвольный вход единицы открывается соответствующий выход, при этом блокируются все остальные входы до подачи единицы на ресет, который обнуляет и выход, разблокируя входы. Вообщем, алгоритм "один из трёх".
Типа, кто первый встал, того и тапки?
Вроде, как уже была подобная тема:
https://owen.ru/forum/showthread.php?t=33123
Правда на 8 кнопок(легко расширяется до 32):
72520
Тут уж извини, не подгадал!
Ещё здесь подобная тема всплывала, но там логика немного отличается от той, что Вы хотели:
https://owen.ru/forum/showthread.php?t=26216&page=146&highlight=%EA%F2%EE+%EF%E5%F0%E2%FB%E9+%E2%F1%F2%E 0%EB%2C+%F2%EE%E3%EE+%F2%E0%EF%EA%E8
Urfin_Dzhyus в ОЛ есть D-Trigger, почитайте внимательно что делают входы в справке.
Поставив таких 3 штуки параллельно думаю разберетесь, как блокировать соседей...
kondor3000
21.12.2023, 08:31
Товарищи, не поможете, голову сломал не могу сделать триггер, вроде всё просто, да не тут то было. Три входа, три соответствующих входам выхода и ресет. При подаче на произвольный вход единицы открывается соответствующий выход, при этом блокируются все остальные входы до подачи единицы на ресет, который обнуляет и выход, разблокируя входы. Вообщем, алгоритм "один из трёх".
Вот независимый переключатель на 4 кнопки (без фиксации), кто то на форуме выкладывал, можно уменьшить, добавить сколько надо
Urfin_Dzhyus
21.12.2023, 11:59
Вот независимый переключатель на 4 кнопки (без фиксации), кто то на форуме выкладывал, можно уменьшить, добавить сколько надо
О существовании ST я узнал позавчера, но так будет ближе к тому, о чём я спршивал. К сожалению дальше не хватает понимания.
Примитивный вариант на D-Триггерах.
Сергей0308
21.12.2023, 12:16
О существовании ST я узнал позавчера, но так будет ближе к тому, о чём я спршивал. К сожалению дальше не хватает понимания.
Чем мой вариант не устраивает, что я предложил в #809 посте?
72532
Всё, как Вы хотели!
В смысле, алгоритм работы, количество кнопок можно как сократить, так и расширить до 32 с минимальными переделками!
kondor3000
21.12.2023, 13:10
О существовании ST я узнал позавчера, но так будет ближе к тому, о чём я спршивал. К сожалению дальше не хватает понимания.
Это ваша невнимательность, вам ещё в ноябре дал кучу ссылок на программы на ST
https://owen.ru/forum/showthread.php?t=12691&page=76#756
Urfin_Dzhyus
21.12.2023, 18:15
Чем мой вариант не устраивает, что я предложил в #809 посте?
72532
Всё, как Вы хотели!
В смысле, алгоритм работы, количество кнопок можно как сократить, так и расширить до 32 с минимальными переделками!
Сергей, прошу прощения, но у меня сложилось стойкое впечатление, что вашего поста не было, а сразу был ответ от melky. Спасибо за блок, оставлю его на вырост, побитовая логика мне как начинающему пока не по зубам, но как учебное пособие, самое то.
Urfin_Dzhyus
21.12.2023, 18:26
Примитивный вариант на D-Триггерах.
Спасибо за наводку, а то я как зашоренный зациклился на RS и SR, как будто ничего кроме них нет. Блок прост и изящен, примерно в том направлении я и думал, но что бы использовать вход сет который практически не используется в радиолюбительских поделках я бы не допёр никогда, мысли вертелись вокруг входов дат и клок, и как я вижу сильно усложнили бы конструкцию. Спасибо.
Urfin_Dzhyus
21.12.2023, 18:56
Это ваша невнимательность, вам ещё в ноябре дал кучу ссылок на программы на ST
https://owen.ru/forum/showthread.php?t=12691&page=76#756
Приношу свои извинения, что не перешёл по вашим ссылкам, но я себя как программиста не рассматриваю, не тот склад мышления. Позавчера по случайности скачал блок "шаг", я даже не знал что попал в ветку ST, открыл его и после того как справился с приступом головокружения и тошноты, когда все эти мелкие козявки вернулись на свои места и прочёл надписи на человеческом языке, приглядевшись увидел там всё те же функциональные блоки. Таймер, преобразователь секунд в милисекунды, мультиплексор в "кейсе", всякую математику, только все эти блоки были нарисованы не линиями в виде квадратиков, а бессмысленными буквицами, закорючками и циферками. Ну, подправил там что мне надо и вышло то, что я при помощи Сергей0308 рисовал последнее время, вот только то, что у меня не влезало в диагональ монитора, уместилось в нескольких коротких строчках. Магия, мля! Щур, Щур меня!!!;):D
Urfin_Dzhyus кстати в теме, на которую дал ссылку Сергей308 тоже был вариант на Д-триггерах, где их включение было организовано через Д и С входы.
Так бы было по радиолюбительски? :)
Urfin_Dzhyus
21.12.2023, 20:02
Urfin_Dzhyus кстати в теме, на которую дал ссылку Сергей308 тоже был вариант на Д-триггерах, где их включение было организовано через Д и С входы.
Так бы было по радиолюбительски? :)
Определённо!:D
Urfin_Dzhyus
21.12.2023, 21:17
Urfin_Dzhyus кстати в теме, на которую дал ссылку Сергей308 тоже был вариант на Д-триггерах, где их включение было организовано через Д и С входы.
Так бы было по радиолюбительски? :)
Вы определённо надомной подтруниваете, а это не педагогично. Ради интереса пошёл посмотреть на сколько по радиолюбительски реализован блок, но увы и ах, в той литирации которую предложил Незнайка, блок работает по принципу "передай другому", как в блоке от kondor3000, а мне надо, как сказал Сергей "кто первый встал, того и тапки", но именно об этой схеме я и думал, вот допилил.
Заменил.
Выкладывайте так же и картинками. А то обновляться страшно :)..
вот за то, что нельзя открывать чуть более ранней версией программы разработчикам неуд по жизни...
kondor3000
21.12.2023, 21:55
Ну, подправил там что мне надо и вышло то, что я при помощи Сергей0308 рисовал последнее время, вот только то, что у меня не влезало в диагональ монитора, уместилось в нескольких коротких строчках. Магия, мля! Щур, Щур меня!!!;):D
Всего чуть подправить код и всё как вы хотели )
Сергей0308
21.12.2023, 22:12
Вы определённо надомной подтруниваете, а это не педагогично. Ради интереса пошёл посмотреть на сколько по радиолюбительски реализован блок, но увы и ах, в той литирации которую предложил Незнайка, блок работает по принципу "передай другому", как в блоке от kondor3000, а мне надо, как сказал Сергей "кто первый встал, того и тапки", но именно об этой схеме я и думал, вот допилил.
Для счётных входов Д-триггера не нужен детектор переднего фронта, он и так работает по фронту сигнала!
kondor3000 and x=0 and x<>1 - тут явно <> абсолютно лишнее, если X = 0, то он точно никогда не будет равен ни 1, ни 2, ни 4
kondor3000
21.12.2023, 22:22
and x=0 and x<>1 - тут явно <> абсолютно лишнее, если X = 0, то он точно никогда не будет равен ни 1, ни 2, ни 4
Уже исправлено, не то выложил.
Urfin_Dzhyus
21.12.2023, 22:53
Всего чуть подправить код и всё как вы хотели )
Спасибо, очень интересно взглянуть, как это делается правильно. Почему меня не обругал редактор, ведь я откровенно рукопопил?
kondor3000
22.12.2023, 13:20
Спасибо, очень интересно взглянуть, как это делается правильно. Почему меня не обругал редактор, ведь я откровенно рукопопил?
Вы сделали сброс и не сделали ошибок, вот он и не ругался, другое дело, что работало немного не так как надо. В последней версии уже как надо.
Urfin_Dzhyus
18.06.2024, 14:07
Товарищи, подскажите. Решил опробовать вот этот ПИД:
https://owen.ru/forum/showthread.php?t=17974&p=434007&viewfull=1#post434007
Записываю в него уставки с СП310, и в общем всё работает, да только что бы новые уставки записались в блок надо перезагрузить контроллер. В чём проблема, что делаю не так?
76690
Товарищи, подскажите. Решил опробовать вот этот ПИД:
https://owen.ru/forum/showthread.php?t=17974&p=434007&viewfull=1#post434007
Записываю в него уставки с СП310, и в общем всё работает, да только что бы новые уставки записались в блок надо перезагрузить контроллер. В чём проблема, что делаю не так?
76690
попробуйте перезагрузить пид-регулятор по входу Е. Обычно так с другими помогает.
Armorgan
01.11.2024, 17:44
Подскажите а каким образом замедлить его работу?
Armorgan
01.11.2024, 18:14
Подскажите а каким образом замедлить его работу?
kondor3000
01.11.2024, 18:14
Подскажите а каким образом замедлить его работу?
Чью работу замедлить?
Чью работу замедлить?
Его ;) .
https://yandex.ru/video/touch/preview/7033968395032378037
.............
Traveller
13.11.2024, 13:34
Ничего не понимаю!
Есть такой макрос от самого Овена, AVG, вычисление среднего арифметического чисел поступающих на вход, с одной стороны если числа поступают не спеша, примерно раз в 10 сек., то все как бы работает, но если я их туда запихиваю с частотой примерно 3 гц. (а это важно для проекта), то на выходе пишет: "Не число"!
Причем кол-во подсчетов я делал разным, хоть 10, хоть 100, результат одинаковый, и да, числа поступают в диапазоне от 72,00 до 144,00, хотя по моему это не имеет значения и при этом время цикла программы не превышает 2-х мсек.
Что я делаю не так?
https://owen.ru/forum/attachment.php?attachmentid=80020&stc=1&d=1731493276
Ничего не понимаю!
Есть такой макрос от самого Овена, AVG, вычисление среднего арифметического чисел поступающих на вход, с одной стороны если числа поступают не спеша, примерно раз в 10 сек., то все как бы работает, но если я их туда запихиваю с частотой примерно 3 гц. (а это важно для проекта), то на выходе пишет: "Не число"!
Причем кол-во подсчетов я делал разным, хоть 10, хоть 100, результат одинаковый, и да, числа поступают в диапазоне от 72,00 до 144,00, хотя по моему это не имеет значения и при этом время цикла программы не превышает 2-х мсек.
Что я делаю не так?
https://owen.ru/forum/attachment.php?attachmentid=80020&stc=1&d=1731493276
Там внутри макроса ФБ SEL_FLOAT с какими-то древними блоками. После замены элементов TO_FLOAT на современные должно заработать
Traveller
13.11.2024, 14:43
Там внутри макроса ФБ SEL_FLOAT с какими-то древними блоками. После замены элементов TO_FLOAT на современные должно заработатьПоменял все, и во вложенных тоже поменял, пока ничего не поменялось, все равно "Не число"...
Поменял все, и во вложенных тоже поменял, пока ничего не поменялось, все равно "Не число"...
Замените вообще SEL_FLOAT на fSEL
kondor3000
13.11.2024, 14:55
Сам блок AVG вычисляет Т цикла около 1 секунды, его нельзя включать сразу, только с задержкой на 2-3 секунды.
Traveller
13.11.2024, 15:07
Сам блок AVG вычисляет Т цикла около 0.5 секунд, его нельзя включать сразу, только с задержкой на секунду.Да, наверное так и есть, придется увеличивать дискретность входящих данных, завтра проверю...
kondor3000
13.11.2024, 15:11
Да, наверное так и есть, придется увеличивать дискретность входящих данных, завтра проверю...
Даже на 2 секунды нужна задержка 80025
У меня изменение входа 5 раз в секунду.
А может попробовать другой вариант AVG:
80026
я делал как-то AVG который делил на количество принятых переменных. Не помню, чтобы у меня в не число улетало.
kondor3000
13.11.2024, 20:11
Вот фильтр EMA, экспоненциальное скользящее среднее 80035
Traveller
14.11.2024, 09:13
Даже на 2 секунды нужна задержка 80025
У меня изменение входа 5 раз в секунду.Данный вариант не заработал!
80037
А может попробовать другой вариант AVG:
80026Повторил, все заработало!
Огромное человеческое спасибо!!! :)
80038
Всем доброго времени суток!
Подскажите пожалуйста, может есть макрос запоминания int энергонезависимый, чтобы при отключении питания ПР и последующем включении сохранялось значение int?
Сергей0308
08.12.2024, 05:21
Всем доброго времени суток!
Подскажите пожалуйста, может есть макрос запоминания int энергонезависимый, чтобы при отключении питания ПР и последующем включении сохранялось значение int?
Вот матрица памяти на 32 ячейки:
80613
Даже непонятно какие у вас могут быть проблемы, в смысле, у меня с этим никогда проблем не возникало!
Может ваше ПР не имеет энергонезависимой памяти, если у вас ПР110, то ничего не поделаешь, в смысле, придётся брать ПР с наличием энергонезависимой памяти, то есть любое другое, такие несколько десятилетий выпускают!
kondor3000
08.12.2024, 10:44
Всем доброго времени суток!
Подскажите пожалуйста, может есть макрос запоминания int энергонезависимый, чтобы при отключении питания ПР и последующем включении сохранялось значение int?
Вот несколько вариантов запоминания переменной и инициализации при включении ПР.80619
Обычные переменные энергонезависимые
1) Простой вариант
2) Инициализация из константы
3) Инициализация сетевой переменной
Вот матрица памяти на 32 ячейки:
80613
Даже непонятно какие у вас могут быть проблемы, в смысле, у меня с этим никогда проблем не возникало!
Может ваше ПР не имеет энергонезависимой памяти, если у вас ПР110, то ничего не поделаешь, в смысле, придётся брать ПР с наличием энергонезависимой памяти, то есть любое другое, такие несколько десятилетий выпускают!
Я как раз его и пытался использовать, но идет несоответствие входных и выходных значений, на скринах видно.806248062580626
Это время в мс.
Вот несколько вариантов запоминания переменной и инициализации при включении ПР.80619
Обычные переменные энергонезависимые
1) Простой вариант
2) Инициализация из константы
3) Инициализация сетевой переменной
Блок SEL при отключении питания не запоминает...
kondor3000
08.12.2024, 14:57
Блок SEL при отключении питания не запоминает...
Блок не запоминает, запоминает значение энергонезависимая переменная. 80627
А это скрин ячейки блока памяти, найдите отличия)))
А не запоминает у вас, потому что запись не включили.
Сергей0308
08.12.2024, 15:56
Я как раз его и пытался использовать, но идет несоответствие входных и выходных значений, на скринах видно.806248062580626
Это время в мс.
Вы там пожалуйста без извращений, в смысле, что запишете(запись по уровню сигнала "1" на соответствующем входе) в ячейку, то там и будет, ячеек 32(0-31), два независимых выхода для чтения(вывода) данных из ячеек памяти:
80628
80629
И, Вы так и не написали какое у Вас ПР, название у него есть?
В смысле, может у вашего ПР нет энергонезависимой памяти, тогда программно это не поправишь!
И, Вы так и не написали какое у Вас ПР, название у него есть?
В смысле, может у вашего ПР нет энергонезависимой памяти, тогда программно это не поправишь![/QUOTE]
ПР102-230.2416.01
Может кто поможет? Имеется светодиодный светильник с драйвером, управление свечения (больше-меньше) на 12-24В. Управление происходит выключателем звонкового типа (кратковременное нажатие-включить/выключитб свет (запоминает последнее свечение), долгое нажатие - регулирует свечение больше/меньше. Проблема в том, что при отключении питания на драйвер (220В) и последующем включении, настройки пропадают. Надо сделать так, чтобы при отключении/подаче питания драйвера и ПР102 сохранялись настройки драйвера, т.е. чтобы ПР выводил свечение на на ту яркость, что была до отключения питания...
kondor3000
08.12.2024, 17:17
Может кто поможет? Имеется светодиодный светильник с драйвером, управление свечения (больше-меньше) на 12-24В. Управление происходит выключателем звонкового типа (кратковременное нажатие-включить/выключитб свет (запоминает последнее свечение), долгое нажатие - регулирует свечение больше/меньше. Проблема в том, что при отключении питания на драйвер (220В) и последующем включении, настройки пропадают. Надо сделать так, чтобы при отключении/подаче питания драйвера и ПР102 сохранялись настройки драйвера, т.е. чтобы ПР выводил свечение на на ту яркость, что была до отключения питания...
Так вы схему то выложите свою, чтобы понимать как у вас регулируется.
Сергей0308
08.12.2024, 17:36
Может кто поможет? Имеется светодиодный светильник с драйвером, управление свечения (больше-меньше) на 12-24В. Управление происходит выключателем звонкового типа (кратковременное нажатие-включить/выключитб свет (запоминает последнее свечение), долгое нажатие - регулирует свечение больше/меньше. Проблема в том, что при отключении питания на драйвер (220В) и последующем включении, настройки пропадают. Надо сделать так, чтобы при отключении/подаче питания драйвера и ПР102 сохранялись настройки драйвера, т.е. чтобы ПР выводил свечение на на ту яркость, что была до отключения питания...
Если у вас дискретное управление яркостью от ПР102, в смысле сигналами больше-меньше, то настройки яркости находятся в драйвере, а ПР в принципе здесь не причём!
Короче для энергонезависимости нужно чтобы управление яркостью было с аналогового выхода ПР, которого, как я понимаю нет у вашего ПР!
Вот это поворот!
https://www.youtube.com/watch?v=uB-02LymtgE
Так вы схему то выложите свою, чтобы понимать как у вас регулируется.
80631
Вот схема подключения.
Если у вас дискретное управление яркостью от ПР102, в смысле сигналами больше-меньше, то настройки яркости находятся в драйвере, а ПР в принципе здесь не причём!
Короче для энергонезависимости нужно чтобы управление яркостью было с аналогового выхода ПР, которого, как я понимаю нет у вашего ПР!
Вот это поворот!
https://www.youtube.com/watch?v=uB-02LymtgE
Сигналы больше-меньше условно, управляется дискретными выходами.
настройки яркости находятся в драйвере, а ПР в принципе здесь не причём!
https://www.youtube.com/watch?v=uB-02LymtgE[/QUOTE]
Говорю же, при отключении питания драйвера, настройки освещения слетают. Надо сделать так, чтобы ПР запоминал последнюю настройку и делал регулировку до этой самой последней настройки.
Сергей0308
08.12.2024, 18:17
настройки яркости находятся в драйвере, а ПР в принципе здесь не причём!
https://www.youtube.com/watch?v=uB-02LymtgE
Ранее Вы так не говорили, это уже второй поворот, в смысле, Вы говорили про энергонезависимость настройки яркости, а это совсем другое!
Короче, можно примерно так запомнить настройку яркости, в счётчике, только частоту генератора сделать максимально возможной, для точности:
80633
А управление драйвером от выходов ПР.
Конечно, всё это будет, через одно место, через которое часто в России делают, но видимо у Вас такая цель!
И, сигнал включения драйвера(подачи напряжения питания) нужен будет или ПР запитать параллейно драйверу.
80631
Вот схема подключения.
Попробуйте так и первое включение сделайте через кнопку ПР, а все остальные через "Выключатель".
TMRSet - сделайте энергонезависимой, ФБ должен запоминать время удержания кнопки BTN и повторить на выходе при сбросе питания на ПР.
80634
function_block TMRPush
var_input
BTN : bool;
RPT : bool;
TMRSet : udint;
end_var
var_output
TMRValue : udint;
Q : bool;
end_var
var
RT : SYS.RTRIG;
FT : SYS.FTRIG;
TS : time;
TMRRPT : SYS.TP;
end_var
TMRValue := TMRSet;
RT(I:=BTN); if RT.Q then TS := get_time(); end_if
FT(I:=BTN); if FT.Q then TMRValue := time_to_udint(get_time() - TS); end_if
TMRRPT(I:=RPT, T:= udint_to_time(TMRValue));
Q := BTN or TMRRPT.Q;
end_function_block
Сергей0308
08.12.2024, 19:05
80631
Вот схема подключения.
Посмотрел вашу схему, мне видится один реальный вариант, это подать сигнал(8-40В) с выхода драйвера на аналоговый вход ПР через делитель напряжения(не более 10В на выходе) и запоминать это значение, всё!
При включении ПР восстанавливать это значение с помощью дискретного выхода ПР!
Есть ПР102 с аналоговыми входами, вам придётся менять модификацию ПР102!
80637
Другие варианты - это несерьёзно, из области фантастики, мне так кажется!
Попробуйте так и первое включение сделайте через кнопку ПР, а все остальные через "Выключатель".
TMRSet - сделайте энергонезависимой, ФБ должен запоминать время удержания кнопки BTN и повторить на выходе при сбросе питания на ПР.
80634
function_block TMRPush
var_input
BTN : bool;
RPT : bool;
TMRSet : udint;
end_var
var_output
TMRValue : udint;
Q : bool;
end_var
var
RT : SYS.RTRIG;
FT : SYS.FTRIG;
TS : time;
TMRRPT : SYS.TP;
end_var
TMRValue := TMRSet;
RT(I:=BTN); if RT.Q then TS := get_time(); end_if
FT(I:=BTN); if FT.Q then TMRValue := time_to_udint(get_time() - TS); end_if
TMRRPT(I:=RPT, T:= udint_to_time(TMRValue));
Q := BTN or TMRRPT.Q;
end_function_block
СПАСИБО ОГРОМНЕЙШЕЕ!!! То, что надо!
Сергей0308
08.12.2024, 21:35
СПАСИБО ОГРОМНЕЙШЕЕ!!! То, что надо!
А как у вас яркость уменьшается, в смысле, насколько понял, при длительном нажатии яркость увеличивается до максимума затем уменьшается до минимума и так циклически, пока кнопка нажата или для изменения направления(с увеличения яркости на уменьшение и обратно) надо кнопку передёрнуть?
А как у вас яркость уменьшается, в смысле, насколько понял, при длительном нажатии яркость увеличивается до максимума затем уменьшается до минимума и так циклически, пока кнопка нажата или для изменения направления(с увеличения яркости на уменьшение и обратно) надо кнопку передёрнуть?
Нет, при нажатии более ~1 сек., увеличивается/уменьшается, пока держишь. Увеличение/уменьшение происходит не до макс/мин, а на столько, сколько держишь. От макс до мин 2500 мс. Уменьш/увел НЕ циклическое, а от упора до упора.
Нет, при нажатии более ~1 сек., увеличивается/уменьшается, пока держишь. Увеличение/уменьшение происходит не до макс/мин, а на столько, сколько держишь. От макс до мин 2500 мс. Уменьш/увел НЕ циклическое, а от упора до упора.
Т.е. вот так тоже было бы нормально?
80639
Сергей0308
09.12.2024, 15:20
Т.е. вот так тоже было бы нормально?
80639
Так ему же надо не на максимальную яркости включать, а на заданную, в смысле что была в момент выключения питания!
И, как я понимаю у кнопки(управляющего входа драйвера) несколько функций, в смысле, короткое нажатие, включает-выключает свет(работает как Т-триггер), а длинное нажатие увеличивает-уменьшает яркость, пока кнопка нажата, короче, я до конца ещё не разобрался как это всё работает, но и того что понял достаточно, чтобы понять, что будет очень проблематично сделать управление по времени нажатия на кнопку!
Я уже писал, как я бы сделал!
...все-таки не получилось с функц блоком(((...А можно ссылку на делитель напряжения?
kondor3000
10.12.2024, 08:30
...все-таки не получилось с функц блоком(((...А можно ссылку на делитель напряжения?
Какую ссылку, делитель это 2 резистора последовательно, например 47 КОм и 4,7 КОм, будет делить на 10,
на 47 КОм подаётся напряжение, делённое снимается со средней точки, второй конец 4,7 КОм подключается к минусу.
из 40 В получите 4 В,
из 8 В- 0,8 В
Какую ссылку, делитель это 2 резистора последовательно, например 47 КОм и 4,7 КОм, будет делить на 10,
на 47 КОм подаётся напряжение, делённое снимается со средней точки, второй конец 4,7 КОм подключается к минусу.
из 40 В получите 4 В,
из 8 В- 0,8 В
Я прекрасно знаю, что резисторами. Но как это будет выглядеть в шкафу? Мне надо культурно чтобы все выглядело, поэтому и спрашиваю, может есть какие блочки готовые...что-то наподобие этого:
Я прекрасно знаю, что резисторами. Но как это будет выглядеть в шкафу? Мне надо культурно чтобы все выглядело, поэтому и спрашиваю, может есть какие блочки готовые...что-то наподобие этого:
Ну так спаял, в термоусадку, бирку "ДЕЛИТЕЛЬ 1" , уложил внутрь короба. В схеме указал (написал предписание - уложить в кабель канал по месту). Все.
Такой вариант тоже возможен?
kondor3000
10.12.2024, 10:30
Я прекрасно знаю, что резисторами. Но как это будет выглядеть в шкафу? Мне надо культурно чтобы все выглядело, поэтому и спрашиваю, может есть какие блочки готовые...что-то наподобие этого:
У Овена есть такие готовые, но они для подключения 10 В, делят для получения 1 В. Резисторы там 2 КОм и 200 Ом, что слишком мало для 40 В.
Если их брать, то резисторы надо перепаивать.
https://owen.ru/product/rd10
Я прекрасно знаю, что резисторами. Но как это будет выглядеть в шкафу? Я беру трёхуровневые клеммы на DIN-рейку и ставлю резисторы или другие детали на них.
Вот пример делителя на резисторах для напряжения 230V.
80673 80674 80675
Добрый день!
Может кому-нибудь пригодятся макросы для изменения порядка байт.
Перестановка байт и перестановка слов.
Для переменных типа FLOAT и DWORD
Коллеги, есть датчик скорости воздушного протока с выходом 0 - 10 В. Каким макросом можно вывести на экран текущее значение потока? ПР200.
макрос не нужен ,перемычками на аналоговом входе выбираешь 0-10В,в свойствах задаешь начальное и конечное значение измерения
и выводишь значение на зкран
kondor3000
26.08.2025, 18:23
Добрый день!
Может кому-нибудь пригодятся макросы для изменения порядка байт.
Перестановка байт и перестановка слов.
Для переменных типа FLOAT и DWORD https://owen.ru/forum/showthread.php?t=12691&p=463443&viewfull=1#post463443
C целыми числами DWORD всё в порядке, а вот с FLOAT полная лажа, при конвертации просто обрезается всё после запятой и байты (регистры) переставляются в целом числе, получается фигня.
Реальная конвертация FLOAT_ 2WORD, перестановка байт и регистров и обратная конвертация 2WORD_FLOAT тут , без потери чисел после запятой
А также конвертация FLOAT_ DWORD, перестановка байт и регистров и обратная конвертация DWORD_FLOAT
https://owen.ru/forum/showthread.php?t=40405&p=450146&viewfull=1#post450146
Есть макрос - 2PosUPReg двухпозиционный. А есть ли трехпозиционный? То есть номинал, меньше, больше.
Есть макрос - 2PosUPReg двухпозиционный. А есть ли трехпозиционный? То есть номинал, меньше, больше.
Есть!!!
85722
Есть!!!
85722
Работать не будет
На выходе 2PosUPReg всегда присутствует один из сигналов U или P
85726
Сергей0308
12.09.2025, 15:41
Так вроде добавили ПИД-регулятор с управлением больше - меньше для ПР205 и выше!
Для более старых ПР ищите в менеджере компонентов, кстати они подойдут и для новых ПР!
Есть макрос - 2PosUPReg двухпозиционный. А есть ли трехпозиционный? То есть номинал, меньше, больше.
Если нужен именно с гистерезисом, то можно так
85729
Так вроде добавили ПИД-регулятор с управлением больше - меньше для ПР205 и выше!
Для более старых ПР ищите в менеджере компонентов, кстати они подойдут и для новых ПР!
Для "старых" ПР в компонентах нет такого ПИД - там только "аналоговые".
А для ПР205 на основе новой прошивки недавно добавили несколько обёрточных макросов - похоже довольно удобных.
Делал как-то ПИД для управления КЗР с трёхпозиционным регулированием.
Возьмите из эмулятора, там чуть исправленный
https://owen.ru/forum/showthread.php?t=25068&p=447749&viewfull=1#post447749
А его описание и рекомендации по настройке
https://owen.ru/forum/showthread.php?t=25068&p=430251&viewfull=1#post430251
Не совсем понятно, что такое "трехпозиционный". Наверное, следует уточнить. Ссылку на ПИД привёл чтобы уже дважды не вставать.
А ИИ умеет генерировать макросы OWEN Logic?
Я думаю ИИ умеет всё, если его научить.:rolleyes:
Traveller
16.09.2025, 12:14
А ИИ умеет генерировать макросы OWEN Logic?
Ну вообще то да, тока он там такую хрень может на генерировать... :D
Не, лучше думать мозгами, хотя ИИ некоторым уже мозги заменил...:D
Вопрос по другому - кто из них(ИИ) уже закончил школу?:cool:
Я не программист а электроник, с ST не знаком от слова совсем. Немного приходилась мутить в Node-Red. И ИИ-помощники интересуют только с позиции саморазвития, без коммерческой основы.
kondor3000
17.09.2025, 08:18
Я не программист а электроник, с ST не знаком от слова совсем. Немного приходилась мутить в Node-Red. И ИИ-помощники интересуют только с позиции саморазвития, без коммерческой основы.
За это время можно было выучить основы языка ST, даже на примерах с сайта Овен, не считая интернета и форума.
Вместо этого 4 дня пустого трёпа про ИИ.
А ИИ умеет генерировать макросы OWEN Logic?
Я думаю ИИ умеет всё, если его научить.:rolleyes:
Великобритании вместо нейросети "Natasha" работали сотни индусов.. В ручную..
Стартап Builder.ai громкими обещаниями привлек более $450 млн инвестиций, в том числе от Microsoft.
Тоже макросы генерировали... https://habr.com/ru/news/914124/
https://owen.ru/forum/attachment.php?attachmentid=11957&d=1392751157
За это время можно было выучить основы языка ST, даже на примерах с сайта Овен, не считая интернета и форума.
Вместо этого 4 дня пустого трёпа про ИИ.
Ну хз. Если дрюкать ии то он реально может выдавать нормальный код. За день вполне можно даже сложный макрос написать. Простые макросы выдает за 1-2 итерации.
Правда иногда в полный ступор впадает. И вот тут без знания основ языка и логики его оттуда не вытянуть никак.
При чем самые сложности создаются именно ограничениями языка на ст, за пределы которого ии все время пытается вылезти
Я не программист а электроник, с ST не знаком от слова совсем. Немного приходилась мутить в Node-Red. И ИИ-помощники интересуют только с позиции саморазвития, без коммерческой основы.
Все текстовые языки похожи, как близнецы. Между C и Pascal/Delphi вся разница только в замене фигурных скобок на пару begin-end или then-else в зависимости от ситуации.
У Python вместо скобок и begin просто отступы табом.
Вот и все различия.
В глубине для эффективности есть какие-то тонкости, но вчерне алгоритм можно реализовать на любом с минимальным использованием справки даже по неизвестному языку. Я так для Python что-то осмысленно набирал - а его ведь совсем не учил.
Все текстовые языки похожи, как близнецы. Между C и Pascal/Delphi вся разница только в замене фигурных скобок на пару begin-end или then-else в зависимости от ситуации.
У Python вместо скобок и begin просто отступы табом.
Вот и все различия.
В глубине для эффективности есть какие-то тонкости, но вчерне алгоритм можно реализовать на любом с минимальным использованием справки даже по неизвестному языку. Я так для Python что-то осмысленно набирал - а его ведь совсем не учил.
НодеРед это больше по квадратики, видимо поэтому возник такой вопрос, умеет ли
Посмотрел, что такое Node-Red - отдалённо похоже на FBD. Очень отдалённо...
Так и не понял, для чего и где его применяют. Слова IoT, MQTT и прочие из статей - звучат как тарабарщина.
Посмотрел, что такое Node-Red - отдалённо похоже на FBD. Очень отдалённо...
Так и не понял, для чего и где его применяют. Слова IoT, MQTT и прочие из статей - звучат как тарабарщина.
А Zigbee2mqtt - это что то из "Кин-дза-дза!";)
А Zigbee2mqtt - это что то из "Кин-дза-дза!";)
Я без издёвок - действительно не понял, для каких практических задач нужен этот язык и те технологии.
Кажется, MQTT без вникания и явного проговаривания этого слова, использовал для соединения автоматики насоса через RS-485 + модем + сервер производителя модема - для дистанционного включения/отключения. Но не уверен. Нужно было только настроить модемы и зарегистрировать их на сайте.
Я без издёвок - действительно не понял, для каких практических задач нужен этот язык и те технологии.
Кажется, MQTT без вникания и явного проговаривания этого слова, использовал для соединения автоматики насоса через RS-485 + модем + сервер производителя модема - для дистанционного включения/отключения. Но не уверен. Нужно было только настроить модемы и зарегистрировать их на сайте.
У меня через zigbee, mqtt, mosquitto, Node-red развернута домашняя автоматизация(умный дом). Управление климатом, светом и водой, плюс разные алармы через телеграмм бота.
доброго времени суток!давно не заходил на форум ,не могу скачать файлы(((
kondor3000
09.10.2025, 21:58
Это не баг форума, а файлы старые, качаются только выложенные после 2015 года, хранятся около 10 лет.
А писать надо, что нужно, а не про файлы не качаются.
Выложенные в 2016 году, качаются https://owen.ru/forum/showthread.php?t=12691&p=214054&viewfull=1#post214054
Иногда даже 14 и 15 года качаются.
Это не баг форума, а файлы старые, качаются только выложенные после 2015 года, хранятся около 10 лет.
А писать надо, что нужно, а не про файлы не качаются.
Выложенные в 2016 году, качаются https://owen.ru/forum/showthread.php?t=12691&p=214054&viewfull=1#post214054
Иногда даже 14 и 15 года качаются.
Не могу согласиться, т.к. лично проходил через это
https://owen.ru/forum/showthread.php?t=25068&p=427572&viewfull=1#post427572
https://owen.ru/forum/showthread.php?t=25068&p=427551&viewfull=1#post427551
Это именно баг форума.
Демонстрация произвольного архива rar
kondor3000
09.10.2025, 22:22
Демонстрация произвольного архива rar
Ваш файл, как и файлы 16 года по ссылке качаются нормально.
Не надо путать временные трудности с выкладкой файлов, они были.
ТС пишет про старые файлы, которые не качаются это 12 и 13 год, первая страница темы.
Народ, подскажите пожалуйста кто знает что можно предпринять : проблема соединения среды Owen Logic с сервером . Невозможно ни саму среду установить (при запросе на скачивание MicrosoftVisual_C_2015_2022_x86_x64) ни загрузить макросы через менеджер. Среду удалось установить благодаря установке С++ вручную (благо было на официальном сайте в комплекте) и вот что касается макросов - сыплет ошибки и всё. Установлена последняя версия Лоджика, но даже на более ранних версиях такая же проблема. И на другой машине, и на другой системе - только автономная установка ну и невозможность дальнейшего использования по причине отсутствия связи с сервером.
Пишет вот такое: "Произошла ошибка при чтении списка макросов онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка шаблонов сетевых устройств онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функций на ST онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функциональных блоков на ST онлайн библиотеки. Обратитесь в техподдержку
"
С интернетом всё отлично. Может локация имеет значение ?
Сергей0308
20.11.2025, 23:10
Народ, подскажите пожалуйста кто знает что можно предпринять : проблема соединения среды Owen Logic с сервером . Невозможно ни саму среду установить (при запросе на скачивание MicrosoftVisual_C_2015_2022_x86_x64) ни загрузить макросы через менеджер. Среду удалось установить благодаря установке С++ вручную (благо было на официальном сайте в комплекте) и вот что касается макросов - сыплет ошибки и всё. Установлена последняя версия Лоджика, но даже на более ранних версиях такая же проблема. И на другой машине, и на другой системе - только автономная установка ну и невозможность дальнейшего использования по причине отсутствия связи с сервером.
Пишет вот такое: "Произошла ошибка при чтении списка макросов онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка шаблонов сетевых устройств онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функций на ST онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функциональных блоков на ST онлайн библиотеки. Обратитесь в техподдержку
"
С интернетом всё отлично. Может локация имеет значение ?
А Вы где находитесь, в бочке?
https://dzen.ru/a/aFco7krW1FyU4s3U
А Вы где находитесь, в бочке?
https://dzen.ru/a/aFco7krW1FyU4s3U
Да, именно там! Интернет в ней, работает очень выборочно. Даже для того, чтобы написать этот ответ нужно включить впн, а для того чтобы просто сюда зайти - впн не нужен, и более того, влючённый делает эту задачу невозможной . Ума не приложу как с этим бороться, а по Вашей сссылке об этом ничего не сказано🤷. Может Вы не по теме зашли!?? В данный момент я ищу не Человека, а отет на вопрос , касающийся тематики форума. Меня интересует нахождение способа скачать макросы, и если это не удаётся посредствам среды, то возможно найдется добрый человек, предоставиший возможность скачать их с какого-либо доступного ресурса. А отпускать остроты, можно как раз в комментариях под указанной Вами ссылкой .
ДМеня интересует нахождение способа скачать макросы, и если это не удаётся посредствам среды, то возможно найдется добрый человек, предоставиший возможность скачать их с какого-либо доступного ресурса.
это что ли https://ftp-ow.owen.ru/softupdate/OWEN%20Logic/OnlineMacroes/
это что ли https://ftp-ow.owen.ru/softupdate/OWEN%20Logic/OnlineMacroes/
О, да! Судя по всему, это то что мне нужно! Благодарю , нужно попробовать так . Но подозреваю что при попытке обновления встроенного ПО ПР200 или подобных операциях, связанных с подключением к серверам Овен - будет такой же затык. Может знаете как это решить? Включение впн в браузере не помагает, а каким-либо другим способом обойти эти пути, я не владею 🙄
О, да! Судя по всему, это то что мне нужно! Благодарю , нужно попробовать так . Но подозреваю что при попытке обновления встроенного ПО ПР200 или подобных операциях, связанных с подключением к серверам Овен - будет такой же затык. Может знаете как это решить? Включение впн в браузере не помагает, а каким-либо другим способом обойти эти пути, я не владею
ВПН в браузере работает только в браузере.
Сейчас попробовал Лоджик запустить через ВПН (у меня регион ВПН Латвия). Запускается долго, но потом нормально работает и все доступно
А зачем вам, вообще, ВПН?
ВПН в браузере работает только в браузере.
Сейчас попробовал Лоджик запустить через ВПН (у меня регион ВПН Латвия). Запускается долго, но потом нормально работает и все доступно
А зачем вам, вообще, ВПН?
Я же писал : проблема с подключением к серверам Owen.Ни загрузить обновления, ни скачать макросы ни прочие задачи решить завязанные на связь программы с сервером. Установка самого OL и та затруднена, потому что требуется скачать дополнительные файлы. Как решить эту проблему (регион Украина) ? Если есть решение - обозначьте пожалуйста.
Я же писал : проблема с подключением к серверам Owen.Ни загрузить обновления, ни скачать макросы ни прочие задачи решить завязанные на связь программы с сервером. Установка самого OL и та затруднена, потому что требуется скачать дополнительные файлы. Как решить эту проблему (регион Украина) ? Если есть решение - обозначьте пожалуйста.
С регионом Украина ещё могу понять могут быть проблемы. Но я в регионе Россия столкнулся с такими же проблемами как и у Вас. ВПН никогда не был установлен. Провайдер дом.ру.
Произошла ошибка при чтении списка макросов онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка шаблонов сетевых устройств онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функций на ST онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функциональных блоков на ST онлайн библиотеки. Обратитесь в техподдержку
kondor3000
30.11.2025, 15:32
С регионом Украина ещё могу понять могут быть проблемы. Но я в регионе Россия столкнулся с такими же проблемами как и у Вас. ВПН никогда не был установлен. Провайдер дом.ру.
Произошла ошибка при чтении списка макросов онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка шаблонов сетевых устройств онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функций на ST онлайн библиотеки. Обратитесь в техподдержку
Произошла ошибка при чтении списка функциональных блоков на ST онлайн библиотеки. Обратитесь в техподдержку
Сейчас проблемы на FTP сервере, как наладят всё будет
https://ftp-ow.owen.ru/softupdate/OWEN%20Logic/OnlineMacroes/
Сейчас проблемы на FTP сервере, как наладят всё будет
https://ftp-ow.owen.ru/softupdate/OWEN%20Logic/OnlineMacroes/
Благодарим за информацию. Ссылка не работает .
86978
Сергей0308
30.11.2025, 20:08
Здесь ничего не поделаешь и у меня такая же лабуда!
Такая же фигня. Вчера весь день промучился 86982
meta11ist87
09.01.2026, 07:28
Странный вопрос у меня. В OL нет функции сравнения на равенство для вещественных значений? Что-то типа fEQ, по аналогии с fGT.
Вещественные числа крайне не рекомендуется сравнивать на равенство.
Если не брать 0 (ноль) - Вы некогда не получите равные значения, если хотя бы одно число - это измеряемая или вычисляемая величина.
Сергей0308
09.01.2026, 07:53
Странный вопрос у меня. В OL нет функции сравнения на равенство для вещественных значений? Что-то типа fEQ, по аналогии с fGT.
Так 100 раз этот вопрос обсуждался, в смысле, целочисленные значения - абсолютной точности, а вещественные(с плавающей запятой) приблизительной(не абсолютной) точности, поэтому на равенство такой тип переменных лучше сравнивать с неким, разумным допуском, устраивающем Вас и технологический процесс, короче, примерно как-то так:
87497
Странный вопрос у меня. В OL нет функции сравнения на равенство для вещественных значений? Что-то типа fEQ, по аналогии с fGT.
ST надо пользоваться, там все есть.
интересно, meta11ist87, вы пробовали вообще сравнить на равенство вещественное число? :) где 1 бит с округлением до 2-х знаков после запятой ничего не рашает, но числа будут разными
По поводу сервера обновлений OL, кто может подсказать - есть какие-то подвижки или всё по прежнему туманно?
kondor3000
11.01.2026, 14:54
По поводу сервера обновлений OL, кто может подсказать - есть какие-то подвижки или всё по прежнему туманно?
Сервер работает, как и обновления. А вот как с Украиной, только вам проверять.
Сервер работает, как и обновления. А вот как с Украиной, только вам проверять.
Ничего не работает , к сожалению.
Ничего не работает , к сожалению.
А здесь не пробовали https://ftp-ow.owen.ru/softupdate/OWEN%20Logic/
87511
А здесь не пробовали https://ftp-ow.owen.ru/softupdate/OWEN%20Logic/
87511
Благодарю за информацию. Ссылка открывается, только там крайние обновления за ноябрь 2024г., версии 1. ... .
Здесь обновления уже за окт. 2025 (2.11.370)
https://ftp.owendigital.ru/softupdate/OWEN%20Logic/infoOf2_11.html
И скачать их можно, но как установить, если окно обновлений предлагает только обновление с сервера, связь с которым не устанавливается?
87583
Благодарю за информацию. Ссылка открывается, только там крайние обновления за ноябрь 2024г., версии 1. ... .
Здесь обновления уже за окт. 2025 (2.11.370)
https://ftp.owendigital.ru/softupdate/OWEN%20Logic/infoOf2_11.html
И скачать их можно, но как установить, если окно обновлений предлагает только обновление с сервера, связь с которым не устанавливается?
87583
Скачайте и установите новую версию.
Благодарю за информацию. Ссылка открывается, только там крайние обновления за ноябрь 2024г., версии 1. ... .
Здесь обновления уже за окт. 2025 (2.11.370)
https://ftp.owendigital.ru/softupdate/OWEN%20Logic/infoOf2_11.html
И скачать их можно, но как установить, если окно обновлений предлагает только обновление с сервера, связь с которым не устанавливается?
87583
Ну и ну...
какой ноябрь 24г? Там ВСЕ релизы и 1.. и 2..
Трудно пощелкать мышем?
https://owen.ru/forum/attachment.php?attachmentid=87589&d=1768812224
Здравствуйте! Кто может подсказать, как в OL v2.11 реализованы ошибки датчиков для аналоговых входов? Т.е., при подключении на вход ПР 200-24.2(4) датчика 4-20мА, со входа OL ( AI1 к примеру) приходит уже готовый обработанный сигнал в еденицах чего нужно, при этом доступа к обработке нет,( макросы, выдающие ошибку при сбоях не нужны), и соответственно в случае сбоя ( обрыв токовой петли или пропадание питания) программа отреагировать на это не сможет.Или может мне что-то неизвестно... Подскажите пожалуйста.
kondor3000
19.01.2026, 14:13
Здравствуйте! Кто может подсказать, как в OL v2.11 реализованы ошибки датчиков для аналоговых входов? Т.е., при подключении на вход ПР 200-24.2(4) датчика 4-20мА, со входа OL ( AI1 к примеру) приходит уже готовый обработанный сигнал в еденицах чего нужно, при этом доступа к обработке нет,( макросы, выдающие ошибку при сбоях не нужны), и соответственно в случае сбоя ( обрыв токовой петли или пропадание питания) программа отреагировать на это не сможет.Или может мне что-то неизвестно... Подскажите пожалуйста.
Обрыв токовой петли и пропадание питания, можно определить сравнением входа на Var< 0, если измерение от 0.
Или поставьте макрос CONV4-20_, он будет вам конвертировать пределы и ошибку выдавать .
Сергей0308
19.01.2026, 14:56
Там есть доступ к обработке сигнала, в смысле, Вы назначаете постоянную времени фильтра, выставляете диапазон(значения соответствующие минимуму(4 мА) и максимуму(20 мА)), что в программе будут отображаться!
Можно масштабировать из программы, например это пригодится если применить датчик давления с другим ВПИ, чтобы программу не изменять, можно прямо с экрана нужный ВПИ поставить, кстати в менеджере компонентов есть макрос для масштабирования:
87591
Только нештатные состояния отслеживайте до этого макроса, в смысле, макрос их обрежет!
Короче, может почаще будете из бочки вылазить?
Обрыв токовой петли и пропадание питания, можно определить сравнением входа на Var< 0, если измерение от 0.
Или поставьте макрос CONV4-20_, он будет вам конвертировать пределы и ошибку выдавать .
Я, пробовал обрабатывать сигнал со входа через макрос, но понял, что результаты измерения не верны, по причине того, что ПР200 сам обрабатывает сигнал ( получается двойная обработка) ему достаточно задать лимиты . Получить сигнал 4-20 уже в OL для макроса невозможно, потому что ацп делает свою работу по умолчанию. Разумеется можно городить приспособы для определения ошибочной работы с уже готовыми значениями величины, и я городил, но хотелось бы узнать штатный способ решения этой задачи. Благодарю.
Я, пробовал обрабатывать сигнал со входа через макрос, но понял, что результаты измерения не верны, по причине того, что лоджик сам обрабатывает сигнал ( получается двойная обработка) ему достаточно задать лимиты . Получить сигнал 4-20 уже в OL для макроса невозможно, потому что ацп делает свою работу по умолчанию. Разумеется можно городить приспособы для определения ошибочной работы с уже готовыми значениями величины, и я городил, но хотелось бы узнать штатный способ решения этой задачи. Благодарю.
Штатный способ для ПР200, это в настройках входа поставить 4..20мА и использовать макрос CONV4..20_ из менеджера компонентов
наверное поставить 0 - 24 (или сколько там верхний предел), вход вроде меряет от нуля мА
Сергей0308
19.01.2026, 16:16
наверное поставить 0 - 24 (или сколько там верхний предел), вход вроде меряет от нуля мА
Пожалуйста без глупостей!
чего это? вход у ПР200 может работать от 0 мА, вроде об этом где-то писали. Соответственно самостоятельно в программе можно контролировать значение менее 4 мА.
Хотя для другого ПР не в курсе.
Сергей0308
19.01.2026, 16:24
чего это? вход у ПР200 может работать от 0 мА, вроде об этом где-то писали. Соответственно самостоятельно в программе можно контролировать значение менее 4 мА.
Хотя для другого ПР не в курсе.
Вход лучше настроить, как преведущий товарищ написал, если обрыв, будет показывать меньше минимального, если пробой, больше максимального значения, всё, в смысле, сравнивай и определяй неисправность!
Можно же макрос посмотреть о котором речь идёт, где эти ошибки формируются!
Я тоже так думал пока не убедился в обратном. Может на старых версиях было как-то так, но теперь сигнал обрвбатывается без макроса..
блин, придется опять доставать РЗУ, но вроде раньше пробовал, показывал вход меньше 4 мА
Сергей0308
19.01.2026, 18:21
блин, придется опять доставать РЗУ, но вроде раньше пробовал, показывал вход меньше 4 мА
Проверьте, настройте вход в диапазоне 4-20 мА, подайте на вход 3,8 и 21 мА, в программе должны быть такие же значения, на этом и основана работа предлагаемого товарищами макроса по формированию ошибок!
Непонятно, в чём сомнения товарища из бочки, Вы можете вразумительно написать или ясность не ваша тема?
Благодарю за труд, сегодня действительно открылось как Вы показали, а вчера открывалось так, что ниже 1.9 ссылки не отображались вообще, я не мог этого не заметить. Такой видимо теперь интернет. У меня даже эта страница по разному открывается на ноуте и на смартфоне. Это сообщение я смог увидеть только с ноута почему-то. Так что , я не нарочно.
Проверьте, настройте вход в диапазоне 4-20 мА, подайте на вход 3,8 и 21 мА, в программе должны быть такие же значения, на этом и основана работа предлагаемого товарищами макроса по формированию ошибок!
Непонятно, в чём сомнения товарища из бочки, Вы можете вразумительно написать или ясность не ваша тема?
А Вы, попробуйте не хамить, а ВНИМАТЕЛЬНО почитать сообщение с вопросом, возможно тогда у Вас произойдёт прояснение.
К аналоговому входу (входам) подключаются преобразователи, а конкретнее 0-50А / 4..20мА и 0-15В/4..20мА для контроля за током и напряжением. Оба преобразователя выдают 4..20мА (исправность я проверял мультиметром). Попытка преобразования сигнала через макрос показала, что значение после него выдаётся не верное, но к своему удивлению, я заметил, что значение на входе в макрос (оно же значение с аналогового входа в OL ) соответствует реальному значению измеряемой величины. Обратившись к руководству ПР200, была обнаружена следующая информация : "4.2.1.1 Работа входа в аналоговом режиме
Для измерения токового сигнала 4...20 мА в прибор для каждого канала встроен шунтирующий резистор номиналом 121 Ом. В приборе масштабируются шкалы измерения для каналов «0…10 В» и «4… 20 мА», после чего контролируемые физические величины отображаются непосредственно в единицах их измерения (атмосферах (кг/см2), кПа и т. д.). Для каждого такого датчика следует
установить диапазон измерения:
нижняя граница диапазона измерения задается параметром «нижняя граница измерения» и соответствует минимальному уровню выходного сигнала датчика;
верхняя граница диапазона измерения задается параметром «верхняя граница измерения» и соответствует максимальному уровню выходного сигнала датчика." -всё.
Других настроек кроме этих, и смещения запятой для точности там не указано.
После чего, макрос был удалён, и вход был напрямую подключен к переменной хранящей значение (тока/напряжения). Теперь стал вопрос : как в таком случае штатно можно обработать ошибки . В макросе это было реализовано, но в случае, когда это происходит в ПР -как это делается в OL? С огородом блоков сравнений понятно, но должен же быть способ с выводом ошибки. Если не знаете - лучше не отвечайте ничего, и свои остроты оставьте потомкам, они это оценят (возможно).
Сергей0308
19.01.2026, 20:36
А Вы, попробуйте не хамить, а ВНИМАТЕЛЬНО почитать сообщение с вопросом, возможно тогда у Вас произойдёт прояснение.
К аналоговому входу (входам) подключаются преобразователи, а конкретнее 0-50А / 4..20мА и 0-15В/4..20мА для контроля за током и напряжением. Оба преобразователя выдают 4..20мА (исправность я проверял мультиметром). Попытка преобразования сигнала через макрос показала, что значение после него выдаётся не верное, но к своему удивлению, я заметил, что значение на входе в макрос (оно же значение с аналогового входа в OL ) соответствует реальному значению измеряемой величины. Обратившись к руководству ПР200, была обнаружена следующая информация : "4.2.1.1 Работа входа в аналоговом режиме
Для измерения токового сигнала 4...20 мА в прибор для каждого канала встроен шунтирующий резистор номиналом 121 Ом. В приборе масштабируются шкалы измерения для каналов «0…10 В» и «4… 20 мА», после чего контролируемые физические величины отображаются непосредственно в единицах их измерения (атмосферах (кг/см2), кПа и т. д.). Для каждого такого датчика следует
установить диапазон измерения:
нижняя граница диапазона измерения задается параметром «нижняя граница измерения» и соответствует минимальному уровню выходного сигнала датчика;
верхняя граница диапазона измерения задается параметром «верхняя граница измерения» и соответствует максимальному уровню выходного сигнала датчика." -всё.
Других настроек кроме этих, и смещения запятой для точности там не указано.
После чего, макрос был удалён, и вход был напрямую подключен к переменной хранящей значение (тока/напряжения). Теперь стал вопрос : как в таком случае штатно можно обработать ошибки . В макросе это было реализовано, но в случае, когда это происходит в ПР -как это делается в OL? С огородом блоков сравнений понятно, но должен же быть способ с выводом ошибки. Если не знаете - лучше не отвечайте ничего, и свои остроты оставьте потомкам, они это оценят (возможно).
Ну как здесь не шутить, полстраницы писанины и ничего конкретного, короче, это ясности не добавило, Вы можете муть(ваши фантазии) не писать, она ясности не добавляет, а напишите, пусть одну две строчки, но правды, например: настроил вход, минимальное значение диапазона - 4, максимальное -20 мА, подаю на вход 3,8 мА, в программе показывает 3,8 мА, подаю 4 мА, показывает, 4 мА, подаю 20 мА, показывает 20 мА, подаю 21 мА, в программу приходит 21 мА, всё, не надо талмуд писать и всё ясно станет, что у вас не так!
...Теперь стал вопрос : как в таком случае штатно можно обработать ошибки . В макросе это было реализовано, но в случае, когда это происходит в ПР -как это делается в OL? С огородом блоков сравнений понятно, но должен же быть способ с выводом ошибки.
В ПР200 делается так
87593
Ну как здесь не шутить, полстраницы писанины и нечего конкретного, короче, это ясности не добавило, Вы можете муть(ваши фантазии) не писать, она ясности не добавляет, а напишите, пусть одну две строчки, но правды, например: настроил вход, минимальное значение диапазона - 4, максимальное -20 мА, подаю на вход 3,8 мА, в программе показывает 3,8 мА, подаю 4 мА, показывает, 4 мА, подаю 20 мА, показывает 20 мА, подаю 21 мА, в программу приходит 21 мА, всё, не надо талмуд писать и всё ясно станет, что у вас не так!
Вас похоже заклинило с вашей идеей. Я же просил, если не знаете что ответить по существу - не нужно ничего отвечать, ответит тот кто знает или ответа на мой вопрос не найдётся в этой теме.
Если Вам не понятно, то я сожалею, но помочь не смогу. И почему же у меня "что-то не так" ? У меня всё так, и я подробно объяснил как, только вам не доходит суть вопроса ни кратко ни подробно. Вам нужно какие-то опыты проводить со входом а потом изобретать функции. А мне нужно выяснить как выводится сигнал ошибки по версии разработчиков. Возможно для этого существует настройка о которой мне не известно. А городить функции я справлюсь - спасибо.
Сергей0308
19.01.2026, 22:03
Вас похоже заклинило с вашей идеей. Я же просил, если не знаете что ответить по существу - не нужно ничего отвечать, ответит тот кто знает или ответа на мой вопрос не найдётся в этой теме.
Если Вам не понятно, то я сожалею, но помочь не смогу. И почему же у меня "что-то не так" ? У меня всё так, и я подробно объяснил как, только вам не доходит суть вопроса ни кратко ни подробно. Вам нужно какие-то опыты проводить со входом а потом изобретать функции. А мне нужно выяснить как выводится сигнал ошибки по версии разработчиков. Возможно для этого существует настройка о которой мне не известно. А городить функции я справлюсь - спасибо.
По версии разработчиков не предусмотрена в ПР переменная с кодом ошибки, каждый сам выкручивается как умеет, хорошо, что в ПР200 значения в программе могут выходить за пределы установленного для входа диапазона, говорят, что в других ПР значения в программе не выходят за пределы установленного для входа диапазона, там вообще никак не сделаешь!
И в макросе стоят те же функции сравнения, в смысле, никакой разницы не будет если Вы свой макрос поставите или отдельные функции сравнения!
Короче, если бы Вы в бочке не сидели, всё бы уже знали, это 100-и раз обсуждалось!
По версии разработчиков не предусмотрена в ПР переменная с кодом ошибки, каждый сам выкручивается как умеет, хорошо, что в ПР200 значения в программе могут выходить за пределы установленного для входа диапазона, говорят, что в других ПР значения в программе не выходят за пределы установленного для входа диапазона, там вообще никак не сделаешь!
И в макросе стоят те же функции сравнения, в смысле, никакой разницы не будет если Вы свой макрос поставите или отдельные функции сравнения!
Короче, если бы Вы в бочке не сидели, всё бы уже знали, это 100-и раз обсуждалось!
В любом случае благодарю за отзывчивость и ответы. ;)
По версии разработчиков не предусмотрена в ПР переменная с кодом ошибки, каждый сам выкручивается как умеет, хорошо, что в ПР200 значения в программе могут выходить за пределы установленного для входа диапазона, говорят, что в других ПР значения в программе не выходят за пределы установленного для входа диапазона, там вообще никак не сделаешь!
Не скажу за всю Одессу...
ПР205 позволяет диагностировать обрыв и короткое замыкание дополнительно аппаратной диагностической переменной.
Пару лет назад ставил эксперимент с ПР205 - проверял срабатывание макроса и переменной - оба синхронно срабатывали. И даже значение с АЦП аналогового входа становилось то -999999.99, то +999999.99.
Значения задавал калибратором.
Вот для ПРМ у меня были сомнения - аппаратной переменной нет, но зато в РЭ есть примечание, что для сопротивлений будет изменение показаний в заведомо недоступный для сопротивления диапазон.
Помню, недавно проверял, но конкретные детали забыл.
Для ПРМ дополнительно проверял исправность ПРМ и наличие соединения с ним.
Diogen, в примерах на страничке прибора должны присутствовать варианты с диагностикой датчика - смотрите и их, чтобы не ждать подолгу ответ. Это называется самообразование и умение пользоваться источниками.
Сергей0308
19.01.2026, 22:36
Не скажу за всю Одессу...
ПР205 позволяет диагностировать обрыв и короткое замыкание дополнительно аппаратной диагностической переменной.
Пару лет назад ставил эксперимент с ПР205 - проверял срабатывание макроса и переменной - оба синхронно срабатывали. И даже значение с АЦП аналогового входа становилось то -999999.99, то +999999.99.
Значения задавал калибратором.
Вот для ПРМ у меня были сомнения - аппаратной переменной нет, но зато в РЭ есть примечание, что для сопротивлений будет изменение показаний в заведомо недоступный для сопротивления диапазон.
Помню, недавно проверял, но конкретные детали забыл.
Для ПРМ дополнительно проверял исправность ПРМ и наличие соединения с ним.
Diogen, в примерах на страничке прибора должны присутствовать варианты с диагностикой датчика - смотрите и их, чтобы не ждать подолгу ответ. Это называется самообразование и умение пользоваться источниками.
Речь о ПР200, Вы то же наверно всё внимательно не изучили, как советовал товарищ из бочки, в смысле, 95 страниц темы?
Честно скажу, не совсем понял, зачем уточнять что и в каком объёме я читал на форуме...
Когда растерялся с выбором алгоритма ротации и АВР нескольких (больше двух) насосов, ПИД для КЗР - спокойно сел и прочитал все сообщения этой и ряда других тем с изучением приведённых примеров.
Приезжал с работы к 21:00, час на отдых и по три часа в день смотрел советы. Через 4 часа подъём и вечером продолжаю. Ну вот так со временем было, вот так реально хотел научиться и сделать.
Так что - читал много.
Мой предыдущий ответ был на реплику
говорят, что в других ПР значения в программе не выходят за пределы установленного для входа диапазона, там вообще никак не сделаешь!
Вы предположили, что в других ПР затруднена диагностика неисправности датчика.
Я опроверг на примере ПР205 и модулей ПРМ.
В принципе, могу отвечать не нейтрально, а с уничижающими эмоциями, как уважаемый kondor.
говорят, что в других ПР значения в программе не выходят за пределы установленного для входа диапазона, там вообще никак не сделаешь!
С чего Вы это взяли?!
Вы хоть документацию открывали?
Или работали с ПР?
Да у других ПР всё даже лучше, чем у ПР200 - и аппаратная диагностика существует!
Почитали бы уже документацию!
Сергей0308
19.01.2026, 23:15
Честно скажу, не совсем понял, зачем уточнять что и в каком объёме я читал на форуме...
Когда растерялся с выбором алгоритма ротации и АВР нескольких (больше двух) насосов, ПИД для КЗР - спокойно сел и прочитал все сообщения этой и ряда других тем с изучением приведённых примеров.
Приезжал с работы к 21:00, час на отдых и по три часа в день смотрел советы. Через 4 часа подъём и вечером продолжаю. Ну вот так со временем было, вот так реально хотел научиться и сделать.
Так что - читал много.
Мой предыдущий ответ был на реплику
Вы предположили, что в других ПР затруднена диагностика неисправности датчика.
Я опроверг на примере ПР205 и модулей ПРМ.
В принципе, могу отвечать не нейтрально, а с уничижающими эмоциями, как уважаемый kondor.
С чего Вы это взяли?!
Вы хоть документацию открывали?
Или работали с ПР?
Да у других ПР всё даже лучше, чем у ПР200 - и аппаратная диагностика существует!
Почитали бы уже документацию!
Я об этом и толкую, что как правило никто не будет выискивать все посты относящиеся к данному вопросу и перечитывать их, в смысле, проще уточнить некие моменты непосредственно у товарища, что вопрос задал, а он обижаться стал, советовать внимательно посты изучать.
Так если там есть переменная с кодом ошибки входа, зачем это упоминать, вроде обсуждение, как сформировать эти сигналы когда это не предусмотрено в ПР, я против этого ничего не имею.
Powered by vBulletin® Version 4.2.3 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot