Kezdő vagyok, megosztom a tapasztalataimat
Kezdő vagyok, megosztom a tapasztalataimat
Sziasztok,
A címet még kiegészíteném (amatőr is vagyok), de érdekel a téma.
Jelenleg egy freeduino Atmega168-al próbálkozom sikerült összehozni Displaytech 202A 2x20 -as kijelzővel, bár a háttérvilágítás ki-bekapcsolását még nem tudtam megoldani, de erről bővebben az LCD topikban.
Felhasználva a családiház UTP hálózatát (nem sokkal a költözés után WIFI lett, így parlagon hevert) jött az ötlet, hogy legyen belőle 1-wire hálózat. Jelenleg 8db DS18S20 hőmérő (3db hálókban, 1db nappali, 1db külső, 3db kazán hőmérsékletet mér az adatokat NSLU2 tárolja. Mivel az NSLU-n nincs kijelző, ezért kerestem más megoldást.
Asztalon összeraktam a freeduinóval egy 1 wire hálózatot 2db DS18S20 sensorral.
DallasTemperature.h volt az első amivel próbálkoztam, rögtön szépen hozta az értékeket. Sikerélmény!!
Összecsomagoltam, irány a pince (ott jön össze az összes végpont), rádugtam a 8 hőmérőt, majd jött a kudarc, 0.00 fok.
Vissza az asztal, DallasTemperature.h kihagy, jöjjön a OneWire.h. Asztalon a 2db hőmérő széen hozza az értékeket. Irány a pince, 8db rádug, nem történi semmi. Elkezdtem lehuzogatni a sensorokat és láss csodát, amikor 3db maradt, akkor elindult a mérés.
Pedig a ConversionTime = 750 az ajánlás szerint. Feljebb vittem, de akkor is csak 3 sensort tud olvasni. Amint rádugom a 4-es sensort vége, csupa 0.00 érték jön.
Kapcsolás: DS18S20 1és3 lábak GND, +5V után egy 4k7 ezután jön a PIN8 és utána a DS18S20 2-es láb. Párhuzamosan, az 1és 3-as láb még a sensornál van összekötve.
Darabonként a sensorok kb 15-20m messze vannak.
Megoldás lehet még 2db 1 wire mondjuk a 7 és 9 portokon?
Ja és még 1!!! Mennyit bír a laptop USB portja? Eddig mindent onnan tápláltam, nem szeretném tönkre tenni.
Köszi
Laci
A címet még kiegészíteném (amatőr is vagyok), de érdekel a téma.
Jelenleg egy freeduino Atmega168-al próbálkozom sikerült összehozni Displaytech 202A 2x20 -as kijelzővel, bár a háttérvilágítás ki-bekapcsolását még nem tudtam megoldani, de erről bővebben az LCD topikban.
Felhasználva a családiház UTP hálózatát (nem sokkal a költözés után WIFI lett, így parlagon hevert) jött az ötlet, hogy legyen belőle 1-wire hálózat. Jelenleg 8db DS18S20 hőmérő (3db hálókban, 1db nappali, 1db külső, 3db kazán hőmérsékletet mér az adatokat NSLU2 tárolja. Mivel az NSLU-n nincs kijelző, ezért kerestem más megoldást.
Asztalon összeraktam a freeduinóval egy 1 wire hálózatot 2db DS18S20 sensorral.
DallasTemperature.h volt az első amivel próbálkoztam, rögtön szépen hozta az értékeket. Sikerélmény!!
Összecsomagoltam, irány a pince (ott jön össze az összes végpont), rádugtam a 8 hőmérőt, majd jött a kudarc, 0.00 fok.
Vissza az asztal, DallasTemperature.h kihagy, jöjjön a OneWire.h. Asztalon a 2db hőmérő széen hozza az értékeket. Irány a pince, 8db rádug, nem történi semmi. Elkezdtem lehuzogatni a sensorokat és láss csodát, amikor 3db maradt, akkor elindult a mérés.
Pedig a ConversionTime = 750 az ajánlás szerint. Feljebb vittem, de akkor is csak 3 sensort tud olvasni. Amint rádugom a 4-es sensort vége, csupa 0.00 érték jön.
Kapcsolás: DS18S20 1és3 lábak GND, +5V után egy 4k7 ezután jön a PIN8 és utána a DS18S20 2-es láb. Párhuzamosan, az 1és 3-as láb még a sensornál van összekötve.
Darabonként a sensorok kb 15-20m messze vannak.
Megoldás lehet még 2db 1 wire mondjuk a 7 és 9 portokon?
Ja és még 1!!! Mennyit bír a laptop USB portja? Eddig mindent onnan tápláltam, nem szeretném tönkre tenni.
Köszi
Laci
[quote="Robert"]A chipeket parazita módon tápláltad (DQ és GND vonal). 3 chip esetén már az 5V-t is el kell vinned, vagy a konverzió alatt a felhúzó ellenállás a 2k2...4k7 helyett <500 ohm kell legyen....
Sajnos a +5V-hoz barmolnom kellene, mert nagyon szépen elkészítettem a szenzokokat. (zsugorcső, RJ45 csati, stb..)
Próbálkoztam a második javaslattal, de az sem segített, rájöttem, hogy már korábban van a gond a konverzióig el sem jut.
if ( !ds.search(addr)) {
Serial.print("No more addresses.\n");
ds.reset_search();
return;
}
Amennyiben rajt van a 4.-ik sensor, akkor a serial porton csak rohanó "No more addresses" felirat van, tehát nem talál szenzort. 3 szenzorral megy. A szenzorok jók, mert az NSLU-ra kötött 1-WIRE látja és használja mind a 8-at. Ugyanazt a kábelt használom, amivel az NSLU-ra kötöm az 1-WIRE-t.
Köszi
Laci
Sajnos a +5V-hoz barmolnom kellene, mert nagyon szépen elkészítettem a szenzokokat. (zsugorcső, RJ45 csati, stb..)
Próbálkoztam a második javaslattal, de az sem segített, rájöttem, hogy már korábban van a gond a konverzióig el sem jut.
if ( !ds.search(addr)) {
Serial.print("No more addresses.\n");
ds.reset_search();
return;
}
Amennyiben rajt van a 4.-ik sensor, akkor a serial porton csak rohanó "No more addresses" felirat van, tehát nem talál szenzort. 3 szenzorral megy. A szenzorok jók, mert az NSLU-ra kötött 1-WIRE látja és használja mind a 8-at. Ugyanazt a kábelt használom, amivel az NSLU-ra kötöm az 1-WIRE-t.
Köszi
Laci
Az sem egeszseges:(
A konverzio alatt (homeres) ~ 0.4...1mA-t vesz fel a holmi...
8 eseten ez 4..10mA, azaz a felhuzoellenallasnak ennek megfelelonek kellene lennie. A chiped kv 3.5..3.7Von mer, mert az 1K tul sok meg mindig!
A meresi crc-t ellenorizd le adatfogadaskor...
ha sokszor kapsz 85 fokot vissza, kifogyott a szufla a chipbol...
A konverzio alatt (homeres) ~ 0.4...1mA-t vesz fel a holmi...
8 eseten ez 4..10mA, azaz a felhuzoellenallasnak ennek megfelelonek kellene lennie. A chiped kv 3.5..3.7Von mer, mert az 1K tul sok meg mindig!
A meresi crc-t ellenorizd le adatfogadaskor...
ha sokszor kapsz 85 fokot vissza, kifogyott a szufla a chipbol...
Köszi, megnézem.Robert írta:Az sem egeszseges:(
A konverzio alatt (homeres) ~ 0.4...1mA-t vesz fel a holmi...
8 eseten ez 4..10mA, azaz a felhuzoellenallasnak ennek megfelelonek kellene lennie. A chiped kv 3.5..3.7Von mer, mert az 1K tul sok meg mindig!
A meresi crc-t ellenorizd le adatfogadaskor...
ha sokszor kapsz 85 fokot vissza, kifogyott a szufla a chipbol...
Raktam be CRC ellenőrzést, de még nem jelzett hibát, igaz max: 2-3 percet ment, mert csak este van időm.
Hétvégén készítek egy nagyobb tesztet.
Több órát teszteltem, nem jött CRC hiba, mindig valós hőmérséklet volt.Satya írta:Köszi, megnézem.Robert írta:Az sem egeszseges:(
A konverzio alatt (homeres) ~ 0.4...1mA-t vesz fel a holmi...
8 eseten ez 4..10mA, azaz a felhuzoellenallasnak ennek megfelelonek kellene lennie. A chiped kv 3.5..3.7Von mer, mert az 1K tul sok meg mindig!
A meresi crc-t ellenorizd le adatfogadaskor...
ha sokszor kapsz 85 fokot vissza, kifogyott a szufla a chipbol...
Raktam be CRC ellenőrzést, de még nem jelzett hibát, igaz max: 2-3 percet ment, mert csak este van időm.
Hétvégén készítek egy nagyobb tesztet.
Laci
Mi lehet annak az oka, hogy néhány DS18S20 -1.4 celsius-t ad vissza méréskor? Nem tudom mihez kötni, csak ott vettem észre, amikor grafikont készítettem. Többnyire jó értékek jönnek.
192.168.1.177 - - [26/Oct/2010:09:27:14 +0200] "HEAD /duino/newtemp.php?count=106afdf901080082&temp=-1.4 HTTP/1.1" 200 - "-" "-"
192.168.1.177 - - [26/Oct/2010:09:27:14 +0200] "HEAD /duino/newtemp.php?count=106afdf901080082&temp=-1.4 HTTP/1.1" 200 - "-" "-"
Parazita módban vannak, 8db van az egyik OneWire (port8), 1db a másik OneWire (port 3). A 8-as porton csak DS1820S van.Robert írta:Tippek:
- Parazita módban a hőmérő (min 2-3) és nem elég a felhúzó ellenállás?
- DS18B20 és DS1820S keveredik
- Több eszköz vana buszon és a program egyet kérdezne le
pl. 1-es sensor 923db mérésből 21db hibás és mind -1.4 celsius.
Összesen 8717db mérés volt a 9db hőmérőn, ebből 60db -1.4 fokos érték van az 1,3,6,7 szenzokork szerint. Lakásban lévő szenzorok, mindenhol 21 fok felett van a tényleges hőmérséklet, mielőtt valaki azt írná, hogy ennyi volt, miért csodálkozom.