Меню

Защита шины i2c от помех

Гальваническая изоляция интерфейса I2C с улучшенной помехоустойчивостью

ON Semiconductor FDV302P HCPL0600

В статье представлен простой и эффективный способ оптической изоляции устройств, подключаемых к шине I 2 C (Рисунок 1). Это усовершенствованная версия схемы, ранее описанной в [1]. Со стороны задатчика шины I 2 C сигналы обозначены как SDA и SCL, а со стороны подчиненного устройства – SDA1 и SCL1. Линия передачи тактового сигнала идет в одном направлении – от ведущего шины к подчиненному устройству, – поэтому дополнить ее оптоизоляцией довольно просто. P-канальный MOSFET Q3 буферизует линию синхронизации, обеспечивая током светодиод быстрого оптоизолятора IC2.

Рисунок 1. Это устройство обеспечивает изолированное двунаправленное подключение
подчиненных устройств к шине интерфейса I 2 C по схеме монтажного «ИЛИ».

Линия данных, однако, двунаправленная. Связанная с ней часть схемы симметрична. R6 и R7 служат подтягивающими резисторами на стороне подчиненного устройства шины I 2 C, а R3 и R1 – фиктивные подтягивающие резисторы, параллельные штатным резисторам I 2 C со стороны SDA/SCL. Пока уровень напряжения на обеих линиях SDA и SDA1 высокий, то есть никакие устройства на шине I 2 C не проявляют активности, транзистор Q1 закрыт, ток через светодиод оптоизолятора IC2 не течет, уровень сигнала на выходе 7 оптрона IC2 высокий, и светодиод оптоизолятора IC1 также выключен.

Если устройство выставляет низкий уровень на линии SDA, транзистор Q1 и светодиод оптоизолятора IC2 выключаются, на выводе 7 оптрона IC2 устанавливается низкий уровень напряжения и диод D2 начинает проводить ток. В результате низкий уровень сигнала на линии SDA1 будет определяться суммой небольшого выходного напряжения IC2 и прямого напряжения диода Шоттки D2. Важно отметить, что в этой ситуации светодиод оптрона IC1 не включается, поскольку приложенное к нему напряжение ниже порогового значения. Это означает, что схема не защелкивается, и может вернуться из этого состояния, как только линия SDA будет отпущена.

Q3 и биполярный транзистор p-n-p типа Q1 эффективно буферизуют две линии SDA/SCL, поэтому при низких уровнях сигналов на линиях в каскады подключенных к шине I 2 C устройств с открытыми коллекторами и открытыми стоками не попадают никакие дополнительные токи. Эта конфигурация позволяет подключать к изолированному интерфейсу несколько устройств по схеме монтажного «ИЛИ». Использование в качестве D1 и D2 диодов с барьером Шоттки вместо обычных диодов уменьшает низкий уровень напряжения на шине, увеличивая запас помехоустойчивости схемы. И, наконец, благодаря низким временам задержки распространения сигналов устройств семейства HCPL06XX, используемых в этой схеме, шина не подвержена сбоям и хорошо работает до частот 400 кГц и выше [2].

Ссылки

Материалы по теме

Перевод: AlexAAN по заказу РадиоЛоцман

Источник

Arduino.ru

arduino + i2c + accelerometer = большие помехи

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

Sparkfun Triple Axis Accelerometer Breakout — ADXL345 — https://www.sparkfun.com/products/9836

Обычный шлейф, оставил 4ре контакта.

По уму подключил шлейф — крайние контакты на шлейфе SDA и SCL, земля и vcc — 2ой и 3ий провода соответственно. Шлейф длиной 30см.

Все работает замечательно до тех пор пока я просто не подведу палец руки близко к чипу акселероментра (даже не дострагиваюсь), после чего прочитайть из акселерометра ничего не возможно (на то время когда палец находится над чипом). Или просто если подвести платку акселерометра к любой металлической детали — прочитать во время нахождения акс. в близости к металлической детали становится тоже невозможно.

Читайте также:  Шины yokohama ig50 или ig60 в чем отличие

Предыдущая конфигурация с китайской ардуиной и этим же датчиком работала прекрасно. Но возможно что-то случилось за вермя замены китайской ардуины на спаркфан. У меня подозрение на то что возмоможно платка акселерометра намагнитилась, поскольку она лежала рядом с природным магнитом какое-то время (хотя я не уверен что был реальный контакт).

Подтягивающие резисторы к питанию (R1,R2 на картинке), для линий SDA, SCL не забыли? (в тексте вы нигде про них не упомянули).

