PDA

Просмотр полной версии : весы



кама71
22.10.2017, 16:42
Добрый день. Имеем тензодатчик на 30 кг ,преобразователь сигнала тензодатчика в 4-20ма, ПР200-220.2.1.0
задача: Имеется емкость с жидкостью, из которой тонкой струйкой эта жидкость вытекает.Начальный вес брутто 25 кг.как подсчитать количество жидкости вытекшей из емкости за 1 мин.(1 сек) и скорость потери массы. Понятно что( m1- m2)/t но как отразить в ОЛ.

anthrwpos
23.10.2017, 06:35
Сохранить историю изменений m в что-то вроде массива, в ОЛ нельзя.
Есть два варианта. Каким либо образом сохраняется значение m1 и начинается счет времени. Через минуту фиксируется m2 и вычисляется эта величина.
Второй. В каждый момент времени вычисляется скорость потери массы по текущему и предыдущему значению. Но это чревато тем, что текущее значение будет меняться скачками и вы получите сильно зашумленный сигнал.
Для подобных случаев я для себя изобрел специальные усредняющие макросы с вычислением производной по времени от величины.
Во вложении как я себе представляю реализацию обоих вариантов.

кама71
23.10.2017, 14:57
anthrwpos спасибо за ответ.Прошу сильно не пинать ибо новичек. Возможно ли в ОЛ зафиксировать вес изначальный в переменной не прибегая к прошивке программы,то бишь подвешиваем на весы емкость заливаем в нее жидкость и фиксируем вес кнопкой на ПР200 с записью в переменную "вес начальный" , затем нажимаем кнопку "старт" и жидкость начинает вытекать и в переменной "потеря веса" начинается подсчет жидкости

anthrwpos
23.10.2017, 18:29
anthrwpos спасибо за ответ.Прошу сильно не пинать ибо новичек. Возможно ли в ОЛ зафиксировать вес изначальный в переменной не прибегая к прошивке программы,то бишь подвешиваем на весы емкость заливаем в нее жидкость и фиксируем вес кнопкой на ПР200 с записью в переменную "вес начальный" , затем нажимаем кнопку "старт" и жидкость начинает вытекать и в переменной "потеря веса" начинается подсчет жидкости

Кнопки на самом ПР-200 не могут выполнять полезных функций в программе, они только для управления экранами.
Можно подключить внешние кнопки в дискретные входы, вот ими можно что угодно делать.
Элемент "SEL" с линией задержки в средний вход именно это и делает: фиксирует некоторое значение пока на его верхний вход не подано 1. Именно таким образом у меня в программе фиксируется вес, от которого начинает отсчитываться расход за минуту.

кама71
23.10.2017, 18:41
Спасибо попробую.

Сергей0308
23.10.2017, 18:42
Я вижу так: пишите в стек значения массы каждую секунду, находите разницу в весе(уменьшение) за каждую секунду и высчитываете среднее скользящим окном, ширина скользящего окна - степень сглаживания, всё, курите бамбук! Лучше в стек сразу разницу веса писать, проще выйдет!
Примерно так:

33854

Ревака Юрий
24.10.2017, 09:16
Кнопки на самом ПР-200 не могут выполнять полезных функций в программе, они только для управления экранами.
Можно подключить внешние кнопки в дискретные входы, вот ими можно что угодно делать.
Элемент "SEL" с линией задержки в средний вход именно это и делает: фиксирует некоторое значение пока на его верхний вход не подано 1. Именно таким образом у меня в программе фиксируется вес, от которого начинает отсчитываться расход за минуту.

Можно завести на экран булевую переменную и ее изменять с экрана, тем самым заменяя кнопку на дискретном входе.

кама71
24.10.2017, 18:15
вот как то добился , но не нравится два дискретных входа задействовано,как на один перевести

anthrwpos
24.10.2017, 20:11
вот как то добился , но не нравится два дискретных входа задействовано,как на один перевести
Cмысла от второго входа я так и не понял. Оно и с одним отлично работает.

кама71
25.10.2017, 04:21
и то верно.Спасибо.

кама71
03.09.2018, 20:06
добрый день.Существует проблема в "дребезжании" показаний тензодатчика.Разброс показаний составляет до 15 грамм.Как погасить эти быстрые перепады?период опроса датчика нужно как можно меньше.

rovki
03.09.2018, 20:19
Усреднением ...15 гр. ,а максимальный вес?

кама71
03.09.2018, 20:23
максимальный вес 10 кг

rovki
03.09.2018, 22:21
максимальный вес 10 кг

значит приведенная погрешность 0,15% , так что вы хотите ,точность приличная ,а что бы не дергались примените макрос усреднения по методу скользящего окна .