Меню English Ukrainian російська Головна

Безкоштовна технічна бібліотека для любителів та професіоналів Безкоштовна технічна бібліотека


Розрахунок бітової синхронізації мережі CAN. Енциклопедія радіоелектроніки та електротехніки

Безкоштовна технічна бібліотека

Енциклопедія радіоелектроніки та електротехніки / Автомобіль. Електронні пристрої

Коментарі до статті Коментарі до статті

При використанні інтерфейсу CAN велика проблема пов'язана із встановленням швидкості передачі та прийому інформацією в CAN-модулі мікроконтролера. У статті описуються загальні засади цієї установки згідно специфікації фірми Bosch. Як приклад наведено основні формули для обчислення значень параметрів, що записуються в керуючі регістри CAN-модулів мікроконтролерів ARM LPC23xx та STM32F103, а також розглянута розроблена автором програма, що допомагає вибрати найкращий варіант.

Свій початок інтерфейс CAN (controller area network – локальна мережа контролера) отримав у середині 80-х років минулого століття від німецької компанії Robert Bosch Gmbh, яка створювала його як економічний засіб для об'єднання в інформаційну мережу контролерів, що управляють системами автомобіля. Справа в тому, що в міру вдосконалення автомобільної техніки розвивалася і електроніка, що управляє двигуном, коробкою передач та іншими механізмами. Це призвело до того, що до кожного електронного блоку в автомобілі стали тягтися десятки дротів від датчиків і виконавчих пристроїв, а також дроти, що зв'язують різні блоки. Все це не тільки обтяжувало машину, а й позначалося на її надійності, безпеці, ремонтопридатності.

У міру розповсюдження цього інтерфейсу подібні мережі почали застосовувати і в інших сферах, зокрема, для автоматизації технологічних процесів. Висока надійність захисту від спотворення під час роботи у жорстких умовах і досить велика швидкість її передачі (до 1 Мбіт/с) дали можливість використовувати cAn у відмінних від її початкового призначення місцях. Надійність мережі забезпечується наявністю розвинених механізмів виявлення та виправлення помилок, самоізоляцією несправних вузлів, нечутливістю до високого рівня електромагнітних перешкод.

В основі ідеології CAN лежить семирівнева модель OSI/ISO (якщо говорити спрощено, то це віртуальний поділ процесів передачі та прийому інформації на сім рівнів). Заглиблюватися в цю область немає сенсу, оскільки вона широко освітлена у багатьох джерелах, наприклад, [1]. В даний час стандартизовано два рівні: фізичний (частково) і канальний.

Фізичне середовище передачі інформації у специфікації CAN фірми Bosch не визначено, але зазвичай мається на увазі, що це мережа типу "шина" з фізичним рівнем у вигляді пари проводів згідно стандарту ISO 11898. Типи з'єднань та швидкість передачі в даний час не стандартизовані, але зазвичай їх задають у специфікаціях вищих шарів.

Всі вузли мережі приєднуються до двох дротів лінії, що їх зв'язує (CAN_H і CAN_L) паралельно. На кінцях лінії зв'язку обов'язково мають бути встановлені термінатори – резистори опором 120 Ом. У відсутність передачі напруга на обох дротах щодо корпусу автомобіля або загального дроту технологічної установки - 2,5 В. Логічній одиниці (за прийнятою в CAN термінології біт з таким значенням називається рецесивним) відповідає стан шини, при якому рівень напруги на дроті CaN_H вищий, ніж CAN_L. Логічному нулю (біт із таким значенням називається домінантним) - навпаки. При одночасної роботі кількох передавачів рецесивний біт лінії придушується домінантним.

Прийнято пасивний стан шини відповідає рівню логічної одиниці. У ньому вона знаходиться, коли жодні повідомлення не надсилаються. Надсилання повідомлення завжди починається з домінантного біта. Проводи шини в CAN-модулі кожного вузла з'єднані зі спеціальною мікросхемою - драйвером шини, що виконує функції приймача. Крім того, драйвер може забезпечувати деякі додаткові функції:

