Radio-0
Doel:
| nodig:
|
Voorkennis:
| |
Met de RFM69 radio-module kun je kleine pakketten met data versturen en ontvangen. We gebruiken hiervoor de 868MHz band: deze is vrij te gebruiken mits je minder dan 1% van de tijd zendt, met laag vermogen. | |
Schakeling Verbind de RFM69 module:
| Gebruik voor de dataverbindingen (SPI en IRQ) een draadbundel met 5 draden, tussen de Arduino en het breadboard met de radio-module. Daarmee verminder je de kans op fouten, en krijg je een nettere opbouw van je schakeling. |
Testprogramma Om de radio te testen heb je naast je eigen Arduino nog een andere Arduino met een radio-module nodig. Gebruik als testprogramma voor beide Arduino's: rfm69demo. Dit programma stuurt steeds pakketten met test-data, en drukt de ontvangen pakketten af. | Library Gebruik de library rf69. Voeg deze eerst (eenmalig) toe aan de Arduino IDE, via Bibiliotheek gebruiken... ZIP bibliotheek toevoegen. De library is te vinden via https://infvo.nl/labfiles/arduino/programs/libraries/rf69/ |
Opdracht 1
|
|
Opdracht 2 Hoe ver kun je je Arduino van de andere zender/ontvanger plaatsen? Wat is het bereik?
|
|
Hardware We gebruiken bij deze opdracht twee soorten "breakout" bordjes voor de RFM69-radio:
Bijv. via: https://www.sossolutions.nl/3070-adafruit-rfm69hcw-transceiver-radio-breakout-868-or-915-mhz
https://www.digitalsmarties.net/products/rfm-board Gebruik deze radio's nooit zonder antenne: dan kunnen ze kapot gaan! | Bij het Adafruit-bordje hoef je alleen de header-pinnen eraan te solderen. Het Jeelabs-bordje moet je helemaal zelf solderen. De RFM69HCW-versie heeft een hoog-vermogen radio ("H"-versie); de RFM69CW heeft een lager vermogen, en is daardoor ook energie-zuiniger. We gebruiken deze radio's meestal met een draadantenne (82mm lang, "1/4 lambda"). Je kunt het bereik vergroten door een betere antenne te gebruiken. Het Adafruit-bordje heeft extra soldeeraansluitingen voor een antenne-connector. |
Bovenstaande breakout-boards zorgen ook voor de aanpassing van de Arduino 5V (voeding, signalen) naar de RFM69 3.3V. | |
Layout van het pakket (bij ontvangst):
Bij het verzenden wordt alleen de payload meegegeven als buffer; de destination is een aparte parameter. Destination=0: broadcast pakket. | Deze indeling wordt door de rf69-library bepaald; bij andere libraries kan dit anders zijn |
Arduino lessen Radio-0 --