Microcontroller in combinatie met IR led

Pagina: 1
Acties:
  • 2.909 views

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ik zou graag met 2 microcontrollers (16f84a), en een IR led (nog aan te schaffen) en een IR ontvanger (nog aan te schaffen) een soort simpele draadloze verbinding maken.

Dat wil zeggen, ik wil eerst gewoon graag dat ik een simpelweg één pin op de ene microchip via IR met de andere op hoog kan zetten, ik heb een boel gezocht naar IR tutorials e.d., maar ik kan niets vinden dat het goed vanaf de basis uitlegd.

Ik weet al behoorlijk wat van microcontrollers en algemene electronica, maar heb nog nooit met IR gewerkt, kan iemand mij op weg helpen?

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Niemand een idee?

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 14:41

SA007

Moderator Tweaking
Infrarood is bestwel simpel.
Alleen je hebt een heel groot probleem, namelijk de zon, welke gigantische hoeveelheden infrarood rondstuurt.

De meeste afstandbedieningen komen hier omheen door een draaggolf over het signaal te gooien van 36khz (of 38khz).
De modulatie is heel simpel, gewoon 36khz = 1, 0khz = 0.
Je hebt kant en klare ontvangers die de demodulatie al doen.

De makkelijkste manier om dit met een microcontroller te doen is de pwm zo afstelt dat er een 36khz signaal uitkomt welke je dan schakelt, uit de ontvanger komt dat simpel 1/0 welke weer direct uitgelezen kan worden.

De ontvangers zitten zo'n beetje in elk willekeurig apparaat met IR afstandbediening:
Afbeeldingslocatie: http://thinklabs.in/shop/images/tsop.jpg
Heel simpel, gewoon spanning erop en signaal eruit.

Aan de zendkant voldoet eigenlijk elke infrarood led al zullen sommige minder krachtig zijn dan andere.
Simpelste is die ook uit een afstandsbediening te trekken.

Acties:
  • 0 Henk 'm!

  • dion_b
  • Registratie: September 2000
  • Nu online

dion_b

Moderator Harde Waren

say Baah

Overige Hardware is iets te algemeen voor dit soort vragen, in Electronika heb je meer kans op antwoord :)

Move OH -> EL

Oslik blyat! Oslik!


Acties:
  • 0 Henk 'm!

  • JER00N
  • Registratie: Maart 2002
  • Niet online
Als ontvanger zou je een TSOP1736 (bijvoorbeeld) kunnen gebruiken, dat is zo'n ding in het plaatje van SA007. Die demoduleert het signaal meteen (haalt de draaggolf eruit) zodat je hem direct aan je microcontroller kan knopen. Die TSOP's hebben ook ingebouwde gainregeling voor een goede ontvangst.

De LED zou ik niet direct aan je microcontroller knopen maar via een FET. Meestal (afhankelijk van de te overbruggen afstand) worden er relatief hoge stromen door die LED gestuurd (denk aan 100 mA, wel gepulst natuurlijk).

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Zou deze schakeling dan functioneren (met een ingebouwd cristal)?

Afbeeldingslocatie: http://img240.imageshack.us/img240/7303/irschakeling.png

En hoe kan ik trouwens zorgen dan de chip (en daarmee de rest van de schakeling) in een soort slaapstand raakt totdat er een signaal (interupt) komt?

[ Voor 51% gewijzigd door huub8 op 15-03-2010 16:15 ]


Acties:
  • 0 Henk 'm!

  • JER00N
  • Registratie: Maart 2002
  • Niet online
Nee, dat gaat niet werken. Ten eerste zitten je Vdd en Vss-aansluitingen verkeerd. Vdd is de 'plus' en Vss moet aan ground. Waarom je de gate van de FET aan de Vss hangt is me ook niet helemaal duidelijk maar ik denk dat dat een tekenfoutje is.

Ten tweede gaat je IR-led het waarschijnlijk niet lang overleven, er is namelijk geen voorschakelweerstand die de stroom beperkt. Zet dus nog een weerstand voor de LED (R = (4,5-UF,led)/ILED). Begin maar eens met iets van 100 ohm, tweaken kan je daarna altijd nog.

Verder is je schema-tekenkunst ook niet echt geweldig :+ Geef bij die FET bijv. duidelijk aan wat de gate, drain en source zijn (of gebruik liever nog het echte symbool voor een FET).

In de rechtertekening zit de ontvanger goed aangesloten (behalve dan dat Vdd en Vss hier ook verkeerd om zitten). Kijk ook eens naar datasheets, daarin staan vaak ook voorbeelden hoe je componenten het beste kan gebruiken.