- Регулювання швидкості наростання сигналу шляхом зміни вхідного струму;
- захист виходів передавача від пошкодження при можливих замикання проводів CAN_H і CAN_L з ланцюгами живлення за допомогою вбудованого вузла обмеження струму, а також від короткочасного підвищення напруги на цих проводах;
- внутрішній тепловий захист;
- режим зниженого енергоспоживання, в якому приймач продовжує повідомляти контролера про стан шини, щоб при виявленні її активності він міг перевести драйвер у нормальний режим роботи.

Кодування інформації передачі по шині відбувається методом NRZ (Non Return to Zero - без повернення до нуля). Він має істотний недолік: при передачі довгої послідовності одиниць виходить, що пауз між ними немає. Це призводить до того, що приймач не може відрізнити таку послідовність паузи між повідомленнями. Для вирішення цієї проблеми використовується так званий бітстаффінг (Bit Stuffing – вставка бітів). Він у тому, що після п'яти переданих поспіль однакових бітів у тому потік вставляється додатковий біт із протилежним значенням. Приймач, виявивши п'ять однакових бітів поспіль, видаляє той, який слідує за ними, вставлений під час передачі.

На канальному рівні визначено два типи ідентифікаторів: Standard CAN (довжиною 11 біт) та Extended CAN (29 біт). Вони задають формат повідомлень.

Серед вищих рівнів можна відзначити специфікації CAL/CANopen, CAN Kingdom, DeviceNet та SDS (Smart Distributed System), докладніше можна переглянути в Інтернеті [2].

За визначенням мережа CAN об'єднує обмежену кількість контролерів, локально розміщених всередині однієї установки, приміщення або кількох приміщень, що близько розташовані. Вона не виходить за межі технологічного об'єкту. Ідеологія мережі побудована на кількох моментах. По-перше, контролер, який здійснює передачу, безперервно слухає свої ж, що передаються по мережі сигнали. Це дає можливість виконувати побітну перевірку правильності інформації, що передається (check bit monitoring) декількома вузлами на відміну, наприклад, від мереж Ethernet. Якщо прийнятий контролером біт відрізняється від ним переданого, то передача зупиняється і генерується помилка Bit Error.

При передачі ідентифікатора повідомлення цей механізм використовується для вирішення колізій, а при передачі інформації перевіряється коректність. Якщо в ній виявлено помилку, то передавач перериває своє повідомлення і видає на шину кадр Error Frame для оповіщення інших вузлів мережі про цю подію. Для підтвердження прийому повідомлення в інформаційному кадрі є поле ACK. У цьому полі кожен вузол, який прийняв передане повідомлення, підтверджує джерелу, що воно отримано. Непідтверджене повідомлення передавач надсилає повторно, доки підтвердження не буде отримано.

Всі вузли мережі приймають інформацію, що передається, тому неможливо передати повідомлення якомусь конкретному вузлу. Але за наявності в сучасних контролерах засобів фільтрації трафіку це не становить великих проблем.

Мережа CAN децентралізована. Це можна вважати великим плюсом, якщо трохи відійти від звичної ідеології, згідно з якою мережа обов'язково повинна мати керуючий нею провідний вузол і команди, що виконують його, ведені вузли. У децентралізованій мережі вузли мають більшу інтелектуальність. Вона продовжує функціонувати при виході з ладу кожного з них.

Інформація передається повідомленнями стандартного формату - кадрами Data Frame (передача інформації), Remote Transmission Request Frame або просто Remote Frame (запит інформації), Error Frame (повідомлення про помилку), Overload Frame (повідомлення про навантаження контролера).

Найчастіше використовуються кадри передачі. Їх формат та вміст показані в табл. 1 для стандартного, а табл. 2 для розширених кадрів. Кадр запиту інформації відрізняється від інформаційного (стандартного або розширеного формату) лише тим, що біт RTR завжди рецесивний, а поле інформації відсутнє.

Таблиця 1

Поле Довжина, біт (байт) значення
Початок кадру 1 Має бути домінантним (0)
ідентифікатор 11
Запит передачі (RTR) 1 Має бути домінантним (0)
Ознака розширення ідентифікатора (IDE) 1 Має бути домінантним (0)
Зарезервовано (rО) 1
Довжина поля інформації (DLC) 4 Задається в байтах
Поле інформації (0 - 8) Інформація, що передається
Контрольна сума (CRC) 15 Обчислюється по всьому кадру
Розмежувач контрольної суми 1 Має бути рецесивним (1)
Проміжок підтвердження (АСК) 1 Передавач шле рецесивний (1), приймач вставляє домінанту (0)
Розмежувач підтвердження 1 Має бути рецесивним (1)
Кінець кадру (EOF) 7 Має бути рецесивним (1)

