Fórum témák

» Több friss téma
Fórum » RF adatátvitel, FEC, ECC hogyan?
 
Témaindító: Prosatanos, idő: Jún 22, 2009
Témakörök:
Lapozás: OK   1 / 2
(#) Prosatanos hozzászólása Jún 22, 2009 /
 
Sziasztok!

Többszáz méterre kéne adatot küldenem egy rádiós adó/vevő párral, aminek a hardvere már kész, és néhány tízméterre már működik is. Ennél nagyobb távolság esetén már bit hibák lépnek fel a kommunikációban. Azt szeretném kérdezni, hogy a hibák javítására milyen eljárás lenne a legcélszerűbb amatőr körülmények között, ami nem túl bonyolult szoftver, és hatékony. Én arra gondoltam, hogy minden bitet 3 biten küldenék át, 000 / 111 attól függően, hogy 0 vagy 1-et kell átvinni, és a vevő többségi szavazás elvén döntené el, melyik volt. Hiba javításra Hamming (8,4)-et gondoltam. Azonban ezt így megcsinálni elég komoly szoftver, és félek hogy csak a *-nak adok egy pofont. Például mi van akkor, ha elcsúsznak a bitek, akkor az egész mit sem ér. Természetesen lehetséges az újraküldés is, de valahol azt olvastam, hogy 100 küldésből lehet csak 1 lesz sikeres. Kérem, akinek van ötlete írjon. /A Shannon limitet azért természetesen nem kell megközelíteni. /

Egyáltalán mennyi lehet a *normál* bithiba mondjuk 40 bitből 500mW teljesítménnyel a távolság függvényében?
(#) aticska válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Szia!

Nekem is volt egy hasonló feladatom, sokat kínlódtam,
aztán megvettük Ezt. Az ára nem vészes, és
minden gond megoldódott.
(#) watt válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Jelenleg milyen eszközöket használsz?
(#) Hp41C válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Szia!

Mekkora egy csomag? Ha kisebb, mint 512 byte, akkor ajánlom a CRC16 kódolást (Floppy, Modbus). Elég izzasztó megcsinálni, de van táblázatos módszer, aminél csak hely kell. A lényeg a csomagra csak 2 byte-ot tesz rá és 2^(-16) = 1/65536 valószínűséggel fogad el egy hibás csomagot jónak.
Bővebben:
(#) pucuka válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Üdv!
Javaslom, nézd át a ezt, és ezt és ezt valamint ezt a topikokat. Választ kaphatsz a kérdéseidre.
Hibajavítás nélkül nem is érdemes próbálkozni, rádiós adatátvitel nem egészen sima ügy. Ha a távolság esetleg kevés, akkor külső irányított antennával próbálkozz.
(#) pako válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Üdv!

Esetleg nézd át ennek a modulnak a leírását. Én meg vagyok vele elégedve. Alapból tudja a CRC16-ot is.
(#) Prosatanos válasza aticska hozzászólására (») Jún 22, 2009 /
 
Szia! Jól hangzik! Mik a tapasztalatok? Mekkora kb a hatótávolság? Mennyire befolyásolják épületek, tereptárgyak?
(#) Prosatanos válasza watt hozzászólására (») Jún 22, 2009 /
 
Szia! PIC16, HopeRF RFM12BP
(#) Prosatanos válasza Hp41C hozzászólására (») Jún 22, 2009 /
 
Ezzel csak az a gond, hogy detektálja a hibát, ami most is megy. Újra küldést igényel, és újra, és újra... ha csak 1 bit is megfordul.
(#) tcs52 válasza Prosatanos hozzászólására (») Jún 22, 2009 / 4
 
Rádiós átvitelnél a leggyakoribb hibák a légköri és egyéb elektromágneses zajokból erednek, amelyek hibacsomókban jelentkeznek. Ez náhány bitet vagy bájtot szokott érinteni. Én aránylag kisebb csomagokat javasolnék (néhány tucat bájtot) és mindenképpen valamilyen CRC-féle legyen az ellenőrzés. Emellet pedig többször küld el (akár 3x is) a csomagokat - időben minél távolabb egymástól az ismétléseket. Ha nincs semmi visszajelzés, akkor az ismétlések számát kell a biztonság érdekében tovább növelni. Hogy ez mennyi legyen, azt hosszas teszteléssel kell belőni. Adj minden új csomagnak egyedi azonosítót (egy 16 bites, egyesével növekvő szám elegendő), hogy megállapítsd a vételkor, hogy ismétlésről, vagy új blokkról van-e szó. Természetesen nagyon ritkán akár 100-szoros ismétlésnél is lehet, hogy nem megy át, ezért végig kell gondolni az elveszett csomag esetét (pl. az előzővel vagy a következővel helyettesíteni az adatokat), de ez az adott feladattól függ.

(#) watt válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Ez egy elég jó modul. Megvan a szükséges antenna is hozzá? Mert 500mW jó antennával nem pár 10m-re kéne elérjen!
tcs52 leírta alényeget, sok kis csomag, csomagonként CRC és csomagazonosítók. Ha nem jó a CRC hibajel, majd újraküldés. Érdemes utánanézni a neten, mert ha jól emlékszem a microchipnél is van példa az rfPIC-ek körül.
(#) Prosatanos válasza pako hozzászólására (») Jún 22, 2009 /
 
Szia! Tőled is azt kérdezném, mint a kollégától: mik a tapasztalatok? Mekkora kb a hatótávolság? Mennyire befolyásolják épületek, tereptárgyak
(#) Prosatanos válasza pucuka hozzászólására (») Jún 22, 2009 /
 
Szia! Átböngésztem az anyagot, de igazán nem kaptam választ az adatátvitel módjára. Az irányított antenna nem járható út, a vevő bárhol lehet, akár több emelet vasbeton alatt is. Persze ekkor, épületen belül 30m is elég. Körsugárzó kell minkét készülékre.
(#) pako válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Az adatlap szerint 250 métert tud nyílt terepen, de ezt még nem próbáltam ki. Mindkét modulon 10 centis nyák antenna van (nem volt elég hely a 16.3 cm-nek ), de így is 3 falon át, kb 30 méter távról minden csomagot sikeresen vesz. Nyílt terepen szerintem meg se kottyan neki a 200-250 méter, normális antennákkal.

A te moduljaidban azonos frekin zizegnek a PLL-ek? Ha nem, az miatt is jócskán csökkenhet a hatótáv.
(#) Prosatanos válasza watt hozzászólására (») Jún 22, 2009 /
 
Hát ez az! Ezen a ponton sötétben tapogatózom. A nyák alsó és felső felülete gyakorlatilag teljesen be van borítva földeléssel, a két oldal több ponton össze van kötve. Jelenleg az antenna 8.5 cm hosszú 0.5mm átmérőjű lakkozott tekercselő huzal. A nyák egyik csücskén figyel. Ráadásul a végleges verzióban az egyik egység kézben tartott lesz. Ráadásul körsugárzó kéne. Próbáltam komolyabb whip-pel, 8.5 cm sugarú lemez közepén volt ugyan az a drót. Nem volt számottevő javulás.
(#) Prosatanos válasza pako hozzászólására (») Jún 22, 2009 /
 
Szerintem csalódni foksz, mert az enyém is ilyen! 11 emelet vasbeton meg sem kottyan neki, kb 30m. Kint utcán, bizonyos irányba elvisz 100 métert, más irányba mély nullákkal tartkított a térerő. Nyilt terepen sem vitt messzebb, mint az épületek között.

A pll frekit csak a kristály kapacitásának hangolásával lehet belőni. Már építettem rá egy pickes freki mérőt, 10MHz-re. Ha nem is 10MHz lesz, de legalább egyforma. Gondolod, hogy számít mondjuk 100 métert?
(#) aticska válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Szia!

16 centis antennával 2-3 falon keresztül 40-50m-ig
próbáltuk.Nem tudom a max mennyi lehet. Ha legközelebb arra járok majd kipróbálom. Az adatlap szerint nyílt terepen
300 m. Ja és ezt a távolságot 38400-as sebességgel tudta.
(#) pako válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Bár az RF-ben nem vagyok otthon, de úgy tudom, hogy sokat számít az azonos freki. Az én moduljaimban kb 200 KHz-enként lehet állítani a frekit (10 lépésben -> 10 csatorna), és ezt pont arra találták ki, hogy ezek a csatornák ne zavarják egymást. Tehát ekkora különbség elvileg drasztikus romlást eredményez.

Idézet a modulod adatlapjából:
Idézet:
„High resolution PLL with 2.5 KHz step”

Idézet:
„Programmable TX frequency deviation (from 15 to 240 KHz)”

Idézet:
„Programmable receiver bandwidth (from 67 to 400 kHz)”


Ezek szerint állítható a tiédben is.
(#) watt válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Meg kéne mérd, mekkora a kimeneti teljesítmény. Nincs valami ismerősöd akinek van antenna teljesítmény mérője? Egy rosszul illesztett antenna több dB-t ront, de ezt gondolom te is tudod, csak ezt nagyon nehéz műszerek nélkül behangolni. Milyen frekin megy ez? 868MHz?

Körsugárzó pedig csak akkor lesz, ha áll az antenna.
(#) pako válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Ezen az oldalon van egy kódrészlet a 4. hozzászólásban. Hátha segít valamit.
(#) Prosatanos válasza pako hozzászólására (») Jún 22, 2009 /
 
Igen így van. Bár a kapacitás ugyanarra van állítva, nem tudom mekkora lehet ezeknek a *cheap* (?) kristályoknak a szórása. 2.5 kHz a 10mHz-hez képest elenyészőnek tűnik. Szoftver előtt holnap ráfekszem ennek a megmérésére. (Erre már én is gondoltam, de műszer hijján... ). Jelenleg 1.2 kbit/s az átviteli sebesség, és 200kHz a sávszélesség. Ha jól tudom, így menne a legmesszebb.
(#) Prosatanos válasza watt hozzászólására (») Jún 22, 2009 /
 
868 mHz, és sajna nincs ismerős. Így valóban nehéz... De annál szebb lesz... Ami nem öl meg, az erősít.
(#) pako válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Nah bebizonyosodott, hogy állítható.
Bővebben: Link

9. oldal: Frekvency Setting Command

Ezen kívül benne van minden konfig utasítás.

Jah még valami! Az a 2.5 KHz lépés nem a 10 MHz-es részen van, hanem a 868 MHz-et tudja ilyen finoman hangolni.
(#) Prosatanos válasza pako hozzászólására (») Jún 22, 2009 /
 
Ez pár hete még nem volt fönn....
(#) pako válasza Prosatanos hozzászólására (») Jún 22, 2009 /
 
Az én modulomhoz is napokig kellett leírás után kutakodnom a konfig parancsok miatt
(#) Prosatanos válasza pako hozzászólására (») Jún 22, 2009 /
 
Ha megkérhetlek, és lenne rá időd, te hová állítanád a 4., 5., 6., 11., 12., parancsot?
(#) Prosatanos válasza pako hozzászólására (») Jún 22, 2009 /
 
Nekem volt már három is amiből dolgoztam, mind HopeRF pdf, de ezt még nem láttam... Szerencsére ugyan azt írja, bár néha részletesebb, néha meg nem a többinél...
(#) pako válasza Prosatanos hozzászólására (») Jún 23, 2009 / 4
 
A 4.-hez bármit írhatsz 36-3903 között. Ez határozza meg a modul frekvenciáját ezzel a képlettel:

Fc=860+F*0.0050 MHz
Fc: kimeneti freki
F: beállítandó érték
pl: pontosan 868MHz beállításánál az F=1200
Fc=860+1200*0.005=868
(bin=10100100 10110000, hex=A4B0

(A vezeték nélküli kábeles telefonok (ez jó hülyén hangzik ) is a 86x MHz-es sávon működnek többnyire. A zavart jel származhat ebből is, ha van a környéken. Szerintem próbálj majd ki több variációt is, melyik a legjobb.)

Az 5. elvileg az átviteli sebességet állítja. De fogalmam sincs, hogy az ott említett képlettel milyen mértékegységet kapunk.

A 6.-nál:
P16-ot én 1-re állítanám (Pin16 VDI kimenet: hibás adatokat jelzi!),
d1, d0: 0,0 (gyors reakció a VDI lábon),
i2, i1, i0: 1,1,0 (67KHz sávszélesség),
g1, g0: 0,0 (LNA gain 0 dBm),
r2,r1,r0: 0,0,0 (térerősség-mérő érzékenysége -103 dBm)
tehát: 10010100 11000000(bin), 94C0(hex)

A 11.-nél:
a1,a0 : 0,1 (bekapcsoláskor egyszer automata frekvencia-keresés),
rl1, rl0 : 0,0 (nincs sávszélesség-korlátozás)
st, fi, oe, en: 0,0,1,1 (AFC bekapcsolása)
11000100 01000011(bin), C483(hex)

A 12.nél:
mp, m3, m2, m1, m0: ezt passzolom.
p2, p1, p0 : 0,0,0 (kimeneti teljesítmény 0dBm)

Az adatlap 21. oldalán van egy teljes forráskód C nyelven, benne van a konfiguráció is. Amiben nem vagy biztos, illetce amit én nem tudtam, az alapján be tudod állítani.
(#) ptibi78 hozzászólása Szept 10, 2009 /
 
Sziasztok!

Még új vagyok az oldalon, és a témakörben sem vagyok túlzottan járatos (mondhatni semennyire ). Lenne egy olyan kérdésem, hogy milyen RF eszközzel tudnék egy olyan problémát megoldani, hogy körülbelül min. 20 eszköznek kellene venni egymás adatait (az adat mennyiség csak pár byte) és mindezt több mint 10 km-es távolságból. Az adatokat egy pc küldené az adó felé (legjobb lenne soros vonalon).
Elég sokat keresgéltem net-en, de nem sikerült olyan eszközt találnom, amely ezt a távolságot át tudná hidalni
Ha valaki tud segíteni, az előre is köszönöm!
(#) pucuka válasza ptibi78 hozzászólására (») Szept 10, 2009 /
 
Üdv!
Vezetékes, vagy vezetéknélküli adat hálózatot kell építened. (ha a feladat 10 km re szól)
Vezetékes:
Ha minden telephelyen van PSTN, akkor modemeken kereszül, vagy béreltvonali összeköttetéssel.
Vezetéknélküli:
Tervezel, vagy terveztetsz, és engedélyeztetsz egy rádiós adatátviteli hálózatot, vagy GSM modulokat (GPRS) használsz.
Mindegyik megoldás jó drága. Ha nem szükséges online kapcsolat, akkor ZigBee -t is használhatsz
Következő: »»   1 / 2
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem