Roboard對於PWM規格馬達的控制
Roboard 是一片神奇又迷你的機器人控制板
http://tw.myblog.yahoo.com/robot-whale/article?mid=22&prev=38&l=f&fid=17
他本身就是一片電腦主機版, 但又同時擁有可以控制24顆PWM馬達的能力
且這24組可動態規劃成PWM或是GPIO , 任君選擇
還有TTL/RS485/232 等等的通訊能力, USB 有三組
還有八組A/D可以提供不同的應用 , I2C/SPI介面也沒少
( 當然, 首先你得先有PWM規格的馬達吧, XDD , 鯨魚有兩百多種PWM規格的馬達任君選擇喔, 都有庫存, 大量供貨中)
以下就來說明如何使用PWM的流程 :
1. 須要先到官網抓這個 "RoBoIO 1.61 .NET Warper binary"
2. 解開他的壓縮後有DLL要COPY到VB的專案目錄裡面 : "RoBoIO.dll" "RoBoIO_DotNet.dll" ,"WinIo.dll" 這幾個檔案
3. VB專案中要先加入這個RoBoIO_DotNet.dll 的參考
4. 程式碼視窗裡面最開頭要先引用該命名空間 Imports RoBoIO_DotNet
5. 程式碼部分
'RB100的話輸入參數RB_100,用RB110的話則是RB_110
RoBoIO.roboio_SetRBVer(RoBoIO.RB_100)
'設定SERVO控制方式, 這裡內建支援RoBoIO.RCSERVO_KONDO_KRS786之類的日本製SERVO
RoBoIO.rcservo_SetServo(0, RoBoIO.RCSERVO_SERVO_DEFAULT_NOFB)
' '設定0~23 號接頭裡面, 哪些要變成PWM規格, 沒被設定到的自動變GPIO
If !RoBoIO.rcservo_Initialize(RoBoIO.RCSERVO_USECHANNEL0 ) Then
MsgBox(RoBoIO.roboio_GetErrMsg())
RoBoIO.rcservo_Close()
Exit Sub
End If
RoBoIO.rcservo_EnterPWMMode() '進入PWM Mode
'將週期= 10ms,高態時間 = 1.5ms的PWM訊號連續送50組出去
RoBoIO.rcservo_SendPWMPulses(0, 10000L, 1500L, 50L)
'結束程式
RoBoIO.rcservo_Close()
這樣, 馬達接到PWM0號插座上, 執行這個程式就會看到他把馬達歸零到中點了
再來看要做怎樣的應用都是使用那個 RoBoIO.rcservo_SendPWMPulses指令而已
下一篇:Serial Port的控制