Таблиця 2

Поле Довжина, біт (байт) значення
Початок кадру 1 Має бути домінантним (0)
Ідентифікатор А 11 Перша частина ідентифікатора
Заміна запиту передачі (SRR) 1 Має бути рецесивним (1)
Ознака розширення ідентифікатора (IDE) 1 Має бути рецесивним (1)
Ідентифікатор В 18 Друга частина ідентифікатора
Запит на передачу (RTR) 1 Має бути домінантним (0)
Зарезервовано (r1 та r0) 2
Довжина поля інформації (DLC) 4 Задається в байтах
Поле інформації (0 - 8) Інформація, що передається
Контрольна сума (СПС) всього кадру 15 Обчислюється по всьому кадру
Розмежувач контрольної суми 1 Має бути рецесивним (1)
Підтвердження (АСК) 1 Передавач шле рецесивний, приймач вставляє домінанту
Розмежувач підтвердження 1 Має бути рецесивним (1)
Кінець кадру (EOF) 7 Має бути рецесивним (1)

Кадр Error Frame складається з поля Error Flag, яке містить шість бітів однакового значення (і таким чином порушує правило бітстафінгу), і поля Error Delimiter із восьми рецесивних бітів. Його передача призводить до того, що всі вузли мережі реєструють помилку формату та автоматично передають у мережу свої кадри Error Frame. Результат цього процесу - автоматична повторна передача інформації до мережі вузлом, що передавав вихідне повідомлення.

Кадр Overload Frame повторює структуру і логіку роботи Error Frame, але передається вузлом, який в даний момент не може обробити повідомлення, що надходить і тому запитує повторну передачу. Нині практично немає.

