2014-10-03 103 views
0

我想獲得lego mindstorm ev3與Raspberry Pi溝通。我能夠讓頭腦風暴向Pi發送數據,但數據不是人類可讀的。我的最終目標是能夠將一些傳感器信息從mindstorm發送到Pi並讓Pi根據這些數據做出決定。我目前收到的數據看起來像這樣'\ xof \ x00 \ x01 \ x00 \ x81 \ x9e \ x04abc \ x00 \ x04 \ x00 \ x00 \ x00 \ x00 \ x00'。這個字符串來自將頭號發送給Pi的頭腦風暴。樹莓派藍牙和樂高頭腦風暴

有沒有一種方法,我可以找出這個數據的含義,以便我可以用它來做出決定在Python中。

這兩個連接的方式是按照這裏的說明http://gipprojects.wordpress.com/2013/11/29/using-python-and-raspberry-pi-to-communicate-with-lego-mindstorms-ev3/完成的。

回答

2

您鏈接的網站給出瞭如何解釋數據的一個很好的解釋。你不應該看作是一個字符串(文本),而是字節。根據您接收的是哪個命令,每個字節都有特定的含義。

有關其他信息,請查閱樂高固件文檔Communications Overview。我猜你正在處理的命令是WRITEMAILBOX System Command

+0

嗨,謝謝你的迴應。我遇到的問題是,雖然按照說明進行操作,但最終的有效載荷等於'\ x00 \ x00 \ x00 \ x00',根據您發佈的鏈接,「payloads」意味着「SUCCESS」。我想知道是否有辦法從EV3中獲得實際的號碼,原來是號碼1. – alphamonkey 2014-10-03 05:13:38

+0

實際上,我認爲這可能是我期待mindstorm輸出的錯誤。我改變它發送文本,而不是數字,併發送「測試」現在我得到'\ x10 \ x00 \ x01 \ x00 \ x81 \ x05 \ x00TEST \ x00'當我開始有效載荷給我「測試」。感謝您的幫助。 – alphamonkey 2014-10-03 05:18:51