首页

Arduino和射频收发模块

无论是短距离电视、远程通信还是远距离无线电通信,任何形式的无线通信都已成为人类生活中必不可少的一部分。无线通信就是无线传输数据,这样就不存在任何电线的麻烦,也不与设备本身直接接触。

实现无线通信的最简单和最便宜的方法之一是使用射频模块(射频模块)。

另一方面,Arduino是一个低成本的解决方案,适用于具有开源硬件和软件的微控制器应用。Arduino可以用于许多小型到实时的应用程序,只需简单的编程和硬件组件。

在Electronicshub中选择您想学习的下一组Arduino项目 Arduino项目»

通过将无线通信与Arduino结合在一起,我们可以创造一个广泛的应用,如遥控汽车,无线操作机器人,家庭自动化,简单的数据传输等。

在这个项目中,我们将设计一个系统,在这个系统中,两块Arduino板将使用射频模块相互通信。

线路图

由于是一个无线通信项目,电路由发射机部分和接收器部分组成。

项目的发射机部分的电路如下所示。

Arduino射频发射电路

该项目的接收器部分的电路如下所示。
Arduino射频接收电路

组件的要求

发射机部分

  • Arduino UNO(或任何其他Arduino板)[在这里买
  • 434 MHz发射机模块(或315 MHz模块)
  • 领导(在这里买
  • 1 KΩ电阻器
  • 原型板(面包板)
  • 连接电线
  • 电源(适配器或电池)

接收部分

  • Arduino UNO(或任何其他Arduino板)[在这里买
  • 434 MHz接收模块(或315 MHz模块)
  • 领导
  • 1 KΩ电阻器
  • 原型板(面包板)
  • 连接电线
  • 电源(适配器或电池)
  • 射频模块

组件描述

Arduino UNO

Arduino UNO是一款低成本、开源、用于电子原型设计的微控制器板。在这个项目中,两块Arduino板将使用无线通信进行通信。

射频模块

射频模块是一种适用于低成本应用的廉价无线通信模块。射频模块包括在无线电频率范围内工作的发射机和接收机。通常,这些模块通信的频率是315mhz或434mhz。

图像射频模块对

在这个项目中,我们使用了一个434兆赫的射频发射机-接收器对。该模块可用于通信距离达40米。

电路设计

发射机部分

发射机部分由Arduino UNO和434 MHz发射机模块组成。可以使用外部LED,但内部LED就足够了。发射机部分的设计如下。

射频发射模块由4个引脚组成:VCC, GND, Data和天线。VCC和GND引脚分别接5V和接地。数据引脚连接到Arduino的任何数字输入/输出引脚。在这里,它连接到第12针。

天线引脚必须连接到天线上,天线只是线圈形式的电线。

我们使用板载LED进行演示,但也可以使用外部LED和限流电阻。

接收部分

接收部分由Arduino UNO和434 MHz receiver模块组成。外部LED可以与限流电阻一起使用,但板载LED就足够了。Receiver部分的设计如下。

射频接收模块由4个引脚组成:VCC、GND、Data和Antenna。VCC和GND引脚分别连接到Arduino的3.3V引脚和接地。数据引脚连接到Arduino的pin 12上。

与发射模块相似的天线连接到434 MHz接收器模块的天线引脚上。连接13的板载LEDth项目中使用Arduino的pin,但可以使用外部LED。

工作过程

在这个项目中,给出了一个简单的演示,在Arduino UNO板的帮助下射频通信。该项目的目的是使用两块Arduino UNO微控制器板成功地在射频发射器-接收器模块之间传输数据。这里对项目的工作进行了说明。

请注意:该项目可以在一个名为“VirtualWire.h”的特殊库的帮助下实现,也可以不帮助。这里实现的项目使用库。如果我们想在没有库的情况下实现这个项目,那么我们需要改变电路的接收部分。

VirtualWire.h是Mike McCauley创建的Arduino专用库。它是一个通信库,允许两个Arduino使用射频模块进行通信,即发射机-接收器对。该库由几个函数组成,用于配置模块、发送模块的数据传输和接收模块的数据接收。

在这个项目中,发送器简单地发送两个字符,即它发送字符“1”和延迟几秒钟,它发送字符“0”。每当发送“1”时,项目发射侧的LED就会打开。由于这个“1”是通过射频通信传输的,接收器将接收到数据“1”。

当接收器接收到“1”时,项目接收器一侧的Arduino会打开其一侧的LED。

同样,当射频发射机传输数据“0”时,发射机侧的LED关闭。结果,接收器现在接收到“0”和接收器一侧的LED也被关闭。

因此,接收器是在模仿发射机的动作。

选择示意图

请注意如前所述,该项目使用了一个名为VirtualWire的特殊库。这个库使用了微控制器的“定时器”特性,可能会影响定时器的相关属性,例如PWM。

因此,下面的原理图可以用于类似的实现,而不需要使用任何库。

图像替代示意图

提供了两个项目的草图,即一个使用库,另一个不使用库。

应用程序

  • 正如项目介绍中提到的,使用射频模块的无线通信有着广泛的应用,如
    • RC汽车
    • 家庭自动化
    • 机器人

项目图片

带库的接收机代码

带库的发射机码

无库接收码

无库发射机码

26日反应

      1. 也许你能帮忙。我如何插入温度测量在传输电路-如果温度低于22度,它发送信号到接收器

  1. 这样我们就可以将音频信号从发射机发送到接收器(如MANET(移动自组网))。
    在这种情况下,两个手机通过蓝牙连接到单独的arduino板,如果在两边提供发射机/接收器,就可以相互通信。这在没有wifi信号和手机信号的情况下是可能的。
    我有兴趣这样做,但我不知道什么类型的特设音频发射器/接收器模块
    请告诉我模块名称

  2. 如果我把一个接收器引脚连接到其中一个数字引脚,并在0或1读取数据,尽管有所有这些上和下的阈值。它到底起作用了吗?

  3. 我想用这些模块rc车与4个按钮。
    你能告诉我怎么编码吗?
    2个按钮将运行4左右电机向前。
    另外两个将反向运行它们。

    1. 您需要一台带有Arduino IDE的PC来编译并上传代码到Arduino。虽然,有一个Android应用程序可以作为PC版(编译和上传)。在谷歌Play Store中搜索它。

  4. 先生,我可以从一个arduino导入文本文件到另一个arduino使用射频发射器和接收器请告诉我。

留下一个回复

您的电邮地址将不会公布。

Electronicshub图标
Baidu
map