Beagle
宣告實例
把 Beagle 積木新增到工作區後,Python 程式碼中會自動插入下面這樣的實例宣告:
beagle = Beagle(0)
# 有多個實例時
beagle_1 = Beagle(1)參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| index | 下拉選項 | 實例編號(從 0 開始) | 0 以上的整數 | 0 |
設定輪速度
決定輪速度。速度的範圍是 -100 ~ 100。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 車輪種類 | 左輪(left), 右輪(right), 兩輪(both) | - |
| speed | 輸入值(積木) | 輪速度 | -100 ~ 100 的整數, 0: 停止 | - |
Python
beagle = Beagle(0)
beagle.set_wheel_speed('both', 50)移動指定距離
以目前的輪速度移動指定的距離。
如果沒有設定輪速度,就以預設速度向前移動。
距離值為 0 時,按目前的輪速度持續移動。
勾選等待後,會一直等到移動完成。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| data | 輸入值(積木) | 移動距離 | 0 以上的實數 | - |
| unit | 下拉選項 | 距離單位 | 公分(cm), 公釐(mm), 英吋(inch) | cm |
| wait | 核取方塊 | 是否等待完成 | TRUE / FALSE | TRUE |
Python
beagle = Beagle(0)
beagle.move_distance(50, 'cm', wait=True)移動指定時間
以目前的輪速度移動指定的時間。
如果沒有設定輪速度,就以預設速度向前移動。
勾選等待後,會一直等到移動完成。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| data | 輸入值(積木) | 移動時間(秒) | 0 以上的實數 | - |
| wait | 核取方塊 | 是否等待完成 | TRUE / FALSE | TRUE |
Python
beagle = Beagle(0)
# wait = TRUE
beagle.move_time(5, wait=True)
# wait = FALSE
beagle.move_time(0.5, wait=False)原地轉動
設定原地旋轉的方向和角度。
勾選等待後,會一直等到旋轉完成。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| direction | 下拉選項 | 旋轉方向 | 左側(left), 右側(right) | - |
| data | 輸入值(積木) | 旋轉角度(度) | 0 以上的實數 | - |
| wait | 核取方塊 | 是否等待完成 | TRUE / FALSE | TRUE |
Python
beagle = Beagle(0)
beagle.turn_degree('left', 90, wait=True)改變輪速度
改變 Beagle 的輪速度。
在目前的輪速度上加上輸入的速度,得到新的輪速度。
新設定的輪速度範圍會限制在 -100 ~ 100。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 車輪種類 | 左輪(left), 右輪(right), 兩輪(both) | - |
| speed | 輸入值(積木) | 要改變的速度差 | -200 ~ 200 的整數 | - |
Python
beagle = Beagle(0)
beagle.change_wheel_speed('both', 10)停止
讓 Beagle 停止移動。
Beagle 兩輪的速度都會初始化為 0。

參數
(無)
Python
beagle = Beagle(0)
beagle.stop()車輪正在移動?
車輪正在移動時回傳 true,停止時回傳 false。

參數
(無)
Python
beagle = Beagle(0)
beagle.wheel_moving()設定蜂鳴聲
以指定的頻率設定 Beagle 的蜂鳴器聲音。
可以發聲的頻率範圍是 27.5hz ~ 6553.5hz。
輸入其他值時不會發出蜂鳴聲。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| hz | 輸入值(積木) | 頻率(Hz) | 0, 27.5 ~ 6553.5 的實數(其他為 0) | - |
Python
beagle = Beagle(0)
beagle.sound_buzz(440)播放音符
Beagle 播放指定的音符。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| note | 下拉選項 | 音符 | Do(C), Do#(C#), Re(D), Re#(D#), Mi(E), Fa(F), Fa#(F#), Sol(G), Sol#(G#), La(A), La#(A#), Si(B) | - |
| octave | 下拉選項 | 八度 | 1, 2, 3, 4, 5, 6, 7 | 4 |
Python
beagle = Beagle(0)
beagle.sound_note('D', 5)播放音效
Beagle 播放特定的音效片段。
勾選等待後,會一直等到播放完成。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| clip | 下拉選項 | 音效片段名稱 | 'mute', 'beep', 'siren', 'engine', 'robot', 'dibidibidip', 'happy', 'angry', 'sad', 'sleep', 'march', 'birthday' 等 | - |
| wait | 核取方塊 | 是否等待完成 | TRUE / FALSE | TRUE |
Python
beagle = Beagle(0)
beagle.sound_clip('siren', wait=True)關閉聲音
關閉 Beagle 的聲音。

