Jump to content
Yanshun

Термостат ∆T=0,1°C на ATmega8

Recommended Posts

Posted (edited)

Добрый день.
Хочу поделится с Вами Термостат ∆T=0,1°C на Mega8 TQFP, от автора propell_ant. Он является автором схемы и программного обеспечения, я лишь разработал свою версию печатной платы под имеющиеся комплектующие.
Характеристики данного термостат:
1. Возможность работы, как на нагрев, так и на охлаждение. (Разные прошивки).
2. Установка температуры от -55 до 125 градусов, с шагом 0,1 градус. При этом учитывается так-же и выставленное значение Дельты температуры, (например: прошивка Нагрев, Дельта стоит 1 градус, значит выставить температуру можно от -55 до +124 градусов).
3. Установка Дельты температуры от 0,1 до 25 градусов с шагом 0,1 градус.
4. Установка задержки отключения второго реле (FAN) от 0 до 250 сек.
5. Датчик температуры использован DS18B20.
6. Два активных выхода. Мах. 2А/220В, для каждого выхода.
7. Контроль ошибок датчика с выводом кодом ошибки и за поминание последней. Ошибки не стираются, просто запоминается последняя и в случае появление другой ошибки, последняя заменяется новой.
8. В случае появлении ошибки датчика, нагрузка отключается. Если в процессе работы устройства ошибка исчезла, она записывается в память и мигает дисплей с показанием текущей температуры. Это информирует пользователя, что были ошибки. Мигание дисплея убирается нажатием любой из кнопок. Код ошибки можно посмотреть в меню.
9. Использование разных индикаторов, Общий Анод или Катод. Разные прошивки.
10. При включенном реле TEMP горит точка в первом сегменте, вместе с отображением текущей температуры.
11. При зажатии кнопок + или - нет увеличения скорости переключения цифр.

Правило пользования данным термостатом. При нажатии, единожды, любой из кнопок, мы попадаем в Меню установки температуры. На дисплее загорается в первом сегменте нижнее подчеркивание и  последняя выставленная температура. Кнопками + и - выставляем нужную температуру. После выставления нужного значения ничего не нажимает, через 3 сек. термостат запомнить значение и перейдет автоматически к показанием текущей температуры. 
Если Вам нужно попасть к дополнительным возможностям термостата, нужно нажать одновременно две клавиши + и -. При их нажатии, Вы попадает в Меню выставления Дельты, в первом сегменте загорается латинская буква d и выставленное значение дельты. Кнопками + и - можно менять данной значение. После того, как выставили значение ничего не трогайте, через 3 сек. термостат запомнить его и перейдет к отображению текущей температуры.
Если нажать еще раз одновременно + и -, то попадает в Меню установки задержки отключения реле FAN. На дисплее в первом сегменте горит буква t и текущее выставленное значение, кнопками + и - можно менять значение.  После того, как выставили значение ничего не трогайте, через 3 сек. термостат запомнить его и перейдет к отображению текущей температуры.
Если еще раз нажать одновременно + и -, то попадаем в Меню Ошибок датчика, с отображение кода ошибки, тут отображается последний код ошибки датчики. Если ничего не нажимать, то через 3 сек. термостат перейдет к отображению текущей температуры.
При последующем нажатии одновременно + и - попадаем в меню выставления температуры, типа запасного входа :D.

А теперь разберемся на примере, как все это работает, НАГРЕВ. Выставляем температуру +25 градусов, выставляем Дельту 1 градус, выставляем значение отключения второго реле 3. Итак, что мы имеем, как только только температура подымиться до +26 реле TEMP отключится (точка в первом сегменте погаснет), а реле FAN будет включено еще 3 секунды и выключится. Как только температура опустилась до +25 градусов реле сново включаются (включение двух реле всегда происходит синхронно, одновременно). Важный момент, когда отключилось реле TEMP и идет отсрочка отключения второго реле FAN и если в этот момент температура упала и включилось реле TEMP, отсрочка аннулируется для реле FAN и оно остается включенным вместе с реле TEMP. 
При выставлении t отсрочки отключения реле FAN значение будет стоять 00,  то отключение данного реле будет происходит одновременно с реле TEMP. 

