物联网(IoT)支持的小型水处理厂实时硬件在环(HIL)仿真

embedded/2024/11/15 6:05:10/

这篇论文的标题是《Real-Time Hardware-In-The-Loop Simulation of IoT-Enabled Mini Water Treatment Plant》,作者是 Mohamad Taib Miskon 等人,发表在 2024 年 IEEE 自动控制与智能系统国际会议(I2CACIS)上。以下是该论文的主要内容概述:

  1. 研究背景

    • 论文讨论了在马来西亚沙巴州偏远地区,由于地理位置复杂、地形崎岖和交通基础设施不足,传统的供水系统难以覆盖。
    • 作为提供清洁水给沙巴州Lok Dangkaan村庄的一部分,本研究开发了一个专门的小型水处理和过滤系统。
  2. 硬件在环(HIL)技术

    • 采用硬件在环(HIL)框架来支持为Lok Dangkaan的小型水处理厂开发电子控制单元(ECU)。
    • HIL技术通过结合实际硬件和系统动态的软件仿真,增强了原型开发过程。
  3. 系统设计

    • 系统由两套设备组成,每套代表目标部署地点的不同水储存罐位置,使用树莓派作为核心嵌入式控制器。
    • 采用图形用户界面(GUI)展示当前水位和每个位置泵的激活情况。
    • 通过为该地区配置的MQTT协议中继信息。
  4. 研究方法

    • 定义了项目目标,重点是双站点设置:站点1作为收集池塘(罐1),站点2包括过滤系统和储存罐(罐2)。
    • 主要目标是建立一个鲁棒的控制器系统,管理两个站点的水过滤系统的所有关键元素,包括泵、指示器、开关、水位传感器、数据记录、远程监控和水使用量调节。
  5. 硬件和软件开发

    • 电子控制单元(ECU)包括控制面板、树莓派、接触器继电器、灯指示器、选择开关和Arduino Nano。
    • HIL部分包括嵌入在Arduino Nano中的水箱填充模型。
  6. GUI开发

    • 使用开源软件Node-RED开发了GUI,使用SVG图形,每个元素都有其独特的ID。
  7. 实验结果

    • 功能性测试旨在评估系统的操作能力和响应性,包括所有主要功能,从手动控制到界面交互和连接协议。
    • 测试结果表明,系统的所有测试项都表现出令人满意的性能,包括手动启动/停止操作、通过GUI的启动/停止操作、GUI的响应性和更新、灯指示器、MQTT连接、低水位指示器和溢流指示器。
  8. 结论

    • 研究工作对于实施定制的HIL仿真,针对偏远地区的小型水过滤系统具有重要意义,这些地区的传统供水服务无法到达。
    • 功能性测试证实了HIL设置的输入/输出罐仿真的系统操作有效性,所有测试项都显示出令人满意的性能。
    • 论文提出,未来的工作可以集中在提高GUI的响应性,以提供更无缝的用户体验,并探索集成高级诊断功能和机器学习能力,以实现泵操作的预测性维护、预测村庄的水使用情况以增强水管理,并减少中断或短缺的可能性。
  9. 致谢

    • 作者感谢UiTM Terengganu提供测试原型所需的实验室设施,以及马来西亚财政部下属的Unit Pelaksanaan dan Koordinasi Stimulus Ekonomi Antara Agensi Nasional (LAKSANA) 和沙巴州Baitulmal Negeri Sabah (PBNS)在资金计划下对这项工作的支持。

论文详细介绍了一种实时HIL仿真系统,用于物联网(IoT)支持的小型水处理厂,强调了在实际部署前进行预部署验证和可靠性评估的重要性。


http://www.ppmy.cn/embedded/105404.html

相关文章

【C++拓展(一)】后端开发常用的技术栈

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 C拓展 1. 前言2. 语言层面3. 设计模式层面4. 开…

9.03.

#include <iostream>using namespace std;/*-------------------------------------------------------------*/ class RMB {static int count; private:int yuan;int jiao;int fen; public://获得当前RMB数量static int RMBNUM(){return count;}RMB(){count;}RMB(int yu…

django学习入门系列之第十点《django中数据库操作--创建与删除表》

文章目录 django创建与删除表开始创建表创建指令新增表删除表删除列新增列修改报错提示语言总结 往期回顾 django创建与删除表 删除表 创建表 修改表 操作目录 开始创建表 class text_into(models.Model):name models.CharField(max_length32)password models.CharField…

三级_网络技术_54_应用题

一、 请根据下图所示网络结构回答下列问题。 1.填写路由器RG的路由表项。 目的网络/掩码长度输出端口__________S0&#xff08;直接连接&#xff09;__________S1&#xff08;直接连接&#xff09;__________S0__________S1__________S0__________S1 2.如果将10.10.67.128/2…

C++复习day02

一、库函数的模拟实现 1.memcpy的使用和模拟 首先先来了解一下memcpy函数的作用是什么&#xff1f; void * memcpy ( void * destination, const void * source, size_t num );函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。这个函数在…

电脑连接公司服务器记住了账户密码,怎么换账户呢?

今天&#xff0c;有同事找到我&#xff0c;说共享连不上去了&#xff0c;我去试了下&#xff0c;知道了原因&#xff1a;由于我将之前使用这台电脑的人的账户在后台禁用了&#xff0c;所以这台电脑连不上服务器了&#xff0c;也不是连不上&#xff0c;而是之前是记住了账户密码…

Python使用总结之Flask-SocketIO介绍

Python使用总结之Flask-SocketIO介绍 一、Flask-SocketIO简介 Flask-SocketIO 是一个基于 Flask 的扩展库&#xff0c;用于在 Flask 应用中实现 WebSocket 通信。WebSocket 是一种双向通信协议&#xff0c;允许服务器和客户端之间在不重新建立连接的情况下进行实时数据交换。这…

【SpringBoot】自动配置原理

Spring Boot 自动配置原理是 Spring Boot 提供简化 Spring 应用程序开发的核心特性之一。 它使得开发者无需编写大量的配置代码就能让应用程序具有很多常见的功能。 以下是 Spring Boot 自动配置的基本原理和工作流程&#xff1a; 通过 SpringBootConfiguration 引入了 Enabl…