Module émetteur/récepteur RF 433MHz avec Arduino

Module émetteur/récepteur RF 433MHz avec Arduino

Cet article est un guide pour les modules émetteurs/récepteurs RF 433MHz populaires avec Arduino. Nous expliquerons leur fonctionnement et partagerons un exemple de projet Arduino que vous pouvez appliquer pour l’utiliser dans vos propres projets.

Module emetteurrecepteur RF 433MHz avec Arduino

Nous avons d’autres tutoriels sur l’émetteur/récepteur 433MHz que vous pourriez trouver utiles :

La description

Tout au long de ce didacticiel, nous utiliserons le Émetteur FS1000A et récepteur correspondant, mais les instructions fournies fonctionnent également avec d’autres modules émetteurs/récepteurs 433 MHz qui fonctionnent de manière similaire. Ces modules RF sont très populaires parmi les bricoleurs Arduino et sont utilisés sur une grande variété d’applications nécessitant un contrôle sans fil.

Ces modules sont très bon marché et vous pouvez les utiliser avec n’importe quel microcontrôleur, que ce soit un Arduino, ESP8266 ou ESP32.

Spécifications RF 433MHz Récepteur

  • Gamme de fréquences : 433,92 MHz
  • Modulation : DEMANDEZ
  • Tension d’entrée : 5 V
  • Prix ​​: 1 $ à 2 $

Spécifications Émetteur RF 433MHz

  • Gamme de fréquences : 433,92 MHz
  • Tension d’entrée : 3-12 V
  • Prix ​​: 1 $ à 2 $

Où acheter?

1641574807 744 Module emetteurrecepteur RF 433MHz avec Arduino

Vous pouvez acheter ces modules pour quelques dollars seulement. Cliquez ici pour comparer l’émetteur/récepteur RF 433MHz sur plusieurs magasins et trouver le meilleur prix.

Arduino avec modules émetteur/récepteur RF 433MHz

Dans cette section, nous allons créer un exemple simple qui envoie un message d’un Arduino à une autre carte Arduino en utilisant 433 MHz. Une carte Arduino sera connectée à un émetteur 433 MHz et enverra le message « Hello World! » message. L’autre carte Arduino sera connectée à un récepteur 433 MHz pour recevoir les messages.

Pièces requises

Vous avez besoin des composants suivants pour cet exemple :

Vous pouvez utiliser les liens précédents ou aller directement sur MakerAdvisor.com/tools pour trouver toutes les pièces pour vos projets au meilleur prix !

Module emetteurrecepteur RF 433MHz avec Arduino

Installation de la bibliothèque RadioHead

le RadioHead La bibliothèque fournit un moyen facile de travailler avec l’émetteur/récepteur 433 MHz avec l’Arduino. Suivez les étapes suivantes pour installer cette bibliothèque dans l’IDE Arduino :

  1. Cliquez ici pour télécharger la bibliothèque RadioHead. Vous devriez avoir un dossier .zip dans votre Téléchargements dossier.
  2. Décompressez le RadioHead bibliothèque.
  3. Bouge le RadioHead dossier de la bibliothèque à l’installation de l’IDE Arduino bibliothèques dossier.
  4. Redémarrez votre IDE Arduino

La bibliothèque RadioHead est excellente et fonctionne avec presque tous les modules RF du marché. Vous pouvez en savoir plus sur la bibliothèque RadioHead ici.

Circuit émetteur

Câblez le module émetteur à l’Arduino en suivant le schéma suivant.

1641574807 961 Module emetteurrecepteur RF 433MHz avec Arduino

Important: vérifiez toujours le brochage du module émetteur que vous utilisez. Habituellement, il y a des étiquettes à côté des broches. Alternativement, vous pouvez également consulter la fiche technique de votre module.

Croquis de l’émetteur

Téléchargez le code suivant sur la carte Arduino qui agira comme un émetteur. Ceci est basé sur l’un des exemples fournis par la bibliothèque RadioHead.

#include <RH_ASK.h>
#include <SPI.h> // Not actually used but needed to compile

RH_ASK driver;

void setup()
{
    Serial.begin(9600);	  // Debugging only
    if (!driver.init())
         Serial.println("init failed");
}

void loop()
{
    const char *msg = "Hello World!";
    driver.send((uint8_t *)msg, strlen(msg));
    driver.waitPacketSent();
    delay(1000);
}

