在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

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

jf_72402704 ? 來源:jf_72402704 ? 作者:jf_72402704 ? 2023-03-09 08:31 ? 次閱讀

1、功能描述

R308樣機是一款擁有3自由度的串聯(lián)機械臂。本文提供的示例所實現(xiàn)的功能為:在3自由度串聯(lián)機械臂樣機上安裝電磁鐵,實現(xiàn)電磁鐵搬運物品的功能。

poYBAGQJKPqAdzcLAAAbEBLwcfU356.pngpYYBAGQJKPuAZ8UzAJBGK67IDBg778.gif

2、電子硬件

在這個示例中,我們采用了以下硬件,請大家參考:

主控板 Basra(兼容Arduino Uno)
擴展板 Bigfish2.1
舵機 270°伺服電機
電池 7.4V鋰電池
其它 電磁鐵、USB

電路連接說明:

poYBAGQJKPuAGYQ6AAAr4t_Pzd8426.png

注:

① 270°伺服電機連接在Bigfish擴展板D4 . GND . VCC接口

② 270°伺服電機連接在Bigfish擴展板D7 . GND . VCC接口上

③ 270°伺服電機連接在Bigfish擴展板D11 . GND . VCC接口上

電磁鐵連接在Bigfish擴展板D9,D10接口上

3、運動控制

上位機:Controller 1.0

下位機編程環(huán)境:Arduino 1.8.19

3.1初始位置的設定

① 將Controller下位機程序servo_bigfish.ino直接下載到主控板。這段代碼供Controller上位機與主控板通信,并允許調試舵機。代碼如下:

/*------------------------------------------------------------------------------------

  版權說明: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 機器譜 2023-01-31 https://www.robotway.com/

  ------------------------------

/*

* Bigfish擴展板舵機口; 4, 7, 11, 3, 8, 12, 14, 15, 16, 17, 18, 19

* 使用軟件調節(jié)舵機時請拖拽對應序號的控制塊

*/

#include 


#define ANGLE_VALUE_MIN 0

#define ANGLE_VALUE_MAX 180

#define PWM_VALUE_MIN 500

#define PWM_VALUE_MAX 2500


#define SERVO_NUM 12


Servo myServo[SERVO_NUM];


int data_array[2] = {0,0};   //servo_pin: data_array[0], servo_value: data_array[1];

int servo_port[SERVO_NUM] = {4, 7, 11, 3, 8, 12, 14, 15, 16, 17, 18, 19};

int servo_value[SERVO_NUM] = {};


String data = "";


boolean dataComplete = false;


void setup() {

  Serial.begin(9600);

 

}


