模拟移动机器人控制(一)

原创 2012年03月27日 23:08:16

MATLAB模拟移动机器人控制

程序:

clc;close all;clear;
PI = [3;7;0]%PI = [xi;yi;ci]
PT = [120;81;pi/2]%PT = [xt;yt;ct]
VW = [5;pi/12]%VW = [v;w]
P = PI; %P = [x;y;c]
[xi,yi,ci,xt,yt,ct,x,y,c,v,w] = df(PI,PT,P,VW);
D = ((x-xt).^2+(y-yt).^2).^0.5;
i = 1;
L(:,i) = P;
while (D>v)
    C = atan((yt-y)*(xt-x).^(-1));
    while(c>(C+0.5*w)||c<(C-0.5*w))
        if (c>C)
            n = -1;
        else
            n = 1;
        end
        T = [0 0;0 0;0 n];
        P = P+T*VW;
        [xi,yi,ci,xt,yt,ct,x,y,c,v,w] = df(PI,PT,P,VW);
    end
    i = i+1;
    L(:,i) = P;
    T = [cos(c) 0;sin(c) 0;0 0];
    P = P+T*VW;
    [xi,yi,ci,xt,yt,ct,x,y,c,v,w] = df(PI,PT,P,VW);
    D = ((x-xt).^2+(y-yt).^2).^0.5;
end
while(c>(ct+0.5*w)||c<(ct-0.5*w))
     if (c>ct)
        n = -1;
    else
        n = 1;
    end
    T = [0 0;0 0;0 n];
    P = P+T*VW;
    [xi,yi,ci,xt,yt,ct,x,y,c,v,w] = df(PI,PT,P,VW);
end
i = i+1;
L(:,i) = P
hold
plot(L(1,:),L(2,:),'ro')
plot(L(1,:),L(2,:))    
调用函数df:

function [xi,yi,ci,xt,yt,ct,x,y,c,v,w]=df(PI,PT,P,VW)
xi = PI(1,1);
yi = PI(2,1);
ci = PI(3,1);
xt = PT(1,1);
yt = PT(2,1);
ct = PT(3,1);
x = P(1,1);
y = P(2,1);
c = P(3,1);
v = VW(1,1);
w = VW(2,1);

模拟移动步骤和轨迹:
PI =


     4
     8
     0




PT =


  120.0000
   81.0000
    1.5708




VW =


    5.0000
    0.2618




L =


  Columns 1 through 9


    4.0000    4.0000    8.3301   12.6603   16.9904   21.3205   25.6506   29.9808   34.3109
    8.0000    8.0000   10.5000   13.0000   15.5000   18.0000   20.5000   23.0000   25.5000
         0    0.5236    0.5236    0.5236    0.5236    0.5236    0.5236    0.5236    0.5236


  Columns 10 through 18


   38.6410   42.9711   47.3013   51.6314   55.9615   60.2917   64.6218   68.9519   73.2820
   28.0000   30.5000   33.0000   35.5000   38.0000   40.5000   43.0000   45.5000   48.0000
    0.5236    0.5236    0.5236    0.5236    0.5236    0.5236    0.5236    0.5236    0.5236


  Columns 19 through 27


   77.6122   81.9423   86.2724   90.6025   94.1381   98.4682  102.0037  106.3339  109.8694
   50.5000   53.0000   55.5000   58.0000   61.5355   64.0355   67.5711   70.0711   73.6066
    0.5236    0.5236    0.5236    0.7854    0.5236    0.7854    0.5236    0.7854    0.5236


  Columns 28 through 29


  114.1995  117.7351
   76.1066   79.6421
    0.7854    1.5708


模拟移动机器人控制(三)

MATLAB模拟移动机器人跟踪轨迹的控制 代码: clc,close all;clear X = 1:0.1:10;; P = rand(1,4)*10; Y = P(1,1)*X+P(1,2...
  • nevermoredanny
  • nevermoredanny
  • 2012年03月28日 12:59
  • 818

模拟移动机器人控制(四)

clc;close all;clear hold on axis([0,200,0,200]); [X,Y] = ginput(1); C= pi/2; P= [X,Y,C]; L= 4; V= 4...
  • nevermoredanny
  • nevermoredanny
  • 2012年04月23日 21:31
  • 488

模拟移动机器人控制(二)

MATLAB模拟移动机器人控制  程序: clc;close all;clear; PI = [3;7;0]%PI = [xi;yi;ci] PT = [120;81;pi/2]%PT =...
  • nevermoredanny
  • nevermoredanny
  • 2012年03月27日 23:27
  • 654

模拟移动机器人控制(四)(修改)

解决了大于360°时机器人无限调整角度的问题; clc;close all;clear hold on axis([0,200,0,200]); t= 0.01; [X,Y] = ginput(1...
  • nevermoredanny
  • nevermoredanny
  • 2012年04月24日 15:46
  • 734

模拟移动机器人控制(四)(再次修改)

环境:WIN7;MATLAB2010 加入了模拟光电编码器的计数显示 clc;close all;clear subplot(121);title('模拟机器人坐标'); hold on a...
  • nevermoredanny
  • nevermoredanny
  • 2012年04月24日 23:19
  • 1102

移动机器人控制的基本介绍

前言学习ROS的时候,由于之前对控制的概念、机器人坐标的变换、里程数的计量、马达的运转等完全没有什么概念,感觉像是掉进了一个大坑,于是找了一些相关课程进行学习,本系列博文就是对学习的一个梳理,愿有始有...
  • JityStorm
  • JityStorm
  • 2015年05月12日 20:42
  • 1037

基于fpga+dsp的机器人控制-总纲

实验室的东西又要开始做了,改进之前的东西。 平台:上位机:基于mfc的对话框的界面    dsp:TMS320F28335    FPGA:cycloneIII  EP3C25Q240C8 主要原理如...
  • xzyfeixiang
  • xzyfeixiang
  • 2013年11月22日 10:41
  • 1890

机器人书单与学习资源——控制篇

作者:Yifan Hou,Roboticist 感谢作者授权ExBot转载,知乎原文链接 正如 李淼所说,机器人学科太杂,一个搞导航的Roboticist和一个搞控制的Roboticist...
  • sinat_27554409
  • sinat_27554409
  • 2015年09月14日 21:12
  • 809

ROS 机器人控制APP

最近利用网上各种开源的资源整合出了一个ROS机器人控制APP,如大家有兴趣可以到我的个人网站去下载http://www.diegorobot.com/wp/?page_id=1237&lang=zh,...
  • mwlwlm
  • mwlwlm
  • 2017年06月28日 16:45
  • 862

深度强化学习控制移动机器人

使用深度强化学习控制移动机器人在复杂环境中避障、收集物品到指定点。所用到的算法包括DQN、Deuling-DDQN、A3C、DDPG、NAF。...
  • u013236946
  • u013236946
  • 2017年06月10日 17:47
  • 1398
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:模拟移动机器人控制(一)
举报原因:
原因补充:

(最多只允许输入30个字)