使用Raspberry Pi 3自製智慧相框和日曆—第二部分

 

smart picture frame

本課程的第二部分將帶您完成構建智慧相框和日曆的框架、連接PIR運動感測器和控制相框幻燈片顯示向日曆顯示的暫態這些步驟。

該專案將繼續使用本課程的使用Raspberry Pi 3自製智慧相框和日曆—第一部分中所設定的所有內容,並帶您完成安裝OS附加元件的步驟,以運行Python腳本來控制PIR感測器。

從概念到部署,每個專案都包含特定的步驟。本課程的第一部分帶領我們概念階段到原型階段,最後進行了測試。在第二部分中,我們將進行修訂,進行一些設計調整從而獲得第二個原型,然後在進行最終部署前進行測試。

硬體

  • 微處理器:Raspberry Pi 3 B型 (1GB)
  • 顯示器: HannsG HL161 16英寸顯示器
  • VGA 合適器:用於PC的支援HDMI輸入到VGA的通用合適器轉換器
  • 電源:DC 12V/2A
  • 電源轉換器:SINOLLC DC 12V 至5V轉換器
  • 感測器:EMY HC-SR501 PIR 運動感測器
  • 電纜:USB Type-A / Micro-B; 用於顯示器的通用15引腳VGA電纜;麵包板跳線
  • 麵包板:通用無焊麵包板
  • 外殼:官方Raspberry Pi 3 外殼
  • WiFi 路由器:通用WiFi路由器

OS 附加組件

  • rpi.gpio
  • uinput

框架

  • 板:22in x 15in x 3/4in木板
  • 杆:4in x 22in x 1/4in 木條
  • 罩子:天然軟木卷24in x 48in

工具

  • 儀錶:通用DV電壓 & 電阻儀錶
  • 烙鐵:通用
  • 鋸:豎鋸
  • 釘書機:通用釘書機
  • 鑽:埋頭鑽;木孔鑽
  • 槽刨:1/4in 插入式鑽頭
  • 其他:卷尺;螺絲刀;鉗子剪;工具刀
  • 螺絲:3/4in木螺絲; M4 VESA 螺絲
  • 膠帶:雙面膠
  • 膠水:木膠水
  • 安裝座:紮線座;3M Command掛鉤
  • 其他:紮線帶;相框線條

從理念到研發

smart picture frame

 

 

步驟1 – 修訂

只能夠輕鬆訪問我們的家庭線上日曆是不夠的。該專案進一步對家庭照片的幻燈片進行了整合,以便為此壁掛式作品增添美感。我們已經透過使用谷歌應用程式和overGrive將所有內容都存儲在雲盤中。現在,我們需要使用運動感測器控制日曆和幻燈片之間的切換,以便顯示器在有人站在日曆前時能夠顯示日曆。

步驟2 – 設計

 

smart picture frame

第2部分:我們將把PIR運動感測器連接到Raspberry Pi (RPi) GPIO引腳,並安裝必要的OS附加元件,以便其在接收到來自感測器的輸入時運行Python腳本來按下ESC。這樣,當智慧相框前面有行動物時,幻燈片將終止放映,並顯示Chromium上的家庭日曆。

步驟3 – 原型

I. 啟動

1) BOOT the RPi PART 1 disk image # 這應該直接載入到顯示您日曆的Chromium Kiosk中

2) [Ctrl]+[Alt]+[F2] # 退出Kiosk模式

3) >login:< with >Password:< # 進入命令提示符

4) startx # 啟動沒有Chromium的Pixel GUI

II. 安裝Python 腳本附件

1) 打開一個端子視窗並輸入指令

a) 點擊左上角的Raspberry圖示

b) 在【Accessories】功能表下選擇【Terminal】應用程式

2) sudo apt-get update # 檢查並安裝最新版本的Raspbian Jessie

3) sudo apt-get install python-rpi.gpio python3-rpi.gpio # 安裝Python RPi.GPIO 附件

4) wget http://tjjr.fi/sw/python-uinput/releases/python-uinput-0.11.2.tar.gz # 下載 Python 取消輸入模組

5) tar -xzf python-uinput-0.11.2.tar.gz # 解壓下載檔案

6) cd python python-uinput-0.11.2 # 打開解壓資料夾

7) python setup.py build # 創建安裝程式

8) python setup.py install # 運行安裝程式

9) sudo nano /etc/modules # 打開模組檔進行編輯

a) uinput # 添加到文件末尾

b) [Ctrl]+[X] # 退出文件

c) [Y] # 確認保存文件

d) [Enter] # 寫入文件

smart picture frame

10) sudo reboot # 重新啟動RPi 以使其更改生效 – 請按照I. 啟動中的步驟運行至此。

11) 打開一個端子視窗

a) 點擊左上角的Raspberry圖示

b) 在【Accessories】功能表下選擇【Terminal】應用程式

12) lsmod # 列出已啟動的模組—確認“uinput”模組已載入

III. 連接PIR運動感測器

1) 使用一個麵包板和跳線(黑色,藍色,紅色)將PIR運動感測器連接到PRi板面引腳。

a)使用該顏色代碼連接跳線至RPi 板GPIO 引腳:(2)—紅色,(6)—黑色,(10)—藍色。

smart picture frame

b)使用該顏色代碼按照方向將跳線連接到PIR運動感測器引腳

smart picture frame

c)使用麵包板建立從RPi到PIR之間的連接。

smart picture frame

IV. 測試

