реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Вычисление стабилизации
ILYAUL
сообщение Mar 10 2012, 10:56
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Всем, добрый день!
помогите придумать алгоритм вычисления стабильности веса , т.е когда вес стабилен.

Имеются весы (пром. произв.) ,которые в непрерывном режиме по RS232 передают вес груза в ASCI I. Вес груза определяется с точностью до сотых с шагом +/- 50 Например 7.85 , 7.9 , 7.95.
Выдавать на печать груз можно до десятых . Сначала думал просто складывать байты веса исключая служебную информацию и убирая 0x30 , накапливать и принимать решение , но это не прокатывает.
Есть ещё мысли , но как-то они мне пока самому не нравятся. Скорость передачи 1200 , поэтому подсчёты можно делать "влёт" , а не вытягивая данные из буфера.
Help , please.


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
kovigor
сообщение Mar 10 2012, 11:45
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Цитата(ILYAUL @ Mar 10 2012, 14:56) *
Выдавать на печать груз можно до десятых .


Можно или нужно ? Если первое, то выдавайте то, что есть, с двумя знаками. Уверен, что внутри весов их показания уже усреднены, отфильтрованы и выдаются именно в том виде, в каком следует. А если второе, то возьмите справочник Бронштейна и Семендяева и посмотрите, как производится округление чисел ...
Go to the top of the page
 
+Quote Post
Tanya
сообщение Mar 10 2012, 11:46
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(ILYAUL @ Mar 10 2012, 14:56) *
Всем, добрый день!

Абсолютно непонятно, что Вы хотите, и как все это связано с АВР и ПИКами.
Go to the top of the page
 
+Quote Post
_Pasha
сообщение Mar 10 2012, 12:20
Сообщение #4


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Цитата(ILYAUL @ Mar 10 2012, 14:56) *
Всем, добрый день!
помогите придумать алгоритм вычисления стабильности веса , т.е когда вес стабилен.

Насколько я понял, там нужен FUZZY LOGIC иначе(если проще) -долго.
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Mar 10 2012, 13:18
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(kovigor @ Mar 10 2012, 15:45) *
Если первое, то выдавайте то, что есть, с двумя знаками. Уверен, что внутри весов их показания уже усреднены, отфильтрованы и

Нет - идут напрямую с АЦП - в RS232 , для своего индикатора может и фильтруются.

Цитата
Можно или нужно ?


Это до конца не решено - но это выдеенного яйца не стоит, в порядке решения и округления.


Цитата
Абсолютно непонятно, что Вы хотите, и как все это связано с АВР и ПИКами.

Нужно понять когда в непрерывном потоке выдаваемых цифр идёт истинный вес груза т.е. датчики весов стабильны и вес соответствует истинному.
Протокол весов , если его таким можно назвать, нужно было преобразовать под протокол промышленного принтера , что благополучнои сделано на Mega 128. Сейчас , на других весах , стоит человек и тупо жмёт кнопку , когда считает что вес стабилен. Это не наш метод . Поэтому , человека принято решение - исключить.


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 10 2012, 14:07
Сообщение #6


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



прогонять через фильтр и одновременно сравнивать вход и выход фильтра в течение N секунд. И как только ни одно (или иной критерий) измерение не выбилось за заданную наперёд дельту считаем переходный процесс законченным.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Tanya
сообщение Mar 10 2012, 14:26
Сообщение #7


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(demiurg_spb @ Mar 10 2012, 18:07) *
прогонять через фильтр и одновременно сравнивать вход и выход фильтра в течение N секунд. И как только ни одно (или иной критерий) измерение не выбилось за заданную наперёд дельту считаем переходный процесс законченным.

Или по производной. Или исследовать кривую вес - время. Подобрать аппроксимацию. Тогда можно предсказывать вес. Даже.
Автор не сказал, меняется ли реальный вес того, что взвешивается.
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Mar 10 2012, 14:34
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(Tanya @ Mar 10 2012, 18:26) *
Или по производной. Или исследовать кривую вес - время. Подобрать аппроксимацию. Тогда можно предсказывать вес. Даже.
Автор не сказал, меняется ли реальный вес того, что взвешивается.

Нет, взвешиваются готовые изделия , разных объёмов. От 1 до 300кг, вес может гулять до полкило. 250 грам в плюс и в минус на 300 кг.
Я пробывал просумировать все цифры веса в одной посылке (8 байт со служебной)-запомнить сумму , проссумировать следующую , если равно прибавить счётчик равенства, нет сбросить счётчик , запомнить текущую и т.д пока счётчик не достигнет заданной величины. Но пресловутые 0.05 естесвенно сильно меняют сумму , если даже счётчик совпадений практически стремится к своему значению. Достаточно одного изменения погрешности весов и всё начинается сначала


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 11 2012, 04:37
Сообщение #9


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(ILYAUL @ Mar 10 2012, 18:34) *
если равно прибавить счётчик равенства, нет сбросить счётчик
Нужно ввести дельту хотя бы, а не жёстко сравнивать.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Tanya
сообщение Mar 11 2012, 04:58
Сообщение #10


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(demiurg_spb @ Mar 11 2012, 08:37) *
Нужно ввести дельту хотя бы, а не жёстко сравнивать.