Коды ошибок датчика:
E 0.1 - ошибка контрольной суммы
E 0.2 - обрыв датчика
E 0.3 - после нескольких ошибок от датчика получено значение 85С
E 0.4 - короткое замыкание на землю

Данный термостат может питаться, как от переменки АС 9-10В, так и от постоянки DC 12-14V. 
Ток потребления термостата:
а) Потребление в режиме индикации отображения кода ошибки, текущей температуры, меню. 30 мА.
б) Включены все реле, горят светодиоды и отображается текущая температура, 80 мА.
в)  При зажатии кнопки + или -, при выставлении значения в меню, ток потребления вырастал до 110 мА, это только индикация, реле были выключены. Начинался разогреваться линейный стабилизатор и микроконтроллер до 60 градусов.

Фото собранного термостата:
 

Spoiler

SNC01908.thumb.jpg.e511e624d3a7ef96b4d71c96bb8905eb.jpg

SNC01907.thumb.jpg.b9f899ef92d341c83b353030bb82479e.jpgПрошивал все внутрисхемным программатором UABIsp через переходник, в программе avrdudeprog33

Spoiler

1109475416_Fusebit.png.fed09700362a009b866136222b592989.png664314074_.png.9baaed839a4f9f5c8098fd67821722bc.png21475614_fusebits-mega8-XTAL-4MHz.PNG.fdfcb1a56023bb1303c581cc5c23f1c7.PNG

Плата в 3D 
 

Spoiler

1170073302_Atmega8(1).png.fb5f8f09e4d41d80053020eae47b0880.png2094553491_Atmega8(2).png.4eb54f0759cbd4e6ac426cf8516ed618.png456807626_Atmega8(3).png.32b8ef827d8155d56a9cc17d037d05b0.png699903112_Atmega8(4).png.0d467bf481fc051b02b3216c62a30e2d.png1448128742_Atmega8(5).png.a600a93d35e54c16e4aa74526990c616.png1263218565_Atmega8(6).png.b11474161c7dacc1ed842022a3c993f4.png

Плата нарисована в Diptace, с помощью Gerber переведена в Lay6. Зазоры дорожек 0,3 мм, минимальная дорожка 0,3 мм. Плату заказывал в Китае на PCBway. Плата односторонняя размером 86*61 мм.

Gerber печатной платы Термостат ∆T=0,1°C на Mega8.rar Прошика и исходный код для Термостат ∆T=0,1°C на Mega8 8_v4.1.01..zip Термостат ∆T=0,1°C на Mega8 DipTrace.rar Термостат T=0,1°C на Mega8 TQFP.lay6

Edited by Yanshun
Баги сервера.

Share this post


Link to post
Share on other sites
Posted (edited)

Фото платы, закрыли видимо лазейку в сервере, что раньше была возможность загружать в одно сообщение более 10 метров, теперь приходится разделять на несколько сообщений весь материал. Хотя теплеется луч надежды, что после окончательного обновления сервера, все вернется на места.

Spoiler

1240776739_Atmega8(1).thumb.jpg.9f75708ac339cf1ad9f2cbbd3d9fdc84.jpg1888428941_Atmega8(2).thumb.jpg.7464a90157df5f43886fafc28ea14b59.jpg1957722858_Atmega8(3).thumb.jpg.271a50f7f9dd3b348380965ea4406bb4.jpg522634426_Atmega8(4).thumb.jpg.dbf981579638c96cf891c8d2d37cd924.jpg2084868551_Atmega8(5).thumb.jpg.0d430091431798b16e76bb8d70b97cfb.jpg274472716_Atmega8(6).thumb.jpg.ac4abd41cce1acaa470a1c232b7c1b76.jpg


 

