ev3 程式設計中各程式塊之間的關聯

2021-08-18 20:58:39 字數 1574 閱讀 9718

在特殊場合的 ev3 模型中, 可能會用到不止乙個 brick

(官方將之稱為程式塊).

程式塊之間可以通過兩種方式連線: 有線和無線. 有線是指

usb 線, 無線是指 wifi 或 藍芽. 這兩種試是相互排斥的.

通過 usb 線將多個程式塊連線在一起的方式, 官方稱為 「菊鏈」, 最多可以將

4 個程式塊連線在一起. 在官方文件中, 對 「菊鏈」 的描述如下:

通過菊鏈可以使用 ev3 usb 電纜將 ev3

程式塊連線在一起. 隨後可以使用鏈中的第乙個 ev3 程式塊控制電機, 並讀取菊鏈 ev3

程式塊的感測器. 可以有多達四個 ev3 程式塊形成菊鏈.

在使用方式上, 一般將第乙個程式塊當作主控器, 其它程式塊作為被控制一方

比如乙個當作有線遙控器, 控制其它程式塊的執行. 這種情況下,

只要在作為主控器的程式塊上布置軟體即可, 被控制的主控器不需要布置程式,

也就不需要啟動任何程式. 在操控時, 啟動主控器上的程式, 對主控器進行操作,

從而給受控制的程式塊發指令, 由受控制方具體驅動電機和感測器.

通過 「菊鏈」 模式將多個程式塊連線在一起時, 比如連線方式為

a

-->b

-->c

-->d

每個程式塊在連線體系具有 「層」 級的概念. 在上述連線中,

總共分為 4 層. a 為第一層, b 為第二層, c 為第三層, d 為第四層. 執行於

a 的程式通過指定 「層」, 可以控制 b, c, d.

在編寫程式時, 開啟 「菊鏈」 模式, 感測器和電機的圖示上的標題欄將出現層級的編輯框,

從而允許選擇控制哪一層的電機或獲取哪一層的感測器的輸入.

這裡只描述藍芽連線方式.

通過藍芽方式連線在一起的程式塊, 各程式塊之間沒有主從關係, 也沒有 「層」 的概念,

各程式塊之間通過 「訊息」 進行通訊. 在官方文件中, 對訊息的描述為

訊息傳遞模組用於在 ev3 程式塊之間傳送藍芽訊息. 要傳送或接收訊息,

必須先通過程式塊藍芽選單或通過藍芽連線模組連線 ev3 程式塊.

訊息以三個元件為特徵

在其之間傳遞訊息的程式塊

標識訊息的訊息標題

「訊息」值. 這可能是文字, 數字或邏輯

通過指定程式塊, 可以指定訊息的接收方 (由哪個程式塊接收); 通過標題,

可以將訊息限定在某個訊息組; 最後才是訊息值,

不同標題具有相同訊息值的訊息屬於兩條不同的訊息.

通過藍芽方式連線, 最多可以連線 7 個程式塊. 通過訊息機制,

可以搭建非常複雜的模型, 可以編寫非常複雜的程式.

通過使用髮線, 通過 usb 連線時, 受控的程式塊對指令的執行感覺不到延遲;

而通過藍芽連線時, 訊息在傳遞時會有較大的延遲, 對於對電機進行精細控制時,

會出現斷斷續續的現象, 也許是我的使用方式有問題吧 (-^-).

由於會看本文的都是用過 ev3 的人, 就不貼圖了!

《樂高EV3機械人搭建與程式設計》 2 7 齒輪

除了目前為止討論到的一些細微的差別,lego教育版還有一些更有趣的齒輪,如帶有橫樑接孔的齒輪 如圖2.13所示 實際上這是轉盤齒輪的一部分。我將在本章下文 齒輪和介面 中作進一步論述。這個帶銷頭軸套的梁,或者說這個驅動鉸接臂 如圖2.14所示 很像乙個環繞手柄。它的一端是乙個銷,可以用來連線橫樑,也...

ev3平衡車程式解讀 wedo2 0第十八期掃雷車

前段時間在朋友圈裡看到老師發的ev3掃雷車作品,想著可以用wedo實現復刻,最後做的效果還行。掃雷車系裝有掃雷器的坦克裝甲車輛,用於在地雷場中為部隊開闢安全的道路。作品主要實現掃雷車的前進以及掃雷裝置的工作,當掃雷裝置在探測過程中檢測到地雷後,掃雷車停止運動並發出警報。結構上主要是將馬達的動力分為兩...

《樂高EV3機械人搭建與程式設計》一2 2 顏色設計

你可能會注意到家庭版和教育版之間的差異之一就是它們有不同的配色方案。家庭版有固定的紅 黑 白三色配色方案,再加上白色翼形部件的貼紙,使它們看起來像是穿戴很好的機械人或是宇宙飛船的零件。lego教育版的配色方案包括綠色 藍色 黃色以及將紅色 黑色 白色混合在一起。它的翼形部件是黑色的,而且沒有貼紙。圖...