Теплосчетчик

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Теплосчетчик

Сообщение Аlex »

Ваша формула, приблизительно, имеет вид
a = (b/10000) * (c/10000);
Привидите её к общему делителю. Т.е.
a = (b*c)/10000;
В таком случае точность вычислений возрастёт. Т.к. , в Вашем случае, при делении b и c на 10000 , теряются дробные части. Они же целочисленные.
Либо явно приводите к знаковому значению.
a = (long)( (float)(b/10000) * (float)(c/10000) );
Но, в таком случае, можно забыть об экономии ресурсов.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

а я разве не упоминал переполнение?
допустим
номинальный проток 123,4321 грамм в секунду - это цифра 1234321
второй - коэффициент 4,18... представлен тоже как 41789
ну и конечно же разница температур например 9.878 градуса это 98780

давайте ка перемножим эти цифры?
получается цифра
5095175157771820
а максимум что влазиет в лонг инт это
4294967295

не кажется что чтото длинновато....у нас-то получилось....
вот и отказывайся от флоатов....
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Теплосчетчик

Сообщение Аlex »

clawham писал(а):получается цифра
5095175157771820
Так она, даже делённая на 10000, не влезет в лонг :)
Тут и флоат не спасёт :facepalm:
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

из этого числа полезные данные только
50951751

всё остальное за пределами требуемой точности!!!!!
проблема - переполнение!!!!
не забывайте что у нас дельта умноженная на 10000, коэффициент умноженный на 100 и проток умножен на 10000 когда мы эти числа перемножаем нам надо откинуть лишное четыре цифры вначале но ттолько так чтоб не потерять точности....


а вот флоат....ххы....вы меня конечно извините но это именно тот случай когда флоат нужен....он спасает и всё делает правильно!!!!
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Goodefine
Держит паяльник хвостом
Сообщения: 906
Зарегистрирован: Ср апр 16, 2008 13:22:54
Откуда: Приднестровье, Тирасполь

Re: Теплосчетчик

Сообщение Goodefine »

clawham писал(а):номинальный проток 123,4321 грамм в секунду - это цифра 1234321

Не совсем понятно зачем считать десятые доли миллиграммов. Даже чисто умозрительно это явно лишнее. Например, Вы писали что счетчик выдает один импульс при проходе 24.42 гр воды. Я не знаю какая у него погрешность, допустим +-5%. Это означает что реальное количество лежит где то между 23.03 и 25.64 гр. Соответственно за пять импульсов (для ровного счета) в секунду это 115,15-128,20 гр. Совершенно очевидно, что нет смысла считать что число 123,4321гр с такой точностью - это это лишь точность математическая, не имеющая к реальной точности никакого отношения. Там даже целое число граммов может не являться ЗНАЧАЩЕЙ цифрой. Поэтому в Вашем примере можно откинуть не только последние две цифры, но и три. Это уже на три порядка меньше. Т.е. 123.4 гр (1234). Идем дальше.
ну и конечно же разница температур например 9.878 градуса это 98780

Погрешность данных датчиков температуры 0.5 гр. Поэтому в температуре десятая доля градуса потолок. Итог - 9.8 гр (98).
Я не знаю что такое 4.18, но если принять даже 418 (нет смысла ловить блох при таких погрешностях остальной системы) получим:
1234*98*418 = 50549576 << 4294967295 (Коэффициент деления разумеется уже другой - тоже меньше)
Т.е. у Вас классический случай когда цифр после запятой много, но толку от этого нет, поскольку погрешность это все съедает напрочь.
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

П.С. Если ктото не понял сути то....это целочисленная арифметика...тут подразумевается что дробная часть это три знака младших в любом числе...тоесть все числа представляются помноженными на 10000

принимая во внимание этот факт я и вывожу на экран не 1234556 а 123.455
последний разряд - для коэффициентов и бОльшей точности

потому сложение и вычитание происходит как и обычно
а вот умножение.....

