Radiomodul som styr på/av
-
- Inlägg: 22
- Blev medlem: 18 juni 2004, 01:06:01
Radiomodul som styr på/av
Billiga små radiomoduler, typ de som säljs av www.kjell.com (och som finns av enormt många olika fabrikat och bara kostar ett par dollar utomlands) är bra för dataöverföring. Men hur kan de användas för att utan PIC på mottagarsidan sätta på/ stänga av en apparat? Låt oss säga en enkel lysdiod.
Mottagaren fungerar ungefär så här:
- Den genomsnittliga nivån på radiosignalen under den senaste sekunden (bråkldel därav?) "beräknas" kontinuerligt.
- När signalnivån är över detta medel, så leder mottagarens datapinne.
- När signalnivån är under detta medel, så leder den inte.
- Möjligen finns det tröskelvärde för hur mycket signalen måste överstiga medlet.
Följden av detta blir:
- Utan specifik sändare i närheten, så kommer mottagarens datapinne att snabbt och slumpmässigt växla mellan att leda och att inte leda. Detta därför att brusnivån växlar över och under sitt eget medelvärde.
- Om man sänder en radiosignal med konstant styrka, så kommer mottagarens datapinne endast att leda ett kort ögonblick i början av sändningen. Därefter så blir ju den konstanta signalen detsamma som medelvärdet, och bruset kommer återigen att styra mottagarens datapinne.
- Man måste hastigt växla sändnignar med sändningsstopp, för att signalströmmen ska kunna skiljas från medelsignalstyrkan (bruset).
Detta är lätt gjort med lite intelligent elektronik som tolkar mottagarens signaler. Men hur kan man få t.ex. en lysdiod att tändas och släckas på radiokommando, utan att blanda in en PIC?
Förslag:
Antag att datapinnens nivåer är 0 och 5 volt.
Ponera att man sänder 1/5 av tiden, t.ex. 1 ms sänding följs av 4 ms paus när man vill att lysdioden ska vara släckt, och 4/5 av tiden när man vill att den ska lysa.
Kan man då med en lämplig kondensator se till, i AV-läge, att de korta strömpulsarna (1 ms) inte når lysdioden utan istället laddar upp kondensatorn. Under den långa pausen (4 ms) så laddas då kondingen ur mot mottagarens datapinne (kan det skada mottagaren?)
Samtidigt måste, i PÅ-läge, de långa pulserna (4ms) vara tillräckligt långa för att kondensatorn ska hinna bli fulladdad så att strömmen istället tar vägen genom lysdioden. Under de korta pauserna (1ms) så kommer väl då lysdioden att sakna ström?
Men hur beräknar man den önskade kapacitansen (och eventuellt motstånd i serie med den, och naturligtvis sändingstiden om man vill)? Och kommer kondingen verkligen att ögonblickligen växla mellan att vara icke fulladdad och fånga upp all ström, till att vara fulladdad och inte absorbera någon ström? Laddas inte kondingar asymptotiskt?
Datapinne som växlar mellan Gnd och 5v
|
|---Resistor---Lysdiod---Gnd
|
Resistor (evetnuellt)
|
Konding
|
Gnd
Vore kul med kommentarer. Finns kanske ett helt annat sätt att lösa detta på också.
Mottagaren fungerar ungefär så här:
- Den genomsnittliga nivån på radiosignalen under den senaste sekunden (bråkldel därav?) "beräknas" kontinuerligt.
- När signalnivån är över detta medel, så leder mottagarens datapinne.
- När signalnivån är under detta medel, så leder den inte.
- Möjligen finns det tröskelvärde för hur mycket signalen måste överstiga medlet.
Följden av detta blir:
- Utan specifik sändare i närheten, så kommer mottagarens datapinne att snabbt och slumpmässigt växla mellan att leda och att inte leda. Detta därför att brusnivån växlar över och under sitt eget medelvärde.
- Om man sänder en radiosignal med konstant styrka, så kommer mottagarens datapinne endast att leda ett kort ögonblick i början av sändningen. Därefter så blir ju den konstanta signalen detsamma som medelvärdet, och bruset kommer återigen att styra mottagarens datapinne.
- Man måste hastigt växla sändnignar med sändningsstopp, för att signalströmmen ska kunna skiljas från medelsignalstyrkan (bruset).
Detta är lätt gjort med lite intelligent elektronik som tolkar mottagarens signaler. Men hur kan man få t.ex. en lysdiod att tändas och släckas på radiokommando, utan att blanda in en PIC?
Förslag:
Antag att datapinnens nivåer är 0 och 5 volt.
Ponera att man sänder 1/5 av tiden, t.ex. 1 ms sänding följs av 4 ms paus när man vill att lysdioden ska vara släckt, och 4/5 av tiden när man vill att den ska lysa.
Kan man då med en lämplig kondensator se till, i AV-läge, att de korta strömpulsarna (1 ms) inte når lysdioden utan istället laddar upp kondensatorn. Under den långa pausen (4 ms) så laddas då kondingen ur mot mottagarens datapinne (kan det skada mottagaren?)
Samtidigt måste, i PÅ-läge, de långa pulserna (4ms) vara tillräckligt långa för att kondensatorn ska hinna bli fulladdad så att strömmen istället tar vägen genom lysdioden. Under de korta pauserna (1ms) så kommer väl då lysdioden att sakna ström?
Men hur beräknar man den önskade kapacitansen (och eventuellt motstånd i serie med den, och naturligtvis sändingstiden om man vill)? Och kommer kondingen verkligen att ögonblickligen växla mellan att vara icke fulladdad och fånga upp all ström, till att vara fulladdad och inte absorbera någon ström? Laddas inte kondingar asymptotiskt?
Datapinne som växlar mellan Gnd och 5v
|
|---Resistor---Lysdiod---Gnd
|
Resistor (evetnuellt)
|
Konding
|
Gnd
Vore kul med kommentarer. Finns kanske ett helt annat sätt att lösa detta på också.
Jag förstör inte riktigt vad du vill göra...
Ta emot en RF-signal utan att blanda in en PIC i mottagaren?
Då finns det färdiga mottagarkretsar att skaffa. Men då måste man själv designa kortet, vilket inte är så lätt när det gäller HF.
Annars så finns det RF-moduler med inbyggd PIC, och ofta kan man hitta ett färdigt kretscshema samt layout och därefter beställa/gära kretskortet.
Kika på http://www.nvlsi.no/
//Danne
Ta emot en RF-signal utan att blanda in en PIC i mottagaren?
Då finns det färdiga mottagarkretsar att skaffa. Men då måste man själv designa kortet, vilket inte är så lätt när det gäller HF.
Annars så finns det RF-moduler med inbyggd PIC, och ofta kan man hitta ett färdigt kretscshema samt layout och därefter beställa/gära kretskortet.
Kika på http://www.nvlsi.no/
//Danne
-
- Inlägg: 22
- Blev medlem: 18 juni 2004, 01:06:01
Du måste använda bågon form av IC som kodar (sändarsidaren) och dekoder (mottagarsidan) seriell asynkron data. Det lättaste är ju att använda en liten µC (exempelvis PIC) för att få det precis som man vill. Men om man inte behärskar dessa så finns det alternativ. Exempelvisdessa
Men om du verkligen vill ha det enligt din princip så kan det nog gå, men på mottagarsidan är det nog smartare att sätta ett RC-filter på utgången på radiomodulen och sedan låta en komparator jämföra spänningen på den filtrerade signalen och tända/släcka lysdioden. Men sen undrar jag hur du ska fixa fram en pulsbreddsmodulerad signal på sändarsidan, det är ju lika jobbigt som att programmera två PICar för seriell överföring
Men om du verkligen vill ha det enligt din princip så kan det nog gå, men på mottagarsidan är det nog smartare att sätta ett RC-filter på utgången på radiomodulen och sedan låta en komparator jämföra spänningen på den filtrerade signalen och tända/släcka lysdioden. Men sen undrar jag hur du ska fixa fram en pulsbreddsmodulerad signal på sändarsidan, det är ju lika jobbigt som att programmera två PICar för seriell överföring

