融合注意力机制的YOLOv5火焰识别+Arduino UNO R3实现5s内连续识别到火焰,警报灯红灯亮起

效果:摄像头捕获室内图像,将视频实时通过串口通讯传递给改进之后的YOLOv5神经网络进行火焰识别,若5s内连续检测到有火焰,警报灯变红,进入危险状态。5s之内未连续出现火焰,警报灯变绿,进入安全状态

一、PyCharm和Arduino进行串口通信调试

这里以双色LED灯为例子,PyCharm进行串口通信控制LED灯2s之后变红,延迟30ms之后再变绿
所需材料:
在这里插入图片描述
双色LED灯
在这里插入图片描述
Arduino UNO R3核心板
在这里插入图片描述
PyCharm编译器
在这里插入图片描述
arduino编译器

二、Arduino代码

ArduinoLED灯
P10R灯
P11G灯
GNDGND

在这里插入图片描述

/***************************************************
Dual-color LED    Arduin Uno R3
R                  11
GND                GND
G                  10
****************************************************/int redPin = 11;    // select the pin for the red LED
int greenPin = 10;    // select the pin for the green LEDchar var;  void setup() 
{pinMode(redPin, OUTPUT); //set redPin as OUTPUTpinMode(greenPin, OUTPUT);//set greenPin as OUTPUTdigitalWrite(redPin,LOW);digitalWrite(greenPin,HIGH);Serial.begin(9600); 
}void loop() 
{while(Serial.available()>0)//当有信号的时候{var=Serial.read();if(var=='0')//传过来的是0{digitalWrite(redPin, HIGH);//red灯亮digitalWrite(greenPin, LOW);//green灯灭delay(3000); //delay 30ms }if(var=='1')//传过来的是1{digitalWrite(redPin, LOW);//red灯灭digitalWrite(greenPin, HIGH);//green灯亮delay(30); //delay 30ms}}
}

三、Python代码

s.enter(2, 0, func)
2表示延迟2s之后执行func函数,0表示优先级
func函数会发送0给Arduino,Arduino收到串口发送指令之后红灯亮,表示有火焰
延迟多少秒以及优先权级别可根据实际情况需要来设定
func1函数会发送1给Arduino,Arduino收到串口发送指令之后绿灯亮
s.enter(2, 0, func) 2s后调用func函数,发送0,红灯亮,优先级为0
s.enter(5, 1, func1) 5s后调用func1函数,发送1,绿灯亮,优先级为1

最终的效果为:2s后红灯亮、5s后绿灯亮

import serial.tools.list_ports
import time
import schedfire=b"0"#将0转换为ASCII码方便发送
notfire=b"1"#将1转换为ASCII码方便发送def func():serialFd.write(fire)
def func1():serialFd.write(notfire)plist = list(serial.tools.list_ports.comports())if len(plist) <= 0:print("没有发现端口!")
else:plist_0 = list(plist[0])serialName = plist_0[0]serialFd = serial.Serial(serialName, 9600, timeout=60)print("可用端口名>>>", serialFd.name)s = sched.scheduler(time.time, time.sleep)s.enter(2, 0, func)s.enter(5, 1, func1)s.run()

四、融合注意力机制的YOLOv5火焰识别模型

通过串口延时发送指令控制arduino基本原理了解之后
YOLOv5火焰识别模型中,检测到火焰的时候就调用一下,发送指令给arduino即可

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

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

相关文章

Moon.Orm性能报告

以下为有网友公司的评估测试及使用规范 大家可以下载word看看 http://pan.baidu.com/s/1hquvRuc 一、和ADO.NET进行的压力测试 说明&#xff1a;2000并发用户&#xff0c;此图为一网友公司对moon.orm的测评 二、和ADO.NET的性能对比测试 说明&#xff1a;同时请求10000条数据&a…

(保守群组测试 非保守群组测试 二次重复测试 自适应二次重复测试)四种群体测试的C++代码

目录原理保守组检测非保守组检测二次重复测试自适应二次重复测试四种测试方法的核心代码保守群组测试非保守群组测试二次重复测试与自适应二次重复测试测试代码参考文献原理 假设该病在人群中的患病率&#xff08;先验概率&#xff09;为p&#xff0c;我们想用群体检验法检验N…

AngularJS中的表达式

AngularJS表达式 (AngularJS Expressions) In AngularJS, expressions are solved to give a result. It outputs the result of the expression in the html element that called it. Expressions in AngularJS contain literals, constants, operators and variables with re…

学习总结:机器学习(一)

有监督学习&#xff08;Supervised Learning&#xff09;所谓有监督学习&#xff0c;是区别于无监督学习而言的。其过程如下&#xff1a;给定一系列样本&#xff0c;样本是由一系列特征值和输出值组成。比如&#xff0c;某个地方的商品房&#xff0c;包括房子大小、房间数、距离…

WPS双栏格式下插入单栏图片

以一个我认识的西工大博士大佬的一篇SCI为例&#xff0c;期刊是双栏&#xff0c;图片过大&#xff0c;需要单栏进行展示&#xff0c;效果图如下&#xff1a; 一、双栏内容 二、插入单栏图像 随便敲几个字&#xff0c;选中&#xff0c; 页面布局----分栏---一栏 这行字就会…

JavaScript中的数组

