OWERPRO SG90
9G舵機,25CM棕紅橙線 1.重量:9g 2.尺寸:23x12.2x29mm 3.無負載操作速度:0.12秒/60度(4.8V);0.10秒/60度(6.0V) 4.扭矩:1.6kg·cm(4.8V) 5.使用溫度:-30~+60攝氏度 6.死區設定:5微秒 7.工作電壓:3.5V~6V 8.附件:三種功能舵角、固定螺釘,線長 25CM
舵機如圖
4690dc6e0b566aaae783b449d2a0e6ac_004201yj74uk7p35777t5i.jpg (123.1 KB, 下載次數: 66)
下載附件
SG90
2018-1-11 13:52 上傳
這個舵機是模擬舵機,而非數字舵機,這兩者的區別是這樣,數字舵機只要給一個PWM信號即可,這個信號是目的地的位置,舵機會自動旋轉到這個位置,而 模擬舵機需要一直給予目的地的PWM信號。由于舵機需要的PWM信號實際就是一個方波,所以模擬舵機就是需要不斷的重復發一樣的方波,直到舵機旋轉到指定 的位置,并且如果需要鎖定在這個位置,那么還需繼續給予這個方波。
下面是MAPS-K64引腳定義與源程序
- ROOT bool ON_HW_INIT(void)
- {
- /*! you can put your code here */
- IO_CFG(
- {PC1, IO_WORKS_AS_FUNC4},
- {PC2, IO_WORKS_AS_FUNC4},
- {PC3, IO_WORKS_AS_FUNC4},
- {PC4, IO_WORKS_AS_FUNC4},
- {PC8, IO_WORKS_AS_FUNC3},
- {PC9, IO_WORKS_AS_FUNC3},
- {PC10, IO_WORKS_AS_FUNC3},
- {PC11, IO_WORKS_AS_FUNC3},
- {PD0, IO_WORKS_AS_FUNC4},
- {PD1, IO_WORKS_AS_FUNC4},
- {PD2, IO_WORKS_AS_FUNC4},
- {PD3, IO_WORKS_AS_FUNC4},
- {PD4, IO_WORKS_AS_FUNC4},
- {PD5, IO_WORKS_AS_FUNC4},
- {PB18, IO_WORKS_AS_FUNC3},
- {PB19, IO_WORKS_AS_FUNC3},
- {PA1, IO_WORKS_AS_FUNC3},
- {PA2, IO_WORKS_AS_FUNC3},
- );
- return true;
- }
復制代碼
依次對舵機進行設置參數
- static void joints_calibration(joint_t *ptJoints)
- {
- if (NULL == ptJoints) {
- return ;
- }
- JOINT_CFG(
- ptJoints[LEFT_BACK_LEG_2], // 內部舵機
- LEFT_BACK_LEG_2,
- 335, //!< offset
- 42, //!< start angle
- 140, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 980, //!< K
- );
- JOINT_CFG(
- ptJoints[LEFT_MIDDLE_LEG_2],
- LEFT_MIDDLE_LEG_2,
- 310, //!< offset
- 42, //!< start angle
- 140, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 1060, //!< K
- );
- JOINT_CFG(
- ptJoints[LEFT_FRONT_LEG_2],
- LEFT_FRONT_LEG_2,
- 353, //!< offset
- 42, //!< start angle
- 140, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 980, //!< K
- );
- JOINT_CFG( //
- ptJoints[RIGHT_BACK_LEG_2],
- RIGHT_BACK_LEG_2,
- 305, //!< offset
- 50, //!< start angle
- 150, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 880, //!< K
- );
- JOINT_CFG(
- ptJoints[RIGHT_MIDDLE_LEG_2],
- RIGHT_MIDDLE_LEG_2,
- 304, //!< offset
- 40, //!< start angle
- 160, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 860, //!< K
- );
- JOINT_CFG(
- ptJoints[RIGHT_FRONT_LEG_2],
- RIGHT_FRONT_LEG_2,
- 334, //!< offset
- 51, //!< start angle
- 160, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 840, //!< K
- );
- JOINT_CFG(
- ptJoints[RIGHT_BACK_LEG_1], // 連接關節
- RIGHT_BACK_LEG_1,
- 350, //!< offset
- 90, //!< start angle
- 180, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 900, //!< K
- );
- JOINT_CFG( // GG
- ptJoints[RIGHT_MIDDLE_LEG_1],
- RIGHT_MIDDLE_LEG_1,
- 350, //!< offset
- 90, //!< start angle
- 180, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 950, //!< K
- );
- JOINT_CFG(
- ptJoints[RIGHT_FRONT_LEG_1],
- RIGHT_FRONT_LEG_1,
- 355, //!< offset
- 90, //!< start angle
- 180, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 950, //!< K
- );
- JOINT_CFG(
- ptJoints[RIGHT_BACK_LEG_0],
- RIGHT_BACK_LEG_0,
- 350, //!< offset
- 30, //!< start angle
- 140, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 950, //!< K
- );
- JOINT_CFG(
- ptJoints[RIGHT_MIDDLE_LEG_0],
- RIGHT_MIDDLE_LEG_0,
- 350, //!< offset
- 55, //!< start angle
- 145, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 850, //!< K
- );
- JOINT_CFG(
- ptJoints[RIGHT_FRONT_LEG_0],
- RIGHT_FRONT_LEG_0,
- 355, //!< offset
- 50, //!< start angle
- 140, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 810, //!< K
- );
- JOINT_CFG( //外腳
- ptJoints[LEFT_FRONT_LEG_0],
- LEFT_FRONT_LEG_0,
- 368, //!< offset
- 40, //!< start angle
- 140, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 890, //!< K
- );
- JOINT_CFG(
- ptJoints[LEFT_MIDDLE_LEG_0],
- LEFT_MIDDLE_LEG_0,
- 350, //!< offset
- 55, //!< start angle
- 140, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 920, //!< K
- );
- JOINT_CFG(
- ptJoints[LEFT_BACK_LEG_0],
- LEFT_BACK_LEG_0,
- 352, //!< offset
- 50, //!< start angle
- 148, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 1130, //!< K
- );
- JOINT_CFG(
- ptJoints[LEFT_BACK_LEG_1],
- LEFT_BACK_LEG_1,
- 80, //!< offset
- 5, //!< start angle
- 130, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 900, //!< K
- );
- JOINT_CFG(
- ptJoints[LEFT_MIDDLE_LEG_1],
- LEFT_MIDDLE_LEG_1,
- 50, //!< offset
- 2, //!< start angle
- 115, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 1000, //!< K
- );
- JOINT_CFG(
- ptJoints[LEFT_FRONT_LEG_1],
- LEFT_FRONT_LEG_1,
- 80, //!< offset
- 5, //!< start angle
- 135, //!< end angle
- 9, //!< Max Angular Speed
- 90, //!< Reset Position
- 850, //!< K
- );
- }
復制代碼
注釋解釋的也挺清楚的
最近在做一個六足蜘蛛機器人的項目用的就是這種舵機,說實話真的挺難調的
|