2014年4月4日 星期五

[Raspberry Pi] 機器人 Python篇-Part3 LEGO®感應器測試

在上篇[[Raspberry Pi] 機器人 Python篇-Part2 LEGO®馬達測試]中教導各為如何用BrickPi控制馬達

本篇將會繼續為各位介紹如何讀取LEGO®感應器的數值


在撰寫程式之前我們要先了解感應器在BrickPi上面接腳的位置,如下圖






先前在[[開箱文]BrickPI – 讓 Raspberry Pi 接上您的樂高機器人感測器與馬達]中有提到感應器在BrickPi上面總共可以接上5個(S1~S5),本篇範例會將觸碰感應器(Touch sensor)接於S1


開啟Desktop上的LXTerminal

並輸入$ nano touchsensor.py


新增名稱為touchsensor的python程式

進入到Nano編輯頁面後開始撰寫程式

from BrickPi import *#呼叫BrickPi.py函示庫

BrickPiSetup() # 設定通訊端口腳位

BrickPi.SensorType[PORT_1] = TYPE_SENSOR_TOUCH #設定感應器的參數

BrickPiSetupSensors() #將馬達及感應器的設定送回給BrcikPi

while True:

result = BrickPiUpdateValues() # 要求BrickPi更新感應器或者馬達參數

if not result :

print BrickPi.Sensor[PORT_1] #BrickPi.Sensor[PORT]儲存從感應器中獲得的數值

time.sleep(.01) # 待機 10 ms