Если «не поможет» — показывайте код и давайте ссылки на библиотеки которые используете. Возможно «обратная ситуация» — используются встроенные подтягивающие. А они по 20k. И для 3-х вольтового питания они могут оказатся «слишком сильными». Линия не успевает востанавливаться. Возможно даже 10K будут «перебором», тогда можно до 4.7K попробовать понизить номинал.

Но «по описанию проблемы», все-таки больше похоже что «их нет вообще», чем «есть но перебор». Тем более в туториалах, почему-то, везде показанно подключение без них.

Да, конечно подтягивающие есть. По 10кОм.

Забыл сказать что я пробовал подключать другой акселерометр, тоже по i2c, но со шлейфом 20см. Этот работает хорошо, без помех.

Если «не поможет» — показывайте код и давайте ссылки на библиотеки которые используете. Возможно «обратная ситуация» — используются встроенные подтягивающие. А они по 20k. И для 3-х вольтового питания они могут оказатся «слишком сильными». Линия не успевает востанавливаться. Возможно даже 10K будут «перебором», тогда можно до 4.7K попробовать понизить номинал.

Но «по описанию проблемы», все-таки больше похоже что «их нет вообще», чем «есть но перебор». Тем более в туториалах, почему-то, везде показанно подключение без них.

Вообще происходит нечто странное. Не думал что влияние человесеской плоти может настолько влиять на помехи (при этом не качаясь до саомго чипа) 🙂

Да и спросто если подносишь к металлической поверхности происходит тоже самое.

И самое главное что если трогаешь шлейф то помех не возникает.

Вообще происходит нечто странное. Не думал что влияние человесеской плоти может настолько влиять на помехи (при этом не качаясь до саомго чипа) 🙂

Да и спросто если подносишь к металлической поверхности происходит тоже самое.

И самое главное что если трогаешь шлейф то помех не возникает.

Сама «человеческа плоть» — не может. Но в данном случае она выступает как антена которая ловит «помехи из эфира». Скорее всего 50 герц от проводки в стенах вокруг вас. Если вы уйдете куда-нибудь «далеко-далеко» в поле — возможно эффект и перестанет проявляется.

Можете еще попробовать снизить номинал подтягивающих до 4.7K, что-бы оно «сильнее притянулу» к питаю, авось менее чувствительно будет.

Можете попробовать заменить шлейф на витую пару. Взять кабель для Ethernet. Его и экрнированным можено найти. Шлейфы обычно используются для коротких растояний. Внутри экранированного корпуса.

Читайте также:  Fuso canter размер шин

А еще попробуйте померять, со стороны модуля, напрежение между землей и линией. Возможно у шлейфа сопротивление слишком большое (ну или сопротивление самого шлефва промеряйте) и к модулю добирается сигнал «слишком слабым».

Спасибо за советы. В итоге обнаружил пробой на плате акселерометра SCL контакта. Дорожка повредилась.

Кстати, что делают в таких случаях? Я пока аккуратно восстановил её оловом.

Спасибо за советы. В итоге обнаружил пробой на плате акселерометра SCL контакта. Дорожка повредилась.

Кстати, что делают в таких случаях? Я пока аккуратно восстановил её оловом.

Электроника — наука о контактах 🙂

Да, вот именно это и делают. Припоем «востанавливают». Обычно, когда плату изготавливают в домашних условиях, даже не ждут пока «дорожка повредится», а изначально все их «промазывают» припоем. Называется «лудить плату». Что-бы если были огрехи травления — снизить их катострофичность.

Черт, рано радовался. Все по-прежнему. Но такое чувство что помех меньше. Все-таки мне кажется что i2c тут ни при чем.

Может такое поведение быть из-за намагниченности? На плате акселерометра есть три SMD конденсатора. Могут ли они быть причиной, если намагнитились?

Не похоже. Если бы проблема была в «намагниченности», то поднесение руки вряд ли на что-то влияло. Да и по описанию, все-таки, намного больше похоже на «ловит помехи». Мне кажется если бы дело было в «намангиченности», то он бы «врал», а не «обижался и замолкал» (хотя, конечно может магнит и повредил чего). Так что все-таки i2c очень даже может быть «причем».

Но это можно «проверить», возмите короткий шлейф. в пару сантименторов. Если проблема «датчик поврежден», то длина шлейфа не должна ему помочь, а вот если на коротком «все заработает» — версию намагниченонсти точно можно откинуть.

Да и «починеная дорожка», раз вы говорите «стало меньше» говорит о том что уровня сигнала не хватает на линии. «Починили дорожку» — уменьшили сопротивление. Стало лучше «проходить».

  1. Укоротить шлейф
  2. Вместо шлейфа взять витую пару, на которой интренет по дому проводят. В идеале — экранированную (в для начала и обычной попробовать можно). Или даже просто на каких-нибудь два провода «потолще» (значит сопротивление у них — поменьше будет).
  3. Уменьшить номинал подтягивающих резисторов (все-таки 10K это обычно рекомендуют для 5v-тового питания).