參數
(無)
Python
beagle = Beagle(0)
beagle.sound_off()正在播放聲音?
聲音正在播放時回傳 true,沒有播放時回傳 false。

參數
(無)
Python
beagle = Beagle(0)
beagle.sound_playing()輪速度值
特定車輪的速度

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 目標車輪 | 左側(left), 右側(right) | - |
Python
beagle = Beagle(0)
beagle.wheel_speed('left')編碼器值
特定車輪的編碼器值

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 目標車輪 | 左側(left), 右側(right) | - |
Python
beagle = Beagle(0)
beagle.encoder('left')陀螺儀值
特定軸的陀螺儀感測器的值

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 測量的軸 | x, y, z | - |
Python
beagle = Beagle(0)
beagle.gyroscope('x')加速度計值
特定軸的加速度感測器的值

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 測量的軸 | x, y, z | - |
Python
beagle = Beagle(0)
beagle.accelerometer('x')磁力計值
特定軸的地磁感測器的值

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 測量的軸 | x, y, z | - |
Python
beagle = Beagle(0)
beagle.magnetometer('x')溫度感測器值
溫度感測器值

參數
(無)
Python
beagle = Beagle(0)
beagle.temperature()信號強度值
信號強度

參數
(無)
Python
beagle = Beagle(0)
beagle.signal_strength()電池電壓
電池電壓

參數
(無)
Python
beagle = Beagle(0)
beagle.battery()狀態是否改變
機器人的狀態是否發生了改變

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 下拉選項 | 狀態種類 | 0 ~ 5(參見下表) | - |
| unit | 條件 |
|---|---|
| 0 | accelerometer('x') > 0.8 |
| 1 | accelerometer('x') < -0.8 |
| 2 | accelerometer('y') > 0.8 |
| 3 | accelerometer('y') < -0.8 |
| 4 | accelerometer('z') > 0 |
| 5 | accelerometer('z') < 0 |
Python
beagle = Beagle(0)
# unit = 0
beagle.accelerometer('x') > 0.8啟動 / 停止光達
啟用或停用光達感測器。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| on | 下拉選項 | 光達 ON / OFF | 啟動(on=True), 停止(off=False) | TRUE |
Python
beagle = Beagle(0)
beagle.lidar_power(True)光達第 ~ 個值
光達感測器可以測量周圍 360 度範圍內與物體的距離。
以 Beagle 的前方(第 0 個值)為基准,沿逆時針方向編號每次加 1。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| unit | 輸入值(欄位) | 物體編號(從 0 開始) | 0 以上的整數 | - |
Python
beagle = Beagle(0)
beagle.lidar_value(0)光達各方向的距離值
表示光達感測器測得的前、後、兩側和斜方向的距離。
輸出該方向左右各 45 度範圍內距離值的平均值。

參數
| 名稱 | 類別 | 說明 | 範圍 / 種類 | 預設值 |
|---|---|---|---|---|
| direction | 下拉選項 | 測量方向 | 前方(front), 左前方(left front), 左側(left), 左後方(left back), 後方(back), 右後方(right back), 右側(right), 右前方(right front) | - |
Python
beagle = Beagle(0)
beagle.lidar_directions('front')光達已就緒?
回傳光達是否已啟動,結果為 true(True) / false(False)。

參數
(無)
Python
beagle = Beagle(0)
beagle.lidar_ready()