分享
设备不是孤岛——工厂游戏指南
输入“/”快速插入内容
设备不是孤岛——工厂游戏指南
用户9512
用户9512
用户3459
用户3459
用户64
用户64
2025年7月25日修改
背景
Agent 成了每个领域绕不开的革命火种,在工业领域亦是如此。作为国内工业自动化的龙头企业,我们正在积极尝试将最前沿的 agent 技术引入真实产线,推动传统工厂向自适应、自组织、自优化系统演进。 我们进一步畅想:能否构建一个像人类一样通过语言决策的智能体系统?可以想象机器之间对话:“我这边快满了,暂停投料。” “收到,我先缓一轮。”用语言做到理解彼此、协作应变、自主决策,实现工厂收益最大化的同时稳定运行。为此,我们搭建了一个可控的模拟工厂,等待你来赋予它思维与行动,探索 agent 与工业协作的新可能。
介绍
你的目标是使用LLM Agent优化一个虚拟工厂,令其效率最大化。
画板
虚拟工厂
我们使用基于Python的离散事件仿真框架Simpy构建了一个贴近真实工厂场景的“游戏”。
MQTT Broker
MQTT Broker是虚拟工厂与外界沟通的接口,出于尽量贴近工业场景的考量,我们使用MQTT作为“接口”协议而不是互联网领域常用的REST API。类似API文档,MQTT Broker也有接口文档规定Topic以及Payload的作用和格式,详见README。
根据Quick Start正确配置后,虚拟工厂将会实时与MQTT Broker通讯,通过特定topic向你的Agent发送工厂的实时状况、接受Agent发来的指令并作出反应。
Agent
这部分将由你定义,你可以自由选择构建Agent的框架,使用NodeRED、Dify、Langgraph,或者干脆手搓。本质上,这个Agent的工作是收听虚拟工厂发生的事情(订阅MQTT Topic,分析Json),做出分析,再向虚拟工厂发出指令(向MQTT Topic发布Json)。
数字孪生
这是一个基于Unity的三维前端界面,以供你更直观的查看这个虚拟工厂以及Agent的表现。
Quick Start
1.
环境配置
•
Download
uv
代码块
Bash
curl -LsSf
https://astral.sh/uv/install.sh
| sh
•
Clone project
代码块
Bash
git clone https://github.com/supcon-international/25-AdventureX-SUPCON-Hackathon.git
cd 25-AdventureX-SUPCON-Hackathon
•
Install dependencies
代码块
Bash
uv sync
2. 启动仿真系统
设置环境变量
TOPIC_ROOT
作为仿真系统mqtt的client id和topic root来分隔不同选手,默认值获取顺序为
TOPIC_ROOT
,
USERNAME
,
USER
的环境变量,否则默认"NLDF_TEST"
•
add
--menu
arg to enable interactive input thread for test only
•
add
--no-mqtt
arg to disable mqtt communication for debug offline
代码块
Bash
uv run run_multi_line_simulation.py (--menu) (--no-mqtt)
3. 启动Unity可视化(可选)
1.
设置
StreamingAssets/MQTTBroker.json
中的Root_Topic_Head字段与上述仿真系统的topic root一致,并修改wss.client_id字段防止和其他选手client冲突。
2.
使用VScode Live Server 插件,选中到index.html文件后go live启动基于WebGL的Unity前端界面
代码块
JSON
"wss":{
"port": 8084,
"host": "supos-ce-instance4.supos.app",
"client_id": "
NLDF_mqtt_wss_test
",
......
},
"common_topic":{
"Root_Topic_Head": "
NLDF_test
"},
4.Supos 数据连接方法
supos平台将数据以mqtt格式收集并分发,在本项目中充当mqtt broker的职能