1. 功能說明
本文示例將實(shí)現(xiàn)R328a樣機(jī)4自由度并聯(lián)機(jī)器狗下蹲的功能。

2. 結(jié)構(gòu)說明
本樣機(jī)的并聯(lián)驅(qū)動(dòng)結(jié)構(gòu)與 【R082】4自由度并聯(lián)四足 類似,兩款樣機(jī)可以對(duì)比來看。
本樣機(jī)腿部的結(jié)構(gòu)如下圖所示:驅(qū)動(dòng)核心部分是兩個(gè)5桿結(jié)構(gòu)的組合。

驅(qū)動(dòng)核心部分再搭配下圖的四桿結(jié)構(gòu),即可構(gòu)成單側(cè)的腿。驅(qū)動(dòng)核心部分再搭配下圖的四桿結(jié)構(gòu),即可構(gòu)成單側(cè)的腿。



3. 電子硬件
在這個(gè)示例中,我們采用了以下硬件,請(qǐng)大家參考:
主控板 |
|
擴(kuò)展板 |
|
電池 |
7.4V鋰電池 |
電路連接:為了便于識(shí)別控制4自由度并聯(lián)機(jī)器狗,我們先規(guī)定好機(jī)器狗的前方以及舵機(jī)位置編號(hào)(如下圖所示):

將舵機(jī)(A1、A2 、B1、B2)連接在Bigfish擴(kuò)展板的D4、D7、D3、D8端口,如下圖所示:

4. 功能實(shí)現(xiàn)
上位機(jī):Controller 1.0
下位機(jī)編程環(huán)境:Arduino 1.8.19
實(shí)現(xiàn)思路:實(shí)現(xiàn)4自由度并聯(lián)機(jī)器狗站立、前蹲、后蹲的動(dòng)作。
4.1 調(diào)試舵機(jī)角度
利用上位機(jī) Controller軟件調(diào)整4自由度并聯(lián)機(jī)器狗的舵機(jī)角度,記錄下機(jī)器狗站立、前蹲、后蹲時(shí)舵機(jī)的角度;然后利用Arduino IDE進(jìn)行下位機(jī)編程,利用這些角度實(shí)現(xiàn)機(jī)器狗下蹲的功能。
對(duì)于如何利用Controller軟件進(jìn)行調(diào)試機(jī)器狗的舵機(jī)角度,可參考【U002】如何驅(qū)動(dòng)模擬舵機(jī)-Controller 1.0b軟件的使用 在本次實(shí)驗(yàn)中,經(jīng)過調(diào)試,對(duì)于4自由度并聯(lián)機(jī)器狗站立、前蹲、后蹲時(shí)的舵機(jī)角度值如下圖所示:



