首页
产品系列
行业应用
渠道合作
新闻中心
研究院
投资者关系
技术支持
关于创泽
| En
 
  当前位置:首页 > 新闻资讯 > 机器人开发 > 灭火机器人的开发过程:连接机器人,驱动风扇,寻找火源  
 

灭火机器人的开发过程:连接机器人,驱动风扇,寻找火源

来源:机器人的天空      编辑:创泽      时间:2026/3/19      主题:其他   [加盟]

实验器材

· 组装好的机器人;

· 计算机及编程环境;

·USB 下载线;

· 复眼传感器1个;

· 带桨叶的直流小电机1个;

· 继 电 器 1 个 ;

· 微触开关传感器1个。

实验步骤

1.连接机器人

这次实验需要为机器人在D3 端口安装一个微触开关传感器,在D2 端口上装上一个 继电器,并且通过它驱动一个直流小电机。同时,我们将复眼传感器连接到A0~A4 端 口。在安装复眼传感器的时候请同学们小心接线的顺序,它与我们其他的传感器、执行器 稍有不同,虽然占用了5个端口,但是只要为它连接一根+5V的电源线和一根地线就可 以了。

2.驱动风扇

先编写程序,每按下一次微触开关,就让风扇的状态变化一次。比如,如果风扇正 在旋转,那么按下一次开关,就让它立刻停止,反之亦然。对于如何读取微触开关传感器 的状态和如何通过继电器驱动风扇,同学们都应该了然于胸了。但是这里的程序和本书 一开始做过的开关小灯的程序还是有所不同的,我们可能需要对按动微触开关的次数进 行计数,才能知道什么时候该驱动风扇转动,什么时候该让它停止。下面给出了一个示例 程序,请大家留意其中是如何处理微触开关的计数的。

const int FanPort=2;

const int SwitchPort=3;

int counter=0;