при умножении числа (a*10000) и (b*10000) мі получим на выходе число (a*b)*10000*10000
следовательно...аткой результат нам бы надо бы поделить на 10000 и мы получим наше стандартное представление числа с фиксированной точкой....

тоесть по идее я не смогу умножить числа больше 65535 на 65535 или например 171900 и 25000

потому надо уменьшать точность ...деля наши числа на некой коэффициент.....
но как найти компромисс между хранением большого числа и нормальной точностью....


а теперь поговорим по поводу точностей!!!!!!!!!!
погрешность данных термометров это интеграл всех погрешнойстей в интервале температур -40 +125
имея одну и ту же температуру они показывают ВСЕГДА ОДНО И ТО ЖЕ значение - погрешностей НЕТ я лично это проверял в морозилке и кипятке

мне ведь не нужно абсолютно точное значение абсолютной температуры...для меня имеет значение только разница и они эту разницу отрабатывают поверьте...именно на 0.0625 доле градуса

теперь водомер....+-5% для бытовых измерительных приборов? их поверяют на приборе 0.1% и вгоняют в погрешность 0.5% !!!! у меня например все счетчики были поверены и переповерены....по знакомству за бутылку :)

дальше измерение частоты этих импульсов - прерываниями...не поверите...иногда кажется что тепломер завис - все показания как впоканные...что проток что мощность что температуры....система то очень инерционная...меняются только накопительные счетчики :) ну и лампочка моргает на водомере

дальше....коэффициенты....
коэффициент 4.18 ... это перевод одной калории / секунду в ватты....
у меня нет отопления...очень слабо.....50 калорий в секунду в среднем...
а как несчет долей калории? ведь если эти доли отбрасывать то будет накапливаться большая погрешность в накопительных счетчиках? и каждую секунду мы могем отбросить до одной калории....а если упростить и коэффициент перевода импульсов в граммы то ещё полторы калории....в мусор?....извините меня но .... это будет что? счетчик или херня которая не считает а показывает невесть что и вносит своими неправильными вычислениями ещё бОльшую погрешность чем все погрешности всех датчиков перемноженные между собой?? это тогда не счетчик будет а хрень....я надеюсь вопросов о надобности точности в 4 знака после запятой больше не возникнет?

да..и ещё....погрешности не съедают друг друга....они ДОМНОЖАЮТ друг друга.....и если моя программа будет считать +-15 процентов и датчик имеет +- 5 процентов то это уже будет +-25 процентов примерно.....не многвато ли?
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Goodefine
Держит паяльник хвостом
Сообщения: 906
Зарегистрирован: Ср апр 16, 2008 13:22:54
Откуда: Приднестровье, Тирасполь

Re: Теплосчетчик

Сообщение Goodefine »

Вас мне кажется заносит в крайность. Про целочисленную арифметику я знаю, но это не значит что разницу температур например, надо представлять до тысячных. Это... неправильно. Поскольку там и десятая под вопросом. То что датчики показывают одну и ту же температуру постоянно это ничего не значит - разница температур величина физическая - и точнее чем 0,5гр датчик не гарантирует. Следовательно и разница может быть в градус (один в плюс врет, другой в минус). Смысл считать тысячные? При целочисленной арифметике домножают только чтоб не съелись ЗНАЧАЩИЕ цифры, для каждого значения на свой коэфф, хоть на 10 (один знак после запятой) хоть на 1000 (три знака) а не тупо на 1000 везде.. Тем более когда это бессмысленно.
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

хорошо
домножаем температуру в грудасах на 10
окей
что будет при разнице температур 0.0625 ?
а при протоке 400 грамм в секунду? НОЛЬ? тепла НЕТ?

термометры НЕ ВРУТ находясь вместе в одной и той же температуре я ещё раз повторяю...
да возьмите сами их вместе термоусадкой и хоть в холодильник хоть в кипяток....

