Fórum témák

» Több friss téma
Fórum » USB-CAN adapter
 
Témaindító: Jossz, idő: Jún 20, 2008
Témakörök:
Lapozás: OK   1 / 1
(#) Jossz hozzászólása Jún 20, 2008 /
 
Szeretnék építeni egy USB-CAN adaptert, ehhez keresek dokumentációt, kapcsolási rajzot, leírást, linket, bármit, ami hozzáférhető...
(#) Jossz hozzászólása Jún 20, 2008 /
 
Ja, igen és elfelejtettem leírni, hogy olyat szeretnék persze építeni, amit meg is tudok csinálni, tehát PIC "aggyal" rendelkezőt keresnék...
(#) ciw válasza Jossz hozzászólására (») Jún 20, 2008 /
 
Üdv !

Ha jól rémlik csak letöltöd és megépíted, hex mellékelve.

http://www.embedds.com/simple-usb-to-obd2-adapter-on-pic18f2455/

Gondolom OBD célra kellene.
(#) Jossz válasza ciw hozzászólására (») Jún 20, 2008 /
 
Nagyon köszönöm, ez első ránézésre jó lehet. Nem igazán diagnosztikai célra kell, hanem inkább egy CAN buszon kommunikáló mérő/vezérlő rendszer adatainak, ill. státuszának PC-n való megjelenítésére, beavatkozások, beállítások közvetítésére. De hát végül is, ha jól belegondolok, a diagnosztika fogalmába ezek mind beleférnek, nem igaz? Minden esetre mégegyszer is köszi, a PC-s interface program még hiányzik, de ha nem megy másképp, legfeljebb majd megírom...
(#) Jossz hozzászólása Jún 20, 2008 /
 
Nos, nem is tudom... alaposabban utána nézve a dolognak, zavar ez az ISO 9141 interface IC és ezért nem vagyok egészen bizonyos abban, hogy ez a szerkezet szabványos CAN busz adapter. Ha esetleg ebben valaki meg tudna erősíteni, ill. ha ez nem az igazi és valaki tudna \"igaziról\" rajzot, stb. adni, nos hát bizonyosan imáimba foglalnám az illető nevét!...
(#) kobold válasza Jossz hozzászólására (») Jún 21, 2008 /
 
Ez itt AVR-rel van megcsinálva, de ahogy elnézem, teljes egészében publikus a teljes anyag, még a PC-re való progi is.
(#) kyrk válasza Jossz hozzászólására (») Jún 21, 2008 /
 
Tematol fuggetlen, mivel a kero sajat maga szeretne epiteni egyet. Inkabb erdesseg keppen irom csak:

Letezik ipari CAN busz adabpter USB-re. Illetve belso PCI kartyakent is aruljak. Sajnos az aruk eleg draga azt hiszem nehany szaz EUR-ba kerulnek ezek (es innentol folfele). Amivel en dolgoztam az egy USB-s CAN adapter volt. A pontos tipusa Softing CANusb. Nos ehhez adtak egy driver programot illetve peldaprogramokat ami alapjan az ember a sajat programjaba tudja integralni az eszkozt. Vegulis ami lenyeges volt, hogy adtak egy interfeszt amivel kiolvashato a vett uzenet illetve kuldheto barmilyen.
(#) kobold válasza kyrk hozzászólására (») Jún 21, 2008 /
 
Itt a gépemben annak a "testvére" dolgozik, kétcsatornás PCI-os kártya, szintén Softing. Nagyon jól kijövök vele, írtam hozzá CCP protokollra progit, adatgyűjtést, plusz grafikus kijelzést végez több fizikai mennyiségről. 350 EUR körül volt, ha jól emlékszem, de szerintem megérte. Végül is ezek igazán univerzálisan használhatók, ellentétben egy direkt diagnosztikára készített adapterrel.
(#) Jossz válasza kobold hozzászólására (») Jún 21, 2008 /
 
Kobold, köszönöm, megnéztem. Ez valóban korrekt, csakhogy nekem AVR-hez szinte semmim sincs. Közben aztán átnéztem az eredeti - CIW által megadott - kapcsolás adatlapjait és azt gondolom, hogy az ott alkalmazott PIC18F2455-öt azért használja, mert annak van egy beépített, pontos USB interfésze és az EUSART TX/RX-en pedig küldi/veszi a USART jeleket az MC33290-re, amely egy ISO 9141 interface, következésképpen OBD2 kompatibilis lesz a szerkezet. Arra gondoltam, ha viszont az ISO IC helyett beraknék egy MCP2551 CAN transceivert, amely ugyanolyan USART TX/RX jeleket vár és alakítja CAN H/L jelre, ill. vissza, akkor viszont ott a korrekt CAN szabványú busz. USB oldalról viszont használható bármelyik PC szoftver szerintem, hiszen "ő" nem látja, hogy az USB jel mivel is lett átalakítva CAN jellé. Számára csak az a fontos, hogy az USB driver rendben fel legyen installálva. Nos, tehát erre a megoldásra gondoltam és várom a véleményeket...
(#) kobold válasza Jossz hozzászólására (») Jún 25, 2008 /
 
Ha kizárólag az MCP2551-ben gondolkodsz, akkor ott az lesz a baj, hogy az említett kontrollerből teljes egészében hiányzik minden, ami a CAN-protokoll kezeléséhez szükséges. A 2551-es csupán egy meghajtó, nem foglalkozik a protokollal, azt - egy CAN nélküli mikrovezérlőben - neked kellene megírni, halálpontos időzítésekkel, pufferekkel stb., szerintem ez így nem egy jó megoldás.
Nem néztem meg a ciw által küldött link anyagát, de ha abból indulunk ki, hogy van egy USB-t tartalmazó kontrollered (azaz egy periféria helyből adott), aminek ráadásul van SPI portja is, akkor (nekem) kézenfekvő volna egy megfelelő protokoll-chip-et (pl. MCP2515) ráakasztani, ami lekezeli a teljes CAN-es részt (persze kellő inicializálás után), értesíti a vezérlőt a kívánt eseményekről (pl. fogadás), és "észrevétlenül" elvégzi az összes filterezési, bufferelési, bit-beültetős meg egyéb piszkos munkát, ami a CAN miatt szükséges.
Két éve volt egy kis kütyüm, egy 16F876, egy MCP2515, és egy MCP2551 volt összekötve, 250 kbps sebességű buszon történő hallgatózás céljából; 10 ms-onként vette egy motor töltőnyomásának értékét, és másodpercenként kitette lcd-re, minimum- és maximumérték jelzésével együtt. Szerintem te valami hasonlót szeretnél, csak az USB miatt más lesz a PIC.
(#) les71 válasza Jossz hozzászólására (») Jún 25, 2008 /
 
Nemrég jelent meg a Elektorban egy cikk , bár az parallel portos volt mcp2515-tel, canking szoftverhez illeszthető, komplett SDK-val.
Régebben (2000) volt egy cikk ISA buszhoz, sja1000-sel.
(#) Jossz válasza kobold hozzászólására (») Jún 26, 2008 /
 
Kobold, teljesen igazad van, én is így csinálnám, ráadásul van is MCP2515-öm és MCP2551-em is itthon
Csakhogy, ha megnézed ezt a bizonyos ciw által küldött anyagot, akkor azt látod, hogy a PIC a TX/RX vonalakon egy ISO interface áramkört, amelynek ugyancsak CAN szabványú időzítésekre, jelekre, stb. van szüksége, hiszen gondoljunk csak bele, hogy honnan is indult a CAN szabvány... Azt látom a rajzon, hogy a vonali kimenet más, mert az ISO-nál egy un. ISO kimeneti szint van és a GND, a CAN-nál meg ugyebár a CANH és a CANL kimeneti szintjelek, ill. vonalak. Ezért gondoltam arra a megoldásra, hogy ha - feltételezve, hogy a program megcsinálja a korrekt USB-CAN transzfert- az ISO chip helyett berakom a CAN transceivert, és eltávolítom a felesleges 12V-os részeket, akkor elvileg normálisan dolgozó CAN node-ot kell kapjak. Minden esetre ide linkelem a rajzot, nézd meg, légy kedves...

sch1.jpg
    
(#) kobold válasza Jossz hozzászólására (») Jún 26, 2008 /
 
Nézem én ezt a rajzot, megnéztem végre a linkelt oldalt is, de szerintem ez így nem megy.
Az MC33290 az ISO9141 szabványhoz készült illesztő, ráadásul mindenhol a 9141-2-t említik (európai vonatkozásban), azaz az OBD-II-t, és a linken is ez van. Ennél a sebesség 10.4 kbps, valószínűleg a PIC kódjában is így van meghatározva, vagyis CAN-re alkalmatlan. És mivel a kód csak hex-ben van meg, bármiféle változtatáshoz először vissza kellene olvasni, akkor meg már gyorsabb lehet újat írni, még egy 2515-öst bekalkulálva is.
Ha megnézed a CAN 2.0 leírását (mert erre kell készülni), akkor láthatod, hogy jóval több az, mint egy vezérlés és egy külső eszköz (pl. PC) kérdezz-felelek játéka. Egy 8 byte-os adatcsomag mellé 44 bitet kell még kiküldeni a standard, illetve 64 bitet az extended formátum használatával, és ennyit is kell fogadni, megfelelően megkülönböztetve a kettőt. Nem hiszem, hogy a mellékelt kódban ez benne volna, a K-line-hoz nem kell (szinte egy mezei soros kommunikáció). Ugyanígy nincs benne szerintem a küldő és fogadó pufferelés, üzenetcsomag-validálás, a mérésadatgyűjtésre kiváló CCP protokollról nem is beszélve, ami nagyon hasznos, ha a külső vezérlés támogatja.
Egy szó mint száz, az én véleményem az, hogy ha kicseréled a transceiver-t, akkor lesz egy valahogy küldözgető, valamit fogadó, CAN vonalszinteken működő eszközöd, amivel csak akkor tudsz dolgozni, ha az eszközeid elfelejtik a CAN-t mint protokollt, és csak a fizikai rétegét használják, RS232 jelleggel. De valószínűbbnek tartom azt, hogy pár másodperces üzem után minden résztvevő bus-off állapotba megy.
(#) Jossz válasza kobold hozzászólására (») Jún 26, 2008 /
 
Igazad van, meggyőztél... Jó, hogy van ez a fórum, meg persze benne hozzáértő kollégák.
Tulajdonképpen, ahogy fentebb írtam, nekem gyanús volt, hogy túl egyszerű lenne ez a megoldás, csak abba nem gondoltam bele, hogy persze... diagnosztikai vizsgálathoz nincsen szükség 1 Mbit/s adatsebességre, oda jó a 10 Kbit/s is és nyilván a PIC program ezt biztosítja.
Közben aztán találtam egy másik megoldást, ez már valóban USB-CAN interface és ráadásnak C-ben programozva, úgyhogy legalább meg is tudtam nézni, hogy mit miért is csinál és azt hogyan csinálja. Úgyis megírom a saját gondolataim szerint, de legalább van kiindulási alapom.
A rajzot idelinkelem, nézd meg, ha lesz egy kis időd és várom a véleményedet. (eléggé vacak minőségű, de a lényeg látszik)

Image319.gif
    
(#) kobold válasza Jossz hozzászólására (») Jún 26, 2008 / 4
 
A hozzáértést remélem nem rám értetted, én is csak azt tudom (vagy azt sem), amit már olvastam, vagy végigszenvedtem.
A rajzba így elsőre nem nagyon tudok belekötni, legfeljebb annyi szúrt szemet, hogy a procik mellett mintha rezonátorok lennének feltüntetve. Ezeket én nem igazán szeretem, és ha nincs a processzornak saját belső órajele (vagy nem alkalmas a feladatra), mindig (soknullás, pl. 16.000) kvarcot teszek, két megfelelő kondival.
A 18F-ek CAN moduljaihoz, illetve az MCP2515-höz is sokat segített annak idején ez az alkalmazás. Megadod a proci órajelét, a kívánt baud-ot, és tökéletesen kiszámolja a szükséges regiszterek tartalmát. Az ember tévedhet, nekem pl. a képletek megértése sem volt egyszerű, ez a progi viszont legalább azt biztosította, hogy az időzítések miatt nem halt le a busz. Ha univerzálisban gondolkodnék, akkor először kiválasztanám a szóba jöhető baud-értékeket, ezekhez egy olyan kvarcot, ami mindegyiket a legtökéletesebben biztosítani tudja, majd a regiszter-értékeket felvinném egy táblázatba a PC-n; az ablakban aztán kattintás a kívánt sebesség jelölőjére, és egy USB-n átküldött parancssor már konfigurálhatja is a PIC-et.
Pár ilyen, 18F248-as egyébként nálam is pihen a fiókban, még nem volt időm foglalkozni vele. De ha ment a CAN egy 876-tal és az interface-ekkel, akkor ezzel pláne mennie kell.
Szerintem építsd meg, és várjuk a tapasztalatokat
(#) Jossz válasza kobold hozzászólására (») Jún 26, 2008 /
 
Megnéztem a C programot, 10 MHz-es kvarcot használ, bár H4-nek jelöli, őszintén megmondom, ilyet még nem láttam, én a HS-t vagy a HS+PLL-t használom és csakúgy mint Te, 20 MHz-s, négy nullás típust. No mindegy, számolok, építek, azután majd referálok. Én egyébként 18F4580-al fogom megcsinálni, ez már nálam bevált.
(#) gox2 hozzászólása Nov 5, 2008 /
 
Sziasztok!


akit a téma érdekel itt minden le van írva: Bővebben: Link
(#) zsimon válasza kobold hozzászólására (») Okt 13, 2009 /
 
Hali!

Megcsinálta valaki már ezt az AVR-es CAN kütyüt? Nekem pl kellene, de 1. AVR-hez nem értek, nincs hozzá programozóm, 2. Tapasztalatok nélkül nem szívesen állnék neki...

Simi
(#) whalaky válasza gox2 hozzászólására (») Jan 25, 2011 /
 
Engem érdekelne a dolog, de ....
Honnan lehetne megszerezni a PIC programját?
Csak én nem látom, vagy csak a kit-ben van beégetve?
Ha valakinek megvan megosztaná velem? Momentán nem tudok ennyi pénzt (kevesebbet sem) erre szánni.
W.
(#) b0077 hozzászólása Okt 3, 2011 /
 
Sziasztok!
Rem. jó topicot választottam. Egyik haverommal nemrég felmerült ,h a can-busos autókban már az immobilisert is hozzá lehet taníttatni az ecuhoz. Tehát nem kell ecu-t és vele együtt immobilisert és esetleg gyújtáskapcsolót is cserélni. Mivel sajnos nem vagyok otthon a témában, tudna vki mesélni erről? Gondolom nem sima diagnosztikai adapter szükséges hozzá. Milyen eszköz kell ehhez? Megépíthető, beszerezhető és ha igen mennyiért kb.?
üdv
(#) Tinky hozzászólása Szept 26, 2012 /
 
Sziasztok!

Már jó ideje gondolkozok azon hogy építek magamnak egy CAN-USB-t.
Ebbe bele futottam: CAN BUS Analyzer Tool

Megtalálható a leírásában a kapcsolási rajz és a FW-k is.

Szoftverét néztem és tudja azt amire nekem van szükségem.

Nem autóhoz kellene, can bus-os eszközöknek a kommunikációjának a figyelésére illetve parancsok küldésére.

Valakinek tapasztalat, vélemény?
üdv
Következő: »»   1 / 1
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