自动代客在Simulink金宝app

这个例子说明了如何构建的Simulink的自动代客泊车系统与自动驾驶的工具箱™。金宝app它紧密地遵循自动代客泊车MATLAB®例子。

介绍

自动停车是在一个停车场的左前方一辆车是一个具有挑战性的问题。车辆的自动系统预计将接管并引导车辆到可用的停车位。这个示例集中于通过环境中规划的可行路径,从这个路径产生的轨迹,并使用可行控制器执行的轨迹。地图创建和动态避障被排除在这个例子。

仿真之前,helperSLCreateCostmap函数内的称为PreLoadFcn回调模型的功能。有关使用回调函数的详细信息,请参阅型号回调(金宝appSIMULINK)。该helperSLCreateCostmap函数创建一个包含固定的障碍物,道路标记和停放的汽车信息停车场的静态地图。地图被表示为vehicleCostmap宾语。

要使用vehicleCostmap对象中的Simuli金宝appnk,所述helperSLCreateUtilityStruct功能转换vehicleCostmap到在块的掩模初始化一个结构阵列。有关详细信息,请参阅初始化面膜(金宝appSIMULINK)。

全局路由方案被描述为车道段的序列来遍历到达停车位。仿真之前,PreLoadFcn回调加载模型的路径计划,其被存储为表中的函数。该表指定的段的开始和结束姿势,以及所述片段的性能,如限速。

routePlan = 5×3表StartPose EndPose属性________________ ____________________ ____________ 4 12 0 56 11 0 [1×1结构] 56 11 0 70 19 90 [1×1结构] 70 19 90 70 32 90 [1×1结构] 70 3290 52 38 180 [1×1结构] 53 38 180 36.3 44 90 1×1结构]

本例中的输入和许多块的输出是Simulink的总线(金宝app金宝appSimulink.Bus类)。在里面PreLoadFcn模型的回调函数,该helperSLCreateUtilityBus函数创建这些总线。

规划是一个分层的过程,负责更细粒度的任务,每个连续层。行为层[1]坐在该堆叠的顶部。该行为计划块通过为中间目标和配置触发的基于全局路由方案的导航任务序列运动规划轨迹生成块。每个路径段被使用这些步骤导航:

  1. 运动规划:计划通过环境地图使用最佳的快速随机树(RRT *)算法的可行路径(pathPlannerRRT)。

  2. 轨迹生成:在使用光滑的,以它通过拟合样条[2]参考路径路径平滑样条块。然后转换平滑路径为轨迹,通过使用生成速度曲线速度探查块。

  3. 车辆控制:该HelperPathAnalyzer提供参考信号,用于车辆控制器的子系统,控制转向和车辆的速度。

  4. 目标检查:检查车辆已达到使用段的最终姿态helperGoalChecker

探索子系统

车辆控制器子系统包含横向控制器斯坦利块和纵向控制器斯坦利块以调节姿态和车辆的速度,分别。为了处理现实的车辆动力学[3],所述汽车模型在横向控制器斯坦利块参数被设置为动态自行车模型。根据该结构,附加的输入,例如作为路径曲率,车辆的当前横摆率,和当前转向角是必需的,以计算转向命令。纵向控制器斯坦利块使用切换比例积分控制器,以计算加速度,并且致动所述制动器和车辆油门的减速命令。

为了证明性能,车辆控制器被施加到车辆模型块,它包含一个简化的转向系统[3]被建模为一阶系统和一个车身三自由度块自动驾驶工具箱™和车辆动态模块库™之间共享。与在所使用的运动学自行车模型相比自动代客泊车MATLAB®例如,该车辆模型块是更精确,因为它考虑了惯性效果,如轮胎打滑和转向致动伺服。

仿真结果

可视化块示出了车辆如何跟踪参考路径。它还显示车辆速度和转向指令在一个范围内。以下图片是本例中,模拟的结果:

仿真停止在约45秒,也就是当车辆到达目的地。

结论

这个例子说明如何实现在Simulink的自动代客。金宝app

参考

[1]标乐,马丁,卡尔·格尼马,和桑吉夫辛格。DARPA的城市挑战:自主车在城市交通(第1版)。施普林格出版公司,股份有限公司,2009年。

[2] Lepetic,马尔科,格雷戈尔Klancar,伊戈尔Skrjanc,德拉戈Matko和波斯蒂安波托奇尼克,“时间最优路径规划考虑加速度极限。”机器人和自治系统,第45卷,3-4个问题,2003年,页199-210。

[3]霍夫曼加布里埃尔M.,J.克莱尔汤姆林,迈克尔Montemerlo,和塞巴斯蒂安史朗。“自主汽车轨迹跟踪的越野驾驶:控制器设计,实验验证和赛车。”美国控制会议,2007年,第二二九六年至2301年。

也可以看看

对象

相关话题