void loop() {

 

  while(Serial.available())

  {

    int B_flag, P_flag, T_flag;

    data = Serial.readStringUntil('n');

    data.trim();

    for(int i=0;i= ANGLE_VALUE_MIN && where <= ANGLE_VALUE_MAX)

  {

    myServo[which].write(where);

  }

  else if(where >= PWM_VALUE_MIN && where <= PWM_VALUE_MAX)

  {

    myServo[which].writeMicroseconds(where);

  }

}


int pin2index(int _pin){

  int index;

  switch(_pin)

  {

    case 4: index = 0; break;

    case 7: index = 1; break;

    case 11: index = 2; break;

    case 3: index = 3; break;

    case 8: index = 4; break;

    case 12: index = 5; break;

    case 14: index = 6; break;

    case 15: index = 7; break;

    case 16: index = 8; break;

    case 17: index = 9; break;

    case 18: index = 10; break;

    case 19: index = 11; break;

  }

  return index;

}

下載完成后,保持主控板和電腦的USB連接,以便利用上位機進行調試。

② 雙擊打開Controller 1.0b.exe:

pYYBAGQJKPyANDrhAAAI1jsGVhU350.pngpoYBAGQJKPyAAyG8AAA6JmsOvRE424.png

③ 界面左上角選擇:設置-面板設置,彈出需要顯示的調試塊,可通過勾選隱藏不需要調試的舵機塊:聯(lián)機-選擇主控板對應端口號以及波特率。

pYYBAGQJKP2AeJmrAABREoV-NoE619.pngpoYBAGQJKP2ASj4NAABKnjlE9tY290.pngpYYBAGQJKP2AP9R4AAAcnKtX2mY185.pngpoYBAGQJKP6ABtMSAAAgxBCv8_c250.png

④ 拖動進度條,可以觀察相應的舵機角度轉動。寫好對應的舵機調試角度,勾選左下角添加-轉化,獲得舵機調試的數(shù)組:

pYYBAGQJKP6ABVdsAABOaiWanDk476.png

⑤ 將該數(shù)組直接復制到相應的Arduino程序中的get_coordinate()部分進行使用。

3.2調試好角度后將電磁鐵搬運例程(calculate_angle_test.ino)下載到主控板【程序源碼詳見 https://www.robotway.com/h-col-191.html】

/*------------------------------------------------------------------------------------

  版權說明: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 機器譜 2023-01-31 https://www.robotway.com/

  ------------------------------*/

#include 

#include 


#define SERVO_SPEED 3460                                        //定義舵機轉動快慢的時間

#define ACTION_DELAY 200                                        //定義所有舵機每個狀態(tài)時間間隔


#define L1 172

#define L2 160

#define L3 135


Servo myServo[6];


int f = 200;                                                    //定義舵機每個狀態(tài)間轉動的次數(shù),以此來確定每個舵機每次轉動的角度

int servo_port[6] = {4,7,11,3,8,12};                            //定義舵機引腳

int servo_num = sizeof(servo_port) / sizeof(servo_port[0]);     //定義舵機數(shù)量

float value_init[6] = {1500, 1500, 1500, 0, 0, 0};              //定義舵機初始角度


double theta[3] = {};

float value_pwm[6] = {};

float coordinate[3] = {};

int data_num;


boolean dataComplete = false;


void setup() {

  Serial.begin(9600);

  pinMode(9, OUTPUT);

  pinMode(10, OUTPUT);

  for(int i=0;i= 0){

    theta[0] = theta0 * 180 / PI;

  }

  else

  {

    theta[0] = 180 + theta0 * 180 / PI;

  }


  theta[1] = 90 - theta1 * 180 / PI;

  theta[2] = theta2 * 180 / PI;

//   Serial.print("theta0 = ");

//   Serial.println(theta[0]);

//   Serial.print("theta1 = ");

//   Serial.println(theta[1]);

//   Serial.print("theta2 = ");

//   Serial.println(theta[2]);

//   Serial.println("-------------------------------------");


}


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].writeMicroseconds(where);

    }

  }

}


void servo_move(float value0, float value1, float value2, float value3, float value4, float value5)

