基于单片机的船舱温度临界报警系统

: 针对传统的船舱温度临界报警系统,由于温度监控不到位导致报警不及时的问题,提出一个基于单片机的船舱温度临界报警系统设计。该设计将单片机作为核心控制硬件,控制系统整体电路。同时设计数据采集模块,利用温度测量仪测试船舱温度,传感器将数据置换成电信号,并以数据帧的形式将结果发送到报警模块,检测温度信号波幅,进行报警处理,至此报警系统设计完毕。实验结果表明,所设计的报警系统对于温度的监测结果更准确,报警率提高了 38.55%
关键词: 单片机 数据采集 数据置换传送 对比检测

0 引 言

船舱作为船舶承载旅客或货物的主要场所,对于该场所的安全性要求的更高,尤其是在温度方面。过高或过低的温度都会产生人身体不适、货物腐烂、融化变质等状况。因此要对船舱温度进行实时监测,当温度达到安全临界值时进行报警,保证人和货物的安全。传统的报警系统不够精确,不能及时监测到船舱温度的变化状况,导致不能及时报警。因此设计一个基于单片机的报警系统,加强监测能力,及时报警,保证船舶的使用安全。

1 基于单片机的船舱温度临界报警系统硬件设计

针对船舱的温度变化,设计一个基于单片机的温度临界报警系统硬件,利用该系统硬件对船舱内的温度进行及时的报警处理,保证船舶的航行安全。选用的单片机型号为 STC89C52 ,将其作为中央处理模块中的核心微处理器,控制报警系统电路。报警系统利用该单片机设置一个船舱温度监测控制电路,并将该电路与 AR847+ 温度测量仪相连接,进行船舱温度实时监测。此电路中有 4 个引脚,分别为 VCC GND TRIG以及 ECHO ,将其按照顺序标注为 A1 A4 的序号。该单片机控制下的系统电路如 1 所示。

2 船舱温度临界报警系统软件设计

在上述船舱温度临界报警系统硬件设计完毕的础上,为了保证该单片机工作的可靠性,设计报警系 统软件,对船舱温度进行实时监控及报警。

2.1 数据的采集与传输

首先建立一个船舱温度采集单元,进行船舱温度测量,并将测量结果通过中央处理单元模块发送到报警模块中。此时要考虑的环境因素有很多,包括船舱的整体面积、测量反应时间等因素。因此在船舱中预设若干个监测点,将温度测量仪放置在该点位上,得到测量结果。将测量的温度数据上传到中央处理单元中,此时中央处理单元对该温度数据进行统计,计算船舱的整体温度,计算公式如下:
式中: C n 为 个测量位置下的船舱平均温度; 为设置的温度测量位置数; 为当天的天气温度常数; 为船舱的干燥系数。处理单元依照上述公式得到船舱的平均温度,利用传输模块以数据帧的形式将该结果发送到报警模块中。
利用该数据帧将温度数据发送到报警模块,此时传输模块要保证传输数据的完整性。利用传感器将温度数据置换成电信号,数据置换公式为:
式中: 为置换后的温度数据置换函数; 为置后的换电信号强度; 为电信号波长; 为电信号强度波动函数。将置换后的温度数据组成数据帧,打开传感器传送端口,编制数据发送指令,将数据实时发送到报警模块中

2.2 检测报警