Вы что-то понимаете, или только догадываетесь?
Я вот не в силах понять тексты автора.
Go to the top of the page
 
+Quote Post
Палыч
сообщение Mar 11 2012, 07:33
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 2 399
Регистрация: 10-05-06
Из: г. Новочеркасск
Пользователь №: 16 954



Цитата(Tanya @ Mar 11 2012, 08:58) *
Я вот не в силах понять тексты автора.

Вероятно, ТС хотел сказать следующее:
Имеются весы непрерывно передающие измеренное значение на некий печатающий прибор. На весы ставят измеряемый груз. Показания весов начинают изменяться (вероятно, не только от того, что появился на весах груз, но ещё и от колебательных процессов в механизме весов). Через некоторое время показания весов "успокаиваются" (в терминалогии ТС): может быть и изменяются от показания к показанию, но на величину не более чем погрешность измерения веса - 0.05 кг. За окончанием переходного процесса измерения следит человек. Как только весы "успокаиваются", человек нажимает кнопку - устройство печатает вес изделия. ТС желает автоматизировать процесс измерения - убрать человека, нажимающего кнопку.

Если я правильно понял ТС, то алгоритм определения окончания переходного процесса следующий: величины измерения, выдаваемые весами за интервал времени Т лежат в диапазоне D-0.05 ... D+0.05 (т.е. между максимумом и минимумом показаний за интервал времени Т - величина не более 2 * 0.05 = 0.10 кг). Величина времени Т выбирается из значения частоты переходного процесса и периода измерений весов. Вот только, не понятно: если убрать человека, то как устройство узнает, что на чаше весов поставлен измеряемый груз?
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Mar 11 2012, 08:35
Сообщение #12


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(Палыч @ Mar 11 2012, 11:33) *

biggrin.gif a14.gif Только совсем человека не уберешь. кто-то должен ставить и снимать груз.
Весы стоят на вращающейся платформе - отсюда и лезет постоянная погрешность 0,05 грамм. Вроде всё и плавно , но если платформа не вращается-погрешность проявляется раз в несколько минут.
Цитата(Палыч @ Mar 11 2012, 11:33) *
Как устройство узнает, что на чаше весов поставлен измеряемый груз?

Ноль , они тоже передают в линию.


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post
Tanya
сообщение Mar 11 2012, 08:46
Сообщение #13


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(Палыч @ Mar 11 2012, 11:33) *
Вероятно, ТС хотел сказать следующее:

Сыграем в угадайку, телепаты!
Тогда нужно следить за дрейфом. Когда показания начинают резко изменяться - значит груз поменяли. Следим за весами. Когда показания начинают хорошо описываться формулой - дрейф + X(1-exp(-t/tau), находим X. Дрейф - константа(временная)*время.

Цитата(ILYAUL @ Mar 11 2012, 12:35) *
Ноль , они тоже передают в линию.

А как это можно понять?
Вы уж соберите мысли в кулак...
Go to the top of the page
 
+Quote Post
RabidRabbit
сообщение Mar 11 2012, 10:19
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 397
Регистрация: 3-12-09
Из: Россия, Москва
Пользователь №: 54 040



Странные весы, в тех, с которыми имел дело я (производства CAS), в той же ASCII посылке с весом присутствовал и признак "стабильного веса", а также признак "нуля".
Go to the top of the page
 
+Quote Post
ILYAUL
сообщение Mar 11 2012, 11:19
Сообщение #15


Профессионал
*****

Группа: Свой
Сообщений: 1 940
Регистрация: 16-12-07
Из: Москва
Пользователь №: 33 339



Цитата(RabidRabbit @ Mar 11 2012, 14:19) *
Странные весы, в тех, с которыми имел дело я (производства CAS), в той же ASCII посылке с весом присутствовал и признак "стабильного веса", а также признак "нуля".

Есть в их линейке весов и такие , со всеми признаками. Но заказчик выбрал эти ,в котором весь протокол состоит из 8 байт. Это по описанию протокола , что был выслан по моей просьбе. И шлют они поток ,по 8 байт, непрерывно , что есть груз , что нет его на весах . Нет груза идут одни 3D 30 30 30 30 2Е 30...3D...., есть - значит например 3D 30 30 37 2Е 38 35... Из принципа , что вижу то и пою.
Так , что ноль отлавливается легко. Достаточно повторения 30-ток подряд до 2Е + накопление результата. И 0,05 - не влияет. С ним вся петрушка , когда он начинает скакать в передаваемом весе.


--------------------
Закон Мерфи:

Чем тщательнее составлен проект, тем больше неразбериха, если что-то пошло не так
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 20:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.01517 секунд с 7
ELECTRONIX ©2004-2016