Здравствуйте!
Я начал учиться программировать в среде CoDeSys v2.3 несколько дней назад.Мне дали задачу "фильтрация сигналов".Но я не знаю с чего начать.
Помогите пожалуйста!
Вид для печати
Здравствуйте!
Я начал учиться программировать в среде CoDeSys v2.3 несколько дней назад.Мне дали задачу "фильтрация сигналов".Но я не знаю с чего начать.
Помогите пожалуйста!
постановка задачи из разряда иди туда незнаю куда, найди то незнаю что и чем бы ты не занимался лишь бы к отбою "устал"? Выглядит с ваших слов так)))
видимо, помогло. почитаю и я, а то аналоговые входы мерцают, например, скорость (4-20 мА, от 0 до 1470 об/мин) при нулевой реальной скорости AI выдает ток на примерно 2 об/мин. Как с этим бороться?
Думаю, что 2 об/мин - это в пределах погрешности входа и датчика. Можете сами обработку написать вычесть 2 об/мин от получаемого значения, коэффициент наклона и т.д.))) Только на другом датчике уже погрешность может быть другой и там будет допустим 1 об/мин и т.д.
Или еще вариант обнулять значение при отключенной установке по условию.
А ты про погрешность измерений что-нибудь знаешь ? Вот здесь почитай: http://www.gumer.info/bibliotek_Buks...e/biruk/04.php
Есть там блок LIMIT называется. Используй его.
Мёртвую зону задать что-то мешает?
Порог оборотов остановки привода?
Ограничитель
OUT := LIMIT(Min, IN, Max) означает:
OUT := MIN (MAX (IN, Min), Max)
Max задает верхнюю и Min нижнюю границы ограничителя. Если IN больше верхнего или меньше нижнего пределов, результат 'обрезается' соответственно до Max или Min.
IN и OUT могут быть любого типа.
Пример IL:
LD 90
LIMIT 30,80
ST Var1 (* Результат 80 *)
Пример ST:
Var1:=LIMIT(30,90,80); (* Результат 80 *);
как один из вариантов, фильтрацию можно и таким способом организовать http://www.owen.ru/forum/showthread....ll=1#post61379
есть такая задача у меня на столе лежит: тензодатчик , модуль icp-con 7016,плк 110-32 . я хочу получить что то вроде электронных весов на первом этапе а в дальнейшим дозатор .с плк только знакомлюсь опыта нет не какого . и вот только начал писать программу сразу же появились сложности . тензодатчик подключил к i7016 , а i7016 к плк через 485 порт настроил и вижу значения меняющиеся от нагрузки на датчик и вроде все хорошо но эта переменная постоянно находится в колебательном режиме так сказать.Вопрос, как грамотно произвести фильтрацию ??? блок DIG_FLTR не работает .
А нагрузка сама-то не колеблется?
Экранирование и защита от наводок выполнены?
да все рекомендации учтены ... вопрос только как это программно обработать ....
может есть какие то готовые блоки для таких случаев ?
Если имеются в виду программные модули, то не знаю.
Эксплуатируем несколько комплектов весов на трёх бетонных заводах - озвученной проблемы не наблюдается.
Если сигнал начинает колебаться, то это либо воздействие внешних вибраций от неисправного оборудования, либо кончина самого тензодатчика.