они могут вместо нуля показать 0.5
или вместо +125 показать +124,5
но мне эта инфа побоку...мне нужна дельта...нет между двумя подобранными вручную датчиками разницы в пол градуса...если есть - отложите один из них и возьмите третий :)
это ж не производство!

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

тут же не стоит забывать что вывод на экрна и на ком порт унифицирован....ничего лишнего нет...и работает красиво...

просто тупо взять проток в граммах целых и умножить на целый округленный коэффициент 4 и на разницу температур 10 градусов? это помоему не вычисления счетчика..если и вычисления будут иметь тауую дискретность то кому он такой будет нужен?
меняется температура меняется проток а он как показывал 120 ватт так и показывает? чтото тут не то....
эксперимент с целочисленной математикой я лично для себя завершил - херня редкая точности ноль глюков выше крыши наглядность вычислений и формул = нулю....

как мне например узнать программно что произошло переполнение этого лонгинта?способа то нет....

как нет и способа динамически менять разрещающую способность
например на мощностях 0...100 хвостик после запятой чтото да и значит...а вот на мощностях 2-10 киловатт....хвостик уже не нужен...но я ж не узнаю сколько там киловатт пока не посчитаю а посчитать я не могу - не влазию....получается надо брать худший из вариантов....тоесть шаг дискретности вычисления увеличивать .... аргументируя это тем что "..а....всёравно датчики херня..." ну тогад это получается не прибор а херня в квадрате...
флоат тем и хорош...что он одинаково хорошо работает и с маленькими числами и с неописуемо большими...да....точность небольшая...но её более чем за глаза хватает....
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Goodefine
Держит паяльник хвостом
Сообщения: 906
Зарегистрирован: Ср апр 16, 2008 13:22:54
Откуда: Приднестровье, Тирасполь

Re: Теплосчетчик

Сообщение Goodefine »

Да нет у Вас значения 0,0625 град. На данной элементной базе нету!!! Это получится псевдоприбор, который показывает типа офигенно точно, а на самом деле цифры далеки от реальности. И где это кстати, такая разница может быть???

Еще раз на пальцах, с учетом новых данных.
Считаем идеальный вариант. Исходные данные
Расход 24,42*5=122,1000 (1221000) - с предлагаемой вами точностью
Разность - 9,878 (9878)
Коэфф 4,18 (41789)
Считаем 1221000*9878*41789/100000000=5040187,16982
На экране видим 5040187 - Ваш идеальный вариант

Считаем мой:
1221*98*418/10=5001704,4
Видим на экране 5001704
Отличие от вашего - 0,76%

Теперь посчитаем реальную точность - расход (точность 0,5%)
Доверительный интервал 121,4895 - 122,7105 (1214895-1227105)
Температура 9,878 - при нулевой погрешности в градусах, либо от 8,878 - 10,878 - при максимальной (а точнее не гарантированно)
Коэфф 41789 пусть будет.

Считаем для нулевой погрешности температуры сначала
min
1214895*9878*41789/100000000=5014986 (сразу целые)
max
1227105*9878*41789/100000000=5065388
Теперь с температурой (возьмем даже полградуса, по минимуму):
min
1214895*9378*41789/100000000=4761139
max
1227105*10378*41789/1000000=5321785
Итого, реальное число лежит в пределах 4761139-5321785
Это тот интервал который можно указывать характеристиках.
На экране у Вас 5040187
У меня 5001704
Оба попадают. Но памяти для моего потребуется намного меньше..
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

конечно
ага
впринципе правильно
это вы влезли в примерный максимум 5 киловатт с одной батареи это сложно получить
но давайте вот пример реальный
0,1875 градуса перепад и два импульса в секунду пришло со счетчика
нука пересчитайте по вашему?

это у меня дома так топят всему дому....абсолютно бОльшее кол-во времени...да...иногда бывают прорывы...но...в основном вот так...
что будет Ваш метод показывать?
неужто ноль?
а батареи то тёплыет....30 градусов :) да ... ними не натопиш..но ведь они тёплые...и какое-то тепло отдают...
Последний раз редактировалось clawham Чт ноя 24, 2011 13:11:51, всего редактировалось 1 раз.
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

