2013年6月18日 星期二

使用 Raspberry Pi 驅動 LCD 顯示 DHT-11 所測得的環境溫濕度

需要 DHT-11 (溫濕度感測器) 的話請到露天賣場訂購:DHT11 - 溫濕度感測器

DHT-11 使用 DATA 接腳與處理器之間做通訊與同步,採用串行單線數據格式,一次通訊時間在 4ms 左右,數據分為整數與小數部分,一次完整數據輸出為 40-bit,高位元先輸出:

數據格式:8-bit 濕度整數數據 + 8-bit 濕度小數數據 +
                    8-bit 溫度整數數據 + 8-bit 溫度小數數據 + 8-bit 檢驗和

檢驗和是溫濕度整數與小數四個數據相加之後取末 8 位元數據資料,至於詳細的通訊過程請參閱 "DHT11溫濕度感測器說明書" 的說明。

下面的例子將使用 Raspberry Pi (樹莓派) 與 DHT-11 作通訊取得溫濕度數據,並將數據顯示在 LCD上。

首先,我們延用部落格網頁 "驅動 16x2 LCD 螢幕 (英文文字型)" 的線路,並增加 DHT-11 於線路中;DHT-11 使用 3.3V 電源供應,資料通訊使用樹莓派 GPIO P1 第 10 支 pin 腳 (也就是 RxD, #15) 連接 DHT-11 DATA 接腳。

ps. #15 表示是 BCM2835 GPIO 15 的意思


材料列表:

2013年6月7日 星期五

[ 認識與使用 Gertboard ] 第五部曲 - 數位轉類比 ( MCP4802 ) 和類比轉數位 ( MCP3002 ) 轉換器 ( D to A and A to D converters )

學習樹莓派週邊不容錯過的學習利器 "Assembled Gertboard (Rev2.0)",心動不如馬上行動!!露天賣場:

Assembed Gertboard (Rev2.0) - 利用 Raspberry Pi (樹莓派) 學習與開發電子 (週邊) 的最佳拍檔

PiGertboard 套件 (A) - Raspberry Pi (樹莓派) Gertboard 嵌入式套件

PiGertboard 套件 (B) - Raspberry Pi (樹莓派) Gertboard 外接式套件

Gertboard - A to D and D to A Converters ( 橙色部分 ),source: Gertboard User Manual (Rev 2.0)

Gertboard - D to A Converter 電路圖,source: Assembled Gertboard Schematics

Gertboard - A to D Converter 電路圖,source: Assembled Gertboard Schematics

Gertboard -  電路圖,source: Assembled Gertboard Schematics

2013年6月5日 星期三

pidora 遠端桌面與編輯環境設定

from: Pidora_18_Firstboot
不知道大家開始使用了 pidora 了沒有 ?

我想,關於如何安裝與指令介紹這些東西都可以在網路上找到一大堆資料,此篇網頁主要是與下面三個部落格文章做連結,說明如何使用 pidora 來設定以下的編輯環境

重啟 pidora 第一次開機 ( firstboot ) 的設定畫面

pidora firstboot welcome 畫面
第一次安裝 pidora 的時候,因為直接使用 4.3吋螢幕做設定,而且在未設定解析度的情形之下,有些字實在看不清楚,因此就 Next Next 一直按下去,結果 .. 變成了一開機就會直接進入到圖形介面之下。對我來說,這真的有點不方便 !

一開始安裝好 pidora 的時候,也沒有看什麼說明,安裝好作業系統之後,就插上小螢幕開機,因為我只想快點進入到 pidora 的世界,但也因為這樣,才有這篇文章的出現,因為我搞錯了一堆設定,不想重新安裝或是輸入一堆指令做修改,只好看看能不能再次叫出 firstboot 畫面,讓我再做一次設定!

2013年5月6日 星期一

[ 認識與使用 Gertboard ] 第四部曲 - 馬達驅動控制器 ( Motor Controller )

學習樹莓派週邊不容錯過的學習利器 "Assembled Gertboard (Rev2.0)",心動不如馬上行動!!露天賣場:

Assembed Gertboard (Rev2.0) - 利用 Raspberry Pi (樹莓派) 學習與開發電子 (週邊) 的最佳拍檔

PiGertboard 套件 (A) - Raspberry Pi (樹莓派) Gertboard 嵌入式套件

PiGertboard 套件 (B) - Raspberry Pi (樹莓派) Gertboard 外接式套件

Gertboard - Motor Controller ( 粉紅色框線 ),source: Gertboard User Manual (Rev 2.0)
GertBoard 使用 ROHM BD6222HFP 做為馬達驅動控制器,可以驅動最大電壓 DC 18V 電流 2A 的直流有刷馬達。晶片 ( 如下圖 ) 有兩支接腳 MOTOR_AMOTOR_B 可以輸入高或低準位控制直流馬達轉動方向,並且可以在單一接腳輸入 PWM 訊號對馬達進行轉速的控制,這兩支接腳位於電路板中間偏右下的位置,標示名稱是 J5,接腳名稱為 MOTAMOTB
Gertboard - Open Collector Driver 電路圖,source: Assembled Gertboard Schematics

2013年5月2日 星期四

[ 認識與使用 Gertboard ] 第三部曲 - ULN2803 開集極驅動 ( Open Collect Driver )

學習樹莓派週邊不容錯過的學習利器 "Assembled Gertboard (Rev2.0)",心動不如馬上行動!!露天賣場:

Assembed Gertboard (Rev2.0) - 利用 Raspberry Pi (樹莓派) 學習與開發電子 (週邊) 的最佳拍檔

PiGertboard 套件 (A) - Raspberry Pi (樹莓派) Gertboard 嵌入式套件

PiGertboard 套件 (B) - Raspberry Pi (樹莓派) Gertboard 外接式套件

Gertboard - Open Collector Driver ( 黃色框線 ),source: Gertboard User Manual (Rev 2.0)
GertBoard 的 open collector driver ( 開集極驅動,位置位在 GertBoard 的右上方 ) 使用八通道 ULN2803 達靈頓驅動 IC,電壓輸出最大可達 DC 50V,每一通道最大電流可達 500mA,可以用來驅動 LEDs、直流馬達、步進馬達以及繼電器,但在 GertBoard 只開放六個通道做使用。

Gertboard - Open Collector Driver 電路圖,source: Assembled Gertboard Schematics

[ 認識與使用 Gertboard ] 第二部曲 - 輸出入緩衝線路 ( 開關和 LED )

學習樹莓派週邊不容錯過的學習利器 "Assembled Gertboard (Rev2.0)",心動不如馬上行動!!露天賣場:

Assembed Gertboard (Rev2.0) - 利用 Raspberry Pi (樹莓派) 學習與開發電子 (週邊) 的最佳拍檔

PiGertboard 套件 (A) - Raspberry Pi (樹莓派) Gertboard 嵌入式套件

PiGertboard 套件 (B) - Raspberry Pi (樹莓派) Gertboard 外接式套件

Gertboard - Buffer I/O ( + switches and LEDs ),source: Gertboard User Manual (Rev 2.0)
緩衝器可以作為輸出的驅動也可以保護內側的電路。也就是將原本的輸出訊號在經過緩衝器之後可以驅動更多的元件;或是當外部輸出短路或是有突波訊號時,會先衝擊到緩衝器,進而保護接收輸出訊號的元件。

另外,在網路上找到這英文的說明可作為參考,若還是存在疑問請自行 Google 一下 !!!

Buffers (in analog circuits) are used when you need to lower the impedance/increase current capability. They're also useful if you want to tap a signal in a circuit and don't want to put a load on that circuit that might cause the voltage to drop. For example, you might have a circuit that generates a signal and you want to bring that signal out to an external connector that you can plug a data logger or whatever into. If you put a buffer in between the original signal and the data logger output, you don't have to worry about the data logger causing a voltage drop on the original signal. Or if you accidentally short out the output, the circuit won't be affected or damaged.

Another use for a buffer is if you have a chip that has a high output impedance (such as an accelerometer) which you want to feed into a ADC that has a lower input impedance. The ADC would load the accelerometer too much and the voltage will drop; the buffer will prevent that.

Digital buffers are used as logic inverters (inverting buffers) or as simple buffers similar to the analog example above (to increase fan-out capabilities or to protect circuits against shorts when going to an external connector).

2013年4月30日 星期二

[ 認識與使用 Gertboard ] 首部曲 - 瞭解 GertBoard 電路板、建置編輯環境與測試程式碼下載與安裝

學習樹莓派週邊不容錯過的學習利器 "Assembled Gertboard (Rev2.0)",心動不如馬上行動!!露天賣場:

Assembed Gertboard (Rev2.0) - 利用 Raspberry Pi (樹莓派) 學習與開發電子 (週邊) 的最佳拍檔

PiGertboard 套件 (A) - Raspberry Pi (樹莓派) Gertboard 嵌入式套件

PiGertboard 套件 (B) - Raspberry Pi (樹莓派) Gertboard 外接式套件


Gertboard 可說是 Raspberry Pi (樹莓派) 一個理想的添加裝置,特色有:
  • 可直接插入到樹莓派上

  • 可以檢測與響應外部物理事件

  • 檢測與輸出類比電壓

  • 驅動 (直流、步進) 馬達 (18V, 2A max)

  • 檢測按鍵動作

  • 點亮 LED

  • 驅動繼電器

  • 六大區塊各自獨立,可互相結合使用,更富使用上的彈性 ! (請看下面說明)

  • 以上全部都可由樹莓派直接做控制

  • 豐富的軟體資源與使用者手冊,讓使用上更加的方便 !

2013年4月8日 星期一

[AlaMode][PIR] AlaMode 與人體紅外線感應 (PIR) 模組


AlaMode + Raspberry Pi + PIR + Relay + Buzzer

還記得我們在 "使用人體紅外線感應 (PIR) 模組,製作家中安全防護及警報系統" 使用樹莓派控制 PIR 模組與繼電器,並發送電子郵件嗎 ?

這次樹莓派除了負責接收從 AlaMode 發送過來的訊息,並由訊息中確認是否開始發送電子郵件之外,所有週邊的控制都是由 AlaMode 負責。

或許有人會問,這不是都一樣嗎 ? no! No! NO! 同款隔不同師傅!

AlaMode 只要有電,裡面的程式會一直執行,當你想要在 PIR 模組被觸發時發送電子郵件再把樹莓派裡的接收程式開啟就可以了。

使用此程式,樹莓派裡的 UART 功能必須已經被打開了。如果您不是一開始就依照 "AlaMode: Get Started (中文入門說明)" 作設定,那設定的方法請參考 "使用樹莓派模擬 HT12E 遙控器編碼晶片的編碼格式" 網頁中關於 "樹莓派接收無線訊號" 這一段的說明,照著做再重開機就可以!

另外,也請在閱讀此網頁之前先瀏覽

2013年3月26日 星期二

[AlaMode] RTC 晶片 (DS3231) 使用說明

需要選購 AlaMode 可至露天賣場,賣場網址如下:

{ AlaMode } 完全兼容於 Arduino 可直接嵌入 Arduino 擴充板的 Raspberry Pi (樹莓派) 擴充板

AlaMode 入門套件 - 在樹莓派開發你 (妳) 熟悉的 Arduino

樹莓派連線 AlaMode 的 RTC 模組

本文是接續 "AlaMode: Get Started (中文入門說明)",指令可以連貫下來。不過對於要在樹莓派設定其他 RTC 晶片的使用者,卻可視為獨立的使用說明。

本篇所使用的作業系統版本是:2013-02-09-wheezy-raspbian。不一定要跟我一樣,因為步驟只要對了就可以。

AlaMode 與樹莓派間的通訊連接有 I2C、SPI 和串列 UART 這幾種,其中程式燒錄使用串列通訊,而 RTC 晶片與樹莓派使用 I2C 通訊協定且為 Slave。

要瞭解 AlaMode 首先就是要看懂與清楚電路圖,才能正確連接外掛線路與使用,下面提供一個另外匯出為 PDF 清晰的 AlaMode 電路圖,給需要了解線路的看倌一個方便。

下載或觀看清晰的 AlaMode 電路圖 (原始電路圖使用 KiCAD 繪製,可以上網找原始檔案,不過下載不方便,請使用版本控制軟體 (建議 SmartSVN) 同步下載 )

AlaMode 的 RTC 晶片 ( DS3231 ) 在樹莓派中如何設置 ? 有兩種方法:一種是手動設置,但每次都要自行輸入指令才能開啟,不過對於熟悉整個開啟 RTC 流程很有幫助;另一個就是自動模式,藉由修改三個系統檔案,使其相關檔案與設定能在樹莓派開機時自動載入。

詳細設定說明,就請繼續往下看!

AlaMode: Get Started (中文入門說明)

如果喜歡 AlaMode 可至賣場選購,賣場網址如下:

{ AlaMode } 完全兼容於 Arduino 可直接嵌入 Arduino 擴充板的 Raspberry Pi (樹莓派) 擴充板

AlaMode 入門套件 - 在樹莓派開發你 (妳) 熟悉的 Arduino


Raspberry Pi + AlaMode + Arduino Motor Shield

Arduino 有很多的擴充板 ( 有什麼擴充板可參考 Arduino Shield List ) 可以搭派主板使用,而且擁有很多的函式庫可以相互搭配用來做為學習或是開發;樹莓派是一小型的嵌入式系統,可用來學習或是開發 Linux 系統。兩者藉由 AlaMode 擴充板可緊密的結合在一起,不但可以相互配合,更可以發揮一加一大於二的能力。

2013年3月22日 星期五

[PIR] 使用人體紅外線感應 (PIR) 模組,製作家中安全防護及警報系統

人體紅外線感測 (PIR) 模組可至露天賣場訂購:

在這篇文章中,將介紹使用 Python 與 C 語言接收人體紅外線感應 ( PIR) 模組觸發訊號後,發送預警電子郵件給指定的收件人的程式寫作方法。若你是使用智慧型手機的話,開啟收信軟體更能即時的收到預警郵件通知。

最後延伸使用以配合繼電器模組的方式,另外控制照明設備的開或關,若以警報裝置做取代的話,更能達到嚇阻效果!

2013年3月19日 星期二

[PIR] 簡易人體紅外線感應 (PIR) 模組測試電路

網頁最後修改時間:2016/10/24
人體紅外線感測 (PIR) 模組可至露天賣場訂購:

賣場中的人體紅外線感應 ( PIR ) 模組,它的規格中有幾個參數我們必須再深入了解一下,對於之後若是想做硬體線路的變更時,只要更換其中幾個電阻、電容或元件,就可以很方便的變換硬體規格,不但對於 PIR 模組線路有基本的了解,對於實際操作上可以知道硬體的極限在哪裡。下面這幾個參數規格將會在下面討論到:
  • 輸入電壓           :DC 3.3V - 24V (max)
  • 高的輸入電壓代表降壓晶片會有較大的溫昇

  • 觸發後輸出電壓:3.3V,可直接接在樹莓派做為輸入
  • High / Low level signal: 3.3V TTL output

  • 延遲時間  (Tx)  :2.45 秒 ~ 248.21 秒 @ R13 (10K, 103), R_DELAYTIME(1M, 105), C11(0.01uF, 103)
  • 感應之後輸出維持的時間,此延遲時間由可變電阻 (R_DELAYTIME) 調整。

  • 封鎖時間  (Ti)   :2.4 秒 @ R12 (1M, 105), C12 (0.1u, 104)
  • 感應輸出結束之後,再次觸發必須等待的時間,稱做封鎖時間。

2013年3月14日 星期四

人體紅外線感應 ( PIR ) 模組系列文章

人體紅外線感測 (PIR) 模組可至露天賣場訂購:

賣場中與人體紅外線感應模組相關的系列文章,介紹如下:
  • 簡易人體紅外線感應 (PIR) 模組測試電路

  •  這篇主要是用來測試以及熟悉 PIR 模組的操作;除了大略說明 PIR 模組之外,文章中也利用所附的電阻與 LED 做出簡單測試電路,並且再利用賣場中的兩通道光隔離繼電器模組實際控制交流電燈的開關 (照片中的 LED 燈是使用 AC 驅動的自製 LED 燈泡),就已經可以直接做為夜晚照明節能用燈。

    此網頁中主要是賣場 PIR 模組的使用說明,希望購買者在使用之前能先閱讀此篇文章!

2013年2月18日 星期一

[ Gertboard 應用 ] 使用 Wiimote ( 藍芽通訊 ) 遙控 Raspberry Pi 和 Gertboard

RasPi.TV 使用 Wiimote 藍芽搖桿通過在 Raspberry Pi (樹莓派) USB 藍芽通訊與 Pyhton 函式庫 ( CWiid ),可辨識 Wii 搖桿 11 按鈕訊號,並使用這 11 個按鈕控制 Gertboard 所連接的繼電器、DC 12V 風扇、PWM 驅動無刷馬達...等;若合併兩個按鈕以上的組合,更可變化多種的控制組合。


2013年2月3日 星期日

遠端桌面 - VNC

再延續前兩篇文章:

在 Windows 設置 Raspberry Pi (樹莓派) 遠端編輯環境

把 Windows 桌面當作是 Raspberry Pi (樹莓派) 的螢幕


這次提供另一種遠端桌面的方法 VNC。SSH session 某些功能是無法線是在連線的 SSH 視窗上,一定要真正的在樹莓派上直接操作才行,例如:注音輸入法,即使在安裝成功後,也無法顯示在 SSH 連線所開起來的桌面上;另外,鍵盤 layout 的設定,一旦做過設定要做修改,一定要進入到樹莓派才能做設定,使用 SSH session 連線輸入指令 sudo dpkg-reconfigure keyboard-configuration 是沒法開啟設定選單畫面的。經過測試,VNC server 是可以做到的,而且連線之後所開啟的 LXDE 桌面是另一個桌面,並不會與樹莓派已開啟的 LXDE 畫面同步。


在開始之前,開啟 MobaXterm 並連線到樹莓派 ( 軟體與環境安裝請看 把 Windows 桌面當作是 Raspberry Pi (樹莓派) 的螢幕 ),接著確認一下,最近樹莓派更新是什麼時候 ? 如果已經過了很久,建議先進行套件列表更新與套件升級之後再往下做,不然就直接跳到 Step 1

sudo apt-get update


Step 1:在樹莓派安裝 VNC server

在 MobaXterm SSH 視窗輸入下面指令安裝 VNC server

sudo apt-get install tightvncserver

VNC server 安裝 log

Step 2:手動啟動 VNC server

輸入下面指令 (注意 :1 前面有空格)

vncserver :1

接著會請你輸入密碼,然後再輸入一次做確認;然後程式會再問你是不是要產生唯讀的密碼,請輸入 n
VNC server 啟動 log

vncserver 參數設定,下面是一個例子:

vncserver :1 -geometry 1280x800 -depth 16 -pixelformat rgb565

-geometry:VNC 客戶端解析度
           Set desktop width and height.

-depth:8-bit, 16-bit, 32-bit 顏色深度
           Set the colour depth of the visual to provide, in bits per pixel. Must be a value between 8 and 32.

-pixelformat:設定顏色的像素表示
           Set colour format for pixels representation. The viewer can do the conversion to any other pixel  format, but it is faster if the depth and pixel format of the server is the same as the equivalent values on the viewer display.

vncserver 詳細的參數說明請參考 :tightvnc - vcnserver command line options

啟動 VNC server 可以從 SSH 連線手動開啟,當然如果需要的話可以在開啟時自動開啟。


Step 3:開機時自動開啟 VNC server

因為我使用 VNC 時才開而且機會非常少,所以這個需要的請自己試試,參考這篇文章:

Start VNC automatically


Step 4:安裝 RealVNC Client 客戶端軟體

連線到 RealVNC 下載網頁,下載 RealVNC Viewer,下載 (或解壓鎖後) 本身就是執行檔可直接執行



開啟 RealVNC Viewer 後輸入樹莓派 IP 位址:192.168.1.9:1:1 是我們在 VNC server 的設定,也是 port 的意思

VNC server 連線 IP 位只輸入視窗

接著出現連線未加密的警告視窗,點選 "continue"

連線未加密的警告視窗


輸入所設定的密碼

密碼輸入視窗

就會開啟 LXDE 桌面視窗了

VNC 連線成公開啟 LXDE 桌面

要能讓樹莓派更方便使用,那就買支 USB 無線網卡,若是再使用可攜式電源,那就真的是無線了!要設定無線網路設定非常簡單,只要進入到 LXDE 視窗之後點擊 WiFi Config 圖示就會開開啟無線網路組態設定程式;先 "Scan" 再選擇您的網路名稱,點擊後輸入無線網路連線密碼再按下確認按鈕,按下 "Connect" 就會連線並取得 IP 位址。


以上共三篇可遠端連線樹莓派編輯的環境設定已完成,希望對大家有所幫助!

2013年2月1日 星期五

把 Windows 桌面當作是 Raspberry Pi (樹莓派) 的螢幕

延續前一篇文章:在 Windows 設置 Raspberry Pi (樹莓派) 遠端編輯環境,本篇介紹另一個可以在本地端開啟 Raspberry Pi (樹莓派) 的方法,寫這邊主要的目的是為了樹莓派擴充版 Gertboard 與 PiFace Digital 做準備,讓購買之後的你 (妳) 能夠容易的上手,簡單的工作我來做,研究與開發樹莓派的能力就讓大家來努力!

賣場的兩塊擴充版:GertBoard 和 PiFace 都可以使用這兩種方法進行開發,但由於 PiFace 具備 Emulator 和 Simulator 的軟體支援,因此遠端桌面是一定要有的。若是直接在樹莓派弄也可以,但我就是不想另外開一台螢幕用,而且我只想單純的把樹莓派當作單晶片方式使用,線接一接,把程式上傳到單晶片去之後,就可以看到結果,不想要線牽一堆,單純的使用電源與無線網卡 (或有線網路) 連接就好,方便!!

以上純屬個人建議,或許你 (妳) 有更好用的方法,共勉之!

在 Windows 設置 Raspberry Pi (樹莓派) 遠端編輯環境


Sublime Text 2 編輯畫面


不曉得大家在樹莓派撰寫程式時是使用何種編輯器 ?

學習 Raspberry Pi (樹莓派) 控制電子週邊,通常都需要撰寫 C/C++、Python、Java...等程式語言,由於又需要接週邊的電路,因此是否可以像一般撰寫單晶片的方式,直接在 PC 端撰寫程式後上傳到晶片中直接執行控制週邊設備 ?

這是可以做到的 !

方法很多,像是遠端桌面 VNC、掛載遠端資料夾 SSHFS、網頁編輯器 WebIDE ...等,都是可以達到遠端撰寫程式控制樹莓派週邊的目的,除了 SSHFS 之外,都要額外在樹莓派作業系統下另外裝軟體。

最近賣場進了幾款樹莓派擴充板,除了可以學習電子週邊控制知識與技術的 Gertboard (介紹)之外,還有大小與樹莓派相同可直接嵌入在上方的 PiFace (介紹)。為了讓樹莓派變成簡單的週邊,能夠使用 PC 在 Windows 作業系統下撰寫樹莓派的控制程式,我們將為各位介紹下面的遠端 IDE 編輯器環境設置方法。

Sublime Text 2 這套軟體是我現在平常使用的編輯器,因為愛上它的簡潔、漂亮的編輯畫面、語法高亮度標示清晰、且功能強大!擴充套件 ( plugins ) 以及網路資源很多,相信使用過之後你 (妳) 一定會非常喜歡 ^_^

2013年1月28日 星期一

可攜式 Raspberry Pi (樹莓派) 電腦

SK Pang electronic 使用一台樹莓派,再加上  3.5 吋 LCD 液晶螢幕、攜帶式 USB 充電電池包、無線鍵鼠,最後加上一個雷射切割的壓克力底盤,製做出一台可攜式的樹莓派電腦

source: SK Pang electronics

2013年1月26日 星期六

Raspberry Pi (樹莓派) 驅動兩路繼電器模組

需要繼電器模組的話話請到露天賣場訂購:二通道光耦合隔離繼電器模組

使用繼電器可以實現使用小電壓控制大電壓設備的目的,若是再配合網路通訊便可實現遠端控制,家電自動化的目的。

利用繼電器實現遠端家電控制

2013年1月4日 星期五

10 個使用 Raspberry Pi 的創作

source: Michael Coghlan

現在世界上很多的人使用 Raspberry Pi (樹莓派) 這台小 PC,創作出屬於他們自己的作品,ars technica 網站的一篇文章 "10 Raspberry Pi creations that show how amazing the tiny PC can be",整理列出了 10 個使用樹莓派的創作