Stránka 1 z 3

Digitální termostat s čidlem DS18S20

Napsal: 26 zář 2011, 00:10
od -Ergo-
Zdravím všechny, postavil jsem si termostat s LCD a čidlem dallas DS18S20 založený na PIC16f628A podle článku v AMARU (PE 2009/1). Vše šlape jak má až na jeden malý problém, když jsem se dostal pod teplotu 10°C. Na displeji se mi vždy vypíše "Chyba čidla". Podezíral jsem nějaké rušení při parazitním napájení DSka, tak jsem ho zapojil klasicky ale problém, přetrvává. Hledal jsem chybu v zapojení a nic. Několikrát a různými programátory jsem zkoušel nahrát program v domění, že se stala chyba v tomto kroku a taky nic. Bojím se, že problém bude na softwarové úrovni PICu, což by byl můj konec, protože program umím jen nahrát, přečíst, smazat. Poraďte moc prosím, jsem v koncích. :cry: Přikládám PDF a HEX soubor, i když ten asi moc nepomůže. Spíš by to asi chtělo ASM, ten želbohu nemám.

Kód: Vybrat vše

http://www.uloz.to/10386830/digitalni-termostat-s-cidlem-dallas-pdf


Kód: Vybrat vše

http://www.uloz.to/10386846/at2-hex

Napsal: 26 zář 2011, 01:07
od procesor
Mám obavu, že to nebude v sw, a keby aj... ten xxx.HEX nie je najvhodnejší na opravu sw. Ak keď nie je to nemožné :D
Dĺžka pripojenia môže byť problém t.j. kapacita.

Napsal: 26 zář 2011, 01:36
od -Ergo-
No nenapadá mě už čím jiným by to bylo, protože vše až do 9,5°C jede naprosto perfektně. Relé spíná a vypíná zátěž a teploty se zobrazují taky korektně. Prostě vždy přesně od 9,5°C problém, takže v HW to myslím nebude. Je fakt, že kabel s čidlem není stíněný, ale to si myslím není v tomto případě třeba. A délka? Tak max. 30cm. Třeba měl někdo podobný problém a svěří se s radou. Díky za odpověď, každá rada drahá. Jen mě mrzí, že vše okolo toho projektu mám hotové a teď toto. :(

Napsal: 26 zář 2011, 05:57
od vladom
Skus vyměnit R10 za 1k. Dělal jsem jinou konstrukci, ale s rezistorem 4k7 to nejelo.

Napsal: 26 zář 2011, 06:22
od Chenzee
Dost nápadně se ta tvoje hodnota podobá horní max. teplotě. Nejlepší bude se spojit s autorem (pokud je uveden kontakt).

Napsal: 26 zář 2011, 06:27
od BOBOBO
Nebo to čidlo zapoj klasicky , trochu můžeš počíst i zde , http://s-o.webnode.cz/teplomer-t4ds/ píše , že kabel může mít i 300 m .

Napsal: 26 zář 2011, 13:48
od -Ergo-
Tak bohužel změna rezistoru na 1k nezabírá. Neměl by někdo jiný nápad? Nerad bych totiž tuhle konstrukci pustil k vodě, protože je přesně to co potřebuju. Jen aby fungovala. Mohlo by být to čidlo v pánu? Zkoušel jsem místo něj DS18B20 těch mám plnou pr... , to Sko jsem těžko sháněl, ale má asi jinej bitovej převod, protože ukazovalo při pokojové teplotě nějakých 50-60°C. Teoreticky, co ten 4K7, potažmo 1K, vynechat úplně. K čemu tam vlastně slouží, krom omezení proudu. Nená to DSko napájení do 5,5V?

Napsal: 26 zář 2011, 14:18
od vladom
Přes tento pin jdou data, takže natvrdo to zapojit nemůžeš. Poslední možnost je zapojit senzor třemi vodiči - pin3 nebude na zem ale +5V. Pokud to nepomůže, tak jen úprava softu. Ten rezistor 1k tam můžeš nechat.

Napsal: 26 zář 2011, 14:36
od frantajetel11
No on tam taky autor píše, že je to pro vnitřní použití. Takže zřejmě s teplotou pod 10°C nepočítá softvérově. :?

Napsal: 26 zář 2011, 15:05
od -Ergo-
... a taky píše, že měřící a nastavovací rozsah je 0 až 99,5°C. Neboj mám to přečteny i pozpátku.

Napsal: 26 zář 2011, 15:31
od -Ergo-
vladom píše:Přes tento pin jdou data, takže natvrdo to zapojit nemůžeš. Poslední možnost je zapojit senzor třemi vodiči - pin3 nebude na zem ale +5V. Pokud to nepomůže, tak jen úprava softu. Ten rezistor 1k tam můžeš nechat.


Tak a tím to taky není, tak hold asi hledat jinou a hlavně ověřenou konstrukci podobnou této. Přeprogramovat PIC na to nemám nebo čím to je.

Napsal: 26 zář 2011, 15:46
od frantajetel11
Tady jsou docela pěkný věci, tak si třeba vybereš http://s-o.webnode.cz/
A většina z nich je i s ASM, kdyby byla potřeba úprava :wink:

Napsal: 26 zář 2011, 17:15
od -Ergo-
A nemohl by to například způsobovat špatně nastavený vnitřní ocilátor? To byla jediná věc, u které jsem si nebyl jist. V programátoru bylo k vybrání mezi LP, XT, HS, ExtClk, IntRC I/O, IntRC, CLKOUT, RC I/O a RC CLKOUT. Vybral jsem IntRC I/O tak jestli je to dobře. Programování opravdu není moje silná stránka. S pojistkama problém nebyl.

Napsal: 26 zář 2011, 19:55
od vladom
IntRC I/O je správně. Na vstupy OSC kde bývá krystal jsou zapojena tlačítka, takže je to jediná správná volba.

Napsal: 26 zář 2011, 20:02
od Chenzee
Možná ti mohu pomoci. Dělal jsem dvojitý termostat s tímto obvodem ale 16ti znakovým LCD. Bylo to pro někoho tu z fora a ten k tomu dodělával krabici, schéma a brd. Jen je to s přesností na celé stupně. Pokud chceš, mohu poskytnout. Je to odladěné a funkční. Kdyžtak dej vědět.