Erik Wilhelm博士,Kyburz瑞士
自动驾驶汽车将在未来的配送业务中发挥关键作用,特别是在室内/室外和街道/人行道的混合运营中。瑞士Kyburz ag是一家成熟的电动运输车辆制造商,它凭借自己品牌的基于其成熟的eTrolley底盘的机器人运输车辆加入了这个竞争激烈的市场。与竞争对手的一个重要区别是,Kyburz强调将功能安全规范应用于其机电系统开发。
此演示说明了Matlab周围内置基于模型的设计的工作流程®,S万博1manbetximulink.®, Stateflow®可以大大加快开发进程。我们将提供各种例子来突出这种方法的好处,重点是与开发安全的自动驾驶系统相关的控制挑战。从模型中自动生成符合安全要求的代码,消除了容易出错的手工转换为手写代码的问题,显著提高了生产率和软件质量。
记录时间:2019年5月22日
很高兴来到这里。非常感谢您为我们提供了一个论坛来描述我们在公司的工作。我想从这里开始。我认为,忽略幻灯片上的车辆是我的疏忽。
这是一个自动驾驶或自动eRod。所以我们从2016年开始销售这些eRod车辆。我们在苏黎世联邦理工学院赞助了一个项目,学生们可以把eRod变成一个自动机器人车辆。
更新一下:我最近刚刚成为Kyburz的研究主管,那么这个职位涉及到什么?我认为这是世界上最伟大的工作之一。我要为未来想出主意和计划。但我也可以自己做这项工作。我使用MATLAB已经有18年了。我教书的时候休息了一会儿。现在我真的很高兴能回到这里。
在我开始讲之前,我想先介绍一下Kyburz。屏幕左上方的车辆对你们中的一些人来说可能有点熟悉,尤其是那些住在瑞士的人。在房间里的澳大利亚人看来,左下角的车辆可能有点眼熟。我们刚刚从瑞士卖了1000辆车到澳大利亚。基本上,我们的主要产品是最后一英里的电动汽车。s manbetx 845这张地图显示了瑞士各地的车辆分布情况。
公司自1993年以来由Martin Kyburz拥有和经营。我们大约有100人坐在苏黎世以外。和我领先的球队,这是一个很小的团队。所以我们拥有一个超级资源集。当我们经过这些幻灯片时,我想回到那个点,因为我觉得这对我们来到为什么来说是重要的。
为了激发自动系统的问题,我们在Kyburz讨论自动输送系统。我们所有的车辆都专注于物流链的最后一英里或第一英里。这个行业一直在变化。
如此经典,你有一个邮政向许多人提供邮件的帖子,因为这是该系统几个世纪的工作原理。但是,这一商是电子通信的结果,现在正在通过互联网传播多少,一直在下降。所以客户对他们的利润感到一定的痛苦。
因为他们有其他的收入来源,例如,包裹递送,问题是经济上是不一样的。所以在一段特定的时间内,一个人代表另一个人。每次递送2到3分钟,那个人就在为另一个人工作。所以它不能很好地扩展。
业务正在增加。有更多的包裹正在递送。但通过这种方式为我们的客户创造收入并不容易。所以他们一直在寻找新的替代方案。他们一直在寻找某种东西来解决这个问题,机器人就是其中之一。
所以两年前,我们开始了一个计划,看看我们在那里做了什么。这里的挑战是这些机器人必须是各种各样的东西。它们必须更好,更便宜,更快,更可靠,也许甚至可以以某种方式更加个性化,而不是人类递送代理人。所以有很多悖论。这是一个非常具有挑战性的任务。但我希望在这个演示中描述,我们如何选择如何解决它。
所以这些是我们迄今为止的原型。我们构建的第二辆汽车的第一个原型,红色盒子被设计为移动仓库站。所以不确定你是否意识到这一点,但是邮件袋由城市周围的柴油卡车驱动,并为邮政工人辍学,然后收集。在此处的原型,红色原型设计用于取代柴油旅行。所以我们仍然有一个人类伴随着车辆的模型。但是,不再需要驾驶员并提供邮件袋。
第二种原型 - 在幻灯片中看到秤差异在这里,但实际上是一个相当大的车辆。这是2 1/2米长,几乎。装载时重量差不多500公斤。它被卖给了挪威邮政。这是一个与挪威友好流动性的合作伙伴的合作项目。基本上,实际上有的想法是完全取代链中的邮政工。因此,车辆在物流中心装载,它提供了邮件。而且我将展示在演示后发生的一些情况。
这是两种商业模式。从本质上说,我们看了看我们的选项面板,决定专注于我们下一个原型的通用模型。所以这里的概念草图,灰色的飞行器,是一种尚未制造的飞行器。
但本质上,设计使得您可以使用托盘或盒子,其可以包含邮件或更衣盒,或者您想要在该表面上运输的任何东西。所以基本上,它是一种多用途自治交付系统。你会注意到我们在这个阶段没有送给人。所以我认为这是一个重要的区别。
当我说到挑战的时候,这里有三个主要的挑战,我们有兴趣用我们的自主系统来解决。可用性问题,我会详细描述。我在这里提一下。你必须像人类一样擅长递送包裹或邮件。
你必须保证安全,或者更安全,你必须证明这一点。这是一个关键点。当我们在开发这些东西的时候,我们需要能够模拟——这在今天早些时候也提到过——我们需要模拟困难的情况来验证现实世界中的情况。所以你必须想出一些东西,在模拟中,你可以测试来确保你的控制策略是有效的。
让我们关注第一个问题。我想在这里展示一个思想实验。你有这个人。他们每天递送300个包裹。他们有标准工作日和标准工资。
现在我们想看看这个机器人,会出现和交付的邮件,你可以做一些快速的数学在你的头,说,好吧,我需要大约2 1/2机器人来弥补这包裹递送我看超过100000瑞士法郎最初购买成本。它的摊销是多少?也可能是2年,2年半,然后你就可以拿回这笔钱了。
但是关于自治的丑陋秘密呢?那一队人坐在后面的房间里,用摄像机监视着系统,随时准备在接到通知时介入,帮助机器人从它不了解的情况中拯救出来呢?那些人呢?谁支付?
所以我们当我们看着这个小玩具经济问题我认为我只是把数字弄错了,所以我可以给你正确的型号后,展示让我们发现你可以摊销这些系统如果你解开,这基本上意味着人类干预每天一次,但从未经过三每天。所以本质上,你有一个非常严格的要求关于你能在多大程度上干预机器人的操作。
这对我们的设计意味着什么呢?因此,本质上,我们选择做的是将各种传感器技术和计算能力整合到这些平台上,同时理解和认识到我们不应该让人们在任何时候参与进来。当你往下看这个表的列时,你可能会看到总是有一个绿点和一个黄点,这意味着我们总是有一些退路,无论我们是在本地化还是在各种情况下试图避开障碍。
当然,这个表格比我在这里展示的要宽得多。但作为一个例子,我想我应该加入一些背景。像要处理的透明障碍物,或者可爱的、柔软的、模糊的、我们不想越过的障碍物,这些都是我们在设计传感器系统和设计时真正考虑的东西。
这就是目标。我们如何完成这件事?因此,在这种情况下,我们对我们的挑战是提出有效的工作流程,以允许一支非常小的团队完成大型大公司在做什么。我有两个程序员团队。所以有很多工作要做。
本质上,我们从我们的规格开始。所以我们把它们写出来,连接到我们正在使用的基于模型的设计范例中。我们写代码。然后我们生成代码。我们基本上是自动生成PLC代码,然后我们要编译它并把它放到控制器上。这使我们能够达到安全的水平这是我们的控制系统很难达到的。
我不想赘述这一点,因为默罕默德很好地解释了国家流动对你的工作的价值。但我只是想展示一个简单的图表例子,我们实际上用它来测试一些想法。我想把它和。我想我可能做得不像Mohammed在他的演讲第34页中做的那么好,在那张幻灯片中,他比较了标准代码和statflow模型。但这种方法在处理复杂性时更有效。
所以如果我们让所有的传感器都冗余地工作,就会有大量的复杂性需要我们处理。特别是当你在不同情况下用到不同的控制器时,抱歉,这张幻灯片在statflow建模器中被放大了。因为它实际上是我们使用的控制器之一。所以,如果你把这张照片放大,你可以——[笑]。无论如何,这里的想法是,我们可以处理所有的复杂性,以一种对一个小团队来说是可测试和可调试的方式。这对我们用这种方式建模很有帮助。
现在我要转换一下话题谈谈我们的安全方法。所以我们在制造机器,而不是交通工具。这是我想说的重点,因为这意味着我们不必遵守非常严格的功能安全规则。但我们选择自愿这么做。
原因是我们在汽车行业看到的很多最佳实践都是有意义的。在这个阶段这样做是明智的,因为在那个时候,我们知道无论如何我们都处于最先进的水平。所以我想说,Kyburz的一个关键优势是我们有能力让新的车辆概念上路。这是自治系统空间的策略之一。
这是我们为您的V循环的过程,为汽车中的v循环,用于定义我们的规格,然后测试。我会乘坐快速的一刻谈谈这看起来的样子。因此,在单位级别,向下到v的底部,我们将使用工具箱直接测试Simulink中的简单单元测试。万博1manbetx
再上一关,我们有一个很好的方法,将生成的代码导入code Assist,并联合模拟我们生成的测试平台,也是自动的。这是一种一箭双雕的好方法因为我们可以检查代码是否一致以及它是否在模块级别上实现了我们想要的功能。
然后我们再往前一步。我相信在杰森的演讲中提到过,关于旅行者号和ROS。所以我们也使用了ROS,但仅限于Gazebo多物理环境。这很好,因为它与机器人系统工具包很好地结合,然后帮助我们模拟整个系统的行为。我们可以观察传感器的回声。我们可以把噪音引入我们的系统。稍后我会放几段我们在凉亭玩的视频。
不过,我想在这里提到的是,我之前展示的工具链是为了让代码进入我们的车辆而设计的,这些车辆可以通过认证。所以我们当然想使用工具链,这样你就可以通过TUF和其他认证机构的过程获得代码。我有点怀疑你是否能够获得一个完全在ROS中运行的控制器。但在这方面,我可能是错的。
这就是我们在单元级的简单串行通信测试的例子。我们有这个控制器函数块它是从控制器中自动生成的。我们正在检查CRC是否被正确评估,然后从惯性导航系统。如果我们有什么问题,我们基本上就会出问题。
这是我的最后一部分。最后我想留点时间给大家提问。所以我现在要做的是模拟极端情况。我们有这个危险和风险分析,我们对我们的车辆系统进行分析。我们识别各种各样的故障模式,检查它们发生的概率,如果它发生了有多糟糕,以及它有多可控。
在这种情况下,对于自治系统,可控性总是最坏的情况因为理论上,没有人在那里。然后我们来看看其中的一些例子,看看试图过马路的例子。所以,如果我们的车辆是为人行道操作和道路操作而设计的,当我们遇到交通灯时,会发生什么?我们怎么过那条路?
或者在最底部的恶劣天气——当我们用传感器透过雾和雨时,会发生什么?我们怎么可能通过?最后,对机器人来说最困难的挑战是,如果天气很热,你没有手拿冰淇淋,会发生什么?这是我们非常关心的测试案例。我觉得这家伙太热了,想在那里游泳。
我们这里的方法是,将我们的代码,我们在Simulink中的控制器代码,链接到ROS,也就是Gazebo。万博1manbetx右边是我们的一个测试。这是用来评估我们使用激光的回避。正如你所看到的,它可能并没有让它成为一个生产——灾难性的失败,非常饥饿的机器人。但从本质上说,这个工具的真正优点在于,我们可以在非常紧凑的迭代周期内以某种敏捷的方式更改代码,因为我们所做的一切都是基于规范的。但要测试某些想法,这是一个非常有用的方法,节省了我们很多时间。
就这对公司的意义而言,就像其他公司一样,我们有严格的最后期限。这是我们的第一个原型。这是第一次现场直播。我想,如果我们数得清楚的话,我大概有一周的时间来准备整个控制器代码。
所以我认为你在左边看着谁有我们最重要的客户首席执行官。所以她来到我们的设施。我认为我只能及时开发这个系统,因为我正在使用的工具链。所以它真的有效。它是有效的。重要的是,如果你想达到你的截止日期,那么通过这些东西。
我要在这里结束了。我保证会留些时间给大家提问。回到第一点,我们有一个非常复杂的系统要控制。我们正在努力确保一个机器人在三个不同的定位系统中有八个不同的距离传感器,它的行为是一致的,并且具有高可用性。为了做到这一点,我们必须管理一个相对复杂的监督控制器。为了测试和调试,基于模型的设计方法是非常有用的。
我们确实很好地利用了可用的工具箱,以确保我们遵循我们的规范。这些规范的主要关注点之一是文档。所以你必须记录你的规范和测试。采用这种结构化的方法真的很有帮助。
最后,我展示了我们如何能够模拟一些极端情况来确保我们的机器人能够在现实世界中自我表现因为最终,当我们部署时,我应该早些提到的。我们把储物柜模型卖给了挪威邮报作为示范。所以现在它在现实世界中,我们必须确保它确实有效。
到此为止,我想说非常感谢。希望我能把立方体扔到别人身上。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。