基于机器视觉的移动消防机器人(三)--软件设计

news2024/11/16 12:30:19

本文素材来源于北方民族大学 机电工程学院

作者:牟义达、黄瑞翔、李涛

指导老师:田国禾、张春涛

1. 总系统软件流程图

       为了实现消防功能,对软件进行系统设计。根据机器人要实现的功能进行逐一设计,设计完之后再将其整合到一起,整合之后的就是总的设计,下面就是总设计的流程图。总流程图如下:

       小车的整个功能流程如上图所示。小车先前行一段距离,之后停下来检测火源,若检测到火源,则记下火源的位置,然后命令灭火装置抵达火源处进行消防作业。火灭之后小车再度前行,之后再循环前面操作。

2. 各个功能的流程图

(1)机器人自主行走的流程

       自主行走功能的实现主要是驱动电机的转动,电机附于控制板。当控制板控制电机的两个引脚电压不同且电压差达到电机的工作电压时,电机就朝一个方向转动,从而达到驱动机器人小车的目的。控制控制板对应电机的引脚电压的流程图如上,即开始时让引脚有个电压差,0.5秒后让引脚电压持平(电机停止转动),这时看检测模块的状态,若火已被检测到,则引脚电压继续持平,若火已灭则引脚会有电压差。

(2)检测功能的流程

       检测的流程为:舵机1先定于水平位置,驱动轮驱动小车前行,小车停下时舵机1、2开始范围内摆动。因为传感器安装于舵机1、2控制的杆上,所以当舵机1、2范围内摆动时传感器可以在该范围内进行火源检测。若在该范围内检测到火时,则舵机1、2摆动完成之后会定位到火源的位置,此时灭火装置开启;灭火装置工作一段时间后再进行检测,若还能检测到火源,则舵机1、2还是保持原位并开启灭火装置提供的灭火功能。若未检测到火源,则舵机循环开始的行程。

 

 (3)灭火功能流程

       消防机器人小车的灭火流程不是很复杂,灭火装置就是由小马达和风扇叶组合而成的,当马达转动时风扇开启,所以只需控制马达的转动就能控制灭火装置的灭火功能。当检测到火时控制马达转动,当检测不到火时控制马达停止,这也就能达到控制灭火功能的要求。 

关于移动消防机器人的完整内容可参考基于机器视觉的移动消防机器人

-----------------------------------------------未完待续---------------------------------------------------

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

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

相关文章

流体力学基础——粘性

1、粘性:流体的属性 粘性就是流体阻碍自身流动的特性; 专业定义:粘性是流体持续剪切变形时内部产生剪切力的性质; 流体内部的粘性力,类似于固体的摩擦力,但是只有动粘性力; 表面张力不是粘性…

远程桌面一直被人爆破的解决思路

目录前言初步解决方法题外话预防措施获取日志Get-EventLog例子防火墙操作编写软件自动提取IP和添加黑名单调用powershell命令调用cmd命令前言 某天远程自己的电脑发现登不上了,错误信息如下: 开始也没在意,后面出现了好几次才反应过来。查看…

程序员职场生态:近8成本科毕业生起薪过万,跳槽首选智能汽车行业

中国互联网行业经历了超过20年的高速发展,逐渐融入到各行各业,程序员在其中发挥着举足轻重的作用,从业人员数量与日俱增。GitHub数据显示,2021年中国开发者规模达到755万。 近日,拉勾招聘数据研究院对程序员群体开展深…

SpringBoot笔记

文章目录1️⃣ 简介一. 什么是 IoC 容器?二. AOP面向切面编程三. SSM整合四. HttpServletRequest五. HttpServletResponse六. Cookie 与 Session七. Cookie八. Session九. 转发与重定向十. Spring项目转SpringBoot十一. Spring生命周期十二. 什么是 pom十三. 为什么…

知识整理说明:1799962-26-7,(4E)-TCO-NH2,(4E)-反式环辛烯-氨基

(4E)-TCO-amine物理数据: CAS:1799962-26-7| 中文名:(4E)-反式环辛烯-氨基 | 英文名:(4E)-TCO-amine,(4E)-TCO-NH2 结构式: 英文别名: (4E)-TCO-amine 中文别名: (4E)-反式环辛烯…

耗时半月,把牛客网最火Java面试题总结成PDF,涵盖所有面试高频题

最近感慨面试难的人越来越多了,一方面是市场环境,更重要的一方面是企业对Java的人才要求越来越高了。 基本上这样感慨的分为两类人,第一,虽然挂着3、5年经验,但肚子里货少,也没啥拿得出手的项目&#xff0c…

Vite 入门篇:学会它,一起提升开发幸福感。

相信大部分兄弟都体验过 Vite 了,知道它很快。但你知道它为什么快,相比 Webpack 有哪些不同吗?今天咱们就来全面了解一下 Vite ,尤其适合新手兄弟。话不多说,开整! 什么是构建工具 很多人对构建工具没有什…