Afficher le code brut

Comment fonctionne le croquis de l’émetteur

Tout d’abord, incluez le RadioHead DEMANDEZ bibliothèque.

#include <RH_ASK.h>

Cette bibliothèque a besoin de la bibliothèque SPI pour fonctionner. Ainsi, vous devez également inclure la bibliothèque SPI.

#include <SPI.h>

Après cela, créez un RH_ASK objet appelé chauffeur.

Dans le mettre en place(), initialiser le RH_ASK objet en utilisant le init() méthode.

Serial.begin(9600); // Debugging only
if (!driver.init())
    Serial.println("init failed");

Dans le boucler(), nous écrivons et envoyons notre message. Le message est enregistré sur le message variable. Veuillez noter que le message doit être de type char.

const char *msg = "Hello World!";

Ce message contient le message « Hello World! » message, mais vous pouvez envoyer tout ce que vous voulez tant qu’il est au format char.

Enfin, nous envoyons notre message comme suit :

driver.send((uint8_t *)msg, strlen(msg));
driver.waitPacketSent();

Le message est envoyé toutes les secondes, mais vous pouvez régler ce délai.

delay(1000);

Circuit récepteur

Câblez le module récepteur à un autre Arduino en suivant le schéma suivant.

1641574807 990 Module emetteurrecepteur RF 433MHz avec Arduino

Important: vérifiez toujours le brochage du module émetteur que vous utilisez. Habituellement, il y a des étiquettes à côté des broches. Alternativement, vous pouvez également consulter la fiche technique de votre module.

Croquis du récepteur

Téléchargez le code ci-dessous sur l’Arduino connecté au récepteur. Ceci est basé sur l’un des exemples fournis par la bibliothèque RadioHead.

#include <RH_ASK.h>
#include <SPI.h> // Not actualy used but needed to compile

RH_ASK driver;

void setup()
{
    Serial.begin(9600);	// Debugging only
    if (!driver.init())
         Serial.println("init failed");
}

void loop()
{
    uint8_t buf[12];
    uint8_t buflen = sizeof(buf);
    if (driver.recv(buf, &buflen)) // Non-blocking
    {
      int i;
      // Message with a good checksum received, dump it.
      Serial.print("Message: ");
      Serial.println((char*)buf);         
    }
}

Afficher le code brut

Comment fonctionne le croquis du récepteur

De la même manière que pour l’esquisse précédente, vous commencez par inclure les bibliothèques nécessaires :

#include <RH_ASK.h>
#include <SPI.h>

Vous créez un RH_ASK objet appelé chauffeur:

RH_ASK driver;

Dans le mettre en place(), initialisez le RH_ASKobjet.

void setup(){
    Serial.begin(9600); // Debugging only
    if (!driver.init())
    Serial.println("init failed");
}

Dans le boucler(), nous devons définir un tampon qui correspond à la taille du message que nous recevrons. « Bonjour le monde! » a 12 caractères. Vous devez ajuster la taille de la mémoire tampon en fonction du message que vous recevrez (les espaces et la ponctuation comptent également).

uint8_t buf[12];
uint8_t buflen = sizeof(buf);

Ensuite, vérifiez si vous avez reçu un message valide. Si vous recevez un message valide, imprimez-le sur le moniteur série.

if (driver.recv(buf, &buflen)) {
    int i;
    // Message with a good checksum received, dump it.
    Serial.print("Message: ");
    Serial.println((char*)buf);
}

Manifestation

Dans ce projet, l’émetteur envoie un message « Hello World ! » au récepteur via RF. Ces messages sont affichés sur le moniteur série du récepteur. La figure suivante montre ce que vous devriez voir sur votre moniteur série Arduino IDE.

moniteur série récepteur

Conclusion

Vous devez avoir des attentes réalistes lorsque vous utilisez ce module. Ils fonctionnent très bien lorsque le récepteur et l’émetteur sont proches l’un de l’autre. Si vous les séparez trop loin, vous perdrez la communication. La portée de communication variera. Cela dépend de la tension que vous fournissez à votre module émetteur, du bruit RF dans votre environnement et si vous utilisez une antenne externe.

