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.