RE转NFA转DFA

https://github.com/Nightmare4214/re_nfa_dfa 前置知识 ϵ\epsilonϵ代表空串 语言 某个给定字母表上一个任意的可数的串集合 正则语言/正则表达式 正则语言(regular language)/正则表达式(regular expression) 每个正则表达…

2022 SpeechHome 语音技术研讨会-回顾

2022年11月13日,第二届SpeechHome语音技术研讨会和第七届Kaldi技术交流会圆满落幕。本届SpeechHome语音技术研讨会由中国计算机学会、深圳市人工智能学会、小米集团、腾讯天籁实验室、语音之家主办,CCF语音对话与听觉专委会作为指导单位,由内…

【Java开发】 Spring 03:云服务器 Docker 环境下安装 MongoDB 并连接 Spring 项目实现简单 CRUD

接下来介绍一下 NoSQL ,相比于 Mysql 等关系型的数据库,NoSQL (文档型数据库)由于存储的数据之间无关系,因此具备大数据量,高性能等特点,用于解决大规模数据集合多重数据种类带来的挑战&#xf…

点击化学试剂1609736-43-7,TCO-NH2 hydrochloride,反式环辛烯-氨基HCL盐

TCO-amine hydrochloride物理数据: CAS:1609736-43-7| 中文名: 反式环辛烯-氨基盐酸盐,反式环辛烯-氨基HCL盐 | 英文名:TCO-amine hydrochloride 结构式: 中文别名: 环辛-4-烯-1-基 (3-氨基丙…

Mvvm中的Lifecycle

lifecycle:一个持有activity/fragment生命周期信息的类,允许其他对象观察此对状态 Event:从框架和lifecycle类派发的生命周期事件,也就是activity和fragment的各个状态会发Event state:这个就好理解了,就是activity和fragment当…

工业互联与MQTT

、工业互联网 新一代信息通信技术与工业经济深度融合的新型基础设施、应用模式和工业生态,通过对人、机、物、系统等的全面连接,构建起覆盖全产业链、全价值链的全新制造和服务体系,为工业乃至产业数字化、网络化、智能化发展提供了实现途径&…

论文阅读-Dr.Deep_基于医疗特征上下文学习的患者健康状态可解释评估

论文地址:Dr.Deep:基于医疗特征上下文学习的患者健康状态可解释评估 (ict.ac.cn) 代码地址:GitHub - Accountable-Machine-Intelligence/Dr.Deep 简介: 深度学习是当前医疗多变量时序数据分析的主流方法。临床辅助决策关乎病人生…

深入浅出Nodejs中的大文件读写

笔者最近在做一些node端的文件读写和分片上传工作,在这个过程中,发现node读取的文件如果超过2G,超过了读取Blob最大值,会出现读取异常,此外在node中读写文件也受服务器RAM的限制等,需要分片读取&#xff0c…

2022年认证杯SPSSPRO杯数学建模A题(第二阶段)人员的紧急疏散求解全过程文档及程序

2022年认证杯SPSSPRO杯数学建模 A题 人员的紧急疏散求解 原题再现: 在过去的几十年里,由于大规模集会活动的数量和规模的增加,紧急疏散的问题变得越来越重要。通过有限宽度的门或狭窄通道进行疏散是最值得关注的情况之一。为了更好地理解各…

.Net Maui 开发之路(1): APP基本设置(图标、应用名称)

.Net Maui APP基本设置(图标、应用名称) 前言一、App显示名称设置二、App显示图标设置三、App加载动画设置四、App透明状态栏设置总结前言 最终实现的显示效果如下图 提示:以下是本篇文章正文内容,下面案例可供参考 一、App显示名称设置 1、在项目上右键,选择编辑项目文…

02 DevOps 之 Jenkins

1. 什么是CICD 推荐阅读:CICD原理及流程 CICD面试题 在要介绍jenkins之前,我们需要了解CICD是什么? Continuous Integration (CI) 持续集成 Continuous Delivery (CD) 持续交付 Continuous Deployment (CD) 持续部署 1.1 持续集成 持续集成…

Echarts折线图隐藏markPoint只显示最大值和最小值的文本,且只在该两点显示symbol

算是一个比较偏门的需求吧,具体UED给的设计图效果如下: 看起来非常简单,但实际实现起来……也确实简单,就是步骤多一点~ 我们知道Echarts提供的markPoint标注最大值和最小值是会有一个水滴图案的: 首先要做的就是隐藏这…

进程状态和优先级【Linux】

1.进程状态的分类 在Linux内核中,进程状态分为七大类,不同的状态有不同的含义。 下面的状态在kernel中定义: /* * The task state array is a strange "bitmap" of * reasons to sleep. Thus "running" is zero, and *…