报警模块接收到上述的电信号后,进行检测与分析,并对于温度异常的信号进行报警处理。检测报警模块在温度临界报警系统中处于极为重要的位置,它对接收到的数据信号进行分析,根据温度临界值划分风险等级,并按照等级迅速报警。此时,报警模块根据电信号 的波动幅度进行检测:
式中: 为信号波动幅度; 为信号传输速率; 为信号波段变化时长; 为每一波段的信号总量。根据得到的信号频率设置报警系统运行状态,如 1 所示。
根据 1 可知,进行信号频率监测后,进行报警判断。当此信号波动幅度平稳没有大起大落时,说明测量得到的船舱温度是安全的,不会发生危险;当温度信号波动异常且波幅较大时,说明船舱温度产生剧烈变化,此时将该数值与温度临界预警值相对比,判断剧烈波动的数据信号是否超过临界门限。当该信号没有超过报警门限时,说明此时的船舱温度在允许波动范围内,为正常状态;如果该信号值超过临界值,则令该系统立即发出警报,各报警状态的处理方法如 表 2 所示。
根据 2 可知,当船舱温度处于临界值以下时,报警系统不会发出任何反应;当温度达到或者超过温度临界值时,报警系统通过主控程序发出声光警报,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/24725.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据库分库分表mycat

为啥要分库分表 IO瓶颈:热点数据太多,数据库缓存不足,产生大量磁盘IO,效率较低。 请求数据太多,带宽不够,网络IO瓶颈。 CPU瓶颈:排序、分组、连接查询、聚合统计等SQL会耗费大量的CPU资源&#…

为什么PPT录制没有声音 电脑ppt录屏没有声音怎么办

一、为什么PPT录制没有声音 1.软件问题 我们下载软件的时候可能遇到软件损坏的问题,导致录制没有声音,但其他功能还是可以使用的。我建议使用PPT的隐藏功能,下载插件,在PPT界面的加载项选项卡中就能使用。我推荐一款可以解决录屏…

