架构与技术选型:ASP.NET Core 6 Web API + Vue 3 / Vite / Element Plus + SQL Server + SqlSugar,配 Quartz.NET调度、Redis 缓存、SignalR 实时通道、JWT + RBAC 权限; 按 API / 业务 / 仓储 / 模型 / 调度 / 基础设施分层,并⾃建代码⽣成器批量产出标准 CRUD。
核⼼架构判断—把⽴体仓库模型引⼊植物⼯⼚:建⽴ ⼯⼚ → 区域 → 库区 → 巷道 → 货架 → 货位六级空间模型,每个栽培位即 可独⽴寻址的货位(在产3,940 货位 / 3,823 块槽板, 栽培区 8 排 × 10 层 × 38 列,⽣产缓存区 8 排 × 9 列 ×12 层),使栽培单元可独⽴调度、灌溉、追溯, 替代按⼤区粗放调控;货位采⽤⾃解释分段编码(⼯⼚-区域-货架-列-层),并维护内部编号与设备侧 / 外部 WMS 地址双体系映射。
⼯艺驱动⾃动排产:以「产品―⼯序」配置驱动全流程(催芽 216 孔 → 育苗 → 分栽⼀ 72 孔 → 分栽⼆ 24 孔 → 采收,全周期43 天,不同产品⼯序数不同); 定时任务按预计出库⽇期反向倒推逐⼯序需求量,⾃动⽣成当⽇计划, 并处理密度递减分栽(每盘 216→72→24 株)的批次裂变(单批 12→30→90 盘)与数量换算。
分⼯序光周期策略:按⽣⻓阶段递减光照时⻓(育苗 15h → 分栽⼀ 12h → 分栽⼆ 10h), 每⼯序最多三组开关时段,并处理光照区间跨午夜的时窗计算与定时触发; 另设产品级延迟参数(⼊库后延迟开灯、关⽔后延迟出库),使灯 / ⽔ / 搬运按⼯艺错开。
计划到设备任务三级下发:「⽣产计划 → ⽣产单据 → WCS 设备任务」转换链, 单据类型表把 14 种单据映射到任务类型与优先级(业务标识 / 单据编号 / 任务类型 三层编码解耦,配置驱动⽽⾮硬编码);按库区、货架列区间、 同⽔阀成组容量分配货位并施加出⼊库锁,资源不⾜时阻断审核并回报缺⼝。
双库域与瓶颈驱动优先级:并⾏管理栽培库(产品)与辅材库(槽板 / 隔板) 两个库存域及其间的⼊出库、移库、清洗流转;因 7 台设备与⼲净槽板皆为稀缺资源, 按瓶颈优先分级调度(待洗出库 8 > 产品出库 3 > 默认 1),避免清洗卡住分栽排产。
多设备异步状态机与 WCS 实时控制层同源实现:为堆垛机 / 穿梭⻋×3 / 四向⻋ / 机械⼿×2 共 7 台异构设备 设计分任务类型状态机(20+ 状态节点),以少量设备调度全库 3,940 货位, 解决任务排队、优先级与设备互斥;配套开发WCS 实时控制程序消费任务表、 直接与设备 PLC 收发指令码 / 反馈码,每台绑定独⽴ PLC 服务地址(多 PLC 分布式控制); 完成回报联动货位锁、槽板状态、单据、计划与种植履历,并在同⼀事务内归档历史表; 累计历史搬运任务 24,866 条。
货位级精准灌溉与三级闭环:590 个⽔阀 / 灯阀绑定到 货位粒度(⼀阀均覆盖 6~7 个货位,故货位分配按同阀成组容量判定); 界⾯不直接改阀态,⽽是⽣成带 PLC 指令码 / 反馈码的阀⻔任务交设备执⾏并防重, ⽀持开 / 关 / 半开三态与批量⼀键操作;在指令与反馈之外再接栽培槽液位检测, 构成「指令 → 设备反馈 → 液位实测」三级闭环,确认⽔真正到位; 可视化图表将货位占⽤ / 阀⻔开合 / 液位有⽆三维叠加于同⼀⽹格,⼀屏定位异常 (阀⻔任务历史 25,528 条)。原需每班 3⼈盯守调参, 改造后降⾄ 0 ⼈值守。
全链路批次追溯与⼯程化:种植履历作为核⼼事实表(累计 10,104 条), 可从采收成品反查原始种批;报警按设备机构级故障码建模(伺服驱动器、 限速器超速、变频器、横移计数、⾏程开关等)并含任务满⼊ / 空取防错校验; ⽀持多⼯⼚隔离与中英⽂双语,具备对外复制交付能⼒; 接⼝级权限⼆次校验、限流、全量操作⽇志,⾼⻛险操作设独⽴权限与⼆次确认。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论