кстати как насчет протока самотёком? в паровых системах отопления....там один импульс за 10 секунд накручивается....
зато перепад температур 20 градусов или и того больше....

я наверное сделаю условие....
если проток маленький то и считаем его в моём формате....а если большой то берет только целую часть или и того меньше....на больших протоках уже и точность учета падает....
максимум 20 герц нормальной точности получается.....если надо бОльшие значения - нужно просто после счетчика ставить делитель и умножать коэффициент 24.42 на коэффициент делителя....а тут опять вопрос точности задания коэффициента....
что же делать ....
счетчики то бывают 24 грамма на испульс а бывают и 1000 грамм на литр...а есть и 10 грам на импульс....

п.с. конечно 8 % свободной флешки это классно и ....именно изза этого я вот 4-й день парю голову пытаясь всётаки оправдать использование такого рода цычислений в целом виде...но ...ну ... не получается....
получается как у нас в теплосети купили крутой теплосчетчик промышленный.....мультикал....установили ... настроили поверили...всё супер пупер....зашибись.....как дошли до дела - оказалось проток больше 30 кубов в час он ПЕРЕПОЛНЯЕТСЯ и например на 31 кубе в час - показывает 1....вот так вот наше предприятие и наёпывали три года подряд 4 таких счетчика....топим плохо - гигакалории летят как положено...жильцы правда жалуются...вот...плохо топите а денег больше....а когда топим хорошо и давим 7 килограмм в циркуляционных нансосах - хопа....денег с каждого жильца мало и они замолкают..а у нас по итогам отопительного периода минус полтора миллиона...откуда? разюираться - разница есть....из котельны вышло 1500 гигакалорий в месяц ... а посумировали все счетчики - дошло 800 гигакалорий....куда всё остальное делось? сделали внеплановую поверку всех теплосчетчиков и точек учета в целом....всё СУПЕР....серитификаты есть...и только чистая случайность - сантехник сорвал пломбу(полотенца на теплотрассе сушил) и пришел инспектор и увидел там единичку....в кубах расхода...позвонил...а мы то давим 7 кило(вместо 4-х положенных) вооот...
понимаете к чему я клоню?
где место фикс поинту а где место - флоату....
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Goodefine
Держит паяльник хвостом
Сообщения: 906
Зарегистрирован: Ср апр 16, 2008 13:22:54
Откуда: Приднестровье, Тирасполь

Re: Теплосчетчик

Сообщение Goodefine »

clawham писал(а):но давайте вот пример реальный
0,1875 градуса перепад и два импульса в секунду пришло со счетчика
нука пересчитайте по вашему?

Да легко, по Вашему
24,42*2*10000=488400
488400*187*41789/100000000=38166
По нашему
4884*2*418/10=40830
Разница около 7%
Учитывая, что заявленная точность разницы температуры (0,1875 гр.) это фантастика, то выводы очевидны :)

Мне эта ситуация напоминает случаи, когда 24 битным ацп меряют напряжение типа с точностью до х/з какого знака, не обращая внимания что из-за других недочетов у них неверен уже второй разряд. На практике даже одну десятую градуса отловить это задача нетривиальная и дорого решаемая. А когда сотки и тысячные (уж про десятитысячные промолчу) ловят на ширпотребных датчиках с заявленной точностью в пол градуса, мотивируя тем что мол показывают одинаково... Ну право, несерьезно...
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Теплосчетчик

Сообщение Аlex »

То, что они показывают одинаково - не значит, что правильно. И у меня три, рядом стоящих, датчика показывали одинаково. И что ? Их заявленная точность 0.5C', значит разница между ними может быть до 1.0C' при одинаковой температуре.

По переполнениям и точности вычисления.
clawham, может Вам тогда ещё учитывать остатки от делений ? Типа поделили на 10000 и сохранили остаток. Потом этими остатками подгоните свою точность, поделив их на нужное значение. Ну или умножив... что там нужно сделать... :roll: Голова у меня уже не соображает :P
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

