在展开各业务模块之前,先明确本系统的技术基座。整套方案的前端呈现层由 HT(HT for Web) 承担——它是一款基于 WebGL 与 Canvas 的纯前端图形引擎插件,具备 2D 组态面板与 3D 场景渲染能力。系统整体的数据链路可以抽象为四个层次:
数据链路的分层结构(自上而下):
- 数据源层 —— 各类传感器与业务系统
- 采集转发层 —— IoT 网关 / 业务后端
- 传输通道层 —— WebSocket / HTTP / MQTT 等前端可对接的协议
- 脚本解析层 —— 前端 JavaScript 解析数据帧并分发
- 渲染呈现层 —— 依托 HT 可视化引擎,驱动 2D 面板图元与 3D 模型属性动态更新

系统的数据接入不绑定特定通信协议。WebSocket、HTTP 轮询、MQTT over WebSocket、SSE 等浏览器环境可支持的通信方式均可选用。前端拿到结构化数据帧(以 JSON 为主),由 JavaScript 脚本解析后,依托 HT 可视化引擎能力,将数值写入对应的 2D 面板图元或 3D 模型节点,驱动画面动态更新,实现数据源与渲染层解耦,方便后续扩展。
三维资产采用前置轻量化的工作流:大棚、奶牛、增氧机、乡村建筑等模型,先在 3ds Max / Blender 中完成轻量化建模,包括控制面数、合并材质、烘焙贴图,导出后载入 HT 场景。模型金属度、粗糙度、透明度、自发光等视觉属性不在建模软件中写死,而是在 HT 材质编辑器内配置。材质参数因此支持运行时读写,JavaScript 可动态调整,支撑告警染色这类动态视觉效果。
下面按原文的业务顺序,逐一拆解每个功能模块的实现逻辑。
农林牧综合化数据大屏
功能描述
基于 HT for Web GIS 产品结合遥感数据,构建交互式农林牧数据分析平台,提供播种分析、牛只管理、设备查询等功能;地图板块展示农场与村集体地理位置、地块与作物分布;分析页面展示农田统计、季度播种占比、农机及项目数量。特色能力是对地块按地温状态、微生物活性、作物发育预估进行颜色叠加分类。

实现拆解
(1)GIS 底图与图层体系
GIS 大屏的基础是多源地图服务的叠加:底图(影像图/矢量图)作为最底层,其上按业务语义划分为农场区块图层、地块图层、作物分布图层、设备 POI 图层等。每一图层都是独立管理的图元集合,可单独控制显隐、透明度与渲染顺序。前端通过开关图层的 visible 属性,即可实现"只看牛只"或"只看灌溉设备"的视角切换——这是设备查询、牛只管理入口的技术本质。
(2)遥感数据的"值染色"实现
地温状态、微生物活性、作物发育预估这三类数据来源于卫星遥感观测。实现的关键在于连续数值到离散色带的映射:
- 后端将遥感反演结果按地块(或栅格)下发,每个地块携带一个数值与一个语义类别;
- 前端脚本根据数值区间查询色带表(如地温由低到高对应蓝→绿→黄→红),计算该地块应呈现的颜色;
- 调用 HT API 将颜色写入地块多边形图元的填充属性,即完成"颜色叠加分类"。
由于地块图元的样式属性完全由数据驱动,当遥感数据周期性更新时,地图上的色块会随之刷新,形成动态的农情热力图。这是典型的数据可视化中"编码"环节——用颜色通道编码连续变量,比数字表格更符合空间分布的阅读习惯。

