Fórum témák

» Több friss téma
Fórum » Két PIC közötti kommunikáció
 
Témaindító: JohnyBravo, idő: Márc 28, 2006
Témakörök:
Lapozás: OK   8 / 8
(#) pucuka válasza nedudgi hozzászólására (») Nov 9, 2014 /
 
Nem kell, de akkor valahol gyűjteni kell az adatokat. Gyűjtheti a mester PIC, vagy mikrogép akár, ha nem követelmény az on line kapcsolat. A router se gyűjti.
Ha már off line, akkor lehet ZigBee hálózat, mindenki gyűjti a magáét, és alkalmas időpontban kiolvas.
De nem mondta a témaindító mit akar. Elakadt az RF hatótávolságnál, és csak a WiFi routert ismerte.
De visszakérdezek. Miért jó a fórumtársnak, hogy egy egyszerű szobai adatgyűjtő rendszerbe bevonja az internetet is. Persze ha a világ másik feléről vezérli a lakás hőmérsékletét, páratartalmát, meg mitomén mit, és szereti a kihívásokat, akkor internet. A rádiós állomásokat így is, úgy is meg kell építenie, (a ZigBee legalább készen van) az pedig nem programmozói feladat.
Se le, se rábeszélni nem szeretném, csak láttatni, hogy milyen vezetéknélküli megodásők vannak, ami nem WiFi
A hozzászólás módosítva: Nov 9, 2014
(#) nedudgi válasza pucuka hozzászólására (») Nov 9, 2014 /
 
Szeretné elérni távolról a PIC áramköröket. Adatgyűjtésről, loggolásról eddig nem volt szó. Hagyjunk már egy kis időt szegénynek, hogy megeméssze a dolgokat, és kiválassza a számára egyszerűbb megoldást. Nem tudjuk, milyen elemekből, kontrollerekből áll(na) a rendszer, milyen szabad erőforrások vannak.
(#) pucuka válasza nedudgi hozzászólására (») Nov 9, 2014 /
 
Persze, de gondolom olvasva eszmefuttatásainkat, tisztulhat a kép.
Nekem az jött le, hogy a számítógépen keresztül szeretné az internet elérést. Az pedig logolhat is akár, de lehet olyan a programmja, hogy elérheti PC -n keresztül az egyes helyeket is.
A hozzászólás módosítva: Nov 9, 2014
(#) HerrTopi válasza nedudgi hozzászólására (») Nov 9, 2014 /
 
Azért lehet értelme, mert:
az jó, hogy elérhetem direktben az eszközöket messziről, de mi van a titkosítással? Mármint abból amit írtál én arra következtettem, hogy ha valaki elég türelmes, akkor megtalálhatja a címét az eszközeimnek és vígan trollkodhat velük (oké, ez egy teljesen valószínűtlen eset, de szeretek tiszta munkát végezni). Szóval arra gondoltam, hogy egy Raspberry Pi-t veszek, így minimál energiával mehet központi gép (linux alatt) és ott megírhatom a nekem tetsző biztonságú titkosítást (vagy rosszul értelmezem?)...
Amúgy igen, kifejezetten része az elképzelésnek a távoli elérés.
Köszönöm Neked és pucuka-nak is az ötleteket, segítséget
(#) pucuka válasza HerrTopi hozzászólására (») Nov 9, 2014 /
 
Azt még el kell döntened, hogy minden állomást külön külön el akarod érni az internetről, vagy csak a központi egységet. Bár a titkosítási igényed eléggé meghatározó.
A hozzászólás módosítva: Nov 9, 2014
(#) nedudgi válasza HerrTopi hozzászólására (») Nov 9, 2014 /
 
Mi az akadálya annak, hogy a PIC titkosított adatokat küldjön, fogadjon?
(#) HerrTopi válasza pucuka hozzászólására (») Nov 9, 2014 /
 
Nekem elég a központi egység is. Így csak egy vezérlő szoftvert kell megírni és azt lehet titkosítani.
(#) HerrTopi válasza nedudgi hozzászólására (») Nov 9, 2014 /
 
Felteszem semmi, viszont akkor pic-re kell megírni a titkosítást, és az ráadásul ugye töredék számítási kapacitással rendelkezik, így nem is tudom, hogy mondjuk egy RSA titkosítást le lehet-e emberi időben dugni a torkán.
(#) pucuka válasza HerrTopi hozzászólására (») Nov 9, 2014 /
 
Így gondoltam én is, mert így sokkal egyszerűbb. Innen választhatsz rádiós eszközöket:
Bővebben: Link
(#) b10up hozzászólása Jún 24, 2015 /
 
Sziasztok!

Szeretnék 2 18F45K50 típusú PIC-et összehozni soros porton, de nem akar sikerülni. Valamiért a PIC UART1_Data_Ready() flag-je sosem vált 1-re. 18F45K20 PIC-en működik rendesen, de ezeknél csak az adatküldés megy, azt PC fogadja is hibátlanul. Mit kell még beállítani, vagy mit ronthatok el?
(#) b10up válasza b10up hozzászólására (») Jún 28, 2015 / 1
 
Közben megoldódott, egy ANSELC=0; hiányzott a kódból.
(#) kaqkk hozzászólása Pé, 16:14 /
 

Onewire

Szeretném kipróbálni hogy vezeték nélküli töltőt építenék , és az ő tekercsével vinném át a kommunikációt is a dokkoló és a céláramkör közt . Milyen frekvencián fut az onewire protokoll ? Működhet az ötletem ?
A hozzászólás módosítva: Pé, 16:23
(#) tki válasza kaqkk hozzászólására (») Pé, 17:27 /
 
Ha rákeresnél pl. a Qi-re, láthatnád, hogy ott olyanokat írnak, hogy _egyirányú_ kommunikáció történik a töltött készülék felől a töltő felé "Load Modulation"-nel, vagyis egyfajta AM átvitellel, amit a terhelés apró változtatásaival végeznek. Ez érzékelhető a töltőben, ami 100-200 kHz körüli frekivel gerjeszt. Szinte biztos, hogy céláramkörök nélkül komoly fejlesztés lenne, de pontosan persze nem tudom, mindenesetre a töltőtől a készülék felé (ebben a szabványban) nincs is kidolgozott módszer.

Egyébként kicsit emlékeztet a feladat a proxykártyákra, abból is volt hasonlóan alacsony frekvencián működő, sőt kétirányú átvitelű, kaphatók is hozzá modem IC-k stb., de egy ekkora elektromágneses térben... megnézném, hogyan viselkedne. : -)

Az egyvezetékes átvitelnek nincs kötött sebessége, viszont van egy csomó tulajdonsága, ami vezetékre van kitalálva. Itt is nehéz elképzelni, hogy egyszerű lenne egy újabb rétegen átvezetni.

Összességében és a kérdésedből ítélve valószínű, hogy jobban jársz valamilyen más, kész módszerrel/eszközzel, de mindig vannak rettenthetetlen emberek, akik teljesen váratlanul megoldják azt, amit mások nem tudnak elképzelni. : -)
A hozzászólás módosítva: Pé, 17:29
(#) kaqkk válasza tki hozzászólására (») Pé, 17:33 /
 
Az volt az "alapötlet" hogy a komminikációt (egyirányú) csak a dokkolóban rákötöm egy fettel az adótekercsre tehát maga a kommunikáció adja a "trafó" primer váltófeszültségét és erre a frekvenciára hangolom a vevőtekercset és így két legyet ütök egy csapással . Nem a gyári töltő lemásolása a cél , hanem hogy adatot tudjak átvinni a táp mellett
A hozzászólás módosítva: Pé, 17:37
(#) tki válasza kaqkk hozzászólására (») Pé, 17:58 /
 
Aha, csak azért mondtam a másik irányt, mert a 1-Wire átvitel emlegetése kétirányú kommunikációra utalt.

De így sem annyira egyszerű, mert ezzel a módszerrel gyakorlatilag rádióadót építenél, és amikor egy rádiófrekis jelet modulálni kezdesz, ott mindenféle érdekes dolog történik, ami egy külön tudomány, és vevőt készíteni hozzá, amiben ki tudod nyerni a biteket, legalább egy igen-nem állapotváltozást, az szintén. Ez a modemek világa - a protokoll lényegtelen, amíg ez a réteg nincs meg. Attól is függ, mekkora sebességre van szükség.

Azért meg lehet próbálni keresgélni az Interneten, hogy vannak-e ilyen jellegű projectek, sosem lehet tudni.
(#) kaqkk válasza tki hozzászólására (») Pé, 18:16 /
 
Rátaláltam (talán) 16,3khz környékén megy az 1wire általában , ez bőven jó arra a pár cm távra amire tervezem . Még bőven a rádiósáv alatt van még a felharmónikusaival együtt is ...
(#) tki válasza kaqkk hozzászólására (») Pé, 18:28 /
 
Hol is kezdjük, és nem biztos, hogy ez itt on-topic. Mindenesetre ha nem hanghullámról van szó, a levegő rezgéséről, hanem elektromágneses jelenségről, vagyis nem egyenáramról, az a váltakozás sebességétől, ill. a hullámhosszától függetlenül mind "rádió" - felfelé, egészen a fény hullámhosszáig. https://hu.wikipedia.org/wiki/Elektrom%C3%A1gneses_sug%C3%A1rz%C3%A1s

Gondolj bele, van olyan korai rádióadó, amiben a váltakozást elektronika híján forgó gépek állították elő, amiket nem lehetett akármennyire felpörgetni. Ilyen az SAQ Grimeton rádióadó, Svédországból, ami 17,2 kHz-en működik, és amit minden évben bekapcsolnak párszor. Azt emberek hallgatták rádióvevőkön úgy száz évvel ezelőtt: https://alexander.n.se/en/the-radio-station-saq-grimeton/the-alexan...itter/

Szóval akárhány kHz is, az már a rádióhullámok birodalma - akkor is, ha közeli a két végpont -, és így érvényes rá, amiket írtam, hogy milyen területeken kell hozzá nézelődni. Ennek megértése után lehet arrafelé indulni, hogy ha van egy 16,3 kHz sebességgel váltakozó hasznos jeled, azt milyen módszerekkel lehet átvinni a levegőben, hogy a túloldalon felismerhető legyen.
A hozzászólás módosítva: Pé, 18:36
(#) tki válasza tki hozzászólására (») Pé, 19:06 /
 
Egyébként ha már az alacsony frekvenciákat emlegetted, tudod, hol használtak kicsit hasonló megoldást irtó régen? Katonai tantermekben körbevezettek egy terem falai mentén néhány menetet egy vezetékből és hangfrekvenciás erősítőt kötöttek rá. Annak a jeleit olyan vevőkkel hallgatták a tanulók, amin egy-egy sokmenetes tekercs volt. Induktív átvitelnek hívták, és igen gyatra hangminőséget produkált. : -) De emlékeim szerint a vevők passzívak voltak - fejhallgatóval -, ez lehetett a nagy előnyük, hogy nem kellett elemeket használni hozzájuk. A nagyothallók számára is ismerősek az ilyen rendszerek, csak kifinomultabbak. Persze egyiknél sincs szó közben töltésről. Vagyis ahhoz egy magasabb frekvenciájú vivő kell, ahhoz meg modulációs technikák, ahogy írtam. És aztán ki fog derülni, hogy a 1-Wire nem ilyesmire való.
(#) kaqkk válasza tki hozzászólására (») Pé, 19:10 /
 
Hát meglátjuk , én örülnék ha sikerülne . A táplálás az 99% hogy menni fog az adatátvitel ami kérdéses .
(#) tki válasza kaqkk hozzászólására (») Pé, 19:14 /
 
Én elolvasnám a jelenlegi Qi szabványt (csak ez jut eszembe), mert a megoldásokból lehetne következtetni, hogy már a töltésnél milyen problémákba ütköztek a megvalósítás során - ha volt ilyen, és nemcsak én bonyolítom.
(#) kaqkk válasza tki hozzászólására (») Pé, 19:16 /
 
Köszi a tanácsokat utánanézek
(#) tki válasza kaqkk hozzászólására (») Pé, 19:28 /
 
Egyébként lehet, hogy hülyeség, csak mindenkinek van egy elképzelése - ha az áramköröket és a leírásokat nézegeted, hogy mások milyen töltőket készítettek, lehet, hogy többre mégy. Talán még valami adatátvitel is lesz: https://duckduckgo.com/?q=wireless+charger+circuit+scheme&t=fts...images
(#) pucuka válasza kaqkk hozzászólására (») Szo, 19:43 /
 
Idézet:
„Még bőven a rádiósáv alatt van még a felharmónikusaival együtt is”

A kiosztott rádiósáv 8,5 kHz -nél kezdődik, és 3000 GHz -ig tart. Sem alatta, sem felette nincs kiosztva.
De másodlagos, harmadlagos szolgálatkén nagyon magas rádiófrekvenciákig SRD néven ott vannak, akkor is, ha csak mágneses térerősséget (induktív csatolás) sugárzol ki.
Vannak feltételek, de azt nem nehéz teljesíteni.
A hozzászólás módosítva: Szo, 19:49
(#) kaqkk válasza pucuka hozzászólására (») Szo, 19:59 /
 
Talán holnap meglesz az első próba , 16,3khz és 33% os kitöltés . 38mm átmérőjű 150 menetes légmagos tekerccsekkel . Meglátjuk mit tud aztán jön az adatküldés .
Idézet:
„Vannak feltételek, de azt nem nehéz teljesíteni.
Ezekről írnál pár szót ?
A hozzászólás módosítva: Szo, 20:01
(#) pucuka válasza kaqkk hozzászólására (») Szo, 20:41 /
 
Ok, semmi gond, csak jeleztem, hogy a frekvencia kérdés nem is olyan egyszerű.
3. melléklet vonatkozik rátok.
A hozzászólás módosítva: Szo, 20:42
(#) tki válasza kaqkk hozzászólására (») Szo, 20:42 /
 
Az adó és vevő rezgőköreit azonos rezonanciára kell állítani, és van még egy-két követelmény velük szemben, hogy legyen is valamennyi hatásfoka az átvitelnek. Gyanús, hogy ilyen alacsony frekin nem fogod ugyanazt elérni, mint a telefontöltőknél, de ha kicsi fogyasztásról van szó, akkor bármi lehet. Ha találtál ilyen leírást, lehet, hogy menni fog némi hangolgatással, de ha nem, vaktában nehezen fog sikerülni. A többi továbbra is teljesen kidolgozatlan, hogy digitális jeleket hogyan küldesz át egy ilyen rendszeren.
(#) pucuka válasza pucuka hozzászólására (») Szo, 20:45 / 1
 
Nem túl friss anyag, de újabbat nem találtam, nem gondolom, hogy sokat változna.
(#) kaqkk válasza tki hozzászólására (») Vas, 7:02 /
 
Idézet:
„A többi továbbra is teljesen kidolgozatlan, hogy digitális jeleket hogyan küldesz át egy ilyen rendszeren.”
Sajnos , pedig erre vonatkozott a kérdésem . Most azon pörög az agyam hogy talán a töltést meg az adatátvitelt külön kéne megcsibálnom: A töltést magasabb frekvencián és az adatátvitelt meg csak a töltés leállítása után egy gombnyomásra ( egyszeri adatküldés elég egy töltés folyamán)
A hozzászólás módosítva: Vas, 7:11
(#) tki válasza kaqkk hozzászólására (») Vas, 11:47 / 1
 
Sok lyuk van még az elképzelésben, de ha tényleg csak ritkán kell kommunikálni, akkor tegyük fel, hogy kommunikáció gyanánt változásokat idézel elő a töltés erősségében, és két szintet képes vagy az eszközben 1 és 0 állapotokként megkülönböztetni. Ha ezekből a szintekből olyan ütemben veszel mintát, ahogy adásnál ezeket leadtad, vétel közben nincs gond a bitek detektálásával akkor sem, ha több egyforma van egymás után, de pl. egy üzenet végén nem lehetnél biztos, hogy az utolsó bitből hány jött, hol van vége az adásnak, és persze abban sem, hogy hol az eleje a következőnek.

Részletesebben: mivel a kommunikáció órajelét ebből az egészből nem tudjuk visszanyerni, a másik megoldást alkalmazzuk: az aszinkron átvitelt. Ez azt jelenti, hogy a két oldal képes kell, hogy legyen azonos ütemezés előállítására. Lehet különböző a két eszköznek az órajele, de képesnek kell lenni nagyjából ugyanazt az időzítést használni a bitek előállításánál és fogadásánál. Az elfogadható hibaszázalék a sebességtől függ - jelen esetben jó lassú lesz az átvitel, ezért valószínűleg nem lesz kritikus. Így ha mintát veszel a bejövő szintekből, bitekből, nem fogsz menet közben az egyikből átcsúszni a másikba vételnél.

Visszatérve az első mondatokra: az üzenet elejének és végének észlelését legegyszerűbben úgy lehet biztosítani, hogy kell egy befűző, például olyan hosszú magas szint (ami pl. 1-es bitnek tekintünk), ami az üzeneten mint bitsorozaton belül biztosan nem fordul elő, és az üzenet vége is egy ilyen magas szint. Tehát a vevőben levő programnak lesz egy olyan ága, ami minden mástól függetlenül folyamatosan figyeli az egymás után vett magas bitek számát. Erre a követelményre még visszatérünk.

Megjegyzés: még nem tudom, hogy ebben az eszközben hogyan fogod detektálni a változásokat, de általában arra, hogy ne csak tökéletes jelalakkal működjön egy vevő, rá lehet szoftveresen segíteni az egy bitidő alatti többszörös mintavétellel. Vagyis folyamatosan többszörös sebességgel lehet olvasni, és kiértékelni, hogy egy-egy bitidő alatt mit látunk. Vezetéken ilyen ellenség például a lekerekedett elejű négyszögjel, vagyis ott ha 0-1-1-et látsz, akkor azt jó eséllyel egy valódi 1 bitnek lehet értékelni.

Továbbá: ahogy említettem, a sok egymást követő 1-es bittel gondunk van, mert azt egy üzenet elejének érzékeljük, amikor is eldobjuk, amit éppen veszünk és elkezdünk egy új csomagra figyelni. Ezért az üzenet tartalmát kézben kell tartani. Legegyszerűbb esetben lehet pl. minden második bájt valamilyen nem csupa 1 bitet tartalmazó érték (0x5A stb.). Ezt adás közben beszúrjuk a hasznos bájtok után, vételnél pedig eldobjuk. Nagyon pazarló, viszont így néhány számlálóval meg lehet úszni ezt a kommunikációt, nem lesz túl bonyolult, nem kell biteket hasogatnod (hűvös halomba).

És aztán: ami az üzenet tartalmát illeti, a biteket kényelemből bájtokba gyűjtjük, tehát bájtokban gondolkodunk. Az üzenet elején kell egy üzenethossz, a végén pedig egy, az átvitel minőségének megfelelő biztonságú ellenőrzőösszeg, CRC - pl. 16 bites, hogy eldönthető legyen, érvényes csomagot vettünk-e. A mai processzoroknak ezek a számítások nem jelentenek ellenfelet, kódból pedig millió példa van rá.

Végül: mint láthatod, egyirányú átvitelnél nincs olyan, hogy majd a vevő beszúr valami nyugtázó bitet, úgyhogy semmilyen protokoll nem fog működni, ami ezen alapszik, ill. ahol nem kell a bitek hosszúságán gondolkodni - neked kell megírni az üzenetek kialakítását és bitenkénti átvitelét. Simán lehet, hogy van a világban erre a helyzetre alkalmazható, nem túl bonyolult kód, amit rögtön le tudsz tölteni, hiszen ez a probléma igen régóta meg van oldva.

Irodalmat most nem tudok keresgélni, de beszélgethetsz erről egy kicsit valamelyik MI-vel - csak másold be, hadd okuljunk, hol tart ma már a technika. : -)
A hozzászólás módosítva: Vas, 11:56
(#) tki válasza tki hozzászólására (») Vas, 12:15 /
 
Ez az egy nem volt korrekt: "és az üzenet vége is egy ilyen magas szint" A vége legyen más, mint az eleje. És lehet egyszerűbb is az egész, ha úgyis van egy kód, ami mindig várja a következő befűzőt. Meg kell nézni, mit tartanak jó megoldásnak. És sok mindent lehet még csinálni: lehet egy szoftveres korlát a vevőben, aminél hosszabb üzeneteket nem akarunk vagy tudunk venni, vagyis egy max. bit- vagy bájtszám, amennyi vétele után mindenképpen eldobjuk az adott csomagot (tehát rendszerben nem közlekedhet hosszabb) stb.
Következő: »»   8 / 8
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