【新買的 Raspberry pi 2 model B】
之前用的是 Raspberry pi model B 來作為烘豆機的控制器,
用到後來,發現一個大問題,就是可用的 GPIO 不夠。
26 個 GPIO 中,已經用掉 25 個,但我想到的還有風扇和蜂鳴器要控制,
於是後來買了 Raspberry pi 2 Model B。
與前一版的差別,在於 GPIO 從 26 變成 40 個,
應該夠我用好一陣子了。
看一下原本的 GPIO 配置:
這裡面 3.3V, 5V 和 GND 是固定的,無法用來控制元件;
I2C 用於溫溼度模組(HTU21D)和 ADC IC(ADS1015),
SPI 則用於 K-Type 溫度計 (MAX31855) ,
PWR_EN 是用來控制 SSR 的啟動與關閉,用來控制加熱火力,
UART TXD 和 UART RXD 則是當發生問題無法開機時偵錯用,
雖然也可以設定為 GPIO 以控制週邊,但因擔心發生問題時改不回來而無法偵錯,
所以還是保留原本的功能。
最後 KB_0* 則是用來讀取 4X4 keyboard 用的,
這個 keyboard 很傷,一下就用掉 8 個 GPIO。
因此可用的 GPIO,只剩下 Pin 22,不夠我加其他功能。
新的 RPi 2 model B 則是有 40 Pin,前 26 個 Pin 與原本的相同,
因此維持不變,新的 GPIO 配置如下:
Pin 22 用來讀取 AM2302 的資料;AM2302 是另一顆可以讀取環境溫溼度的模組,
只需要一根 pin 讀取資料,逛網拍時不小心買下的,未來可能取代原本的 HTU21D。
Pin 29 是用 PWM 來控制風扇的轉速,這樣可以調整風門大小,
但用 PWN 控制轉速時,即使 PWM 設定為 0,還是會轉動,
因此另外用 Pin 31 來將整個風扇的電關掉,這樣才能夠做悶蒸的動作。
Pin 32 則是要設計用來控制蜂鳴器,如此一來可以發出聲音,
用來提醒我烘豆的不同階段,例如:
- 預熱完成
- 溫度過高
- 溫度接近一爆
- 溫度接近二爆
- 預計下豆
想到的功能規劃完成後,還有 8 根 GPIO 可以使用,
後續再來看看可加什麼功能。
大大的功力太強了。
回覆刪除採用風扇的轉速控制來代替傳統手動風門,除了減少手動風門的設計空間外,也可以較直觀的紀錄抽風的狀況。
根據廠商提供的資料,風扇的轉速在達到一定的數值後,才會有一個相對高量的吸力。以美國的D牌烘豆機來看,採用高轉速的馬達來製造較強的吸力,而為了維持桶內的負壓,風門關閉50%~100%的時候是將抽風轉移到冷卻盤來維持相對穩定的吸力。
而控制風扇轉速的方式可否達到相同的效果呢?
期待中...
風扇排風的功能已經弄好了,最近正在整理,會盡快分享出來,
回覆刪除目前為止主要的心得,就是風扇不能太強,否則整個爐子會失溫,
一爆很零星,烘出來沒熟透。
後續我再補充。
請問您是否有提供,改機,改調控火力大小,不會斷電跟溫度的服務
回覆刪除