Spoiler

1265870259_Atmega8(7).thumb.jpg.38d93e2d01fac3913948adb85a263f69.jpg989270718_Atmega8(9).thumb.jpg.cfb9a76feeb5bb96d498d7a535a1e76f.jpg1729916334_Atmega8(10).thumb.jpg.62b07a92ca5e8e0810bc20d976f0665e.jpg814658469_Atmega8(11).thumb.jpg.144d82d37a48bf31cb458e10990cb4c3.jpg

Spoiler

123814169_Atmega8(12).thumb.jpg.577bbb1db73e59f4edc114400a7b286a.jpg1989874910_Atmega8(13).thumb.jpg.d6b338c93047dee09b15383d4cb468f8.jpg1043822912_Atmega8(14).thumb.jpg.480135c3ef30f68ab3d1b88ae7cb112f.jpg

 

Термостат на Atmega 8 схема.jpg

Термостат на Atmega 8 печатная плата.jpg

Edited by Yanshun
Обход ограничения сервера на загрузку картинок :)

Share this post


Link to post
Share on other sites

Финальные результаты тестирования литиевых батареек FANSO при нормальных условиях

Перед разработчиком устройства, в котором предполагается использование батарейки, всегда стоит задача выбора того или иного бренда. Конечно, наиболее объективный результат по качеству можно получить при реальном тестировании в режиме работы самого устройства. Для того чтобы у разработчиков была некоторая информация о реальных значениях основных параметров ЛХИТ, инженеры компании КОМПЭЛ решили провести серию из трех тестов. Первый тест на постоянный разряд в нормальных климатических условиях, начатый в апреле 2019 г., мы завершили.

Узнать финальный результат тестирования

1 hour ago, Yanshun said:

Установка температуры от -55 до 125 градусов, с шагом 0,1 градус.

1 hour ago, Yanshun said:

Установка Дельты температуры от 0,1 до 25 градусов с шагом 0,1 градус.

Какой в этом смысл? Точность измерения температуры у DS18B20 0,5 градуса, плюс к этому 0,2 дрифт.  Т.е. делать шаг меньше градуса с таким датчиком - бесполезно.

Share this post


Link to post
Share on other sites

@BARS_ Добрый день.
Вы совершенно правы, но раз так сделали  ПО, я просил автора все привести к 1 градусу, но к сожалению у него сейчас нет свободного времени. Есть вероятность появление прошивки в будущем подведенной к 1 градусу.

Забыл так-же добавить, что данный термостат может работать, как от внешнего кварца, так и от внутреннего, выставляется все с помощью фъюзов. Кому как будет удобно.
И еще одно, если во время работы, когда включены оба реле, произойдет ошибка по датчику, то реле TEMP отключится сразу, а вот для  реле FAN  пойдет задержка на отключение, сколько Вы выставили, это так задумано.

Share this post


Link to post
Share on other sites
                     

Видеокурс Работаем с микроконтроллерами STM32G0. Впервые на русском языке.

В цикле видеокурсов по работе с STM32G0 от компании STMicroelectronics показаны архитектура, периферия (особенности процессорного ядра, режимов пониженного питания, векторов прерываний, DMA и мультиплексора DMA, схемы тактирования и сброса, и.т.д.) и даны практические примеры. Материал дает наглядное понимание того, как начать работу на новых микроконтроллерах STM32G0

Подробнее

13 minutes ago, Yanshun said:

я просил автора ..., но к сожалению у него сейчас нет свободного времени.

Неинтересно повторять проекты, к которым автор зажал исходник. Становишься заложником чужих косяков. Никому не рекомендовал бы.

2 hours ago, Yanshun said:

Возможность работы, как на нагрев, так и на охлаждение. (Разные прошивки).

Этот вопрос  элементарно решается  программно выставлением верхнего предела ниже нижнего. И никакого гемороя с перепрошивками.

 

Share this post


Link to post
Share on other sites

