Датчики давления в шинах как работают ниссан
Поэтому, каждый водитель должен разбираться в датчиках давления. Рассмотрим датчики шин для машины Ниссан. В частности для моделей Мурано, Кашкай и Патрол.
Бывает две разновидности датчиков: внешние и внутренние. Давление измеряют именно внутренние приборы.
Датчики для шин на Ниссан Мурано
Датчик давления в шинах Ниссан Мурано, как и для любой другой модели, нужно приобретать в проверенных магазинах. Приборы должны быть качественными, протестированными и иметь соответствующий сертификат. Допускается устанавливать универсальные датчики, например, Autel. Либо родные (заводские), предназначенные для конкретной модели техники.
Универсальные отлично контролируют температуру и давление в шинах. В конструкцию устройства включен электронный элемент, который измеряет и управляет давлением. А также, предусмотрен аккумулятор и передающая антенна.
Датчики монтируются в каждое колесо и заменяют штатные вентили. Сигналы от приборов передаются при помощи импульсов. Для этого предусмотрена определенная периодичность.
В универсальных элементах ниппели легко регулируются и отделяются от основной конструкции. Это упрощает процесс монтирования на литых колесных дисках. В результате экономится время для обслуживания. Ведь в периоды сезонных обострений в сервисах образовываются очереди.
Из универсальных датчиков давления, подходящих для Ниссан, можно отметить следующие:
- TPMS Autel 433 МГц. Универсальный прибор позволяет программировать его. Выпускается серебристого цвета. Стоимость до 2 500 рублей. Бывают экземпляры и обрезиненные, быстро фиксируемые;
Колесный датчик TPMS Autel 433 МГц.
- TPMS Autel 315 МГц. По характеристикам аналогичен предыдущему. Тоже изготавливается в двух вариациях. Стоимость 2 500 рублей.
Колесный датчик TPMS Autel 315 МГц
Датчики для шин на модель Кашкай
Датчик давления в шинах Ниссан Кашкай тоже может быть универсальным или родным. Изготовители предлагают следующие приборы для Кашкай:
- 40700-3VU0A. Вариант с частотой 433 МГц. Изготавливается в Англии. С металлическим типом ниппеля. Передает данные радиосигналом. При грамотной установке прослужит более семи лет, не требуя замены. Важно понимать, что существуют конкретные случаи, при которых эксплуатационные сроки изменяются. Не стоит надеяться на определенные обещания производителей. Здесь многое зависит от длительности и частоты поездок, условий использования и т. д. Комплект под номером 40700 продается вместе с ниппелем. Искать отдельно его не придется;
- 40700-3VU0A. Аналогичен первому. Даже номер и характеристика совпадают;
Датчики для моделей Патрол
Датчик давления в шинах Ниссан Патрол представлены изготовителями в следующих вариациях:
- Q70 40700-1LL0C;
- M 40700-1LL0C;
- 40700-1LLC;
- QX80 40700-1LL0C.
Датчик давления воздуха шин
Их стоимость в пределах 3 000 рублей. Функционируют с частотами 433 МГц. Изготавливаются в Германии. Наделены металлическими типами ниппелей. Все варианты отлично контролируют давление и передают данные без перебоев. Служить могут более семи лет. Привязываются приборы автоматически, в процессе езды. Не придется делать этого самостоятельно.
Датчик давления в шинах Ниссан Теана также подбирается индивидуально. К этой модели подходят как универсальные приборы, измеряющие давление, так и заводские. Выбор датчика во много зависит от модели и даже года производства машины. Например, для Мурано 2017 года не подойдут варианты, предназначенные для моделей старше.
Все датчики оснащены соответствующими номерами. Это упрощает подбор конструкции. Стоит назвать продавцу марку и модель авто, он без труда подберет нужный комплект.
Давление в колесе может упасть в самый неподходящий момент. Если такое случится в пути, водителю придется остановиться, чтобы подкачать покрышку. Если под рукой не окажется насоса, автомобилист рискует опоздать к месту назначения. Еще одна сложность состоит в том, что проблема не всегда обнаруживается сразу. Водитель чувствует неладное только после того, как колесо почти полностью спустит. В результате резина может прийти в негодность. Чтобы избежать подобных неприятностей, некоторые автовладельцы устанавливают датчики давления в шинах. Помогают ли подобные аксессуары, и стоит ли их покупать?
Суть изобретения
Электронную систему контроля за давлением в покрышках (Tire Pressure Monitoring System или TRMS) начали разрабатывать в США в середине 90-х годов. Толчком к этому послужило исследование автоэкспертов, которые изучали влияние неисправных шин на безопасность езды. Стало понятно, что большинству водителей попросту лень то и дело измерять давление в колесах. Итогом такой легкомысленности стал постоянный рост числа аварий.
В настоящее время все автомобили американского производства комплектуются системой TRMS. Датчики являются обязательным элементом комплектации. В России эти устройства пока устанавливаются по желанию.
Помимо TRMS существует еще несколько видов устройств. Механические датчики устанавливают на место штатных колпачков. Их достаточно просто вкрутить, чтобы они начали работать. Никаких дополнительных настроек таким приспособлениям не требуется.
В каждом механическом датчике есть поршень, который сообщает водителю о состоянии покрышек. При нормальном давлении (не менее 2 бар) виден зеленый индикатор. Если значение показателя падает, поршень смещается, и автомобилист видит желтый цвет. При критическом падении давления (до 1,2 бар и ниже) появляется красный индикатор.
С внешними электронными датчиками дело обстоит сложнее. Они имеют блок управления, который потребуется присоединить к прикуривателю. После полной зарядки он способен несколько часов работать в автономном режиме. Сначала систему переводят в обучающий режим. После запуска программы каждый датчик должен отобразиться на дисплее. Рекомендуется соблюдать определенный порядок установки: начинают с левого переднего колеса и двигаются по часовой стрелке.
Для монтажа внутренних датчиков потребуется специальный станок, поэтому такая процедура возможна только на профессиональной СТО. После установки накачивают колеса и проверяют каждое устройство. В комплекте к системе обычно идет не только блок с дисплеем, но и пульт дистанционного управления. К датчикам прилагаются стикеры, которые приклеиваются на диски (для информирования работников шиномонтажа).
Стоит ли устанавливать датчики давления в шинах?
Система TRMS имеет свои недостатки. Например, владелец автомобиля, на котором она установлена, не сможет самостоятельно «переобуть» машину. Чтобы поменять резину, ему придется посетить автосервис.
Просто приобрести второй комплект датчиков для покрышек нельзя. Машина способна «запомнить» только один набор приспособлений. По этой же причине не получится поставить переднее колесо назад или поменять местами левую и правую шины. После замены резины в любом случае потребуется вновь перепрограммировать датчики.
Некоторые умельцы умудряются «клонировать» устройства. Одни и те же программные данные прописываются одновременно для двух датчиков. После этого их устанавливают сразу и на летнюю, и на зимнюю резину. Следует отметить, что такой «обман» возможен не со всеми устройствами. Разобраться в этом способен только профессионал.
Несмотря на сложности в использовании датчики контроля давления в шинах – полезное изобретение. Если пятно контакта покрышки с дорогой оптимально, то и безопасность водителя будет находиться на высоком уровне.
Проколотая покрышка — это всегда очень неприятно. Но лучше узнать о спускаещем колесе заранее — в этом и помогут датчики давления в шинах.
Первый патент на шину был получен в 1846 году, и с тех пор колёса постоянно прокалываются. Любому ясно, что спустившая покрышка не сулит ничего хорошего. Да и упавшее давление может быть весьма опасно: недаром в разделе «Ежедневное обслуживание» инструкции по эксплуатации автомобиля пункт «Проверка давления в шинах» стоит одним из первых.
Когда шина «испускает дух», сопротивление качению значительно увеличивается. К чему это ведёт? К повышению расхода топлива, повышенному износу шин и, конечно же, к боковому уводу автомобиля. Причём небольшой такой увод в сторону можно списать на уклон дороги или колею. Так что водитель, по ошибке или неопытности, может продолжать движение довольно долго. И самое опасное в этом то, что при экстренной ситуации, например, при резком манёвре или торможении подспущенная покрышка может сорваться с диска или провернуться. А здесь и до аварии недалеко.
Стало быть, с этим безобразием нужно бороться всеми силами. И чем раньше водитель заметит потерю давления, тем лучше. Конечно, самый простой способ — перед поездкой проверить давление, поочерёдно присоединив к каждому колесу насос или манометр. Но мы с вами народ ленивый и забывчивый. Да и удовольствие ковыряться на морозе или в дождь с приборами невелико. Тем более что есть уже целый ворох систем, умеющих проверять это самое давление.
Самая простая из них — это специальные колпачки с цветовыми индикаторами, которые устанавливаются вместо штатных на вентили подкачки. Упало давление ниже, допустим, двух атмосфер — под прозрачной крышечкой такого появится предупреждающая жёлтая (оранжевая, фиолетовая) полоска. Ага, понятно, с колесом неладное, надо проверить. Опустилось давление ещё ниже — колпачок «окрасится» в другой, как правило, красный цвет, который будет говорить о критичности происходящего. Достоинство такого подхода — простота. Минус — недостаточно хорошая информативность. Ведь колпачки можно увидеть только во время остановки. И всё равно, обойти перед поездкой автомобиль, посмотрев на цвета колпачков, намного проще, чем мерить каждый раз давление.
Ещё один недостаток — колпачки начинают информировать об изменении давления только тогда, когда оно падает ниже определённых значений, которые, кстати, для вашего автомобиля и ваших колёс могут быть вполне нормальными. Значит, подбирать их надо именно под вашу машину.
А для того чтобы заметить неладное во время движения, неплохо бы иметь на борту электронную систему, которая автоматически оповещала бы об опасных падениях давления. И не просто оповещала, а делала бы это вовремя (чтобы было время сориентироваться) и без ложных срабатываний.
Установленная система контроля в таком случае в нужный момент предупредит водителя об изменении соответствующего параметра и даст ему достаточно времени для безопасной остановки автомобиля. Понятно, в случаях серьёзного прокола или взрыва покрышки такие системы не помогут, поскольку водитель и без всяких датчиков почувствует увод автомобиля. А вот при «медленном» проколе подобная электроника просто незаменима.
Есть, например, системы, которые передают данные о давлении и температуре в шинах на центральный блок при помощи радиосвязи. А есть и такие, которые могут передавать эти данные по на телефоны или коммуникаторы. А что, очень удобно.
Но есть и более хитрые системы, которые работают без «настоящих» датчиков давления, а через ABS. Именно они обычно и ставятся в серийной комплектации автомобилей. Как они работают?
Электроника при помощи датчиков в каждый момент времени определяет частоты вращения колёс и их относительную разницу. Как известно, при падении давления высота профиля шины становится ниже. Следовательно, скорость вращения колеса с «больной» шиной увеличивается, следовательно, увеличивается и разность частот вращения колёс на одной оси. В результате система фиксирует эти изменения — и даёт тревожный сигнал.
Чем плох такой косвенный способ определения давления в шинах? Такие системы могут срабатывать, например, в затяжных поворотах, когда на протяжении относительно долгого времени система фиксирует большую разницу частот вращения колёс разных бортов (ведь внешние колёса крутятся с большей скоростью, нежели внутренние). И это ещё цветочки.
В некоторых случаях такие системы бесполезны вовсе. Например, когда на автомобиле устанавливаются покрышки с технологией Run-Flat. Напомним, у шин с такой технологией даже при полной потере давления высота профиля уменьшается незначительно — примерно на %. Давления в шине нет, а усиленные боковины продолжают «держать», и не просто держать, а позволяют продолжать движение с очень даже приличной скоростью, на протяжении достаточно длительного времени.
И всё же эта система может очень сильно помочь, особенно в дальней дороге, своевременно предупредив о том, что с колёсами проблемы. Но полагаться на «помощников» полностью не стоит. Поэтому вместо вывода напишем всего два, нет, — три слова. Следите за давлением, товарищи! Хотя бы в неделю раз, а уж если заметили, что колесо подспущено, не ленитесь, подкачайте.
Система контроля давления в шинах автомобилей Nissan
В обслуживании систем TPMS Nissan есть одна небольшая хитрость, это … покупка правильного оборудования. Оборудование для работы с системой TPMS, которое подключается через разъем OBD II должно быть совместимо с датчиками TPMS Nissan и способно перепрограммировать систему при ремонте и сервисе.
Диагностика TPMS
В большинстве случаев жалобы клиентов возникают по причине падения давления. Если в ваш автосервис приехал Ниссан с горящим индикатором системы TPMS, это в большинстве случаев означает, что система работает нормально, просто в одном из колес пониженное давление. Сначала нужно накачать колеса до давления по спецификации и проехать на скорости около 25 км/ч в течение трех минут, контрольная лампа должна погаснуть. Если система работает некорректно, контрольная лампа будет моргать в течение минуты, затем будет гореть непрерывно. Характер вспышек может свидетельствовать о том, что один из датчиков, или несколько, не активированы (не прописан ID код в модуле системы).
Тем не менее, это не свидетельствует о низком напряжении в колесном датчике, потере сигнала или другой неисправности. Возвращение данных системы в исходное состояние и восстановление работы потребует специального оборудования, которое работает с блоком управления систем кузова (Body Control Module (BCM). Есть возможность считывать коды, записывая вспышки контрольной лампы.
Работа колесных датчиков
В большинстве TPMS Nissan используется один приемник, который принимает сигналы от четырех колесных датчиков (или пяти, если он установлен на запасном колесе). Датчик передает персональный ID сигнал и информацию о давлении согласно предписанных интервалов времени или в случае падения давления в шине. Датчики имеют встроенные акселерометры, передающие сигналы во время движения.
Приемник системы идентифицирует положение каждого из датчиков согласно передаваемым ID сигналам датчиков. Датчик может также передавать информацию о заряде батареи, если напряжение упало ниже нормы.
Nissan использует датчики TPMS от компаний Continental, Schrader и Pacific. Датчики и комплекты для ремонта датчиков не взаимозаменяемы между собой. Завод заменил модели датчиков на некоторых автомобилях после наводнения в Тайланде в 2010 году когда там были затоплены фабрики поставщиков.
«Корпоративное обучение» датчиков
В отличие от многих других систем, в которых процедура прописки датчиков выполняется простым нажатием нескольких кнопок на сканере, большинство TPMS Ниссан требует применения специального/заводского оборудования или оборудования специализированного на работе с исключительно системами TPMS. Оборудование должно быть способно через разъем OBD II соединяться с блоком управления системами кузова и входить в режим обучения или принимать ID сигналы датчиков.
Этот метод иногда называется «корпоративным методом» обучения системы TPMS, так как процесс может быть выполнен только с помощью оригинального оборудования Ниссан.
Но, тем не менее, на рынке есть диагностическое оборудование других производителей способное выполнить функции «обучения» систем TPMS Ниссан.
Метод с использованием оборудования Ниссан заключается в переводе блока управления системами кузова в режим обучения при помощи диагностического сканера и активировании датчиков с помощью оборудования для активации. Оборудование для активации посылает низкочастотный сигнал к антеннам датчиков. Этот сигнал инициирует передачу информации от датчиков к приемнику.
На некотором оборудовании возможно запустить датчики на передачу сигнала, создав низкочастотный управляющий сигнал и записать полученную информацию в сканер. Затем информация может быть прописана в модуле TPMS через разъем OBD II.
Сначала создайте в шинах следующее давление:
Альтернативная диагностика
Приемник системы обычно расположен под панелью приборов. В зависимости от модели, система NPSM может использовать антенну системы бесключевого доступа в автомобиль.
Модуль управления системами кузова обменивается сигналами с инструментальной панелью через CAN шину, подавая сигнал падения давления или передает показания давления в шинах.
В ряде случаев база данных Autodata Online поможет вам в проведении работ с TPMS Ниссан. Использование диагностического инструмента не исключает использование базы данных по ремон
Система дистанционного контроля давления воздуха в шинах автомобиля (англ. аббревиатура TPMS — Tyre Pressure Monitoring System) предназначена для оперативного информирования пользователя о снижении давления в шинах и о критической температуре шин.
Датчики имеют внутреннее или внешнее исполнение. Внутренние устанавливаются внутрь покрышки бескамерного колеса, внешние навинчиваются на штуцер колеса. Колесо с внутренним датчиком на внешний вид совершенно идентично колесу без датчика. Такое колесо просто накачивать. Внешний датчик заметен, его можно украсть и при накачивании колеса его надо предварительно открутить. Также он подвергается влиянию атмосферных явлений.
Исследовать протокол работы системы TPMS меня побудила идея установить такую систему на детскую коляску для оперативного слежения за давлением в шинах.
Рис.1. Внешний вид системы TPMS
Рис.2. Плата контроллера системы TPMS
Просто так установить штатный приемный блок не было возможности, так как минимальное допустимое значение давления у него 1.1 Bar, а в детской коляске меньше. Поэтому модуль постоянно пищит, информируя о низком давлении в шинах. Почитать про разработку контроллера для «Умной» детской коляски «Максимка», в которой как раз и применены результаты исследования, можно в моей статье [1].
Сбор информации о работе TPMS начал с поиска статей в Интернет. Но, к сожалению, информации мало. Да и она касается обычно штатных систем автомобилей, которые немного сложнее и много дороже. А мне надо было информацию о простой китайской дешевой системе. Какое-то минимальное понимание у меня сложилось, теперь надо было приступить к экспериментам.
Итак, вооружаемся USB-свистком DVB-тюнера, запускаем RTL-SDR и смотрим эфир. Датчики работают на частоте 433.92 МГц в модуляции FSK. Изначально я записывал эфир и потом вручную разбирал протокол. Тут начались сложности. Ранее сталкивался только с OOK-модуляцией. Там все просто. Здесь немного сложнее. Информация кодируется двумя частотами. Поэтому изучал примеры, теорию по модуляциям. Потом увидел как применяют программу URH-Universal Radio Hacker [2, 3]. Пробовал поставить, но на мою WinXP 32bit она не идет. Пришлось искать компьютер с win8 64bit и тогда программа установилась. Подробнее о ее работе можно почитать на сайте разработчика. URH-мне в чем-то облегчила процесс, т.к. она производит захват сигнала с эфира, отображает его осциллограммой и сразу декодирует в сырой цифровой вид как в двоичном, так и в hex-виде.
Рис.3. Screenshot программы с захваченным кадром посылки TPMS
Датчик шлет несколько посылок друг за другом за один сеанс. Период между сеансами может достигать минуты или даже более. Если случается тревожная ситуация, то датчик немедленно начинает слать пакеты данных. Звуковой файл посылки от датчика [8]. Пример одной посылки от датчика взятый из программы URH:
В шестнадцатиричном виде эта посылка примет вид:
Видно было что все 4 посылки за одну сессию имели одни и те же данные, а значит пакет принялся верно и можно приступать к его анализу.
На примере выше видно преамбулу (последовательность 01010101….), потом идут данные. Почитав Интернет, понимаем, что перед нами посылка, закодированная кодировкой Манчестер (G. E. Thomas). Каждый бит кодируется двумя битами 01 или 10. Я изначально кодировал вручную, тем самым, закрепляя теорию кодирования/декодирования. Но потом решил обратиться к онлайн декодировщику [4,5,6] что очень ускорило процесс.
Итак, декодировав исходную посылку от датчика кодом Манчестер, получим
Первые 136 нулей это преамбула, ее можно отбросить. Нас интересуют только данные.
Переведя их в шестнадцатиричный вид, получим: 0x15B937740C03971304AE
Это уже есть красивые исходные данные, в которых где-то кроется идентификатор, давление в шинах и температура.
Для дальнейшего исследования необходимо набрать статистику данных. Для этого я накрутил один датчик к колесу и захватывал эфир, параллельно записывая что показывает оригинальное табло системы. Спускал давление, накачивал, клал колесо в морозилку для отрицательной температуры, нагревал. Потом добивался тех же условий для другого датчика, чтобы выяснить байты температуры и давления.
Вся посылка занимает 10 байт. Если выстроить полученные декодированные данные в столбец, то видно постоянные данные и изменяющиеся.
На датчиках на корпусе имеется наклейки. На каждом датчике разные: 0A, 1B, 2C, 3D.
Стереотипность мышления тут сыграло не на пользу. Я подумал что это и есть ID-датчика.
Засомневался, почему ID занимает всего 1 байт, но потом забыл про это и пытался в потоке искать эти идентификаторы. Потом в меню оригинального приемника системы увидел что к этому приемнику можно привязывать другие датчики, а сам приемник показывает идентификатор датчика на каждом колесе. И, о чудо, обнаружил что датчик четвертого колеса имеет
Значит 3-й и 4-й байты посылки это идентификатор колеса. Сравнил с другими датчиками и также идентификаторы совпали с теми что отображает штатная панель.
1-й байт я посчитал за префикс начала данных, а 2-й байт как идентификатор подсистемы TPMS.
Ниже привел для сравнения посылки от разных датчиков.
15B9F3FA2300BE1B007B Датчик 0A > 15B91AA43201B71B002A Датчик 1B > 15B9ABFF32027B1B029B Датчик 2C > 15B937740C03971304AE Датчик 3D >
И понял что надписи на датчиках (0A, 1B, 2C, 3D) это всего лишь нумерация колес в цифровом виде и в буквенном, а не шестнадцатиричный идентификатор колеса. Но, тем не менее, 6-й байт в посылке очень сходится с порядковым номером датчика. Для себя сделал вывод что это идентификатор колеса. А значит, еще один байт декодирован.
Последний байт, скорее всего, контрольная сумма, которую пока не знаю как считать. Это для меня оставалось загадкой до последнего.
Следующий декодированный байт это температура колеса. Тут повезло. Температура занимает 1 байт и представлена в целых градусах. Отрицательная температура в дополнительном коде. Значит в байт уместится температура -127…128 градусов Цельсия.
В нашей посылке температура это 8-й байт
15B9F3FA2300BE1B007B 0x1B соответствует +27 градусам
15B937740C03A1FC00A4 0xFC соответствует -4 градусам
Осталось три нераспознанных байта 5-й, 7-й, 9-й. Судя по динамике изменения давление в шинах скрывается в 7 байта, а в 9-ом байте, скорее всего, статусные биты датчика. По разным источникам информации в Интернет, а также по функционалу моей системы TPMS там должен быть бит разряженной батареи, бит быстрой потери давления и еще пару бит, которые не ясно для чего.
Итак, будем анализировать 7-й байт, т.к. подразумеваем, что давление прячется в нем.
Набрав статистику по разным датчикам с разным давлением, я не смог четко определить формулу, пересчитывающую давление. Да и не ясно в каких единицах по умолчанию датчик передает давление (Bar, PSI). В итоге таблица, построенная в Excel, не давала точное соответствие со штатным табло TPMS. Можно было бы пренебречь этой разницей в 0.1 Bar, но хотелось понятия протокола до последнего бита. Азарт брал верх.
Если не получается понять как формируется байт давления, то надо сделать эмулятор датчика давления и, меняя значение давления, смотреть что отображает штатная панель.
Оставалось выяснить назначение 5-го и 9-го байтов пакета, но они редко меняются, поэтому можно принять их значения как в оригинальном пакете, меняя только байт давления. Теперь вопрос только в расчете контрольной суммы. Без нее штатная панель проигнорирует мой пакет и ничего не покажет.
Для эмуляции датчика надо было передать пакет. Для этого у меня имелся трансивер SI4432 подключенный к PIC16F88, когда-то использовавшийся для других целей.
Рис.4. Фото тестовой платы
Воспользовавшись старыми наработками по передаче данных, я набросал программу для PIC, которая передает один из пакетов, принятых мною программой URH. Спустя некоторое время после включения передатчика панель отобразила данные что передал в нее! Но это готовый пакет с готовой CRC, а чтобы мне менять байт давления, надо и CRC пересчитывать.
Начал читать, искать информацию о том какие CRC используются, пробовал разные Xor, And и прочее, но ничего не получалось. Уже думал, что ничего не получится и придется довольствоваться давлением, которое получил по своей таблице, но немного не сходящееся с оригинальным табло. Но вот на просторах Интернет увидел статью про подбор CRC. Там была программа, которой даешь несколько пакетов, а она пытается подобрать контрольную сумму и, в случае успеха, выдает величину полинома и значение инициализации CRC. [7]
Задаем программе несколько пакетов:
Написал программу расчета CRC с учетом этих данных и прогнал по пакетам, что получил ранее – все сошлось!
Руки чесались передать в эфир данные по давлению. Дополнив тестовую программу расчетом CRC, я передал первый пакет. Штатная панель приняла сигнал и отобразила давление и температуру. Небольшая проблема была в том, что штатная панель имела один разряд после запятой и, передавая значение в эфир, на экране отображалась всегда одно и тоже давление, т.к. остальные разряды были не видимы. Передавал значение байта 0..255. Но снова как-то не ясно. Оказалось, что давление 0.00 Bar начинается когда 7-й байт содержит значение 97. Не ясно почему так. Но зато далее с дискретностью 0,01 Bar все четко.
Байт P Давление, Bar
255 1,58
254 1,57
… …
107 0,10
106 0,09
105 0,08
104 0,07
103 0,06
102 0,05
101 0,04
100 0,03
99 0,02
98 0,01
97 0,00
Судя по таблице, максимальное давление, которое умещается в одном байте всего 1,58 Bar, но система позволяет замерять давление до 4 Атм. Значит где-то еще прячется 1 бит старшего разряда. Перебирать все байты и менять в них биты не было желания. Было найдено колесо от автомобиля, на него накручен датчик, произведен захват сигнала. Любопытство брало верх, я в уме делал ставки на то, в каком месте появится этот бит. И что это будет именно один бит, а не какая-то другая схема кодировки.
Декодировав пакет, я увидел этот бит. Он является 7-м битом 6-го байта. А значит, 6-й байт содержит не только номер колеса, но и старший бит давления в шинах.
15B937740C833C18025C
Старший бит от 0x83 и 0x3C дают 0x13C = 219 что соответствует давлению 2,19 Bar
Формула для пересчета давления в Bar: P=(ADC-97)/100,
Где ADC = (B7>>7)*0x100+B6, где B6 и B7 это значение байта 6 и байта 7.
При значении 511 имеем максимальное давление 4,14 Bar. Также не ясно было почему планка в 4,14 Bar, но догадываюсь что это равно 4 Атм – максимального допустимого давления для датчика.
Осталось понять, за что отвечают статусные биты. Путем стравливания давления, подключения датчика к регулируемому блоку питания и, снижая напряжение, были получены биты. Остались не выясненными 2 бита. Может, есть и еще, но они не разу не принимали значение единицы за все время экспериментов.
Для упрощения анализа была написана программа [8]
Рис.5. Внешний вид интерфейса программы для исследования пакетов TPMS
В программу можно задать сырой пакет из программы URH в шестнадцатиричном виде и программа декодирует пакет, считает контрольную сумму и отображает данные в нормальных единицах температуры и давления.
Как-то полез снова в меню штатной панели и увидел что идентификатор датчика это не два байта, а четыре. Панель имеет большой и маленький индикаторы и я сразу не обратил внимание на то что 2-й и 5-й байты тоже входят в идентификатор датчика.
Тем самым нераспознанным остается только 1-й байт, но он всегда 0x15 (0b010101), а это похоже на некую преамбулу пакета или идентификатора его начала.
Также не распознаны точно биты статуса, но тех, что есть хватает.
Любопытство узнать что внутри датчика брало верх и я разобрал один из них (рис.6)
Рис.6. Датчик системы TPMS
В основе лежит микросхема Infineon SP372 с небольшой обвязкой. Поиск документации именно этой микросхемы ничего не дал. Те, что нашел либо обзорные, либо рекламные. Так что выяснить про протокол не удалось. Но в статьях упоминается про то, что это программируемый контроллер, поэтому программа может быть любой. Поэтому не рискнул купить микросхему отдельно.
Протокол
Теперь о приеме данных от датчика на трансивер SI4432. Изначально планировалось принимать сырые данные от SI4432, чтобы контроллер декодировал Манчестер и собирал байты. Но у данного трансивера есть функция обработки пакета. То есть для передачи можно настроить передатчик на нужную частоту, модуляцию, девиацию, задать длину преамбулу, кодировку, синхрослово, скорость потока, длину данных. Потом записать в буфер передатчика исходный пакет данных (например наш 15B937740C833C18025C) и запустить передачу. Трансивер сам сформирует пакет и выдаст его в эфир, соблюдая все заданные параметры, а контроллер в это время свободен для обработки другой информации.
В идеале хотелось получить от SI4432 пакетную обработку данных при приеме. Чтобы приемник принял пакет и сформировал прерывание о том, что пакет принят. Тогда контроллер просто читает буфер приема, в котором хранятся уже данные в чистом виде, тем самым освобождается процессорное время на другие функции.
Начал изучать настройку регистров для работы трансивера на прием. Это оказалось гораздо труднее, чем передать пакет. Тут надо хорошо знать теорию радиоприема, которой у меня нет. Для этого трансивера имеются таблицы расчета регистров в Excel, но они либо не работают из-за того, что Excel русский, либо урезанные. Также есть приложение от разработчика, но там тоже все не особо прозрачно. Перебрав много примеров и просмотрев расчетные таблицы, вручную считал значения регистров по документации.
Подключил на выход приемника логгер и захватывал эфир, смотря на то, что выдает приемник. В итоге удалось настроить фильтры приемника чтобы он пропустил мой пакет. Манипулировал со скоростью потока, бил в бубен. Теория, к сожалению, мне все же не ясна.
Для того чтобы приемник смог принять пакет данных, ему надо указать длину преамбулы, синхрослово, которое обязательно должно присутствовать, а также длину данных. Также можно чтобы приемник сам считал контрольную сумму, но в SI4432 алгоритм расчета не соответствует алгоритму CRC датчиков давления.
Обязательное присутствие синхрослова из двух байт могло омрачить идею приема пакета, но тут повезло, что посылка от датчика начинается на 0x15B9 (15B937740C833C18025C) и одинакова для всех датчиков. А значит, для синхрослова было задано 0x15B9. Длина пакета данных составляет 8 байт, анализ контрольной суммы отключен. Выставляем генерацию прерывания при приеме пакета и запускаем процедуру приема.
Когда приемник примет преамбулу, синхрослово 0x15B9 и 8 байт данных, то он выдаст прерывание основному контроллеру, который просто считает из буфера приемника 8 байт данных. Далее основной контроллер рассчитает контрольную сумму, сравнит ее и декодирует принятые данные. К счастью, все получилось, как было задумано!
Рис.7. Фото штатного индикатора TPMS и дисплея «умной» коляски
Далее приведу пример инициализации трансивера SI4432 на прием:
Сам прием данных будет выглядеть так:
Функция SI4432_ReadFIFO() просто читает 8 байт из буфера приемника, которые содержат данные от датчика.
Функция TPMS_Parsing() производит анализ контрольной суммы и декодирует информацию в конечные единицы давления и температуры, а также статусную информацию.
- Читая информацию про датчики, упоминалась синхронизация датчиков между собой. Зачем-то надо спаривать датчики, что-то было про скорость движения более 20 км/ч на протяжении 30 минут. Не ясно зачем это надо. Может быть это связано с моментом передачи информации, но это моя догадка.
- Не выяснил до конца функции статусных битов датчика давления.
- Не ясно про настройку трансивера SI4432 на прием, про скорость передачи с применением кодировки Манчестер. У меня работает, но осознания принципа пока нет.
Результаты работы
Исследования, освещенные в данной статье, заняли около месяца свободного времени.
В результате работы по исследованию протокола работы системы контроля давления в шинах затронуты вопросы передачи и приема данных по эфиру, вкратце рассмотрены кодировки сигнала, опробован трансивер SI4432 на передачу и прием. Данная задача позволила интегрировать TPMS в основной проект «умной» детской коляски. Зная протокол обмена, можно подключить большее количество датчиков и интегрировать в свою разработку. Причем контролируемое давление может находиться в широких пределах, а не как в штатной системе 1.1-3.2 Bar, т.к. давление вне этого диапазона сопровождается тревожным писком системы штатного центрального блока. Также теперь TPMS можно применять для контроля давления в шинах мотоцикла, велосипеда или, например, надувного матраса. Останется лишь физически установить датчик и написать программу верхнего уровня.
Читайте также: