3T基于模型设计开发机器人紧急制动系统

挑战

用最少的硬件测试设计并实现机器人紧急制动系统

解决方案

使用基于模型的设计与Simulink和HDL编码器对控制万博1manbetx器进行建模、验证和实现

结果

  • 洁净室的时间从几周减少到几天
  • 后期需求变更迅速实现
  • 复杂的错误在一天内解决

“使用Sim万博1manbetxulink和HDL编码器,我们消除了编程错误、自动延迟平衡、流水线和其他繁琐且容易出错的任务。因此,我们能够轻松快速地实施客户的更改请求,并缩短上市时间。”

罗纳德·范德米尔,3T

SCARA机器人。


选择性柔顺装配机械臂(SCARA)组件广泛应用于半导体制造业,因为它们擅长在水平面上进行运动,而大多数晶圆搬运运动都发生在水平面上。与任何高速移动的高压机械一样,SCARA机器人如果出现故障,可能会对其自身部件和周围机器造成重大损坏。帮助为了防止这种情况发生,3T的工程师为SCARA机器人设计了一种紧急制动系统。

当项目开始时,3T的团队不知道是否可以设计一个刹车系统,使机器人及时停止,以防止碰撞,而不损害机器人本身。3T工程师使用MATLAB进行基于模型的设计®和仿真软万博1manbetx件®进行可行性研究,确定解决方案,并在FPGA上实现实时制动系统控制器。

3T的系统工程师罗纳德·范德梅尔(Ronald van der Meer)说:“基于模型的设计使我们能够快速尝试不同的控制方法,看看哪些可行,哪些不可行。”。“为了尽量减少在洁净室进行硬件测试和调试,我们在Simulink中通过模拟对解决方案进行了测试和改进,然后在验证后使用HDL编码器生成代码来实现。”万博1manbetx

挑战

3T的客户是荷兰领先的半导体制造设备生产商,对制动系统有严格的要求。为了防止潜在的灾难性碰撞,控制系统必须在不到0.5秒的时间内以毫米级精度停止机器人,而不会对机器人造成损坏。一开始,3T和其客户知道是否有可能设计出满足这些要求的制动系统。

在洁净室进行测试,并使用真实的机器或原型进行测试是昂贵的。此外,在真实硬件上测试制动系统可能会损坏昂贵的设备。因此,3T工程师需要在初始硬件实现之前验证制动设计。他们认识到编写VHDL®手工编写代码,就像他们在以前的项目中所做的那样,将要求他们在项目后期花费太多的时间在无尘室中进行测试和调试。

解决方案

3T使用基于模型的设计,并使用MATLAB、Simulink和HDL编码器™ 设万博1manbetx计并实现SCARA紧急制动系统控制器。

半导体制造公司向3T工程团队提供了在Simulink中创建的机器人的机械模型。万博1manbetx

3T团队用另外两个模型补充了这个机械模型:一个是用Simulink创建的基本控制器模型,另一个是用Simscape Electrical™创建的电子模型。万博1manbetx然后,他们模拟了完整的系统模型,并与客户共享了模型和初始仿真结果。这种交流为客户提供了改进机械模型和对控制器提出改进建议的机会。

3T团队继续改进和完善Simulink中的控制器模型,模拟数十种场景和参数敏感性,直到确认设计的可行性。万博1manbetx

由于大多数fpga最有效地使用控制算法的定点实现,该团队开发了他们的控制器模型的定点表示,使用定点设计器™来指导单词长度和缩放的决策。

然后,该团队使用Simulink中的模型引用,将系统模型中的浮点控制器模型替换为定点版本,并使用仿真验证定点实现。万博1manbetx

他们用HDL编码器从定点控制器模型生成算法VHDL代码。

使用HDL Verifier™,他们将来自FPGA供应商的第三方IP核集成到自己的设计中,并生成了一个测试平台,用于使用Mentor Graphics验证VHDL代码®ModelSim®

在最初的硬件测试之后,该团队对模型进行了改进,运行了额外的模拟以测试修改,并为最终的制动系统重新生成了VHDL代码,该客户目前正在生产中使用该系统。

3T的工程师现在正在使用MINT的基于模型的设计完成类似的项目,该公司的新SoC多接口开发板,用于快速原型和硬件在环测试。

结果

  • 洁净室的时间从几周减少到几天。“在基于模型的设计中,我们在开发的早期验证了许多设计,然后生成了无缺陷的VHDL,”van der Meer说。“因此,我们只需要在洁净室呆几天,而不是几周。刹车系统只需要稍微调整一下,因为我们第一次测试时,刹车系统几乎完全正确。”
  • 后期需求变更迅速实现。van der Meer说:“在最后的测试中,出现了一个限制最大减速的新要求。在Simulink中,我们找到了一种使用脉宽调制来满足这一要求的方法。Simulink和HDL编码器使我们能够在几天内实现一个解决万博1manbetx方案,并防止项目走向失败。”
  • 复杂的错误在一天内解决。“我们遇到了一个令人讨厌的设计逻辑错误,如果不是几个月,很容易就需要几周的时间来识别和修复,”范德米尔说。“我们通过在MATLAB中分析记录的数据,并在Simulink中重放这些数据,快速诊断出这个问题。万博1manbetx我们在模型中实现了一个修复,重新生成了VHDL,并在第二天准备好了一个更新版本。”