arduino 烘焙記錄交作業了.

xhining大文章的啟發. 我進了arduino的門.
不過, 修修改改, 等零件...等等等. 直到現在才有了一點點樣子.

原本我的log 方式是採有485 IO的PID 錶頭. 這個錶頭在拍賣網站上可以找到, 一顆800, 應該是類似拆船貨的東西.
詳細我也不清礎, 這個錶頭的好處是, 精確度高, 升温就是升温, 降温就是降温. 不會你明明在加熱, 讀到的温度卻是上上下下的漂.


在讀到Xhining大的文章, 發現有更經濟的方式, 所以又上拍賣網站找了以下的東西. 兩組SPI Ktype的reader, 一個arduino.
Xhining大的文章, 有詳細的說明, 及原始碼如何取得. 基本上, 真如Xhining大所說的, 把程式燒到arduino, 然後SPI的線拉對.
一切就動作了.從serial port上可以取得温度的數據了. 但這個方式取得的數據, 就不像PID錶頭的精確, 可信. 上上下下的.
依這個數據劃的曲線, 不太好看, 不過在程式碼上做點修改, 取個平均. 差一點, 但還是可以用.


在拍賣找零件時, 發現. 居然也有濕度的sensor. 所以, 我就把這個也加上來了. 這個sensor 是I2C介面的, 加上VCC GND 總共4條線. 所以我就利用USB的線外拉. 然後放到離機器遠一點的出風口.


有了這個, 真的可以比較明確的定義一爆初, 一爆末. 一爆初是水的爆發, 所以在風量及温渡沒做調整的狀況下, 可以明確的看到溼度明顯上升就是一爆初, 開始下降就是一爆末. 而且, 如果風門,火力沒控制好, 也可以了解是不是因此抑制了一爆的發展, 造成豆子綠原酸的反應往不好的方向走. 所以, 要進來玩arduino的. 請把這個也考慮進去. I2C拉一拉, 賣家提供的原始碼加進去就可以用了.

後來, 有一天Y黃丟出了這個東西...

哇哇哇... 不得了, 我一直想記錄火力, 又不想動手拉滑鼠, 買了幾次零件, 終於.

不這, 這個就沒有程式碼可用了, 要自己po 上去, 可以參考load cell的範例.

板子露在外, 不太好看. 所以. 賣家也有提供3D列印的盒子.
算算剛好可以塞進去. 所以我的成品像這樣.


最後. 我的記錄程式呈現出來的樣子, 就是

上方白色的是環境温度.
紅色是豆温.
下方紅橘的是火力.
下方比較不像方波的是溼度曲線.

不過我還是不滿足. 下一個案子. 是把排風量, 跟進鍋爐的熱風也記錄進來. 但...
這個要在下一台烘豆機上做了, 因為我不想在800N的屁屁開個孔.. 我也不會...
2015-02-02 9:04 #1
讚!
有底子的果然不一樣!
太猛了!佩服。

所以你溼度計也跟同個賣家買嘍?我是沒想用溼度計,但如果要用的話,我會考慮DHT11就好,便宜許多。
如果我再做應該也會考慮改用Max6675而不用Max31855。

xhining wrote:
考慮改用Max6675而不用Max31855(恕刪)


果然都是經濟考量優先..
這個我也有買, 不過還沒試用過.不知道精準度如何.

溼度sensor是跟同一賣家買的沒錯.

這種分享好像比較沒人有興趣的樣子。

我覺得你所謂的精準好像不一定是精準。
而是有可能低取樣數(反應慢)或是像你做的平均(它本來Sketch好像就四筆平均一次的樣子)。還是低通濾波。
我本來有懷疑它,但我搭配的軟體Roasterlogger看起來是不太會飄。
且我用穩定的熱源,例如熱水,它的數值就很穩定,所以我覺得是取樣率高,造成有無接觸豆子時的溫度都詳實記錄了。
真的不行,有興趣的話我可以翻翻簡單的低通濾波公式給你參考。
還蠻想知道濕度 在烘焙過程的變化, 我猜測是有均值的,

可以分享嗎?

xhining wrote:
它本來Sketch好像就四筆平均一次的樣子(恕刪)

剛把code 看了一下, 真的是有用noGoodReadings 的次數來做平均.
sub function 內的東西, 我都認為是OK的, 所以沒進去看, 只是在main loop加東西.
太感謝了, 現在我會好好的看一下.
另外低通濾波? 這我真的不懂. 數學是小弟的罩門...
我來google 一下好了.

forester小蔡 wrote:
還蠻想知道濕度 在烘...(恕刪)


關於濕度, 你提的均值是什麼意思, 我不是很清礎.
這個sensor 會吐兩個值, 一個是濕度的% 一個是温度.
我的使用應該現在只用到皮, 現在我不在意這個數值的準確度.
我只在意相對的值. 上周六是這套系統第一次上線.
我有一鍋, 刻意把風門和火力固定 (機械風門, 要大到不會有銀皮卡塞的狀況)
然後觀察濕度的變化, 和一般所知的脫水, 一爆理論是否相同.
結果真的在一爆要開始前, 就可以看到原本緩升的濕度值開始有了比較大的上升現像,
接著出爆聲時, 數值的跳升更大..
這是現在我看到的, 我想隨著這系統上線時間變長, 我想我應該會有更多的感覺...
只不過, 現在就是現在..
以後的事, 以後再說.
alon.chang wrote:
低通濾波?(恕刪)


嗯,我幫你用google搜尋了,我的關鍵字是:lpf c code
google找到的是這個:(第一個)
http://www.edaboard.com/thread292850.html,套裡面第2個連結LOW_PASS的公式
我覺得應該是對的。

那如果直接改RoastLogger-MAX38155 V1.2Sketch,做1Hz的低通濾波。沒記錯的話,應該是這樣。


const int computer = 1;
的下一行增加一個常數alpha
const float alpha = 0.409155;

搜尋
tCumulative1 = tCumulative1 + temp1;
取代成
tCumulative1 = tCumulative1 + (temp1 - tCumulative1)* alpha;

搜尋
if (noGoodReadings1 > 0) t1 = tCumulative1 / noGoodReadings1; else t1 = -1.0;
取代成
if (noGoodReadings1 > 0) t1 = tCumulative1; else t1 = -1.0;

搜尋(有2個)
tCumulative1 = 0.0;
把下面那個註解掉,不用一直歸零了。
//tCumulative1 = 0.0;

我有verify會過,表示語法應該沒錯,但效果就不知道了。
反正你有兩根,你就同時拿去冰火五重天,看低通濾波的那根是不是反應比較慢,不會亂跳,就對了。
如果還是反應太快,你可以試著把const float alpha = 0.409155;再改大看看。

xhining wrote:
嗯,我幫你用goog...(恕刪)



我來試試好了, 這週六烘豆的時候試試, 下週上來報告.
好厲害阿!
可以幫我做個濕度監測嗎?
我也想要
好想要啊(≧∇≦)
一定要十個字
限制級
您即將進入之討論頁 需滿18歲 方可瀏覽。
提醒:內容可能因過於寫實、驚悚而令人感到不舒服,是否繼續觀看?

根據「電腦網路內容分級處理辦法」修正條文第六條第三款規定,已於該限制級網頁,依台灣網站分級推廣基金會規定作標示。
評分
複製連結