CAN bus

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
pokrivnik
Příspěvky: 79
Registrován: 05 úno 2009, 01:00

CAN bus

#1 Příspěvek od pokrivnik »

Zdravím Vás, mám tu menší dotaz. Má tu niekto skúsenosti s CAN bus? Potrebujem naprogramovať príjimanie dát z riadiacej jednotky auta, prostredníctvom tejto zbernice. Jednalo by sa napríklad o príjimanie dát o otáčkach motora, tlaku oleja, prípadne údaje z ABS.

Riadiaca jednotka je DTA S80PRO, ale pomôže aj, ak má niekto skúsenosti s inými jednotkami.

Mikroprocesor by som použil AT90CAN128, ale do oka mi padol aj AT89C51CC01UA-RLTUM. Skôr by som ale použil ten prvý, pretože ho majú v GM-ku na sklade.

Ďakujem za odpoveď, alebo hocjaké info ohľadne tejto tématiky. :wink:

Uživatelský avatar
Ragnol
Příspěvky: 232
Registrován: 09 lis 2005, 01:00
Kontaktovat uživatele:

#2 Příspěvek od Ragnol »

První a podstatná věc pro řešení je jeslti znáš ID apopřípadě rozložení jednotlivejch ID a co pod nima z tý ECU běhá. Samotnej CAN na tom AVR je poměrne jednoduchej a na naetu je v angličtině poměrně dost publikací jak na to. Ale výhodou pro CAN je mít nějakej loger když už :)

Uživatelský avatar
GeorgeB
Příspěvky: 1187
Registrován: 21 lis 2005, 01:00
Bydliště: Pardubice
Kontaktovat uživatele:

#3 Příspěvek od GeorgeB »

Na tyto účely byl výbornej obvod typu ELM323 a ELM327. Jednalo se prakticky o převodník mezi CAN,KL,PWM / UART. Po UARTu se poslal do ELM příkaz typu: spoj se s ŘJ, načti ID1,IDx,... a ELM odpovídalo znakama a datama. Prakticky se prostě neřešila komunikace. Ale v současný době s přívalem levných interfaců k PC na bázi ELM327 z číny se nějak samotné IO ELM327 vytratily z trhu.
Samotnou komunikaci po CANu s procesorem podporující tuto sběrnici jsme ještě neřešil, s ELM327 trochu ano.

Uživatelský avatar
pokrivnik
Příspěvky: 79
Registrován: 05 úno 2009, 01:00

#4 Příspěvek od pokrivnik »

Ragnol: tie ID mám hľadať v popise danej riadiacej jednotky alebo pripojených čidiel? Pretože sa ku mne dostal manual k riadiacej jednotke, ale žiaden popis ID pripojených periférií som tam nenašiel.
A čo je ten loger?


GeorgeB: pobehal som po mne známych stránkach, ale nikde tieto obvody už k dostaniu bohužiaľ niesu.

Uživatelský avatar
Gabriel
Příspěvky: 58
Registrován: 25 zář 2007, 02:00
Bydliště: KS

#5 Příspěvek od Gabriel »

Tu ich ešte majú v ponuke SO aj DIP.

Uživatelský avatar
pokrivnik
Příspěvky: 79
Registrován: 05 úno 2009, 01:00

#6 Příspěvek od pokrivnik »

Tak ten obvod nieje to pravé pre moju aplikáciu. Musi to fungovať cez ten mikrokontrolér. Teraz musím zistiť ako sa dostať k tým ID jedlotlivých zariadení, a ako od nich budem čítať informácie. Niekde som sa dočítal, že to môže byť troška problém, že si tieto informácie každý výrobca chrání. To je ale podľa mňa nezmysel...

Uživatelský avatar
GeorgeB
Příspěvky: 1187
Registrován: 21 lis 2005, 01:00
Bydliště: Pardubice
Kontaktovat uživatele:

#7 Příspěvek od GeorgeB »

pokrivnik píše: Musi to fungovať cez ten mikrokontrolér.
Mikrokontrolér s UARTem může komunikovat s ELM323(7). Navíc se dá komunikace dobře odladit pomocí PC. Komunikace pak třeba vypadá takto:

Kód: Vybrat vše

23.4.2008 11:32:10.14 [RX] - <CR><LF>
ELM323 v2.0<CR><LF>
<CR><LF>
>
23.4.2008 11:32:16.50 [TX] - ATSI<CR><LF>

23.4.2008 11:32:16.51 [RX] - ATSI<CR><LF>
BUS INIT: 
23.4.2008 11:32:17.04 [RX] - .
23.4.2008 11:32:17.84 [RX] - .
23.4.2008 11:32:18.64 [RX] - .
23.4.2008 11:32:18.97 [RX] - OK<CR><LF>
<CR><LF>
>
23.4.2008 11:32:21.59 [TX] - 0105<CR><LF>

23.4.2008 11:32:21.62 [RX] - 0105<CR><LF>

