- Module RF RFM69HCW
- RFM69HCW
- Brochage et description du module RFM69
- Préparation de la carte de développement personnalisée
Étape 3: Préparez un PCB pour cela, je suis ce tutoriel de PCB Home Made. J'ai imprimé l'empreinte sur une carte de cuivre et l'ai déposée dans la solution de gravure
Étape 4: Suivez la procédure pour les deux cartes et soudez votre module à l'empreinte. Après avoir soudé mes deux modules ressemblent à ceci ci-dessous
Le brochage du module RF RFM69HCW est indiqué dans la figure ci-dessous
- Matériaux nécessaires
- Connexion matérielle
- Exécution de l'exemple d'esquisse
- Travail de l'exemple d'esquisse
Lorsqu'il s'agit de donner à vos projets des capacités sans fil, l'émetteur et le récepteur hybrides ASK 433Mhz est un choix courant parmi les ingénieurs, développeurs et amateurs en raison de son prix bas, de ses bibliothèques faciles à utiliser et de son support communautaire. Nous avons également construit quelques projets comme la domotique contrôlée par RF et la sonnette sans fil en utilisant ce module RF 433 MHz. Mais souvent, un émetteur et un récepteur hybrides ASK ne sont tout simplement pas suffisants, sa faible portée et sa nature de communication unidirectionnelle le rendent inadapté à de nombreuses applications.
Pour résoudre ce problème récurrent, les développeurs de HopeRF ont conçu un nouveau module RF sympa appelé RFM69HCW. Dans ce tutoriel, nous allons découvrir le module RF RFM69HCW et ses avantages. Tout d'abord, nous allons créer un PCB fait maison pour RFM69HCW, puis interfacer RFM69HCW avec Arduino pour vérifier son fonctionnement afin que vous puissiez l'utiliser dans les projets de votre choix. Alors, commençons.
Module RF RFM69HCW
Le RFM69HCW est un module radio facile à utiliser et bon marché qui fonctionne dans la bande ISM (industrie, science et médecine) sans licence similaire au module RF nRF24L01 que nous avons utilisé dans des projets précédents. Il peut être utilisé pour communiquer entre deux modules ou peut être configuré en tant que réseau maillé pour communiquer entre des centaines de modules, ce qui en fait un choix parfait pour la construction de réseaux sans fil à courte portée bon marché pour les capteurs utilisés dans la domotique et d'autres projets d'acquisition de données.
Caractéristiques du RFM69HCW:
- +20 dBm - Capacité de sortie de puissance 100 mW
- Haute sensibilité: jusqu'à -120 dBm à 1,2 kbps
- Faible courant: Rx = 16 mA, rétention de registre 100 nA
- Pout programmable: -18 à +20 dBm par pas de 1 dB
- Performance RF constante sur une plage de tension du module
- Modulations FSK, GFSK, MSK, GMSK et OOK
- Synchroniseur de bits intégré effectuant la récupération d'horloge
- 115 dB + plage dynamique RSSI
- Détection RF automatique avec AFC ultra-rapide
- Moteur de paquets avec CRC-16, AES-128, capteur de température intégré FIFO de 66 octets
- Budget de liaison élevé
- Coût très bas
RFM69HCW
La fréquence
Le RFM69HCW est conçu pour fonctionner dans la bande ISM (Industrie, Scientifique et Médicale), un ensemble de fréquences radio sans licence pour les appareils à faible puissance et à courte portée. Différentes fréquences sont légales dans différents domaines, c'est pourquoi le module a de nombreuses versions différentes 315,433,868 et 915MHz. Tous les principaux paramètres de communication RF sont programmables et la plupart d'entre eux peuvent être définis de manière dynamique.Le RFM69HCW offre également l'avantage unique de modes de communication programmables à bande étroite et large bande.
Remarque: en raison de sa puissance comparativement faible et de sa courte portée, la mise en œuvre de ce module dans un petit projet ne posera pas de problème, mais si vous envisagez d'en faire un produit, assurez-vous d'utiliser la fréquence correcte pour Votre emplacement.
Intervalle
Pour mieux comprendre la gamme, nous devons traiter un sujet assez complexe appelé le budget de liaison RF. Alors, quel est ce budget de liaison et pourquoi est-il si important? Le budget de liaison est comme tous les autres budgets, quelque chose que vous avez au début et que vous dépensez au fil du temps si votre budget est épuisé, vous ne pouvez pas dépenser plus.
Le bilan de liaison a aussi à voir avec une liaison ou la connexion entre l'émetteur et le récepteur, il est rempli par la puissance d'émission de l'émetteur et la sensibilité du récepteur et il est calculé en décibels ou dB c'est aussi la fréquence- dépendant. Le budget de liaison est déduit de toutes sortes d'obstacles et de bruit entre l'émetteur et le récepteur, comme les câbles de distance, les murs des arbres, les bâtiments, si le budget de la liaison est épuisé, le récepteur ne crée que du bruit en sortie et nous n'obtiendrons aucun signal utilisable. Selon la fiche technique du RFM69HCW , il a un bilan de liaison de 140 dB par rapport à 105 dB de l'émetteur hybride ASK, mais qu'est-ce que cela signifie est-ce une différence importante? Heureusement, on trouveCalculateurs de budget Radio Link en ligne, alors faisons quelques calculs pour mieux comprendre le sujet. Tout d'abord, supposons que nous ayons une connexion en ligne de mire entre l'expéditeur et le récepteur et que tout est parfait car nous savons que notre budget pour RFM69HCW est de 140 dB alors vérifions la plus grande distance théorique que nous pouvons communiquer, nous mettons tout à zéro et la distance à 500 km, fréquence à 433 MHz et nous obtenons une puissance reçue horizontale de 139,2 dBm
Maintenant, je mets tout à zéro et la distance à 9KM de fréquence à 433 MHz et nous obtenons une puissance reçue horizontale de 104,3 dBm
Donc, avec la comparaison ci-dessus, je pense que nous pouvons tous convenir que le module RFM69 est bien meilleur que l'émetteur hybride ASK et un module récepteur.
L'antenne
Mise en garde! La fixation d'une antenne sur le module est obligatoire car sans elle, le module peut être endommagé par sa propre puissance réfléchie.
Créer une antenne n'est pas aussi difficile que cela puisse paraître. L'antenne la plus simple peut être fabriquée uniquement à partir d'un fil 22SWG monocaténaire. La longueur d'onde d'une fréquence peut être calculée par la formule v / f , où v est la vitesse de transmission et f est la fréquence de transmission (moyenne). Dans l'air, v est égal à c , la vitesse de la lumière, qui est de 299,792,458 m / s. La longueur d'onde pour la bande 433 MHz est donc 299,792,458 / 433,000,000 = 34,54 cm. La moitié est de 17,27 cm et un quart de 8,63 cm.
Pour la bande 433 MHz, la longueur d'onde est de 299,792,458 / 433,000,000 = 69,24 cm. La moitié est de 34,62 cm et un quart de 17,31 cm. Ainsi, à partir de la formule ci-dessus, nous pouvons voir le processus de calcul de la longueur du fil d'antenne.
Puissance requise
Le RFM69HCW a une tension de fonctionnement comprise entre 1,8 V et 3,6 V et peut tirer jusqu'à 130 mA de courant lorsqu'il émet. Ci-dessous dans le tableau, nous pouvons clairement voir la consommation électrique du module dans différentes conditions
Avertissement: Si votre Arduino choisi utilise des niveaux logiques 5V pour communiquer avec le périphérique, le raccordement du module directement à Arduino endommagera le module
symbole |
La description |
Conditions |
Min |
Typ |
Max |
Unité |
IDDSL |
Courant en mode veille |
- |
0,1 |
1 |
uA |
|
IDDIDLE |
Courant en mode veille |
Oscillateur RC activé |
- |
1.2 |
- |
uA |
IDDST |
Courant en mode veille |
Oscillateur à cristal activé |
- |
1,25 |
1,5 |
uA |
IDDFS |
courant dans Synthétiseur mode |
- |
9 |
- |
uA |
|
IDDR |
courant en mode réception |
- |
16 |
- |
uA |
|
IDDT |
Courant d'alimentation en mode de transmission avec correspondance appropriée, stable sur la plage VDD |
RFOP = +20 dBm, sur PA_BOOST RFOP = +17 dBm, sur PA_BOOST RFOP = +13 dBm, sur broche RFIO RFOP = +10 dBm, sur broche RFIO RFOP = 0 dBm, sur broche RFIO RFOP = -1 dBm, sur broche RFIO |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA maman |
Dans ce tutoriel, nous allons utiliser deux Arduino Nano et deux convertisseurs de niveau logique pour communiquer avec le module. Nous utilisons des nano Arduino car le régulateur interne intégré peut gérer très efficacement le courant de crête. Le diagramme Fritzing dans la section matérielle ci-dessous vous l'expliquera plus clairement.
REMARQUE: Si votre alimentation ne peut pas fournir 130 mA de courant de crête, votre Arduino peut redémarrer ou pire, le module peut ne pas communiquer correctement, dans cette situation, un condensateur de grande valeur avec une faible ESR peut améliorer la situation.
Brochage et description du module RFM69
Étiquette |
Fonction |
Fonction |
Étiquette |
FOURMI |
Sortie / entrée de signal RF. |
Masse d'alimentation |
GND |
GND |
Masse d'antenne (identique à la masse d'alimentation) |
E / S numériques, configuration logicielle |
DIO5 |
DIO3 |
E / S numériques, configuration logicielle |
Réinitialiser l'entrée de déclenchement |
RST |
DIO4 |
E / S numériques, configuration logicielle |
Entrée de sélection de puce SPI |
NSS |
3,3 V |
Alimentation 3,3 V (au moins 130 mA) |
Entrée d'horloge SPI |
SCK |
DIO0 |
E / S numériques, configuration logicielle |
Entrée de données SPI |
MOSI |
DIO1 |
E / S numériques, configuration logicielle |
Sortie de données SPI |
MISO |
DIO2 |
E / S numériques, configuration logicielle |
Masse d'alimentation |
GND |
Préparation de la carte de développement personnalisée
Lorsque j'ai acheté le module, il n'était pas fourni avec une carte d'extension compatible avec la maquette, nous avons donc décidé d'en créer une moi-même. Si vous devez faire de même, suivez simplement les étapes. Notez également qu'il n'est pas obligatoire de suivre ces étapes, vous pouvez simplement souder les fils au module RF et les connecter à la maquette et cela fonctionnerait toujours. Je suis cette procédure uniquement pour obtenir une configuration stable et robuste.
Étape 1: Préparez les schémas du module RFM69HCW
Étape 3: Préparez un PCB pour cela, je suis ce tutoriel de PCB Home Made. J'ai imprimé l'empreinte sur une carte de cuivre et l'ai déposée dans la solution de gravure
Étape 4: Suivez la procédure pour les deux cartes et soudez votre module à l'empreinte. Après avoir soudé mes deux modules ressemblent à ceci ci-dessous
Le brochage du module RF RFM69HCW est indiqué dans la figure ci-dessous
Matériaux nécessaires
Voici la liste des éléments dont vous aurez besoin pour communiquer avec le module
- Deux modules RFM69HCW (avec fréquences correspondantes):
- 434 MHz (WRL-12823)
- Deux Arduino (j'utilise Arduino NANO)
- Deux convertisseurs de niveau logique
- Deux cartes de dérivation (j'utilise une carte de dérivation sur mesure)
- Un bouton poussoir
- Quatre LED
- Une résistance 4.7K quatre résistances 220Ohms
- Fils de cavalier
- Fil de cuivre émaillé (22AWG), pour fabriquer l'antenne.
- Et enfin la soudure (si tu ne l'as pas déjà fait)
Connexion matérielle
Dans ce tutoriel, nous utilisons Arduino nano qui utilise une logique de 5 volts mais le module RFM69HCW utilise des niveaux logiques de 3,3 volts comme vous pouvez le voir clairement dans le tableau ci-dessus afin de communiquer correctement entre deux appareils, un convertisseur de niveau logique est obligatoire, dans le diagramme de fritzing ci-dessous nous vous avons montré comment connecter l'Arduino nano au module RFM69.
Nœud émetteur de diagramme Fritzing
Nœud émetteur de la table de connexion
Broche Arduino |
Broche RFM69HCW |
Broches E / S |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GREEN |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Nœud récepteur de diagramme de Fritzing
Nœud récepteur de table de connexion
Broche Arduino |
Broche RFM69HCW |
Broches E / S |
D2 |
DIO0 |
- |
D9 |
- |
LED |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISO |
- |
D13 |
SCK |
- |
Exécution de l'exemple d'esquisse
Dans ce tutoriel, nous allons configurer deux nœuds Arduino RFM69 et les amener à communiquer entre eux. Dans la section ci-dessous, nous saurons comment faire fonctionner le module à l'aide de la bibliothèque RFM69 qui est écrite par Felix Rusu de LowPowerLab.
Importer la bibliothèque
J'espère que vous avez déjà fait un peu de programmation Arduino et savez comment installer une bibliothèque. Sinon, vérifiez la section Importation d'une bibliothèque.zip de ce lien
Brancher les nœuds
Branchez l'USB du nœud émetteur sur votre PC, un nouveau numéro de port COM doit être ajouté à la liste "Tools / Port" de l'IDE Arduino, penchez-le, maintenant branchez le nœud récepteur, un autre port COM devrait apparaître dans les outils / Liste des ports, écrivez-la également, à l'aide du numéro de port, nous téléchargerons l'esquisse vers l'expéditeur et le nœud récepteur.
Ouverture de deux sessions Arduino
Ouvrez deux sessions Arduino IDE en double-cliquant sur l'icône Arduino IDE après le chargement de la première session, il est obligatoire d'ouvrir deux sessions Arduino car c'est ainsi que vous pouvez ouvrir deux fenêtres de moniteur série Arduino et surveiller simultanément la sortie de deux nœuds
Ouverture de l'exemple de code
Maintenant, lorsque tout est configuré, nous devons ouvrir l'exemple de code dans les deux sessions Arduino pour le faire, allez
Fichier> Exemples> RFM6_LowPowerLab> Exemples> TxRxBlinky
et cliquez dessus pour l'ouvrir
Modification de l'exemple de code
- En haut du code, recherchez #define NETWORKID et remplacez la valeur par 0. Avec cet identifiant, tous vos nœuds peuvent communiquer entre eux.
- Recherchez la #define FREQUENCY changez-la pour qu'elle corresponde à la fréquence de la carte (la mienne est de 433_MHz).
- Recherchez la #define ENCRYPTKEY, il s'agit de votre clé de cryptage 16 bits.
- Recherchez #define IS_RFM69HW_HCW et décommentez-le si vous utilisez un module RFM69_HCW
- Et enfin, recherchez #define NODEID, il doit être défini comme RECEIVER par défaut
Téléchargez maintenant le code sur votre nœud récepteur que vous avez précédemment configuré.
Il est temps de modifier l'esquisse pour le nœud émetteur
Maintenant, dans la macro #define NODEID, changez-la en SENDER et téléchargez le code sur votre Sender Node.
Voilà, si vous avez tout fait correctement, vous avez deux modèles de travail complets prêts à être testés.
Travail de l'exemple d'esquisse
Après le téléchargement réussi du croquis, vous observerez que la LED rouge qui est connectée à la broche D4 de l'Arduino s'allume, appuyez maintenant sur le bouton dans le nœud émetteur et vous observerez que la LED rouge s'éteint et la LED verte qui est connecté à la broche D5 de l'Arduino s'allume comme indiqué dans l'image ci-dessous
Vous pouvez également observer Button Pressed! texte dans la fenêtre Moniteur série comme indiqué ci-dessous
Observez maintenant la LED bleue qui est connectée à la broche D9 du nœud émetteur, elle clignotera deux fois et dans la fenêtre Serial Monitor du nœud de réception, vous observerez le message suivant ainsi que la LED bleue qui est connectée à la broche D9 dans le nœud récepteur s'allume. Si vous voyez le message ci-dessus dans la fenêtre Serial Monitor du nœud récepteur et aussi si la LED est allumée Félicitations! Vous avez réussi à communiquer le module RFM69 avec Arduino IDE. Le fonctionnement complet de ce tutoriel peut également être trouvé dans la vidéo donnée en bas de cette page.
Dans l'ensemble, ces modules se révèlent parfaits pour la construction de stations météorologiques, de portes de garage, de contrôleur de pompe sans fil avec indicateur, de drones, de robots, de votre chat… le ciel est la limite! J'espère que vous avez compris le didacticiel et que vous avez aimé créer quelque chose d'utile. Si vous avez des questions, veuillez les laisser dans la section des commentaires ou utiliser les forums pour d'autres questions techniques.