да что вы ко мне прицепились с этой точностью Их заявленная точность 0.5C'
да вместо +38 они могут показать +38,5
мне не нужно это абсолютное значение!!!!
они одинаково врут оба!!!!
эта погрешность самокомпенсируется...то что они оба наврали в +0,5 ....я ж вычитаю одного из другого!!!

посмотрите в шите графики....разница в погрешности при 10-ти градусах и при 20-ти 0.001 процента....они одинаковы эти погрешности....а -10...+30 градусов это нереальный перепад ...
ито...на 40-ка градусах иметь 0,5 градусов МАКСИМУМ неточности - ну несущественно...

то что они показывают одно и то же - это означает что погрешность эта нормирована их структурой и всегда одинакова или если и меняется то оинаково в интересующем нас диапазоне температур....
как по мне так мне вообще пофиг сколько они показывают...мне надо знать что один LSB ихнего замера равняется 1/16 градуса....начальная точка отсчета меня не интересует....
я меряю разницу...дельту...при одинаковом протоке и разнице в один LSB между термометрами я всегда получу одинаковое кол-во тепла хоть при 0 градусов хоть при 125 градусах....и то что там не 150 а 124,5 меняф не ипёт ибо второй то тоже показывает 124,5 ....в чём проблема? добиться абсолютной точности - да...это нереально ...насколько линейного усилителя и элемента чувствительного просто нет чтоб иметь абсолютную погрешность 1/16 градуса...не спорю...но...разница то она справедлива всегда!

в общем я подумал и решил делать динамический множитель....я буду проверять каждую переменную на предел 65535...если она больше - я поделю переменную на 10 и уменьшу выходной делитель на 10 ... тогда всегда всё будет правильно...
а исходные данные всегда помещаются в лонгинт при домножении на 10000.....вот только не знаю как по коду это выльется...
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Теплосчетчик

Сообщение Аlex »

мне не нужно это абсолютное значение!!!!
они одинаково врут оба!!!!
Да не будут они одинаково врать :) С чего Вы это взяли ? С того, что они у Вас показывают одинаковые значения ?
Один может наврать в плюс, другой в минус. Вот Вам и погрешность в 1 'C.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

могут и наврать но не врут ни в -25 ни в +90
могут и сгореть но не горят
могут и раздавиться но не давятся....

они по факту показывают одинаково где бы ни находились и при этом работают абсолютно нормально....потому и борюсь за эту цифру в 1/16 градуса ....

разве что в +90 начинают немного подкорачивать 1wire линию на землю....видать плохеет выходному полевику....но мне опять же это побоку - с 2 килоомами подтяжки 8 их штук работали в одной связке/температуре/условиях нормлаьно и никто не отвалился
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Goodefine
Держит паяльник хвостом
Сообщения: 906
Зарегистрирован: Ср апр 16, 2008 13:22:54
Откуда: Приднестровье, Тирасполь

Re: Теплосчетчик

Сообщение Goodefine »

clawham писал(а):они одинаково врут оба!!!!

Кто сказал? Один при температуре 38 будет показывать 38,5, другой 37,5 - что делать будете? Калибровкой убирать аддитивную ошибку? И кто вам сказал, что если разница 0,1875 гр по приборам, то в реальности так оно и есть?
Я предлагаю Вам сделать референс проект - двухстрочный дисплей, два датчика температуры, генератор импульсов. Все, ничего лишнего - меню, сохранение в еепром и т.д. не надо. Чисто проверка подхода. Выводим в одной строке накапливаемую сумму, в другой мгновенное значение чего надо (уточните по какой формуле считать и что это будет такое и в чем показывать). Ну и минимальный и максимальный расход воды который может быть. Чтоб с граничными условиями определиться. Разность температур - больше десятой не поймать в жисть, потому будем считать что десятки точно есть. Ну в крайнем сотки. Хотя это уже издевательство над здравым смыслом. Вы в флоатах посчитаете, а я без них. Ну сравним выгоды.. Но это если хотите конечно.
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