У кожному вузлі мережі є драйвер шини, CAN-контролер (в обов'язки якого входить взаємодія з мережею, реалізація протоколу обміну) та мікроконтролер. Дуже часто CAN-контролер поєднують із мікроконтролером. У цьому випадку для створення вузла мережі CAN достатньо двох мікросхем – мікроконтролера та драйвера шини.

Синхронізація в CAN тісно пов'язана із самим способом передачі інформації по мережі. Користувачеві надається можливість програмувати швидкість передачі інформації (від 1 Кбіт/с до 1 Мбіт/с), положення точки (моменту) вибірки біта в інтервалі його передачі та кількість вибірок кожного біта. Завдяки цьому мережу можна оптимізувати під конкретну програму. Але це створює і деякі проблеми.

Будь-яку інформацію, що передається по послідовній шині, можна розбити на елементарні біти, від тривалості передачі цього елементарного біта NBT (Nominal Bit Time) залежить швидкість передачі інформації NBR (Nominal Bit Rate) - число бітів, що передаються за секунду ідеальним передавачем без відновлення тактових інтервалів:

NBR = 1/NBT (1)

Як показано на рис. 1, інтервал NBT розділений на кілька сегментів, що не перекриваються, кожен з яких складається з цілого числа тимчасових відрізків, званих квантами часу (Time Quanta - TQ).


Рис. 1

Оскільки швидкість передачі NBR у всіх вузлів мережі повинна бути однаковою, за допомогою формули (1) зазвичай знаходять необхідне значення NBT і потім підбирають тривалість кожного з сегментів, що його утворюють:

NBT = TSyncSeg + Т.PropSeg + Т.PS1 + Т.PS2(2)

де TSyncSeg - Тривалість сегмента синхронізації; TPropSeg - Тривалість сегмента поширення; TPS1 - Тривалість сегмента фази 1; TPS2 - Тривалість сегмента фази 2.

Сегмент синхронізації (SyncSeg) – перший по порядку, використовується для синхронізації вузлів на шині. Прихід початкового перепаду рівня очікуватиметься саме у межах цього сегмента. Тривалість його фіксована та завжди дорівнює 1TQ.

Сегмент розповсюдження (PropSeg) служить компенсації фізичних затримок сигналу між вузлами. Його тривалість залежить від часу поширення сигналу від передавального вузла до приймаючого та назад, включаючи затримки, пов'язані з драйвером шини. Вона може набувати значень від 1TQ до 8TQ.

Сегменти фаз 1 та 2 (PS1 та PS2) служать для компенсації спотворень фази перепадів на шині. Під час синхронізації з відновленням тактових інтервалів приймачем може подовжуватися PS1, або коротшати PS2. Згідно з початковою специфікацією фірми Bosch, тривалість PS1 та PS2 може лежати в межах від 1TQ до 8TQ, але для деяких CAN-модулів ці значення можуть бути іншими.

Між сегментами PS1 та PS2 лежить момент, який називають точкою вибірки біта. У ній здійснюються зчитування та інтерпретація логічного рівня сигналу. У деяких CAN-контролерах буває передбачений режим потрійного читання рівня сигналу кожного біта. Але навіть у цьому випадку основною вважається точка між PS1 та PS2, а дві інші сприяють прийняттю правильного рішення про значення біта за критерієм більшості (двома або трьома відліками одного рівня).

Як говорилося вище, номінальний час передачі біта складається з цілого числа квантів часу TQ. Тривалість кванта залежить від частоти тактового генератора модуля Fосн та коефіцієнта її поділу попереднім дільником BRP. Співвідношення між TQ, Fосн та BRP різні для мікроконтролерів різних типів. Наприклад, для МСР2510 справедлива формула

TQ = 2 · (BRP + 1) / Fосн . (3)

Для мікроконтролерів STM32F та LPC23xx формула виглядає так:

TQ = (BRP + 1)/Fосн . (4)

При виборі тривалості сегментів зручніше користуватися квантами часу TQ, а не стандартними одиницями часу. Тут і далі ми позначатимемо ім'ям сегмента (наприклад, PropSeg) та його тривалість у квантах. Існують кілька вимог, яких необхідно дотримуватись:

PropSeg + PS1 ≥ PS2; (5)

PropSeg +PS1 ≥ Tпідпирати; (6)

PS2 > SJW. (7)

Tпідпирати у нерівності (6) - затримка поширення сигналу мережі. Якщо припустити, що всі вузли мережі мають подібні внутрішні затримки, то обчислити затримку поширення можна за формулою

Tпідпирати = 2 · (Tавтобус + Т.CMP + Т.др), (8)

де Tавтобус - час проходження сигналу туди і назад у фізичному середовищі шини; TCMP - затримка у вхідному компараторі; Tдр - Затримка у вихідному драйвері.

SJW (Synchronization Jump Width - ширина стрибка синхронізації) в нерівності (7) - тривалість сегмента переходу синхронізації, додатково вводиться для коригування тривалості прийому біта за необхідності. Використовується для синхронізації прийому з повідомленнями, що передаються. З іншого боку, зовнішні перешкоди створюють ситуації, коли номінальна швидкість передачі, запланована у мережі, відповідає реальної швидкості. Для компенсації цієї різниці також використовується цей додатковий сегмент. Тривалість SJW лежить у межах 1TQ-4TQ.

Сегменти PS1 та PS2 разом із SJW використовуються для компенсації догляду частоти тактового генератора вузла. PS1 і PS2 можуть подовжуватися або коротшати в залежності від необхідності. Синхронізація відбувається з переходу від рецесивного (1) до домінантного (0) стану шини і керує інтервалом часу між цим переходом і точкою вибірки біта. Перехід синхронізований, якщо він відбувається в сегменті SyncSeg, інакше існує фазова помилка – інтервал часу між переходом та закінченням SyncSeg, що вимірюється у тимчасових квантах TQ.

Існують два типи синхронізації: апаратна та повторна. Апаратна виконується лише один раз при першому переході від рецесивного стану до домінантного, що завершує період шини спокою. Цей перепад свідчить про початок кадру (SOF - Start of Frame). Апаратна синхронізація встановлює лічильник синхронізації у вихідний стан, змушуючи перепад розташуватись у межах сегмента SyncSeg. У цей момент усі приймачі синхронізовані з передавачем.

Повторна синхронізація з відновленням тактових інтервалів проводиться для того, щоб підтримати початкову синхронізацію, яка була встановлена ​​апаратно. Без відновлення тактових інтервалів приймачі можуть вийти із синхронізму через догляд частоти тактових генераторів у вузлах мережі. Ця синхронізація працює на основі цифрового фазового автопідстроювання (DPLL - Digital Phase Locked Loop), яка порівнює фактичну позицію переходу рецесивного стану в домінантне на шині з позицією очікуваного переходу всередині SyncSeg і при необхідності коригує час передачі біта.

Фазова помилка е визначається позицією перепаду щодо сегмента SyncSeg, виміряною в TQ:

e = 0 - перехід знаходиться усередині сегмента SyncSeg;

e > 0 - перехід перебуває перед точкою вибірки, до PS1 додаються тимчасові кванти TQ;

e < 0 - перехід знаходиться після точки вибірки попереднього біта, від PS2 віднімаються тимчасові кванти TQ.

Повторна синхронізація з відновленням тактових інтервалів не може відбуватися на початку кадру, оскільки там вже було виконано апаратну синхронізацію.

Якщо абсолютне значення фазової помилки менше або дорівнює SJW, результат апаратної та повторної синхронізації однаковий. Якщо фазова помилка більша за SJW, повторна синхронізація не може компенсувати фазову помилку повністю.

Між двома точками вибірки допустима лише одна синхронізація. Вона підтримує заданий інтервал між перепадом рівня та точкою вибірки, даючи можливість рівню сигналу стабілізуватися та відфільтровуючи його зміни, які коротші, ніж PropSeg+PS1.

Синхронізація пов'язана ще з арбітражем. Усі вузли жорстко синхронізуються з тим, що почав передавати першим. Але сигнал іншого вузла, який почав передачу трохи пізніше, може бути ідеально синхронизирован. Однак перший передавач не обов'язково виграє арбітраж, тому приймачі мають синхронізувати себе не з ним, а з тим, що його виграв. Те саме відбувається і в полі підтвердження ACK, де необхідно синхронізуватися з тим вузлом, який першим почав передавати біт підтвердження. Все це призводить до зменшення допустимого взаємного догляду частоти тактових генераторів, встановлених у вузлах шини.

Є кілька правил синхронізації:

- використовуються лише переходи з рецесивного до домінантного стану (з одиниці в нуль);

- у межах передачі біта дозволяється лише одна синхронізація;

- перехід використовується для синхронізації за умови, що логічний рівень сигналу, прочитаний у попередній точці вибірки, відрізняється від рівня, встановленого на шині відразу після переходу;

- передавальний вузол не виконує відновлення тактових інтервалів при позитивній фазовій помилці (е > 0), тобто не підлаштовується під своє повідомлення. Але приймачі виконують синхронізацію як завжди;

- якщо абсолютне значення фазової помилки більше, ніж стрибок фази SJW, тривалість відповідного сегмента фази (PS1 або PS2) змінюється до значення, рівного SJW.

Наведене вище призводить до того, що фізична довжина шини обмежена швидкістю передачі інформації по ній. Всім вузлам шини потрібно прочитати її стани в межах того самого інтервалу передачі біта. У результаті виходить, що максимальна швидкість передачі в 1 Мбіт/с досяжна лише за довжини шини трохи більше 30 м-коду.

Розглянемо, як здійснюється налаштування контролера CAN у конкретних мікроконтролерах.

У мікроконтролерах сімейства LPC (наприклад, серії LPC23xx) для встановлення швидкості передачі по шині CAN призначені регістри CANxBTR, де x - номер контролера CAN (їх може бути 1 або 2, у деяких випадках - 4). Тут задають такі параметри (у квадратних дужках вказані інтервали номерів зайнятих ними розрядів регістру):

BRP (CANxBTR[9:0]) - значення коефіцієнта попереднього розподілу частоти шини APB для її подальшого використання контролером CAN. Від цього параметра залежить тривалість тимчасового кванта TQ, що визначається за формулою (4) при підстановці до неї Fосн=1/TАПБ, де TАПБ - Період проходження імпульсів на системній шині APB мікроконтролера.

SJW (CANxBTR[15:14]) - ширина стрибка синхронізації в квантах TQ на одиницю більше вказаного тут значення.

TSEG1 (CANxBTR[19:16]) та TSEG2 (CANxBTR[20:22]) - тривалість сегментів (відповідно PS1 та PS2) у квантах TQ на одиницю більше зазначених тут значень.

SAM (CANxBTR[23]) - задає число зчитувань значення кожного біта: 0 - одноразово, 1 - триразово. Останній варіант використовується, як правило, у низькошвидкісних мережах.

При виборі цих параметрів слід керуватися такими правилами:

TPS2 ≥ 2 · TQ (9)

TPS2 ≥ TSJW (10)

TPS1 ≥ TPS2 (11)

У мікроконтролерах серії STM32F є аналогічний регістр і називається він CAN_BTR. У ньому передбачені такі поля:

BRP (CAN_BTR[9:0]), TS1 (CAN_ BTR[19:16]) та TS2 (CAN_BTR[22:20]) - збігаються за призначенням та розташуванням у регістрі з розглянутими вище полями BPR, TSEG1 та TSEG2 регістру CANxBTR. При обчисленні значення TQ формулу (4) слід підставляти Fосн=1/TPCLK, де TPCLK - Період повторення імпульсів на шині VPB мікроконтролера.

SJW (CAN_BTR[25:24]) - відрізняється від однойменного поля регістру CANxBTR лише розрядами, що займаються в регістрі.

LBKM (CAN_BTR[30]) - одиниця у цьому регістрі встановлює режим шлейфу, у якому передане повідомлення приймається власним приймачем, але з вирушає у мережу.

SILM (CAN_BTR[31]) - одиниця у тому регістрі встановлює режим мовчання, у якому контролер приймає що надходять із мережі повідомлення, але нічого не передає.

Обидва згадані режими використовуються для налагодження.

Для мікроконтролерів формула (2) спрощується за рахунок відсутності сегментів SyncSeg і PropSeg. Вони замінені одним сегментом тривалістю 1TQ. Формула для них виглядає так:

NBT = TQ + TPS1 + Т.PS2 (12)

Швидкість передачі по шині CAN у бітах за секунду розраховується у програмі за формулою

NBR = (F/(BRP + 1)) · (1/(PS1 + PS2 +3)) (13)

де F - частота системної шини APB чи VPB відповідно для STM32F чи LPC23xx. Якщо параметр SJW не дорівнює нулю, обчислюються максимальне

BRМакс = (F/(BRP + 1)) · (1/(PS1 + PS2 - SJW + 2)) (14)

та мінімальне

BRхвилин = (F/(BRP + 1)) · (1/(PS1 + PS2 + SJW + 4)) (15)

значення швидкості передачі по шині CAN, в інтервалі між якими забезпечується синхронізація.

Вікно програми CANTools показано на рис. 2. Вихідними даними для неї є тип мікроконтролера, необхідна швидкість передачі інформації та частота системної шини, від якої проводиться тактування CAN-контролера. Приступаючи до розрахунку, слід передусім вибрати тип мікроконтролера. У програмі варіантів всього два - LPC23xx або STM32F103. Далі задають необхідну швидкість передачі по шині CAN у кілобітах за секунду. Після цього можна встановити частоту системної шини в мегагерцах. Залишається тільки натиснути на екранну кнопку "Розрахунок" та отримати результат.


Рис. 2

Працює програма наступним чином: у циклі від 0 до 512 змінюється значення BRP Обчислюються частота проходження квантів часу та їх число, що міститься в інтервалі NBT при заданих частоті системної шини, значенні BRP та швидкості передачі. Число квантів має бути цілим і менше 23 - максимального значення, яке може бути записано в регістри мікроконтролера. Потім виконується перебір значень TSEG2 від 2 до 7 із відповідним зменшенням значення TSEG1. Їхня сума залишається постійною.

На екран виводяться частота проходження квантів Fsc=1/TQ, через дробову межу - тривалість кванта TQ, потім значення поля BRP відповідного регістра. Після цього кожна пара рядків визначає результат одного з варіантів розрахунку.

Параметри TSEG1 і TSEG2 у першому рядку пари відповідають однойменним полям регістра CANxBTR мікроконтролерів серії LPC23xx або полям TS1, TS2 регістра CAN_BTR мікроконтролера STM32F103. Наводяться їхня сума, значення кожного з полів, а також значення поля SJW, якщо воно не нульове. Останнім у рядку виводиться шістнадцяткове значення CANBTR, яке слід записати в регістр CANxBTR або CAN_BTR (відповідно типу мікроконтролера) для реалізації розрахованого варіанта.

У другому рядку пари виводяться значення максимальної та мінімальної швидкості передачі інформації по шині CAN (якщо SJW > 0) і положення точки вибірки (sample point) біта щодо початку його передачі у відсотках від тривалості інтервалу передачі.

Для деяких значень BRP результати розрахунків не виводяться. Це означає, що частота проходження квантів часу або швидкість передачі по шині CAN, обчислена за формулою (13), виявилася дробовим числом. Розрахунок у разі не проводиться.

Програма CANTools, автоматизуючи процес розрахунку, не дає рекомендацій, які саме поєднання параметрів краще використовувати у реальному додатку. Вибрати найкращий варіант із запропонованих повинен сам розробник мережі, спираючись на наявні знання та досвід. Для тих, хто тільки-но почав освоювати CAN, автор може порекомендувати керуватися наступним правилом: інтервал між початком біта і точкою його вибірки повинен знаходитися в межах від 70 до 85 % тривалості біту. Можливо, насправді доведеться практично випробувати кілька варіантів із числа запропонованих програмою.

Програму CANTools можна завантажити з ftp://ftp.radio.ru/pub/2014/01/can.zip.

література

  1. Мережева модель OSI.
  2. Controller Area Network.

Автор: А. Абрамович

Дивіться інші статті розділу Автомобіль. Електронні пристрої.

Читайте та пишіть корисні коментарі до цієї статті.

<< Назад

Останні новини науки та техніки, новинки електроніки:

Новий спосіб управління та маніпулювання оптичними сигналами 05.05.2024

Сучасний світ науки та технологій стрімко розвивається, і з кожним днем ​​з'являються нові методи та технології, які відкривають перед нами нові перспективи у різних галузях. Однією з таких інновацій є розробка німецькими вченими нового способу керування оптичними сигналами, що може призвести до значного прогресу фотоніки. Нещодавні дослідження дозволили німецьким ученим створити регульовану хвильову пластину всередині хвилеводу із плавленого кремнезему. Цей метод, заснований на використанні рідкокристалічного шару, дозволяє ефективно змінювати поляризацію світла через хвилевід. Цей технологічний прорив відкриває нові перспективи розробки компактних і ефективних фотонних пристроїв, здатних обробляти великі обсяги даних. Електрооптичний контроль поляризації, що надається новим методом, може стати основою створення нового класу інтегрованих фотонних пристроїв. Це відкриває широкі можливості для застосування. ...>>

Приміальна клавіатура Seneca 05.05.2024

Клавіатури – невід'ємна частина нашої повсякденної роботи за комп'ютером. Однак однією з головних проблем, з якою стикаються користувачі, є шум, особливо у випадку преміальних моделей. Але з появою нової клавіатури Seneca від Norbauer & Co може змінитися. Seneca – це не просто клавіатура, це результат п'ятирічної роботи розробників над створенням ідеального пристрою. Кожен аспект цієї клавіатури, починаючи від акустичних властивостей до механічних характеристик, був ретельно продуманий і збалансований. Однією з ключових особливостей Seneca є безшумні стабілізатори, які вирішують проблему шуму, характерну для багатьох клавіатур. Крім того, клавіатура підтримує різні варіанти ширини клавіш, що робить її зручною для будь-якого користувача. І хоча Seneca поки не доступна для покупки, її реліз запланований на кінець літа. Seneca від Norbauer & Co є втіленням нових стандартів у клавіатурному дизайні. Її ...>>

Запрацювала найвища у світі астрономічна обсерваторія 04.05.2024

Дослідження космосу та її таємниць - це завдання, яка привертає увагу астрономів з усього світу. У свіжому повітрі високих гір, далеко від міських світлових забруднень, зірки та планети розкривають свої секрети з більшою ясністю. Відкривається нова сторінка в історії астрономії із відкриттям найвищої у світі астрономічної обсерваторії – Атакамської обсерваторії Токійського університету. Атакамська обсерваторія, розташована на висоті 5640 метрів над рівнем моря, відкриває нові можливості для астрономів у вивченні космосу. Це місце стало найвищим для розміщення наземного телескопа, надаючи дослідникам унікальний інструмент вивчення інфрачервоних хвиль у Всесвіті. Хоча висотне розташування забезпечує більш чисте небо та менший вплив атмосфери на спостереження, будівництво обсерваторії на високій горі є величезними труднощами та викликами. Однак, незважаючи на складнощі, нова обсерваторія відкриває перед астрономами широкі перспективи для дослідження. ...>>

Випадкова новина з Архіву

Планшет Asus ExpertBook B3 21.09.2022

Компанія ASUS офіційно представила свій новітній планшет-трансформер ExpertBook B3, головною особливістю якого є ARM-процесор Qualcomm Snapdragon 7c Gen 2. Завдяки йому виробник, наприклад, обіцяє потенційному покупцю до 21 години автономної роботи, що більш ніж приємно для конкурентів. І, що важливо, планшет легко трансформується в практично повноцінний ноутбук завдяки повнорозмірній клавіатурі, що знімається, і вбудованій підставці на тильній стороні пристрою, яка ще й підтримує два варіанти орієнтації планшета.

Представники компанії ASUS заявили, що бачать цей пристрій у різних сценаріях використання – наприклад, планшет можна використовувати на виробництві, офісах малих підприємств чи навіть в освітній сфері. Вся справа в тому, що пристрій важить всього 590 грам - за такої діагоналі і продуктивності планшет дійсно легкий, хоча в порівнянні з конкурентами жодних рекордів тут немає. Крім того, це перший планшет з Windows на борту та ARM-процесором, який отримав вбудований стілус - у корпусі є спеціальна секція для зберігання, а дисплей, звичайно, підтримує інструмент введення.

Подвійна підставка на тильній стороні гаджета дозволяє встановити пристрій як у вертикальному, так і горизонтальному положенні - у певних сценаріях це дійсно зручно. Та й характеристики у гаджета дуже непогані - гаджет отримав 4 або 8 ГБ оперативної пам'яті та вбудований накопичувач на 128 ГБ (тут варіантів на вибір не надається), а діагональ дисплея досягає 10,5 дюйма при співвідношенні сторін 16:10. Роздільна здатність складає 1920х1200 пікселів, є порт USB 3.2 Gen 1 Type-C і роз'єм для підключення навушників, фронтальна камера на 5 Мп і основна камера на 13 Мп.

Але головною перевагою є повноцінна операційна система Windows 11 Home, що поставляється в режимі S. Більш того, для освітніх установ компанія випускатиме планшети на базі Windows 11 Pro, так що можливостей мобільний пристрій надає більш ніж достатньо.

Інші цікаві новини:

▪ Однокристальна система Qualcomm Snapdragon 855 Plus

▪ Технологія NXP допомагає заощадити до 80% електроенергії

▪ Безпілотний дроїд S1000

▪ Прилад для лікування комариних укусів

▪ Безпілотний космічний корабель-фабрика

Стрічка новин науки та техніки, новинок електроніки

 

Цікаві матеріали Безкоштовної технічної бібліотеки:

▪ розділ сайту Акумулятори, зарядні пристрої. Добірка статей

▪ стаття Все зрозуміти - все пробачити. Крилатий вислів

▪ стаття Який американський президент надовго втратив код для відкриття ядерної валізки? Детальна відповідь

▪ стаття Цибуля ріпчаста. Легенди, вирощування, способи застосування

▪ стаття Проста кольоромузична приставка. Енциклопедія радіоелектроніки та електротехніки

▪ стаття Пристрій обмеження пускового струму електроприладу. Енциклопедія радіоелектроніки та електротехніки

Залишіть свій коментар до цієї статті:

ім'я:


E-mail (не обов'язково):


коментар:




Коментарі до статті:

Петрович2015
Схемка хороша, але викликає сумнів діаметр проводу вторинної обмотки трансформатора при таких потужних транзисторах


All languages ​​of this page

Головна сторінка | Бібліотека | Статті | Карта сайту | Відгуки про сайт

www.diagram.com.ua

www.diagram.com.ua
2000-2024