24 февраля 2022 года в 5 утра, без объявления войны, россия напала на Украину.
Они пришли "освобождать народ от нацистов и националистов".
С этого момента наша жизнь изменилась на "до" и "после".
Нас освобождают от наших домов, от наших любимых, от наших родителей и от наших детей....
Тут я не буду никого агитировать или переубеждать, разумный человек найдёт всю информацию
в интернете, а для зомби никакие доводы и факты не послужат аргументом.
Я не умею много писать, да и без мата тут сложно что-то написать.
Поэтому выражу все мои чувства одним фото.
«Спасибо дедушка путин за счастливое детство и мое освобождение». ©
Дополню словами уважаемого человека, широко известного в узких кругах:
тут путин не виноват, не он нажал на кнопку сброса,
- виноват пилот, который нажал на кнопку сброса, мог промахнуться. виноваты жена/мать/брат/друг пилота, которые не позвонили ему, и не сказали "нет войне",
- виноват тот, кто отдал приказ, и виноваты его жена/мать/брат/друг,
- виноват тот, кто цеплял бомбу, потому что он мог её обезвредить, "ну бывает, не сработала",
- виноват кладовщик, виноват водитель, который перевозил эту бомбу. виноваты жена...и т.д., потому что не позвонили и не сказали "нет войне, не вези бомбы",
- виноваты все журналисты оркостана, потому что они врут,
- виноваты недограждане, потому что не сказали журналистам "не врите",
- виноваты все... все 160 миллионов,
- а те 2, 3, 5 тысяч, которые вышли, и которых запаковали, это даже не десятая процента, это погрешность... случайно оказавшиеся в мордоре люди. ©
PS: За несколько часов до вторжения был атакован и взломан крупный интернет хостинг в Киеве, где и размещался мой сайт. Только 16 марта отважным админам удалось частично восстановить работу хостинга. Далеко не все сайты выжили, т.к. были повреждены даже бэкапы.
Нет, нет, я не жалуюсь, нет. В цифровом мире нет ничего ценного, материального...
Due to periodic DDoS attacks, the forum may not be available.
Они пришли "освобождать народ от нацистов и националистов".
С этого момента наша жизнь изменилась на "до" и "после".
Нас освобождают от наших домов, от наших любимых, от наших родителей и от наших детей....
Тут я не буду никого агитировать или переубеждать, разумный человек найдёт всю информацию
в интернете, а для зомби никакие доводы и факты не послужат аргументом.
Я не умею много писать, да и без мата тут сложно что-то написать.
Поэтому выражу все мои чувства одним фото.
«Спасибо дедушка путин за счастливое детство и мое освобождение». ©
Дополню словами уважаемого человека, широко известного в узких кругах:
тут путин не виноват, не он нажал на кнопку сброса,
- виноват пилот, который нажал на кнопку сброса, мог промахнуться. виноваты жена/мать/брат/друг пилота, которые не позвонили ему, и не сказали "нет войне",
- виноват тот, кто отдал приказ, и виноваты его жена/мать/брат/друг,
- виноват тот, кто цеплял бомбу, потому что он мог её обезвредить, "ну бывает, не сработала",
- виноват кладовщик, виноват водитель, который перевозил эту бомбу. виноваты жена...и т.д., потому что не позвонили и не сказали "нет войне, не вези бомбы",
- виноваты все журналисты оркостана, потому что они врут,
- виноваты недограждане, потому что не сказали журналистам "не врите",
- виноваты все... все 160 миллионов,
- а те 2, 3, 5 тысяч, которые вышли, и которых запаковали, это даже не десятая процента, это погрешность... случайно оказавшиеся в мордоре люди. ©
PS: За несколько часов до вторжения был атакован и взломан крупный интернет хостинг в Киеве, где и размещался мой сайт. Только 16 марта отважным админам удалось частично восстановить работу хостинга. Далеко не все сайты выжили, т.к. были повреждены даже бэкапы.
Нет, нет, я не жалуюсь, нет. В цифровом мире нет ничего ценного, материального...
Due to periodic DDoS attacks, the forum may not be available.
Термостат ∆T=0,1°C
-
- Частенько бываю
- Posts: 39
- Joined: 05 Feb 2009 19:16
Re: Термостат 0,1°C
Переделал программу под себя , все работает. Еще раз спасибо!!!
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Я рад, что оказалось всё просто!sergey wrote:Переделал программу под себя
-
- Пробегал мимо
- Posts: 1
- Joined: 23 Feb 2009 14:54
Re: Термостат 0,1°C
Если можно, 2 вопроса:
1. Скажите, пожалуйста, какова максимальная длина соединительных проводников между термодатчиком и собственно контроллером?
2. Скорее всего возникнет потребность внести в программу изменения для ограничения диапазона температур. Можно ли как-то получить исходники прошивки?
1. Скажите, пожалуйста, какова максимальная длина соединительных проводников между термодатчиком и собственно контроллером?
2. Скорее всего возникнет потребность внести в программу изменения для ограничения диапазона температур. Можно ли как-то получить исходники прошивки?
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
по стандатру 1-wire - до 300 метров, но я думаю будет работать только в 3-х проводном варианте.neocortex wrote:1. Скажите, пожалуйста, какова максимальная длина соединительных проводников между термодатчиком и собственно контроллером?
Можно, только не сейчас - после обкатки существующей прошивки. Возможно через пару недель.neocortex wrote:2. Скорее всего возникнет потребность внести в программу изменения для ограничения диапазона температур. Можно ли как-то получить исходники прошивки?
-
- Пробегал мимо
- Posts: 4
- Joined: 28 Jan 2009 02:59
Re: Термостат 0,1°C
Спасибо за терморегулятор. Все работает отлично.
У меня на работе есть аналоги регуляторов, только промышленные.
Есть предложение выход PD3 освободить, а функции выхода сделать программируемым, в зависимомти от надобности на выходе PD2 (Удержал 5 сек кнопки + и - выход 0 али 1)
Есть предложение выход PD5 удалить (При индикации до 99 С выводить температуру с десятой, а после без).
А из супперфункций можно добавить ПИД регулирование
У меня на работе есть аналоги регуляторов, только промышленные.
Есть предложение выход PD3 освободить, а функции выхода сделать программируемым, в зависимомти от надобности на выходе PD2 (Удержал 5 сек кнопки + и - выход 0 али 1)
Есть предложение выход PD5 удалить (При индикации до 99 С выводить температуру с десятой, а после без).
А из супперфункций можно добавить ПИД регулирование
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Zed, ну это уже совсем другой проект.... через пару недель выложу исходники - делайте с ними что хотите, а я переделывать не буду. Буду только истравлять ошибки...
-
- Частенько бываю
- Posts: 39
- Joined: 05 Feb 2009 19:16
Re: Термостат 0,1°C
Здравствуйте, хочу поделиться следующей информацией. У меня работает 3 термостата из них 2 с (BOD) по старой прошивке, один без (BOD) по обновленной, так вот у нас были какие то отключения переключения в сети 220 в и последствия: старая версия пережила этот катаклизм без проблем, а новая глюканула... Улетела на 99 гр.
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Ну собственно БОД и следит за питанием....sergey wrote:старая версия пережила этот катаклизм без проблем, а новая глюканула
Я думаю так: если термостат не планируется использовать в отрицательных температурах, то БОД можно включать, а если планируется (например в машине) то нужно отключить....
А вообще неплохо бы разобраться в этой странности работы БОДа, но я пока никак....
-
- Пробегал мимо
- Posts: 5
- Joined: 28 Feb 2009 13:32
- Location: Ульяновск
- Contact:
Re: Термостат 0,1°C
hardlock
Здравствуйте, такой вопрос: допустим этот термостат я буду использовать в машине (21099 датчик в радиатор, индикацию в салон, реле включает радиатор охлаждения) будет ли он сохранять значение температуры сраьатывания релюхи выставленную кнопками после отключения питания? Т.к. я откл массу в машине.
-Также актуальна для меня поддержка датчика DS1820. т.к. его я уже вмонтировал в корпус заводского датчика...что нелегко.
Здравствуйте, такой вопрос: допустим этот термостат я буду использовать в машине (21099 датчик в радиатор, индикацию в салон, реле включает радиатор охлаждения) будет ли он сохранять значение температуры сраьатывания релюхи выставленную кнопками после отключения питания? Т.к. я откл массу в машине.
-Также актуальна для меня поддержка датчика DS1820. т.к. его я уже вмонтировал в корпус заводского датчика...что нелегко.
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Конечно - всё записывается в EEPROMMotoLive wrote:будет ли он сохранять значение температуры сраьатывания релюхи выставленную кнопками после отключения питания?
Придется малость поправить прошивку. В существующей - только DS18B20MotoLive wrote:поддержка датчика DS1820
-
- Пробегал мимо
- Posts: 5
- Joined: 28 Feb 2009 13:32
- Location: Ульяновск
- Contact:
Re: Термостат 0,1°C
Ты это сделаешь? или это трудно? (Я в программировании "0")Придется малость поправить прошивку. В существующей - только DS18B20
И еще: можно ли переназначить выводы мк т.к. я уже собрал термостат но по другой схеме, перепаивать жалко - очень старался...Может покажешь как это делать когда проект выложишь (возможно я прошу многого...)
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Вряд-ли - у меня нету даже DS1820...MotoLive wrote:Ты это сделаешь?
Хотя там надо поменять только вычисление температуры (B - 12 bit, а 1820 - 9 bit)
Если появится время - попробую помочь.
-
- Пробегал мимо
- Posts: 5
- Joined: 28 Feb 2009 13:32
- Location: Ульяновск
- Contact:
Re: Термостат 0,1°C
Спасибо что не отказываешь. Буду ждать проекта...Вряд-ли - у меня нету даже DS1820...
Хотя там надо поменять только вычисление температуры (B - 12 bit, а 1820 - 9 bit)
Если появится время - попробую помочь.
Вот может этот проект поможет добавить поддержку 1820? В описании говорится поддержка DS18S20 DS1820.
http://slil.ru/27009606
Добавлено спустя 11 часов 18 минут 15 секунд:
hardlock
А не скажешь точную модель индикатора с которым у тебя работает термостат? Просто возникли сомнения насчет схемы: у тебя верхний сегмент - f, затем почасовой стрелке a,b,c,d,e. А мне встречались только индикаторы у которых: верхний сегмент - a, затем почасовой стрелке b,c,d,e,f. При этом g и у тебя и у меня на своём месте - по центру.
Это ошибка или зэто нужно учитывать при переходе на мой индикатор???
-
- Частенько бываю
- Posts: 43
- Joined: 01 Mar 2009 21:30
Re: Термостат 0,1°C
Насколько знаю, у всех индикаторов А сверху, раньше только в совковых схемах попадался верхний F.
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
У меня ещё с совка осталась такая маркировка в голове.... Да и какая разница, какой сегмент где? лиш бы совпадало назначение выводов контроллера и сегментов.FDoich wrote:у тебя верхний сегмент - f, затем почасовой стрелке a,b,c,d,e. А мне встречались только индикаторы у которых: верхний сегмент - a, затем почасовой стрелке b,c,d,e,f.
Лично я применяю что-то вроде A564SR или им подобные. Распиновка у всех была одинаковая...
-
- Пробегал мимо
- Posts: 5
- Joined: 28 Feb 2009 13:32
- Location: Ульяновск
- Contact:
Re: Термостат 0,1°C
Здравствуйте,
1.5 часа назад написал сообщение в эту тему - думаю проверю, вдруг кто то отписался? Смотрю а сообщения нет(!)
Хотя я отчётливо видел как оно было на 4 странице темы...
Добавлено спустя 15 минут 56 секунд:
Ну вот добавилось, вроде.
Собственно что хотел спросить:
-Как показала себя прошивка? Стабильна?
-О своём датчике (DS1820) я наверно постараюсь забыть, и буду заказывать DS18B20, т.к. врятли смогу поправить проект под имеющийся..а вот поменять порты постараюсь, ибо термостат у меня уже спаян и в машине катаетя уже с неделю и перепаивать не вариант т.к. легче новый сделать.
Извини за назойливость, но когда же будет возможность скачать проект?
Очень уж хочется начать пробывать переделывать проект и прошить наконец термостат...Ещё раз извини, если что.
1.5 часа назад написал сообщение в эту тему - думаю проверю, вдруг кто то отписался? Смотрю а сообщения нет(!)
Хотя я отчётливо видел как оно было на 4 странице темы...
Добавлено спустя 15 минут 56 секунд:
Ну вот добавилось, вроде.
Собственно что хотел спросить:
-Как показала себя прошивка? Стабильна?
-О своём датчике (DS1820) я наверно постараюсь забыть, и буду заказывать DS18B20, т.к. врятли смогу поправить проект под имеющийся..а вот поменять порты постараюсь, ибо термостат у меня уже спаян и в машине катаетя уже с неделю и перепаивать не вариант т.к. легче новый сделать.
Извини за назойливость, но когда же будет возможность скачать проект?
Очень уж хочется начать пробывать переделывать проект и прошить наконец термостат...Ещё раз извини, если что.
-
- Частенько бываю
- Posts: 39
- Joined: 05 Feb 2009 19:16
Re: Термостат 0,1°C
Добрый день, как то обращался к вам с просьбой изменить прошивку под свои нужды и по вашему совету взялся переделать прошивку сам, вроде как логически нашел нужное место в программе по изменению состояния выводов , исправил обрадовался что получилось, даже радостью с вами поделился, да не тут то было. Написал такой код:
}
Темр = Т_Loadon+DeltaT;
if ((Tnew>Temp) & (Loadon))//Off
{
PORTD.3 = 1;
PORTD.2 = 0;
Loadon = 0;
}
Temp = T_Loadon;
if ((Tnew == Temp) & (!Loadon))//On
{
PORTD.3 = 0;
PORTD.2 = 0;
Loadon = 1;
}
Temp = T_Loadon;
if ((Tnew < Temp) & (Loadon))//Off
{
PORTD.3 = 0;
PORTD.2 = 1;
Loadon = 0;
}
Суть проблемы: при наборе температуры равенство вообще пропускает, сразу включает PORTD.3 , при сбросе температуры ниже верхнего предела, выключает PORTD.3 но при выходе вниз из равновесия не включает PORTD.2. Если можно подскажите, что я начудил изучаю микроконтроллеры на начальном этапе, все возможные варианты что у меня в голове были испробовал, теперь сижу в тупике... С уважением.
}
Темр = Т_Loadon+DeltaT;
if ((Tnew>Temp) & (Loadon))//Off
{
PORTD.3 = 1;
PORTD.2 = 0;
Loadon = 0;
}
Temp = T_Loadon;
if ((Tnew == Temp) & (!Loadon))//On
{
PORTD.3 = 0;
PORTD.2 = 0;
Loadon = 1;
}
Temp = T_Loadon;
if ((Tnew < Temp) & (Loadon))//Off
{
PORTD.3 = 0;
PORTD.2 = 1;
Loadon = 0;
}
Суть проблемы: при наборе температуры равенство вообще пропускает, сразу включает PORTD.3 , при сбросе температуры ниже верхнего предела, выключает PORTD.3 но при выходе вниз из равновесия не включает PORTD.2. Если можно подскажите, что я начудил изучаю микроконтроллеры на начальном этапе, все возможные варианты что у меня в голове были испробовал, теперь сижу в тупике... С уважением.
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Попробуйте что-то вроде:
поиграйтесь со знаками > / >= и < / <=....
Code: Select all
if ((Tnew>=Т_Loadon+DeltaT))//больше предела
{
PORTD.3 = 1;
PORTD.2 = 0;
Loadon = 0; //не горит
}
Temp = T_Loadon;
if ((Tnew < Т_Loadon+DeltaT) & (Tnew > Т_Loadon))//между верхним и нижним
{
PORTD.3 = 0;
PORTD.2 = 0;
Loadon = 1; //горит индикатор
}
Temp = T_Loadon;
if ((Tnew <= Т_Loadon)))//ниже нижнего предела
{
PORTD.3 = 0;
PORTD.2 = 1;
Loadon = 0; //не горит
}
-
- Пробегал мимо
- Posts: 5
- Joined: 28 Feb 2009 13:32
- Location: Ульяновск
- Contact:
Re: Термостат 0,1°C
hardlock,
Ты меня игнорируешь, или просто незаметил?
Ты меня игнорируешь, или просто незаметил?
-
- Частенько бываю
- Posts: 39
- Joined: 05 Feb 2009 19:16
Re: Термостат 0,1°C
День добрый. Подправил ваш код , расставил се недостающее скобочки , получил вот такую картину...
Temp = T_LoadOn + DeltaT;
if ((Tnew >= Temp)) //cold
{
PORTD.3 = 1;
PORTD.2 = 0;
LoadOn = 0; //
}
Temp = T_LoadOn;
if ((Tnew < Т_LoadOn + DeltaT) & (Tnew > Т_LoadOn)) // В ЭТОЙ СТРОКЕ ВЫДАЕТ ОШИБКУ invalid expression
{
PORTD.3 = 0;
PORTD.2 = 0;
LoadOn = 1; //
}
Temp = T_LoadOn;
if ((Tnew <= Temp)) //hot
{
PORTD.3 = 0;
PORTD.2 = 1;
LoadOn = 0; //
}
Добавлено спустя 15 минут 11 секунд:
Думаю потому что там отсутствует переменная Temp, а она у нас получается имеет 2 разных значения температуры которые мы сравниваем с Tnew ...
Temp = T_LoadOn + DeltaT;
if ((Tnew >= Temp)) //cold
{
PORTD.3 = 1;
PORTD.2 = 0;
LoadOn = 0; //
}
Temp = T_LoadOn;
if ((Tnew < Т_LoadOn + DeltaT) & (Tnew > Т_LoadOn)) // В ЭТОЙ СТРОКЕ ВЫДАЕТ ОШИБКУ invalid expression
{
PORTD.3 = 0;
PORTD.2 = 0;
LoadOn = 1; //
}
Temp = T_LoadOn;
if ((Tnew <= Temp)) //hot
{
PORTD.3 = 0;
PORTD.2 = 1;
LoadOn = 0; //
}
Добавлено спустя 15 минут 11 секунд:
Думаю потому что там отсутствует переменная Temp, а она у нас получается имеет 2 разных значения температуры которые мы сравниваем с Tnew ...
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Я вообще выкинул Темп - без него можно....
надо так:sergey wrote:if ((Tnew < Т_LoadOn + DeltaT) & (Tnew > Т_LoadOn)) // В ЭТОЙ СТРОКЕ ВЫДАЕТ ОШИБКУ invalid expression
Code: Select all
if ((Tnew < (Т_LoadOn + DeltaT)) & (Tnew > Т_LoadOn))
-
- Частенько бываю
- Posts: 39
- Joined: 05 Feb 2009 19:16
Re: Термостат 0,1°C
CVAVR эту строчку не пропускает выдает ошибку, вот в чем загвоздка...
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
-
- Частенько бываю
- Posts: 39
- Joined: 05 Feb 2009 19:16
Re: Термостат 0,1°C
Скопировал как есть с вашей строки...Вроде все на месте.
Добавлено спустя 3 минуты 19 секунд:
И скобки все стоят и еще так пробовал
if ((Tnew < (Т_LoadOn + DeltaT) & (Tnew > Т_LoadOn)) выгороженое скобками } ...{ один черт...выдает ошибку
Добавлено спустя 3 минуты 19 секунд:
И скобки все стоят и еще так пробовал
if ((Tnew < (Т_LoadOn + DeltaT) & (Tnew > Т_LoadOn)) выгороженое скобками } ...{ один черт...выдает ошибку
- hardlock
- Администратор
- Posts: 4015
- Joined: 21 Jan 2009 14:48
- Location: Minsk - zp.ua
- Contact:
Re: Термостат 0,1°C
Вот - всё компилится:
Code: Select all
Temp = T_LoadOn + DeltaT;
if ((Tnew >= Temp)) //температура больше установленного предела
{
PORTD.3 = 1;
PORTD.2 = 0;
LoadOn = 0; //
}
if ((Tnew < Temp) & (Tnew > Т_LoadOn)) //температура в рамках установленного предела
{
PORTD.3 = 0;
PORTD.2 = 0;
LoadOn = 1; // горит
}
if ((Tnew <= Temp)) //температура ниже установленного предела
{
PORTD.3 = 0;
PORTD.2 = 1;
LoadOn = 0; //
}