# MesStep **Repository Path**: wh_ylt/mes-step ## Basic Information - **Project Name**: MesStep - **Description**: MES报工与数采程序 - **Primary Language**: C# - **License**: EPL-1.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-20 - **Last Updated**: 2026-07-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MesStep MesStep 是一个基于 **WPF (Windows Presentation Foundation)** 和 **Prism** 框架构建的现代化制造执行系统(MES)客户端应用程序。该项目主要用于车间现场作业管理,涵盖工单接收、物料管控、实时设备通讯(如串口测试设备、MQTT烤箱监控)以及生产数据上报等功能。 ## 主要功能 * **作业管理**:支持工单请求、批次上机、SN(序列号)管理以及工艺路线控制。 * **物料追溯**:实时监控和记录生产过程中的物料消耗与批次信息。 * **设备通讯**: * **串口通讯 (SerialPort)**:集成 OE(光引擎)测试配置与数据采集。 * **MQTT 通讯**:支持连接 MQTT 服务器,用于烤箱等环境设备的实时数据监控与图表展示。 * **Socket 通讯**:与 MES 系统进行 IoT 数据交互,实现请求投产、物料扣数等操作。 * **多语言支持**:内置国际化支持(中文、英文、泰文等),适应不同地区的使用需求。 * **配置管理**:提供灵活的 JSON 配置文件管理,支持页面动态配置和用户交互弹窗。 ## 技术栈 * **开发语言**:C# * **客户端框架**:WPF (.NET) * **MVVM 框架**:Prism (依赖注入、事件聚合、区域管理) * **通讯协议**:MQTT (MqttNet), SerialPort, TCP/IP Socket * **数据格式**:JSON (配置与数据传输) * **图表绘制**:OxyPlot (用于烤箱温度曲线绘制) ## 安装与配置 ### 环境要求 * Windows 操作系统 * .NET SDK (建议 .NET 6.0) * Visual Studio 2022 (或兼容版本) ### 编译步骤 1. **克隆仓库**: ```bash git clone https://gitee.com/wh_ylt/mes-step.git ``` 2. **打开项目**:使用 Visual Studio 打开 `MesStep.sln` 解决方案文件。 3. **还原依赖**:确保 NuGet 包管理器已自动还原所有依赖项(如 Prism, MqttNet, OxyPlot 等)。 4. **编译运行**:选择 Debug 或 Release 配置,点击运行。 ### 配置文件说明 项目依赖 `ConfigJson` 目录下的 JSON 文件进行初始化: * `MesConfig.json`:核心应用程序配置(设备编码、请求类型、MQTT 地址等)。 * `PageInfo.json`:页面布局与控件显示配置。 * `OeTestConfig.json` (运行时生成):OE 测试设备的参数配置。 **注意**:首次运行前,请确保 `ConfigJson` 目录存在且包含有效的配置文件,否则应用将无法正常启动。 ## 项目结构概览 * **Assets**:资源文件(样式、图标、行为逻辑)。 * **ConfigJson**:JSON 配置文件目录。 * **Controls**:自定义 WPF 控件。 * **Converters**:值转换器(如屏幕宽度适配)。 * **Language**:多语言资源文件。 * **Models**:数据模型(物料信息、热键事件等)。 * **Services**:服务层(通常隐含在 ViewModel 或特定模块中处理业务逻辑)。 * **ViewModels**:业务逻辑层,采用 Prism MVVM 模式。 * `Config`:对话框交互。 * `Login`:登录与工号管理。 * `Mqtt`:服务器与烘烤监控。 * `SerialPort`:串口测试设备控制。 * `SocketComm`:MES 系统数据交互。 * **Views**:用户界面层,XAML 文件。 ## 使用指南 1. **登录**:启动程序后,输入工号登录系统。 2. **投产**:在主界面选择请求投产,根据提示输入批次码或 SN 码。 3. **物料管控**:检查物料是否上机,确认后可开始作业。 4. **生产监控**: * **OE 测试**:若配置了串口设备,可在测试页面查看实时数据。 * **烤箱监控**:若启用 MQTT,可在对应页面查看温度曲线。 5. **下传数据**:生产完成后,系统会自动或手动通过 Socket 将数据上报给 MES 服务器。 ## 许可证 本项目采用 **MIT** 许可证。详细信息请查看 [LICENSE](LICENSE) 文件。