4.2 示例程序
下面提供一個(gè)4自由度并聯(lián)機(jī)器狗下蹲的參考例程(Dog_squat.ino),例程源代碼詳見 【https://www.robotway.com/h-col-237.html】 ,實(shí)驗(yàn)效果可參考演示視頻。
/*------------------------------------------------------------------------------------
版權(quán)說明:Copyright 2023 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved.
Distributed under MIT license.See file LICENSE for detail or copy at
https://opensource.org/licenses/MIT
by 機(jī)器譜 2023-05-26 https://www.robotway.com/
------------------------------*/
/*
本例程實(shí)現(xiàn)機(jī)器小狗站立、前蹲和后蹲
*/
#include?Servo.h??>
#define SERVO_SPEED 60 //定義舵機(jī)轉(zhuǎn)動(dòng)快慢的時(shí)間
#define ACTION_DELAY 0 //定義所有舵機(jī)每個(gè)狀態(tài)時(shí)間間隔
Servo myServo[4];
int f = 15; //定義舵機(jī)每個(gè)狀態(tài)間轉(zhuǎn)動(dòng)的次數(shù),以此來確定每個(gè)舵機(jī)每次轉(zhuǎn)動(dòng)的角度
int servo_port[4] = {3,4,7,8}; //定義舵機(jī)引腳
int servo_num = sizeof(servo_port) / sizeof(servo_port[0]); //定義舵機(jī)數(shù)量
float value_init[4] = {1513,1457,1074,1545}; //定義舵機(jī)初始角度
void setup() {
Serial.begin(9600);
for(int i=0;i?servo_num;i++){
ServoGo(i,value_init[i]);
}
delay(2000);
}
void loop() {
Dog_squat();
}
void Dog_squat()
{
servo_move(value_init[0],value_init[1],value_init[2],value_init[3]);//直立
servo_move(1243,1703,1278,1299);//向后蹲下
servo_move(value_init[0],value_init[1],value_init[2],value_init[3]);//直立
servo_move(1715,1255,1052,1545);//向前蹲下
servo_move(value_init[0],value_init[1],value_init[2],value_init[3]);//直立
}
void ServoStart(int which)
{
if(!myServo[which].attached())myServo[which].attach(servo_port[which]);
pinMode(servo_port[which], OUTPUT);
}
void ServoStop(int which)
{
myServo[which].detach();
digitalWrite(servo_port[which],LOW);
}
void ServoGo(int which , int where)
{
if(where!=200)
{
if(where==201) ServoStop(which);
else
{
ServoStart(which);
myServo[which].write(where);
}
}
}
void servo_move(float value0, float value1, float value2, float value3) //舵機(jī)轉(zhuǎn)動(dòng)
{
float value_arguments[] = {value0, value1, value2, value3};
float value_delta[servo_num];
for(int i=0;i?servo_num;i++)
{
value_delta[i] = (value_arguments[i] - value_init[i]) / f;
}
for(int i=0;i?f;i++)
{
for(int k=0;k?servo_num;k++)
{
value_init[k] = value_delta[k] == 0 ? value_arguments[k] : value_init[k] + value_delta[k];
}
for(int j=0;j?servo_num;j++)
{
ServoGo(j,value_init[j]);
}
delay(SERVO_SPEED);
}
delay(ACTION_DELAY);
}
5. 擴(kuò)展樣機(jī)
本樣機(jī)可以做出一些擴(kuò)展,如下圖所示的在樣機(jī)上方增加平板,此樣機(jī)可用探索者零件或探索者兼容零件制作。

審核編輯黃宇
-
機(jī)器狗
+關(guān)注
關(guān)注
3文章
176瀏覽量
10480
發(fā)布評(píng)論請(qǐng)先 登錄
運(yùn)用BLDC設(shè)計(jì)新型五自由度并聯(lián)機(jī)器人的方案分享
【案例分享】BLDC在新型五自由度并聯(lián)機(jī)器人中的應(yīng)用
反螺旋理論與五自由度并聯(lián)機(jī)器人設(shè)計(jì)方法

并聯(lián)機(jī)器人的少自由度并聯(lián)機(jī)構(gòu)設(shè)計(jì)

一種三自由度冗余驅(qū)動(dòng)混聯(lián)機(jī)器人的設(shè)計(jì)

二自由度冗余驅(qū)動(dòng)并聯(lián)機(jī)器人動(dòng)態(tài)控制

運(yùn)用BLDC對(duì)新型五自由度并聯(lián)機(jī)器人的設(shè)計(jì)

并聯(lián)機(jī)器人市場(chǎng)又情況如何市場(chǎng)活躍度最高的并聯(lián)機(jī)器人企業(yè)TOP5
如何分析新型二自由度平動(dòng)并聯(lián)機(jī)器人的結(jié)構(gòu)和運(yùn)動(dòng)學(xué)

關(guān)于BLDC 的新型五自由度并聯(lián)機(jī)器人運(yùn)動(dòng)控制

4自由度串聯(lián)機(jī)械臂的制作

3自由度串聯(lián)機(jī)械臂實(shí)現(xiàn)電磁鐵搬運(yùn)功能

淺談工業(yè)機(jī)器人自由度
如何制作一個(gè)2自由度并聯(lián)仿生腿?

評(píng)論