Robofun 機器人論壇

 找回密碼
 申請會員
搜索
熱搜: 活動 交友 discuz
查看: 3079|回復: 3

Roboard 的 rcservo 驅動問題

[複製鏈接]
發表於 2010-7-11 17:51:59 | 顯示全部樓層 |閱讀模式
目前馬達已經可以控制,當我送出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)
發表於 2010-7-11 18:06:00 | 顯示全部樓層
不確定你說的鬆了, 是有多鬆...
如果不是像開機以後的那種緊度,
而是要一直固定在一個位置( 用手很難轉動那樣 ),
我猜就要一直送出 pulse, 或是 count 次數多一點(rcservo_SendPWMPulses() 第四個參數) ...
這是我的實驗結果, 還是要請老師出面說一下比較妥當 ~"~
發表於 2010-7-12 20:56:07 | 顯示全部樓層
Hi

在 rcservo lib 中, PWM 是以 count mode 初始化的, 而不是 continue mode
, 你可試著增加 count 值來延長固定位置的時間, 例如 :
rcservo_SendPWMPulses(1, 10000L, duty, 1000L)

(注意 : 馬達固定角度的時間過長, 有可能會傷害馬達)
發表於 2010-7-12 23:04:12 | 顯示全部樓層
我是放在timer裡面依照條件持續送
像利基的鐵蛋
所有馬達初始化的時候, 整個機器人會剛好穩穩的站好
斷電也會站好不會軟調
但BIOLOIDE會, 所以平時都是橫放
用MG系列的SERVO做的也不會
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

小黑屋|手機版|Archiver|機器人論壇 from 2005.07

GMT+8, 2022-8-11 22:07 , Processed in 0.169888 second(s), 7 queries , Apc On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表