2015年1月4日

Arduino+DS18B20+SD卡的應用

昨天用了DS18B20加上PLX-DAQ去測水溫度,然後即時將溫度傳到Excel。今天繼續作這樣的專題,看的是冰塊放在室溫下自然融化的溫度變化。

這回沒打算用電腦即時溫度,可是溫度還是要紀錄下來啊,怎麼辦?找出SD Card模組裝上去,就紀錄在SD卡裡頭囉。

接線方式
SD Module--Arduino
MISO--D12
SCK--D13
SS--D10
MOSI--D11
GND--GND
5V--5V

然後找SD卡的範例程式,和之前作的程式重新組合一下,就放下面這
https://sites.google.com/site/pancala/Home/DS18B20_LCDI2C_SDCard.ino
數據呈現方式,除了送到LCD螢幕外,Serial Port也會送資料出去(給PLX-DAQ),然後還會存資料到SD卡裡頭。

sdCard02


測量方式同樣用雙線,鋼杯裡放冰塊,一個測線放裡頭,另外一個測線就測室溫
sdCard01



約50ml的冰塊融化過程,我收集了將近六個小時的數據,最後畫出的圖就長這樣。


有很多跟理論不符的地方,第一是「冰塊和水」同時存在時,溫度應該都是零度,但是實際上作的時候,得要不停攪拌,讓水混合均勻才有可能達到一直維持低溫。圖形的左邊呈現的狀況就是,一陣子不去管他,還有冰塊的水,溫度就一直上升。想到的時候去喇一喇,溫度才又下降,看得出來我至少喇了七次吧。

冰塊融化


第二,室溫是18度,相當於是一個穩定熱源,而水溫上升時,並沒有呈現完美一直線,越接近18度,溫度上升就越慢。水溫最後有沒有可能到室溫18度呢?有可能,但是就這樣的趨勢看來,我覺得還要好幾個小時。

嗯...「理想狀態」要怎麼達到呢?