Edit: slaapstand + interrupts is afhankelijk van het type controller. Meestal is het wel mogelijk om een speciale pin aan te wijzen als 'interrupt on change' die de microcontroller ook uit slaapstand kan halen als er een niveauverandering is. Zie hiervoor wederom de datasheet.

[ Voor 12% gewijzigd door JER00N op 15-03-2010 16:25 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
ok, die foutjes lagen inderdaad aan mijn te wensen overlatende tekenkunst. Maar als ik gewoon begin met een 100 ohm weerstand voor de led, dan werkt het?

Hoe zorg ik trouwens qua code voor een 36/38khz signaal?

[ Voor 16% gewijzigd door huub8 op 15-03-2010 16:29 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Of kan je dit niet zonder een extra onderdeel doen?

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 14:41

SA007

Moderator Tweaking
Ik weet niet hoe het bij PIC's zit, maar het zal vast niet veel anders zijn dan bij atmels .

Dan zou je daarvoor een timer gebruiken, is een heel simpel dingetje, gewoon een teller die op een bepaalde snelheid heen en weer gaat.

Daar heb je je systeemtimer (de klokfrequentie), die is bijvoorbeeld 1mhz, daar kan je vervlgens een prescaler overheen gooien, daaruit komt dan de timerfrequentie.
Dan heb je dus een timer die bepaalde tikjes maakt en een maximum waarde eraan (de zgn overflow).

Stel je systeemfrequentie is 1mhz, en je hebt een prescaler van 2, dan loopt je timer dus op 500khz.
Elke keer dat die timerpuls komt wordt dan je timerregister opgehoogd, zodra die je overflow bereikt wordt er een stukje script aangeroepen. Als je overflow dan op 7 staat wordt die functie aangeroepen met 71.43khz, bijna precies het dubbele van 36khz (1000 / 2 / 7).

Als code kan je dan iets simpels hebben als dit:
C:
1
2
3
4
5
6
7
8
9
10
11
char zendstatus=0;
char zenden=0; // het signaal wat je wil verzenden.

isr (interrupt service routine) {
  if (zenden = 1) {
    outputpin_van_ir = zendstatus; // zet het pinnetje naar je waarde zodat de led schakelt.
    zendstatus ~= zendstatus; // inverteer zendstatus, hierdoor maak je een blokgolf van ~36khz
  } else {
    outputpin_van_ir = 0; //niet zenden is led uit
  }
}


Aan de andere kant komt er dan gewoon een signaal binnen als je met je zenden variabele prutst.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
@ SA007, ik snap je uitleg grotendeels wel, maar de laatste stap (het maken van de code) nog niet. Zou je het wellicht wat kunnen toelichten, want ik snap nog niet hoe je dan met een ca dubbel zo hoge frequentie, tot een signaal kan komen van de goede frequentie (schrijf dan ook nog niet echt C maar assambly, dus de code maakt het niet veel duidelijker voor mij).

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Of zou wellicht iemand een voorbeeldje in assambly kunnen geven?

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 14:41

SA007

Moderator Tweaking
Note: kicken binnen 24 uur is beetje not-done, daarvoor hebben we de edit knop.

Mm, vind het maken van code in C juist makkelijker dan in ASM.
Ken iig de ASM van je processor niet, dus daar ga ik me niet aan wagen.

Hier iig een stukje code uitgelegd wat er dan gebeurd als zenden = 1;

Elke 14ns (1//F, 72khz) wordt je interrupt aangeroepen.
Elke keer dat je zendstatus ~= zendstatus aanroept wordt het inverse van je startstatus gemaakt.
Deze schakelt stiekum tussen 0 en 255 dus (00000000 vs 11111111) dus geheel netjes is het niet, maar wel efficient.
Netter zou zijn zendstatus ^= 1. Maar weer niet of dat meer kloktikken zijn (daarin is ASM weer een voordeel)

Wat je dan krijgt is:
zet output aan
<wacht op interrupt>
set output uit
<wacht op interrupt>
zet output aan
<wacht op interrupt>
set output uit
<wacht op interrupt>
zet output aan
<wacht op interrupt>
set output uit
<wacht op interrupt>

Hierdoor krijg je dus een blokgolf met beide kanten je 14ns, totaal wordt 1 sectie van 2 periodes dus 28ns, wat vervolgens ~36khz is.

Weet niet of er bij PIC ook zo'n register is, maar bij atmel zou je de hele isr in 1 regel (en volgens mij iets van 2 instructies) kunnen doen met:

code:
1
2
3
isr () {
  PINB = zenden;
}


In de atmel is er namelijk de hardwarefunctie om een pin te inverteren als deze als output is gezet met DDRB door een waarde naar PINB te schijven.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Sorry voor de kick.

Ik snap het principe nu denk ik wel volledig, maar ik heb nog zeer weinig ervaring met pic's (2 weken), en dus weet ik niet of ik het goed weet te schrijven, ik kom voor de code voor de interrupt hier op uit:

code:
1
2
3
4
5
6
7
          BTFSC porta, 2  ;Bit test f, Skip if clear
          Goto setbit
          BSF porta, 2  ;Bit set f
          goto main

setbit  BCF porta, 2 ;Bit clear f
          goto main


Dus wat ik hiermee probeer te doen is:
als porta, bit 2 een 0 is gaat hij naar de BSF en zet hij hem op een één
als porta, bit 2 niet een 0 is slaat hij de volgende regel dus niet over en gaat hij door de goto naar de BCF waar hij porta, bit 2 op een 0 zet.

Zelf kan ik op niets beters komen, maar ik weet dan ook nog niet eens helemaal zeker of ik weet wat ik aan het doen ben :P

Acties:
  • 0 Henk 'm!

  • woutertje
  • Registratie: Maart 2002
  • Laatst online: 18:08
Heb voor een project eens IR moeten gebruiken, oa met 38Khz modulatie in een ATMega16.
Deze kon aangestuurd worden via TWI dus daar zit ook code van bij.

http://pastebin.com/UfWV97Cg

Hopelijk heb je er wat aan.

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 14:41

SA007

Moderator Tweaking
Als je nog maar 2 weken programmeert met PIC's waarom dan assembly, maar daarbuiten...

@woutertje, netjes opgelost de 38khz zo, minder dan een procent afwijking, al had je er best bij kunnen zetten dat je proc in dat voorbeeldje op 8mhz draait (ws interne clock).

Als je in de PIC iets vergelijkbaars lukt zou ik dat zeker aanraden, dan is je code veel makkelijker, maar van de timers in de PIC's heb ik geen kaas gegeten.

Die timers mis ik overigens compleet in je code, je lijkt een oneindige loopt gemaakt te hebben welke een blokgolfje maakt waarbij de frequentie nogal hoog is, veel meer dan 36khz..
Note: het lijkt erop dat je eerste branch bij wel/niet geset een andere uitvoertijd heeft, dat zorgt ervoor dat je pwm niet 50% is en je afwijkingen gaat krijgen.
Overigens zou ik sterk aanraden iets te gaan doen zoals woutertje gedaan heeft (de interne pwm uitrekenen voor de 36khz en die instellen) dan hoef je alleen nog de pwm aan en uit te zetten en niet zelf een signaal te maken.

Acties:
  • 0 Henk 'm!

  • Killerbert
  • Registratie: September 2007
  • Laatst online: 14-09 21:16
leuk beginners project!

Ik heb zelf in het begin ook met assembly geprogrammeerd.
Het is veel meer werk en ingewikkelder om in assembly te programmeren dan in c.
Als je gewoon mplab gebruikt, dan kan je bijvoorbeeld de gratis CC5x compiler gebruiken

Op een dag drink je geen bier meer maar drink je Grolsch... My specs


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
ik lijk het dan nog niet echt te begrijpen, ik dacht dat je mijn code gewoon bij een interupt kon zetten die geactiveerd zou worden door een overflow, die na de zoveel tijd plaatsvind zoals ik dacht dat SA007 had uitgelegd, werkt dit niet zo?

Is het verder trouwens qua ongelijkheid gewoon op te lossen door er NOP's bij te zetten op de juiste plek?

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 14:41

SA007

Moderator Tweaking
Je kan het op meerdere manier doen.

Het makkelijkste om te begrijpen is de pwm van je processor gebruiken, maar dan moet je de timers van je processor snappen, maar dan is het wel een kwestie van een paar registers goed zetten en je bent klaar.

Dan heb je ook geen problemen met ongelijkheid en heb je ook tijdens het zenden je hele processor vrij om andere dingen te doen, of helemaal niks, hangt van je toepassing af natuurlijk :P

Edit: heb in de datasheet van de PIC gekeken, hij lijkt helemaal geen custom overflows of pwm te ondersteunen. Alleen een prescaler en een fixed overflow van 0xFF naar 0x00. Das best prut, want dan heb je niet heel veel aan je timer tenzij je een extern kristal gaat gebruiken.

Als je een extern kristal geen probleem vind zal je iets moeten gaan zoeken wat met een normale prescaler een nette 72khz kan bouwen en dan in software op je timer interrupt je pin inverteren.

[ Voor 35% gewijzigd door SA007 op 17-03-2010 20:33 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ik beschik ook over een 12f683, voldoed deze wel voor de simpele manier?

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Iemand een idee?

Acties:
  • 0 Henk 'm!

  • woutertje
  • Registratie: Maart 2002
  • Laatst online: 18:08
De 10-bit PWM van die chip gaat maar tot 20 Khz, de 36/38 Khz die je nodig hebt haal je daarmee dus niet.
Een chip die wel de benodigde timers heeft zal zo rond de 5 euro kosten (iig bij Atmel, bij Microchip zal het niet veel anders zijn).

Acties:
  • 0 Henk 'm!

  • Sphere-
  • Registratie: November 2003
  • Laatst online: 28-08 19:53
woutertje schreef op dinsdag 30 maart 2010 @ 18:19:
De 10-bit PWM van die chip gaat maar tot 20 Khz, de 36/38 Khz die je nodig hebt haal je daarmee dus niet.
Een chip die wel de benodigde timers heeft zal zo rond de 5 euro kosten (iig bij Atmel, bij Microchip zal het niet veel anders zijn).
Mwa.. met een ATtiny2313 kan het in ieder geval (kost ongeveer 1.25E), en waarschijnlijk zijn er nog wel kleinere goedkopere in de ATtiny serie.
quote: SA007
Hierdoor krijg je dus een blokgolf met beide kanten je 14ns, totaal wordt 1 sectie van 2 periodes dus 28ns, wat vervolgens ~36khz is.
Maak daar maar microseconden van.

Volgens mij is het prima te doen met bitbangen zonder interrupts als je microcontroller verder niks anders te doen heeft.

[ Voor 24% gewijzigd door Sphere- op 30-03-2010 19:26 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
ok, zou iemand mij dan kunnen uitleggen hoe ik het met een 4mhz extern cristal zou kunnen doen?

Acties:
  • 0 Henk 'm!

  • ~Destructor()
  • Registratie: Mei 2000
  • Niet online
Deze is interessant:

Atmel AVR application note 410
RC5 IR Remote Control Receiver

http://www.atmel.com/atmel/acrobat/doc1473.pdf

Nothing is impossible


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
zou iemand uit kunnen leggen hoe het toch met interupts met een extern cristal en een pic micro kan?

[ Voor 74% gewijzigd door huub8 op 31-03-2010 21:35 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
niemand?

Acties:
  • 0 Henk 'm!

  • skr
  • Registratie: Juli 2003
  • Laatst online: 03-09 21:04

skr

Als eerste zou ik (als ik jou was) de TX van de uart gebruiken als zender. Deze moduleren op +- 32khz. Dit moduleren doe je met een AND poort waar je op de ene ingang je TX aansluit en op de andere het 32Khz signaal. De uitgang van de AND poort doe je op de led (via transistor oid)

Een 32Khz (of iets in die richting) blokgolf maak je met een crystal en een deler ic.

De uitgang van de ontvanger plaatsen op de RX van de ontvanger.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Sorry, maar ik ben nog heel onbekend met microcontrollers en de daarbij horende termen. Zou je het wellicht in lekentermen kunnen uitleggen (ik weet echt nog heel weinig, dus bijvoorbeeld niet wat de de UART, TX, RX etc is, laat staan hoe ze werken).

Alvast bedankt!

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
niemand die het kan "versimpelen"?

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
NIemand?

Acties:
  • 0 Henk 'm!

  • woutertje
  • Registratie: Maart 2002
  • Laatst online: 18:08
UART staat voor Universal Asynchronous Receiver Transmitter, deze wordt gebruikt om data serieel
te versturen. TX staat hierbij voor de verzendende pin en RX voor de ontvangende (deze staan in de datasheet aangegeven).

Als je nu de TX samen met een op de gewenste frequentie gemoduleerd signaal aansluit op een AND poortje (hier zitten 4 van in bijv. een 7408 IC), dan krijg je het gewenste effect:
Als de TX een hoog signaal heeft dan wordt de uitgang van het AND poortje met de gewenste frequentie getoggled, als hij laag is is de uitgang gewoon laag (dit doet het AND poortje dus, de uitgang is alleen hoog als beide ingangen hoog zijn).

Hopelijk is het zo wat duidelijker, verder zul je gewoon veel google moeten gebruiken en misschien moet je eerst
proberen om nog wat simpelere dingen te doen met een microcontroller.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
ik snap het al een stuk beter, maar nog niet helemaal:

Ik begrijp dat je dus een appart component nodig hebt als AND poort.
Maa ik snap nog niet helemaal of ik welke van de twee de bedoeling is:

- Moet ik met mijn TX pin een 36khz signaal maken en dat op de AND poort zetten, zoja, wat moet dan op de andere pin van de AND poort? Moet daar dan gewoon een normale pin op worden gezet die ik dan hoog zet wanneer ik het signaal wil verzenden? Als dit het geval is, hoe krijg ik dan (in lekentermen) een 36khz signaal uit de TX?

- Uit wouters uitleg lijk ik te begrijpen dat je een op 36khz gemoduleerd signaal moet zetten op één van de AND pinnen (waar komt dit signaal dan vandaan), en op de andere de TX pin (waar diend de TX dan voor?).

De grootste vraag voor mij is nu dus nog waar het 36khz signaal vandaan moet komen, en hoe ik dit voor elkaar krijg...

[ Voor 32% gewijzigd door huub8 op 04-04-2010 23:23 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Kan iemand mij verder uitleggen hoe zo'n comparator werkt, ik heb namelijk een LA6393S (zie: http://www.datasheetcatalog.org/datasheet/sanyo/ds_pdf_e/LA6393S.pdf )

Maar het lukt mij niet hier iets mee te doen, wat moet ik waarop aansluiten?

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Niemand?

Acties:
  • 0 Henk 'm!

  • SA007
  • Registratie: Oktober 2002
  • Laatst online: 14:41

SA007

Moderator Tweaking
wat woutertje zegt is:

Als je een and poort pakt, en je maakt compleet los van je microcontroller een 36khz signaal dan kan je die met de and koppelen met de standaard seriele uitgang van je microcontroller.

Opzich geen slecht idee, maar dan moet je wel een 36khz gaan maken met iets anders.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Een suggestie over hoe ik dit signaal dan kan maken?

Verder snap ik ook nog niet hoe zo'n and component werkt, ik heb namelijd de vcc op de + aangesloten, de ground op de -, de Vin1+ en Vin1- op de plus, en dan een led op de Vout1, maar de led brand niet, hoe werkt het dan?

Acties:
  • 0 Henk 'm!

  • Corn
  • Registratie: November 2001
  • Laatst online: 31-08 19:02

Corn

Raar jongetje

timertje?

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
timertje waarvan? een andere microcontroller?

Acties:
  • 0 Henk 'm!

  • base_
  • Registratie: April 2003
  • Laatst online: 17:56
huub8 schreef op maandag 05 april 2010 @ 18:38:
Een suggestie over hoe ik dit signaal dan kan maken?

Verder snap ik ook nog niet hoe zo'n and component werkt, ik heb namelijd de vcc op de + aangesloten, de ground op de -, de Vin1+ en Vin1- op de plus, en dan een led op de Vout1, maar de led brand niet, hoe werkt het dan?
Ik vrees dat je je eerst wat meer in electronica moet gaan verdiepen om verder te komen: eerst heb je het over een comparator, dan een AND poort met + en - ingang, een comparator is geen AND poort! Verder kun je softwarematig de juiste signalen opwekken. Een betrouwbare IR afstandsbediening zelf maken incl. protocol en hardware is redelijk veel werk maar ik kan me niet voorstellen dat er geen complete ontwerpen te vinden zijn (elektor heeft er overigens ook een boek over: http://www.elektor.nl/pro...tatransmissie.11406.lynkx

Acties:
  • 0 Henk 'm!

  • Corn
  • Registratie: November 2001
  • Laatst online: 31-08 19:02

Corn

Raar jongetje

Ik ben het met bovenstaande eens; je zult je wat meer in de materie moeten verdiepen wil je hier echt iets mee bereiken. Ik ben bang dat je je kennis een klein beetje overschat.
Ik weet al behoorlijk wat van microcontrollers en algemene electronica, maar heb nog nooit met IR gewerkt, kan iemand mij op weg helpen?
Na een maandje met een microcontrollertje klooien weet je niet 'behoorlijk wat'. Dat blijkt wel uit de juweeltjes van posts die je hier en op andere plaatsen maakt. Op GoT zijn heel veel mensen die je graag op weg willen helpen, maar het is niet haalbaar om overal je handje vast te blijven houden. Je zult dus zelf ook wat research moeten doen. Succes!

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Uiteraard hoef niemand "mijn handje vast te houden", maar ik denk dat ik nu al meer heb geleerd dan wanneer ik steeds simpele led schakelingen aan het maken was geweest. Verder verwarde ik inderdaad een comperator met een AND poort, maar nu weet ik direct wat beide zijn :P

Ik hoef ook geen betrouwbare IR afstandbediening te maken, op het moment ben ik al te vreden als ik alleen maar een 36khz signaal weet te maken met een IR led. Persoonlijk leek mij dit nog wel te doen... Het enige wat ik nu eigenlijk niet snap (voor zover ik zelf kan inschatten wat ik snap), is hoe ik dat 36khz signaal kan maken?

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
niemand die nog een poging wil doen mij uit te leggen hoe ik het makkelijkst het 36khz signaal maak?

Acties:
  • 0 Henk 'm!

  • skr
  • Registratie: Juli 2003
  • Laatst online: 03-09 21:04

skr

Zoek eens op google naar oscillator. En dan met name een gebruik makend van een hex inverter (een 7404 bijvoorbeeld)

Zet daar een crystal op van bv 3.686400 Mhz Als ik me niet vergis kan je die delen naar 36Khz. Dit zal je kunnen doen met bv een 7490 of 74390 maar precies weet ik het niet zo direkt.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
oke, dus gewoon een microcontroller aansluiten op een AND, samen met een 7490 of zoiets dergelijks die een signaal doorgeeft van 36khz door een cristal frequentie van 3.686400 Mhz door 1024, en dan (met transistor etc) een IR led op de uitgang van de AND?

[ Voor 50% gewijzigd door huub8 op 09-04-2010 16:45 ]


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
kent iemand een goede tutorial over hoe je de 7490 moet aansluiten (in dit geval voor een deling door 1024)?
Of kan iemand mij zelf uitleggen hoe het werkt, want uit de datasheet word ik niet veel wijzer, en op google kan ik geen turorials vinden over hoe je hem moet aansluiten voor een bepaalde deling.

[ Voor 47% gewijzigd door huub8 op 09-04-2010 14:02 ]


Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Wat is er gebeurd met je zelfredzaamheid? Probeer bijvoorbeeld de 7490 eens op een breadboardje te stoppen met wat LEDs eraan en ga gewoon eens experimenteren. Ik neem aan dat je de datasheet al doorgenomen hebt?

Verder heb je het hier over het genereren van een 36KHz-signaal. Wat houd je tegen gewoon te beginnen? Pak een PIC en ga net zolang in de datasheet spitten tot je iets hebt uitgevonden wat 36KHz zou kunnen uitspugen. Implementeer het dan en kijk wat het doet met je ontvanger (hoewel een scoop hier ook erg handig zou wezen.) Ga daarna eens kijken hoe ver je met modulatie kan komen. Jah, het gaat je tijd, bloed zweet en tranen kosten, maar het levert je uiteindelijk veeeel meer op dan het domweg hier vragen; zeker omdat je gewoon nog een newbie in het hele microcontroller-gebeuren bent. Mogelijk is het wel: ik kan me zo 2 manieren verzinnen om zo'n signaal te maken met alleen de PIC, en het is een jaar of 15 geleden dat ik voor het laatst met die dingen gewerkt heb.

Uiteindelijk zul je toch een sloot ervaring op moeten doen om dit soort dingen te weten; die krijg je door ipv bijvoorbeeld de twee bovenstaande postst te maken gewoon de componenten te kopen en het uit te proberen, en evt fouten te maken. Ook daarvan leer je.

[ Voor 7% gewijzigd door Sprite_tm op 09-04-2010 14:04 ]

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
ik zou dat zeker doen als ik de onderdelen al had, maar ik wacht nog op mijn bestelling. Ondertussen zou ik graag al zo veel mogelijk kennis krijgen opdoen over hoe het waarschijnlijk zou gaan werken, zodat ik het best dingen kan uitprobveren als ik de onderdelen eenmaal heb.

edit:

Klopt het dat je behalve een cristal van 3.686400 ook een cristal van: 27 mhz kan gebruiken (aangezien je deze op 36khz kan laten uitkomen door 27000000 door 7500 te delen)?

[ Voor 25% gewijzigd door huub8 op 09-04-2010 17:04 ]


Acties:
  • 0 Henk 'm!

  • base_
  • Registratie: April 2003
  • Laatst online: 17:56
misschien klun je hier wat mee: http://jap.hu/electronic/codec.html

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

huub8 schreef op vrijdag 09 april 2010 @ 14:06:
ik zou dat zeker doen als ik de onderdelen al had, maar ik wacht nog op mijn bestelling. Ondertussen zou ik graag al zo veel mogelijk kennis krijgen opdoen over hoe het waarschijnlijk zou gaan werken, zodat ik het best dingen kan uitprobveren als ik de onderdelen eenmaal heb.
Dan is de manier die je nu volgt niet de goede. Dat je veel te vragen hebt, okee, maar op een gegeven moment gaan mensen er genoeg van krijgen dat ze elk idee van je moeten beantwoorden, en gaan ze dat niet meer doen. Dat kan je in de bovenstaande posts al wel een beetje zien. Dat mag je best doen, 't is een vrij land, maar besef wel dat mensen je topic gaan negeren en je daardoor ook op je echt moeilijke vragen geen antwoord gaat krijgen.
Klopt het dat je behalve een cristal van 3.686400 ook een cristal van: 27 mhz kan gebruiken (aangezien je deze op 36khz kan laten uitkomen door 27000000 door 7500 te delen)?
Ik bedoel dus een vraag als deze. Wat voor antwoord had je willen hebben? 27000000/7500 is inderdaad 3600, maar dat had je rekenmachine je ook kunnen vertellen. Zonder verdere schema's of programma-opzetjes of whatever kunnen we compleet niets met deze vraag.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog


Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
@base_ die was ik ook al tegengekomen, maar ik wordt er niet veel wijzer van aangezien dit toch wat boven mijn niveau is.

Weet iemand verder waar ik zo'n 7490 of 74390 kan vinden/kopen?

edit: die som heb ik het dus ook op mijn rekenmachine uitgerekend, maar omdat ik dus nog niet weet hoe je zo'n 7490 of 74390 moet aansluiten, en hoe die tijdsdeling werkt, weet ik dus niet of je een deling van 7500 kunt behalen.

Verder mijn verondschuldigingen voor de vele vragen, maar de antwoorden waardeer ik wel echt, meestal kom ik bij deze dingen er ook wel uit met behulp van google, maar helaas kan ik hier bijna niets over vinden dat het voor mij begrijpelijk uitlegd.

[ Voor 55% gewijzigd door huub8 op 09-04-2010 20:08 ]


Acties:
  • 0 Henk 'm!

  • woutertje
  • Registratie: Maart 2002
  • Laatst online: 18:08
Die twee chipjes kun je makkelijk op farnell.com vinden, die hebben bijna alles. Verder kan waarschijnlijk elke zichzelf respecterende electronica zaak ze leveren.

Farnell is sowieso heel handig om datasheets op te zoeken, bij bijna elk product staat een linkje naar de bijbehorende datasheet.

Om je alvast op weg te helpen:
7490: http://nl.farnell.com/jsp...&Ntx=mode+matchallpartial

74390: http://nl.farnell.com/jsp...&Ntx=mode+matchallpartial

Laat je niet verwarren door de verschillende merken, deze zijn allemaal praktisch hetzelfde.
Als je er iets wilt bestellen zorg dan dat je voor een DIP/PDIP behuizing kiest, deze zijn makkelijk op een
gaatjesprint te plaatsen en te solderen.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
Ok, ik heb de producten gevonden, maar ik weet niet welke hex inverter goed is, kan iemand mij wijzen waarop ik moet letten, de lijst met hex inverters van farnell is hier te vinden:

http://nl.farnell.com/jsp...Values%3D500012%2B1004506

Hetzelfde geld voor de AND gate, voldoet hier elke and gate, of moet ik nog op bepaalde dingen letten (de lijst:http://nl.farnell.com/jsp...Values%3D500012%2B1004506)

Verder heb ik ook een 3.686400mhz oscillator gevonden, maar ik kan nergens vinden wat voor capacitors ik hierbij moet gebruiken (de oscillator: http://nl.farnell.com/jsp...uctdetail.jsp?sku=9712968)

Acties:
  • 0 Henk 'm!

  • woutertje
  • Registratie: Maart 2002
  • Laatst online: 18:08
Werkelijk geen idee wat een hexinverter er nou weer mee te maken heeft, maar de waarden die je zoekt
staan echt gewoon letterlijk vermeld in de datasheets.

Het belangrijkste wat jij moet doen is leren datasheets te lezen, fabrikanten willen over het algemeen graag
dat hun chips gebruikt worden en zetten er dus veel nuttige informatie in.

Acties:
  • 0 Henk 'm!

  • huub8
  • Registratie: Maart 2009
  • Laatst online: 28-06-2021
skr schreef op donderdag 08 april 2010 @ 22:00:
Zoek eens op google naar oscillator. En dan met name een gebruik makend van een hex inverter (een 7404 bijvoorbeeld)

Zet daar een crystal op van bv 3.686400 Mhz Als ik me niet vergis kan je die delen naar 36Khz. Dit zal je kunnen doen met bv een 7490 of 74390 maar precies weet ik het niet zo direkt.
Dus ik dacht dat het nodig was eerst een hex inverter te hangen aan 36khz signaal en de AND gate...

Ik heb gezocht in de datasheet van de oscillator, maar kan daar nergens iets vinden behalve dan in het "test circuit" schema, waar men een 0,1uf en een 15pf capacitor gebruikt, moet ik deze dan gebruiken?

[ Voor 16% gewijzigd door huub8 op 10-04-2010 23:44 ]


Acties:
  • 0 Henk 'm!

Verwijderd

huub8 schreef op zaterdag 10 april 2010 @ 23:33:
[...]


Dus ik dacht dat het nodig was eerst een hex inverter te hangen aan 36khz signaal en de AND gate...

Ik heb gezocht in de datasheet van de oscillator, maar kan daar nergens iets vinden behalve dan in het "test circuit" schema, waar men een 0,1uf en een 15pf capacitor gebruikt, moet ik deze dan gebruiken?
|:(

Acties:
  • 0 Henk 'm!

  • Corn
  • Registratie: November 2001
  • Laatst online: 31-08 19:02

Corn

Raar jongetje

When you earnestly believe you can compensate for lack of skill by doubling your (maar voornamelijk: andermans) efforts, there's no end to what you can't do.

Acties:
  • 0 Henk 'm!

  • skr
  • Registratie: Juli 2003
  • Laatst online: 03-09 21:04

skr

huub8 schreef op zaterdag 10 april 2010 @ 23:33:
[...]


Dus ik dacht dat het nodig was eerst een hex inverter te hangen aan 36khz signaal en de AND gate...
En hex inverter gebruik je als onderdeel van je osscillator. De uitgang daarvan moet je delen om tot 36Khz te komen. Overigens, 36Khz is 36000 niet 3600 dus je deling van 1024 gaat niet op. Dat is 102,4 en dat kan niet.

Verder, seriously, je moet je echt eerst verdiepen in elektronica en alles er om heen. Je hebt absoluut niet de kennis om zomaar te beginnen met dit project. Begin bij het begin, en dit project is niet het begin.

Succes!

Acties:
  • 0 Henk 'm!

  • kitao
  • Registratie: Juli 2012
  • Laatst online: 05-09 16:01
huub8 schreef op zaterdag 13 maart 2010 @ 17:00:
Ik zou graag met 2 microcontrollers (16f84a), en een IR led (nog aan te schaffen) en een IR ontvanger (nog aan te schaffen) een soort simpele draadloze verbinding maken.

Dat wil zeggen, ik wil eerst gewoon graag dat ik een simpelweg één pin op de ene microchip via IR met de andere op hoog kan zetten, ik heb een boel gezocht naar IR tutorials e.d., maar ik kan niets vinden dat het goed vanaf de basis uitlegd.

Ik weet al behoorlijk wat van microcontrollers en algemene electronica, maar heb nog nooit met IR gewerkt, kan iemand mij op weg helpen?
misschien heb je hier wat aan
ik heb het zelf nog niet geprobeerd of gelezen maar ik denk dat dit wel een redelijke uitleg geeft van de opbouw van infrarood icm micro's

http://www.parallax.com/P...rod/sic/WebIR-%20v1.1.pdf

de download komt hiervandaan :

http://www.parallax.com/S...roductID/149/Default.aspx

Acties:
  • 0 Henk 'm!

  • Sprite_tm
  • Registratie: September 2002
  • Laatst online: 11-08 04:52

Sprite_tm

Semi-Chinees

Ik heb ergens het vermoeden dat de topicstarter naar meer dan 2 jaar er wel uit is ;) Slotje zodat het topic niet verder gekicked word. Als iemand toch argumenten heeft om het topic open te houden: je weet mijn DM te vinden.

Relaxen und watchen das blinkenlichten. | Laatste project: Ikea Frekvens oog

Pagina: 1

Dit topic is gesloten.