Шина CAN. Часть 1. Разбираемся как работает CAN bus, разберем кадр данных до "костей".

แชร์
ฝัง
  • เผยแพร่เมื่อ 31 ธ.ค. 2024

ความคิดเห็น • 68

  • @BigMike_123
    @BigMike_123 3 ปีที่แล้ว +14

    Мне, инженеру-электронщику с почти 40 летним стажем, было очень смешно услышать сентенцию про отсутствие переднего и заднего фронта, автор, спасибо, ты сделал мой день)))

    • @ms-33
      @ms-33 3 ปีที่แล้ว

      ну а детальнее? профи посмеялся. мне эта инфа зачем?

    • @486OverDrive
      @486OverDrive 3 ปีที่แล้ว +1

      @@ms-33 а мне зачем инфа о том, что тебе не нужна инфа другого комментатора?

    • @ms-33
      @ms-33 3 ปีที่แล้ว +2

      @@486OverDrive я попросил сказать подробнее. Обратная связь для автора - это очень ценно. Василий, признаюсь, о Вас не думал, когда комментировал.

    • @samon655
      @samon655  3 ปีที่แล้ว +1

      да, я всегда с юмором говорю :)

  • @younadym
    @younadym 4 ปีที่แล้ว +5

    Суперррр! Чётенко, понятненько, без воды. Благодарю!

  • @СергейЗахаров-г6ф
    @СергейЗахаров-г6ф 3 ปีที่แล้ว +1

    Спасибо большое, очень простая и непринуждённая подача материала, данное видно мне очень помогло разобраться в данном вопросе

  • @igorlu
    @igorlu 4 ปีที่แล้ว +3

    Гениальный протокол, спасибо за объяснение на пальцах, все понятно.

    • @samon655
      @samon655  4 ปีที่แล้ว +1

      Спасибо за отзыв! Я рад что помог разобраться )

  • @nurlannurlan6049
    @nurlannurlan6049 5 ปีที่แล้ว +7

    Спасибо.
    Очень интересно!
    Будем ждать новых видео.

    • @samon655
      @samon655  5 ปีที่แล้ว

      Спасибо за отзыв! Я постараюсь рассказать ещё про что-то интересное. ))

  • @viktoryofzsu3922
    @viktoryofzsu3922 4 ปีที่แล้ว +3

    Спасибо большое за столь подробный урок. Хотелось бы ещё. Удачи вам!

    • @samon655
      @samon655  4 ปีที่แล้ว +3

      Спасибо за теплые слова! Я рад что это было полезно. Да, у меня запланированы обучающие видео, но не могу добраться до монтажа. Следите за каналом!

    • @viktoryofzsu3922
      @viktoryofzsu3922 4 ปีที่แล้ว

      @@samon655 уже подписался!!!

  • @rewalex
    @rewalex 2 ปีที่แล้ว +1

    Информация прекрасно подана! Очень интересно,

  • @蒙雅
    @蒙雅 4 ปีที่แล้ว +7

    спасибо, ждём продолжения

  • @Adnreus74
    @Adnreus74 4 ปีที่แล้ว +3

    153 подписчика у такого канала, у такого, не побоюсь этого слова, преподавателя - это не дело. Давайте, парни, доведем эту цифру хотя бы до 10 000, чтоб мотивация у человека появилась.

    • @samon655
      @samon655  4 ปีที่แล้ว

      Ого ) спасибо за такую высокую оценку. Я крайне рад что был полезен!

  • @ВладиславАндреев-о7о
    @ВладиславАндреев-о7о 4 ปีที่แล้ว +2

    Привет, спасибо за видосик, познавательно, жду вторую часть :))))

    • @samon655
      @samon655  4 ปีที่แล้ว +1

      Спасибо за отзыв ) приятно знать что не просто так это сделал )

  • @sava789
    @sava789 4 ปีที่แล้ว +2

    Сергей, спасибо за познаватеное видео. Хотелось бы узнать как обозначается кан линия на схеме авто (витая пара).

  • @zahartm3577
    @zahartm3577 5 ปีที่แล้ว +1

    Ждём продолжения!

    • @samon655
      @samon655  5 ปีที่แล้ว +2

      Рад слышать! Работаю над этим )

  • @Mulinby
    @Mulinby 4 ปีที่แล้ว +4

    Если кто то использует термины передний и задний, фронт, это совершено не говорит о его бещграмотности. Это дело привычки и не более того. Подавляющее большинство инженеров использует эти термины, точно так же как и в технической литературе. Но за видео спасибо

    • @samon655
      @samon655  4 ปีที่แล้ว +1

      Спасибо за обратную связь!

  • @АлексейКравцов-о9ъ
    @АлексейКравцов-о9ъ 4 ปีที่แล้ว

    С передачей данных все понятно но как быть или как понять если блоки одинаковые и если их поменяли местами то выходит ошибка сан шины. Или его стерли тоже самое как опять настроить блок.

  • @sebasnianpereirok9527
    @sebasnianpereirok9527 4 ปีที่แล้ว +4

    Ничего не понял,но оч интересно.

  • @ЮрийПлесовских-з9г
    @ЮрийПлесовских-з9г 3 ปีที่แล้ว +1

    Очень познавательно!

  • @ambako
    @ambako ปีที่แล้ว

    otlichni material, nakonecto ponial kak proisxodit arbitraj v can shine :)

  • @TruVi-13
    @TruVi-13 4 ปีที่แล้ว +2

    А что будет если кто-то захочет передать данные когда уже идёт передача в линии, получается арбитраж уже пройден..... Т.е. как работает арбитраж когда все одновременно начинают передавать понятно, но ведь в жизни более вероятен случай когда вначале один начинает передавать, потом второй и т.д.

    • @samon655
      @samon655  4 ปีที่แล้ว +1

      Привет! Будет сгенерирован кадр ошибки с флагом, который описывает саму ошибку. В любом случае, кадр ошибки имеет специфический формат и заткнет все узлы на линии. После чего, в общем случае, процессы в лини нормализуются и все начнется опять с арбитража.

    • @TruVi-13
      @TruVi-13 4 ปีที่แล้ว

      @@samon655 Спасибо. Но всё равно не могу понять: захотел я передать данные, сформировал сообщение, переслал его в подсистему CAN. Если тут же это сообщение будет выдано в линию, то есть вероятность, что могу попасть в середину уже другого передающегося пакета. Получается в линии будут постоянно возникать кадры ошибок?

    • @samon655
      @samon655  4 ปีที่แล้ว +6

      Нет, немного не так. В общем случае, каждая нода мониторит сеть. Если в сети идёт обмен данными, при этом ещё узел, который захватил сеть не передал EOF, все остальные молчат, даже если им надо передать данные. Как только сеть освобождается, то нода, которой надо было что-то передать начинает выдавать кадр... да и все ноды, которым надо было передать данные начинают передачу после того, когда линия осовободится. Они борются за захват линии, побеждат тот который имеет более близкий к нулю ID. Конечно может быть такая ситуация что более приоритетный узел передает чаще и больше, чем низкоприоритетный и, теоретически, узел с более низким приоритетом никогда не победит в арбитраже, но это уже задача программиста системы примерить так протокол что бы не было таких вот коллизий.

    • @TruVi-13
      @TruVi-13 4 ปีที่แล้ว +2

      Ещё раз спасибо большое. Много источников перечитал, пересмотрел. На этот вопрос так ответа и не нашёл. Теперь стало понятно.

  • @dimalobov1326
    @dimalobov1326 6 หลายเดือนก่อน

    спасибо!1 дата фрейм передаут данные а остальные фреймы зачем нужны? спасибо!!

    • @dambilibombas
      @dambilibombas 3 หลายเดือนก่อน

      А можна 2.0В

  • @Numsarmik
    @Numsarmik 3 ปีที่แล้ว

    Я пытаюсь сделать самодельную систему индикации параметров двигателя где источник данных - КАН шина.
    Я ни разу не электронщик.
    Насмотрелся в ютубе и собрал схему: Модуль каншины, ардуино, ноутбук. Данные получил.
    Что делать дальше не могу найти информацию.
    Можете проконсультировать?

    • @486OverDrive
      @486OverDrive 3 ปีที่แล้ว +1

      Ищите информацию конкретно по вашей машине. Каждый производитель использует КАН-шину как считает нужным, причём, может от машины к машине менять свой собственный стандарт. В поле "Arbitration field" содержится уникальный идентификатор каждого сообщения (либо устройства) на шине. Если на ваш автомобиль совсем нет никакой информации, то выход только один: собирать все данные с шины и анализировать их. Посчитайте как часто каждый "Arbitration field" (далее будем называть его просто "ID") встречается. Определённый ID говорит о том, что в данном фрейме содержится температура ОЖ, другой - обороты двигателя, третий - напряжение бортовой сети, и т.д. Эти "сообщения" (фреймы) появляются на шине с определённой периодичностью или по запросу от других устройств. Например, блок климата может что то запросить у ЭБУ, тот ему ответит, а так же, ЭБУ может тоже что то запросить у блока климата. Некоторые ID будут появляться на шине только на заведенном моторе. Пробуйте включать разные функции (фары, омыватель, заднюю передачу и т.д.) и смотрирте какие новые ID стали появляться на шине. Таким образом, сможете сопоставить ID с событиями. Если есть БК или другой способ диагностики, посмотрите какая температура мотора, обороты и пробуйте сопоставить с тем, что ловите на CAN-шине. Процесс долгий, требует много терпения. Для диагностики мотора проще, всё-же использовать готовое решение. Либо найти готовую программу диагностики и найти в ней зашитую таблицу соответствия под ваш автомобиль. В простейшем случае в папке программы может отдельный файл под каждого производителя, может быть SQLite база и т.д. Ковырять самому есть смысл, если вы хотите не просто читать сообщения, но и как то воздействовать на другие устройства. Например, менять громкость или транслировть какие-то надписи на штатный экран магнитоллы (есть в ютубе доклад, человека, который такое делал).

  • @Andriuhaa
    @Andriuhaa ปีที่แล้ว

    Продолжение будет?

  • @dmitryzdor9116
    @dmitryzdor9116 4 ปีที่แล้ว +1

    Крассавчик) очень интересно) жду продолжения) с автомобильной шиной не работал?

    • @samon655
      @samon655  4 ปีที่แล้ว

      Спасибо за отзыв! Нет, я не работал. Я разработчик электроники, в которой используется шина CAN. Тут я рассматриваю базовые принципы работы шины, не привязываясь к протоколу верхнего уровня.

  • @dankeschone874
    @dankeschone874 4 ปีที่แล้ว +1

    Спасибо за видео.
    Подскажите,что за книга?

    • @samon655
      @samon655  4 ปีที่แล้ว +3

      Добрый день! Книга Controller Area Network by Konrad Etschberger.

    • @dankeschone874
      @dankeschone874 4 ปีที่แล้ว +1

      SamON Добрый! Благодарю за информацию.Все очень доступно и понятно.

  • @endprg6477
    @endprg6477 4 ปีที่แล้ว

    На каком этапе задаются и ID и каким образом?

    • @samon655
      @samon655  4 ปีที่แล้ว

      Привет. ID зашиы в прошивку микроконтроллера. На этапе конфига устройства ID заносится в спец.регистр и хранится там. С динамической сменой ID я не сталкивался.

  • @azamatazamat9216
    @azamatazamat9216 4 ปีที่แล้ว

    Сергей! Спасибо за видео! А как со второй частью? Когда выйдет?

    • @samon655
      @samon655  4 ปีที่แล้ว +2

      Привет! Пока сложно сказать. Я далеко от компа, на котором я делаю видео да и много работы на работе. В любом случае, у меня есть планы по второй части CAN. При этом этот канал больше про программирование контролёров, FPGA, самоделки электронные. По этому следующее видео будет из этой области. Но пока руки не доходят. Канал у меня - это хобби, чтобы отвлечься от других задач ))

    • @azamatazamat9216
      @azamatazamat9216 4 ปีที่แล้ว +2

      @@samon655 Сергей, но первая видео-лекция получилась очень неплохо. Логично было бы продолжить. Количество просмотров об этом говорит. Не у всех болтунов-политологов столько за год набирается, как у вас за 3 месяца. Желаю здоровья и вдохновения!

  • @DarkLord-bmw
    @DarkLord-bmw 2 ปีที่แล้ว

    Здравствуйте Добрый вечер Я жду от вас 2 часть этого видео уже долго

  • @АлимжанКенжебаев-л4ы
    @АлимжанКенжебаев-л4ы 2 ปีที่แล้ว

    Спасибо.

  • @Vol.8Return
    @Vol.8Return 4 ปีที่แล้ว +1

    Спасибо

  • @СержПопов-с8ч
    @СержПопов-с8ч 2 ปีที่แล้ว

    Было страшно в начале... А потом стало просветляться. Чуть чуть

  • @sergeygold9000
    @sergeygold9000 4 ปีที่แล้ว

    А ведь по поводу понятий фронт и срез... Действительно, верно сказано! Спасибо!

    • @АндрейАндрей-г1ш9з
      @АндрейАндрей-г1ш9з 3 ปีที่แล้ว +1

      смотря с какой стороны смотреть на импульс сигнала сзади или спереди. А слово фронт просто прилипло . Это просто обрусевший английский. И парень просто придирается к словосочитанию

  • @ТутИТам-ю2п
    @ТутИТам-ю2п 4 ปีที่แล้ว

    Братишка где вторая часть

  • @spechulfapticks3108
    @spechulfapticks3108 4 ปีที่แล้ว +1

    теперь понятно, почему арбитраж выигрывает тот, у кого id меньше

  • @vmarin5929
    @vmarin5929 ปีที่แล้ว

    Семен спасибо. Краткость сестра таланта...

  • @волкодиночка-ж7м
    @волкодиночка-ж7м 10 หลายเดือนก่อน

    Что это понять надо минимум пол года походить как школьнику на занятия. Что значит ушло в землю))

  • @mindread3r
    @mindread3r 4 ปีที่แล้ว

    TCP/IP в автомобильном варианте)

  • @ewgenilukashin6868
    @ewgenilukashin6868 ปีที่แล้ว +1

    Жалко что началось и закончилось все 1 частью... А тема становиться зло и насущной .... Тема касается ремонта автомобилей. У людей в крови улучшательство , даже иногда не понимая действий и последствий даже на уровне "специалистов" ( поубивал бы таких спецов) , когда в исправный автомобиль у которого система живет здоровой жизнью начинают пихать вредные улучшалки. Различные сигналки на кан шину, китайские нештатные мультимедиа девайсы . Тахографы , глонасы и прочее прочее, которое гадит в кан шину по различным причинам , сбивая работу отлаженной штатной системы. И тут наступает трудоёмкий процесс выяснения причин и проблем. Если раньше таких испорченных автомобилей было единицы и можно было потратить время на лечение редкой неисправности по выявлению виновника бардака , то сейчас это нарастает в какой то глобальный кризис . Автомобили сложнеют и еще нарастает количество кривых девайсов которые народ пихает в свое исправное авто. По этой причине пытаюсь создать устройство которое просто бы мониторило шину и помогало вычислить индификатор хама в шине который сносит по разной причине штатную и правильную связь жизненно важных блоков автомобиля. Я не программист такого уровня чтоб самостоятельно понимать как и что. Собираю все по крупицам и ваше виде зашло и так досадно закончилось . Вы дали доступно нужную информацию , но увы осталось применительно к моим задачам многое недосказанным. Мне не нужно ломать протоколы и пр. Нужен просто помощник который бы за меня сидел слушал шину и подсказал примерное направление в ремонте. Я уже умалчиваю к примеру ситуацию неисправности штаного оборудования - к примеру устройство перестало слышать линию.
    К чему столько букв - вы затронули актуальную тему , но увы хотелось бы продолжения вашего опыта который был бы любом варианте полезен.

    • @hidekimotosuwa7106
      @hidekimotosuwa7106 ปีที่แล้ว

      Здравствуйте я тоже сталкиваюсь с такими проблемами и сейчас нахожусь в выборе анализатора или осцилографа с функцией декодирования сигнала (скажите пожалуйста каким прибором вы пользуетесь ? так как миксиг дорогущий - овн дешевле но не слишком много инфы а хантек не однозначен хоть и дешовый .

  • @Northern_Pepper
    @Northern_Pepper 3 ปีที่แล้ว

    3:00 тебя взломали ! Валим отсюда ))

  • @Асан909
    @Асан909 4 ปีที่แล้ว +1

    че то ты много лишнего болтаешь, мозги путаются

    • @samon655
      @samon655  4 ปีที่แล้ว

      Спасибо за отзыв. Если есть вопросы, можете их озвучить тут. Постараюсь ответить.

  • @ДарьяИванова-ю9э
    @ДарьяИванова-ю9э 4 ปีที่แล้ว +1

    НУДНО!

    • @samon655
      @samon655  4 ปีที่แล้ว

      Спасибо за отзыв! ))

  • @СергейЗахаров-г6ф
    @СергейЗахаров-г6ф 3 ปีที่แล้ว +1

    Спасибо большое, очень простая и непринуждённая подача материала, данное видно мне очень помогло разобраться в данном вопросе