-
- Inlägg: 401
- Blev medlem: 6 maj 2004, 12:22:36
- Ort: Stockholm
-
- Inlägg: 22
- Blev medlem: 18 juni 2004, 01:06:01
Tackar för kommentarerna! Jag förstår tyvärr inte av databladen vad de kretsar egentligen åstadkommer, som $tiff länkade till. Men de var ju väldigt billiga!
Vad jag undrar, kortfattat, är hur man enklast omvandlar en pulsbredd till konstant låg, och en annan pulsbredd till konstant hög. Finns ingen lösning med analog teknik?
Vad jag undrar, kortfattat, är hur man enklast omvandlar en pulsbredd till konstant låg, och en annan pulsbredd till konstant hög. Finns ingen lösning med analog teknik?
Man kan låsa en signal till dess medelvärde genom en RC-länk.
Om man skickar in en fyrkantsvåg (0 till 5V), med 50% duty-cycle, så kommer signalen att ligga mellan -2,5 och +2,5 V. Om du istället skickar in en signal med duty-cycle 10% så kommer signalen ligga mellan ca +4V och -1V. Därefter t.ex en zener-diod på 2.7V, den stoppar 2.5V men inte 4V späningen.
Sätt tau(R*C) till mycket större än T, så inte kondingen laddas ur...
Om man skickar in en fyrkantsvåg (0 till 5V), med 50% duty-cycle, så kommer signalen att ligga mellan -2,5 och +2,5 V. Om du istället skickar in en signal med duty-cycle 10% så kommer signalen ligga mellan ca +4V och -1V. Därefter t.ex en zener-diod på 2.7V, den stoppar 2.5V men inte 4V späningen.
Sätt tau(R*C) till mycket större än T, så inte kondingen laddas ur...