您当前位置: 首页 > 技术中心 > 医院轨道物流三维数字孪生平台开发概要

医院轨道物流三维数字孪生平台开发概要

发布日期:2023.05.15
关注与分享:

图 三维轨道编辑器界面


图 数字孪生应用界面项目截图


一、项目概况

1.1 医院轨道物流传输系统

在医院运行过程中,需要在不同科室间传递大量的药品、医疗器械、单据、标本、血液等小型物品,需要医护人员频繁往来于各个科室,存在效率低,劳动强度大和医疗物品意外损坏等问题,影响医院的正常运行和患者的就诊体验口。轨道式物流传输系统可解决上述问题,实现医院多科室、病区间的物料传递工作,是当前行业主流的方案。『本文由“物图科技”原创』


在智能轨道物流传输系统中,收发站点根据实际需求被 规划在不同的房间中,各个收发站点之间通过轨道和转轨器相连,运载小车能够在转轨器的配合下在不同的轨道上行驶,完成不同地点间的立体的、点对点的物品运输。


图 智能轨道物流传输系统示意图


图 医院轨道物流工作现场实际图


1.2  项目需求

本项目主要是为医院轨道物流系统配套的数字孪生软件,主要需求如下:


 管理和发布三维轨道地图:可在系统中管理多个项目的三维轨道地图,实现地图的创建、修改、复制、删除等功能;

 三维轨道地图拖拽式编辑:可在系统中以鼠标拖拽的方式创建和修改三维轨道地图,预览轨道小车在轨道上的运动路径;

 轨道地图数字孪生应用:对接医院轨道物流系统后台API,实时获取轨道小车位置和状态,小车平滑状态显示,当小车异常时,有告警动画。


医院轨道物流传输系统的数字孪生通过三维可视化技术,将医院内轨道物流的运输过程、状态、位置等信息呈现在屏幕上,以便医院管理人员实时监控和管理机器人物流,主要包括:



  • 运输过程可视化:将轨道小车物流的运输过程呈现在屏幕上,包括轨道小车的起点、终点、路径等信息,以便管理人员实时监控和管理机器人物流。
  • 状态监控可视化:将轨道小车物流的状态呈现在屏幕上,包括轨道小车的电量、故障、维修等信息,以便管理人员及时发现和处理轨道小车物流的问题。
  • 位置追踪可视化:将轨道小车物流的位置呈现在屏幕上,包括轨道小车的实时位置、历史轨迹等信息,以便管理人员了解轨道小车物流的位置和运行情况。
  • 数据分析可视化:将轨道小车物流的数据呈现在屏幕上,包括轨道小车物流的运输量、效率、成本等信息,以便管理人员进行数据分析和决策。



本项目主要实现医院轨道物流传输系统的数字孪生模块,帮助用户生产与发布不同项目的三维轨道,从而实现医院轨道物流的三维可视化功能。『本文由“物图科技”原创』


1.3  轨道物流系统构成

轨道物流传输系统主要由轨道、运载小车、转轨器、收发站点、车库、防风门、断轨器、PC上位机、控制器和通信系统等组成。【1】


轨道:轨道一般由铝合金材料制成,分为直轨、水平弯轨和垂直弯轨。 根据小车车厢悬挂方式的不同,轨道一般安装在建筑的顶部或墙面上端以充分利 用空间,避免与人流或地面设备的冲突。轨道上贴有定位标签, 用于小车的定位 和控制系统的调度、控制等。同时,轨道上集成直流供电线以及通信线, 用于系 统中各种设备的供电和通信。


运载小车: 运载小车是轨道物流传输系统中任务的具体执行者, 物品通 过运载小车由一个收发站点被运送到指点的收发站点。运载小车由微型计算机控 制,由高性能伺服电机或步进电机驱动。 同时,运载小车集成定位标签读码器, 能够在车辆移动过程中快速读取轨道上的定位标签中的编码信息,通过与存储在 内存中的位置数据库信息作对比即可确定小车位置信息,系统基于这些位置信息 可完成系统整体调度以及各种设备的自动控制。运载小车的前后部位均安装有激 光测距传感器,小车会根据自己和前后方车辆的距离信息自主控制车速和启停。 