1) 創建一個“Smart_Cal” 資料夾

a) 按一下左上角的“Folders”圖示

b) 按兩下【Documents】資料夾

c) [Shift]+[Ctrl]+[N] # 創建一個新的資料夾

d) Smart_Cal # 為新創建的資料夾命名

smart picture frame

2) 下載Python腳本

a) 按一下左上角的“藍色地球”圖示

b) 前往Github Repository: https://gist.github.com/glafranceri

c) 將以下檔下載到“Smart_Cal”資料夾中

i. gpio_test.py

ii. uinput_test.py

iii. PIR_ESC.py

3) 打開一個端子視窗

a) 按一下左上角的“Raspberry”圖示

b) 在【Accessories】功能表下選擇【Terminal】應用程式

4) sudo python /home/pi/Documents/Smart_cal/uinput_test.py # 運行腳本—確認返回以下結果“HELLO”

smart picture frame

5) sudo python /home/pi/Documents/gpio_test.py # 運行腳本—在PIR感測器前面行動是確認返回以下結果:“Motion Detected”—使用【Ctrl】+【C】退出腳本。

smart picture frame

6) sudo python /home/pi/Documents/PIR_ESC.py # 運行腳本—在PIR感測器前面行動是確認返回以下結果:“^[”,然後使用【Ctrl】+【C】退出腳本。

smart picture frame

7) sudo chmod 775 /home/pi/Documents/Smart_Cal/PIR_ESC.py # 使腳本可執行

8) sudo nano ~/.config/lxsession/LXDE-pi/autostarts # 打開自動開機檔案進行編輯

a) @sudo python /home/pi/Documents/Smart_cal/PIR_ESC.py # 添加到文件末尾

b) [Ctrl]+[X] # 退出文件

c) [Y] # 確認保存文件

d) [Enter] # 寫入文件

smart picture frame

注意:在—kiosk之後添加您日曆的url,但是不要加引號(” ”)

9) sudo reboot 重新啟動RPi 來測試PIR_ESC.py scipt —確認投影片放映開始後,在PIR運動感測器前面行動會退出投影片放映(見視訊)

步驟4 – 構建框架

1) 查看材料和工具列表

2) 在3/4in的木板的中央沿著顯示器的輪廓線進行描畫

smart picture frame

3) 在顯示器的輪廓內小1/4in尺寸的地方再畫出一個相同的輪廓線

smart picture frame

4) 使用木孔鑽在較小的輪廓線的四個角處鑽孔

smart picture frame鑽出四個角

smart picture frame

5) 使用豎鋸沿著較小的輪廓線進行切割
smart picture frame將較小輪廓線內木板切除

smart picture frame

6) 確認顯示器可與切口契合(前端)

smart picture frame確認顯示器可與切口契合(後端)

smart picture frame

7) 測量並切割尺寸超過框架3in的天然軟木卷
smart picture frame測量

smart picture frame剪切天然軟木卷

smart picture frame

8) 在框架的側面塗上足夠均勻的較水,然後用天然軟木將其覆蓋。

smart picture framesmart picture frame

9) 將框架壓在天然軟木上
smart picture frame將其裝訂到框架邊緣

smart picture frame

10) 用工具刀小心地切掉多餘的天然軟木
smart picture frame橫切並折回中心開口處

smart picture frame

11) 確認顯示器與中心開口區緊密貼合
smart picture frame看起來應該像這樣

smart picture frame

12) 使用1/4in木條來對齊,並透過VESA安裝孔將顯示器背面固定到框架上。
smart picture frame

smart picture frame

13) 透過在相框頂部添加兩個螺絲並在它們之間纏繞相框線來製造一個懸掛點。
smart picture frame

14) 確認顯示器受到框架的牢固支撐
smart picture frame

 

步驟5 – 供電

1) 查看電源要求(顯示器12V DC以及RPi 5V DC)

2) 將USB Type-A / Micro-B電纜切成兩半,剝去皮,露出裡面的兩根電線

3) 觀看以下視訊,以瞭解如何對USB電纜佈線,以及如何將顯示器和RPi正確連接到一個12V/2A 電源。(見視訊)

Figure 2: Wire Diagram for USB Cable

步驟6 – 最終組裝

1) 組裝所有要安裝在框架中的元件(見視訊)

2) 鑽出放置PIR運動感測器的空腔

a) 選擇一個與PIR運動感測器端部大小相同的鑽頭

smart picture frame

b) 使用碎木條對天然軟木進行壓鎖和保護,在框架上鑽一個通孔
smart picture frame

c) 對齊並在框架背面沿著PIR運動感測器的輪廓描繪,使感測器端部可以和空腔貼合
smart picture frame

d) 使用槽刨將描繪的輪廓切割至1/2in
smart picture frame

e) 確認PIR運動感測器與空腔貼合,並且跳線能夠到達GPIO引腳
smart picture frame注意:使用絕緣膠帶將PIR運動感測器固定在空腔中

步驟8 – 部署

1) 現在,所有的元件都已經透過了全面的測試,並且智慧相框已經完全組裝好了,是時候為它找一個使用的場地了(見視訊)。

 

結論

智慧相框已經完成了,它使我的家人可以生活的井井有條,更加輕鬆。每個人都可以透過手機訪問穀歌日曆,並輕鬆添加或編輯活動內容。當沒有人看日歷時,相框的出現成了讓人愉快的轉換,並且也很容易對照片進行更新。我強烈地希望您能夠按照本自製課程來自己構建一個。