(3)点击交互与面板联动
监听画布点击事件,HT 通过拾取检测识别点击命中的地块、农场、设备标记等图元,回调返回对应图元业务 ID。脚本凭借该 ID 向后端查询详情,或是读取本地缓存数据,将信息展示在弹出的 2D 详情面板中。面板内图表、表格、文本等组件,通过接口接收数据并实时刷新。
(4)数据分析页
农田统计、播种占比、农机数量等属于传统 BI 呈现,由 2D 组态面板中的图表组件承担。数据经 HTTP 接口拉取后,由脚本写入图表图元的数据绑定属性触发重绘。切换页面本质是面板场景的切换,不涉及 3D 资源的重复加载。
智慧大棚监控
功能描述
模拟呈现温室大棚实时环境;用户可控制遮阳网、灌溉、补光灯、气流显示、风扇的启停;可模拟农作物生长过程;系统可根据时间、气象、土壤数据按规则自动启停设备;支持质量安全追溯、病虫害诊断防治、水肥一体化、土壤墒情监测。
实现拆解
(1)大棚场景的建模管线
大棚的三维场景(棚体结构、遮阳网、作物、风机、补光灯、灌溉管道)在建模软件中完成轻量化建模后导入 HT。材质在 HT 中配置:棚膜需设置为半透明材质(低透明度 + 高光泽),风机外壳配金属材质,土壤配高粗糙度漫反射材质。设备类模型(风机、灯)在建模阶段就应按"可独立控制的部件"拆分导出,这样导入 HT 后它们是独立的节点对象,脚本才能逐一寻址、逐一驱动。。

(2)设备控制的下行链路
这是本模块与纯展示大屏最大的差异——数据流是双向的。用户在大屏上点击"开启风扇":
- 前端脚本捕获点击事件,识别目标设备节点;
- 组装控制指令(设备 ID + 目标状态),经 WebSocket / HTTP 下发至后端;
- 后端下发到现场 PLC / 控制器执行,并将执行结果回传;
- 前端收到回执后更新设备状态:切换风机模型的旋转动画开关、点亮补光灯模型的自发光材质。
注意风扇"转动"不是播放一段视频,而是属性动画:脚本启动对风机叶片节点 rotation 属性的帧循环递增,每帧旋转一个小角度,连续渲染即形成转动观感。同理,"气流显示"通过在 HT 中生成流动的粒子或路径贴图动画来表现。
(3)农作物生长模拟
作物生长效果由时间轴驱动,采用多阶段模型切换方案实现。预先制作苗期、生长期、结果期等多套轻量化模型,当积温、生长天数等生长数据达到阈值时切换对应模型,并搭配渐显过渡,避免画面突变。
生长进度数据既可接入传感器实测数据做真实驱动,也可由前端按设定速率模拟演示,两种数据源面向渲染层提供统一接口。
(4)规则引擎与自动控制
后端订阅传感器数据流,按配置的规则(如"土壤湿度 < 40% 且时间在 06:00–18:00 则开启灌溉")触发设备控制,并通过上行通道把状态变更推送给前端。前端脚本收到推送后,同样以材质/动画手段呈现设备新状态。前端的角色始终是"状态的可视化终端",而非控制逻辑的承载者——自动控制与手动控制在数据层面最终收敛为同一种"设备状态变更事件"。
(5)墒情监测与告警表现
土壤温湿度、EC 值等传感器数据实时上行,面板图表曲线滚动更新。当某项指标越界(如土壤温度超上限),后端在数据帧中携带异常标记,前端脚本据此将该传感器关联的 3D 区域(如对应地块的土壤模型)材质染为警示色并启动脉冲闪烁动画,同时在 2D 面板将该数值标红
智慧养殖可视化
功能描述
构建动物数字孪生模型,根据行为、饮食、生长数据模拟动物生长与疾病发展场景,提前预警健康风险。包含身份管理(查看牛只位置、品种、喂养情况)与追溯体系(采购、饲料、养殖、加工、销售全流程登记追踪)。水产方面实现鱼塘生态监测、设备模拟仿真、二次过滤工艺流程监控。

