# Lua判定使用 ## 1. 如何使用 Lua 判定 ```{admonition} 注意 :class: tip **Lua** > 嵌入式脚本语言 / 月亮之语 Lua是轻量级、高效的脚本语言,广泛应用于嵌入式系统和游戏开发。简洁的语法、动态类型和自动内存管理是其特点,支持面向过程和函数式编程。 ``` ![](images/12_Lua_Decision_Usage/image1.png) ```{admonition} 注意 :class: tip SimOne 自研的判定包括 **停车、停车入库、停车启动、压线、变道、扩展、指令响应、灯光、碰撞、自定义、超时、靠边停车、驶出道路**。 ``` ```{admonition} 注意 :class: tip 相关文档 [ 判定](https://nrwsxho0n9.feishu.cn/wiki/GMVcwHCrDicJX4kBoocc7ZF1nre) [ Lua 判定集](https://nrwsxho0n9.feishu.cn/wiki/EUSqwOi2oi5a81kGhpIcbnE3nLe?from=from_copylink) ``` ### 1.1 **导入 Lua 脚本** 在 **资源管理** 中选择 **判定** 资源模块中的 **Lua 脚本** 文件夹 ,并点击 **导入** 按钮。 ![](images/12_Lua_Decision_Usage/image2.png) ### 1.2 导入 Lua 脚本 在导入 Lua 脚本弹窗中,点击 **浏览** ,选择 Lua 文件的 zip 包(只支持 zip 包上传方式),点击 **打开** Lua 文件的 zip 包,点击 **确定** ,完成 Lua 脚本导入。导入成功后,可以在 **Lua 脚本** 页面,看到已导入的 Lua 文件。 ![](images/12_Lua_Decision_Usage/image3.png) ![](images/12_Lua_Decision_Usage/image4.png) ### 1.3 创建用例 参考 [ 快速上手手册](https://nrwsxho0n9.feishu.cn/wiki/Eh65wMgLQim9VIkGDhQc4ho3n5d?fromScene=spaceOverview#part-TMgqd7gq3o283Ox4s84cJIbOnTc) 新建 **标准用例,选择地图** 和 **配置主车**。 ### 1.4 **配置 Lua** **判定** 点击 **用例资源库** -> **判定** -> **Lua 脚本** ,选择 stop\_sign 脚本,拖拽至视窗,可在右侧窗口,设置是否 **启用** **、判据、消息等级** 信息。 ```{admonition} 注意 :class: tip Lua 判定只支持**全局判定**,且**同一个用例只能配置 1 个启用的 Lua 判定**。 ``` ![](images/12_Lua_Decision_Usage/image5.png) ### 1.5 运行用例 **保存** 并 **运行用例**。在 **任务管理** -> **正在测试** 列表中,选中运行的用例,点击 **视频监控** ,查看用例运行情况。 当变道触发,Observer 将显示消息。同时,数据模块将向Brake发送消息。 ![](images/12_Lua_Decision_Usage/image6.png)