@_abk_ Добрый вечер.
Вообще-то исходник автор не зажал, приложен в первом сообщений. Редактируйте под себя, как Ваша душа захочет.
На счет Нагрев/Охлаждение одновременно, если переписать программный код, то это реализуемо. Вариант, который Вы предложили, заставит убрать выставление Дельты из меню за не надобностью.

Исходник в открытом доступе, все в Ваших руках и силах.

Share this post


Link to post
Share on other sites
3 hours ago, BARS_ said:

...Точность измерения температуры у DS18B20 0,5 градуса, плюс к этому 0,2 дрифт...

При 12-битной разрядности, кажись, 0,0625 приращение обещали. :)

Share this post


Link to post
Share on other sites

Насколько в вашей конструкции тяжело реле переделать в управляемый от температуры ШИМ? Надо два независимых канала  (Вентилятор радиатора в машине.)

Share this post


Link to post
Share on other sites

человек тупо повторяет чужой проект, а ты ему задаешь вопросы про переделку.

14 hours ago, _abk_ said:

Этот вопрос  элементарно решается  программно выставлением верхнего предела ниже нижнего. И никакого гемороя с перепрошивками.

при нагреве, чтобы выключить, предел проверяется на "больше или равно".

а при охлаждении, чтобы выключить, предел проверяется на "меньше".

разницу в логике работы ты чувствуешь или нет?

Share this post


Link to post
Share on other sites
9 hours ago, Starichok said:

разницу в логике работы ты чувствуешь

Не смеши. Что мешает проверять установленные пределы и выбирать соответствующую логику?

Share this post


Link to post
Share on other sites

на данный момент у автора для выбора соответствующей логики существует две разные прошивки - на нагрев и на охлаждение.

 еще ты сказал про два предела, а я вижу по тексту, что предел ОДИН и есть дельта (гистерезис).

так что это ты насмешил...

Share this post


Link to post
Share on other sites

Да ладно... Я дальше пункта 1 и не читал, но осуждаю.:D

On 7/24/2019 at 7:46 PM, Yanshun said:

1. Возможность работы, как на нагрев, так и на охлаждение. (Разные прошивки).

Потому что для смены режима в этом устройстве менять прошивки  - хрень полная. Уж коли там ОДИН предел, ну сделай ту же дельту и отрицательной тоже,  делов-то... Будет универсальное устройство без перепрошивок. Тем более, что и исходник, говорят, есть...

То @Yanshun : Вы уж извиняйте, ежели что не так, я так только зашел, побурчать... Может, пригодится кому...:drinks:

Share this post


Link to post
Share on other sites

Наигрался я с выставлением фъюзов, что теперь контроллер перестал видеться программатором.
Придется заказывать переходник и подымать контроллер с помощью MiniPro. Пока впаяю новый контроллер. 

Share this post


Link to post
Share on other sites

Исходник похоже можно открыть CvAVR только v3.

Нет ли у кого под v2.05? Чисто что бы  поизучать начинающему.

Share this post


Link to post
Share on other sites

Вымыл платку от флюса и от сканировал, чтобы получить более качественные фотки.

Spoiler

480082160_(1).thumb.jpg.d8e5d279c025b78315e8347a5757b6c6.jpg196801777_(2).thumb.jpg.fdd47805f9680d89ed041b4483ecd75a.jpg2112309518_(3).thumb.jpg.e4b4db7fc005f14b5de6c29838d3a4c6.jpg

Share this post


Link to post
Share on other sites

Добрый день.
Вышла новая версия ПО для термостата, так как в старой был один баг, кнопки были настроены не вход, а на выход, вследствие чего при их нажатии происходило замыкание и шел большой жор тока. 

Также была добавлена прошивка с установкой  температуры 1 градус, дельта осталась без изменения. Установка задержки от 0 до 250 секунд.