转轨器: 转轨器是切换小车行驶轨道的设备。不同轨道间由转轨器连在 一起,通过路径上不同转轨器的轨道切换,小车能够顺利地驶向目标收发站点完 成运输任务


收发站点: 收发站点是轨道物流传输系统的终端, 工作人员在收发站点 处的触摸屏上完成各种操作,包括发出调车、发车和存车等基本指令,也可以通 过触摸屏查阅历史信息、查询任务小车的状态、位置等。


车库: 车库是存储未被调度使用的空闲小车的特殊的轨道。在智能轨道物流传输系统中, 车库一般设置在运输繁忙的收发站点附近或走廊、 竖井的尽头。 当小车处于空闲状态时,系统将调度空车前往最近的车库待命。


防风门: 防风门的作用是防止空气对流和防噪。 当车厢固定在车架上时, 防风门由小车直接撞开。当车厢通过轴承侧挂在车架上时,小车不可直接撞开防 风门,而是在读取到特定的定位标签后由控制器控制防风门的开闭。


断轨器: 断轨器主要分布在建筑物防火门、防火窗所在的区域, 当建筑 物发生火灾时断轨器将自动断开轨道以便防火门和防火窗关闭。


PC 上位机: PC 上位机能够图形化整个智能轨道物流传输系统,实时显 示系统的运行状态,记录收发任务信息、 设备故障信息,并将各种信息存储到数 据库中以便查询。同时, PC 上位机拥有控制系统中任何一台设备的具体动作的权 限,工作人员或维护人员可利用该权限从 PC 上位机上直接下达具体任务指令或对 系统中的特定设备进行操作和维护。


控制器: 控制器是整个控制系统的大脑, 负责系统的调度和控制等。系 统中各种传感器、读码器的数据将进入不同的控制器进行分析和处理,之后,各 个控制器将基于这些输入数据完成各种设备底层驱动器的自动控制。


二、开发概要

2.1 开发选型

根据用户需求,平台以BS架构、三维可视化交互方式生产轨道数据,且生产的数据应能集成到现有业务系统中,支持在线和离线两种部署方式。


客户最终选择物图VAPS编辑器平台,采用定制的方式实施本项目,物图提供定制源码、用户手册和二次开发手册,项目一个月发布初版,两个月验收,目前已成功应用于多个项目上。『本文由“物图科技”原创』


VAPS编辑器是物图面向行业推出的一套轻量级低代码三维可视化编辑与开发平台。


图 技术架构示意图


图 功能流程示意图


2.2  三维轨道编辑器

2.2.1 轨道拼接

从模型库中选择不同的轨道拖入到场景中,点击轨道连接点加入新的轨道,可对轨道进行缩放、旋转、移动等操作。


图 轨道拼接图


2.2.2 绑定RFID标签

将RFID点位拖拽到轨道上,自动添加吸附在轨道上的RFID点位,可修改RFID名称、拖拽移动点位位置。



2.3  关键算法

物图VAPS轨道地图发布后,在数字孪生应用中实现小车的位置、路径预览、路径渐移等效果,需要模拟系统定位方案,从而根据系统给出的位置数据孪生出上述效果,如给定始发站和终站点的位置信息,预览路径。


2.3.1 RFID定位

智能轨道物流传输系统主要采用RFID定位方案:


1、已经编码好的 RFID 标签贴于轨道上合适位置, RFID 读卡器则安装在小车车架上靠近轨道上标签 1~2cm 的位置。

2、将各个 RFID 标签的位置、距离等信息存储在位置数据库中。

3、当小车移动到 RFID 标签上方一定区域时, RFID 读卡器自动读 取 RFID 标签中存储的编码信息并写入小车控制器, 小车控制器只要将收到的编码信息和预先存储在内存中的位置数据库信息作对比就能知道小车当前的具体位置 并进行相应的动作。


