我也是用S03T2BB,主要是它的扭力夠大以及可支撐負載的雙培林,
一分錢一分貨,可是效果倒是蠻好的,不過有得有失,轉動60度的響應時間較長,
在程式設計上,串列輸出PWM值指令間隔須加上延遲以免伺服機來不及動作,造成
不協調....................................
SSC有兩種電源輸入,要接對,使用手冊上是這麼建議的
一組是給ssc上的PIC控制器用,基本上PIC是CMOS
所以3~18V都可以接,不過用市面上常用的9V電池接入就可以,
另一組電源則是
只要接4.8V~6V給伺服機用即可,
若是廣營的伺服機其3pin的母接頭安排為白-紅-黑,
白色為PWM信號
紅色為4.8V~6V
黑色為接地
這樣設計是為了安全考量,即使反過來插,頂多不動作,不會燒起來,不過還是要確認好SSC的3pin公腳,然後小心的把伺服機的3pin的母接頭接上便可以使用,不要跟自己的$過不去.....
您可以先試試看
若是您用VB寫程式,利用串列埠丟串列訊號給SSC,記得將串列埠的第3腳(TX)接到S(in)的S腳,並且將串列埠的第5腳(GND)接到S(in)的G腳作為參考位準
若是您用單晶片寫程式,則需要將單晶片串列輸出接到MAX232的T1/IN,將串列訊號弄成RS232c的準位,再從MAX232的T1/OUT接到S(in)的S腳,並且將單晶片的GND接到S(in)的G腳作為參考位準
接下來
根據SSC的協定說明,需要三位數字來控制伺服機
第一位255為同步用的(原因在於RS232的結束位元為1,而起始位元為0,若接下來為255=FFH=11111111B,則這一段時間約10ms足夠給SSCII判讀與決定接收下一段指令執行)
第二位設定伺服機號碼,ssc-32的話其號碼為0~31共32個號碼
第三位設定伺服機位置為PWM值,0~255對應到0~90度(或0~180度,視jump如何選擇)
至於最後11H為結束位元,是跳出迴圈用的,
例子:
讓5號伺服機做左右左的轉動則對照表如下
LEFT1:DB 255,5,64, 255,5,190, 255,5,64,11H
其實Allen大大有發展SSC之類的串列伺服機控制器計畫,坦克兵工廠的RC電路論壇也有類似的構想(不過它是用來控制馬達的轉向與速度,基本上理念相同),要是成功(以成本來說,目前流行的ISP(線上下載燒錄)單晶片大概在NT200元以下,發展軟體都是freeware,ISP硬體可以自製,相當便宜,又可以學得一項技能,何樂不為),SSC就不會那麼貴三三,機器人的推廣也能更為普及!!!!
[ Last edited by marbol on 2006-1-3 at 23:01 ] |