Si vous souhaitez utiliser des télécommandes 433 MHz pour communiquer avec votre Arduino, suivez ce tutoriel : Décoder et envoyer des signaux RF 433 MHz avec Arduino.

Si vous êtes un débutant Arduino, nous vous recommandons de suivre notre Mini cours Arduino. Cela vous aidera à démarrer rapidement avec cette incroyable planche (et c’est gratuit !).

Vous aimerez peut-être aussi les ressources suivantes :

Vous pouvez trouver tous nos projets et tutoriels Arduino ici.

Partager cette publication avec un ami qui aime aussi l’électronique !

Si vous aimez cet article, vous aimerez probablement mes prochains, alors soutenez-moi en vous abonnant à notre blog.

Merci d’avoir lu.

19 janvier 2019

  • QIACHIP RX480E Module RF 433mhz Emetteur et Récepteur 4 Canaux avec 1527 Code d'apprentissage pour télécommande arduino 433mhz RF Receiver and Transmitter Module
    【Excellent Design】433Mhz RF interrupteur de télécommande sans fil. Performance stable et fiable avec une sensibilité de réception élevée (> 107dBm). Transmission du signal par radiofréquence. Le signal puissant peut traverser les murs, les planchers, les portes, les panneaux, etc. Il peut être contrôlé à une distance de 68 mètres dans un espace ouvert. 【Wide range of applications】Adapt to receive module, motorcycle, car anti-theft products, home security products, electric door, remote control socket, remote control LED, garage door remote control, remote control door opener, remote control curtain, alarm host, remote control MP3. 【Wide Voltage】 Entrée (émetteur) :DC 3V-24V,Large tension d'entrée (récepteur) :DC3.3~5V ;Bonne sélectivité et suppression des radiations parasites Plage de température : -40 à 85 °C, même en cas de températures ambiantes difficiles 【Multiples modes de fonctionnement】 Mode momentané; Mode bascule; Mode encliqueté.
  • kwmobile 3X Module Radio émetteur récepteur 433 MHz pour Arduino et Raspberry Pi - Wireless Transmitter Module
    UTILISATION VARIABLE: Le module radio 433 MHz est idéal pour de nombreux types de dispositifs de contrôle à distance. Il peut de plus être fonctionnel avec une antenne externe (non incluse). EXEMPLES D'UTILISATION: Ce module est variable - ainsi il peut servir comme récepteur à prise de courant, système d'alarme ou de luminosité etc... Laissez à votre créativité tout l'espace disponible. INDICE: Pour élargir le diamètre de réception, vous devez soudre/enfoncer un fil de cuivre au XY-FST, au point de contact ANT. COMPATIBILITÉ: Compatible avec Raspberry Pi et les appareils Arduino. TOUJOURS LÀ POUR VOUS : kwmobile est implanté en Allemagne. Nous vous proposons depuis 2012 un vaste assortiment d'accessoires et d'appareils électroniques.
  • WayinTop 3 Set 433Mhz RF Télécommande Kit Émetteur et Récepteur + 433 MHz Antenne Spirale, RF Wireless Transmitter and Receiver Module Kits Alarme Antivol
    【Comment Utiliser】La tension VCC doit être cohérente avec la tension de fonctionnement du module et doit rester dans un bon filtrage de puissance. 【Kit Parfait】Ce kit comprend 3 paires de modules émetteur et récepteur et 3 paires d'antennes à ressort pour augmenter la distance de communication. Et la fréquence est de 433 MHz. Il est très populaire pour les systèmes de télécommande, tels que les portes roulantes de télécommande, la voiture intelligente, la maison intelligente, etc. 【Facile à Utiliser】Grande influence sur la réception du module d'antenne, de préférence connectée au 1/4 de la longueur d'onde de l'antenne, généralement 50 ohms à conducteur unique. La longueur de l'antenne 433M est d'environ 17 cm. 【Modules émetteurs sans fil】permettre à votre pour communiquer sans fil avec d'autres pour ou avec des appareils contrôlés par radiofréquence (RF) qui fonctionnent sur la même fréquence (433 MHz dans ce cas). 【Conseils Chaleureux】La position de l'antenne a également affecté la réception du module, l'installation, l'antenne autant que possible directement du blindage, la haute pression et la source d'interférence. La fréquence utilisée pour recevoir, décoder et résister à l'oscillation doit correspondre à l'émetteur.