Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   1010 / 1319
(#) adamhollos válasza watt hozzászólására (») Aug 1, 2011 /
 
Szerintem férre értettetek nekem olyan megoldásra van szükségem amellyel egész hálózatot tudok működtetni.
A központ minden alegységgel kapcsolatban van ezenkívűl, még egyes alegységek is kapcsolatban vannak egymással. Ez egy kis pókháló lenne.
(#) vilmosd válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
Na erre alkalmas a RS485. Lehet vele 32 vegpontot felfuzni a buszra.
(#) watt válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
Idézet:
„Két PIC között szeretnék megvalósítani kommunikációt.”

Már bocsáss meg, de ha egy kérdést nem tudsz feltenni, akkor ne hivatkozzál arra, hogy mi értettünk félre valamit! Két PIC, az KÉT PIC.
(#) watt válasza vilmosd hozzászólására (») Aug 1, 2011 /
 
Szabvány szerint az RS232 15m. De a kérdés már tárgytalan, mint láthatod...
(#) vilmosd válasza watt hozzászólására (») Aug 1, 2011 /
 
Hasznalhato nagyobb tavolsagra is, de csak alacsony Baudrate mellett(300 bps). A kerdesre ugyis a RS485 a megoldas. Persze eloszor csak ket PIC-rol beszelt a kollega.
(#) adamhollos válasza (») Aug 1, 2011 /
 
Ez most kinek szól?
(#) szalay.zsolt83 hozzászólása Aug 1, 2011 /
 
Szeretném ismételten megkérdezni,hogy ezzel az égetővel milyen tipusu PIC-eket lehet programozni és,hogy mennyire megbizható!?Előre is köszi a választ
(#) watt válasza szalay.zsolt83 hozzászólására (») Aug 1, 2011 /
 
Keresőt próbáltad használni?
(#) adamhollos válasza watt hozzászólására (») Aug 1, 2011 /
 
Bocsánat ha pontatlanul fogalmaztam a "férre értettek" nem csak azt jelentheti, hogy nálatok van a gond hanem azt is (mint jelen esetben is), hogy a kérdező egyén nem fogalmazott elég pontosan.

Remélem ezzel a képpel már elég egyértelmű lesz. A nyilak a kommunikáció irányát jelölik. A betűk pedig az egyes PIC-eket.

Akkor ez megvalósítható az RS485-ös szabvánnyal?

P1030961.JPG
    
(#) El_Pinyo válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
Szia!
Megvalósítható RS-485 protokollal, de nem tipikusan ilyen kommunikációra való. Ebben az esetben a kommunikációnak master-slave jellegűnek kell lennie. Van egy kitüntetett master pl. "A" egység, mely vezényli az egységek közti kommunikációt. A master egyenként lekérdezi a slave egységeket, hogy van-e küldendő üzenet, ha van akkor a slave elküldi az üzenetet és annak címzettjét, majd ezt az üzenetet a master továbbküldi a címzett slave egységnek. Nagyon fontos, hogy itt mindig kell egy master, aki vezényel, a slavek csak akkor szólhatnak, ha a master megszólítja őket. Ebben az esetben ez a kommunikáció nem túl hatékony, nagy az overhead. Itt pl. a CAN előnyösebb lenne, bár az sokkal bonyolultabb protokoll.
(#) Sumi hozzászólása Aug 1, 2011 /
 
Szia Watt!
Terveztem az programozódnak egy panelt (Mini V4)hamár úgy is maratok.
Kicsit szellősre sikerült Remélem nem szed össze valamilyen zavart? Sima nyomtató kábelt alakítottam át 1,5m hosszú ugye ez sem gond?
(#) adamhollos válasza El_Pinyo hozzászólására (») Aug 1, 2011 /
 
Igen, de a lényeg pont az lenne, hogy az A egység kiesése után is tudjanak kommunukálni az egyéb egységek pl F, C-vel. Erre milyen megoldás van?
(#) zolee1209 válasza (Felhasználó 13571) hozzászólására (») Aug 1, 2011 / 1
 
Előző oldalon olvastam, hogy "felnőtteknek"... Nem lenne jobb odabiggyeszteni a topik címe után, hogy "haladóknak" vagy valami, ha már van "PIC kezdőknek" topik?
(#) watt válasza Sumi hozzászólására (») Aug 1, 2011 /
 
Olvastad a cikket?
Van ám égetőkkel foglalkozó topic is!
(#) watt válasza (Felhasználó 13571) hozzászólására (») Aug 1, 2011 /
 
Maradjon is így! Köszi!
(#) El_Pinyo válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
CAN, de már írtam az előző hozzászólásomban is.
(#) watt válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
Ethernet.
De sajnos ismét azt kell mondjam ez itt off, pontosabban ha nem is off, de van erre jó néhány szakosodott topic!
(#) zolee1209 válasza (Felhasználó 13571) hozzászólására (») Aug 1, 2011 /
 
Arról nem tudtam, hogy már volt...
(#) adamhollos válasza watt hozzászólására (») Aug 1, 2011 /
 
De az ethernethez is kell egy hub, nem.
(#) trudnai válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
Megirtam elkuldtem de aztan letoroltem a valaszom mert ez itt mar tenyleg nagyon erosenn off!
(#) adamhollos válasza trudnai hozzászólására (») Aug 1, 2011 /
 
De akkor hol kérdezzem meg?
(#) vilmosd válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
En probaltam egy egydrotos kommunikaciot csinalni, ami PBUS protokollal mukodott. Kiserleti jelleggel meg csinaltam, de nem nagy tavolsagra. A lenyege az volt, hogy egy kozponti allomason keresztul kuldtem uzeneteket a slavek kozott. Tehat a slave elkuldte a sajat cimet, es a cel slave cimet a masternak, majd a master tovabbkuldte a cimzett slave-nak. A cimzett slavetol kapott valasz alapjan valaszolt a kommunikaciot kezdemenyezonek. Persze lehet direktbe is cimezni barmelyik allomasrol barmelyik allomast. Szerintem mehet nagyobb tavolsagra is, csak kell felhuzo a buszra, es le kell vinni a sebesseget. Egy tobberes kabelon megoldhato a kommunikacio es a tapellatas is. A neten lattam hasonlot a Jakab Peter oldalan.
(#) watt válasza vilmosd hozzászólására (») Aug 1, 2011 /
 
Idézet:
„Tehat a slave elkuldte a sajat cimet, es a cel slave cimet a masternak, majd a master tovabbkuldte a cimzett slave-nak”

De ha a master kiesik, akkor megszűnik a kommunikáció.
A másik, hogy ha master van, akkor csak az indíthat kommunikációt, különben káosz lesz.

Egyetlen megoldás van, ha az ethernet mintájára ütközés kezelést programozunk le, ahol bármely forrás indíthat kommunikációt, de meg kell győzödnie, hogy az el is ért a vonal végére. Itt nincs hely és idő, hogy leírjam ez hogyan megy(minimális adathossz, max. kábelhossz, időzítések stb.), de lehet neked nem is kell, mert tudod!

Aki meg nem tudja, ne ilyet akarjon építeni, mert nem fog menni, és itt nincs lehetőség megértetni! És ez tényleg off.
(#) vilmosd válasza watt hozzászólására (») Aug 1, 2011 /
 
Itt az a lenyeg, hogy mindenki hallgat, es ha neki cimzett uzenetet vesz, akkor valaszol ra. Barki kezdemenyezhet uzenetet barkivel. Viszont ha a cel allomas nem valaszol, akkor valoszinu nincs fennt a halon. Nalam csak egy bizonyos cel erdekeben volt egy master. Nem fontos kijelolt masternek lenni a rendszerben. Mellekesen meg minden uzenet tartalmazott CRC-t, es ha nem volt jo nem valaszolt ra. Ezzel a protokollal ha barmelyik allomas kiesik, meg nem all le a kommunikacio a tobbi allomas kozott. Az ethernet is lehetne megoldas, de sokkal bonyolultabb mint HW, mint SW szinten. Egy riaszto rendszernel peldaul egy lassu atvitel is elegendo, nem szukseges 56 kBaud sebesseg, es ezzel megszunnek a jel terjedesi ido, es jelszint problemak. En pl 1200 Baud sebesseget hasznaltam, es szepen dolgozott a rendszer.
(#) watt válasza vilmosd hozzászólására (») Aug 1, 2011 /
 
Na de mi van, ha egyszerre 4-nek jut eszébe megszólítani valakit és nem tágítanak, mivel nem kapnak választ folyamatosan elárasztják a vonalat.

Nem konkrétan ethernetet írtam, hanem az ethernet mintájára kialakított kommunikációt. Ez lehet a te egyvonalas megoldásod is, de akár rs422 is, ha a meghajtók elviselik ha több is rádumál a vonalra, vagy I2C szerű, lényeg, hogy fullduplex legyen.
(#) El_Pinyo válasza watt hozzászólására (») Aug 1, 2011 /
 
Én itt több kevésbé jó megoldást vélek látni. Az ethernet túl bonyolult, szerintem nem érdemes erre felhasználni. Az RS-485 meg a 422 alapú megoldásokat is sántának vélem, mert igazán master-slave alapon működnek jól, de mi van, ha kiesik a master. Ehhez annyit hozzáfűznék, hogy megoldható más módon, ha minden egység a saját időszeletében beszélhet a vonalra (hasonlóan a FlexRay-hez), így az ütközés elkerülhető, hátrány, hogy szinkronizálni kell az egyes egységeket. Megoldható ugyan, de óraszinkronizációs algoritmus kell, ami tovább bonyolítja a dolgot, valamint ha egy egység hibásan kezd működni, akkor megbolondulhat a rendszer.
Éppen ezért javasoltam a CAN protokollt.
Előnyei:
- üzenetszórásos rendszer, mindenki megkapja a buszra küldött üzeneteket.
- roncsolásmentes ütközésdetektálás: CSMA/CD (mint az Ethernet esetén)
- nagy távolság: 1200 m
- nagy sebesség 1 Mbit/s
- hibavédett, ha egy egység meghibásodik lekapcsolódik a buszról
- Microchipéknek is van CAN vezérlő IC-je
Szóval szerintem ebben az esetben ez a leghasználhatóbb megoldás, bár kétség kívül az UART- nál bonyolultabb.
(#) vilmosd válasza watt hozzászólására (») Aug 1, 2011 /
 
Lehet csinalni arbitraciot, es mivel mindenki egy deroton log, le tudja olvasni hogy volt e kollicio. Ha volt akkor egy idoosztasos alapon, beosztjuk a buszt. Elso beszel, valaszt var, es ha tudjuk hanyan lehetnek a vonalon, akkor ez nem lehet gond, mert a tobbi akkor fog beszelni, amikor az elozo befejezte a kivancsiskodast. Mikor a vegire ernek, lehet elolrol kezdeni. Lehet generalni szabad vonal uzenetet, es erre be lephet akinek mondanivaloja van. Mint beszeltuk, nem szukseges 10 GB atviteli sebesseg, azert nem egy nagy "was ist das" megirni ugyesen a programot, hogy ne tudjanak osszeveszni az egy szal droton. Egy ilyen rendszernel nem nagyon hataroz az atviteli sebesseg. Persze egy gyors adatfeldolgozo, szabalyzo rendszernel ez mar nagyon lassu lehet a normalis mukodeshez.
(#) adamhollos válasza El_Pinyo hozzászólására (») Aug 1, 2011 /
 
Köszönöm a válaszokat!

Nekem eddig ahogy utána olvastam és a hozzászólásaitokat olvasom a CAN protokoll tetszik a legjobban.

Tudna valaki adni egy linket vagy fájlt ahol le van írva (lehetőleg magyarul) hogyan kell csinálni egy CAN hálózatot PIC-ekkel?
(#) El_Pinyo válasza adamhollos hozzászólására (») Aug 1, 2011 /
 
Sajnos magyar szakirodalmat eddig nem nagyon láttam (nem is nagyon kerestem ), elvétve lehet találni magáról a szabványról magyar nyelvű anyagot.
A Microchip honlapján érdemes körülnézni, van saját CAN vezérlő IC-jük is, valamint AppNote-ok a használatról.
Microchip/CAN
(#) adamhollos válasza El_Pinyo hozzászólására (») Aug 1, 2011 /
 
Nem tudom, nekem egyet sikerült találnom. Csak ez nem kifejezetten PIC-ekről szól.
Azért köszi.
Következő: »»   1010 / 1319
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