23.4.2008 11:32:21.76 [RX] - 41 05 3C <CR><LF>

23.4.2008 11:32:22.00 [RX] - <CR><LF>
>
23.4.2008 11:32:25.51 [TX] - 0111<CR><LF>

23.4.2008 11:32:25.54 [RX] - 0111<CR><LF>

23.4.2008 11:32:25.70 [RX] - 41 11 00 <CR><LF>

23.4.2008 11:32:25.90 [RX] - <CR><LF>
>
23.4.2008 11:32:26.51 [TX] - 0111<CR><LF>

23.4.2008 11:32:26.53 [RX] - 0111<CR><LF>

23.4.2008 11:32:26.70 [RX] - 41 11 00 <CR><LF>

23.4.2008 11:32:26.90 [RX] - <CR><LF>
>
23.4.2008 11:32:27.53 [TX] - 0111<CR><LF>

23.4.2008 11:32:27.56 [RX] - 0111<CR><LF>

23.4.2008 11:32:27.72 [RX] - 41 11 00 <CR><LF>

23.4.2008 11:32:27.92 [RX] - <CR><LF>
>
23.4.2008 11:32:28.54 [TX] - 0111<CR><LF>

23.4.2008 11:32:28.56 [RX] - 0111<CR><LF>

Uživatelský avatar
tomasjedno
Příspěvky: 5634
Registrován: 11 říj 2008, 02:00
Bydliště: ZZ9 Plural Z Alpha

#8 Příspěvek od tomasjedno »

pokrivnik píše:...Pretože sa ku mne dostal manual k riadiacej jednotke, ale žiaden popis ID pripojených periférií som tam nenašiel.
Není divu, patří k nejžárlivěji střeženým tajemstvím automobilového průmyslu.
Co je celkem public, je adresa centrální ŘJ 07E0 a standardní Mode 01 PIDs.

termit256
Příspěvky: 10071
Registrován: 06 pro 2007, 01:00

#9 Příspěvek od termit256 »

Taky jsem tohle kdysi shanel, s vysledkem "bez sance".

Na DX a podobnych shopech jsou ruzne udelatka na CAN pro automotive, ale k cemu to je a co dovedou jsem nikdy bliz nekoumal.

Uživatelský avatar
pokrivnik
Příspěvky: 79
Registrován: 05 úno 2009, 01:00

#10 Příspěvek od pokrivnik »

Tak to je menší problém. Zatiaľ do toho CAN bus moc nevidím, ale ak nebudem mať možnosť načítať otáčky motora je moja práca a úsilie v koši. Ak by vedel niekto ako to rozbehať, budem vdačný.

O tých obvodoch ELM pouvažujem, ale predpokladám že aj tak budem potrebovať ID toho, čo potrebujem prečítať.

termit256
Příspěvky: 10071
Registrován: 06 pro 2007, 01:00

#11 Příspěvek od termit256 »

Co si vzpominam, resi se to nejakym prevodnikem typu ELM + vyhodnocovaci SW v PC. SW na tohle se povaluje na warezovych a autotuningovych forech spousta. Zkus patrat tim smerem.

Uživatelský avatar
tomasjedno
Příspěvky: 5634
Registrován: 11 říj 2008, 02:00
Bydliště: ZZ9 Plural Z Alpha

#12 Příspěvek od tomasjedno »

pokrivnik píše:...ak nebudem mať možnosť načítať otáčky motora je moja práca a úsilie v koši...
Otáčky motoru problém nejsou, tlak oleje a akce ABS problém jsou.
Projdi si ten odkaz, co jsem postnul.

Uživatelský avatar
pokrivnik
Příspěvky: 79
Registrován: 05 úno 2009, 01:00

#13 Příspěvek od pokrivnik »

GeorgeB: tie obvody elm, na aké aplikácie si to využíval? Je to problém rozbehať? Čo som zatiaľ vysledoval, je k tomu program, cez ktorý sa dá k nemu prostredníctvom sériovej linky dostať. Je to aj potrebné nejak nastavovať? Alebo to len proste pripojím na can a on mi prijíma všetky informácie čo tam bežia a preposiela to cez uart?

Jenda_KL
Příspěvky: 1173
Registrován: 10 zář 2008, 02:00
Bydliště: Kadaň
Kontaktovat uživatele:

#14 Příspěvek od Jenda_KL »

CAN běží na 250kbps, na účel logování do PC bez vyšší inteligence "převodníku" to nepůjde.
To co se tam připojí se musí k síti přihlásit a pak dostává pravidelně časové okno, ve kterém musí oznámit že žije , pak se může ostatních ptát a když nic zrovna ze sítě nechce tak předat "busmastering" další stanici. Do toho se ještě zamíchaj značky přerušení, taktování a synchonizace.
U každého typu sítě je definované nějaké nezbytné minimum, které musí zařízení bezpodmínečně zvládat a u canu je toho docela hodně.
Osobně jsem implementaci canu trochu vzdal, takže více neporadím.

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“