HTML静态网页成品作业(HTML+CSS)—— 保护环境环保介绍网页(1个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有1个页面。 二、作品演示 三、代…

10倍速开发开关电源:PSIM DLL集成指南与如何单步调试你的代码

文末有彩蛋哦。 去年提到要写一篇如何在利用PSIM Visual Studio进行仿真联调,加速实际嵌入式端C代码的开发,但因为懒一直没兑现。 本期简单总结下实现的方法。 特别声明:本文约一半以上内容有kimi/文心一言提问式生成,仅用于技…

【Redis】 Redis 集成到 Spring Boot上面

文章目录 🍃前言🎄Spring Boot连接redis客户端🚩项目的创建🚩配置端⼝转发🚩配置 redis 服务地址🚩更改 Redis 配置文件🚩使用 StringRedisTemplate 类操作 🎍Spring Boot操作Redis客…

107.网络游戏逆向分析与漏洞攻防-装备系统数据分析-装备信息更新的处理

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 如果看不懂、不知道现在做的什么,那就跟着做完看效果 现在的代码都是依据数据包来写的,如果看不懂代码,就说明没看懂数据包…

ChatGPT3.5和ChatGPT4.0、ChatGPT4o对比

一、ChatGPT3.5、ChatGPT4.0、ChatGPT4o对比 目前ChatGPT有三个主要版本,分别是ChatGPT3.5、ChatGPT4.0、ChatGPT4o,这三个版本之间有什么差异呢? 对比项ChatGPT3.5ChatGPT4.0ChatGPT4o参数数量1750亿约1万亿未公开输入文本文本、图片文本、…

【el-tooltips改造】Vue实现文本溢出才显示el-tooltip,否则不显示el-tooltips

实现原理: 使用disabled属性控制el-tooltip的content显示与隐藏; 目标: 1行省略、多行省略、可缩放页面内的文本省略都有效。 实现方式: 1、自定义全局指令,tooltipAutoShow.js代码如下(参考的el-table中的…

Java——数组排序

一、排序介绍 1、排序的概念 排序是将多个数据按照指定的顺序进行排列的过程。 2、排序的种类 排序可以分为两大类:内部排序和外部排序。 3、内部排序和外部排序 1)内部排序 内部排序是指数据在内存中进行排序,适用于数据量较小的情况…

Type-C转音频(C/3.5mm接口USB2.0数据传输)带PD充电低成本解决方案

LDR6500:领先市场的USB-C DRP接口USB PD通信芯片 产品介绍 LDR6500,由乐得瑞科技精心研发,是一款针对USB Type-C标准中Bridge设备而优化的USB-C DRP(Dual Role Port,双角色端口)接口USB PD(Po…

2024年安全现状报告

2024 年安全现状报告有些矛盾。尽管安全专业人员的道路困难重重,比如说严格的合规要求、不断升级的地缘政治紧张局势和更复杂的威胁环境,但整个行业还是在取得进展。 许多组织表示,与前几年相比,网络安全变得更容易管理。组织之间…

压缩视频在线压缩网站,压缩视频在线压缩工具软件

在数字化时代,视频成为了人们记录和分享生活的重要载体。然而,视频文件一般都非常大,这不仅占据了大量的存储空间,也给视频的传输和分享带来了不便。因此,压缩视频成为了许多人必须掌握的技能。本文将详细介绍如何压缩…

Winddow系统下关于Golang使用Cgo的配置

1.配置CGO_ENABLED为1 go env -w CGO_ENABLED1 2.安装gcc环境,否则出现cgo: C compiler "gcc" not found: exec: "gcc": executable file not found in %PATH%错误 安装包:链接:https://pan.baidu.com/s/1sgF9lijqGeP…

Python在股票交易分析中的应用:布林带与K线图的实战回测

引言 在股票交易的世界中,技术分析是投资者们用来预测市场动向的重要工具。布林带(Bollinger Bands)作为一种动态波动范围指标,因其直观性和实用性而广受欢迎。本文将通过Python代码,展示如何使用布林带结合K线图来分…

在windows下使用本地AI模型提供翻译、对话、文生图服务

文章目录 在windows下使用本地AI模型提供翻译、对话、文生图服务ollama简介下载安装配置环境变量模型安装目录服务监听地址跨域配置我的配置注意事项 开机自启 使用运行模型对话时的命令 查看本地已安装模型删除模型 查看ollama支持的模型 Docker Desktop简介下载安装配置开机自…

STM32智能小车学习笔记(避障、循迹、跟随)

我们使用的是STM32CubeMX软件和MDK5 芯片使用的是STM32F103C8T6 完成对STM32CubeMX的初始化后开始我们的第一步点亮一个LED灯 一、点亮LED灯 点亮PC13连接的灯 打开STM32CubeMX软件,pc13设置为输出模式 然后按照这样配置,user label 设置成这个IO口代…

FJSP:烟花算法(FWA)求解柔性作业车间调度问题(FJSP),提供MATLAB代码

一、烟花算法介绍 参考文献: Tan, Y. and Y. Zhu. Fireworks Algorithm for Optimization. in Advances in Swarm Intelligence. 2010. Berlin, Heidelberg: Springer Berlin Heidelberg. 二、烟花算法求解FJSP 2.1FJSP模型介绍 柔性作业车间调度问题(Flexible …

ubuntu 用户名及密码忘记操作

1、重启系统,长按Shift键,直到出现菜单,选则高级设置。选择recovery mode,即恢复模式 2、选择root 3、# 后面敲入 sudo passwd 用户名 4、# passwd "用户名" 之后再敲两次密码就可以了。(如果提示修改失败可先执行&a…

在C++中用3种方法访问一个字符串

1.用字符数组存放一个字符串 编写程序: str是字符数组名,它代表字符数组的首元素的地址,输出时从str指向的字符开始,逐个输出字符,直至遇到\0为止。 2.用字符串变量存放字符串 编写程序&…

PaddleSpeech MFA:阿米娅中文音色复刻计划

PaddleSpeech:阿米娅中文音色复刻计划 本篇项目是对iterhui大佬项目[PaddleSpeech 原神] 音色克隆之胡桃的复刻,使用的PaddleSpeech的版本较新,也针对新版本的PaddleSpeech做了许多配置之上的更新并加入了自己对语音的对齐、配置、训练其它任…