Regulace topení s Atmega, Ds18S20 (teď LM35) a GM37-14+L298N

Zdravím,
já ti bohužel nepomůžu. Jsem zaměřen trochu jiným směrem.
Přesto mám pár otázek:

O jaký typ kotle jde?
Směšovací ventil mísí co přesně?
Nezdá se ti, že je to vzorkování zbytečně časté?
Vždyť odezva teploty na změnu přiváděného tepla bude mít každopádně nějaké zpoždění.

no nejspis jde o plynovy kotel, kdyz ho spina relatkem a smesovat bude vodu :slight_smile:

Jirkamm: nevim presne co konkretne chces vedet, ci jen shanis nekoho, kdo ti to udela? Me by spis zajimalo mechanicke provedeni toho ventilu+motoru. Mas tam nejake koncove spinace, nebo snimac polohy? Ja delal neco podobnyho, ale na smesovak zpatecky u kotle na uhli a smesovak topeni/bojler. Pohony mam ale a prace z parniho ventilu, ktery maj snimace polohy. Snimace teploty mam obyc KTY110, presnost pro tohle pouziti je vic nez dostatecna a hlavne je jednodussi program :slight_smile:

Ten merkur.cz je dobrej zdroj motorku s prevodovkou, ani jsem nevedel ze to existuje. Dokonce nabizej zapisovac ALFI - moje vzpominka na mladi a zacatky s pocitacema :smiley: ale ta cena :open_mouth:

To: Divous
kotel je plynový
mísení teplé a studené vody
vzorkování se bude upravovat podle potřeby.

To: kuto
vzhledem k časové tísni bych byl raději aby mi to někdo napsal.
A to, že bych se rád něčemu přiučil je bohužel na druhém místě.
Mechaniku mám zatím jen v hlavě.
Snímač je mi jedno jaký tam bude. S DS18S20 mám dobré zkušenosti a program jsem vždy na netu nějaký našel.

Jestli ti to nekdo neudela jen pro zabavu a sa symbolickou cenu, tak si myslim, ze cena bude takova, ze mozna bude levnejsi se poohlednout a koupit to hotove.
jj, programu najdes na netu plno, otazka je jestli vubec fungujou a autor to vubec vyzkousel, protoze to zdaleka neni tak bezne, ale snad se trefis :slight_smile:

Nekoupím - neexistuje
googlil jsem dlouho a zatím nenašel. jasně, že budu hledat dál.

Koukam jeste na to schema. To rele RL4 mas spinane primo vyvodem mcu? To se mu asi moc libit nebude. Dej tam tranzistor. Zajimavy cteni tlacitek :slight_smile: Ja bych tam dal spis nejakej posvnej registr, jestli nestacej vyvody a nebo radsi rovnou megu16. Misto v pameti neni nikdy na skodu :slight_smile: A nebo je muzes cist pres linky k displeji, akorat bys jim spinal tranzistorem spolecnou nulu, aby nebyla ovlivnovana komunikace s displejem, kdyby nekdo zmacknul tlacitko. Nebo je oddelit nakym74244 nebo podobnym a pri komunikaci s displejem mu jednim vyvodem mcu vypnout vystupy.

RL4 jsem myslel R1-1A0500 z TME.
Myslíš, že i na něj bude lepší tranzistor? (Sice nevím jak ale to snad někde najdu)

Dál už je to na mě moc složitý. Jsem rád, že jsem dal dokupy toto. Kdybych tam měl dělat změny tak bych tě musel poprosit o konkrétní zapojení.
Vůbec tomu totiž nerozumím.

Tohle relatko by asi utahnout mel. I kdyz ja osobne bych ze zvyku k indukcni zatezi ten tranzistor dal stejne :slight_smile:
Jestli jsi az takovy zacatecnik, ze budes hledat zapojeni tranzistoru k relatku, tak bude opravdu lepsi kdyz ti to nekdo udela :slight_smile: Na uceni je tenhle projekt mozna trochu slozitej, ale zalezi na tvym odhodlani :slight_smile: . Ja ti to bohuzel ale udelat nemuzu, to bys to mel mozna na prespristi topnou sezonu a muj cas je drahej :wink: . Jediny jak ti muzu pomoct jsou rady.

Předně - pokud neumíš zapojit tranzistor a sestavil jsi osobně tohle schéma, tak klobouk dolů :slight_smile:.
Každopádně nešetři se značkama napájení a gnd. ZNAČNĚ se zvýší čitelnost schématu.

