Raspberry Pi 機器人 Python篇-Part2 LEGO®馬達測試

轉載至[http://jock36.blogspot.tw/2014/03/raspberry-pi-python-part2-lego.html]
接續上篇[Raspberry Pi 機器人 Python篇-Part1環境安裝]

將軟體更新後即將開始我們的第一個程式

在開始撰寫程式前,我們先認識一下馬達的接腳位置
[[開箱文]BrickPI – 讓 Raspberry Pi 接上您的樂高機器人感測器與馬達]中有提到,相較於NXT LEGO®主機,BrickPi可以接4顆馬達以及5顆感應器,本範例需要先將LEGO®馬達接於MA及MB。下圖為馬達接腳位置圖。
Motor_Ports_Blue

開啟我們Raspberry Pi桌面上的Lxterminal

並輸入
nano myfirstpythonrobot.py
新增名稱為myfirstpythonrobot的python程式

進入到Nano編輯頁面後開始我們的第一個程式

 

from BrickPi import * #呼叫BrickPi.py函示庫
BrickPiSetup() # 設定通訊端口腳位
 #預設的所有腳位都是關閉 所以我們要先將要用的腳位開啟
BrickPi.MotorEnable[PORT_A] = 1 #開啟MA
BrickPi.MotorEnable[PORT_B] = 1 #開啟MBˊ
BrickPiSetupSensors() #將馬達及感應器的設定送回給BrcikPi
while True:
    print “Running Forward”
    BrickPi.MotorSpeed[PORT_A] = 200 #設定MA的速度 (-255 ~ 255)
    BrickPi.MotorSpeed[PORT_B] = 200 #設定MB的速度 (-255 ~ 255)
    ot = time.time()
    while(time.time() – ot < 3): #執行while迴圈3秒
        BrickPiUpdateValues() # 要求BrickPi更新感應器或者馬達參數
        time.sleep(.1) #待機 100 ms
    print “Running Reverse”
    BrickPi.MotorSpeed[PORT_A] = -200 #設定MA的速度 (-255 ~ 255)
    BrickPi.MotorSpeed[PORT_B] = -200 #設定MB的速度(-255 ~ 255)
    ot = time.time()
    while(time.time() – ot < 3): #執行while迴圈3秒
        BrickPiUpdateValues() # 要求BrickPi更新感應器或者馬達參數
        time.sleep(.1) #待機 100 ms
註:程式盡量以手動輸入為主,以免因為字形、字體大小、網頁環境的影響而發生一些未知的錯誤
About 偉和 (21 Articles)
單純的初音迷,世界以初音為中心

Leave a comment

Your email address will not be published.


*