Main Content

自行车运动

自行车车辆型号

描述

自行车运动创建一个自行车车辆模型来模拟简化的类似汽车的车辆动力学。该模型代表一个车辆,两个车轴被距离隔开,轴距。这state of the vehicle is defined as a three-element vector, [XyTheta],具有全球xy- 位置,以米为单位,并为车辆标题角度指定,Theta,用弧度指定。前轮可以用转向角转动psi。车辆标题,Theta, is defined at the center of the rear axle. To compute the time derivative states of the model, use the衍生物具有输入命令和当前机器人状态的功能。

创建

描述

例子

KinematicModel= bicycleKinematics创建具有默认属性值的自行车运动模型对象。

KinematicModel= Bicyclekimatics(名称,值)将其他属性设置为指定值。您可以按任何顺序指定多个属性。

特性

展开全部

车轮底座是指以米指定的前车轴和后车轴之间的距离。

车辆速度范围是一个两元素向量,可提供最低和最大车速,[Minspeed Maxspeed],以每秒米为单位指定。

最大转向角,psi,指的是可以将车辆转向右侧或向左的最大角度,以弧度指定。一个值pi/2为车辆提供最小的转弯半径为0。该属性用于验证用户提供的状态输入。

此仅阅读属性返回最小车辆转弯半径为米。最小半径是使用车轮底座和最大转向角度计算的。

车辆印花property specifies the format of the model input commands when using the衍生物功能。这property has two valid options, specified as a string or character vector:

  • "VehicleSpeedSteeringAngle"- 车速和转向角度

  • “车辆peedheadingrate”- 车辆速度和朝向角速度

对象功能

衍生物 车辆状态的时间派生

例子

全部收缩

创建一个机器人

定义机器人并设置初始起始位置和方向。

KinematicModel = Bicyclekilkinematics;初始状态= [0 0 0];

模拟机器人运动

将模拟的时间介入使用0.05 s的时间段,然后将输入命令设置为2 m/s和左转。通过使用ode45solver on the衍生物功能。

tspan = 0:0.05:1;输入= [2 pi/4];%转左[t,y] = ode45(@(t,y)衍生物(kinematicmodel,y,inputs),tspan,initialstate);

Plot path

figure plot(y(:,1),y(:,2))

图包含一个轴对象。轴对象包含一个类型行的对象。

References

[1] Lynch,Kevin M.和Frank C. Park。现代机器人技术:力学,计划和控制1st ed. Cambridge, MA: Cambridge University Press, 2017.

[2] Corke, Peter I.机器人技术,视觉和控制:MATLAB中的基本算法。施普林格,2011年。

扩展功能

C/C ++代码生成
Generate C and C++ code using MATLAB® Coder™.

在R2019b中引入