void setup(){

pinMode(FanPort, OUTPUT);

pinMode(SwitchPort,INPUT);

void loop(){

if(digitalRead(SwitchPort)==HIGH){ counter++;

}

if(counter %2==0){

digitalWrite(FanPort,LOW);

}else(

digitalWrite(FanPort,HIGH);

}

delay(200);

在这个示例程序中,每次按下微触开关就让一个计数变量自动增1。然后,我们用了 一个取模的运算“%”,在这里,counter%2 的结果就是这个计数变量除以2的余数是多 少。显然,如果余数是0,那么计数变量就是偶数,否则就是奇数。之后的内容就很直观 了,奇数时我们让风扇转动,偶数时停止就可以了。

这个示例看起来似乎很出色,可是实际上这里有一个很大的问题,如果同学们按动按 键的时候有一个很小的抖动,那么会不会被主控器认为是按了两次呢?或者如果按下按 键的时间比较长,是不是也会被认为按了多次?幸运的是,我们可以用软件的方法解决这 种抖动或按键时间过长的问题,请同学们自己尝试设计一个改进的算法,让开关能出色地 控制风扇的运行。

3、寻找火源

解决了风扇的问题,再来看看如何利用复眼传感器找到火源。这个问题可以说是到 目前为止面对的Z富挑战性的问题了,机器人需要在灭火的场地内以合理的方式探索寻 找火源的所在,并且运动到火源近前,它涉及机器人的灭火策略、路径规划、运动控制等多 方面的问题。 但同学们不要畏难,还记得我们讲过的分而治之、简化问题的思想吗?这里就先将这 个问题简化。假设现在已经有一个火源就在机器人的探测范围内。我们要让机器人的行 为就像是一朵向日葵一样,它需要找到火源的方向并且原地转动,直到复眼中正对前方的 那一只眼睛正对火源方向为止,如图13-5所示。

要解决这个简化的问题,需要对复眼的5个读数进行比较,找到信号Z强的方向应该 就是火源的方向了。随后就可以让机器人根据火源方向的不同,进行速度不同的原地转动。如果火源在Z靠外的位置就可以转得快些,靠内就转得慢些,如果已经是在正中了就 可以停止转动了。假设复眼传感器从左到右分别连接到了主控板的A0~A4 端口,下面 给出了让机器人寻找火源的示例程序,请同学们留意其中是怎么找到Z强信号位置的。

#define COUNTER_CLOCKWISE 0

#define CLOCKWISE 1

void turn(int speed,int dir);

void loop(){

int maxValue=0;

int maxPort=A0;

int value;

for(int i=A0;int iif(value>maxValue){ maxValue=value;

maxPort=i;

}

if(maxPort==A0){

turn(120,CLOCKWISE);

}else if(maxPort==A1){

turn(80,CLOCKWISE);

}else if(maxPort==A2){

turn(0,CLOCKWISE);

}else if(maxPort==A3){

turn(80,COUNTER_CLOCKWISE); }else if(maxPort==A4){

turn(120,COUNTER_CLOCKWISE); }else{

turn(0,CLOCKWISE); }

delay(100);

}

void turn(int speed,int dir){

analogWrite(LeftSpeedPort,speed);

analogWrite(RightSpeedPort,speed);

if(dir==CLOCK){

digitalWrite(LeftDirPort,HIGH); digitalWrite(RightDirPort,LOW);

}else(

digitalWrite(LeftDirPort,LOW);

digitalWrite(RightDirPort,HIGH);






灭火机器人的技能:接近火源和灭火装置

复眼传感器是由朝向5个不同方向的红外线探头组成的传感器电路,火焰所发出的光中红外线是很主要的成分,机器人可以根据这方向信息生成电机控制指令,朝着火源前进

机器人巡线挑战赛的器材与步骤:机器人,绝缘胶布1卷,制作货仓和卸货塔的硬纸板,检测传感器

机器人都需要完成哪些工作:巡线、通过各种路口、在 卸货塔(障碍物)前停下、驱动机器人的运货机构(机器人的手臂)卸载货物、转身回家,进行下载和调试

机器人挥舞手臂需要的器材:机器人,USB下载线,主控制器 ,舵机

将舵机用金属件安装到机器人底盘上作为它的手臂。我们首先制作只是使用一只舵机,拥有一个关节的机器人手臂,并将舵机连接到有PWM 输出功能的9号端口

机器人舵机的控制:PWM信号,周期是20ms, 脉冲的宽度从1~2ms 秒之间

把舵机插到主控制板的9号端口上,然后让它在0°~180°之间不 停地反复运动;将舵机插到任何一个有PWM 功能的端口上,舵机转动到哪个角度,就用主控板发出那个角 度所对应占空比的PWM 信号就可以

机器人的舵机:对电机转动位置的精确控制

机器人的舵机是在直流减速电机的基础上增加了一个检测位置的微型传感器和一个控制器组成的闭环反馈控制系统,从而实现对电机转动位置的精确控制

会走迷宫的机器人需要的材料:主控制器,地面灰度检测传感器模块4块,红外避障传感器1个,黑色胶带1卷

首先将机器人、扩展板和地面灰度检测传感器模块连接好,地面灰度检测传感 器连接到A0~A3 端口。红外避障传感器连接到D3 端口,示例程序中给出的可能也不是最好的解决方案

机器人学会探测障碍:红外避障传感器的模块

红外避障传感器由一个光线发射装置和一个光线接收装置组成的,它的光线发射方向是朝向运动的方向而不是地面,而且发射装置发出的光是红外光而不是可见光

机器人过丁字路口:并排安装4个地面灰度传感器

并排安装4个地面灰度传感器,用杜邦连接线把它们按顺序分别 连接到主控板的A0~A3 端口,其中最左端的传感器连接A0口,最右端的连接A3口,只要是最左或最右端的传感器检测到了 黑线,就代表机器人遇到了路口

机器人直线行走的编程-接口、传感器的读数、地面的灰度阈值

在使用 pinMode 命令为端口规定方向时肯定要用到它的编号,然后再用 digitalRead 之类的命令操纵端口时也要用到同一个编号,用analogRead 命令读到了传感器当前的值

智能巡线机器人的制作:digitalRead 、digitalWrite 、analogRead 、analogWrite、 pinMode 、delay

机器人传感器的位置在靠近黑线的左侧或者正好在黑线上;digitalRead 、digitalWrite 、analogRead 、analogWrite、 pinMode 、delay。它们构成了Arduino 中最为重要、最为常用的功能

微触开关传感器-很简单的传感器,用程序就能很准确地检测到它的开闭变化

微触开关也只有“开”和“闭” 两种不同的状态,把它连接到主控制器,用程序就能很准确地检测到它的开闭变化了,只要用 digitalRead 命令就可以很 方便地读取微触开关的值了,这个命令的用法

为机器人安上转向灯:连接机器人,编写程序,观察现象

将机器人、扩展板和小灯模块连接好,将右转向灯连接D5 号口,左转向灯连接D3号口;编写程序,让转向灯亮灭的语句,左转向灯熄灭,同时机器人向右转弯
 
资料获取
新闻资讯
== 资讯 ==
» 清华大学《龙虾(OPenClaw)管理学
» 人形机器人产业发展趋势:产能爆发式增长,
» 人形机器人产业分布格局:美、日本、欧洲、
» 人形机器人重点应用场景:工业、服务、医疗
» 2025年人形机器人市场研究报告-出货量
» 机器人的电位器式位移传感器的特点:线性,
» 智能机器人对传感器的要求:精度高、可靠性
» 金属热电阻的测温电路接法:两线制和三线制
» 2025中国机器人整机制造商TOP50:
» 最全面的OpenClaw中文教程:部署、
» 《OpenClaw001:龙虾使用入门》
» 龙虾:第三次AI平民化–自主Agent时
» OpenClaw 入门指南:七大核心应用
» 一体化具身智能党建机器人,智能学习助手,
» 一体化党建机器人:四大核心优势,筑牢党建
 
== 机器人推荐 ==
 
迎宾讲解服务机器人

服务机器人(迎宾、讲解、导诊...)

智能消毒机器人

智能消毒机器人

机器人底盘

机器人底盘

 

商用机器人  Disinfection Robot   展厅机器人  智能垃圾站  轮式机器人底盘  迎宾机器人  移动机器人底盘  讲解机器人  紫外线消毒机器人  大屏机器人  雾化消毒机器人  服务机器人底盘  智能送餐机器人  雾化消毒机  机器人OEM代工厂  消毒机器人排名  智能配送机器人  图书馆机器人  导引机器人  移动消毒机器人  导诊机器人  迎宾接待机器人  前台机器人  导览机器人  酒店送物机器人  云迹科技润机器人  云迹酒店机器人  智能导诊机器人 
版权所有 © 创泽智能机器人集团股份有限公司     中国运营中心:北京·清华科技园九号楼5层     中国生产中心:山东日照太原路71号
销售1:4006-935-088    销售2:4006-937-088   客服电话: 4008-128-728