Update project and configurations
This commit is contained in:
38
intelligent_cabin/config/actions.yml
Normal file
38
intelligent_cabin/config/actions.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
{
|
||||
"actions": [
|
||||
{ "action_id": "action_cs_query_order", "plugin_id": "plugin.order.query", "risk_level": "low" },
|
||||
{ "action_id": "action_cs_query_logistics", "plugin_id": "plugin.logistics.query", "risk_level": "low" },
|
||||
{ "action_id": "action_cs_cancel_order", "plugin_id": "plugin.order.cancel", "risk_level": "medium" },
|
||||
{ "action_id": "action_cs_transfer_human", "plugin_id": "plugin.service.transfer_human", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_nav_cancel", "plugin_id": "plugin.cabin.navigation.cancel", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_nav_to", "plugin_id": "plugin.cabin.navigation", "risk_level": "medium" },
|
||||
{ "action_id": "action_cabin_ac_on", "plugin_id": "plugin.cabin.ac.on", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_ac_off", "plugin_id": "plugin.cabin.ac.off", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_set_ac", "plugin_id": "plugin.cabin.ac_control", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_fan_up", "plugin_id": "plugin.cabin.fan.up", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_fan_down", "plugin_id": "plugin.cabin.fan.down", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_defog_front_on", "plugin_id": "plugin.cabin.defog.front_on", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_defog_rear_on", "plugin_id": "plugin.cabin.defog.rear_on", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_window_open", "plugin_id": "plugin.cabin.window.open", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_window_close", "plugin_id": "plugin.cabin.window.close", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_sunroof_open", "plugin_id": "plugin.cabin.sunroof.open", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_sunroof_close", "plugin_id": "plugin.cabin.sunroof.close", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_lock_doors", "plugin_id": "plugin.cabin.doors.lock", "risk_level": "medium" },
|
||||
{ "action_id": "action_cabin_unlock_doors", "plugin_id": "plugin.cabin.doors.unlock", "risk_level": "medium" },
|
||||
{ "action_id": "action_cabin_play_music", "plugin_id": "plugin.cabin.music_play", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_pause_music", "plugin_id": "plugin.cabin.music.pause", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_next_track", "plugin_id": "plugin.cabin.music.next", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_previous_track", "plugin_id": "plugin.cabin.music.previous", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_volume_up", "plugin_id": "plugin.cabin.volume.up", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_volume_down", "plugin_id": "plugin.cabin.volume.down", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_volume_mute", "plugin_id": "plugin.cabin.volume.mute", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_lights_on", "plugin_id": "plugin.cabin.lights.on", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_lights_off", "plugin_id": "plugin.cabin.lights.off", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_seat_heat_on", "plugin_id": "plugin.cabin.seat_heat.on", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_seat_heat_off", "plugin_id": "plugin.cabin.seat_heat.off", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_mirror_fold", "plugin_id": "plugin.cabin.mirror.fold", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_mirror_unfold", "plugin_id": "plugin.cabin.mirror.unfold", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_wiper_on", "plugin_id": "plugin.cabin.wiper.on", "risk_level": "low" },
|
||||
{ "action_id": "action_cabin_wiper_off", "plugin_id": "plugin.cabin.wiper.off", "risk_level": "low" }
|
||||
]
|
||||
}
|
||||
76
intelligent_cabin/config/context_rewrite.yml
Normal file
76
intelligent_cabin/config/context_rewrite.yml
Normal file
@@ -0,0 +1,76 @@
|
||||
# 本地上下文改写引擎配置
|
||||
# 用于多轮相对调节的短句改写,如 "再快一点" → "速度设为 85 mm/min"
|
||||
# 每个 param_context 对应一类可以相对调节的参数。
|
||||
# 部署到不同设备时,只需修改本文件(或切换 AGENT_CONTEXT_REWRITE_CONFIG_PATH)。
|
||||
|
||||
param_contexts:
|
||||
# ────────────────────────────────────────────────
|
||||
# 加工速度
|
||||
# ────────────────────────────────────────────────
|
||||
- intent_ids:
|
||||
- wirecut_set_speed
|
||||
slot_name: speed
|
||||
unit: "mm/min"
|
||||
step: 5
|
||||
min_value: 1
|
||||
max_value: 9999
|
||||
default_value: 80
|
||||
up_phrases:
|
||||
- 再快一点
|
||||
- 快一点
|
||||
- 加快
|
||||
- 速度调高
|
||||
- 速度大一点
|
||||
down_phrases:
|
||||
- 再慢一点
|
||||
- 慢一点
|
||||
- 减慢
|
||||
- 速度调低
|
||||
- 速度小一点
|
||||
rewrite_template: "速度设为 {value} mm/min"
|
||||
|
||||
# ────────────────────────────────────────────────
|
||||
# 放电电压(放电码)
|
||||
# ────────────────────────────────────────────────
|
||||
- intent_ids:
|
||||
- wirecut_set_voltage
|
||||
slot_name: voltage
|
||||
unit: ""
|
||||
step: 5
|
||||
min_value: 0
|
||||
max_value: 200
|
||||
default_value: 90
|
||||
up_phrases:
|
||||
- 电压高一点
|
||||
- 电压调高
|
||||
- 放电码高一点
|
||||
- 放电码大一点
|
||||
down_phrases:
|
||||
- 电压低一点
|
||||
- 电压调低
|
||||
- 放电码低一点
|
||||
- 放电码小一点
|
||||
rewrite_template: "电压设为 {value}"
|
||||
|
||||
# ────────────────────────────────────────────────
|
||||
# 放电电流(跟踪值)
|
||||
# ────────────────────────────────────────────────
|
||||
- intent_ids:
|
||||
- wirecut_set_current
|
||||
slot_name: current
|
||||
unit: ""
|
||||
step: 1
|
||||
min_value: 0
|
||||
max_value: 30
|
||||
default_value: 5
|
||||
up_phrases:
|
||||
- 电流大一点
|
||||
- 电流调高
|
||||
- 跟踪值高一点
|
||||
- 跟踪值大一点
|
||||
down_phrases:
|
||||
- 电流小一点
|
||||
- 电流调低
|
||||
- 跟踪值低一点
|
||||
- 跟踪值小一点
|
||||
rewrite_template: "电流设为 {value}"
|
||||
79
intelligent_cabin/config/dialog_acts.yml
Normal file
79
intelligent_cabin/config/dialog_acts.yml
Normal file
@@ -0,0 +1,79 @@
|
||||
# Dialog Act 配置
|
||||
# act_id : 行为标识,代码内引用此字段
|
||||
# phrases : 字符串包含匹配词表,匹配到任意一个即命中该 act
|
||||
# numeric_patterns : 正则列表,输入文本匹配任意一个则命中该 act(用于数字类 inform)
|
||||
# priority : 可选,数字越小越先检查(默认按声明顺序)
|
||||
#
|
||||
# 说明:不同设备部署时,修改本文件即可调整对话行为词表,无需改动代码。
|
||||
|
||||
acts:
|
||||
- act_id: affirm
|
||||
phrases:
|
||||
- 确认
|
||||
- 好的
|
||||
- 继续
|
||||
- 可以
|
||||
- 确定
|
||||
- 执行
|
||||
- 是
|
||||
- "ok"
|
||||
- "yes"
|
||||
|
||||
- act_id: deny
|
||||
phrases:
|
||||
- 不要
|
||||
- 不行
|
||||
- 否
|
||||
- 不
|
||||
- "no"
|
||||
|
||||
- act_id: cancel
|
||||
phrases:
|
||||
- 取消
|
||||
- 算了
|
||||
- 不用了
|
||||
- 停止
|
||||
- 中止
|
||||
- 放弃
|
||||
|
||||
- act_id: modify
|
||||
phrases:
|
||||
- 改成
|
||||
- 换成
|
||||
- 再低一点
|
||||
- 再高一点
|
||||
- 调大
|
||||
- 调小
|
||||
- 快一点
|
||||
- 慢一点
|
||||
|
||||
- act_id: chitchat
|
||||
phrases:
|
||||
- 你好
|
||||
- 谢谢
|
||||
- 再见
|
||||
- 天气
|
||||
- 真不错
|
||||
|
||||
- act_id: request
|
||||
phrases:
|
||||
- 帮我
|
||||
- 打开
|
||||
- 关闭
|
||||
- 导航
|
||||
- 播放
|
||||
- 查询
|
||||
- 查
|
||||
- 启动
|
||||
- 停止加工
|
||||
- 回零
|
||||
- 加载
|
||||
- 设为
|
||||
- 设置
|
||||
|
||||
# inform:用于用户直接说出数值(作为 slot 填写),如 "85" / "22度" / "0.5"
|
||||
# phrases 留空,完全依赖 numeric_patterns 匹配
|
||||
- act_id: inform
|
||||
phrases: []
|
||||
numeric_patterns:
|
||||
- "\\d+"
|
||||
38
intelligent_cabin/config/domain.yml
Normal file
38
intelligent_cabin/config/domain.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
{
|
||||
"intents": [
|
||||
{ "intent_id": "cs_query_order", "domain": "customer_service", "action_id": "action_cs_query_order", "label": "查订单", "required_slots": ["order_id"], "ask_templates": { "order_id": "请提供订单号。" }, "keywords": ["查询订单", "查订单", "订单状态"], "examples": ["帮我查一下订单", "我的订单到哪一步了", "查下订单状态"] },
|
||||
{ "intent_id": "cs_query_logistics", "domain": "customer_service", "action_id": "action_cs_query_logistics", "label": "查物流", "required_slots": ["order_id"], "ask_templates": { "order_id": "请提供订单号。" }, "keywords": ["查物流", "物流", "快递"], "examples": ["帮我查一下快递", "看看物流到哪了", "快递什么时候到"] },
|
||||
{ "intent_id": "cs_cancel_order", "domain": "customer_service", "action_id": "action_cs_cancel_order", "label": "取消订单", "required_slots": ["order_id"], "ask_templates": { "order_id": "请提供要取消的订单号。" }, "keywords": ["取消订单", "撤销订单"], "examples": ["帮我取消这个订单", "我不想要了取消吧", "撤销刚才的订单"] },
|
||||
{ "intent_id": "cs_transfer_human", "domain": "customer_service", "action_id": "action_cs_transfer_human", "label": "转人工", "required_slots": [], "ask_templates": {}, "keywords": ["转人工", "人工客服", "联系客服"], "examples": ["我要人工客服", "帮我转人工", "联系客服"] },
|
||||
{ "intent_id": "cabin_nav_cancel", "domain": "cabin", "action_id": "action_cabin_nav_cancel", "label": "结束导航", "required_slots": [], "ask_templates": {}, "keywords": ["取消导航", "结束导航", "停止导航"], "examples": ["把导航关掉", "退出导航", "别导航了"] },
|
||||
{ "intent_id": "cabin_nav_to", "domain": "cabin", "action_id": "action_cabin_nav_to", "label": "导航", "required_slots": ["destination"], "ask_templates": { "destination": "请告诉我要导航去哪里。" }, "keywords": ["导航去", "导航到", "带我去"], "examples": ["导航去公司", "带我去机场", "导航到虹桥火车站"] },
|
||||
{ "intent_id": "cabin_ac_on", "domain": "cabin", "action_id": "action_cabin_ac_on", "label": "打开空调", "required_slots": [], "ask_templates": {}, "keywords": ["打开空调", "开启空调", "空调打开"], "examples": ["把空调打开", "开空调", "启动空调"] },
|
||||
{ "intent_id": "cabin_ac_off", "domain": "cabin", "action_id": "action_cabin_ac_off", "label": "关闭空调", "required_slots": [], "ask_templates": {}, "keywords": ["关闭空调", "关掉空调", "空调关闭"], "examples": ["把空调关掉", "别吹空调了", "空调先关了"] },
|
||||
{ "intent_id": "cabin_set_ac", "domain": "cabin", "action_id": "action_cabin_set_ac", "label": "调空调", "required_slots": ["temperature"], "ask_templates": { "temperature": "请告诉我要设置多少度。" }, "keywords": ["空调调到", "温度设成", "设成多少度"], "examples": ["把空调调到22度", "温度设成24度", "空调调到20度"] },
|
||||
{ "intent_id": "cabin_fan_up", "domain": "cabin", "action_id": "action_cabin_fan_up", "label": "调大风量", "required_slots": [], "ask_templates": {}, "keywords": ["调大风量", "风量大一点", "风量调高"], "examples": ["把风量调大一点", "空调风再大一点", "风量开大些"] },
|
||||
{ "intent_id": "cabin_fan_down", "domain": "cabin", "action_id": "action_cabin_fan_down", "label": "调小风量", "required_slots": [], "ask_templates": {}, "keywords": ["调小风量", "风量小一点", "风量调低"], "examples": ["把风量调小一点", "空调风太大了", "风量关小些"] },
|
||||
{ "intent_id": "cabin_defog_front_on", "domain": "cabin", "action_id": "action_cabin_defog_front_on", "label": "打开前挡除雾", "required_slots": [], "ask_templates": {}, "keywords": ["打开前挡除雾", "前挡风除雾", "前窗除雾"], "examples": ["帮我打开前挡除雾", "前挡风玻璃起雾了", "开一下前挡除雾"] },
|
||||
{ "intent_id": "cabin_defog_rear_on", "domain": "cabin", "action_id": "action_cabin_defog_rear_on", "label": "打开后挡除雾", "required_slots": [], "ask_templates": {}, "keywords": ["打开后挡除雾", "后挡风除雾", "后窗除雾"], "examples": ["帮我打开后挡除雾", "后挡风玻璃起雾了", "开一下后挡除雾"] },
|
||||
{ "intent_id": "cabin_window_open", "domain": "cabin", "action_id": "action_cabin_window_open", "label": "打开车窗", "required_slots": [], "ask_templates": {}, "keywords": ["打开车窗", "开车窗", "车窗打开"], "examples": ["把车窗打开", "帮我开一下车窗", "打开一点车窗"] },
|
||||
{ "intent_id": "cabin_window_close", "domain": "cabin", "action_id": "action_cabin_window_close", "label": "关闭车窗", "required_slots": [], "ask_templates": {}, "keywords": ["关闭车窗", "关车窗", "车窗关上"], "examples": ["把车窗关上", "帮我关一下车窗", "车窗全部关闭"] },
|
||||
{ "intent_id": "cabin_sunroof_open", "domain": "cabin", "action_id": "action_cabin_sunroof_open", "label": "打开天窗", "required_slots": [], "ask_templates": {}, "keywords": ["打开天窗", "开天窗", "天窗打开"], "examples": ["把天窗打开", "帮我开一下天窗", "天窗打开一点"] },
|
||||
{ "intent_id": "cabin_sunroof_close", "domain": "cabin", "action_id": "action_cabin_sunroof_close", "label": "关闭天窗", "required_slots": [], "ask_templates": {}, "keywords": ["关闭天窗", "关天窗", "天窗关上"], "examples": ["把天窗关上", "帮我关一下天窗", "关闭全景天窗"] },
|
||||
{ "intent_id": "cabin_lock_doors", "domain": "cabin", "action_id": "action_cabin_lock_doors", "label": "锁车门", "required_slots": [], "ask_templates": {}, "keywords": ["锁车门", "锁门", "车门锁上"], "examples": ["帮我锁车", "把车门锁上", "全部车门上锁"] },
|
||||
{ "intent_id": "cabin_unlock_doors", "domain": "cabin", "action_id": "action_cabin_unlock_doors", "label": "解锁车门", "required_slots": [], "ask_templates": {}, "keywords": ["解锁车门", "开锁", "车门解锁"], "examples": ["帮我解锁车门", "把车门打开锁", "全部车门解锁"] },
|
||||
{ "intent_id": "cabin_play_music", "domain": "cabin", "action_id": "action_cabin_play_music", "label": "播放音乐", "required_slots": [], "ask_templates": {}, "keywords": ["播放音乐", "来点音乐", "放首歌"], "examples": ["播放轻音乐", "来点歌", "帮我放首歌"] },
|
||||
{ "intent_id": "cabin_pause_music", "domain": "cabin", "action_id": "action_cabin_pause_music", "label": "暂停音乐", "required_slots": [], "ask_templates": {}, "keywords": ["暂停音乐", "暂停播放", "音乐暂停"], "examples": ["把音乐暂停", "先别放了", "暂停当前歌曲"] },
|
||||
{ "intent_id": "cabin_next_track", "domain": "cabin", "action_id": "action_cabin_next_track", "label": "下一首", "required_slots": [], "ask_templates": {}, "keywords": ["下一首", "切下一首", "换首歌"], "examples": ["帮我切到下一首", "下一首歌", "换一首歌"] },
|
||||
{ "intent_id": "cabin_previous_track", "domain": "cabin", "action_id": "action_cabin_previous_track", "label": "上一首", "required_slots": [], "ask_templates": {}, "keywords": ["上一首", "切上一首", "返回上一首"], "examples": ["帮我切到上一首", "上一首歌", "返回刚才那首歌"] },
|
||||
{ "intent_id": "cabin_volume_up", "domain": "cabin", "action_id": "action_cabin_volume_up", "label": "调大音量", "required_slots": [], "ask_templates": {}, "keywords": ["调大音量", "音量大一点", "音量调高"], "examples": ["把音量调大一点", "声音太小了", "音量开大些"] },
|
||||
{ "intent_id": "cabin_volume_down", "domain": "cabin", "action_id": "action_cabin_volume_down", "label": "调小音量", "required_slots": [], "ask_templates": {}, "keywords": ["调小音量", "音量小一点", "音量调低"], "examples": ["把音量调小一点", "声音太大了", "音量关小些"] },
|
||||
{ "intent_id": "cabin_volume_mute", "domain": "cabin", "action_id": "action_cabin_volume_mute", "label": "静音", "required_slots": [], "ask_templates": {}, "keywords": ["静音", "关闭声音", "音量静音"], "examples": ["把声音关掉", "先静音", "音响静音"] },
|
||||
{ "intent_id": "cabin_lights_on", "domain": "cabin", "action_id": "action_cabin_lights_on", "label": "打开车灯", "required_slots": [], "ask_templates": {}, "keywords": ["打开车灯", "开灯", "车灯打开"], "examples": ["把车灯打开", "帮我开一下灯", "打开大灯"] },
|
||||
{ "intent_id": "cabin_lights_off", "domain": "cabin", "action_id": "action_cabin_lights_off", "label": "关闭车灯", "required_slots": [], "ask_templates": {}, "keywords": ["关闭车灯", "关灯", "车灯关闭"], "examples": ["把车灯关掉", "帮我关一下灯", "关闭大灯"] },
|
||||
{ "intent_id": "cabin_seat_heat_on", "domain": "cabin", "action_id": "action_cabin_seat_heat_on", "label": "打开座椅加热", "required_slots": [], "ask_templates": {}, "keywords": ["打开座椅加热", "开座椅加热", "座椅加热打开"], "examples": ["把座椅加热打开", "帮我开一下座椅加热", "打开主驾座椅加热"] },
|
||||
{ "intent_id": "cabin_seat_heat_off", "domain": "cabin", "action_id": "action_cabin_seat_heat_off", "label": "关闭座椅加热", "required_slots": [], "ask_templates": {}, "keywords": ["关闭座椅加热", "关座椅加热", "座椅加热关闭"], "examples": ["把座椅加热关掉", "帮我关一下座椅加热", "关闭主驾座椅加热"] },
|
||||
{ "intent_id": "cabin_mirror_fold", "domain": "cabin", "action_id": "action_cabin_mirror_fold", "label": "折叠后视镜", "required_slots": [], "ask_templates": {}, "keywords": ["折叠后视镜", "收起后视镜", "后视镜折叠"], "examples": ["把后视镜折叠起来", "帮我收起后视镜", "折叠两侧后视镜"] },
|
||||
{ "intent_id": "cabin_mirror_unfold", "domain": "cabin", "action_id": "action_cabin_mirror_unfold", "label": "展开后视镜", "required_slots": [], "ask_templates": {}, "keywords": ["展开后视镜", "打开后视镜", "后视镜展开"], "examples": ["把后视镜展开", "帮我打开后视镜", "展开两侧后视镜"] },
|
||||
{ "intent_id": "cabin_wiper_on", "domain": "cabin", "action_id": "action_cabin_wiper_on", "label": "打开雨刷", "required_slots": [], "ask_templates": {}, "keywords": ["打开雨刷", "开雨刷", "雨刷启动"], "examples": ["把雨刷打开", "帮我开一下雨刷", "启动雨刮器"] },
|
||||
{ "intent_id": "cabin_wiper_off", "domain": "cabin", "action_id": "action_cabin_wiper_off", "label": "关闭雨刷", "required_slots": [], "ask_templates": {}, "keywords": ["关闭雨刷", "关雨刷", "雨刷停止"], "examples": ["把雨刷关掉", "帮我关一下雨刷", "停止雨刮器"] }
|
||||
]
|
||||
}
|
||||
39
intelligent_cabin/config/forms.yml
Normal file
39
intelligent_cabin/config/forms.yml
Normal file
@@ -0,0 +1,39 @@
|
||||
{
|
||||
"forms": [
|
||||
{
|
||||
"intent_id": "cs_query_order",
|
||||
"required_slots": ["order_id"],
|
||||
"ask_templates": {
|
||||
"order_id": "请提供订单号。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"intent_id": "cs_query_logistics",
|
||||
"required_slots": ["order_id"],
|
||||
"ask_templates": {
|
||||
"order_id": "请提供订单号。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"intent_id": "cs_cancel_order",
|
||||
"required_slots": ["order_id"],
|
||||
"ask_templates": {
|
||||
"order_id": "请提供要取消的订单号。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"intent_id": "cabin_nav_to",
|
||||
"required_slots": ["destination"],
|
||||
"ask_templates": {
|
||||
"destination": "请告诉我要导航去哪里。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"intent_id": "cabin_set_ac",
|
||||
"required_slots": ["temperature"],
|
||||
"ask_templates": {
|
||||
"temperature": "请告诉我要设置多少度。"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
82
intelligent_cabin/config/knowledge/false_weld_alarm.md
Normal file
82
intelligent_cabin/config/knowledge/false_weld_alarm.md
Normal file
@@ -0,0 +1,82 @@
|
||||
# 虚焊报警处理 — 弯管工序 / 涡流探伤
|
||||
|
||||
## 结论
|
||||
|
||||
虚焊报警(涡流探伤触发)主要来自**弯管成形形态偏差**,需用激光扫描仪逐一确认模具点位,偏差超限时通过平板 AI 自动调节,再开机生产一小段验证。
|
||||
|
||||
---
|
||||
|
||||
## 处理步骤
|
||||
|
||||
1. **定位报警来源**:确认涡流探伤仪报警段对应的管材来自哪个模具区间。
|
||||
2. **激光扫描检测**:使用激光扫描仪逐一扫描弯管工序中每个模具点位。
|
||||
3. **偏差判定**:平板 App 自动比对标准形态与当前形态,显示偏差值。
|
||||
4. **AI 自动调节**:偏差超出正常误差范围时,在平板上点击「AI 自动调节」。
|
||||
5. **验证**:调节完毕后开机生产约 1~2m,重新扫描确认偏差已消除。
|
||||
|
||||
---
|
||||
|
||||
## 激光扫描仪操作详情
|
||||
|
||||
### 准备工作
|
||||
|
||||
- 设备:激光轮廓扫描仪(安装在模具出口侧)
|
||||
- 前提:停机、管材退出模具区、扫描仪校准完成(上电 30s 后自动完成)
|
||||
|
||||
### 扫描步骤
|
||||
|
||||
1. 打开平板 App → 选择「弯管检测」→ 点击「开始扫描」
|
||||
2. 扫描仪激光线覆盖管材横截面,约 2s 完成单点采集
|
||||
3. 移动至下一模具出口,重复扫描
|
||||
4. 扫描完成后点击「生成报告」,平板显示差异云图
|
||||
|
||||
### 偏差判定标准
|
||||
|
||||
| 偏差等级 | 数值范围 | 建议操作 |
|
||||
|:---:|:---:|:---:|
|
||||
| 正常 | ≤ ±0.15mm | 无需处理 |
|
||||
| 警告 | ±0.15~0.30mm | 记录,下次保养时处理 |
|
||||
| 超限 | > ±0.30mm | 立即 AI 自动调节 |
|
||||
|
||||
### 图片参考
|
||||
|
||||
<!-- media: images/laser_scan_setup.jpg -->
|
||||
> 📷 **图1**:激光扫描仪安装位置(模具出口侧,红色激光线垂直于管材轴线)
|
||||
> 本地路径:`/assets/knowledge/laser_scan_setup.jpg`
|
||||
|
||||
<!-- media: images/tablet_deviation_map.jpg -->
|
||||
> 📷 **图2**:平板 App 差异云图示意(绿色=正常,黄色=警告,红色=超限)
|
||||
> 本地路径:`/assets/knowledge/tablet_deviation_map.jpg`
|
||||
|
||||
### 视频教程
|
||||
|
||||
<!-- media: videos/laser_scan_tutorial.mp4 -->
|
||||
> 🎬 **视频**:激光扫描仪完整操作流程(约 4 分钟)
|
||||
> 本地路径:`/assets/knowledge/laser_scan_tutorial.mp4`
|
||||
|
||||
---
|
||||
|
||||
## AI 自动调节说明
|
||||
|
||||
1. 平板 App 偏差报告页,点击「AI 自动调节」
|
||||
2. 系统读取偏差向量,计算每个伺服轴的补偿量
|
||||
3. 补偿量写入 PLC,各伺服电机自动移动到新位置(约 15s)
|
||||
4. 屏幕显示「调节完成,请验证」
|
||||
|
||||
> ⚠️ **注意**:调节期间禁止手动移动任何模具;若调节失败(伺服报警),请联系设备工程师。
|
||||
|
||||
---
|
||||
|
||||
## 相关设备
|
||||
|
||||
- 涡流探伤仪型号:EC-500(上海康肽)
|
||||
- 激光扫描仪型号:LJ-X8200(基恩士)
|
||||
- 控制平板:焊管机 HMI Pro v2.3
|
||||
|
||||
---
|
||||
|
||||
## 引用文档
|
||||
|
||||
- 《焊管机维护手册》第 7 章:弯管工序成形质量管理
|
||||
- 《激光扫描仪操作规程》SOP-QC-003 v1.2
|
||||
- 《涡流探伤报警处置流程》SOP-QC-007 v2.0
|
||||
30
intelligent_cabin/config/responses.yml
Normal file
30
intelligent_cabin/config/responses.yml
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"templates": {
|
||||
"ask_order_id": "请提供订单号。",
|
||||
"ask_cancel_order_id": "请告诉我订单号。",
|
||||
"ask_destination": "请告诉我要去哪里。",
|
||||
"ask_temperature": "请告诉我要设置多少度。",
|
||||
"workflow_failed": "这次没处理成功,请稍后再试。",
|
||||
"workflow_summary_empty": "好的,已经处理完成。",
|
||||
"confirm_retry": "我需要一个明确确认。请回复“确认”继续,或回复“取消”终止。",
|
||||
"confirm_cancelled": "好的,已取消这一步。",
|
||||
"ack_default": "收到,马上处理。",
|
||||
"ack_cabin": "好的,马上处理。",
|
||||
"ack_service": "收到,我来处理。",
|
||||
"reject": "这个我暂时做不了,但我可以帮你查询、控制或转人工。",
|
||||
"short_social_greeting": "你好,我在。",
|
||||
"short_social_thanks": "不客气。",
|
||||
"short_social_goodbye": "好的,有需要再叫我。",
|
||||
"short_social_capability": "我可以帮你查订单、查物流、取消订单、导航、调空调、播放音乐或转人工。",
|
||||
"short_social_default": "我在。",
|
||||
"open_social_fallback": "可以和你聊两句,你也可以继续告诉我想处理什么。",
|
||||
"pending_confirmation_hint": "当前这一步还在等你确认,回复“确认”或“取消”即可。",
|
||||
"pending_slot_order_id": "当前还缺订单号,你继续告诉我订单号就行。",
|
||||
"pending_slot_temperature": "当前还缺温度,你继续告诉我要设置多少度就行。",
|
||||
"pending_slot_destination": "当前还缺目的地,你继续告诉我要去哪里就行。",
|
||||
"pending_slot_default": "当前还缺一个关键信息,你继续补充就行。",
|
||||
"pending_running": "当前任务还在继续,你也可以直接继续下一个指令。",
|
||||
"task_stopped": "好的,已停止当前任务。",
|
||||
"fallback": "我还没完全听懂,你可以换个简短说法,或告诉我是查询、控制还是转人工。"
|
||||
}
|
||||
}
|
||||
43
intelligent_cabin/config/rules.yml
Normal file
43
intelligent_cabin/config/rules.yml
Normal file
@@ -0,0 +1,43 @@
|
||||
{
|
||||
"stop": {
|
||||
"phrases": [
|
||||
"不用了",
|
||||
"算了",
|
||||
"先不要了",
|
||||
"先这样吧",
|
||||
"停一下",
|
||||
"停止",
|
||||
"停止当前任务",
|
||||
"结束这次操作",
|
||||
"别弄了",
|
||||
"不需要了"
|
||||
]
|
||||
},
|
||||
"confirmation": {
|
||||
"positive_tokens": [
|
||||
"确认",
|
||||
"好的",
|
||||
"是",
|
||||
"继续",
|
||||
"可以",
|
||||
"确定",
|
||||
"yes",
|
||||
"ok"
|
||||
],
|
||||
"negative_tokens": [
|
||||
"取消",
|
||||
"不用",
|
||||
"不要",
|
||||
"否",
|
||||
"no",
|
||||
"算了",
|
||||
"停止"
|
||||
],
|
||||
"required_intents": [
|
||||
"cs_cancel_order"
|
||||
],
|
||||
"required_risk_levels": [
|
||||
"high"
|
||||
]
|
||||
}
|
||||
}
|
||||
95
intelligent_cabin/config/voice_aliases.yml
Normal file
95
intelligent_cabin/config/voice_aliases.yml
Normal file
@@ -0,0 +1,95 @@
|
||||
# voice_aliases.yml
|
||||
# 语音点击匹配词表 · 前端阶段 0 / 阶段 1 使用
|
||||
#
|
||||
# 说明:
|
||||
# - affirm_words / deny_words / cancel_words 用于阶段 0(停止词)和阶段 1a(等待确认状态的 affirm/deny)
|
||||
# - intent_aliases 用于各 Artifact 的 voiceActions 语音别名
|
||||
# - 部署到不同设备时只需替换本文件,无需改动代码
|
||||
#
|
||||
# TS 构建时由脚本 scripts/generate-voice-aliases.mjs 读取本文件,
|
||||
# 自动生成 src/lib/nlu/voice-aliases.gen.ts
|
||||
|
||||
affirm_words:
|
||||
- 确认
|
||||
- 好的
|
||||
- 执行
|
||||
- 是
|
||||
- 对
|
||||
- 继续
|
||||
- 好
|
||||
- 可以
|
||||
- 确定
|
||||
- "ok"
|
||||
- "yes"
|
||||
|
||||
deny_words:
|
||||
- 不行
|
||||
- 不要
|
||||
- 不
|
||||
- 否
|
||||
- "no"
|
||||
|
||||
cancel_words:
|
||||
- 取消
|
||||
- 算了
|
||||
- 不用了
|
||||
- 停止
|
||||
- 中止
|
||||
- 放弃
|
||||
|
||||
# ─── 工控设备别名(按 intent_id 分组)───────────────────────────────────────
|
||||
# 这里的 key 与 intelligent_cabin 里 IntentDefinition.intent_id 一一对应。
|
||||
# 前端 Artifact 创建时会读取这些别名,填入 ArtifactAction.voiceAliases。
|
||||
intent_aliases:
|
||||
wirecut_start_run:
|
||||
- 开始
|
||||
- 启动
|
||||
- 加工
|
||||
- 跑起来
|
||||
- 开始加工
|
||||
- 启动加工
|
||||
|
||||
wirecut_stop_run:
|
||||
- 停
|
||||
- 停机
|
||||
- 急停
|
||||
- 停止
|
||||
- 停止加工
|
||||
|
||||
wirecut_pause_run:
|
||||
- 暂停
|
||||
- 变频暂停
|
||||
|
||||
wirecut_resume_run:
|
||||
- 继续
|
||||
- 恢复
|
||||
- 继续加工
|
||||
|
||||
wirecut_home_all:
|
||||
- 回零
|
||||
- 归零
|
||||
- 回原点
|
||||
- 全轴回零
|
||||
|
||||
wirecut_home_x:
|
||||
- X轴回零
|
||||
- x回零
|
||||
|
||||
wirecut_home_y:
|
||||
- Y轴回零
|
||||
- y回零
|
||||
|
||||
wirecut_set_speed:
|
||||
- 设置速度
|
||||
- 调速度
|
||||
- 修改速度
|
||||
|
||||
wirecut_set_voltage:
|
||||
- 设置电压
|
||||
- 调电压
|
||||
- 修改电压
|
||||
|
||||
wirecut_set_tension:
|
||||
- 设置拉力
|
||||
- 调拉力
|
||||
- 修改拉力
|
||||
34
intelligent_cabin/config/workflows.yml
Normal file
34
intelligent_cabin/config/workflows.yml
Normal file
@@ -0,0 +1,34 @@
|
||||
{
|
||||
"templates": [
|
||||
{
|
||||
"template_id": "window_then_ac_sequence",
|
||||
"workflow_type": "sequence",
|
||||
"intent_sequence": ["cabin_window_open", "cabin_set_ac"],
|
||||
"trigger_keywords": ["车窗", "空调"],
|
||||
"step_overrides": [
|
||||
{},
|
||||
{}
|
||||
]
|
||||
},
|
||||
{
|
||||
"template_id": "query_then_cancel_if_pending",
|
||||
"workflow_type": "conditional",
|
||||
"intent_sequence": ["cs_query_order", "cs_cancel_order"],
|
||||
"trigger_keywords": ["订单"],
|
||||
"step_overrides": [
|
||||
{},
|
||||
{
|
||||
"depends_on": [1],
|
||||
"condition": {
|
||||
"source_step": 1,
|
||||
"field": "order_status",
|
||||
"operator": "equals",
|
||||
"value": "pending_shipment",
|
||||
"description": "仅在订单未发货时取消"
|
||||
},
|
||||
"requires_confirmation": true
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user