红外线接收器是运用红外光谱法将光信号转化为电信号的传感器,主要用于智能机器人接收红外遥控器的控制信号使用,如图4-2-12 和图4-2-13 所示。红外发射和接收的信号其实都是一连串的二进制脉冲码,高低电平按照一定的时间规律变换来传递相应的信息。为了使其在无线传输过程中免受其他信号的干扰,通常都将信号调制在特定的载波频率上(38 kHz 红外载波信号),通过红外发射二极管发射出去,而红外接收端则要将信号进行解调处理,还原成二进制脉冲码进行处理。
图4-2-12 遥控器与红外接收器
图4-2-13 红外接收器在机器人的位置
当按下遥控器按键时,遥控器发出红外载波信号,红外接收器接收到信号,程序对载波信号进行解码,通过数据码的不同来判断按下的是哪个键。
(1)红外线接收器3 个引脚的具体定义:
S:信号输出;
+:接Arduino +5 V;
-:接Arduino GND。
(2)IR 红外线接收器的测试程序代码如下:
(3)程序详解:
本程序需要搭配4 个头文件进行,可使用本书配套的“红外遥控头文件”压缩包,并解压至Arduino IDE 所在安装文件夹的libraris 子文件夹里。
(www.daowen.com)
红外遥控头文件
定义红外接收器的信号脚与Arduino 的2 号数字接口连接,本书配套的Arduino 机器人固定使用2 号数字接口连接红外接收器。
if 语句既可以单独使用,也可以搭配else 使用。
打印输出单个字符使用单括号,打印输出多个字符(即字符串)使用双括号。
(4)IR 红外线接收器的测试调试:
插上USB 下载线,编译验证并上传程序到Arduino UNO 开发板,点击菜单栏中的“工具”选项,选择串口监视器,这时会弹出小窗口,按下红外遥控器的按键,窗口将显示红外线接收器的输出结果,如图4-2-14所示。
图4-2-14 IR 红外接收传感器测试监视窗口
(5)按键及代码对照。
表4-2-2 描述的对应关系是基于本书配套的红外遥控及接收器、程序头文件。
表4-2-2 按键及代码对照表
续表
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。