精华内容
下载资源
问答
  • 四自由度机械臂

    2018-01-28 20:10:18
    arduino 四自由度机械臂,实测可行。电机选用99舵机就可以
  • 四自由度机械臂抓+轨迹规划
  • 为进一步研究四自由度机械臂网络化远程控制系统,以四自由度机械臂为控制对象,用Visual C++6.0设计基于UDP协议、Client Server模式的远程控制程序.通过编写网络客户端和服务器端程序,构建四自由度机械臂网络化...
  • 四自由度机械臂(末端带机械手抓).rar——solidworks-此为货物搬运机器人
  • 51单片机四自由度机械臂,PWM的占空比可改,这里采用的是0-1.5ms/20ms的占空比。
  • 基于LabVIEW的四自由度机械臂运动控制系统设计pdf,基于LabVIEW的四自由度机械臂运动控制系统设计:方案采用NI 公司的 LabVIEW8.2作为开发平台,通过 NI PCI-7344 四轴运动控制卡和多功能数据采集卡来实现对于机械臂...
  • 针对轨迹规划在SCARA型机械臂高效稳定运行中所起的重要作用,以四自由度机械臂为控制对象对轨迹规划算法研究,通过在笛卡尔坐标空间中进行直线插补和圆弧插补对机械臂进行轨迹规划,仿真结果表明,运用轨迹规划可以...
  • 四自由度机械臂matlab建模与仿真

    千次阅读 2019-10-23 22:03:56
    四自由度机械臂matlab建模与仿真 建模过程使用机器人工具箱Robotics Toolbox 机械臂有四个旋转自由度,模型近似如下,使用ADAMS建模 首先建立DH参数 matlab代码如下 clear;clc; L(1)=Link([0 0 0 -pi/2]); L(2)=...

    四自由度机械臂matlab建模与仿真

    建模过程使用机器人工具箱Robotics Toolbox

    机械臂有四个旋转自由度,模型近似如下,使用ADAMS建模模型由Adams建立

    首先建立DH参数

    在这里插入图片描述

    matlab代码如下

    clear;clc;
    L(1)=Link([0 0  0 -pi/2]);
    L(2)=Link([0 0 105 0]);
    L(3)=Link([0 0 78 0]);
    L(4)=Link([0 0 105 0]);
    RRR=SerialLink(L,'name','RRR');
    RRR
    q=[0 0 0 0];
    RRR.plot(q)
    RRR.teach(q)
    

    使用teach函数添加GUI功能,即可实现手动调节theta改变末端位置和姿态

    展开全文
  • 这个一个四自由度机械臂逆解析算法程序。通过设置坐标位置可以输出各个舵机的转动角度。
  • 基于arduino UNO控制的四自由度机械手臂物体的抓取

    千次阅读 多人点赞 2019-11-08 17:27:04
    四自由度机械臂 本次代码可以实现的目的: 1末端在一个yoz平面上画一个正方形 2物品的抓取 #include <Servo.h> #define l1 105 //机械臂的参数 #define l2 100 #define l3 105 Servo myservo1, myservo2, ...

    四自由度机械臂

    在这里插入图片描述

    机械臂物体抓取

    本次代码可以实现的目的:

    1末端在一个yoz平面上画一个正方形

    2物品的抓取

    #include <Servo.h>
    #define l1 105  //机械臂的参数
    #define l2 100
    #define l3 105
    Servo myservo1, myservo2, myservo3, myservo4, myservo5, myservo6;
    
    float Speed =25;   //舵机速度
    float theta1 = 90, theta2, theta3, theta4, theta5 = 90, theta6 = 90;
    float y = 150, z = 300, theta = 90, alpha = 0;
    /**************************************************************************
      函数功能:数学模型
      入口参数:末端执行器位姿态
      返回  值:无
    **************************************************************************/
    void Kinematic_Analysis(float y, float z, float theta, float Alpha)       //Alpha=[0,180]
    {
      float m, n, k, a, b, c;
      m = y - l3 * cos(Alpha); //中间变量
      n = z - l3 * sin(Alpha) - 108; //中间变量
    
      k = (l1 * l1 + m * m + n * n - l2 * l2) / 2 / l1;
      a = m * m + n * n;
      b = -2 * k * m;
      c = k * k - n * n;
      if ((b * b - 4 * a * c) >= 0)
      {
        theta2 = (-b - sqrt(b * b - 4 * a * c)) / 2 / a;
        theta2 = asin(theta2) * 180 / PI;
      }
    
      k = (l2 * l2 + m * m + n * n - l1 * l1) / 2 / l2;
      a = m * m + n * n;
      b = -2 * k * m;
      c = k * k - n * n;
      if ((b * b - 4 * a * c) >= 0)
      {
        theta3 = (-b + sqrt(b * b - 4 * a * c)) / 2 / a;
        theta3 = asin(theta3) * 180 / PI;
      }
      
      theta3 = theta3 - theta2;
      theta2 = 90 - theta2 - 3;    //3du error
      theta3 = 90 - theta3;
      theta4 = 180 - theta2 - theta3 + Alpha;
      theta1 = theta;
      
      if (theta1 > 180)
        theta1 = 180;
      if (theta2 > 180)
        theta2 = 180;
      if (theta3 > 180)
        theta3 = 180;
      if (theta4 > 180)
        theta4 = 180;
      if (theta5 > 180)
        theta5 = 180;
      if (theta6 > 180)
        theta6 = 180;
      if (theta1 < 0)
        theta1 = 0;
      if (theta2 < 0)
        theta2 = 0;
      if (theta3 < 0)
        theta3 = 0;
      if (theta4 < 0)
        theta4 = 0;
      if (theta5 < 0)
        theta5 = 0;
      if (theta6 < 0)
        theta6 = 0;
    
    }
    
    /******************************************************
      开始转动,每个舵机同时到达指定地点
    *******************************************************/
    void go()
    { 
      float a,b,c,d,e,f;
      a = myservo1.read();
      b = myservo2.read();
      c = myservo3.read();
      d = myservo4.read();
      e = myservo5.read();
      f = myservo6.read();
      unsigned long starttime;
      starttime = millis();
      while ((millis() - starttime) < 4000)           //类似于P控制
      {
       a=a-(a-theta1)/20.00;
       myservo1.write(a);
       b=b-(b-theta2)/20.00;
       myservo2.write(b);
       c=c-(c-theta3)/20.00;
       myservo3.write(c);
       d=d-(d-theta4)/20.00;
       myservo4.write(d);
       e=e-(e-theta5)/20.00;
       myservo5.write(e);
       f=f-(f-theta6)/20.00;
       myservo6.write(f);
       delay(50 - Speed);
      }
    }
    /******************************************************
      setup初始化
    *******************************************************/
    
    void setup()   {
      myservo1.attach(10, 500, 2500);           //初始化各个舵机
      myservo2.attach(9);
      myservo3.attach(8);
      myservo4.attach(7);
      myservo5.attach(6);
      myservo6.attach(5, 500, 2500);
      myservo1.write(theta);
      myservo2.write(theta - 3);
      myservo3.write(theta);
      myservo4.write(theta);
      myservo5.write(theta);
      myservo6.write(theta);
      delay(3000);
      Serial.begin(9600);
    }
    
    /******************************************************
     沿正方形轨迹运动
    *******************************************************/
    void loop() {
      Kinematic_Analysis(y, z, theta, alpha)go();
      Kinematic_Analysis(y-50, z,theta, alpha);
      go();
      Kinematic_Analysis(y-50, z-50, theta,alpha);
      go();
      Kinematic_Analysis(y, z-50 ,theta, alpha);
      go();
      
    }
    
    
    /******************************************************
      抓取物品
    *******************************************************/
    //void loop()   {
    //
    //  Kinematic_Analysis(125, 100, 90, -90);theta5=50;
    //  go();theta5=100;go();
    //  Kinematic_Analysis(150, 300,90, 0);
    //  go();
    //  Kinematic_Analysis(150, 300, 0,0);
    //  go();
    //  Kinematic_Analysis(120, 80 ,0, -90);
    //  go();theta5=50;go();
    //
    //}
    
    展开全文
  • 研究了三连杆平面欠驱动机械臂的轨迹跟踪问题. 机械臂的第 3个关节为 被动关节 ,施加在自由运动连杆上的动力学约束是二阶非完整的. 通过全局输入和坐标变换 ,系统的动力学方程被变换成高阶链式形式.
  • stm32开发:一种四自由度机械臂的简单算法

    千次阅读 多人点赞 2019-11-19 10:54:02
    最近在做一个四自由度机械臂,要实现的功能是,通过输入XYZ三轴的坐标值,让机械臂自动导航到坐标位置。 原理一句话可以概括:输入三个坐标值,通过计算得到底部步进电机的旋转角度和剩余三个舵机的旋转角度。 !...
    	最近在做一个四自由度的机械臂,要实现的功能是,通过输入XYZ三轴的坐标值,让机械臂自动导航到坐标位置。
    	原理一句话可以概括:输入三个坐标值,通过计算得到底部步进电机的旋转角度和剩余三个舵机的旋转角度。
    	![我使用的四轴的机械臂](https://img-blog.csdnimg.cn/20191119105355277.jpg?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5NTI1NjA2,size_16,color_FFFFFF,t_70)
    
    底座是步进电机,往上依次是三个舵机,用的是180度的舵机,因此有一些限制,到底有什么限制自己想象。每个舵机连接一个连杆,从下到上依次称为舵机5 ,4 ,3 ,由它们控制的杆称为L1,L2,L3。从图片可以看出来,三个舵机是完全在一个竖直平面上的,这个平面与底座平面垂直,那么就以底座平面为基准,建立X ,Y轴,    Z轴就垂直于底座向上。  
    现在可以思考一下如何导航到空间中的任何一个点?空间中任何一个点都可以用两个角度表示,一个叫**横偏角**,另外一个叫**俯仰角**,任何三维坐标都可以用这两个角表示。
    想象一下,第一步,底座步进电机可以让三舵机机械臂平面旋转任意角度,这个角度就是上面说的横偏角,第二步,三舵机的三杆通过运动可以让机械臂头部到达它们所在平面的任何一个位置(力所能及的位置,不对 ,是臂所能及!),这个目标位置与XOY平面的夹角就是上面说的俯仰角,那么就达到了目的,现在空间中整个球体的任何位置都可以通过  1 底座步进电机旋转 一个横偏角度 2 三杆运动之后一个头部与XOY平面俯仰角。道理就是这么个道理。
    现在,已知条件是:目标点的X,Y,Z值,还有机械臂L1, L2, L3,的长度,通过上面的分析知道,第一步要做的就是让步进电机转过一个横偏角,计算这个横偏角很简单,这个角就是:目标点在XOY平面上的投影点与X轴的夹角对吧,现在这个变量名为
    target_angle.Last_AngleStep  
    

    (我定义了一个结构体,里面包含最终计算出来的三舵机角度以及步进电机横偏角)
    那么
    target_angle.Last_AngleStep =atan(Y/X)180/3.141593;
    X, Y就是你输入的目标点的XY坐标
    因为math.h库里面的三角函数输出的是弧度值,所以要180/3.141593转换成角度
    第一步,我们已经转到了目标点所在的竖直平面。
    接下来第二步,我们所有的计算都是基于接下来的这个竖直平面了,所以我们可以在这个竖直平面再建立一个平面坐标系,坐标系的横轴X2就是竖直平面与原空间坐标系XOY平面的交线,坐标系的纵轴Z2就是原空间坐标系的Z轴,我们称它为第二坐标系,现在我们要在第二坐标系中找到我们的目标点Target(X2,Z2)
    Z2不用计算,就是输入的原空间坐标系Z坐标
    X2怎么办?X2不就等于X
    X+YY然后再开方吗?就是个直角三角形
    X2=sqrt(pow(X,2)+pow(Y,2));
    现在,第二坐标系中目标点的横纵坐标也已经确定了,接下来的问题就是,如何规划三杆的角度,让它们合理的到达点(X2,Z2)呢?如图
    如图 我们如果要到达正方体的B点,那么 横偏角就是0度了,X2=X;Z2=Z;
    从o点开始从下往上,依次是L1,L2,L3,现在把这个平面拿出来如下图所示
    在这里插入图片描述
    可以看出来,俯仰角就是图中的角1,有人肯定有疑问,为什么不让L1直接指向B点呢,那样不就少了个角2吗?岂不是计算更方便?为什么要多此一举,多出来个角2呢?当然可以直接指向B点,但是如果L1直接指向B点的话,L2与L3就会挤得特别近,如果舵机是不太好的舵机,那么你计算出来的舵机角度,实际上舵机是无法到达那样的一个角度,在图中这种情况是可以直接指向B点的,但是如果B点的位置离O点特别近呢?如果L5<L1,这时候就必须用到角2了,那么,问题又来了,角2的大小是如何确定的?或者说角2的范围怎么确定?
    目标点B的位置是不变的,O点位置是不变的,现在让L1从角1开始逆时针旋转,一直旋转,直到L2,L3被拉直成一条杆,此时,就是角2的最大角度,现在来计算角2的最大值:
    杆L1,杆(L2+L3),OB的长度L5在此时组成一个三角形,L1,L2,L3,L5长度都是已知的,
    通过余弦定理直接计算出角2的最大值就可以了
    cos(x)=(a
    a+bb-cc)/(2ab);
    a, b是角x的临边,c是对边
    上面是余弦定理,贴心不??这么难的公式都给你们贴了出来哈哈哈哈哈哈哈
    就这个高中用了三年的公式我还真给忘得一干二净,每次用都要上网搜一哈。。。
    通过x=acos((aa+bb-cc)/(2a*b))就可以计算出x的值
    同样要注意,acos函数输出的仍然是弧度值,要换算单位的。
    此时角2的最大值已经计算完成,那么具体角2要偏移多少就根据你的实际情况而定了,我是偏移了(角2)/2的大小。
    既然角2已经确定下来,那么L4的大小如何计算?同样是余弦定理,已知L1,L5和角2,求对边L4也很容易,此时整个机械臂骨架已经是确定的了,要求L2相对L1的偏移角度(舵机4角度)以及L3相对L2的偏移角度(舵机3角度)也是容易的事
    ,同样都是用余弦定理。
    `/
    *************************************
    函数功能:输入一个空间坐标,将机械臂头部自动导航到坐标处(由于舵机是180度舵机,因此存在盲区)
    ****************************/
    double x2=0,z2=0; //第二坐标系的坐标值
    float Angle_TargetToX2=0;
    float Length_4_1=0;
    float L1=10,L2=10,L3=14;
    void Machine_AutoNavigation(float x,float y,float z)
    {
    float Max_OffsetAngleOf_DuoJi5_To_Aim=0;//舵机5的杆与X2轴的角度 偏移值
    float Length_DuoJi5ToAim=0;//舵机5到目标点的距离
    //判断xyz的有效性
    if(pow(L1+L2+L3,2)<pow(x,2)+pow(y,2)+pow(z,2))//超出范围直接退出
    return;
    //由第一坐标系的点计算得到第二坐标系的点
    x2=sqrt(x
    x+y
    y);
    z2=z;
    Length_DuoJi5ToAim=sqrt(z2
    z2+x
    x+y
    y);
    if((L2+L3-L1)<Length_DuoJi5ToAim)//两边之差要小于第三边
    Max_OffsetAngleOf_DuoJi5_To_Aim=180/3.141593
    acos((L1
    L1+Length_DuoJi5ToAim
    Length_DuoJi5ToAim-(L2+L3)
    (L2+L3))/(2
    L1
    Length_DuoJi5ToAim));
    else
    Max_OffsetAngleOf_DuoJi5_To_Aim=180;
    //求步进电机需要转动的角度
    if(x==0)
    {
    if(y>0)
    target_angle.Last_AngleStep=90;
    else if(y<0)
    target_angle.Last_AngleStep=-90;
    }
    else
    {
    target_angle.Last_AngleStep=atan(y/x)*180/3.141593;
    if(x<0)
    target_angle.Last_AngleStep+=180;
    }
    //求目标点到x2轴的角度
    Angle_TargetToX2=atan(z2/x2)*180/3.141593;
    //求舵机5的目标角度
    target_angle.duoji5=180-(Angle_TargetToX2+Max_OffsetAngleOf_DuoJi5_To_Aim/2);

    //求舵机4与舵机1之间的长度
    Length_4_1=sqrt( sqrt(x2*x2+z2*z2) * sqrt(x2*x2+z2*z2)+L1*L1- cos(Max_OffsetAngleOf_DuoJi5_To_Aim/2*3.141592/180) *2*L1*sqrt(x2*x2+z2*z2) );
    //求舵机4的目标角度
    target_angle.duoji4=(180-90-Max_OffsetAngleOf_DuoJi5_To_Aim/2-180/3.141592*acos( ( Length_4_1*Length_4_1+ sqrt(x2*x2+z2*z2) * sqrt(x2*x2+z2*z2)-L1*L1 )/(2*sqrt(x2*x2+z2*z2)*Length_4_1) ))+180/3.141592*acos((L2*L2+Length_4_1*Length_4_1-L3*L3)/(2*L2*Length_4_1));
    //求舵机3的角度
    target_angle.duoji3=180/3.141592*acos((L2*L2+L3*L3-(Length_4_1*Length_4_1))/(2*L2*L3))-25;
    //if()
    //DuoJi_Angle_Control(5,Angle_DuoJi5);
    //DuoJi_Angle_Control(4,Angle_DuoJi4);
    //DuoJi_Angle_Control(3,Angle_DuoJi3);
    

    }`
    以上就是我的代码,看不看的懂都没关系,因为写的乱的很,你肯定看不懂,但上面已经讲的很明白了,自己动手写一个是没有问题的。

    展开全文
  • 本文是针对MATLAB中的robot工具箱对四自由度机械臂和六自由度机械臂进行仿真,对这两个机械臂进行建模,D-H参数设置,进行了机械臂正逆运动学验证,最后给定空间中一点,将两机械臂进行轨迹规划,是其均运动到该点,...
  • 关节是机械臂的核心部件,在机械臂动力学中起着重要的作用,精确的关节动力学模型...以四自由度机械臂为研究对象,首先给出柔性关节机械臂的简化模型,然后运用La- grange方法建立了考虑关节柔性和电气特性动力学方程.
  • 针对本文所研制的走 自 由度机械臂 , 设计 一种基于 CAN 总线通讯 的控 制系 统 。 通   过 D enav i t-Har tenber g 参数法构建机械臂的数学模型 , 推导正运动学 公式 , 设计基于牛 ...
  • 足机器人——3自由度机械臂正逆解(肘式+膝式) 项目介绍 最近在做一个

    四足机器人——3自由度机械臂正逆解(肘式+膝式)


    项目介绍

    最近在做一个12自由度四足机器人的项目,每条腿3个自由度。涉及到足端位姿关节逆解的问题,于是进行了简单的推导,并且编写了Matlab仿真程序,有需要的童鞋可以点击下载
    四足机器人腿步有肘式和膝式之分,很好理解,顾名思义。因为想要探索一下前肘后膝四足机器人和双肘式、双膝式的不同,因此推导了两种腿部关节的逆解。为了简单起见,没有用到机器人学复杂的坐标转换,只需要基础的初高中几何知识就可以理解。

    说明:以下推导x,y,z值取正方向为正值,反方向为负值;角度值逆时针为正值,顺时针为负值。
    O、A、B、C 表示点,a、b、c、l 表示边长,q1、q2、q3表示角度。

    肘式

     肘式
    正解推导(已知关节角度求坐标)
    Ax=0Ax=0Ay=asin(q3)Ay = a*sin(q3)Az=acos(q3)Az = -a*cos(q3)
    Bx=bsin(q2)Bx = -b*sin(-q2)By=[bcos(q2)+a]sin(q3)By=[b*cos(-q2)+a]*sin(q3)Bz=[bcos(q2)+a]cos(q3)Bz=-[b*cos(-q2)+a]*cos(q3)
    Cx=bsin(q2)+ccos(q2q1)Cx=-b*sin(-q2)+c*cos(-q2-q1)Cy=[bcos(q2)+a+csin(q2q1)]sin(q3)Cy=[b*cos(-q2)+a+c*sin(-q2-q1)]*sin(q3)Cz=[bcos(q2)+a+csin(q2q1)]cos(q3)Cz=-[b*cos(-q2)+a+c*sin(-q2-q1)]*cos(q3)
    逆解推导(已知坐标求关节角度)
    q3=arctan(y/z)q3=arctan(-y/z)l=(x2+(yasin(q3))2+(z+acos(q3))2)l=\sqrt{(x^2+(y-a*sin(q3))^2+(z+a*cos(q3))^2)}q2=arccos((b2+l2c2)/(2bl))+arcsin(x/l)q2=-arccos((b^2+l^2-c^2)/(2*b*l))+arcsin(x/l)q1=pi/2arccos((b2+c2l2)/(2bc))q1=pi/2-arccos((b^2+c^2-l^2)/(2*b*c))

    膝式

    膝式
    正解推导(已知关节角度求坐标)
    Ax=0Ax=0Ay=asin(q3)Ay = a*sin(q3)Az=acos(q3)Az = -a*cos(q3)
    Bx=bsin(q2)Bx = b*sin(q2)By=[bcos(q2)+a]sin(q3)By=[b*cos(q2)+a]*sin(q3)Bz=[bcos(q2)+a]cos(q3)Bz=-[b*cos(q2)+a]*cos(q3)
    Cx=bsin(q2)ccos(q2+q1)Cx=b*sin(q2)-c*cos(q2+q1)Cy=[bcos(q2)+a+csin(q2+q1)]sin(q3)Cy=[b*cos(q2)+a+c*sin(q2+q1)]*sin(q3)Cz=[bcos(q2)+a+csin(q2+q1)]cos(q3)Cz=-[b*cos(q2)+a+c*sin(q2+q1)]*cos(q3)
    逆解推导(已知坐标求关节角度)
    q3=arctan(y/z)q3=arctan(-y/z)l=(x2+(yasin(q3))2+(z+acos(q3))2)l=\sqrt{(x^2+(y-a*sin(q3))^2+(z+a*cos(q3))^2)}q2=arccos((b2+l2c2)/(2bl))arcsin(x/l)q2=arccos((b^2+l^2-c^2)/(2*b*l))-arcsin(-x/l)q1=arccos((b2+c2l2)/(2bc))pi/2q1=arccos((b^2+c^2-l^2)/(2*b*c))-pi/2

    展开全文
  • 最后,根据六自由度机械臂的构型,基于 MFC 框架类和 Open GL 图形库, 在 VC++6.0 开发平台上专门开发了一套适用于这种构型的三维仿真工具。仿真 工具把运动学和轨迹规划算法融入了其中,有效地验证了机械臂...
  • 最近在做一个12自由度四足机器人的项目,每条腿3个自由度。涉及到足端位姿关节逆解的问题,于是进行了简单的推导,并且编写了Matlab仿真程序,有需要的童鞋可以点击下载。 足机器人腿步有肘式和膝式之分,很好理解...
  • 试着推导并实现四自由机械臂的运动方程,在此处使用拉格朗日法进行。系统机构图如下: 注:第一个关节是圆柱转盘,其他关节绕枢轴点转动。其中Tm为关节驱动力矩,由电机提供;b*theta_d为粘性阻尼扭矩。 1、系统...
  • 自由度机械臂SolidWorks模型转换为URDF模型一、工具下载1.1 下载SolidWorks1.2 下载URDF插件二、建立机械臂坐标系2.1 概要2.2 建立坐标系三、转换URDF文件3.1 加载URDF插件3.2 配置机械臂参数3.3 修改各连杆颜色...
  • 自由度水下机械臂系统设计及试验,研究生论文,针对水下机器人(ROV)应用于水下工作的要求,设计了一款在水深300M以下工作的关节机 械手臂。为了保证机械手臂可靠性,在对ROV的机械手臂在水下进行实际测试之前,...
  • 1. 机械臂系统主要包括机械、硬件和软件、算法个部分,到具体设计需要考虑结构设计、控制系统设计、运动学分析、动力学分析...3. 机械臂有六个自由度,前三个可以用做确定位置,后三个可用做确定姿态。这六个自由...
  • 利用Mixly图形化编程工具,编写PS2摇杆控制四自由度机械手。通过米思齐控制四轴机械臂舵机动作源程序,适合实时控制四轴运动模式的机械手。
  • 自由度机器人手臂,可保持定位在用户的面前。 最常见的用户将是医院环境中的肢瘫痪者和肢瘫痪者。 {图像} 软件系统是用C++编写的,分为八个子系统。 列出了每个这些子系统的依赖关系。 本项目未使用 ROS 等元...
  • 自由度机械臂 simscape 模型以及用于计算的 Matlab 代码。 如何操作。 步骤1。 把所有的文件夹放在Matlab可以到达的地方。 第2步。 转到 _basic_analysis.m 文件运行整个文件。 第三步。 确保时间序列函数完美运行...
  • 机械臂STL打印文件

    2018-11-13 14:56:12
    步进电机控制的四自由度机械臂的3D建模文件,可3D打印。
  • 这是名为深度确定性策略梯度(DDPG)的深度强化学习算法的实现,用于训练4自由度机械臂以达到移动目标。 动作空间是连续的,学习的代理会输出扭矩以使机器人移动到特定的目标位置。 环境 一个包含20个相同代理的,...
  • 四自由度机器人.zip

    2019-09-24 11:08:58
    4自由度机械臂GUI 程序 机器人的正解逆解 并通过matlab gui界面可以实时观测到机器人的运动

空空如也

空空如也

1 2 3 4
收藏数 67
精华内容 26
关键字:

四自由度机械臂