Deze pagina is verouderd. Ga naar de vernieuwde pagina.
- Ping en Pong
|  |
- Hello world NRF24L01+
|
|
- LoRa introductie
|
LoRa (Long Range) (wiki) is het smalle band IoT zender/ontvanger systeem dat werkt met een gering vermogen. maar toch over een grote afstand (tot 10km). Lora is de naam van de gebruikte zendtechniek die is gebaseerd op de spread spectrum techniek, uitgevonden door Semtech en opgenomen in het Larta forum. In Europa is de frequentie 868 MHz. Lora heeft altijd een gateway nodig. De gateway is het basisstation en is vaak ook verbonden met het internet. Er zijn meerdere mogelijkheden om LoRa te implementeren:
- 1) KPN IoT
KPN noemt zijn LoRa oplossing KPN internet of things. Dit is 1 van de simpelste mogelijkheden om met LoRa te werken.
- 2) LoraWan TTN
Als je niet afhankelijk wilt zijn van 1 eigen gateway maar gebruik wilt maken van een dekkend landelijk netwerk dan moet je zorgen dat jouw nodes zich kunnen verbinden met 1 van de bestaande netwerken. Dit wordt LoraWan (wiki) genoemd. Er bestaan meerdere commerciële netwerken waarvoor je moet betalen voor een abonnement net als bij je telefoon, bijvoorbeeld van KPN. Er bestaat echter ook 1 gratis netwerk dat geen abonnementskosten vraagt: The Things Network. Dit kan NIET met ieder type lora transceiver. Zie verder bij LoraWan.
- 2) Peer to Network
De volgende stap is het ombouwen van 1 van de bovenstaande nodes zodat deze verbinding met het internet maakt. Deze node wordt dan in LoRa termen een Gateway genoemd. Je kan dan met 1 gateway verschillende nodes binnen een straal van 10 km met het internet verbinden. Dit kan met ieder type lora transceiver.
- 1) Peer to peer
In deze situatie worden er 2 apparaten (peers) die ieder zowel zender alsook ontvanger (transceivers) zijn, via Lora met elkaar verbonden. In Lora termen worden dit soort apparaten "nodes" genoemd. Dit kan worden uitgevoerd met ieder type Lora transceiver. Zie verder bij Hello World.
|
- LoraWan
|
Er bestaan meerdere mogelijkheden om een LoraWAN (wiki) op te zetten, zie bij Lora introductie. Wij gaan voor The Things Network omdat het open-source is en geen abonnementskosten kent.
- Hardware compatibel?
Allereerst moet je uitzoeken of je hardware compatibel is met LoraWan. Lang niet alle Lora hardware kan worden gebruikt voor LoraWan. Zo zijn de NRF24L01+ niet compatibel maar bijvoorbeeld de Antratek modules wel.
- Netwerkdekking
Vervolgens moet je uitzoeken of je binnen het bereik van een bestaande TTN-gateway valt. Indien niet dan moet je zelf een gateway installeren. Je kan op de zogenaamde TTN-Heatmap zien of er een gateway voldoende dicht in de buurt zit. In Nederland is dat bijna altijd het geval. Hoe weet ik zeker of ik hier bereik heb op het TTN netwerk?
- Communicatievorm
Je kan wel data naar de node zenden maar deze data wordt uitsluitend naar de node gezonden nadat de node zelf iets naar het netwerk heeft gezonden. Zo hoeft het netwerk niet te pollen.
|
- Aansluitingen NRF24L01+
|
- Juiste aansluitingen
Het blijkt dat alles in Hello World correct werkt zodra de CE=10 en de CSN=9 worden aangesloten op een Arduino. Het lijkt er dus op dat er niet helemaal juist gewerkt wordt met de SPI bibliotheek. Dat is iets dat ik al veel vaker heb zien gebeuren in sketches, al in assembler. Vreemd vreemd vreemd. Het blijkt niets uit te maken of ik ping nu aanzet of niet. Het lijkt wel uit te maken als ik ping aanzet en mijn vingers op de voedingsspanning hou. Waarom loopt Pong door? Wat onvangt hij? Dat blijkt te komen doordat hij continu doet alsof hij iets ontvangt vanwege onjuiste SPI aansluitingen.
- pinMode(CE_PIN, OUTPUT); pinMode(CSN_PIN, OUTPUT);
Dit lijkt weinig uit te maken. er lijken iets minder: Error failed radio boodschappen te ontstaan als beiden aanstaan. Maar stabiel is het geheel nog niet.
- Voeding
De voedingsspanning mag maximaal 3,3Vdc zijn maar de rest van de pennen mag op 5Vdc worden aangesloten.
- Aansluitdraden
Deze tranceivers communiceren door middel van SPI. Buiten de 3 pennen benodigd voor SPI, zijn er nog 2 extra pennen nodig voor Chip Enable en Chip Select Not. Default worden deze pennen voorgeschreven, maar op de Arduino moet je 9 en 10 gebruiken in plaata van 7 en 8. Zorg dat pin 10 (op de UNO) de CE is. Het blijkt dat alles in Hello World uitsluitend correct werkt zodra de CE=10 en de CSN=9 worden aangesloten op een Arduino Uno. Het lijkt er dus op dat er niet helemaal juist gewerkt wordt met de SPI bibliotheek. Dat is iets dat ik al veel vaker heb zien gebeuren in sketches, vooral in assembler. If you are using pins other than 10 and 9 for CSN and CE you must still set pin 10 for OUTPUT to ensure that the Uno acts as the SPI master.
- CE
CE (Chip Enable = 10) is an active-HIGH pin. When selected the nRF24L01 will either transmit or receive, depending upon which mode it is currently in.
- CSN
CSN (Chip Select Not = 9) is an active-LOW pin and is normally kept HIGH. When this pin goes low, the nRF24L01 begins listening on its SPI port for data and processes it accordingly.
RF24 | Arduino | sketch | kleur |
SCK | 13 | SCK | oranje |
MSIO | 12 | MISO | geel |
MOSI | 11 | MOSI | groen |
CE | 10 | ce_pin | paars |
CSN | 9 | cs_pin | wit |
How nRF24L01+ Wireless Module Works & Interface with Arduino |
Algemene informatie over dit onderdeelAlgemene informatie test |
---|
Prijs indicatie   | €  2,40 | Menu groep   | Interfacing | Laatste verandering   | 2022-06-20 |
Warning: include(/var/www/html/robotigs/includes/wishlistperpart.php): Failed to open stream: No such file or directory in /var/www/html/robotigs/includes/parts_header.php on line 128
Warning: include(): Failed opening '/var/www/html/robotigs/includes/wishlistperpart.php' for inclusion (include_path='.:/usr/share/php') in /var/www/html/robotigs/includes/parts_header.php on line 128
|
|