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

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

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

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

二、Arduino代码

Arduino LED灯
P10 R灯
P11 G灯
GND GND

在这里插入图片描述

/***************************************************
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 LED

char var;  

void setup() 
{
    
    
  pinMode(redPin, OUTPUT); //set redPin as OUTPUT
  pinMode(greenPin, OUTPUT);//set greenPin as OUTPUT
  digitalWrite(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收到串口发送指令之后红灯亮,表示有火焰
延迟多少秒以及优先权级别可根据实际情况需要来设定

import serial.tools.list_ports
import time
import sched

fire=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火焰识别模型

有点事,先发表下,回来接着写 未完待续。。。

猜你喜欢

转载自blog.csdn.net/qq_41264055/article/details/127323804
UNO