要用瀏覽器或APP對Raspberry pi進行控制,需先在Raspberry Pi安裝WebIOPi。這套程式可讓使用者在瀏覽器上控制遠端的Raspberry Pi,讓連接的LED亮或滅,透過PWM也可控制步進馬的轉速及讀取感應器的值呈現在網頁上等功能。
安裝Python development headers的方法:
以下是webiopi的安裝步驟:
截至2016.1.16為止,Webiopi最新版本為0.7.1,由於Raspberry Pi 2 Model B 的GPIO Pin有40個,因此安裝的步驟有點不一樣,安裝之前要先安裝python-rpi.gpio :
重新啟動
於boot時自動啟動與停止
如果在boot時要啟動WebIOPi,可執行:
遠端連線WebIOPi
GPIO Header畫面:
WebIOPi是用 Python寫成的,可完整支援Unified Serial/SPI/I2C 控制超過30種以上的設備,包括類比轉換、IO擴充及感應器等,同時也可撰寫Javascript/HTML使用者介面,呈現控制所需呈現的使用者介面。
先看一段影片,透過瀏覽器控制Raspberry Pi的GPIO,讓Pin7及Pin11分別為開跟關,表示LED的亮與滅。
先看一段影片,透過瀏覽器控制Raspberry Pi的GPIO,讓Pin7及Pin11分別為開跟關,表示LED的亮與滅。
[安裝程序]
安裝WebIOPi之前,要在Respberry pi安裝 Python 2.7或3.2版,也需手動先安裝GCC及 Python development headers,如果使用 Raspbian 2014-01-07版本,Python(2.7.3)及GCC(4.6.3)都已安裝在Image裡了。
安裝Python development headers的方法:
$ sudo apt-get install python-dev python3-dev
以下是webiopi的安裝步驟:
$ wget http://webiopi.googlecode.com/files/WebIOPi-0.6.0.tar.gz $ tar xvzf WebIOPi-0.6.0.tar.gz $ cd WebIOPi-0.6.0 $ sudo ./setup.sh
截至2016.1.16為止,Webiopi最新版本為0.7.1,由於Raspberry Pi 2 Model B 的GPIO Pin有40個,因此安裝的步驟有點不一樣,安裝之前要先安裝python-rpi.gpio :
$ sudo apt-get update $ sudo apt-get install python-rpi.gpio python3-rpi.gpio下載Webiopi的位置如下:
$ wget http://sourceforge.net/projects/webiopi/files/WebIOPi-0.7.1.tar.gz $ tar xvzf WebIOPi-0.7.1.tar.gz $ cd WebIOPi-0.7.1如果用的是Raspberry Pi 2 或 B+,要先進行Patch,程序如下:
$ wget https://raw.githubusercontent.com/doublebind/raspi/master/webiopi-pi2bplus.patch $ patch -p1 -i webiopi-pi2bplus.patch $ sudo ./setup.sh設定為Daemon
安裝成功後,可將WebIOPi 設定成Daemon形式,以下指令可啟動或停止WebIOPi ,設定檔放在 /etc/webiopi/config :
$ sudo /etc/init.d/webiopi start 或 $ service webiopi start $ sudo /etc/init.d/webiopi stop 或 $ service webiopi stop
重新啟動
$ sudo /etc/init.d/webiopi restart 或 $ service webiopi restart
於boot時自動啟動與停止
$ sudo update-rc.d webiopi defaults
如果在boot時要停止WebIOPi,可執行:
$ sudo update-rc.d webiopi remove
遠端連線WebIOPi
要用瀏覽器連線至Raspberry Pi的WebIOPi,以我的Pi為例,設定的IP是192.168.1.104,可用8000進行連線:http://192.168.1.104:8000,成功後會出現需輸入帳號密碼的畫面,預設帳號是webiopi,密碼是raspberry。
GPIO Header畫面:
變更密碼
如果要變更Webiopi密碼,可執行webiopi-passwd
Enter Login: webiopi
Enter Password:
Confirm password:
移除密碼保護
要移除登入時的帳號密碼保護,可刪除 /etc/webiopi/passwd 檔案或清成空白,重新啟動WebIOPi即可
[2014/04/05]
2014/03推出0.7版,這個版本增加支援一些晶片功能,如MCP3002 ADC 和 MCP4802 DAC 晶片,也增加PiFace Digital 擴充卡的驅動程式,也支援IPV6功能,有興趣可連線至:WEBIOPI Change Log 看一下增加哪些支援功能。
• webiopi
• WebIOPi-0.7.1 Patch for Raspberry B+ and Pi 2
另外有個Project 稱做PiUi,是用行動電話來控制Raspberry Pi,作法也類似,您可至以下網站取得相關資訊:http://www.raspberrypi.org/archives/3583
如果要變更Webiopi密碼,可執行webiopi-passwd
$ sudo webiopi-passwdWebIOPi passwd file generator
Enter Login: webiopi
Enter Password:
Confirm password:
修改密碼後,需重新啟動WebIOPi
$ sudo /etc/init.d/webiopi restart
移除密碼保護
要移除登入時的帳號密碼保護,可刪除 /etc/webiopi/passwd 檔案或清成空白,重新啟動WebIOPi即可
[2014/04/05]
2014/03推出0.7版,這個版本增加支援一些晶片功能,如MCP3002 ADC 和 MCP4802 DAC 晶片,也增加PiFace Digital 擴充卡的驅動程式,也支援IPV6功能,有興趣可連線至:WEBIOPI Change Log 看一下增加哪些支援功能。
圖片來源:webiopi
[參考資料]
• WebIOPi-0.7.1 Patch for Raspberry B+ and Pi 2
另外有個Project 稱做PiUi,是用行動電話來控制Raspberry Pi,作法也類似,您可至以下網站取得相關資訊:http://www.raspberrypi.org/archives/3583
張貼留言