轉載至[http://jock36.blogspot.tw/2014/04/raspberry-pi-python-part3-lego.html#more]
在上篇[[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