vrijdag 12 oktober 2012

Wirreless communication : IR -arduino

Doel


We willen onze robot laten communiceren met de pc. Dit om eventuele parameters bij PID-regeling in te stellen/wijzigen of herprogrammatie van de µc mogelijk te maken. Deze communicatie gebeurt bijvoorkeur draadloos.

Keuze voor infrarood-communicatie kwam er omdat bluetooth-communicatie niet mocht aangewend worden en dit ons dus de meest evidente keuze leek. Merk wel op dat infrarood-communicatie niet altijd feilloos verloopt door storingen, hindernissen,…. dit euvel nemen we er echter bij omdat we dit ook willen uitdokteren in onze studie.

Proef opstelling
We maken gebruik van twee arduino’s, een zender en ontvanger. Elke arduino hangt aan een pc zodat we gemakkelijk het programma kunnen uploaden en de resultaten visualiseren. Aan de zender arduino hangt een voorschakelweerstand en een IR-led.  Aan het ontvangersgedeelte hangt een TSOP 1138.

Zoals je ziet in de programmacode wordt aan zender-zijde een draaggolf van 38kHz gemaakt, deze komt toe aan de ene zijde van de IR led. Aan de andere zijde van de IR led komt de “te verzenden boodschap” toe. De “te verzenden boodschap” wordt op de draaggolf gemoduleerd en zo naar de ontvanger gestuurd. De TSOP vangt deze signalen op en zal de demodulatie voor zijn rekening nemen.

Merk op dat de modulator en de demodulator op een gelijke frequentie moeten werken; zoals hier 38kHZ of anderzijds ook mogelijk 36kHz. Vandaar de verwijzing 38 in de component.
De led moet voorzien zijn van een voorschakelweerstand. Deze bedraagt bij ons E12 220Ω.

De schakeling is als volgt opgebouwd: In het zendergedeelte, van de TX pen van de zend-µc , naar de vooschakelweerstand die met de led verbonden is. De andere zijde van de led is verbonden met pin 9 van de µc.
In het ontvangersgedeelte staat de TSOP 1738. De +5V is verbonden met de +5V van de batterij en de groundpen met de ground. De outputpen met de RX van de µc.

De µc met zendergedeelte werd aan één pc gekoppeld en de ontvanger met zijn µc aan een andere PC. Afstand tussen beide µc  was in het begin 20cm en is uitgebreid naar 200cm. Communicatie bleef mogelijk zolang er geen hindernissen waren



Schematisch:



Deze schematische tekening is gemaakt in eagle. Onderstaand vind u een png alternatief.

schema.png

Programma

Op volgende website(link) kan u extra informatie vinden omtrent de gebruikte programmacode en de opstelling.Wijzelf gaan ook de programmacode nog eens uitspitten en extra informatie zal dan ook op deze blog worden aangevuld.
Zoals reeds gezegd hebben we een zender en een ontvanger, op onderstande links vind u een arduino file van de beide programma's

programma zender

programma ontvanger

 Besluit

Wij hebben bovenstaande werkwijze gevolgd en de communicatie was mogelijk. We hebben met de afstand tussen zender en ontvanger gespeeld en ook dit gaf geen problemen.
We hebben echter nog 2 moeilijkheden tijdens het testen ontdekt:
1) Hindernissen tussen de IR led en TSOP kunnen de communicatie verstoren
2) Wanneer we het programma in de ontvanger uploaden via de pc en ondertussen is ook de zender al aan het zenden , dan krijgen we een foutmelding. De RX pen wordt namelijk zowel aangesproken door de data van de zender als de data die de pc zend. Wij hebben dus de µc eerst geprogrammeerd en dan pas aangesloten aan de IR led en de TSOP 1738.
Dit moet nog worden uitgezocht.


Geen opmerkingen:

Een reactie posten