если такое есть то єто датчик купленній на радиорінке
те что пришли семплами или с ебея на фирму аказівали ленту - в пределах 10-20 сантиметров ленті - не разнятся!

да и потом я их сравнивал с калиброванными приборами pt100 и 10 градусах разницы....насоклько я мог видеть ....разница по gnirfv и по дскам равнялась....только вот lc-rb недоганяют пол градуса...кажут завышенное значение .....так это собственно и отображено на графике в даташите...



накопление я делаю в лонгинтах само собой!!!! однозначно и никаких флоатов там нет...

я прекрасно знаю что на определенных значениях к флоату нельзя написать +=1 ибо его размер перевалил за 9,9999 х 10^4 тогда его дискретность уже будет больше единицы в целых числах и конечно же....никто не спорит он не изменит своё состояние....
в еепроме я вообще целые значения калорий храню и целые значения импульсов водомера...
а в работе - насчитываю разницу между первоначальным значением и новыми значениями умноженными на 10000 ... получается в текучке не теряется хвостик а при пропадании питания вполне допустимо потерять дробную часть накопленного количества каллорий между сохранениями....

или я чегото не понял?
намек на то что мало калорий даже в целом виде я могу сохранить?
4,3 гигакаллории для домашнего применения более чем достаточно тем более что не составляет труда отловить переполнение при сложении и ввести ещё один лонгинт переполнений ...тогда вообще нелимитировано кол-во калорий...не переполнится никогда...
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
clawham
Поставщик валерьянки для Кота
Сообщения: 1957
Зарегистрирован: Пт окт 31, 2008 09:38:55
Откуда: Одесса
Контактная информация:

Re: Теплосчетчик

Сообщение clawham »

кстати есть ещё одна идея....сделать а-ля 64 битный флоат
только в собственной реализации - хранить в структуре число с размером лонг инт
и отдельно в инте или даже чаре хранить степень 10-ки множителя...
меня же интересует только умножение двух таких чисел....остальное спокойно работает и на множителе 10^-4
перемножаем основания, складываем степени и получаем типофлоат которые не теряя точности может показать большие числа...хотя....блин надо пересесть на иар...там есть лонг лонг более менее нормально реализованный...

с другой стороны это всего лишь показометр для человека не влияющий больше ни на что никуда не идущий....ватты и проток просто показывают текущую теплоотдачу наглядно - камин какой мощности сможет заменить на текущий момент батарею отопления...
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Аватара пользователя
Goodefine
Держит паяльник хвостом
Сообщения: 906
Зарегистрирован: Ср апр 16, 2008 13:22:54
Откуда: Приднестровье, Тирасполь

Re: Теплосчетчик

Сообщение Goodefine »

clawham писал(а):если такое есть то єто датчик купленній на радиорінке
те что пришли семплами или с ебея на фирму аказівали ленту - в пределах 10-20 сантиметров ленті - не разнятся!

На самом деле это очень важный постулат ))) Вы считаете что дс-ки настолько идеальны, что можно рисовать 4-ре знака после запятой. Я - нет. И вся разница. Кроме того, в сети есть информация, что со временем погрешность 18b20 может плавать непредсказуемо. Неофициальная, но есть. Для примера http://electronix.ru/forum/index.php?showtopic=18536 - местами занятно. Я согласен с тем что можно получить разность с точностью в одну десятую. Есть такое понятие как повторяемость схемы... И то если использовать калибровочные таблицы для датчиков в нужном диапазоне температур. И без гарантии, что со временем они не станут неактуальными... Вот исходя из 0.1 гр и 0.5% точности водомера и следует выбирать, сколько цифр учитывать и где. Остальное реальной точности не прибавит. Будет только иллюзия. Это мое сугубо личное мнение.
Любой, заслуживающий внимания, опыт приобретается себе в убыток...
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»