小车控制器也会将读取的 RFID 编码信息通过通信网络 发送给其他设备,便于控制系统的整体调度和其他设备的控制。『本文由“物图科技”原创』


2.3.2 RFID最短路径

轨道物流传输系统控制系统的调度规划问题的本质是图论中的最短路径问题。 通过选取合适的 RFID  标签构成带权重值的邻接矩阵以及选择合适的最短路径算 法,就可以求解出各个收发站点和车库间的最短距离以及最短路径经过的所有 RFID 标签。


最短距离可以用来完成控制系统的调度规划,而最短路径可以进一 步生成控制标签用以控制小车、转轨器、防风门和断轨器等具体设备。


图 RFID 权重示意图


图 求最短路径图算法


2.3.3 轨道最短路径

RFID最短路径算法得出RFID序列,由于RFID的位置分布并非呈直线连接状态,两个相邻的RFID所在的轨道会存在竖起角度、水平角度大于等于90度的情况,当小车根据RFID序列直接做渐移运动时,小车将脱离轨道,因此在三维程序中无法直接使用,需要结合轨道中心点做合并计算。


因此,在轨道模型中心线增加了若干点,将这些点位位置加入到RFID中再计算最短路径。


2.4 其它技术点

2.4.1 小车朝向

在物图VAPS发布的三维地图中,轨道模型旋转角度不同,实际项目中要求小车永远处于轨道的正上方,且小车存在往返状态,因此不必考虑左右朝向,需要计算小车的上方朝向,即小车对象的UP属性。


默认给定一个UP值,在根据轨道的分布,在地图编辑页面,指定轨道的小车UP值,在实际同步小车状态时,根据轨道自带的小车UP值赋值。


 adjustCarDirection(car, lookAtVec, model) {
    if (!car || !lookAtVec) return;
    if (model && model.properties) {
        try {
            let up = model.properties.up;
            if (up) {
                up = up.split(",").map(d => +d);
                _tempUp.set(up[0], up[1], up[2]);
            } else {
                _tempUp.set(0, -1, 0);
            }
            if (!car.up.equals(_tempUp)) {
                car.up.copy(_tempUp);
            }
        } catch (e) {
            car.up.copy(_tempUp);
        }
    }
    if (lookAtVec && lookAtVec.isVector3) {
        car.lookAt(lookAtVec);
    }
}
图 小车朝向设置方法


2.4.2 小车预警

当同步小车的状态异常里,可添加WaveCircle对象,实现预警效果,WaveCircle对象是一个波动圈,可赋值颜色、大小等参数。


图 预警示意图




const circle = new THING.WaveCircle({
    position: [0, 0.25, 0],
    geometry: {
        radius: 2,
    },
    material: {
        depthTest: true,
        uniforms: {
            uColor: ShowColor,
        }
    }
});
图 Wavecircle 创建代码






2.4.3 小车编号 

项目中轨道小车的数量一般都有几十台,需要在小车模型上添加不同的编号,使用Label2对象动态添加文本编号。



const label = new THING.Label({
    position: position,
    rotation: rotation,
    geometry: {
        width: 0.04 * carCode.length,
        height: 0.06,
    },
    material: {
        map: {
            text: carCode + "",
            fontSize: 36,
            fontFamily: "gravedigger, microsoft yahei",
            fontStyle: "italic",
            fontColor: "#5E90A1",
            strokeWidth: 0,
        }
    }
});
car.add(label);
图 添加小车编号



本文由“物图科技”原创,其版权属物图科技所有。其他媒体、网站或个人未经授权严禁转载,不得歪曲和篡改本文所发布的内容。



参考文献

【1】李静恒 智能轨道物流传输控制系统研究[D].   成都;电子科技大学,  2020

Copyright © 苏州物图科技有限公司 版权所有 备案号:苏ICP备20005933号-1
0.081765s