AIServo86 函式庫

86Duino IDE 從 Coding 315 開始加入此函式庫,除了完全向下相容 Arduino/86Duino 舊有的 Servo 函式庫外,並加入許多新功能函式,讓玩家更容易操作 AI 伺服機所組成的機器人(例如玩家型兩足機器人和六足機械獸)動作。利用 AIServo86 函式庫,使用者可以:

  1. 指定單一伺服機角度、速度,並設定多顆伺服機同時運作。
  2. 機器人所有伺服機角度可儲存為單一動作幀(frame),可自由決定動作幀播放時間間隔,重現或紀錄機器人的動作。

AIServoPort 類別

初始化用來控制 AI Servo 之埠。

AIServoPort
begin()

AIServo 類別

此類別提供 Arduino/86Duino 舊有的 Servo 函式庫之 Servo 類別所有功能,並新增函式控制伺服機動作流程及轉動速度。

AIServo
attach()
write()
read()
attached()
detach()
setOffset()
setVelocity()
setPosition()
setRealTimeMixing()
run()
pause()
resume()
stop()
release()
isMoving()

多伺服機同步動作函式

下面各函式是伺服機的批次處理函式,可控制任意指定的多顆伺服機同時進行動作。

aiservoMultiRun()
aiservoMultiPause()
aiservoMultiResume()
aiservoMultiStop()
isAIServoMultiMoving()

AIServoFrame 類別

載入、儲存、設定 Servo86 機器人動作幀。

AIServoFrame
positions[]
setPositions()
playPositions()
save()
load()

AIServoOffset 類別

載入、儲存、設定機器人伺服機中心偏移量微調值(offset)參數。

AIServoOffset
offsets[]
setOffsets()
save()
load()

AIServoFrameRobotis 類別

支援讀取 ROBOTIS 動作編輯軟體(RoboPlus Motion)產生的機器人動作檔,用以設定、播放機器人動作。

AIServoFrameRobotis
positions[]
setPositions()
playPositions()
save()
load()

進階伺服機控制函式

可指定伺服機運動軌跡的插補方法,達到機器人動作平滑化的效果。

aiservoBeginSplineMotion()
aiservoEndSplineMotion()

限制

AIServo86 函式庫在運作時會使用 86Duino 內部的計時器(Timer),TimerWDT 函式庫也會使用該計時器,因此為了避免函式庫彼此發生衝突,這兩個函式庫一次只能使用一個。


展示影片


函式庫參考主頁面

The text of the 86Duino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.