Relé jsem nehledal, ale podle označení to bude jazýčkové a to procesor utáhne přímo. Jiná věc je, zda jeho parametry stačí pro spínání kotle. V každém případě máš obráceně diodu D6.

Jak daleko budou teploměry od regulátoru? Digitální teplotní čidlo nemůžeš bez další inteligence táhnout moc daleko (což by u analogového tolik nevadilo).

Jak podotknul kuto, s megou8 bys mohl mít problém. Většina programů pro DS18x20 používá naprosto zbytečně float aritmetiku a tím ti zazdí půl FLASH. Další je obsluha displeje, obsluha menu, ošetření analogově čtených tlačítek, všechno to smysluplně propojit… A mega je plná jesli se to vůbec vejde. Určitě bych dal alespoň M16.

Ten konektor “pin485” má jaký význam? 485 driver ve schématu není a kdybys ho tam měl později jako modul, chybělo by mu napájení 5V :wink:.

Použití krystalu mi přijde zbytečné. Nemáš tam nic náročného na přesnost a stabilitu hodin (pokud tam nebude sériová komunikace, třeba ona 485).

Ve schématu máš dodatečnou filtraci (L1, C11), která se dává k analogové části. Použil jsi ji ovšem pro digitální část (komunikace s teploměry), kde je zbytečná. Spíš bych tím napájel AVCC. Dále není explicitně zobrazeno napájení mcu, asi bude připojeno automaticky. Zkontroluj si, aby bylo zapojeno správně.

RV1 bych dal jen 1k5 a mezi něj a Vcc pak vložil rezistor 4k7. Kontrast se totiž mění jen asi v rozmezí 0-1V.

Ohledně řízení ventilu - jak si s tím poradí motor, když se dostane na doraz? Tipnul bych stržení převodovky. Minimálně by to chtělo dodělat koncáky nebo snímání proudu motorem. Prodávají se serva přímo na směšovací ventily. Je však pravda, že stojí několik tisíc…

Driver L298: pokud motor bere více jak 2A, je v datasheetu zapojení pro paralelizaci výstupů. Buď tedy zapoj jen jednu část, nebo je dej paralelně. Takhle ti hrozí jeho zničení špatným programem. Taky ušetříš polovinu diod a řídicích pinů.

Co se týká hotového řešení - opravdu by se nenašel hotový ekvitermní regulátor schopný ovládat servo ventilu, spínání kotle a mít 2 a více vstupů pro teplotní čidla? To mi přijde jako celkem běžný požadavek.

Cena programu by byla rozumná pouze kdyby ti to někdo psal z nudy s tím, že si za to dá pár piv. Za 100/h totiž dneska programátoři ani nevstávají (teda až na mě, ale co bych nechtěl jako brigádník :frowning:). Navíc ladění, práce v terénu… Na to nestačí bejt programátor, co neví, kde se drží páječka a co je voltmetr :smiley:. Je pravda, že zkušený programátor má potřebné moduly dávno napsané a odladěné. Pochopitelně si je však nechá zaplatit pokaždé znova :slight_smile:.

No, prozatím snad stačí :slight_smile:.

Díky za reakci a rozbor.
Večer se to pokusím opravit.
Jinak motor má

  • naprázdno 80mA
  • v zátěži 800mA
  • v "0"ot. 1050mA
    měřeno mnou.

piityy
Se značkama se polepším.
Teploměr bude od regulátoru max.10m. Jaký snímač bys doporučil?
Když by se použili jiný snímače tak by se to “8” vešlo? Problém asi bude počet vstupů.
PIN 485 je pro komunikační modul pro budoucí automatizaci. 5V doplněno.
Pokud tam budou analog. teploměry tak tam (L1, C11) asi nechám?
RV1 - 4k7 takto?
Koncáky motoru třeba takto? (možná, že jsem to otočil)
Driver L298: když jsem okolo 1A hrozí také poškození?

Díky za kontrolu a poznámky

