2015/08/28

Raspberry pi 2 model B

【新買的 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 TXDUART 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 可以使用,
後續再來看看可加什麼功能。

3 則留言:

  1. 大大的功力太強了。
    採用風扇的轉速控制來代替傳統手動風門,除了減少手動風門的設計空間外,也可以較直觀的紀錄抽風的狀況。
    根據廠商提供的資料,風扇的轉速在達到一定的數值後,才會有一個相對高量的吸力。以美國的D牌烘豆機來看,採用高轉速的馬達來製造較強的吸力,而為了維持桶內的負壓,風門關閉50%~100%的時候是將抽風轉移到冷卻盤來維持相對穩定的吸力。
    而控制風扇轉速的方式可否達到相同的效果呢?
    期待中...

    回覆刪除
  2. 風扇排風的功能已經弄好了,最近正在整理,會盡快分享出來,
    目前為止主要的心得,就是風扇不能太強,否則整個爐子會失溫,
    一爆很零星,烘出來沒熟透。
    後續我再補充。

    回覆刪除
  3. 請問您是否有提供,改機,改調控火力大小,不會斷電跟溫度的服務

    回覆刪除