Источник

Защита шины i2c от помех

_________________
Steve Jobs. 1955-2011. Мы помним, как ты преобразовал наш мир.

JLCPCB, всего $2 за прототип печатной платы! Цвет — любой!

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/cwc

Встал на лапы

Карма: 1
Рейтинг сообщений: 7
Зарегистрирован: Чт мар 29, 2012 13:07:27
Сообщений: 106
Рейтинг сообщения: 0

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Поставщик валерьянки для Кота

Зарегистрирован: Пт апр 24, 2009 11:39:16
Сообщений: 2064
Откуда: г.Оренбург
Рейтинг сообщения: 0

Читайте также:  Адаптация датчика давления шин что это

_________________
Steve Jobs. 1955-2011. Мы помним, как ты преобразовал наш мир.

Приглашаем 30 ноября всех желающих посетить вебинар о литиевых источниках тока Fanso (EVE). Вы узнаете об особенностях использования литиевых источников питания и о том, как на них влияют режим работы и условия эксплуатации. Мы расскажем, какие параметры важно учитывать при выборе литиевого ХИТ, рассмотрим «подводные камни», с которыми можно столкнуться при неправильном выборе, разберем, как правильно проводить тесты, чтобы убедиться в надежности конечного решения. Вы сможете задать вопросы представителям производителя, которые будут участвовать в вебинаре.

Встал на лапы

Карма: 1
Рейтинг сообщений: 7
Зарегистрирован: Чт мар 29, 2012 13:07:27
Сообщений: 106
Рейтинг сообщения: 0

Приглашаем всех желающих 25/11/2021 г. принять участие в вебинаре, посвященном антеннам Molex. Готовые к использованию антенны Molex являются компактными, высокопроизводительными и доступны в различных форм-факторах для всех стандартных антенных протоколов и частот. На вебинаре будет проведен обзор готовых решений и перспектив развития продуктовой линейки. Разработчики смогут получить рекомендации по выбору антенны, работе с документацией и поддержкой, заказу образцов.

Друг Кота

Карма: 6
Рейтинг сообщений: 11
Зарегистрирован: Сб мар 07, 2009 20:44:36
Сообщений: 4435
Рейтинг сообщения: 0

_________________
Не умеешь — не берись, но не взявшись не научишься.

Встал на лапы

Карма: 1
Рейтинг сообщений: 7
Зарегистрирован: Чт мар 29, 2012 13:07:27
Сообщений: 106
Рейтинг сообщения: 0

Встал на лапы

Карма: 1
Рейтинг сообщений: 7
Зарегистрирован: Чт мар 29, 2012 13:07:27
Сообщений: 106
Рейтинг сообщения: 0

проблема не исчезла. перепробовал 3 блока питания (два адаптера + блок от компа) Везде глюки. Глюки исчезают если питать устройство в ванной (хотя там работает, но стоит девайс переместить на полметра — сраз глючит) стабильно работает вне квартиры. Т.е. в машине например. Дома из источников сильных могут быть — кабель и электроплита им подключенная (на момент тестов плита была выключена, роутер с вайфаем (включен всегда). Народ, подскажите как можно осциллографом посмотреть, какие искажения могут быть на шине i2c.

Жду мыслей и идей что делать(

Это не хвост, это антенна

Карма: 7
Рейтинг сообщений: 72
Зарегистрирован: Вт окт 28, 2008 09:00:18
Сообщений: 1438
Откуда: Украина, Харьков
Рейтинг сообщения: 0

_________________
Порой мне кажется, что я делаю какое-то дерьмо, но когда я вижу, что делают другие, то я чувствую себя гением.

Встал на лапы

Карма: 1
Рейтинг сообщений: 7
Зарегистрирован: Чт мар 29, 2012 13:07:27
Сообщений: 106
Рейтинг сообщения: 0

Друг Кота

Карма: 49
Рейтинг сообщений: 391
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 6956
Откуда: Ижевск
Рейтинг сообщения: 0

Встал на лапы

Карма: 1
Рейтинг сообщений: 7
Зарегистрирован: Чт мар 29, 2012 13:07:27
Сообщений: 106
Рейтинг сообщения: 0

Друг Кота

Карма: 49
Рейтинг сообщений: 391
Зарегистрирован: Вс июл 12, 2009 19:15:29
Сообщений: 6956
Откуда: Ижевск
Рейтинг сообщения: 0

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

Источник

Adblock
detector