Here we are discussing one of the most useful data structure, Array. 在这里&#xff0c;我们讨论最有用的数据结构之一Array 。 By conventional definition of arrays, "Arrays are the homogeneous collection of data types. But in JS, Arrays simply are the c…

WPS根据章节编号依次排序

第Ⅲ章节有四小部分&#xff0c;分别为A、B、C、D 第Ⅳ章节要重新开始编号&#xff0c;从A开始 操作步骤&#xff1a; ①再D后面回车&#xff08;红线位置回车&#xff09;&#xff0c;生成E ②把Ⅳ中待写内容写到E中 ③将E复制到Ⅳ下&#xff0c;这里需要注意D的换行也要复制…

【C++基础】异常匹配与内建异常类

目录异常匹配catch: 按异常类型匹配为何要使用异常类内建异常类标准库中的异常基类标准库中的异常类例1&#xff1a;vector下标访问越界out_of_range异常例2&#xff1a;内存分配失败bad_alloc异常例3&#xff1a;侧向转换失败bad_cast异常类几种情况&#xff0c;使用对应异常异…

小试---EF5.0入门实例1

现在做个小练习吧~~~ 第一步&#xff1a;首先新建一个数据库名字为Test;数据库里面只有一个表UserTable 脚本为&#xff1a; USE [master] GO /****** 对象: Database [Test] 脚本日期: 12/15/2013 18:51:54 ******/ CREATE DATABASE [Test] ON PRIMARY ( NAME NTest, F…

iScroll4 禁止select等页面元素默认事件的解决方法 转

iScroll4 禁止select等页面元素默认事件的解决方法起因在于onBeforeScrollStart : function(e){ e.preventDefault(); },这一行&#xff0c;iSroll禁止了事件的默认行为&#xff0c;导致select&#xff0c;option&#xff0c;textarea等元素无法点击。解决方法也很简单&#xf…

MPEG的完整形式是什么?

MPEG&#xff1a;运动图像专家组 (MPEG: Moving Picture Experts Group) MPEG is an abbreviation of Moving Picture Experts Group. It is a working group of authorities that is founded to establish standards for audio and video compression and transmission. The a…

安利一款倒计时插件---雨滴桌面

内容来自B站(搜索Rainmeter即可)&#xff0c;里面教程很多&#xff0c;因为视频看的有点麻烦&#xff0c;故进行了整理 一、下载安装包、解压、安装 免费下载连接&#xff0c;不需要积分 skin文件夹存放皮肤的一些配置文件&#xff0c;因为原本皮肤太low了 第二个是可执行文…

【C++基础】自定义异常类与多重捕获

目录自定义异常类构建过程例&#xff1a;Vec3D类的数组下标越界的异常类捕获多种无关异常不同的异常的捕获捕获派生异常异常处理的次序例子&#xff1a;多重捕获异常类catch块的参数类型可以不用引用类型吗?自定义异常类 自定义异常类通常由exception或其后代类派生。这样我们…

gprs 睡眠模式_GPRS的完整形式是什么?

gprs 睡眠模式GPRS&#xff1a;通用分组无线业务 (GPRS: General Packet Radio Service) GPRS is an abbreviation of General Packet Radio Service. It is a non-voice, high-level speed packet switching technology planned for GSM networks. On 2G and 3G cellular tran…

【C++基础】C++11的noexcept声明符 与 异常传播

目录C noexcept&#xff1a;1、用途2、用法1、noexcept声明符的用法&#xff1a;2、noexcept运算符的用法异常传播1、异常传播的定义2、异常传播中的规则3、异常传播的代价C noexcept&#xff1a; 1、用途 C11使用noexcept指明函数是否抛出异常&#xff1a; 若函数不抛异常&a…

CSS中的文本格式

CSS文字格式 (CSS text formatting) CSS text properties allow you to style your text in various ways very easily. Such as color, alignment, spacing, direction, etc. CSS文本属性使您可以轻松地以各种方式设置文本样式。 例如颜色 &#xff0c; 对齐方式 &#xff0c;…

CSS简写指南

1.margin 1.1 margin:1px 2px 3px(上 左右 下) 1.2 margin:2px 3px(上下 左右) 1.2 margin:1px 3px 2px 3px(上右下左) 2.padding(同上) 3.border border:1px red solid (border-width border-color border-style) 1 2 3border-width&#xff1a;1px 2px 3px; //最多可用四个值…

【C++基础】模板基础与函数模板

目录初识模板函数模板函数模板实例化显式实例化隐式实例化初识模板 求两个int、float、char类型的数据的最大值&#xff1a; C里面要这样写&#xff1a; int maxInt(int x, int y); double maxDouble(double x, double y); char maxChar(char x, char y);C使用函数重载&#…

TAFE的完整形式是什么?

TAFE&#xff1a;拖拉机和农用设备 (TAFE: Tractors and Farm Equipment) TAFE is an abbreviation of Tractors and Farm Equipment Limited. It is an Indian tractor manufacturer which is founded at Chennai in 1960. It is the second-largest tractor manufacturer in …

【C++基础】 类模板

类模板 模板是将类中某些类型变为泛型&#xff0c;从而定义一个模板。 如下&#xff1a; 类模板的语法 直接进行对比&#xff1a; 泛型化之前 泛型化之后类模板的实例化 注意&#xff1a;只要是对类模版进行实例化&#xff0c;编译器就会生成一个类&#xff01;&#xff0…