实现拆解
(1)身份管理:点击拾取 + 业务档案联动
牛只个体在 3D 场景中是独立模型节点,且位置数据可动态更新(来自耳标/项圈定位)。实现"点击查看牛只属性"的链路是:
- 每头牛的模型节点在加载时挂载唯一业务 ID(耳标号);
- 点击事件命中牛只节点后,脚本取得耳标号,向后端请求该个体的档案数据(品种、日龄、今日采食量、健康评分);
- 数据回填至侧边 2D 详情面板。
定位数据驱动牛只模型在场景中移动(位置属性动画);采食、反刍等行为事件触发模型的状态动画切换。健康风险预警同样走"异常数据 → 材质染色/头顶状态标记闪烁"的渲染路径,例如亚健康个体的模型轮廓被染为黄色、病个体染为红色。
(2)追溯体系:全流程数据链的图形化
追溯页面是 2D 组态的典型应用:将"原材料采购 → 饲料制作 → 动物养殖 → 产品加工 → 产品销售"五个环节绘制为流程链图形,每个环节节点关联批次数据库记录。实现要点在于以批次号为主键的数据贯通:任一环节录入数据时打上批次号,查询时按批次号聚合全链路记录,前端将结果渲染为时间轴或环环相扣的流程图。数据查询接口走常规 HTTP,页面属于 2D 组态范畴。
(3)水产养殖:传感器网格 + 工艺流程可视化
- 养殖环境可视化:水温、水质(溶氧/pH)、光照、鱼群分布等指标由分布各处的传感器采集,经网关上行。前端按数据源地址分发到对应图元:数值进面板仪表盘,鱼群分布数据可驱动水体中鱼群粒子/模型的密度与位置变化。
- 设备模拟仿真:储液罐、取水泵、浮式增氧机、二次过滤系统均在建模软件中轻量化建模后导入 HT。储液罐水位是本节的经典实现——罐体做半透明材质,内部液面用一个可缩放的平面/柱体模型表示,脚本根据水位传感器数据实时调整液面模型的高度与位置,形成"看得见的水位计"。设备工作状态则通过启停动画(泵叶轮旋转、增氧机水花粒子)与状态灯材质(绿/红发光切换)表达,效率类指标回传至 2D 面板。异常感知同样依靠材质染色与闪烁动画。
- 二次过滤工艺流程监控:过滤工艺以 3D 管线流程图呈现——水流的流向用管线内流动贴图动画(UV 滚动)或粒子沿路径运动来表现;过滤效果数据(进出水浊度对比等)实时展示在 2D 面板,形成"工艺看得懂、数据对得上"的双层呈现。
Low Poly 农场田园
功能描述
以 Low Poly 3D 轻量化风格实现农业区域网格化管理,覆盖远程诊断、安全追溯、信息监测、安全预警;部署土壤湿度/温度/光照传感器,智能调节灌溉设备实现按需灌溉,支持移动端监控。
实现拆解
(1)Low Poly 风格的技术意义
Low Poly 不只是美术偏好,而是一项工程决策:低面数模型显著降低 GPU 绘制压力,使得在浏览器中流畅渲染整个农场尺度的场景成为可能(高保真建模在大场景下帧率难以维持)。面数削减带来的是几何细节损失,因此靠色块化材质 + 顶点色/大色块贴图补偿视觉表现——这恰好与"材质在 HT 中配置"的管线契合:每个模型只需极少量材质槽位,且均为可被脚本改写的纯色/渐变材质,染色告警的实现成本反而更低。
(2)网格化管理与按需灌溉
农场被划分为管理网格,每个网格绑定一组传感器。按需灌溉的控制闭环为:传感器上报土壤湿度 → 后端规则判断该网格是否低于灌溉阈值 → 触发对应网格灌溉设备开启(时长按亏缺量计算)→ 状态推送前端。前端呈现上,正在灌溉的网格块以蓝色半透明材质高亮或显现水滴粒子动画,网格湿度状态以色阶渲染——网格化管理在视觉上就是"以网格图元为最小染色单元"的地图呈现。
(3)移动端适配
HT 渲染基于 WebGL/Canvas,天然运行于浏览器环境,移动端监控只需做响应式布局与交互适配(点击/手势事件映射),无需另建客户端。监控入口与数据通道(HTTP/WebSocket)在移动浏览器中同样可用。
智慧农贸
功能描述
农产品调度中心大屏展示监控视频、质量检测结果、园区运行状况、生产现场、灾情与作物情况;展示各市场交易数据(价格、销量、交易金额排名);集成库存、物流、天气、价格变动、供应链动态;支持交易金额统计、交易趋势、检验公示列表、客流量/车流量/货物存量的数据与视频监控。