tlm8_v4.1.02.vent_ - Шаг установки Температуры/Дельты 0,1 градус. При включении реле Temp горит точка в первом сегменте. 
tlm8_v4.1.02.vent_heat_d10 - Шаг установки Температуры 1 градус, Дельта 0,1 градус. При включении реле Temp горит точка в первом сегменте.
tlm8_v4.1.02.vent_nodot -  Шаг установки Температуры/Дельты 0,1 градус. При включении реле Temp не горит точка в первом сегменте.
tlm8_v4.1.02.vent_nodot_d10 - Шаг установки Температуры 1 градус, Дельта 0,1 градус. При включении реле Temp не горит точка в первом сегменте.

Приложил сами Hex - файлы и исходный код.
Также рекомендую использовать вешний кварц на 8 Мц, так как с ним термостат работает как положено.

Спасибо автору ПО за оперативное исправление и консультацию термостата.

Фьюзы на внешний кварц 8 Мц.png

tlm8_v4.1.02.vent_src.rar

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

    • Как в большинстве случаев, 100500 страниц обсуждения того, как сделать то, что требует ТС, и ни одного вопроса "А нахрена делать так"? @tifaso , прежде, чем выносить мозг форумчанам, нельзя было сразу всю вашу "проблему" озвучить? Вашу схему цветомузыки действительно достаточно "слегка подкоректировать" - всего-навсего заменить резисторы R9 - R12 на 330 Ом, чтобы питать от 12 В. При этом больше ничего не изменится - токи через светодиоды останутся теми же (максимально до 27 мА). Ну, резистор R8 ещё можно заменить на 13 кОм, чтобы даже ток в базу Т4 не изменился (хотя его вообще-то в этой схеме подбирать надо). Фигня вопрос. Какие "радиаторы-стабилизаторы"? Эта схема максимально может потреблять ток не более 4 х 27 = 108 мА. Куда вам "по первой линии 9v 2A"? Вам закон Ома неплохо бы подтянуть для начала и начать видеть в схеме цепи, по которым течёт ток. Выкладывайте подробно, что за "аудио устройство там и радио и MP3 player и много другого сопутствующего навешано". Доверия к вашим выводам, как надо делать, - никакого. И подробно-подробно. А то окажется например, что вы в эту "светомузыку" на КТ3102 вместо светодиодов лампочки накаливания ставите, или ещё что-нибудь...
    • завел ) - в общем - перемотал трансформатор - поднял частоту до 60 кГц ,чет намудрил с делителем тл-ки и напряжение выше 17 вольт не поднимается и немного прыгает - похоже я не догрузил его ,- схема и печатка в корпусах. далее пойду по предложенной Сергеем доработке - для этого намотал еще обмотку - позже - ес все получится - скину . еще не понял момент - почему от 24 вольт греется резистор снабера - при сетевом почти нет)
    • Там где три вершины вниз при перемещении вправо влево, что меняется?
    • Разве он без подбора этой мелкоты не будет работать?
    • У тебя фигня, а не проблема. Я вот не то что "тихо про себя", а даже вообще об этом не задумывался, а оно вот уже тут, - НАПИСАНО.
    • это как блин понять .?..чувак  сначала хотел на ровном месте докопатся до схемы а когда не получилось накосячил с моделькой практически без шанса  на проверку так как на отрез отказался выдать её мне!!! и вместо извинений называет меня грубияном!!! хотелось узнать бы  за что Малахов мне минус поставил и ведь сто пудово гордо промолчит!
    • Фильм матрица это наше будущее и оно уже наступило. Многие не догадываются что происходит. Конечно, в батарейку никто не собирается превращать человека, это искажение искусственно создано в фильме, иначе могут и поверить)). Возможно, матрица и есть тот самый "зверь", упоминаемый в библии. Но пока мы живём в информационной матрице, создаваемой СМИ, которая не менее эффективно держит основную массу в гипнотическом сне. Смеяться также перестанете, когда очевидно станет. Пока врут как могут. Всё ради блага человечества делают, заботятся о нас))
×
×
  • Create New...