{

 

  float value_arguments[] = {value0, value1, value2, value3, value4, value5};

  float value_delta[servo_num];

 

  for(int i=0;i


審核編輯黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 機器人
    +關注

    關注

    211

    文章

    28420

    瀏覽量

    207111
  • Arduino
    +關注

    關注

    188

    文章

    6469

    瀏覽量

    187094
  • 機械臂
    +關注

    關注

    12

    文章

    515

    瀏覽量

    24588
收藏 人收藏

    評論

    相關推薦

    RK3568國產(chǎn)實驗箱+人工智能機械:跳舞、疊羅漢、夾方塊、積木搬運案例全解!

    基于語音控制實現(xiàn)機械特定動作的方法。三、實驗原理程序功能通過語音控制機械
    的頭像 發(fā)表于 12-12 19:01 ?267次閱讀
    RK3568國產(chǎn)實驗箱+人工智能<b class='flag-5'>機械</b><b class='flag-5'>臂</b>:跳舞、疊羅漢、夾方塊、積木<b class='flag-5'>搬運</b>案例全解!

    H60.XYZTR5六自由度聯(lián)機

    、生物科技等微納操作領域。 H60.XYZTR5六自由度聯(lián)機構 H60.XYZTR5系列六自由度聯(lián)機構壓電納米定位臺,是X、Y、Z、θx、θy、θz六軸運動定位臺,內置高可靠性壓電
    的頭像 發(fā)表于 11-21 10:33 ?190次閱讀
    H60.XYZTR5六<b class='flag-5'>自由度</b>并<b class='flag-5'>聯(lián)機</b>構

    鐵芯長短與電磁鐵磁力大小的關系

    鐵芯長短與電磁鐵磁力大小的關系是一個重要的電磁學問題,它涉及到電磁鐵的工作原理以及磁場在鐵芯中的分布和增強機制。 一、理論分析 1. 電磁鐵的基本原理
    的頭像 發(fā)表于 08-21 09:35 ?1895次閱讀

    國產(chǎn)Cortex-A55人工智能教學實驗箱_基于Python機械跳舞實驗案例分享

    發(fā)行包管理,它也提供一些工具和庫用于獲取、建立、編寫和執(zhí)行多機融合的程序。 機械通過ROS機器人操控系統(tǒng),簡化了6自由度串行總線舵機復雜運動控制,可實現(xiàn)
    發(fā)表于 06-28 14:37

    干貨!國產(chǎn)Cortex-A55人工智能實驗箱機械積木搬運實驗案例

    的順序疊起來放到中間灰色的方塊上。二、實驗原理機械自由度機械自由度,是指傳送機構機械手的運動
    的頭像 發(fā)表于 06-27 08:32 ?864次閱讀
    干貨!國產(chǎn)Cortex-A55人工智能實驗箱<b class='flag-5'>機械</b><b class='flag-5'>臂</b>積木<b class='flag-5'>搬運</b>實驗案例

    電磁繼電器分為哪兩個電路

    電磁繼電器是一種利用電磁原理實現(xiàn)控制的電器,廣泛應用于自動控制系統(tǒng)和遠程控制系統(tǒng)中。它主要由電磁鐵、觸點系統(tǒng)和機械部件組成。
    的頭像 發(fā)表于 06-21 09:28 ?667次閱讀

    電磁繼電器的原理是什么?為什么要使用電磁繼電器?

    電磁繼電器是一種利用電磁原理實現(xiàn)控制和保護的電器元件。它主要由電磁鐵、觸點系統(tǒng)、彈簧等部分組成。電磁繼電器的工作原理是利用
    的頭像 發(fā)表于 06-21 09:24 ?1934次閱讀

    基于FPGA EtherCAT的六自由度機器人視覺伺服控制設計

    ,在 PS層運行 蘇姆的裸機程序, 并將六自由度串聯(lián)機器人逆解算法移植到主站代碼里,進行機器人末端位置對于視覺反饋的實時跟隨控制。 (4)通過實驗驗證了本設計的對物塊識別的準確性和實時性,并使用自主
    發(fā)表于 05-29 16:17

    Lake Shore 電磁鐵電源 643發(fā)生故障了如何維修

    Lake Shore電磁鐵電源643是一款高性能、高精度的電磁鐵電源設備,能夠滿足各種電磁鐵應用的需求。其高精度控制、快速極性反轉和高可靠性等特點,使其成為物理材料性能表征、磁學實驗等領域的理想選擇
    的頭像 發(fā)表于 05-28 14:05 ?370次閱讀
    Lake Shore <b class='flag-5'>電磁鐵</b>電源 643發(fā)生故障了如何維修

    【科準測控】電磁鐵力特性測試方法和設備介紹!

    最近,我們接到了一位客戶的咨詢,他們希望對電磁鐵進行力-位移測試、力-電流測試以及響應時間測試,以評估其在實際應用中的表現(xiàn)。這種測試不僅可以幫助客戶了解電磁鐵在不同工作條件下的性能表現(xiàn),還能為他們
    的頭像 發(fā)表于 03-20 17:41 ?1044次閱讀
    【科準測控】<b class='flag-5'>電磁鐵</b>力特性測試方法和設備介紹!

    【先楫HPM5361EVK開發(fā)板試用體驗】(原創(chuàng))5.手把手實戰(zhàn)AI機械

    工作。 安全措施:考慮到機械操作,務必實施必要的安全措施,例如限位開關、緊急停止功能等。 框架概述 初始化硬件:首先,您需要初始化開發(fā)板上的硬件資源,包括三組四自由度
    發(fā)表于 02-06 10:28

    電磁鐵磁鐵的區(qū)別 電磁鐵原理是電流的磁效應嗎

    電磁鐵磁鐵是不同的物體,它們在原理、結構和使用方法上都有所不同。 首先,讓我們來了解一下磁鐵磁鐵是一種可以產(chǎn)生磁場的物質,通常是由鐵、鎳、鈷等特定材料制成。根據(jù)其磁性特性的不同,
    的頭像 發(fā)表于 02-03 14:39 ?1947次閱讀

    【國產(chǎn)FPGA+OMAPL138開發(fā)板體驗】(原創(chuàng))2.手把手玩轉游戲機械

    。但由于篇幅限制,下面是一個簡化的項目方案和步驟: (我會盡量逐行解釋關鍵部分的代碼。謝謝!) 1. 硬件連接與配置 首先,需要將TI OMAP-L138 FPGA處理器開發(fā)板、三組四自由度機械以及紅外
    發(fā)表于 02-01 20:18

    無線自由:探索AGV無線充電技術的自由度優(yōu)勢

    隨著技術的不斷進步,電磁場模擬、智能化算法與物聯(lián)網(wǎng)技術的融合和集成,將進一步擴展AGV無線充電的自由度。無線充電不僅僅作為一種供能手段,更成為實現(xiàn)AGV高效、智能化運營的核心部件。這些技術的結合,不僅推動自動引導車在各個行業(yè)中能
    的頭像 發(fā)表于 01-19 11:22 ?558次閱讀

    什么是電磁繼電器?和開關有哪些異同點?

    使觸點閉合或斷開,實現(xiàn)電路的通斷控制。電磁繼電器廣泛應用于電力系統(tǒng)、自動化控制系統(tǒng)、機械設備和工業(yè)生產(chǎn)中。 電磁繼電器和開關在原理和功能上有
    的頭像 發(fā)表于 01-04 15:29 ?1046次閱讀
    主站蜘蛛池模板: 色手机在线| 全部免费a级毛片| 在线免费观看色片| 1024手机免费看| 一级特黄aa大片| 天堂资源在线官网| 人人草人人爽| 国产亚洲婷婷香蕉久久精品| 在线观看色视频网站| 天天干天天爱天天操| 国产精品成人一区二区三区| 亚洲综合在线观看一区www| aⅴ一区二区三区| 午夜看片a福利在线| 欧美+日本+国产+在线观看| 国产成人精品日本亚洲网站 | 激情六月网| 亚色中文字幕| 午夜黄色小视频| 在线视频人人视频www| 日本 韩国 三级 国产 欧美| 午夜伦y4480影院中文字幕| 51精品视频免费国产专区| 午夜情趣视频| 最新大黄网站免费| 国产成人1024精品免费| 国产精品乱码高清在线观看| 日本人爽p大片免费看| 成人国产精品毛片| 狠狠干天天| 亚洲www美色| 三级黄色在线视频| www.四虎影院在线观看| 国产精品午夜寂寞视频| 婷婷色5月| 国产精品资源在线播放| 美女被免网站在线视频| 日本一区二区三区不卡在线视频| 深夜性久久| 97伊人网| 99pao强力打造免费高清色|