10m by nemel byt problem, pokud to nemas v nejak silne zarusenym prostredi.
Co znamena “8” by se veslo?
Pro napajeni analogovy casti mas ten filtr L1,C11 blbe, ten musi byt ve vyvodu AVCC. V datasheetu ty megy je to namalovany presne.
Koncaky motoru tam nevidim vubec. Mysli se tim koncove spinace (mechanicke, opto), ktere zablokuji dalsi pohyb motoru na konci drahy prislusnem smeru, ale zachovaji moznost chodu zpet.
Ty odpory cos tam nakreslil u motoru jsou na nic. Zkratujes s nima vystup toho mustku a mas je spojeny oba paralelne. Pokud by se jima mel merit proud, musely by byt ve vyvodech 1 a 15 toho mustku. Schema je v datasheetu.
1A je v pohode.

Ja tam pouzil analogovy snimace pripojeny 3-dratove, ale zkomplikujou ti schema. Merim to pres mustek, operaky a prepinam 8 snimacu pomoci multiplexeru 4051, protoze nebylo dost volnych vstupu. S tema DS to mas jednodussi, ale i drazsi a slozitejsi program (neco za neco).

Byt tebou, tak vazne uvazuju o ty mega16. Nemas tam zadnou rezervu pro pripadny rozsireni.

U běžných kódů pro DS18xxx je problém v pisatelích, nikoli v čidlech. Dá se to bez problému napsat celočíselně a pak je to mnohem menší.

Uvidíme jesli se nenajde někdo se zkušenostmi s dalasy na takovou vzdálenost, ale osobně bych dal analog, třeba LM35. V pdfku je i zapojení pro “vzdálené” čidlo. Z toho by se dalo krásně vyjít. Z pohledu programu to je pak jen přečtení hodnoty z převodníku (tedy ušetřené 4kB flash :slight_smile:). Přibyla by ovšem trocha smetí kolem mcu. Pokud bys šel na analogový čidla, bylo by změn docela dost.

Ohledně mcu: je s megou16 nějaký zvláštní problém? Kdyžtak m168 má stejný pinout(je stejně malá) jako m8. Takže pokud se budeš snažit za každou cenu ušetřit 30,- tak to v případě potřeby je naštěstí čím nahradit. Ovšem na prototypu bych neškudlil, to až v případě sériový výroby :slight_smile:.

Potenciometr je už ok.

L1, C11 by zůstalo, ale zapojené úplně jinak :slight_smile:.

Ohledně “koncáků”, tedy snímání proudu, podívej se do pdfka L298. Je tam zapojení odporu Rs - na něm se měří proud. Až ho tam naladíš správně, přivedl bych ho pak na jeden ze vstupů komparátoru, na druhý pak trimr s odporem zapojený stejně jako u lcd.
Opravdu se na koci motor zastaví a převodovka vydrží?
“Figure 7 : For higher currents, outputs can be paralleled. Take care to parallel channel 1 with channel 4
and channel 2 with channel 3.” - je tam ta paralelizace. Ovšem do 1A není nutná. Nevyužitým vstupům pak dej všem nulu.
Pin “enable” může být natvrdo na +5V, ušetříš tak pin procesoru.

Diody D7:10 jsou tam zbytečné. Když si důkladně prohlídneš schéma, zjistíš, že jsou paralelně s D1, D2, D4 a D5 (dát chudinku D3 jinam - to se s ostatníma nesnesla? :smiley:).

V čem to kreslíš? Abych to opravoval v malování, na to nemám :slight_smile:. Kdyby ses zítra hodně nudil a rád cestoval, jsem celej den v KH.

Hmm… než já se vymáčknu, tak už je pozdě :smiley:.

Kuto: LM35 lze připojit 2 vodičově a OZ potřeba nebude, jen nějaký ten odpor a kondik.

podobný regulator mam rozrobený povodna elektronika sa pokazila a nova vyjde cenovo na 3naobok modulu… Co sa tyka nasatvovania nemam tam 15 min ale max 1-2 min. samozrejme to zaleži od systemu cerpadiel a zapojenia. cidla su len dva jedno snima vonkajsiu teplotu a druhe teplotu vody za smiešavacim ventilom.
Inak dost som sa pohral kym som to vyladil aby servo klapka zbytocen nebehala a nekmitala okolo nejakej hodnoty zbytočne vela. Momentalne projekt stoji ale do zimy to musi byt hotove prakticky treba dopisat menu a previest to z pic16f628 na ATmega168. Keby to nebolo pre kamoša tak sa na to… P.S. je tam obycajny motor s zavitom na kratko tusim 2W a poloha ma nezaujima ma dorazover koncove spinace… reguluje sa podla teploty vody a krivky zistenej podla vonkajšej teploty.