实现拆解
(1)视频融合
监控视频接入大屏有两条常规路径:一是 2D 面板内嵌视频窗口——视频流经流媒体服务器转码为浏览器可播放的协议(如 HLS/WebRTC),由面板中的视频组件承载;二是进阶的三维视频融合——将视频画面作为纹理投射到 3D 场景中的对应平面/建筑表面(视频投影融合),使监控画面与空间位置直接对应。后者对相机标定与画面矫正有额外要求,但空间感知显著更强。
(2)多源异构数据的集成与排名呈现
交易数据(价格、销量、金额)、库存、物流、天气、供应链动态来自不同业务系统,前端层面统一收敛为"数据订阅 → 图元更新"的单一模式:每个数据源一个订阅通道(HTTP 轮询或 WebSocket 推送),每个通道绑定一组面板图元。排名类信息(销量榜、金额榜)由脚本对数据排序后驱动榜单图元的顺序与数值刷新;趋势类信息进图表组件做滚动更新。
(3)检验公示与流量监控
检验公示列表本质是数据表格图元 + 定时拉取;客流量/车流量可由前端对接闸机/摄像头计数系统的统计接口获得,趋势曲线与实时数值双呈现,异常聚集时以染色与动画提示。
智慧乡村综合管控
功能描述
1:1 建模还原乡村全貌,从数字安防、智慧康养、智慧旅游建立综合管控平台;乡村巡检漫游;康养场景监测人员健康与环境数据,连接电子血压计、体温计等智能医疗设备,实时监测健康状况并提醒健康管理。

实现拆解
(1)1:1 场景建模与漫游
乡村全貌模型量大,建模阶段的轻量化策略尤为关键:建筑按结构合并、减面,重复构件(路灯、树木、栏杆)复用同一模型实例化加载,控制整体面数与 DrawCall。巡检漫游的实现核心是相机路径动画:预先在场景中定义巡检路径(一组空间坐标点)与关键点位,脚本驱动相机沿路径插值移动,途经点位时自动减速、聚焦目标区域并弹出该点位的监测信息面板;也可开放手动模式,由用户拖拽视角接管。漫游过程本质是一段"相机参数 + 面板状态"的时间轴脚本。
(2)数字安防
安防摄像头点位以 POI 标记呈现在乡村模型上,点击标记联动对应视频画面(复用第六节的视频接入能力);告警事件(周界入侵、异常聚集)由后端安防系统推送,前端将告警点位标记染红闪烁并自动将相机飞行(camera flyTo)至事发位置——"自动镜头调度 + 染色标记"是 3D 安防场景的标准告警表达。
(3)智慧康养
康养功能是典型的"传感器 + 平台 + 前端呈现"三层结构:
- 网络与传感基础设施(血压计、体温计等智能医疗设备)经蓝牙/网关将测量数据上传信息管理平台;
- 平台完成数据归档、阈值判断与提醒生成;
- 前端订阅个体健康数据流,面板呈现测量曲线与最新数值,异常时(血压超阈值等)对该居民关联的模型/卡片执行染色告警,并推送提醒至其本人与医护人员界面。
医护人员端的"参考与决策依据"即为该数据面板的历史趋势与实时状态汇总,不涉及额外的渲染技术,重点在数据组织的完整性与提醒的及时性。
关键技术要点回顾
将各模块的实现逻辑收敛,本系统的技术骨架可归纳为五条:
从业务视角看,无论场景是大棚、牛舍、鱼塘还是乡村,所有功能最终都落在同一种开发范式上:以数据帧为输入、以图元属性为输出、以材质与动画为状态语言。理解了这一范式,数字孪生可视化系统的各业务模块就不再是一个个孤立的功能点,而是同一套技术骨架在不同农业场景下的实例化表达。


1650

被折叠的 条评论
为什么被折叠?



