| 
			| 
					
						| xelos 
								Гость
 | 
								|  | «  : 06-01-2006 10:42 »  |  | 
 
 в общем, такая фигня... 
 собрал девайс. Девайс меряет давление в баллоне со сжатым воздухом (баллон по типу для подводного плавания) - давление 300 атм, объем баллона известен, температура воздуха в нем нет.
 
 начинаем потреблять воздух из баллона (типа дышим воздухом оттуда). Давление есс-но падает. Девайс должен рассчитать при текущем потреблении на скока долго хватиит воздуха. Потребление неизвестно (дышим, а при дыхании неизвестно с какой частотой и с каким объемом воздуха дышим).
 
 Вроде формула напрашивается сама собой - меряем падение давления за промежуток времени и потом давление делим на падение.
 
 у тут начинаются загвоздки... При постоянном потреблении - падение давление при высоком давлении отличается от падения при "низких" давлениях (порядка 100 атм). Первое размышление и воспоминание термодинамики дало - воздух не идеальный газ и его коэффициент сжимаемости не равен 1 при 300 атм (он изменяется от 1 при 200атм, до 0,9 при 300 атм). Корректируем это - чуть получше, но все равно далеко от идеала.
 
 Дальше вспоминаем, что при снижении давления в баллоне происходят различные термические эффекты (сжатый воздух в баллоне охлаждается), зависящие от скорости потребления воздуха... Попробовал изменить формулу - базируясь на аддиабатическом процессе (если надо, могу формулу привести)... еще чуть получше, но все равно далековато от идеала...
 
 в общем все что придумал - сделал кучу опытов, и вроде, как нарисовалась зависимость коэффициента корректировки от давления (формула старая, давление/падение давления, корректируем падение давления в зависимости от давления)... Могу графики показать... Ничего лучше в голову не лезет... Может кто сталкивался с подобной задачей? любые идеи приветствуются, а то уже целый месяц над этим бьюсь...
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Алексей++ 
								глобальный и пушистыйГлобальный модератор    Offline 
								Сообщений: 13
								
								
								
								
								
							 | 
								|  | « Ответ #1 : 06-01-2006 11:25 »  |  | 
 
 а если по нескольким подряд замеренным точкам оценивать кривую и по касательной в последней точке для каждого следующего момента определять скорость, а далее - по второй производной - ускорение изменения давления? ну и принять допущение, что третья производная равна нулю   то есть а дальше расчитать, за сколько времени эта мгновенная формула сожрёт объём ps просто мысль, реализовать бы я с трудом мог сам |  
						| 
								|  |  
								| « Последнее редактирование: 06-01-2006 11:29 от Алексей1153 » |  Записан | 
 
 |  |  | 
	| 
			| 
					
						| RXL | 
								|  | « Ответ #2 : 06-01-2006 11:30 »  |  | 
 
 Мы говорим все таки об акваланге и человеке, или о процессах в атмосфере с нормальным давлением?Т.е. каковы условия эксплуатации системы?
 
 |  
						| 
								|  |  
								| « Последнее редактирование: 06-01-2006 11:31 от RXL » |  Записан | 
 
 ... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #3 : 06-01-2006 11:52 »  |  | 
 
 Мы говорим все таки об акваланге и человеке, или о процессах в атмосфере с нормальным давлением?Т.е. каковы условия эксплуатации системы?
 
 
 и то, и то верно - используется данный девайс для защитных аппаратов пожарников. Т.е. принцип как у акваланга, а используется при атмосферном давлении. чтобы не заморачиваться раньше времени - при температуре 25°C. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| RXL | 
								|  | « Ответ #4 : 06-01-2006 12:00 »  |  | 
 
 Какой параметер замеряет датчик?До или после редуктора давления?
 |  
						| 
								|  |  
								|  |  Записан | 
 
 ... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #5 : 06-01-2006 12:03 »  |  | 
 
 а если по нескольким подряд замеренным точкам оценивать кривую и по касательной в последней точке для каждого следующего момента определять скорость, а далее - по второй производной - ускорение изменения давления? ну и принять допущение, что третья производная равна нулю   то есть а дальше расчитать, за сколько времени эта мгновенная формула сожрёт объём ps просто мысль, реализовать бы я с трудом мог самтак проблема в том и состоит, что при одинаковом потреблении воздуха скорость падения давления - разная. потребление определяется объемом воздуха, например 50 л/мин. и проблема в том, что если мы выпустим 50 л, при 300 атм падение давления будет не таким, как при 100 атм. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #6 : 06-01-2006 12:05 »  |  | 
 
 Какой параметер замеряет датчик?До или после редуктора давления?
 
 высокое давление до редуктора, точность датчика 0,5 атм. объем баллона - 6-12 л, потребление человеком воздуха может меняться от 20л/мин, до 100. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Алексей++ 
								глобальный и пушистыйГлобальный модератор    Offline 
								Сообщений: 13
								
								
								
								
								
							 | 
								|  | « Ответ #7 : 06-01-2006 12:26 »  |  | 
 
 ам. Понял. Как-то туда надо учесть внешнее...  |  
						| 
								|  |  
								|  |  Записан | 
 
 |  |  | 
	| 
			| 
					
						| RXL | 
								|  | « Ответ #8 : 06-01-2006 12:49 »  |  | 
 
 Тогда, самое простое - это ввести поправочный коэфициент. Например, вычислить его заранее для нескольких точек, а потом получатать значение интерполяцией для текущего давления в балоне. |  
						| 
								|  |  
								|  |  Записан | 
 
 ... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #9 : 06-01-2006 13:00 »  |  | 
 
 так я это так и сделал, хотелось бы еще точнее... проблема в том, что этот поправочный коэффициент меняется от скорости потребления воздуха, от объема баллона и от температуры окружающей среды. Температуру окружающей среды, в принципе, я могу мерять, но зависимость все равно остается от трех параметров и экспериментально установить  как этот коэффициент меняется в зависимости от каждого отдельного параметра представляется проблематично - при желании можно, конечно, но все эти тесты растянутся на неопределенное время...ошибка может составлять до 30 процентов. обосновать с натягом можно почему такая ошибка - исходя из точности датчика и периода измерения падения давления.  Есть еще решение - увеличить длительность между двумя замерами, но и так уже еле-еле втискиваюсь в ТЗ - максимальный период между двумя измерениями - 2 минуты.
 
 если посчитать ошибку - получается, если грубо:
 
 при максимальном баллоне, объем воздуха: 12 л* 300 атм * 0,9 = 3240 л воздуха,
 при потреблении 20 л/мин или 40 л/2 мин, т.е. через 2 минуты у нас останется 3200 л,  переводим обратно в давление: 3200/12/0,9 = 296,3 атм
 при точности датчика в 0,5 атм получим 296,5, т.е падение было 3,5 атм.
 считаем на скока нам хватает воздуха: 296,5/3,5 = 85 мин
 
 следующие 2 минуты - еще - 40 л, давление 3160/12/0,9 = 292,6 или 292,5 с датчика, падение давления - 4 атм
 считаем скока осталось: 292,5 / 4 = 73 мин
 
 т.е. теоретически эта ошибка максимальная... на практике из-за всего, о чем я говорил вначале ошибка достигает 30%. и это много...
 в окнце теста при давлениях от 100 атм - формула работает отлично, а вот вначале - эту ошибку и имеем...
 |  
						| 
								|  |  
								| « Последнее редактирование: 06-01-2006 13:18 от xelos » |  Записан | 
 |  |  | 
	| 
			| 
					
						| Finch 
								СпокойныйАдминистратор    Offline 
								Пол:    
								Пролетал мимо
								
								
								
								
								
							 | 
								|  | « Ответ #10 : 06-01-2006 13:09 »  |  | 
 
 Давай пойдем от противного. Объем баллона величина практически постоянная. При данной температуре, при данном давлении в балон помешается определенная масса воздуха. Если воздух течет равномерно после понижаюшего редуктора, значит масса воздуха в балоне уменьшается на это количество. Отсюда следует чтобы найти примерное время расходывания, надо
 t=(Mmax - Most)/Mexit
 где,
 Mmax - масса полного баллона
 Most  - остаточная масса
 Mexit - масса выхода за единицу времени.
 
 Давление полного баллона зависит от температуры и массы.
 Остаточное  давление и остаточная масса также зависит от температуры. (ну не верю, что редуктор идеальный и будет выдавать полностью весь воздух из баллона)
 Масса выхода газа примерно постоянная величина по условиям задачи.
 Ты хочеш найти зависимость массы выхода от градиента давлений.
 Я так думаю это будет не прямая линейная зависимость. А скорее всего что то типа графика косинуса в первой четверти.
 
 |  
						| 
								|  |  
								|  |  Записан | 
 
 Не будите спашяго дракона.              Джаффар (Коша) |  |  | 
	| 
			| 
					
						| RXL | 
								|  | « Ответ #11 : 06-01-2006 13:34 »  |  | 
 
 Finch, расход все же не линейный, а пульсирует в такт дыханию. Потом, на показание датчика влияет скорость газа, проходящего мимо него (все зависит от конструкции и положения датчика). В момент вдоха он может показать меньшее значение.
 Тут задача сходная работе экономайзера в авто: есть мгновенный расход, а есть средний и нужно расчитать на сколько еще хватит.
 
 Думаю, что выдача только оставшегося времени не совсем верна, т.к. при разном потреблении может меняться в несколько раз. Представте себе: пожарный спокойно стоя, проверяет запас воздуха и видит, что его на 10 минут, потом начинает активно двигаться и хватает запаса на 2 минуты. Какая польза от такого предсказания?
 Лучше выдавать несколько _примерно_ расчитанных значений: оставшееся время по минимальному, максимальному и среднему (не за весь период, а, скажем, за последние пару минут) значению. Тут точно никак не расчитаешь: ведь неможет железка знать, чем будет заниматься человек.
 Ну и, чтобы быть информативнее и совсем запутать пожарного, выдать остаток в литрах или килограммах.
 
 |  
						| 
								|  |  
								|  |  Записан | 
 
 ... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. |  |  | 
	| 
			| 
					
						| Алексей++ 
								глобальный и пушистыйГлобальный модератор    Offline 
								Сообщений: 13
								
								
								
								
								
							 | 
								|  | « Ответ #12 : 06-01-2006 13:37 »  |  | 
 
 кстати, о птичках: архиватор показывает ПРИКИНУТОЕ время , оставшееся до. Условия эксплуатации схожие - железо разное, уровень занятости проца - непредсказуем. Почему бы не сделать так? Тогда двух производных достаточно |  
						| 
								|  |  
								|  |  Записан | 
 
 |  |  | 
	| 
			| 
					
						| RXL | 
								|  | « Ответ #13 :  06-01-2006 13:44 »   |  | 
 
 Алексей1153, несравнимые задачи: время архивации не является жизненноважным фактором... xelos, почитай тут: http://sapr2000.ru/invision/index.php?showtopic=2728 Они про метан говорят, но смысл тот же - мерить расход. |  
						| 
								|  |  
								| « Последнее редактирование: 06-01-2006 13:46 от RXL » |  Записан | 
 
 ... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. |  |  | 
	| 
			| 
					
						| Алексей++ 
								глобальный и пушистыйГлобальный модератор    Offline 
								Сообщений: 13
								
								
								
								
								
							 | 
								|  | « Ответ #14 : 06-01-2006 13:52 »  |  | 
 
 согласен, не является   задачи отличаются только тем, что в программе минимальная скорость ==0 , а у воздуха из баллона == (Vmin != 0) |  
						| 
								|  |  
								|  |  Записан | 
 
 |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #15 : 06-01-2006 14:05 »  |  | 
 
 Finch, это понятно, теоретически можешь подтолкнуть к формуле?потому что сейчас я чисто экспериментально установил поправочный коэффициент.  Насчет редуктора - редуктор двухступенчатый - высокое давление понижается до 7 атм, потом 7 атм до 1атм. Так что редуктор очень приближен к идеальному. Есть механические шумы (при замере давления) - но они видны только при открытии вентиля высокого давления.
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #16 : 06-01-2006 14:13 »  |  | 
 
 Finch, расход все же не линейный, а пульсирует в такт дыханию. Потом, на показание датчика влияет скорость газа, проходящего мимо него (все зависит от конструкции и положения датчика). В момент вдоха он может показать меньшее значение.
 Тут задача сходная работе экономайзера в авто: есть мгновенный расход, а есть средний и нужно расчитать на сколько еще хватит.
 
 Думаю, что выдача только оставшегося времени не совсем верна, т.к. при разном потреблении может меняться в несколько раз. Представте себе: пожарный спокойно стоя, проверяет запас воздуха и видит, что его на 10 минут, потом начинает активно двигаться и хватает запаса на 2 минуты. Какая польза от такого предсказания?
 Лучше выдавать несколько _примерно_ расчитанных значений: оставшееся время по минимальному, максимальному и среднему (не за весь период, а, скажем, за последние пару минут) значению. Тут точно никак не расчитаешь: ведь неможет железка знать, чем будет заниматься человек.
 Ну и, чтобы быть информативнее и совсем запутать пожарного, выдать остаток в литрах или килограммах.
 
 RXL, ты правильно понял проблему. Насчет информативности - в обязательном порядке выдается давление воздуха в баллоне (стандарты обязывают). Мы оговариваем, что показываемое оставшееся время - это при текущем потреблении, естественно потребление может меняться от физической нагрузки и предугадать нагрузку мы не можем. Спасибо за ссылку, читаю. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| RXL | 
								|  | « Ответ #17 : 06-01-2006 15:06 »  |  | 
 
 Я бы сделал так:1) вычислить минимальное гарантированное время по максимальному значению расхода, вычисленного заранее практически и с запасом
 2) вычислить средний расход за время tn для N периодов времени (конец периодов общий - последний замер)
 3) назначить каждому вычислению некий весовой коэфициент, сложить результаты и разделить на сумму коэфициентов (или заранее нормализовать коэф., чтобы их сумма равнялась единице). Результату п1  назначить самый высокий вес, результатам п2 - в зависимости от периода (чем больше, тем меньше вес).
 
 Получается нечто вроде одного нейрона, с набором разновесных входов и аналоговым выходом. Существуют методики его обучения (см. лит). Задача обучения: чтобы ф-ия реального расхода и ф-ия выхода нейрона максимально соответствовали.
 
 Что касается точности определения давления, то я бы выбирал из замеров максимальное значение между вдохами, когда расход минимален (или отсутствует) и влияние динамических процессов то же минимально.
 
 Температурный датчик, в идеале, нужно поместить внутрь балона, чтобы был хороший контакт с основной массой газа, а с аппаратурой и корпусом балона - минимальный.
 
 |  
						| 
								|  |  
								|  |  Записан | 
 
 ... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. |  |  | 
	| 
			| 
					
						| Alf 
								Гость
 | 
								|  | « Ответ #18 : 06-01-2006 17:48 »  |  | 
 
 Попробовал изменить формулу - базируясь на аддиабатическом процессе (если надо, могу формулу привести)...  Спасибо, не надо. А с какой радости этот процесс является адиабатическим? Неужели баллон настолько теплоизолирован, что за все время использования можно пренебречь теплообменом? Я бы добавил датчик температуры, благо, сейчас это копеечное дело. Тогда можно воспользоваться уравнением Менделеева-Клапейрона: P*V = (m/m )*R*T Объем баллона известен и не изменяется, молярная масса дыхательной смеси тоже. Температуру и давление знаем по показаниям датчиков. Массу оставшейся в баллоне смеси получим без труда: m = (P*V*m )/(R*T) Если наделить прибор небольшим интеллектом, он может подсчитать, сколько смеси потребляется в единицу времени, а значит, предсказать, на сколько времени хватит остатка при условии постоянного потребления. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #19 : 06-01-2006 17:56 »  |  | 
 
 датчик внутрь низзя - вся электроника уже в производстве, карточки заказаны.... |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #20 : 06-01-2006 18:02 »  |  | 
 
 А с какой радости этот процесс является адиабатическим? Неужели баллон настолько теплоизолирован, что за все время использования можно пренебречь теплообменом?
 предполагаем, что за время между 2 замерами (достаточно небольшое для тепловых процессов) теплообмена нет. конструкция баллона такова, что он сложнокомпозитный, из специальных пластиков. Теплообмен идет только через вентиль баллона (он металлический), и его поверхность мала. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Alf 
								Гость
 | 
								|  | « Ответ #21 : 06-01-2006 18:05 »  |  | 
 
 Ну тогда звиняйте. Как видно из приведенной формулы, давление прямо пропорционально температуре при нулевом потреблении. Так что если кто откинет ласты от удушья по причине того, что его баллоны нагрелись в огне и датчик показал несколько лишних литров, которых в помине нет, пусть не обессудит - не переразводить же платы из-за таких мелочей. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| xelos 
								Гость
 | 
								|  | « Ответ #22 : 06-01-2006 18:19 »  |  | 
 
 первый показатель, на который ориентируются пожарники - давление в баллоне (инструкция у них такая). расчет оставшегося времени - это приблуда. кто-то кому-то когда-то пообещал, теперь это надо делать. воздух в баллонах не нагревается - баллоны на спине, плюс очень хорошая теплоизоляция самих баллонов.
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Finch 
								СпокойныйАдминистратор    Offline 
								Пол:    
								Пролетал мимо
								
								
								
								
								
							 | 
								|  | « Ответ #23 : 06-01-2006 20:02 »  |  | 
 
 первый показатель, на который ориентируются пожарники - давление в баллоне (инструкция у них такая).
 Ну это зависит от менталитета. Если говорить скажем о немцах. То они будут следовать букве инструкций. Если о других то будут следовать "Как удобно". Знакомый мой работал в ГДР 1989 году монтажником высоковольтных линий. Бригада была смешанной. Половина немцев. Половина из Союза. Немци застегивали пять строп страховки (согласно инструкции). Наши застегивали одну стропу (согласно "как удобно). Хотя в экстремальных проффесиях все таки стараются следовать букве инструкий. Но герои всегда найдутся. Здесь также не известно какая смесь в баллоне. При таких давлениях скорее всего часть газа будет сжиживаться. Как известно жидкость намного хуже уплотняется.  |  
						| 
								|  |  
								|  |  Записан | 
 
 Не будите спашяго дракона.              Джаффар (Коша) |  |  | 
	| 
			| 
					
						| RXL | 
								|  | « Ответ #24 : 06-01-2006 20:14 »  |  | 
 
 Finch, азот и кислород при таком давлении и комнатной температуре пока еще газы.xelos, если не изменяет мне память, живет во Франции - надеюсь, там безалаберности меньше.
 |  
						| 
								|  |  
								|  |  Записан | 
 
 ... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С. |  |  | 
	|  |