šetřit nechci. jen se mi to nechtělo předělávat. ale jdu na to.
kreslím v “isis”

pitty: Ja ale pouzil odporove snimace KTY110. 3 draty kvuli eliminaci odporu vedeni. Nemyslel jsem snimace s napetovym vystupem. Vetsinou delam z toho co mam po ruce :slight_smile: Ty LM35 jsou koukam za lidovku :laughing:

Teď nevim, jesli tě rozesmála kovová verze za 270,- nebo plastová za 25,- :slight_smile:.
Ve dvojvodičovym zapojení, který mám na mysli, by to byl spíš proudovej “výstup” :slight_smile:. Ten se u procesoru převede na napětí, trochu vyfiltruje, zabezpečí a hurá do ADC.

Ještě jak jsem psal o trimru u komparátoru pro detekci zastavení motoru - to by se dalo připojit na některý PWM výstup a hranici nastavovat programově (což by šlo i u kontrastu displeje). Ušetřila by se tím jedna/dvě nespolehlivá součástka.

Piityy: mrkneš mi na to prosím? asi jsem nepochopil trimr s odporem na komparátoru.
Mega umí proud nebo se musí převést na napětí?
RL4 - snažil jsem se.
Díky moc

Ted uz to vypada pouzitelne, akorat bych ty tlacitka pripojil primo a ne pres AD prevodnik. AREF mas uzemeny. Pokud tam mas LM35, tak je budes muset dat na AD prevod, maj analogovy vystupy. A dej pozor aby ti stacily rozsahem teplot. Ty levnejsi verze jsou jen 0-100, coz je treba pro me potreby nepouzitelne). Navic jsem si vsiml, ze ty rozsahy teplot se nekde podle datasheetu lisej od udaju ktery pisou obchodnici (tme, gme,…)

Vida, docela pokrok v kreslení :slight_smile:.

L298: pin6 -> GND, pin11 -> Vcc (+5V)

Spínání relé (AD2) a řízení motoru (AD5 a AD4) bych připojil na jiné piny procesoru - AD převodník budeš potřebovat na teplotní čidla.

Snímání proudu(pin15 driveru, nyní připojen na AD3) bych připojil na vstup komparátoru, lze tak totiž využít přerušení k zastavení motoru, což není u avrkovýho AD převodníku možné (nemá okénkový režim). Tedy z pinu 15 driveru na AIN0(PB2), pro jistotu přes ochranný odpor 100R.
Na AIN1(PB2) bych přes odpor přípojil pwm výstup OC2 (PD7) a zároveň kondik mezi PB2 a gnd.
Pokud bys nechtěl mít možnost nastavovat proudovou mez progrmově, ale trimrem, použil bys úplně to samý zapojení jako u pinu Vee displeje a jezdec trimru na AIN1.

U konektoru J8 (485) se vyhejbáš pinu PD2. To má nějaký důvod?

Napájecí větev Vcc - na výstupu 7805 ta značka není. Seš si jistej, že až budeš routovat desku, že to tam bude správně připojeno? To samé platí pro napájení procesoru, které ve schématu není zobrazeno.

Jak píše kuto - AREF máš na gnd. To by ti nefungoval AD převodník. Má to být připojeno na GND, ale přes kondenzátor(100n).

Jelikož musejí být teploměry na AD převodníku (PORTA) a s jiným zapojením, uvolní se ti PORTC. Tam můžeš zapojit tlačítka (každé samostatně mezi pin a GND, pull-upy nejspíš nebudou třeba, ale můžeš pro ně udělat ve schématu místo).

Jelikož bude třeba kvůli komparátoru přemístit 2 spoje mezi LCDa procesorem, asi bych celý lcd přendal na PORTC a tlačítka z něj dal na volná místa na portuB.

Zapojení teploměrů by bylo podle “FIGURE 6. Two-Wire Remote Temperature Sensor (Output Referred to Ground)” v datasheetu. Jen napájené by to bylo z +12V, vynechat odpor 6k8 (kalibrace se udělá programově) a mezi výstup a pin procesoru vložit RC článek (R mezi výstup a pin, C mezi pin a GND).

Koukám na tranzistor - ty deska bude v provedení smd? Kdyby to mělo bejt v hole-through, tak bych použil spíš BC546, BC548.