按门铃启动 Webcam照相并将编码存入Bluemix Cloudant 数据库

按门铃启动 Webcam照相并将编码存入Bluemix Cloudant 数据库

作者:陳兆麟 Email:chenlin2@ms9.hinet.net

智能家庭希望有人在按门铃时,系统即刻照相并将相片编码存于云端,以下范例是以面包板 button 模拟门铃, user 按下 button后即刻启动连接在树莓派之 webcam 自动照相并将编码存于IBM Bluemix Cloudant 数据库,程序在 Node-red 环境下编译及执行。

開發環境: Win 7 (64 bit) , Raspberry pi 2, Webcam, Bluemix

1.下載 TheThingBox-1.8.4-rpi2.zip使用 windiskmanager 燒入SD card 後,啟動樹莓派2, 該images檔已含 node-red,系統必須上網。

(https://s3.amazonaws.com/TheThingBox/TheThingBox-1.8.4-rpi2.zip)

2.在window PC 使用 putty 登錄樹梅派 (user:pi ; password:raspberry)

3. Node-RED 終端機指令 :

$ sudo systemctl start thethingbox.service (起動 node-red)
$ sudo systemctl stop thethingbox.service (關閉 node-red)

4. 啟動 Node-RED 後 http://192.168.0.10:1880 (192.168.0.10 樹莓派 ip)

匯入 [node-red-contrib-scx-ibmiotapp] & [node-red-node-cf-cloudant]node
import -> node -> [node-red-contrib-scx-ibmiotapp]
import -> node -> [node-red-node-cf-cloudant]


在 Node-red 調色盤增加 ibmiot & cloudant node

5. 因下載的 img 檔不含 fswebcam 軟體 (支援網路攝影機),必須事先安裝。

$sudo apt-get install fswebcam
$mkdir /home/pi/pictures (存照片位置)

6. 製作模擬電鈴的麵包板

7. webcam 連接樹莓派:

樹梅派 2 GPIO 腳位圖

步驟 (15) 建立 [新增裝置] 將 b827ebabxxxx 填入 裝置資訊輸出

8.進入IBM Bluemix: https://console.ng.bluemix.net/ 點選 Sign Up; 註冊後登錄 (30天試用期免費) 將 username 及 password 記錄

9.建立 Organization 名稱

10.建立 Space 名稱 確認 Organization, Space名稱

11.可選擇不同 Region (United Kingdom,Sydeny,US South)

12.瀏覽器輸入: https://console.ng.bluemix.net/,點選型錄 =>選擇 [ Internet of Things starter]

Name: slimtest

產生 1 App , 2 service

11.點選slimtest-iotf-service 點選 [Launch dashboard]

12.點選 [DEVICES] 點選 [Add Device]

13.點選 [ Create device type ] 點選 [ Create device type ]

14.填選 Name = myPi , [next] ->[create]

15.選擇 [device type] myPi ->Next DeviceID 填入 b827ebabxxxx

16.點選右下角 Next 至結束 Add 將取得以下類似數據 (請記錄)

17. 建立API key,點選 [Generate API key], 點選 [API Keys]

記錄 API key 及 Authentication Token

18. 瀏覽器輸入 : http://192.168.0.10:1880/ (樹梅派IP:192.168.0.10)

19. 自 Clipboard 匯入 flow script, 將raspberry-Doorbell.json (附錄 5)匯入

20.按電鈴後webcam將自動拍照,[IBM IoT App Out]用來連結樹梅派及Bluemix

21. 點選上圖 [IBM IoT App Out] 將步驟 (17) API Key 填入

22. 進入bluemix Nord-Red 編輯器 http://slimtest.mybluemix.net/red/

Import -> Clipboard (將 bluemix-RetrievePicture.json [附錄 5] 貼入)

23. 點選上圖 [vistorAlert Event] 將步驟 (17) API Key 填入

24. 點選上圖 [Sendpicture command] 將步驟 (17) API Key 填入

25. 在 bluemix 建立資料庫儲存 raspberry pi傳來的照片,點選 test -> slimtest-cloudantNoSQLDB

點選 [launch]

26.點選 [create Database]

27.建立 [pictures] database 點選 ALL Documents +

點選 New Search Index

function(doc){
if(doc.payload.fileName){
index(“fileName”,
doc.payload.fileName, {“store”: “yes”});
}
}

index name:pictures ; _design/New Document; 將function(doc) 填入 Search index function 欄位

28.點選 database [pictures]

29.記錄 Host, user, password, 可存取 database [pictures]

30.根據步驟 (19) 點選編輯器右上角 [deploy] 執行程式, 點選 [debug] 觀察執行結果

31.進入樹莓派Nord-Red 編輯器 http://192.168.0.10:1880/

32. Import -> Clipboard (將 raspberry-sendpicture.json [附錄 5] 貼入),程式通知樹莓派將拍照 image 編碼後存入

33.點選上圖 [IBM IoT App In] 將步驟 (17) API Key 填入

34.點選上圖 [insertPicture] (依步驟(29) 將Host,username,Password填入)

Host: 7f73725xxxxxxxxxx-bluemix.cloudant.com

35.點選 [Activate]

36. 啟動照相按鈕 (步驟 6),資料庫新增一筆資料,驗證 [insertPicture] 無誤.

附錄

1.win32diskmanager 安裝及使用:
http://chakra-zh.blogspot.tw/2012/04/windows-win32diskimager-live-usb.html
2.putty安裝及使用:
http://www.ascc.sinica.edu.tw/putty
3.WinSCP 簡易教學(Mini User Guide)
http://www.ascc.sinica.edu.tw/winscp
4.Rpi thethingbox image 下載:
http://thethingbox.io/index.html#packagestable
5.raspberry-Doorbell.json+raspberry-sendpicture.json+bluemix-RetrievePicture.json https://drive.google.com/file/d/0B16KfawnoTbmcHFSMXNOeGpLSGs/view?usp=sharing
6.bluemix 全球系統維護現況
https://developer.ibm.com/bluemix/support/#status

參考文獻:

1.https://dennisschultz.wordpress.com/2015/06/25/my-internet-of-things-and-mobilefirst-adventure-part-1/
2.https://dennisschultz.wordpress.com/2015/06/25/my-internet-of-things-and-mobilefirst-adventure-part-2-setting-up-the-raspberry-pi-hardware/
3.https://dennisschultz.wordpress.com/2015/06/25/my-internet-of-things-and-mobilefirst-adventure-part-3-raspberry-pi-software/
4.https://dennisschultz.wordpress.com/2015/06/26/my-internet-of-things-and-mobilefirst-adventure-part-4-my-first-node-red-flow-on-the-pi/
5.https://dennisschultz.wordpress.com/2015/06/29/my-internet-of-things-and-mobilefirst-adventure-part-5-adding-in-the-camera/
6.https://dennisschultz.wordpress.com/2015/07/01/my-internet-of-things-and-mobilefirst-adventure-part-6-setup-the-bluemix-application-environment/
7.https://dennisschultz.wordpress.com/2015/08/17/my-internet-of-things-and-mobilefirst-adventure-part-7-elaborate-on-the-messaging-and-data-being-passed/
8.https://dennisschultz.wordpress.com/2015/08/19/my-internet-of-things-and-mobilefirst-adventure-part-7a-further-elaboration/
9.https://dennisschultz.wordpress.com/2015/08/24/my-internet-of-things-and-mobilefirst-adventure-part-8-build-the-mobile-app/
10.https://drive.google.com/file/d/0B8ToAuLFOH1fMlBNMjl1V2tkMjA/view?usp=sharing
11.https://drive.google.com/file/d/0B7_CUSsY2cbnTW9PZVBHTnZLOEE/view?usp=sharing
12.https://www.youtube.com/watch?v=24JAF9Eu1mk

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值