- Форум
- По малко от всичко
- Кофата
- inewton- срам и позор за СУ
Става въпрос за сауна, която трябва да измерва температурата в стаята за да може да функционира. Сауната има проблем с дизайна - сензора е в едно устройство, зад стъклото му, и явно стъклото е прекалено дебело, затова отчита грешната температура - може да е с 5-10 градуса разлика, правихме тестове и с втори сензор, който измерва истинската температура (имам данните за това както и тяхна визуализация).
Всъщност имаше лесно решение в малката тестова "стая" (или кутия) която имаме, тя е може би 2-3 кубични метра. Просто запомних резултата от последното измерване (измерванията са два пъти на секунда) и го сравних с това, за да видя с колко се е променила температурата - предположих, че в нашите условия сензора просто по-бавно реагира на истинската температура, но с плосък процент, затова реших просто да умножа тоя процент. (Всъщност ползвах linear regression за min least squares със съществуващи данни които включват истинската температуре и измерената, но това е просто за да намеря идеалното число, можех и на ръка).
Ето резултата (градуси във Fahrenheit): https://plot.ly/~8lackened/26/inaccu...or-correction/
- Ако изключиш зелената крива ще видиш и разликата между Measured / Actual.
- Също така, от тогава оправих резките промени в зелената крива, но нищо друго не съм променял.
- Зелената крива е формирана изцяло от синята - алгоритъма никога не е имал достъп до червената.
- Забележи аномалията в 275-346 - реалната температура спада, а измерената с ограничения ни сензор се покачва. Нямам обяснение за това.
Проблема със сегашното решение е, че е направено за малката стаичка. И дори да можем автоматизирано да научим сауната за всяка голяма стая какви параметри да ползваме, не съм убеден, че изобщо целия модел е достатъчно точен - има шанс да не може да се научи, все пак ползва само един параметър - скалирането на промяната от миналото до сегашното измерване. Ето усложненията свързани с другите стаи:
- Размера на стаята варира, така че всяко впръскване на пара е
- Разположението на генератора на пара (източника на топлина) спрямо сензора варира
- Мисля че материала на стените варира, тук не съм много запознат
Смяташ ли, че има някакво хитро решение с физика на проблема? Например да се измисли начин по който алгоритъма да е функция от размера на стаята, така че да работи с всички размери без да се налага да тестваме при тях. Или пък с някой по-хитър параметър от сегашното минус миналото измерване.
П.С. от крайно време им казвам просто да пробият дупка в стъклото, но не искат.
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Ще помисля малко и ще ти кажа ако измисля нещо. Утре вероятно.
Защо питаш физик, за инженерен труд
Решението което си им предложил е най-лесното..
И най-ефективно
Последно редактирано от Dwyd96 : 05-20-2016 на 13:39
А тоя сензор предполагам е термодвойка. От какъв материал е?
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Сензора е или SHT2X, или STS21 - понякога се ползва единия а понякога другия.
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Стените на стаята са били или от дърво, или от мрамор. (не знам дали има и други материали, все още ми липсва информация относно стаята)
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Аз малко не мога да си го представя. Значи това е сауна, която се включва/изключва при определена температура?
Сауната има две части - генератор и микропроцесор в който има софтуер и други работи, включително бутони за управление - зад стъклото на втората се намира сензора. Физически са отделни и май комуникират безжично.
Софтуера казва на генератора температурата, а генератора на базата на това решава какво да направи - дали да пусне още пара и май силата на струята.
Имаш пълен контрол над софтуера, получаваш измерената температура и можеш да я трансформираш както си искаш преди да я докладваш на генератора, можеш и да вземеш предвид предишни стойности.
И сега се сетих, че генератора също е вариращ компонент. Някои са по-силни от други и мисля, че някои работят по различен начин. Това е може би най-неприятната (за мен поне) част от проблема, но това е донякъде защото нямам понятие как може да се различават генераторите един от друг.
Последно редактирано от StringTheoryPracticist : 05-20-2016 на 14:04
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Аз съм повече по теорията, ама все пак ще помисля. За компютърната част абсурд да ти помогна.
За компютъра просто си представи, че може да смята всичко, което можеш да сметнеш на ръка. И като цяло че може да прави всичко което му кажеш.
Струва ми се, че точно по-добра теория ми трябва. (Ако смятам частта с вариращите генератори за теория). Ако изобщо съществува добро решение.
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Добре де, ами ако грешката е систематична? Т.е. ако за достатъчно голям интервал грешката е винаги 5℉ не може ли компютъра да работи с нея? Да му се зададе да работи с тая температура като се вземат отклоненията с рално измерената.
Плоски грешки не са проблем - лесно може да се промени алгоритъма така че сам да ги коригира. Същото важи за неправилно скалиране - тоест ако всеки път измерената температура е с конкретен процент по-ниска/висока, например ако заради дебелината на стъклото винаги виждаме само 90% от градусите. Тези два параметъра, компютъра може сам да оптимизира на място (благодарение на "linear regression", който споменах по-рано), заедно с третия параметър който е скалиране на разликата м/у сегашната и предишната измерена температура. С други думи, даже да се налагат различни стойности между различни стаи и генератори, компютъра вече може сам да ги оправи.
Това което ме притеснява е, че не знам как влияят вариациите в стаята и в генератора. Тоест възможно е сегашното решение вече да е идеално, но нямам гаранция, че е. А това е проблем защото ако се окаже че не е идеално ще се разбере в много неудобен момент - ще е по време на инсталацията на сауна в дома на нечии клиент. Някои клиенти живеят на друг континент.
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Според мен размерите на стаята не са проблем, при една и съща "мощност" на генератора температурата ще се достигне за различно време, де. Ама това не мисля, че е проблем.
Говорих с човека и имам потвърждение, че това са трите вариращи параметъра:
- Генератора
- Размера на стаята
- Материала на стените на стаята (не е ясно дали може да бъде нещо друго освен мрамор и дърво)
Мисля си дали това което описах в миналото съобщение не би било достатъчно добро при всички възможни стойности на трите параметъра - при всеки клиент, програмата се оставя да си върви за около час с реален/външен сензор и оптимизира тези параметри, след това се маха допълнителния сензор и се оставя да работи така. Все пак е работило при един клиент и то без оптимизация - с ръчна нагласа на само един от тези параметри.
ima edna duma koqto nikoga ne kazvam i tq e nemoga
Да де. Нали и аз това ти казах. Градуираш го (сензора) щом ставало толкова лесно и не би трябвало да има проблем.
Много сте умни.![]()
Корабчето е прав. Остава само да премерите сили на партия шах!