Заўвага. Стандарту VPW адказваюць мадэлі вытворчасці кампаніі GM, стандарту PWM – Ford, стандарту ISO 9141-2 – азіяцкія і еўрапейскія мадэлі.
Агульныя дадзеныя
Разгляданая прылада ўяўляе сабой мікракантролер, выкананы па тэхналогіі КМОП (CMOS).
Увага! Кантролер не прызначаны падлучэнні да бартавых сістэм самодіагностікі першага пакалення (OBD I)!
Прылада выконвае ролю найпростага сканара і прызначана для счытвання дыягнастычных кодаў і дадзеных сістэмы OBD II (абарачэнні рухавіка, тэмпература астуджальнай вадкасці і якое ўсмоктваецца паветра, нагрузачныя характарыстыкі, выдатак які паступае ў рухавік паветра і да т.п.) у рамках стандарту SAE J1979 праз шыну любога выканання (PWM, VPW і ISO 9141-2).
Асноўнае прызначэнне
Для падлучэння да кампутара дастаткова 3-жыльнага провада, падлучэнне да дыягнастычнага раздыма ажыццяўляецца 6-жыльным провадам. Напружанне харчавання падаецца на кантролер праз 16-кантактны дыягнастычны раздым OBD. Прынцыповая схема кантролера прадстаўлена на ілюстрацыі.
Рэкамендацыі па прымяненні
1. Для падлучэння прылады да аўтамабіля можа быць выкарыстаны неэкранаваны кабель, даўжынёй не больш за 1.2 м, што мае асаблівае значэнне пры выкарыстанні пратакола PWM. Пры выкарыстанні кабеля большай даўжыні варта паменшыць супраціў рэзістараў на ўваходзе прылады (R8 і R9 або R15). Пры выкарыстанні экранаванага кабеля, экран трэба адключыць з мэтай зніжэння ёмістасці.
2. Кабель для падлучэння да паслядоўнага порта кампутара таксама можа быць неэкранаваным. Прылада стабільна працуе з кабелем даўжынёй да 9 м. Пры значна большай даўжыні кабеля варта выкарыстоўваць больш магутны камунікатар RS 232.
3. Тапалогія электрычных злучэнняў адвольная. Пры падвышанай вільготнасці ўжывайце дадатковыя шунтуюць кандэнсатары.
4. Бясплатнае праграмнае забеспячэнне (браўзэр) для счытвання кодаў і дадзеных можа быць спампавана з сайтаў вытворцаў і прызначана для выкарыстання пад DOS. Нязначны памер праграмнага прыкладання ў варыянце «пад DOS» дазваляе змясціць яго на загрузную дыскету DOS і выкарыстоўваць нават на кампутарах, абсталяваных несумяшчальным з DOS праграмным забеспячэннем. Неабавязковай умовай з'яўляецца нават наяўнасць у кампутары цвёрдай кружэлкі.
Агульныя прынцыпы абмену дадзенымі
Заўвага. Калі адваротнае не абумоўлена асоба, усе лікі прыведзены ў 16-рычным фармаце (hex).
Дзесятковы фармат абазначаецца пазнакай dec.
Абмен дадзенымі ідзе па трохправодным паслядоўным злучэнні, без ужывання ініцыялізацыйнага абмену службовымі паведамленнямі (handshaking). Прылада праслухоўвае канал на наяўнасць паведамленняў, выконвае прымаемыя каманды і перадае вынікі на персанальны камп'ютар (PC), пасля чаго неадкладна вяртаецца ў рэжым праслухоўвання. Уваходныя ў кантролер і выходныя з яго дадзеныя арганізаваны ў выглядзе ланцужка паслядоўна ідучых сябар за сябрам байтаў, першы з якіх з'яўляецца кантрольным. Звычайна кантрольны байт уяўляе сабой лік ад 0 да 15 dec (ці 0-F hex), якое апісвае колькасць наступных далей інфармацыйных байтаў. Так, напрыклад, 3-байтная каманда будзе выглядаць наступным чынам: 03 (кантрольны байт), 1-ы байт, 2-гі байт, 3-ці байт. Падобны фармат выкарыстоўваецца як для ўваходных каманд на апытанне бартавой сістэмы самодіагностікі, так і для выходных паведамленняў, якія змяшчаюць патрэбную інфармацыю. Варта заўважыць, што ў кантрольным байце выкарыстоўваюцца толькі чатыры малодшых біта, - старэйшыя біты зарэзерваваны пад некаторыя адмысловыя каманды і могуць быць скарыстаны PC пры ініцыялізацыі злучэння з кантролерам і ўзгадненні пратаколу перадачы дадзеных, а таксама кантролерам для кантролю памылак перадачы. У прыватнасці, у выпадку памылкі пры перадачы, кантролер вырабляе ўстаноўку старэйшага біта (MSB) кантрольнага байта ў адзінку. Пры паспяховай перадачы ўсе чатыры старэйшых біта ўстанаўліваюцца ў нуль.
Заўвага. Існуюць асобныя выключэнні з правіл выкарыстання кантрольнага байта.
Ініцыялізацыя кантролера і бартавой сістэмы самодіагностікі
Для пачатку абмену дадзенымі PC павінен вырабіць усталёўку злучэння з кантролерам, затым ініцыялізаваць кантролер і канал дадзеных OBD II.
Устаноўка злучэння
Пасля падлучэння кантролера да PC і дыягнастычнага раздыму OBD павінна быць праведзена яго ініцыялізацыя з мэтай прадухілення «завісанняў», звязаных з шумамі ў паслядоўных лініях у выпадку, калі іх падлучэнне было праведзена да ўключэння харчавання кантролера. Адначасова робіцца найпростая праверка актыўнасці інтэрфейсу. У першую чаргу пасылаецца аднабайтавы сігнал 20 (hex), Які успрымаецца кантролерам як каманда на ўсталёўку злучэння. У адказ кантролер замест кантрольнага высылае адзіны байт FF hex (255 dec) і пераходзіць у рэжым чакання прыёму даных. Цяпер PC можа пераходзіць да ініцыялізацыі канала дадзеных.
Заўвага. Дадзены выпадак з'яўляецца адным з нямногіх, калі кантролер не выкарыстоўвае кантрольны байт.
Ініцыялізацыя
На дадзеным этапе праводзіцца ініцыялізацыя пратакола, па якім будзе праводзіцца абмен дадзенымі, а ў выпадку пратакола ISO - ініцыялізацыя бартавой сістэмы. Абмен дадзенымі здзяйсняецца па адным з трох пратаколаў: VPW (General Motors), PWM (Ford) і ISO 9141-02 (азіяцкія/еўрапейскія вытворцы). Заўвага: Існуе мноства выключэнняў: так, напрыклад, пры апытанні некаторых мадэляў аўтамабіляў Mazda можа выкарыстоўвацца фордаўскі пратакол PWM. Такім чынам, пры ўзнікненні праблем перадачы трэба ў першую чаргу паспрабаваць скарыстацца якім-небудзь іншым пратаколам. Выбар пратакола вырабляецца перадачай камбінацыі, якая складаецца з кантрольнага байта (16-рычн.) і наступнага непасрэдна за ім байта, які вызначае тып пратаколу: 0 = VPW, 1 = PWM, 2 = ISO 9141. Так, напрыклад, па камандзе 41 (hex) 02 (hex) праводзіцца ініцыялізацыя пратакола ISO 9141.
У адказ кантролер высылае кантрольны байт і байт стану. Усталёўка MSB кантрольнага байта кажа аб наяўнасці праблем, пры гэтым наступны за ім байт стану будзе змяшчаць адпаведную інфармацыю. Пры паспяховай ініцыялізацыі высылаецца кантрольны байт 01 (hex), Які паказвае на тое, што далей варта верыфікацыйны байт стану. У выпадку пратаколаў VPW і PWM верыфікацыйны байт уяўляе сабой простае рэха байта выбару пратаколу (0 ці 1, адпаведна), пры ініцыялізацыі пратакола ISO 9141 гэта будзе лічбавы ключ, які вяртаецца бартавым працэсарам OBD і вызначальны, якая менавіта з двух малаважна адрозных сябар ад сябра версій пратаколу будзе выкарыстоўвацца.
Заўвага. Лічбавы ключ мае чыста інфармацыйнае прызначэнне.
Варта заўважыць, што ініцыялізацыя пратаколаў VPW і PWM адбываецца значна хутчэй, бо патрабуе толькі перадачы адпаведнай інфармацыі кантролеру. На мадэлях, якія адказваюць стандарту ISO, ініцыялізацыя займае каля 5 секунд, якія затрачваюцца на абмен кантролера інфармацыяй з бартавым працэсарам, які вырабляецца з хуткасцю 5 бод. Варта звярнуць увагу чытача, што на некаторых мадэлях аўтамабіляў сямейства ISO 9141 ініцыялізацыя пратаколу прыпыняецца, калі запыт на выдачу дадзеных не будзе перададзены на працягу 5-секунднага інтэрвалу, - сказанае азначае, што PC павінен вырабляць аўтаматычную выдачу запытаў кожныя некалькі секунд, нават у халастым. рэжыме.
Пасля ўсталёўкі злучэння і ініцыялізацыі пратаколу пачынаецца штатны абмен дадзенымі, якія складаюцца з якія паступаюць ад PC запытаў і якія выдаюцца кантролерам адказаў.
Парадак абмену дадзенымі
Функцыянаванне кантролера пры выкарыстанні пратаколаў сямейства ISO 9141-2 і SAE (VPW і PWM) адбываецца па некалькі розных сцэнарах.
Абмен па пратаколах SAE (VPW і PWM)
Пры абмене дадзенымі па дадзеных пратаколах адбываецца буферызацыя толькі аднаго кадра дадзеных, што азначае неабходнасць канкрэтызацыі які падлягае захопу або звароту кадра. У некаторых (рэдкіх) выпадках бартавы працэсар можа перадаваць пакеты, якія складаюцца больш за з аднаго кадра. У такой сітуацыі запыт павінен паўтарацца датуль, пакуль усе кадры пакета не будуць прынятыя.
Запыт заўсёды фармуецца наступным чынам: [Кантрольны байт], [Запыт па стандарце SAE], [Нумар кадра]. Як ужо згадвалася вышэй, кантрольны байт звычайна ўяўляе сабою лік, роўны поўнай колькасці наступных за ім байтаў. Запыт афармляецца ў адпаведнасці са Спецыфікацыямі SAE J1950 і J1979 і складаецца з загалоўка (3 байта), паслядоўнасці інфармацыйных байтаў і байта кантролю памылкі (CRC) . Заўважым, што ў той час як інфармацыя па запыце фармуецца ў строгай адпаведнасці са Спецыфікацыямі SAE, спажыўцом кантрольнага байта і нумары кадра з'яўляецца інтэрфейсны чып.
Пры паспяховым завяршэнні працэдуры паведамленне ў адказ заўсёды мае наступны фармат: [Кантрольны байт], [Адказ па стандарце SAE]. Кантрольны байт, як і раней, вызначае колькасць наступных за ім інфармацыйных байтаў. Адказ у адпаведнасці з патрабаваннямі стандарту SAE складаецца з загалоўка (3 байта), ланцужкі інфармацыйных байтаў і байта CRC.
Пры збоі высылаецца 2-байтнае паведамленне ў адказ: [Кантрольны байт], [Байт стану]. Пры гэтым у кантрольным байце вырабляецца ўстаноўка MSB. Чатыры малодшых біта фармуюць лік 001, якое сведчыць аб тым, што за кантрольным варта адзіны байт, - байт стану. Дадзеная сітуацыя можа ўзнікаць досыць часта, бо Спецыфікацыі дапушчаюць магчымасць нявыдачы бартавым працэсарам дадзеных, а таксама перадачу няслушных дадзеных у выпадку, калі запыт не адпавядае падтрымоўванаму вытворцамі аўтамабіля стандарту. Магчымая таксама сітуацыя, калі запытаныя дадзеныя адсутнічаюць у аператыўнай памяці працэсара ў бягучы момант часу. Калі чып не атрымлівае чаканага адказу, ці атрымлівае пашкоджаныя дадзеныя, робіцца ўстаноўка MSB кантрольнага байта, а следам за кантрольным выдаецца байт стану.
Пры калізіях у шыне інтэрфейс выпрацоўвае адзіны байт 40 (hex), Які з'яўляецца кантрольным байтам з абнуленым малодшым бітам Падобная сітуацыя можа ўзнікаць досыць часта пры загрузцы аўтамабільнай шыны паведамленнямі больш высокага чым у дыягнастычных дадзеных прыярытэту, - вылічальная прылада павінна паўтарыць зыходны запыт.
Абмен па пратаколах ISO 9141-2
Стандарт ISO 9141-2 выкарыстоўваецца большасцю азіяцкіх і еўрапейскіх вытворцаў аўтамабільнай тэхнікі. Структура фармаванага PC запыту мала чым адрозніваецца ад выкарыстоўванай у стандартах SAE з той толькі розніцай, што чып не мае патрэбу ў інфармацыі аб нумары кадра і адпаведная інфармацыя прысутнічаць у пакеце не павінна. Такім чынам, запыт заўсёды складаецца з кантрольнага байта і наступнага за ім ланцужкі інфармацыйных байтаў, улучальных у сябе кантрольную суму. У якасці зваротнага паведамлення чып проста рэтранслюе сфармаваныя бартавым працэсарам сігналы. Кантрольны байт у паведамленні ў адказ адсутнічае, таму PC успрымае паступаючую інфармацыю бесперапынна датуль, пакуль ланцужок не перарываецца паўзай даўжынёй 55 мілісекунд, якая паведамляе аб завяршэнні інфармацыйнага пакета. Такім чынам, паведамленне ў адказ можа складацца з аднаго або больш кадраў у адпаведнасці з патрабаваннямі Спецыфікацый SAE J1979. Чып не праводзіць аналіз кадраў, не адкідае недыягнастычныя кадры і г.д. PC павінен уласнымі сіламі вырабляць апрацоўку якія паступаюць дадзеных з мэтай вычлянення асобных кадраў шляхам аналізу загалоўкавых байтаў.
Заўвага. Адказы на большасць запытаў складаюцца з адзінага кадра.
Мадыфікацыі, вырабленыя ў інтэрфейсных кантролерах апошніх версій
Ніжэй прыведзены асноўныя адрозненні працэсу перадачы даных па пратаколах SAE і ISO 9141, характэрныя для інтэрфейсных кантролераў апошніх версій, а таксама парадак перадачы даных па пратаколе ISO 14230:
- 1) Стандарт ISO 9141: Дададзены адрасны байт;
- 2) Стандарт ISO 9141: Ажыццяўляецца зварот не аднаго, а абодвух ключавых байтаў; (дадатковы байт вяртаецца таксама ў рэжымах SAE, аднак тут ён не выкарыстоўваецца).
- 3) Дададзена падтрымка пратакола ISO 14230.
Заўвага. Усе інфармацыйныя байты перадаюцца ў 16-рычным фармаце.
Сімвалам XX абазначаецца нявызначаны, зарэзерваваны або неапазнаны байт.
Устаноўка злучэння
Парадак усталёўкі злучэння не змяніўся:
- Адпраўка: 20
- Прыём: FF
Выбар пратакола:
- VPW:
- Адпраўка: 41, 00
- Прыём: 02, 01, XX
- PWM:
- Адпраўка: 41, 01
- Прыём: 02, 01, XX
- ISO 9141:
- Адпраўка: 42, 02, adr, дзе: adr - адрасны байт (звычайна 33 hex)
- Прыём: 02, К1, К2, дзе К1, К2 - ключавыя байты ISO
- Або: 82, XX, XX (памылка ініцыялізацыі ISO 9141)
ISO 14230 (хуткая ініцыялізацыя):
- Адпраўка: 46, 03, R1, R2, R3, R4, R5, дзе: R1 ÷ R5 - паведамленне аб пачатку запыту ISO 14230 на ўстаноўку злучэння, звычайна R1 ÷ R5 = С1, 33, F1, 81, 66
- Прыём: S1, S2, ……… - паведамленні аб пачатку адказу ISO 14230 на ўстаноўку злучэння
Заўвага. Могуць перадавацца паслядоўна больш за адзін ECU. У якасці адказу можа выкарыстоўвацца адмоўны код.
Тыповы станоўчы адказ выглядае наступным чынам: S1, S2, ……. = 83, F1, 10, С1, Е9, 8F, BD
ISO 14230 (павольная ініцыялізацыя): Аналагічна ISO 9141
Заўвага і каментары
Калі плануецца выкарыстанне кантролера для перадачы дадзеных толькі па які-небудзь аднаму або двум з пратаколаў, лішнія кампаненты могуць быць выключаны (гл. схему). Напрыклад, пры арганізацыі схемы пад пратакол VPW (GM) у провадзе падлучэння кантролера да аўтамабіля запатрабуюцца толькі тры жылы электраправодкі (клемы 16, 5 і 2).
Калі не выкарыстоўваецца пратакол PWM, могуць быць выключаны элементы R4, R6, R7, R8, R9, R10, Т1, Т2 і D1.
Пры адмове ад абмену па пратаколе ISO выключэнню падлягаюць элементы: R15, R16, R17, R18, R19, R21, Т4 і Т5.
Адмова ад выкарыстання пратаколу VPW дазваляе выключыць наступныя элементы: R13, R14, R23, R24, D2, D3 і Т3.
Ужытыя вугальна-плёнкавыя рэзістары з 5-адсоткавым допускам супраціву.
Звярніце ўвагу на адсутнасць кнопкі аварыйнай перазагрузкі (RESET), у выпадку неабходнасці такая перазагрузка можа быць праведзена шляхам адлучэння кантролера ад аўтамабільнага раздыма (перазагрузка інтэрфейснага працэсара адбудзецца аўтаматычна). Перазапуск праграмнага забеспячэння на PC прыводзіць да новай ініцыялізацыі інтэрфейсу.