Roboard 的 rcservo 驅動問題
目前馬達已經可以控制,當我送出SendPWMPulses後,只維持一下下,馬達就鬆了。所以不能持久請問若是要可以讓馬達一直維持在最後位置,要怎麼寫?謝謝
RoBoIO.roboio_SetRBVer(RoBoIO.RB_100)
Dim i As Integer
For i = 0 To 23
RoBoIO.rcservo_SetServo(i, RoBoIO.RCSERVO_SERVO_DEFAULT_NOFB)
Next
Dim channel As Integer = 0
Dim temp As Integer = 0
Dim temp1 As Integer = 0
For a = 0 To 23
temp = 2 ^ a
If Not (a = 2 Or a = 3 Or a = 4 Or a = 5) Then
channel += temp
End If
temp1 += temp
Next
If RoBoIO.rcservo_Initialize(channel) = False Then
Me.Label_status.Text = RoBoIO.roboio_GetErrMsg()
Else
Me.Label_status.Text = "rcservo_Initialize succeesed!!!"
End If
RoBoIO.rcservo_EnterPWMMode()
RoBoIO.rcservo_SendPWMPulses(1, 10000L, duty, 100L) 不確定你說的鬆了, 是有多鬆...
如果不是像開機以後的那種緊度,
而是要一直固定在一個位置( 用手很難轉動那樣 ),
我猜就要一直送出 pulse, 或是 count 次數多一點(rcservo_SendPWMPulses() 第四個參數) ...
這是我的實驗結果, 還是要請老師出面說一下比較妥當 ~"~ Hi
在 rcservo lib 中, PWM 是以 count mode 初始化的, 而不是 continue mode
, 你可試著增加 count 值來延長固定位置的時間, 例如 :
rcservo_SendPWMPulses(1, 10000L, duty, 1000L)
(注意 : 馬達固定角度的時間過長, 有可能會傷害馬達) 我是放在timer裡面依照條件持續送
像利基的鐵蛋
所有馬達初始化的時候, 整個機器人會剛好穩穩的站好
斷電也會站好不會軟調
但BIOLOIDE會, 所以平時都是橫放
用MG系列的SERVO做的也不會
頁:
[1]