Как проверить шим сигнал осциллографом
Перейти к содержимому

Как проверить шим сигнал осциллографом

  • автор:

DIY: отладка программ micro:bit с помощью осциллографа (часть 1)

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

В этой статье мы расскажем, как при отладке устройств на базе micro:bit (или другого микрокомпьютера) использовать осциллограф. Вы научитесь настраивать осциллограф и проверять сигналы широтно-импульсной модуляции (ШИМ).

Выбор осциллографа

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

Вам предстоит сделать выбор между цифровым или аналоговым осциллографом, понять, какая нужна полоса пропускания, сколько и каких требуется входов, купить осциллограф как отдельный прибор или как USB-приставку к компьютеру.

Цифровой или аналоговый

Если кратко, то для серьезной работы с микрокомпьютерной техникой, робототехникой и электроникой следует использовать цифровые осциллографы.

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

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

В современных цифровых осциллографах происходит непрерывное преобразование входного сигнала (или сигналов, если входов несколько) в цифровую форму с помощью скоростного аналого-цифрового преобразователя (АЦП). Полученные в результате данные сохраняются в памяти осциллографа.

Далее в зависимости от выбранного режима и настроек содержимое этой памяти в том или ином виде показывается на экране цифрового осциллографа. При этом можно просматривать сигнал непрерывно, как на экране аналогового осциллографа, или фрагментами.

Например, можно смотреть фрагменты, извлекаемые из памяти в результате автоматической синхронизации или по срабатыванию так называемого триггера.

С помощью триггера запускается просмотр сигнала, сохраненного в памяти, при достижении им определенного значения (по фронту или спаду), по ширине импульса или другим параметрам в зависимости от модели осциллографа. Изображение на экране можно растягивать или сжимать, изучая форму сигнала в деталях.

Цифровые осциллографы могут быть многоканальными (два или четыре аналоговых входа). Также в некоторых моделях могут быть дополнительные входы цифрового логического анализатора (обычно 16 входов).

Если осциллограф многоканальный, то на его экране можно наблюдать одновременно несколько сигналов. Например, это могут быть сигналы ШИМ управления двигателями.

Когда возникает необходимость просмотра множества цифровых сигналов, поможет встроенный в осциллограф цифровой логический анализатор (рис. 1). И если в простейших моделях вы можете увидеть только сами цифровые сигналы, то есть модели осциллографов, распознающих протоколы передаваемых данных, например, UART или I2C.

Рис. 1. Цифровой осциллограф Hantek MSO5202D с логическим анализатором на 16 каналов

Рис. 1. Цифровой осциллограф Hantek MSO5202D с логическим анализатором на 16 каналов

Цифровой анализатор не покажет форму сигнала. В нем используются триггеры, которые срабатывают при изменении состояния входного сигнала с 0 на 1 или наоборот. Порог срабатывания триггеров можно настраивать.

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

Полоса пропускания и частота дискретизации сигнала

Стоимость осциллографа очень сильно зависит от таких параметров, как полоса пропускания и скорость оцифровки сигнала. Эти параметры настолько важны, что обычно написаны на лицевой панели прибора.

Полоса пропускания осциллографа определяет возможный частотный диапазон исследуемых сигналов. Если исследовать высокочастотные аналоговые сигналы, то вам нужен осциллограф с достаточной полосой пропускания.

При этом надо учесть, что на частоте полосы пропускания входной сигнал будет ослаблен на 3 dB или на 30%. Это существенное ослабление, поэтому рекомендуется выбирать осциллограф с полосой пропускания, превышающей в 3–5 раз максимальную частоту исследуемых аналоговых сигналов.

Что же касается цифровых сигналов, то тут ситуация еще хуже. Чтобы увидеть на экране меандр с четкими краями, полоса пропускания должна раз в 10 превышать частоту исследуемых импульсов.

Теперь о частоте дискретизации или частоте выборки.

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

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

Отдельный прибор или USB-приставка

Если бюджет ограничен, но хочется приобрести осциллограф с хорошими параметрами, возможно, подойдет осциллограф-приставка к компьютеру с интерфейсом USB.

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

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

Готовим осциллограф к работе

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

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

Мы расскажем об использовании осциллографа Hantek MSO5202D с полосой пропускания 200 МГц и скоростью выборки 1 Gs/s (один миллиард выборок в секунду). У этого осциллографа два аналоговых входа и логический анализатор на 16 входов.

Для осциллографов других марок описанные в статье процедуры выполняются аналогично, ищите детали в документации.

Начальная инициализация

Итак, вы приобрели новый осциллограф Hantek, а может быть и бывший в употреблении. Чтобы сбросить его настройки в состояние по умолчанию, воспользуйтесь кнопкой DEFAULT SETUP. Кнопка F0 закроет меню настройки по умолчанию, а кнопка F1 сохранит исходные настройки.

Если нужно переключить язык интерфейса осциллографа, то сначала нажмите кнопку UTILITY, а затем с помощью кнопки F6 перейдите на вторую страницу меню. Там нажимайте кнопку F2 до тех пор, пока интерфейс не переключится на нужный вам язык.

Кстати, на этой же странице вы можете поменять цветовую гамму изображения на экране, нажимая кнопку F3. По умолчанию выбран голубой цвет Blue.

Автоматическая калибровка

Процедура автоматической калибровки нужна для получения максимальной точности измерений. Ее нужно запускать, если температура изменилась более чем на 5 градусов.

Включите осциллограф и прогрейте его в течение 20 минут. Отсоедините от осциллографа все кабели, если они были подключены. Затем нажмите кнопку UTILITY, выберите из меню Do Self Cal (Выполнить автоматическую калибровку) и следуйте указаниям на экране.

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

Настройка компенсации щупов

Для исследования сигналов через аналоговые входы используются щупы. В осциллографе Hantek MSO5202D предусмотрены аналоговые входы CH1 (желтый) и CH2 (синий), а также вход для подачи внешнего сигнала триггера EXT TRIG (серый).

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

Начнем со входа CH1. Подключите к этому входу щуп, и установите на нем коэффициент ослабления 10X.

Нажмите кнопку PROBE CHECK. На экране появится инструкция — нужно проверить коэффициент ослабления и подключить щуп к контактам PROBE COMP. Эти контакты (земля и сигнальный) обозначены на панели осциллографа как

После подключения на входе канала CH1 появится тестовый сигнал в виде меандра (периодический сигнал прямоугольной формы) с амплитудой 5В и частотой 1КГц.

Убедитесь, что установлен коэффициент ослабления 10X, и это соответствует выбору в меня Probe. При необходимости с помощью кнопки F1 выберите правильное значение для канала CH1. После этого нажмите кнопку F2, выбрав функцию проверки Check. На экране появится тестовый сигнал в виде меандра.

Далее вооружитесь пластмассовой отверткой из комплекта поставки осциллографа, и вращайте подстроечный конденсатор на разъеме щупа. Добейтесь, чтобы форма отображаемого сигнала была правильной, с прямыми углами. Металлическую отвертку использовать нельзя, так как появляются наводки и искажения.

На рис. 2 показан щуп и отвертка, которой нужно вращать подстроечный конденсатор.

Рис. 2. Щуп с отверткой для настройки компенсации

Рис. 2. Щуп с отверткой для настройки компенсации

На рис. 3 и 4 показаны осциллограммы для случая, когда компенсация настроена неправильно — наблюдаются либо заваленные фронты, либо выбросы.

Рис. 3. Неправильная компенсация с заваленными фронтами Рис. 4. Неправильная компенсация с выбросами

Если вам удалось настроить компенсацию, вы увидите меандр с прямоугольными фронтами без заваленных фронтов и выбросов (рис. 5).

Рис. 5. Правильно настроенная компенсация

Закончив настройку, нажмите кнопку F3 (функция Finish).

Повторите процедуру для второго щупа, подключив его к разъему CH2. Не забудьте выбрать в меню Probe с помощью кнопки F1 коэффициент ослабления 10X для канала CH2.

Теперь ваш осциллограф настроен и готов к работе!

Также мы подготовили краткую видеоинструкцию по начальной настройке осциллографа Hantek MSO5202D.

Исследуем сигналы ШИМ

Ваш микрокомпьютер micro:bit может управлять моторами, яркостью свечения светодиодов или ламп накаливания. Однако в нем нет цифро-аналогового преобразователя (ЦАП), с помощью которого программа могла бы задавать уровень напряжения на выходах микрокомпьютера. Вместо этого для регулирования скорости вращения моторов или яркостью светодиодов используется широтно-импульсная модуляция ШИМ (Pulse-Width Modulation, PWM) .

ШИМ предполагает, что на управляемое устройство будут подаваться импульсы. Чем шире импульсы, тем быстрее будет вращаться вал двигателя или тем ярче будет гореть светодиод.

Но что делать, если программа ведет себя не так, как вы ожидаете?

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

Другое дело, если для исследования сингалов ШИМ использовать осциллограф. Он покажет импульсы на экране, и вы сможете проверить, как работает ваша программа (рис. 6).

Рис. 6. Исследование сигналов ШИМ с помощью осциллографа

Программа для управления ШИМ

В микрокомпьютере micro:bit для получения сигналов ШИМ можно использовать одновременно три аналоговых контакта P0, P1 и P2 (могут работать как выходные и как входные).

Если вы составляете программу в визуальной среде Microsoft MakeCode, то для получения сигнала ШИМ нужно использовать блок записать аналоговый сигнал в контакт. Этот блок находится в палитре РасширенныеКонтакты.

В качестве параметра блоку передается значение о 0 до 1023. Чем больше будет это значение, тем шире импульс на выходе контакта.

Сразу заметим, что к выходам micro:bit можно подключать только слаботочные устройства, потребляющие ток не более 5 мА, такие как светодиоды с токоограничивающими резисторами. Если нужно управлять двигателями, используйте специальные контроллеры, например, MX1508.

Для изучения приемов работы с осциллографом при отладке программ для micro:bit мы подготовили несложную программу microbit-pwm.hex.

Эту и другие программы из нашей статьи можно загрузить из репозитория Github https://github.com/AlexandreFrolov/oscilloscope-bin.

В блоке при начале программы для хранения текущих значений ШИМ инициализируются три переменные pwm1, pwm2 и pwm3, по одной для каждого контакта P0, P1 и P2. В них записываются значения 64, 128 и 256, соответственно (рис. 7).

Рис. 7. Блок инициализации программы microbit-pwm.hex

Рис. 7. Блок инициализации программы microbit-pwm.hex

Далее с помощью блока записать аналоговый сигнал в контакт эти значение выводятся в соответствующие контакты, а на мониторе micro:bit отображается буква «M».

Для управления шириной импульсов используйте кнопки А и В, расположенные на плате микрокомпьютера.

Когда вы нажимаете кнопку A, блок обработки этой кнопки увеличивает текущее значение переменной pwm1 на 128. При достижении или превышении максимально допустимого значения 1024 в эту переменную записывается значение 64.

И, наконец, обработчик нажатия кнопки A устанавливает ширину импульсов ШИМ на контакте P0 с помощью блока записать аналоговый сигнал в контакт (рис. 8).

Рис. 8. Обработка нажатий кнопки A

Рис. 8. Обработка нажатий кнопки A

Аналогично устроен обработчик нажатия кнопки B, а также комбинации кнопок A и B (рис. 9).

Рис. 9. Обработка нажатия кнопки B и комбинации кнопок A+B

Рис. 9. Обработка нажатия кнопки B и комбинации кнопок A+B

Теперь нажимая кнопки, вы можете регулировать ширину импульсов на каждом из контактов P0, P1 и P2 по отдельности.

Подключаем осциллограф к micro:bit

Если вы уже откалибровали свой осциллограф и настроили компенсацию щупов, подключите канал CH1 осциллографа к контакту P0 микрокомпьютера micro:bit, а канал CH2 — к контакту P1. Не забудьте также подсоединить щупы к земле micro:bit.

При сборке вам пригодится переходник, который можно найти в интернете по названию «сборный Edge Connector для BBC micro:bit», или адаптер micro:bit Breakout, удобный для установки на макетную плату (рис. 10).

Рис. 10. Переходники для подключения micro:bit

Рис. 10. Переходники для подключения micro:bit

Подключите micro:bit к интерфейсу USB вашего компьютера, а затем загрузите описанную выше программу microbit-pwm.hex в микрокомпьютер, скопировав файл программы на дисковое устройство MICROBIT.

Убедитесь, что после завершения загрузки на дисплее micro:bit появилась буква «M». Это означает, что программа работает, выдает сигналы ШИМ на контакты, а также ожидает, когда вы будете нажимать кнопки A и B.

Теперь нажмите на осциллографе кнопку AUTO SET. На экране осциллографа вы увидите сигналы на контактах P0 и P1 (рис. 11).

Рис. 11. Сигналы на контактах P0 и P1

Закройте меню Autoset, нажав кнопку F0 на панели осциллографа. Покрутите ручку SEC/DEV в блоке HORIZONTAL, чтобы изменить масштаб по горизонтали. Так вы сможете рассмотреть импульсы более детально.

Теперь нажмите несколько раз кнопку A на плате micro:bit. Вы увидите, как импульсы, поступающие с контакта P0, будут расширяться. На рис. 12 мы показали осциллограмму, растянутую по горизонтали.

Рис. 12. Осциллограмма ШИМ после регулировки

Проведите аналогичный эксперимент с кнопкой B, убедившись, что ее нажатие приводит к расширению импульсов на контакте P1.

Обратите внимание, что в нижней части экрана осциллографа отображается частота следования импульсов, равная 50 Гц. Для измерения амплитуды можно использовать тот факт, что одна клетка шкалы осциллографа соответствует напряжению 2 В. Далее в статье мы расскажем, как измерить амплитуду и длительность импульсов точнее с помощью курсора.

Используем триггер

Режим AUTO SET требует минимальных навыков и в ряде случаев удобен для просмотра периодических сигналов. Однако по-настоящему возможности цифрового осциллографа раскрываются только при использовании триггера.

Как мы уже говорили, цифровой осциллограф непрерывно преобразует входные сигналы в цифровую форму, сохраняя их в памяти. Триггер осциллографа позволяет задать событие, при возникновении которого данные из памяти показываются на экране осциллографа. При этом вы сможете посмотреть осциллограмму как до возникновения события, так и после него (разумеется, только в определенном интервале времени — ведь объем памяти осциллографа ограничен).

Чтобы использовать триггер, нажмите кнопку TRIG MENU, расположенную в блоке TRIGGER. В правой части экрана осциллографа появится меню Trigger, где можно определить условие возникновения события. Кнопки F1-F6 предназначены для работы с элементами этого меню.

В меню Type оставьте режим Edge, позволяющий задать срабатывание триггера по нарастающему или спадающему фронту импульса. Если вас интересует срабатывание по нарастающему фронту, задайте в меню Slope с помощью кнопки F3 значение Rising, иначе — значение Falling.

В меню Source выберите вход осциллографа, состояние которого будет отслеживать триггер. Укажите здесь CH1 или CH2.

Чтобы осциллограмма отображалась не все время, как в режиме AUTO SET, а только при срабатывании триггера, задайте в меню Mode с помощью кнопки F4 режим Normal.

На рис. 13 показано срабатывание триггера по нарастающему фронту.

Рис. 13. Срабатывание триггера по нарастающему фронту

Теперь растяните ручкой SEC/DIV осциллограмму по горизонтали, и нажмите несколько раз кнопку F3. Убедитесь, что в центре экрана, обозначенного как 0.000s, появляется то нарастающий, то спадающий фронт импульса с контакта P0. При этом импульс с контакта P1 будет соответствующим образом сдвигаться по горизонтали.

Ищем пятна на солнце

В идеальном мире фронты меандра строго вертикальные, а напряжение на контактах micro:bit мгновенно меняется от нуля до примерно 3.3 В.

Однако на самом деле не все так просто. В схемах всегда присутствуют паразитные емкости и индуктивности, способные исказить форму сигнала. Выходное сопротивление контактов micro:bit также не равно нулю.

Растяните ручкой SEC/DIV осциллограмму по горизонтали еще сильнее, чтобы увидеть плавное нарастание фронта (рис. 14).

Рис. 14. Передний фронт на самом деле нарастает постепенно

Обратите внимание на зеленую пунктирную линию. Она соответствует уровню срабатывания триггера. Покрутите ручку LEVEL в блоке TRIGGER, и посмотрите, как этот уровень влияет на отображение осциллограммы.

А как узнать, что происходит с задними фронтами импульсов?

Просто переключите триггер на срабатывание по спадающему фронту, и вы убедитесь, что задние фронты импульсов тоже далеко не идеальные (рис. 15).

Рис. 15. Задние фронты импульсов тоже не идеальные

Одна клетка по горизонтали соответствует интервалу времени 40 нс. Таким образом, сигналы на контактах micro:bit меняют свое состояние примерно за 60 нс.

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

Итак, теперь вы умеете пользоваться триггером и выбирать, какой фронт осциллограммы будет использован для начала показа данных на экране осциллографа. Попробуйте повторить эти действия для входа CH2, изменив кнопкой F2 в меню Source источник получения данных для триггера.

Меню триггера можно убрать с экрана кнопкой F0.

Подключаем логический анализатор

Все вроде бы хорошо, но есть одна проблема. Мы видим сигналы P0 и P1, но не видим, что происходит на контакте P2. Конечно, можно переключить, например, щуп CH2 с контакта P1 на P2, однако при этом пропадет возможность контролировать состояние контакта P1.

Осциллограф Hantek MSO5202D оборудован простым логическим анализатором, позволяющим отслеживать состояние до 16 цифровых сигналов. Давайте воспользуемся этим, и подключим входы логического анализатора D0, D1 и D2 к контактам P0, P1 и P2 нашего микроконтроллера.

Для включения анализатора нажмите на осциллографе два раза кнопку F7.

Вам предстанет довольно неприглядная картина — осциллограммы аналоговых входов CH1 и CH2 будут мешать просмотру данных логического анализатора (рис. 16).

Рис. 16. Данные аналоговых каналов мешают смотреть данные анализатора

Видно, что осциллограммы контактов P0, P1 и P2 micro:bit находятся в нижней части экрана. Таким образом, мы задействовали только три из 16 каналов логического анализатора.

Если вам нужны все 16 каналов, отключите аналоговые входы с помощью кнопок CH1 MENU и CH2 MENU. Однако нам интереснее увидеть два аналоговых сигнала с контактов P0 и P1, а также сигналы со всех трех контактов на логическом анализаторе.

Давайте выполним настройку логического анализатора с помощью меню LA.

Если нажать на панели осциллографа кнопку F2, откроется меню D15-D8, управляющая одноименными каналами анализатора. Нажмите здесь еще раз кнопку F2, и на экране останутся осциллограммы только каналов D0-D7. Нажмите кнопку F6, чтобы вернуться в меню LA.

Обратите внимание на меню Threshold, которое активируется по кнопке F4. Здесь с помощью ручки V0 можно выбрать порог срабатывания входов анализатора (триггеров анализатора). Для нашего микрокомпьютера подойдут уровни TTL или CMOS, но не ECL (там используется отрицательное напряжение). При необходимости можно выбрать режим User, чтобы задать порог срабатывания в вольтах вручную, вращая ручку V0.

Теперь, когда мы отключили показ на экране ненужных нам сейчас каналов D8-D15, верхняя часть экрана расчистилась. Вращая ручки POSITION и VOLTS/DIV, добейтесь, чтобы осциллограммы каналов CH1 и CH2 находились в верхней части экрана.

Откройте снова меню триггера TRIG MENU. Нажав кнопку F2, можно выбрать для триггера не только один из двух аналоговых каналов, но и любой из каналов цифрового анализатора. На рис. 17 мы показали результат настройки триггера на срабатывание по нарастающему фронту от канала D2, подключенного к контакту P2 микрокомпьютера.

Рис. 17. Срабатывание триггера по фронту от контакта P2

Проверяем работу сонара HY-SRF04

Ультразвуковой сонар HY-SRF04 (рис. 18) позволяет измеряет расстояние в диапазоне от 3 см до 3 метров и широко используется при создании моделей роботов, вездеходов и тому подобных устройств.

Рис. 18. Сонар HY-SRF04

Рис. 18. Сонар HY-SRF04

Собираем стенд для проверки сонара

Для питания сонара нужно напряжение 4.5–5 В, например, три последовательно соединенные батарейки АА или ААА. К сожалению, вывод 3V микрокомпьютера micro:bit для питания сонара не подойдет, так как там слишком низкое напряжение.

Питающее напряжение нужно подавать на контакт Vcc сонара. При этом контакт Gnd, а также «минус» источника питания сонара нужно соединить с землей micro:bit.

Собирая стенд, подключите контакт Trig сонара к выводу P0, а контакт Echo — к выводу P1 микрокомпьютера. Первый из этих контактов запускает отправку ультразвуковых сигналов, а второй служит для получения отраженных эхоимпульсов.

Щуп канала CH1 осциллографа подключите к контакту P0, а щуп канала CH2 — к контакту P1 микрокомпьютера (рис. 19).

Рис. 19. Стенд для отладки программы измерения расстояния при помощи сонара

Рис. 19. Стенд для отладки программы измерения расстояния при помощи сонара

Напротив сонара мы положили на стол коробочку зеленого цвета от micro:bit. Передвигая ее, можно изменять расстояние между сонаром и препятствием.

Программа измерения расстояния для micro:bit

Чтобы проверить сонар в работе, мы подготовили очень простую программу microbit-sonar.hex (рис. 20).

Рис. 20. Программа microbit-sonar.hex

Рис. 20. Программа microbit-sonar.hex

Эта программа в бесконечном цикле постоянно вызывает блок ping trig, который появится в проекте Microsoft MakeCode после установки расширения Sonar. После вызова блока показать число в работе программы создается задержка на 100 мс.

Блок ping trig возвращает расстояние от сонара до препятствия в сантиметрах, которое выводится на монитор micro:bit.

Смотрим импульсы отраженного сигнала

Настройте триггер осциллографа так, чтобы он срабатывал по нарастающему фронту канала CH2, то есть по переднему фронту отраженного сигнала с контакта Echo.

На экране осциллографа вы увидите короткий импульс отправки ультразвукового сигнала на канале CH1, а также импульс отраженного сигнала на канале CH2 (рис. 21).

Рис. 21. Смотрим отправленный и отраженный сигнал сонара

Изменяя расстояние между сонаром и препятствием, наблюдайте изменение длительности отраженного импульса.

Измерение длительности импульса

Длительность отраженного импульса можно оценить с помощью координатной сетки на экране осциллографа. Например, на рис. 21 одна клетка соответствует 80 мс, а длина импульса составляет почти три клетки. Получается, что длительности импульса немного меньше 240 мс.

Но можно ли измерить длину этого импульса точнее? Да, и в этом нам поможет режим курсора осциллографа.

Нажмите кнопку CURSOR и кнопкой F1 выберите режим Time. В меню Source при этом кнопкой F2 нужно выбрать канал отраженного сигнала CH2 (рис. 22).

Рис. 22. Измерение длительности импульса в режиме курсора

Нажав кнопку F4, выберите в меню Select cursor курсор S. Вращая ручку V0, переместите вертикальную пунктирную линию к переднему фронту импульса. Затем выберите курсор E, и ручкой V0 переместите линию курсора к заднему фронту импульса.

После этого в правом нижнем углу экрана вы увидите точное значение длительности импульса, в нашем случае это 220 мс.

В расширении Sonar для получения расстояния в сантиметрах длительность импульса в микросекундах делится на 58. Выполнив эту нехитрую операцию, вы сможете проверить значение расстояния, которая ваша программа показывает на мониторе микрокомпьютера и сравнить с измеренным при помощи осциллографа значением.

Сегодня остановимся на этом. В следующий раз исследуем сигналы управления сервоприводом и данные протокола I2C, а также измерим шумы и пульсации в цепях электропитания.

НЛО прилетело и оставило здесь промокод для читателей нашего блога:

— 15% на все тарифы VDS (кроме тарифа Прогрев) — HABRFIRSTVDS.

Как проверить шим контроллер осциллографом

В ремонте техники и сборке схем всегда нужно быть уверенным в исправности всех элементов, а иначе вы зря потратите время. Микроконтроллеры тоже могут сгореть, но как его проверить, если нет внешних признаков: трещин на корпусе, обугленных участков, запаха гари и прочего? Для этого нужно:

Источник питания со стабилизированным напряжением;

Внимание:

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

Теория

Микроконтроллер – это сложное устройство в нём многофункциональных узлов:

интерфейсы и прочее.

Поэтому при диагностике микроконтроллера возникают проблемы:

Работа очевидных узлов не гарантирует работу остальных составных частей.

Прежде чем приступать к диагностике любой интегральной микросхемы нужно ознакомиться с технической документацией, чтобы её найти напишите в поисковике фразу типа: «название элемента datasheet», как вариант – «atmega328 datasheet».

На первых же листах вы увидите базовые сведения об элементе, для примера рассмотрим отдельные моменты из даташита на распространенную 328-ю атмегу, допустим, она у нас в dip28 корпусе, Нужно найти цоколевки микроконтроллеров в разных корпусах, рассмотрим интересующий нас dip28.

Первое на что мы обратим внимание – это то, что выводы 7 и 8 отвечают за плюс питания и общий провод. Теперь нам нужно узнать характеристики цепей питания и потребление микроконтроллера. Напряжение питания от 1.8 до 5.5 В, ток потребляемый в активном режиме – 0.2 мА, в режиме пониженного энергопотребления – 0.75 мкА, при этом включены 32 кГц часы реального времени. Температурный диапазон от -40 до 105 градусов цельсия.

Этих сведений нам достаточно, чтобы провести базовую диагностику.

Основные причины

Микроконтроллеры выходят из строя, как по неконтролируемым обстоятельствам, так и из-за неверного обращения:

1. Перегрев при работе.

2. Перегрев при пайке.

3. Перегрузка выводов.

4. Переполюсовка питания.

5. Статическое электричество.

6. Всплески в цепях питания.

7. Механические повреждения.

8. Воздействие влаги.

Рассмотрим подробно каждую из них:

1. Перегрев может возникнуть, если вы эксплуатируете устройство в горячем месте, или если вы свою конструкцию поместили в слишком маленький корпус. Температуру микроконтроллера может повысить и слишком плотный монтаж, неверная разводка печатной платы, когда рядом с ним находятся греющиеся элементы – резисторы, транзисторы силовых цепей, линейные стабилизаторы питания. Максимально допустимые температуры распространенных микроконтроллеров лежат в пределах 80-150 градусов цельсия.

2. Если паять слишком мощным паяльником или долго держать жало на ножках вы можете перегреть мк. Тепло через выводы дойдёт до кристалла и разрушит его или соединение его с пинами.

3. Перегрузка выводов возникает из-за неверных схемотехнических решений и коротких замыканий на землю.

4. Переполюсовка, т.е. подача на Vcc минуса питания, а на GND – плюса может быть следствием неправильной установки ИМС на печатную плату, или неверного подключения к программатору.

5. Статическое электричество может повредить чип, как при монтаже, если вы не используете антистатическую атрибутику и заземление, так и в процессе работы.

6. Если произошел сбой, пробило стабилизатор или еще по какой-то причине на микроконтроллер было подано напряжение выше допустимого – он вряд ли останется цел. Это зависит от продолжительности воздействия аварийной ситуации.

7. Также не стоит слишком усердствовать при монтаже детали или разборке устройства, чтобы не повредить ножки и корпус элемента.

8. Влага становится причиной окислов, приводит к потере контактов, короткого замыкания. Причем речь идет не только о прямом попадании жидкости на плату, но и о длительной работе в условиях с повышенной влажностью (возле водоёмов и в подвалах).

Проверяем микроконтроллер без инструментов

Начните с внешнего осмотра: корпус должен быть целым, пайка выводов должна быть безупречной, без микротрещин и окислов. Это можно сделать даже с помощью обычного увеличительного стекла.

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

Проверка мультиметром

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

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

Как вариант можно запитать микроконтроллер от внешнего источника питания 5В (или другого подходящего напряжения), и замерить потребление, но дорожку резать все равно нужно, чтобы исключить влияние других элементов.

Для проведения всех измерений нам достаточно сведений из даташита. Не будет лишним посмотреть, на какое напряжение рассчитан стабилизатор питания для микроконтроллера. Дело в том, что разные микроконтроллерные схемы питаются от разных напряжений, это может быть и 3.3В, и 5В и другие. Напряжение может присутствовать, но не соответствовать номиналу.

Если напряжения нет – проверьте, нет ли КЗ в цепи питания, и на остальных ножках. Чтобы быстро это сделать отключите питание платы, включите мультиметр в режим прозвонки, поставьте один щуп на общий провод платы (массу).

Обычно она проходит по периметру платы, а на местах крепления с корпусом имеются залуженные площадки или на корпусах разъёмов. А вторым проведите по всем выводам микросхемы. Если он где-то запищит – проверьте что это за пин, прозвонка должна сработать на выводе GND (8-й вывод на atmega328).

Если не сработала – возможно, оборвана цепь между микроконтроллером и общим проводом. Если сработала на других ножках – смотрите по схеме, нет ли низкоомных сопротивлений между пином и минусом. Если нет – нужно выпаять микроконтроллер и прозвонить повторно. То же самое проверяем, но теперь между плюсом питания (с 7-м выводом) и выводами микроконтроллера. При желании прозваниваются все ножки между собой и проверяется схема подключения.

Проверка осциллографом

Осциллограф – глаза электронщика. С его помощью вы можете проверить наличие генерации на резонаторе. Он подключается между выводами XTAL1,2 (ножки 9 и 10).

Но щуп осциллографа имеет ёмкость, обычно 100 пФ, если установить делитель на 10 ёмкость щупа снизится до 20 пФ. Это вносит изменения в сигнал. Но для проверки работоспособности это не столь существенно, нам нужно увидеть есть ли колебания вообще. Сигнал должен иметь форму наподобие этой, и частоту соответствующую конкретному экземпляру.

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

Это значит, что микроконтроллер исправно выполняет код и обменивается информацией с памятью.

Используем программатор

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

Программатор может быть как специализированным, типа USBASP для семейства АВР:

Так и универсальный, типа Miniprog.

Схема подключения USBASP к atmega 328:

Заключение

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

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

В связи с широким распространением импульсных блоков питания, в различной технике, требуется в случае поломки, уметь самостоятельно выполнять их ремонт. Все это, начиная от маломощных зарядных для смартфона, со стабилизацией напряжения, блоков питания цифровых приставок, ЖК и LED ТВ и мониторов, до тех же самых мощных компьютерных блоков питания, формата ATX, простейшие случаи ремонта которых, мы уже рассматривали ранее, это все будут импульсные блоки питания.

Фото – импульсный блок питания

Также ранее было сказано, что нам для проведения большинства измерений, бывает достаточно обычного цифрового мультиметра. Но здесь есть один важный нюанс: при проверке, например измеряя сопротивление, либо в режиме звуковой прозвонки, мы можем определить только условно не рабочую деталь, по низкому сопротивлению, между ее ножками. Обычно оно составляет где-то от нуля, до 40-50 Ом, либо обрыв, но тогда для этого нужно знать, какое сопротивление должно быть, между ножками у рабочей детали, что не всегда есть возможность проверить. Но в случае проверки работоспособности ШИМ контроллера, этого обычно бывает недостаточно. Нужен либо осциллограф, либо определение его работоспособности, по косвенным признакам.

Мультиметр дешёвый DT

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

ШИМ контроллер – микросхема

Так как же быть? Как можно быстро и без заморочек, условно проверить работу ШИМ контроллера, а если быть более точным, цепей питания, а одновременно и импульсного трансформатора, повышающего трансформатора, питающего лампы подсветки? А очень просто. Недавно нашел один интересный способ на Ю-тубе, для мастеров, автор очень доступно объяснял все. Начну издалека.

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

Пробник для проверки импульсных бп

Другими словами, магнитное поле дросселя или трансформатора, будет пронизывать у нас, витки нашего дросселя, и на выводах его появится напряжение, которое можно будет использовать, в нашем случае, для индикации работоспособности схемы блока питания. Подносить пробник разумеется, нужно как можно ближе к проверяемой детали, и дросселем вниз. Как выглядят детали на плате, к которым нужно подносить наш пробник?

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

Схема импульсного блока питания

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

Фото дроссель для пробника

Стоимость данного дросселя в радиомагазине всего 30 рублей, также иногда они встречаются в блоках питания ATX, обычного светодиода, в стеклянной колбе 5 рублей. В результате мы имеем, простой, дешевый, и очень полезный при ремонтах прибор, который позволяет провести предварительную диагностику, импульсного блока питания, в течение буквально одной минуты. Условно говоря, данным пробником можно проверить, наличие напряжения на всех деталях, представленных на следующем фото.

Дросселя и трансформаторы

Я пользуюсь данным пробником пока всего 3-4 дня, но уже считаю, что могу рекомендовать его к использованию, всем начинающим радиолюбителям – ремонтникам, пока еще не имеющим, в своей домашней мастерской, осциллографа. Также этот пробник, может быть полезен тем, кто чинит электронную технику на выездах. Всем удачных ремонтов – AKV.

Микросхема ШИМ-контроллера UC3842 является самой распространенной при построении блоков питания мониторов. Кроме того, эти микросхемы применяются для построения импульсных регуляторов напряжения в блоках строчной развертки мониторов, которые являются и стабилизаторами высоких напряжений и схемами коррекции растра. Микросхема UC3842 часто используется для управления ключевым транзистором в системных блоках питания (однотактных) и в блоках питания печатающих устройств. Одним словом, эта статья будет интересна абсолютно всем специалистам, так или иначе связанным с источниками питания.

Выход из строя микросхемы UC 3842 на практике происходит довольно часто. Причем, как показывает статистика таких отказов, причиной неисправности микросхемы становится пробой мощного полевого транзистора, которым управляет данная микросхема. Поэтому при замене силового транзистора блока питания в случае его неисправности, настоятельно рекомендуется проводить проверку управляющей микросхемы UC 3842.

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

Для этой работы потребуются следующие приборы:

Можно выделить два основных способа проверки исправности микросхемы:

Функциональная схема приводится на рис.1, а расположение и назначение контактов на рис.2.

Проверка выходного сопротивления микросхемы

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

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

Проверить выходное сопротивление можно омметром между контактами 5 (GND) и 6 (OUT) микросхемы (рис.3), причем полярность подключения измерительного прибора не имеет значения. Такое измерение лучше производить при выпаянной микросхеме. В случае пробоя микросхемы это сопротивление становится равным нескольким Ом.

Если же измерять выходное сопротивление, не выпаивая микросхему, то необходимо предварительно выпаять неисправный транзистор, так как в этом случае может "звониться" его пробитый переход "затвор-исток". Кроме того, при этом следует учесть, что обычно в схеме имеется согласующий резистор, включаемый между выходом микросхемы и "корпусом". Поэтому у исправной микросхемы при проверке может появиться выходное сопротивление. Хотя, оно обычно не бывает меньше 1 кОм.

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

Моделирование работы микросхемы

Такая проверка проводится без выпаивания микросхемы из блока питания. Блок питания перед проведением диагностики необходимо выключить!

Суть проверки заключается в подаче питания на микросхему от внешнего источника и анализе ее характерных сигналов (амплитуды и формы) с помощью осциллографа и вольтметра.

Порядок работы включает в себя следующие шаги:

    1) Отключить монитор от сети переменного тока (отсоединить сетевой кабель).
    2) От внешнего стабилизированного источника тока подать на контакт 7 микросхемы питающее напряжение более 16В (например, 17-18 В). При этом микросхема должна запуститься. Если питающее напряжение будет менее 16 В, то микросхема не запустится.
    3) С помощью вольтметра (или осциллографа) измерить напряжение на контакте 8 (VREF) микросхемы. Там должно быть опорное стабилизированное напряжение +5 В постоянного тока.
    4) Изменяя выходное напряжение внешнего источника тока, убедиться в стабильности напряжения на контакте 8. (Напряжение источника тока можно изменять от 11 В до 30 В, при дальнейшем уменьшении или увеличении напряжения микросхема будет отключаться, и напряжение на контакте 8 будет пропадать).
    5) Осциллографом проверить сигнал на контакте 4 (CR). В случае исправной микросхемы и ее внешних цепей на этом контакте будет линейно изменяющееся напряжение (пилообразной формы).
    6) Изменяя выходное напряжение внешнего источника тока, убедитесь в стабильности амплитуды и частоты пилообразного напряжения на контакте 4.
    7) Осциллографом проверить наличие импульсов прямоугольной формы на контакте 6 (OUT) микросхемы (выходные управляющие импульсы).

Если все указанные сигналы присутствуют и ведут себя в соответствии с вышеприведенными правилами, то можно сделать вывод об исправности микросхемы и ее правильном функционировании.

В заключение хочется отметить, что на практике стоит проверить исправность не только микросхемы, но и элементов ее выходных цепей (рис.3). В первую очередь это резисторы R1 и R2, диод D1, стабилитрон ZD1, резисторы R3и R4, которые формируют сигнал токовой защиты. Эти элементы часто оказываются неисправными при пробоях

О проверке импульсных цепей питания с помощью осциллографа

Для питания современной вычислительной техники в основном используют питающие напряжения +12, +5, +3.3 вольта (постоянный ток), формирующиеся блоком питания. Электронные компоненты, установленные на видеокартах, материнских платах часто требуют других номиналов питающих напряжений. Чаще всего вольтаж, необходимый для их работы, формируется путем понижения питающего напряжения до нужного значения.

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

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

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

Пример использования ШИМ-преобразования напряжения в импульсном блоке питания:

В статье Как работает VRM материнских плат рассматривались некоторые особенности работы фаз питания, использующихся в современной вычислительной технике. В данной статье динамические процессы, происходящие в фазе питания, рассматриваются с другой точки зрения. Эти знания помогут не только при ремонте неисправных устройств, но и помогут осуществлять более осмысленную эксплуатацию компьютерной техники.

О работе фаз питания, работающих в импульсном режиме

В импульсных цепях фаз питания напряжение от блока питания используется не постоянно, а периодически, с помощью коммутации ключевыми транзисторами:

Благодаря этому на нагрузке появляется не все питающее напряжение, а лишь его часть. Это позволяет понижать вольтаж до нужного значения при сохранении достаточно высокого КПД.

При работе большинства импульсных цепей питания используются коммутационные ключи на мощных полевых транзисторах, управляемые микросхемой, формирующей управляющие импульсы широтно-импульсной модуляции (ШИМ), длительность которых меняется в зависимости от напряжения на выходе.

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

Чем большая частота используется при работе, тем больше энергии накапливается в катушке индуктивности, что позволяет значительно уменьшить ее размеры. Слишком сильному увеличению частоты препятствует значительное увеличение реактивного сопротивления проводников на высоких частотах и другие сложности, присущие ВЧ-технике.

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

Уменьшение пульсаций (Ripple) осуществляется с помощью электролитических накопительных конденсаторов, а ВЧ-шумов (Noise) — с помощью блокировочных:

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

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

Проверка напряжения и тока на выходе импульсного источника питания на наличие пульсаций и шума с помощью двухканального осциллографа:

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

Как проходят токи через транзисторы верхнего и нижнего плеча фаз питания?

Фаза питания импульсных источников питания работает в два цикла, при которых ток проходит поочередно через транзистор(-ы) верхнего и нижнего плеча.

Упрощенная схема фазы питания с двумя полевыми транзисторами:

При открытом верхнем ключе (первый цикл работы, ключевой транзистор нижнего плеча при этом закрыт) ток проходит по цепи: плюсовой вывод источника питания (в данном случае +12 вольт) — транзистор верхнего ключа T1 — катушка индуктивности L — нагрузка Rн — общий провод (минус от источника питания).

На протяжении второго цикла работы открывается нижний ключевой транзистор T2 (верхний закрывается), а ток проходит по цепи: накопительная катушка индуктивности L — нагрузка Rн — транзистор нижнего ключа T2 — катушка индуктивности L.

Во время второго цикла работы источником энергии является дроссель (катушка индуктивности L), отдающий электричество, накопленное во время первого цикла.

Сглаживание пульсаций на выходе фазы питания происходит за счет накопления электрической энергии в LC-элементах (конденсатор С на схеме выше).

Визуализация прохождения тока в динамике есть в ролике Ток через нижнее и верхнее плечо шим контроллера на Youtube.

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

Как правило, в фазах питания видеокарт и материнских плат используется по два мощных транзистора нижнего плеча и один — в верхнем плече. Это связано с тем, что ток, проходящий во время первого цикла работы значительно больше, чем при работе от накопительного дросселя. В связи с этим обычно используются более мощные транзисторы нижнего плеча, обычно работающие параллельно, что увеличивает допустимый рабочий ток и снижает сопротивление сток-исток (Rds) во время рабочего цикла (в открытом состоянии).

Транзисторы верхнего ключа пропускают меньший ток, но должны работать с большей частотой. Поэтому для них более важна скорость открытия td(on) и закрытия td(off), чем допустимый ток.

Проверка работоспособности транзисторов фаз питания рассматривается в статьях О проверке полевых транзисторов импульсных цепей питания, а также Устранение проблем с запуском материнской платы. Для проверки работы фаз питания в динамике нужно использовать осциллограф.

Проверка напряжений и токов в цепи с помощью осциллографа

Проверка бросков (пускового) тока (inrush current) осциллографом может осуществляться на токовом резисторе (шунте) и с помощью токового щупа.

Изучение формы тока в цепи с помощью токового шунта:

Для проверки сдвига фаз между током и напряжением в электрической цепи нужно использовать двухканальный осциллограф.

Пример проверки работы транзистора фазы питания с помощью двухканального осциллографа:

На приведенной выше схеме производится одновременное измерение формы напряжения и тока на выходе полевого транзистора. Для изучения напряжения минус щупа (Diff Probe) подключается непосредственно к истоку (source), а плюс — к стоку (drain) ключевого MOSFET-транзистора. Щуп Current Probe (токовые клещи) второго канала показывает форму пульсирующего (перменного) тока в цепи.

Кроме токового щупа изучить форму тока в цепи можно путем подключения второго канала осциллографа к токовому резистору Rт (шунту) в составе исследуемой цепи:

Для исследования сдвига фаз между током и напряжением на двухканальном осциллографе с использованием токового резистора используют следующую схему подключения:

В приведенной выше схеме первый канал измеряет напряжение на выходе источника питания, а второй — напряжение на токовом резисторе (сигнал на нем при изучении сдвига фаз нужно инвертировать из-за встречного включения относительно первого канала). Синхронизация прибора в данном случае осуществляется от первого канала, так как вольтаж U Rт значительно меньше напряжения на первом канале, что ухудшило бы условия работы прибора при использовании второго канала для синхронизации.

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

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

Правильное и неправильное подключение двухканального осциллографа (масса обеих каналов должна быть подключена к одной общей точке):

Проверка формы напряжения, которое формируется на выходе источника питания с помощью осциллографа:

Проверка работы ШИМ-контроллера

При проверке работы микросхемы ШИМ в первую очередь нужно проверить ее выходное сопротивление (между контактами GND и OUT) — как правило, оно должно быть очень большим, близким к бесконечности (при этом на измерения не должны оказывать влияние окружающие элементы). Если при исправном ключевом полевом транзисторе на выходе ШИМ-контроллера (не выпаянного из платы) малое сопротивление (ниже одного килоОма) — то микросхема пробита.

При выходе из строя силовых транзисторов, нужно проверять исправность не только микросхемы ШИМ-контроллера, но и ее обвязку, так как элементы выходных цепей часто оказываются неисправными при пробоях MOSFET-ов.

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

При проверке ШИМ-контроллера можно использовать следующую последовательность действий:

  • подать на ШИМ-микросхему проверяемого устройства от внешнего источника питания (лабораторного блока питания) необходимое ей питающее напряжение с ограничением тока;
  • проверить референсное напряжение на выводе VREF, оно должно соответствовать номиналу (согласно даташиту);
  • проверить стабильность референсного напряжения при изменениях питающего напряжения от лабораторного источника питания в пределах, соответствующих Datasheet;
  • осциллографом проверить сигнал на выходе частотозадающей цепи ШИМ-контроллера, которое должно оставаться в пределах нормы даже при изменениях питающего напряжения в заданных пределах;
  • проверить на осциллографе импульсы, идущие на ключевой транзистор фаз питания с выхода PWM-контроллера.

Вам также может понравиться

Видеокарта Nvidia Quadro K620 — аналог GeForce GTX 745 для рабочих станций

asus 1050ti expedition oc нет признаков жизни (Страница 1) — Ремонт видеокарт — SERVICE CORE FORUM

5 июля, 2022

Как проверить шим сигнал осциллографом

DIY: отладка программ micro:bit с помощью осциллографа (часть 1)

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

В этой статье мы расскажем, как при отладке устройств на базе micro:bit (или другого микрокомпьютера) использовать осциллограф. Вы научитесь настраивать осциллограф и проверять сигналы широтно-импульсной модуляции (ШИМ).

Выбор осциллографа

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

Вам предстоит сделать выбор между цифровым или аналоговым осциллографом, понять, какая нужна полоса пропускания, сколько и каких требуется входов, купить осциллограф как отдельный прибор или как USB-приставку к компьютеру.

Цифровой или аналоговый

Если кратко, то для серьезной работы с микрокомпьютерной техникой, робототехникой и электроникой следует использовать цифровые осциллографы.

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

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

В современных цифровых осциллографах происходит непрерывное преобразование входного сигнала (или сигналов, если входов несколько) в цифровую форму с помощью скоростного аналого-цифрового преобразователя (АЦП). Полученные в результате данные сохраняются в памяти осциллографа.

Далее в зависимости от выбранного режима и настроек содержимое этой памяти в том или ином виде показывается на экране цифрового осциллографа. При этом можно просматривать сигнал непрерывно, как на экране аналогового осциллографа, или фрагментами.

Например, можно смотреть фрагменты, извлекаемые из памяти в результате автоматической синхронизации или по срабатыванию так называемого триггера.

С помощью триггера запускается просмотр сигнала, сохраненного в памяти, при достижении им определенного значения (по фронту или спаду), по ширине импульса или другим параметрам в зависимости от модели осциллографа. Изображение на экране можно растягивать или сжимать, изучая форму сигнала в деталях.

Цифровые осциллографы могут быть многоканальными (два или четыре аналоговых входа). Также в некоторых моделях могут быть дополнительные входы цифрового логического анализатора (обычно 16 входов).

Если осциллограф многоканальный, то на его экране можно наблюдать одновременно несколько сигналов. Например, это могут быть сигналы ШИМ управления двигателями.

Когда возникает необходимость просмотра множества цифровых сигналов, поможет встроенный в осциллограф цифровой логический анализатор (рис. 1). И если в простейших моделях вы можете увидеть только сами цифровые сигналы, то есть модели осциллографов, распознающих протоколы передаваемых данных, например, UART или I2C.

Рис. 1. Цифровой осциллограф Hantek MSO5202D с логическим анализатором на 16 каналов

Рис. 1. Цифровой осциллограф Hantek MSO5202D с логическим анализатором на 16 каналов

Цифровой анализатор не покажет форму сигнала. В нем используются триггеры, которые срабатывают при изменении состояния входного сигнала с 0 на 1 или наоборот. Порог срабатывания триггеров можно настраивать.

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

Полоса пропускания и частота дискретизации сигнала

Стоимость осциллографа очень сильно зависит от таких параметров, как полоса пропускания и скорость оцифровки сигнала. Эти параметры настолько важны, что обычно написаны на лицевой панели прибора.

Полоса пропускания осциллографа определяет возможный частотный диапазон исследуемых сигналов. Если исследовать высокочастотные аналоговые сигналы, то вам нужен осциллограф с достаточной полосой пропускания.

При этом надо учесть, что на частоте полосы пропускания входной сигнал будет ослаблен на 3 dB или на 30%. Это существенное ослабление, поэтому рекомендуется выбирать осциллограф с полосой пропускания, превышающей в 3–5 раз максимальную частоту исследуемых аналоговых сигналов.

Что же касается цифровых сигналов, то тут ситуация еще хуже. Чтобы увидеть на экране меандр с четкими краями, полоса пропускания должна раз в 10 превышать частоту исследуемых импульсов.

Теперь о частоте дискретизации или частоте выборки.

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

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

Отдельный прибор или USB-приставка

Если бюджет ограничен, но хочется приобрести осциллограф с хорошими параметрами, возможно, подойдет осциллограф-приставка к компьютеру с интерфейсом USB.

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

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

Готовим осциллограф к работе

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

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

Мы расскажем об использовании осциллографа Hantek MSO5202D с полосой пропускания 200 МГц и скоростью выборки 1 Gs/s (один миллиард выборок в секунду). У этого осциллографа два аналоговых входа и логический анализатор на 16 входов.

Для осциллографов других марок описанные в статье процедуры выполняются аналогично, ищите детали в документации.

Начальная инициализация

Итак, вы приобрели новый осциллограф Hantek, а может быть и бывший в употреблении. Чтобы сбросить его настройки в состояние по умолчанию, воспользуйтесь кнопкой DEFAULT SETUP. Кнопка F0 закроет меню настройки по умолчанию, а кнопка F1 сохранит исходные настройки.

Если нужно переключить язык интерфейса осциллографа, то сначала нажмите кнопку UTILITY, а затем с помощью кнопки F6 перейдите на вторую страницу меню. Там нажимайте кнопку F2 до тех пор, пока интерфейс не переключится на нужный вам язык.

Кстати, на этой же странице вы можете поменять цветовую гамму изображения на экране, нажимая кнопку F3. По умолчанию выбран голубой цвет Blue.

Автоматическая калибровка

Процедура автоматической калибровки нужна для получения максимальной точности измерений. Ее нужно запускать, если температура изменилась более чем на 5 градусов.

Включите осциллограф и прогрейте его в течение 20 минут. Отсоедините от осциллографа все кабели, если они были подключены. Затем нажмите кнопку UTILITY, выберите из меню Do Self Cal (Выполнить автоматическую калибровку) и следуйте указаниям на экране.

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

Настройка компенсации щупов

Для исследования сигналов через аналоговые входы используются щупы. В осциллографе Hantek MSO5202D предусмотрены аналоговые входы CH1 (желтый) и CH2 (синий), а также вход для подачи внешнего сигнала триггера EXT TRIG (серый).

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

Начнем со входа CH1. Подключите к этому входу щуп, и установите на нем коэффициент ослабления 10X.

Нажмите кнопку PROBE CHECK. На экране появится инструкция — нужно проверить коэффициент ослабления и подключить щуп к контактам PROBE COMP. Эти контакты (земля и сигнальный) обозначены на панели осциллографа как

После подключения на входе канала CH1 появится тестовый сигнал в виде меандра (периодический сигнал прямоугольной формы) с амплитудой 5В и частотой 1КГц.

Убедитесь, что установлен коэффициент ослабления 10X, и это соответствует выбору в меня Probe. При необходимости с помощью кнопки F1 выберите правильное значение для канала CH1. После этого нажмите кнопку F2, выбрав функцию проверки Check. На экране появится тестовый сигнал в виде меандра.

Далее вооружитесь пластмассовой отверткой из комплекта поставки осциллографа, и вращайте подстроечный конденсатор на разъеме щупа. Добейтесь, чтобы форма отображаемого сигнала была правильной, с прямыми углами. Металлическую отвертку использовать нельзя, так как появляются наводки и искажения.

На рис. 2 показан щуп и отвертка, которой нужно вращать подстроечный конденсатор.

Рис. 2. Щуп с отверткой для настройки компенсации

Рис. 2. Щуп с отверткой для настройки компенсации

На рис. 3 и 4 показаны осциллограммы для случая, когда компенсация настроена неправильно — наблюдаются либо заваленные фронты, либо выбросы.

Рис. 3. Неправильная компенсация с заваленными фронтами Рис. 4. Неправильная компенсация с выбросами

Если вам удалось настроить компенсацию, вы увидите меандр с прямоугольными фронтами без заваленных фронтов и выбросов (рис. 5).

Рис. 5. Правильно настроенная компенсация

Закончив настройку, нажмите кнопку F3 (функция Finish).

Повторите процедуру для второго щупа, подключив его к разъему CH2. Не забудьте выбрать в меню Probe с помощью кнопки F1 коэффициент ослабления 10X для канала CH2.

Теперь ваш осциллограф настроен и готов к работе!

Также мы подготовили краткую видеоинструкцию по начальной настройке осциллографа Hantek MSO5202D.

Исследуем сигналы ШИМ

Ваш микрокомпьютер micro:bit может управлять моторами, яркостью свечения светодиодов или ламп накаливания. Однако в нем нет цифро-аналогового преобразователя (ЦАП), с помощью которого программа могла бы задавать уровень напряжения на выходах микрокомпьютера. Вместо этого для регулирования скорости вращения моторов или яркостью светодиодов используется широтно-импульсная модуляция ШИМ (Pulse-Width Modulation, PWM) .

ШИМ предполагает, что на управляемое устройство будут подаваться импульсы. Чем шире импульсы, тем быстрее будет вращаться вал двигателя или тем ярче будет гореть светодиод.

Но что делать, если программа ведет себя не так, как вы ожидаете?

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

Другое дело, если для исследования сингалов ШИМ использовать осциллограф. Он покажет импульсы на экране, и вы сможете проверить, как работает ваша программа (рис. 6).

Рис. 6. Исследование сигналов ШИМ с помощью осциллографа

Программа для управления ШИМ

В микрокомпьютере micro:bit для получения сигналов ШИМ можно использовать одновременно три аналоговых контакта P0, P1 и P2 (могут работать как выходные и как входные).

Если вы составляете программу в визуальной среде Microsoft MakeCode, то для получения сигнала ШИМ нужно использовать блок записать аналоговый сигнал в контакт. Этот блок находится в палитре РасширенныеКонтакты.

В качестве параметра блоку передается значение о 0 до 1023. Чем больше будет это значение, тем шире импульс на выходе контакта.

Сразу заметим, что к выходам micro:bit можно подключать только слаботочные устройства, потребляющие ток не более 5 мА, такие как светодиоды с токоограничивающими резисторами. Если нужно управлять двигателями, используйте специальные контроллеры, например, MX1508.

Для изучения приемов работы с осциллографом при отладке программ для micro:bit мы подготовили несложную программу microbit-pwm.hex.

Эту и другие программы из нашей статьи можно загрузить из репозитория Github https://github.com/AlexandreFrolov/oscilloscope-bin.

В блоке при начале программы для хранения текущих значений ШИМ инициализируются три переменные pwm1, pwm2 и pwm3, по одной для каждого контакта P0, P1 и P2. В них записываются значения 64, 128 и 256, соответственно (рис. 7).

Рис. 7. Блок инициализации программы microbit-pwm.hex

Рис. 7. Блок инициализации программы microbit-pwm.hex

Далее с помощью блока записать аналоговый сигнал в контакт эти значение выводятся в соответствующие контакты, а на мониторе micro:bit отображается буква «M».

Для управления шириной импульсов используйте кнопки А и В, расположенные на плате микрокомпьютера.

Когда вы нажимаете кнопку A, блок обработки этой кнопки увеличивает текущее значение переменной pwm1 на 128. При достижении или превышении максимально допустимого значения 1024 в эту переменную записывается значение 64.

И, наконец, обработчик нажатия кнопки A устанавливает ширину импульсов ШИМ на контакте P0 с помощью блока записать аналоговый сигнал в контакт (рис. 8).

Рис. 8. Обработка нажатий кнопки A

Рис. 8. Обработка нажатий кнопки A

Аналогично устроен обработчик нажатия кнопки B, а также комбинации кнопок A и B (рис. 9).

Рис. 9. Обработка нажатия кнопки B и комбинации кнопок A+B

Рис. 9. Обработка нажатия кнопки B и комбинации кнопок A+B

Теперь нажимая кнопки, вы можете регулировать ширину импульсов на каждом из контактов P0, P1 и P2 по отдельности.

Подключаем осциллограф к micro:bit

Если вы уже откалибровали свой осциллограф и настроили компенсацию щупов, подключите канал CH1 осциллографа к контакту P0 микрокомпьютера micro:bit, а канал CH2 — к контакту P1. Не забудьте также подсоединить щупы к земле micro:bit.

При сборке вам пригодится переходник, который можно найти в интернете по названию «сборный Edge Connector для BBC micro:bit», или адаптер micro:bit Breakout, удобный для установки на макетную плату (рис. 10).

Рис. 10. Переходники для подключения micro:bit

Рис. 10. Переходники для подключения micro:bit

Подключите micro:bit к интерфейсу USB вашего компьютера, а затем загрузите описанную выше программу microbit-pwm.hex в микрокомпьютер, скопировав файл программы на дисковое устройство MICROBIT.

Убедитесь, что после завершения загрузки на дисплее micro:bit появилась буква «M». Это означает, что программа работает, выдает сигналы ШИМ на контакты, а также ожидает, когда вы будете нажимать кнопки A и B.

Теперь нажмите на осциллографе кнопку AUTO SET. На экране осциллографа вы увидите сигналы на контактах P0 и P1 (рис. 11).

Рис. 11. Сигналы на контактах P0 и P1

Закройте меню Autoset, нажав кнопку F0 на панели осциллографа. Покрутите ручку SEC/DEV в блоке HORIZONTAL, чтобы изменить масштаб по горизонтали. Так вы сможете рассмотреть импульсы более детально.

Теперь нажмите несколько раз кнопку A на плате micro:bit. Вы увидите, как импульсы, поступающие с контакта P0, будут расширяться. На рис. 12 мы показали осциллограмму, растянутую по горизонтали.

Рис. 12. Осциллограмма ШИМ после регулировки

Проведите аналогичный эксперимент с кнопкой B, убедившись, что ее нажатие приводит к расширению импульсов на контакте P1.

Обратите внимание, что в нижней части экрана осциллографа отображается частота следования импульсов, равная 50 Гц. Для измерения амплитуды можно использовать тот факт, что одна клетка шкалы осциллографа соответствует напряжению 2 В. Далее в статье мы расскажем, как измерить амплитуду и длительность импульсов точнее с помощью курсора.

Используем триггер

Режим AUTO SET требует минимальных навыков и в ряде случаев удобен для просмотра периодических сигналов. Однако по-настоящему возможности цифрового осциллографа раскрываются только при использовании триггера.

Как мы уже говорили, цифровой осциллограф непрерывно преобразует входные сигналы в цифровую форму, сохраняя их в памяти. Триггер осциллографа позволяет задать событие, при возникновении которого данные из памяти показываются на экране осциллографа. При этом вы сможете посмотреть осциллограмму как до возникновения события, так и после него (разумеется, только в определенном интервале времени — ведь объем памяти осциллографа ограничен).

Чтобы использовать триггер, нажмите кнопку TRIG MENU, расположенную в блоке TRIGGER. В правой части экрана осциллографа появится меню Trigger, где можно определить условие возникновения события. Кнопки F1-F6 предназначены для работы с элементами этого меню.

В меню Type оставьте режим Edge, позволяющий задать срабатывание триггера по нарастающему или спадающему фронту импульса. Если вас интересует срабатывание по нарастающему фронту, задайте в меню Slope с помощью кнопки F3 значение Rising, иначе — значение Falling.

В меню Source выберите вход осциллографа, состояние которого будет отслеживать триггер. Укажите здесь CH1 или CH2.

Чтобы осциллограмма отображалась не все время, как в режиме AUTO SET, а только при срабатывании триггера, задайте в меню Mode с помощью кнопки F4 режим Normal.

На рис. 13 показано срабатывание триггера по нарастающему фронту.

Рис. 13. Срабатывание триггера по нарастающему фронту

Теперь растяните ручкой SEC/DIV осциллограмму по горизонтали, и нажмите несколько раз кнопку F3. Убедитесь, что в центре экрана, обозначенного как 0.000s, появляется то нарастающий, то спадающий фронт импульса с контакта P0. При этом импульс с контакта P1 будет соответствующим образом сдвигаться по горизонтали.

Ищем пятна на солнце

В идеальном мире фронты меандра строго вертикальные, а напряжение на контактах micro:bit мгновенно меняется от нуля до примерно 3.3 В.

Однако на самом деле не все так просто. В схемах всегда присутствуют паразитные емкости и индуктивности, способные исказить форму сигнала. Выходное сопротивление контактов micro:bit также не равно нулю.

Растяните ручкой SEC/DIV осциллограмму по горизонтали еще сильнее, чтобы увидеть плавное нарастание фронта (рис. 14).

Рис. 14. Передний фронт на самом деле нарастает постепенно

Обратите внимание на зеленую пунктирную линию. Она соответствует уровню срабатывания триггера. Покрутите ручку LEVEL в блоке TRIGGER, и посмотрите, как этот уровень влияет на отображение осциллограммы.

А как узнать, что происходит с задними фронтами импульсов?

Просто переключите триггер на срабатывание по спадающему фронту, и вы убедитесь, что задние фронты импульсов тоже далеко не идеальные (рис. 15).

Рис. 15. Задние фронты импульсов тоже не идеальные

Одна клетка по горизонтали соответствует интервалу времени 40 нс. Таким образом, сигналы на контактах micro:bit меняют свое состояние примерно за 60 нс.

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

Итак, теперь вы умеете пользоваться триггером и выбирать, какой фронт осциллограммы будет использован для начала показа данных на экране осциллографа. Попробуйте повторить эти действия для входа CH2, изменив кнопкой F2 в меню Source источник получения данных для триггера.

Меню триггера можно убрать с экрана кнопкой F0.

Подключаем логический анализатор

Все вроде бы хорошо, но есть одна проблема. Мы видим сигналы P0 и P1, но не видим, что происходит на контакте P2. Конечно, можно переключить, например, щуп CH2 с контакта P1 на P2, однако при этом пропадет возможность контролировать состояние контакта P1.

Осциллограф Hantek MSO5202D оборудован простым логическим анализатором, позволяющим отслеживать состояние до 16 цифровых сигналов. Давайте воспользуемся этим, и подключим входы логического анализатора D0, D1 и D2 к контактам P0, P1 и P2 нашего микроконтроллера.

Для включения анализатора нажмите на осциллографе два раза кнопку F7.

Вам предстанет довольно неприглядная картина — осциллограммы аналоговых входов CH1 и CH2 будут мешать просмотру данных логического анализатора (рис. 16).

Рис. 16. Данные аналоговых каналов мешают смотреть данные анализатора

Видно, что осциллограммы контактов P0, P1 и P2 micro:bit находятся в нижней части экрана. Таким образом, мы задействовали только три из 16 каналов логического анализатора.

Если вам нужны все 16 каналов, отключите аналоговые входы с помощью кнопок CH1 MENU и CH2 MENU. Однако нам интереснее увидеть два аналоговых сигнала с контактов P0 и P1, а также сигналы со всех трех контактов на логическом анализаторе.

Давайте выполним настройку логического анализатора с помощью меню LA.

Если нажать на панели осциллографа кнопку F2, откроется меню D15-D8, управляющая одноименными каналами анализатора. Нажмите здесь еще раз кнопку F2, и на экране останутся осциллограммы только каналов D0-D7. Нажмите кнопку F6, чтобы вернуться в меню LA.

Обратите внимание на меню Threshold, которое активируется по кнопке F4. Здесь с помощью ручки V0 можно выбрать порог срабатывания входов анализатора (триггеров анализатора). Для нашего микрокомпьютера подойдут уровни TTL или CMOS, но не ECL (там используется отрицательное напряжение). При необходимости можно выбрать режим User, чтобы задать порог срабатывания в вольтах вручную, вращая ручку V0.

Теперь, когда мы отключили показ на экране ненужных нам сейчас каналов D8-D15, верхняя часть экрана расчистилась. Вращая ручки POSITION и VOLTS/DIV, добейтесь, чтобы осциллограммы каналов CH1 и CH2 находились в верхней части экрана.

Откройте снова меню триггера TRIG MENU. Нажав кнопку F2, можно выбрать для триггера не только один из двух аналоговых каналов, но и любой из каналов цифрового анализатора. На рис. 17 мы показали результат настройки триггера на срабатывание по нарастающему фронту от канала D2, подключенного к контакту P2 микрокомпьютера.

Рис. 17. Срабатывание триггера по фронту от контакта P2

Проверяем работу сонара HY-SRF04

Ультразвуковой сонар HY-SRF04 (рис. 18) позволяет измеряет расстояние в диапазоне от 3 см до 3 метров и широко используется при создании моделей роботов, вездеходов и тому подобных устройств.

Рис. 18. Сонар HY-SRF04

Рис. 18. Сонар HY-SRF04

Собираем стенд для проверки сонара

Для питания сонара нужно напряжение 4.5–5 В, например, три последовательно соединенные батарейки АА или ААА. К сожалению, вывод 3V микрокомпьютера micro:bit для питания сонара не подойдет, так как там слишком низкое напряжение.

Питающее напряжение нужно подавать на контакт Vcc сонара. При этом контакт Gnd, а также «минус» источника питания сонара нужно соединить с землей micro:bit.

Собирая стенд, подключите контакт Trig сонара к выводу P0, а контакт Echo — к выводу P1 микрокомпьютера. Первый из этих контактов запускает отправку ультразвуковых сигналов, а второй служит для получения отраженных эхоимпульсов.

Щуп канала CH1 осциллографа подключите к контакту P0, а щуп канала CH2 — к контакту P1 микрокомпьютера (рис. 19).

Рис. 19. Стенд для отладки программы измерения расстояния при помощи сонара

Рис. 19. Стенд для отладки программы измерения расстояния при помощи сонара

Напротив сонара мы положили на стол коробочку зеленого цвета от micro:bit. Передвигая ее, можно изменять расстояние между сонаром и препятствием.

Программа измерения расстояния для micro:bit

Чтобы проверить сонар в работе, мы подготовили очень простую программу microbit-sonar.hex (рис. 20).

Рис. 20. Программа microbit-sonar.hex

Рис. 20. Программа microbit-sonar.hex

Эта программа в бесконечном цикле постоянно вызывает блок ping trig, который появится в проекте Microsoft MakeCode после установки расширения Sonar. После вызова блока показать число в работе программы создается задержка на 100 мс.

Блок ping trig возвращает расстояние от сонара до препятствия в сантиметрах, которое выводится на монитор micro:bit.

Смотрим импульсы отраженного сигнала

Настройте триггер осциллографа так, чтобы он срабатывал по нарастающему фронту канала CH2, то есть по переднему фронту отраженного сигнала с контакта Echo.

На экране осциллографа вы увидите короткий импульс отправки ультразвукового сигнала на канале CH1, а также импульс отраженного сигнала на канале CH2 (рис. 21).

Рис. 21. Смотрим отправленный и отраженный сигнал сонара

Изменяя расстояние между сонаром и препятствием, наблюдайте изменение длительности отраженного импульса.

Измерение длительности импульса

Длительность отраженного импульса можно оценить с помощью координатной сетки на экране осциллографа. Например, на рис. 21 одна клетка соответствует 80 мс, а длина импульса составляет почти три клетки. Получается, что длительности импульса немного меньше 240 мс.

Но можно ли измерить длину этого импульса точнее? Да, и в этом нам поможет режим курсора осциллографа.

Нажмите кнопку CURSOR и кнопкой F1 выберите режим Time. В меню Source при этом кнопкой F2 нужно выбрать канал отраженного сигнала CH2 (рис. 22).

Рис. 22. Измерение длительности импульса в режиме курсора

Нажав кнопку F4, выберите в меню Select cursor курсор S. Вращая ручку V0, переместите вертикальную пунктирную линию к переднему фронту импульса. Затем выберите курсор E, и ручкой V0 переместите линию курсора к заднему фронту импульса.

После этого в правом нижнем углу экрана вы увидите точное значение длительности импульса, в нашем случае это 220 мс.

В расширении Sonar для получения расстояния в сантиметрах длительность импульса в микросекундах делится на 58. Выполнив эту нехитрую операцию, вы сможете проверить значение расстояния, которая ваша программа показывает на мониторе микрокомпьютера и сравнить с измеренным при помощи осциллографа значением.

Сегодня остановимся на этом. В следующий раз исследуем сигналы управления сервоприводом и данные протокола I2C, а также измерим шумы и пульсации в цепях электропитания.

НЛО прилетело и оставило здесь промокод для читателей нашего блога:

— 15% на все тарифы VDS (кроме тарифа Прогрев) — HABRFIRSTVDS.

FAQ #1. Как проверить шим-выход адаптера ApwmU без осциллографа

Этим постом хочу начать серию коротких выпусков с пояснениями и ответами на вопросы, советами по эксплуатации, а так же наблюдениями обо всём, что связано с работой универсальных шим-контроллеров ApwmU и А600+

В этом выпуске будет показано как быстро без осциллографа проверить шим-выход адаптера ApwmU с помощью простого электронного мультиметра.

Из-за своих конструктивных особенностей мультиметр отображает напряжение шим-сигнала по его заполнению (duty) с небольшими отклонениями. То есть если амплитуда шим ("высота импульсов") равна +12В, то при duty 50%, мультиметр будет отображать напряжение около +6В, при duty 90% — около +10,8В, при duty 10% — около 1,2В соответственно.
Таким образом по изменению напряжения можно определить работоспособность шим-выхода адаптера ApwmU

Как проверить шим сигнал осциллографом

ШИМНаши статьи по электронике — это не только знакомство с новыми электронными схемами, но и нужные советы, а также теоретическая информация.

В рамках этой статьи, мы с вами поговорим о ШИМ, то есть определенном способе управления электронными элементами, с которым вы будете встречаться очень часто.

ШИМ — что это такое?

Краткое сокращение PWM (ШИМ) известно практически каждому, кто имел дело с электродвигателями или моделированием. ШИМ, от английского PWM (pulse width modulation) переводится как Широтно-Импульсная Модуляция. Звучит умно, но что это на самом деле означает? Проверим на практике!

Начнем сразу с простого упражнения. На этот раз нам понадобятся:

  • 1 × 1000 мкФ конденсатор,
  • Резистор 1 × 10 кОм,
  • Резистор 1 × 330 Ом,
  • 1 × светодиод (выберите свой любимый цвет),
  • 1 × микровыключатель,
  • Батарея 4 × AA,
  • 1 × корзина для 4 батареек АА,
  • 1 × макетная плата,
  • комплект соединительных проводов.

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

Схема ШИМ

Схема, имитирующая работу ШИМ

На практике, сборка на плате может выглядеть так:

Схема на макетной плате Образцовая реализация на практике
Схема сборки на макетной плате Реализация на практике

Если конденсатор разряжен, при включении питания ничего не должно произойти. После нажатия на кнопку, диод начнет медленно светиться, а через некоторое время «засветится на полную мощность». Это связано с тем, что после нажатия кнопки, конденсатор С1 медленно заряжается, и только после его зарядки весь ток начнет перетекать на диод. Когда вы отпускаете кнопку, диод медленно погаснет. Это связано с тем, что при отключении от батареи, светодиод питается только от заряженного конденсатора.

Итак, у нас есть схема, которая медленно увеличивает яркость, и также медленно гасит диод. А что произойдет, если мы будем несколько раз нажимать и отпускать кнопку так, чтобы каждое состояние длилось около полсекунды? Проверьте это на практике! Также посмотрите, что произойдет, если вы увеличите это время. Это будет непросто, но если вам удастся поддерживать по времени регулярное нажатие, светодиод должен будет гореть все время, только не на всю мощь.

Такое равномерное нажатие и отпускание кнопки приводит к тому, что напряжение приходит в схему в виде следующего прямоугольного сигнала, где:

  • X — время подачи напряжения в систему,
  • T — время одного цикла / периода.

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

Чем дольше эти фазы длятся, тем пульсации становятся заметнее, поскольку изменения напряжения на конденсаторе уже значительны.

Если мы нажимаем кнопку через регулярные промежутки времени, мы генерируем прямоугольную волну, как на предыдущем графике. Конечно, время нажатия кнопки и время отсутствия тока в цепи не обязательно должны совпадать.

Отношение времени нажатия кнопки к периоду сигнала называется рабочим циклом.

Цикл нажатия ШИМ

Меньше заполнения — светодиод горит в течение более короткой части цикла, больше заполнения — светодиод горит большую часть цикла

Этот эксперимент был простым. По сути, это была простая симуляция генератора ШИМ, то есть модуляция ширины сигнала. А теперь перейдем к подробному обсуждению темы.

Для чего используется ШИМ?

Как вы, возможно, уже знаете, микроконтроллеры (например, Arduino) представляют собой цифровые схемы. Это означает, что обрабатываемые ими сигналы представляют собой только логические единицы и нули, а с точки зрения электроники выглядят так:

  • логический ноль — это отсутствие напряжения,
  • логическая единица — это напряжение питания системы (например, 3,3 В или 5 В).

Если цифровая схема может работать только с нулями и единицами, то возникает вопрос: как плавно регулировать яркость диода, ведь на выходе может появиться только одно из двух напряжений (то есть 0 В или 5 В)? Вот здесь ШИМ придет нам на помощь.

Управлять диодом очень просто — все, что нам нужно, это резистор и сам диод, нам даже не нужен конденсатор. В предыдущем примере это было необходимо по другой причине — без него светодиод погаснет, как только кнопка будет отпущена, поэтому мы увидим, как светодиод будет мигать.

Однако, если мы будем использовать возможности микроконтроллера для включения и выключения диода, вместо того, чтобы нажимать кнопку вручную, мы сможем управлять диодом намного быстрее и с гораздо большей частотой. Человеческое зрение несовершенно, и уже при 24 Гц (т.е. 24 изменения в секунду) глаз перестает видеть следующие фазы мигания и усредняет результат — мы знаем это из кино и телевидения!

Конечно, такая низкая частота не дает идеального изображения, поэтому лучше использовать более высокую частоту обновления (например, 50 Гц или 100 Гц).

Для современных процессоров с тактовой частотой в гигагерцах, такие частоты очень низкие — но для нашего очень несовершенного зрения их более чем достаточно.

Зачем нужен был конденсатор?

Вернемся еще раз к нашему примеру с конденсатором — чем может быть полезна такая схема? Как мы знаем, для управления диодом конденсатор не нужен, наш глаз усредняет эффект свечения диода. Именно конденсатор можно использовать на практике для усреднения напряжения. Правильно подобрав номинал конденсатора (и резисторов), на его выводах мы получили бы напряжение (почти) постоянное, плавно регулируемое в диапазоне 0–6 В в зависимости от заполнения ШИМ-сигнала.

В случае микропроцессора, такая схема очень популярна для получения плавно регулируемого выходного напряжения. В то время как сам процессор может обеспечивать напряжение только 0 В и, скажем, 5 В, управляя с помощью ШИМ и подключая резистор и конденсатор, мы можем получить любое напряжение в диапазоне 0-5 В на выходе схемы.

Комбинация резистора и конденсатора создает простой фильтр. Именно благодаря ему, вместо скачков напряжения мы можем наблюдать его среднее значение.

Вы можете легко проверить это самостоятельно, подключив мультиметр к выводам конденсатора емкостью 1000 мкФ. Быстро нажмите кнопку и посмотрите, что покажет мультиметр. Вместо 6 В, которые мы используем для питания нашей системы, мы будем видеть, например, 1,7 В. На конденсаторе значение этого напряжения будет меняться по мере «заполнения» сигнала, управляющего схемой — в данном случае это означает, что чем дольше нажата кнопка (время, когда она не нажата), тем выше будет напряжение на конденсаторе.

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

Использование ШИМ для передачи информации

Оказывается, ШИМ можно использовать и для передачи сигналов между устройствами. Одна из самых известных схем этого типа является сервопривод. Это небольшой мотор, который может вращаться в диапазоне (чаще всего) от 0 ° до 180 °. С помощью прогрммирования, мы можем «приказать» ему занять определенное положение, например, 45 °.

Точность такого позиционирования невысока, но ее достаточно для большинства приложений.

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

Пример сервопривода

Пример сервопривода, которым управляет ШИМ

Типичный сигнал сервоуправления должен длиться 20 мс, а ширина импульса должна варьироваться от 1 мс до 2 мс. Встроенный контроллер интерпретирует сигнал таким образом, что устанавливает рупор (элемент, прикрепленный к оси) пропорционально длительности импульса. Например, импульс длительностью 1 мс крайний левый угол, импульс 1,5 мс — центр сервопривода, а 2 мс — крайний правый угол.

Принцип работы сервопривода

Принцип работы сервопривода

Мы будем использовать включенный сервопривод, как только сможем сгенерировать настоящий ШИМ-сигнал (здесь уже недостаточно просто нажимать кнопку). Однако сначала мы должны познакомиться с интегральной схемой — в частности, речь идет о NE555.

Пример использования сервопривода

Пример использования сервопривода

Стабилизаторы импульсов

Сигнал ШИМ тоже связан с совершенно другим типом элементов, а именно с импульсными стабилизаторами. В первых статьях по электронике мы уже обсуждали популярные линейные стабилизаторы . Бессмертным примером здесь, который должен быть известен каждому электронщику, является LM7805.

Популярный стабилизатор LM7805

Популярный стабилизатор LM7805

Эти элементы дешевы и просты в использовании. Однако у них есть большой недостаток — низкая эффективность. Если мы используем такой стабилизатор для питания, например, двигателя, он будет действовать как «резистор». Предположим, у нас есть источник питания, который дает нам 10 В, мы хотели бы использовать его для питания двигателя, которому требуется 5 В. Для этой цели (потому что мы еще не узнали о лучших методах), мы могли бы использовать линейный стабилизатор.

Распределение напряжения при питании двигателя от стабилизатора

Распределение напряжения при питании двигателя от стабилизатора

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

Связь двигателя со стабилизатором

Схема связи двигателя со стабилизатором

Мощность выражается как произведение протекающего тока и накопленного напряжения, поэтому давайте посчитаем пример баланса. Пусть наш мотор потребляет 200 мА тока. Затем рассчитываем мощность, потребляемую двигателем, следующим образом:

P мот = I ⋅ U мот = 0,2 A ⋅ 5 В = 1 Вт

Посчитаем, какая мощность потребляется от источника питания:

P бат = I ⋅ U бат = 0,2 А ⋅ 10 В = 2 Вт

Как мы видим, в распоряжении двигателя половина мощности, получаемой от аккумуляторной батареи. Остальное теряется в виде тепла, вот почему LM7805 нагревается, а батарея быстро разряжается. Конечно, настоящий двигатель может потреблять больше электроэнергии, но тогда потеря мощности будет настолько велика, что наш LM7805 придется охлаждать жидким азотом для его правильной работы…

В таком случае, стабилизатор превратит ценную энергию, хранящуюся в батарее, в бесполезное тепло. Поэтому это решение не самое лучшее.

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

Питание через импульсный стабилизатор

Питание через импульсный стабилизатор от источника напряжением 10 В

Благодаря этому, потери мощности на стабилизаторе очень малы и почти вся мощность передается дальше по схеме. Конечно, такое напряжение нельзя передать напрямую на приемник, например, на микроконтроллер. Нам еще предстоит их отфильтровать — мы уже знакомы с RC-фильтром. В импульсных стабилизаторах используются более совершенные фильтры, оснащенные катушкой, которая играет аналогичную роль, на этот раз сглаживая форму волны тока (а не напряжения), и обеспечивает выходной ток стабилизатора даже во время периодов отключения ШИМ .

При соответствующей частоте и наполнении сигнала (как показано на диаграмме выше) к нашему двигателю будет поступать среднее напряжение 5 В. Работа импульсных стабилизаторов и, в частности, импульсных преобразователей будет обсуждаться в отдельной статье. А пока достаточно вспомнить, что замена линейного стабилизатора на импульсный позволяет существенно повысить КПД схемы.

В обсуждаемом примере, линейный стабилизатор обеспечит реальный КПД ниже 50%, в то время как использование импульсного стабилизатора позволит достичь КПД, близкого к 100%.

Питание двигателей от ШИМ

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

Однако оказывается, что в случае двигателей постоянного тока, схему можно упростить — обмотка двигателя имеет определенную, часто весьма значительную, индуктивность. Благодаря этому, можно напрямую управлять с помощью сигнала ШИМ — сама обмотка будет действовать как фильтр, сглаживающий волну тока.

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

Тема управления двигателем очень обширна, но, к сожалению, мы не можем описать ее более подробно в данной статье. Однако стоит упомянуть, что существуют готовые интегральные схемы, которые можно использовать для управления двигателями постоянного тока. Такой системой можно дополнительно управлять с помощью ШИМ-сигнала для регулирования оборотов двигателя.

Примером может служить старый, но проверенный L293D. К соответствующим выводам (ножкам) подключаем питание и сигналы управления (в том числе ШИМ), а к остальным — мотор. Изменение рабочего цикла ШИМ-сигнала, подаваемого в эту схему, напрямую влияет на изменение частоты вращения двигателя.

Драйверы двигателей постоянного тока

Примеры драйверов двигателей постоянного тока

Что меняет частоту сигнала ШИМ?

Выполнив практическое упражнение с диодом и конденсатором, вы могли собственными глазами увидеть, что более высокая частота повторения импульсов ШИМ полезна, потому что усреднение лучше. Так должны ли мы всегда использовать максимально возможную частоту?

  1. каждое переключение порождает потери,
  2. некоторые потребители электроэнергии плохо реагируют на слишком высокую частоту.

К сожалению, первый пункт применим всегда. Это связано с тем, что переключение (т.е. выключение и включение) происходит не сразу. Ограничением являются свойства самих транзисторов , используемые для управления источником питания приемника.

Раньше прямоугольный сигнал рисовался с острыми вертикальными краями, но на самом деле такую форму получить невозможно.

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

Напряжение, которым питается наш образец приемника, мы обозначили зеленым цветом. Здесь мы предположили, что наклоны линейные, т.е. форма импульса напряжения трапециевидная. Эта ситуация определенно преувеличена (длительное время переключения по сравнению со всем периодом), но она хорошо иллюстрирует данную картину.

Внешний вид прямоугольного сигнала

Внешний вид прямоугольного сигнала, который лучше отражает реальный сигнал

Фактически, прямоугольный сигнал может быть еще более искаженным. Однако на данный момент, наиболее интересным является время нарастания и спада сигнала.

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

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

Завышенные коммутационные потери

Завышенные коммутационные потери (отмечены красным)

Один период прямоугольного сигнала в секунду требует две операции переключения (включения и выключения). Десять периодов, уже требуют двадцать переключений в секунду. Тысяча периодов — две тысячи и т.д.

Взаимосвязь интуитивно понятна: чем чаще приходится переключаться, тем больше потери.

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

Итак, у нас есть два противоположных мнения. Во-первых, частота должна быть как можно более высокой из-за эффекта усреднения. Во-вторых, вы должны минимизировать потери, и тем самым снизить частоту до минимума. Искусство проектирования схем — это умение идти на компромиссы. Таким образом, мы должны выбрать такую частоту, чтобы, с одной стороны, получить стабильное среднее значение, а с другой — оставаться на приемлемом уровне потерь мощности.

Как выбрать частоту?

Прежде всего, мы должны научиться искать нужную документацию об элементах и находить правильные решения. Если наш проект основан на интегральной схеме или готовом контроллере, то частота ШИМ, или хотя бы ее диапазон, часто навязывается (предлагается) производителем. Например, для сервоприводов нам нужно 20 мс, что соответствует частоте 50 Гц.

В случае двигателей, выбираются гораздо более высокие частоты — от сотен герц до сверхакустических частот, то есть выше 20 кГц. В общем, проще построить контроллер, работающий на более низких частотах, но к сожалению, недостатком может быть отчетливо слышимый «писк» двигателя.

Выход за пределы акустической частоты снижает этот неприятный эффект.

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

ШИМ на практике

В этой статье, для работы сигнала ШИМ, мы использовали кнопку, нажимаемую вручную. Конечно, если мы построим схему, требующую такого контроля, никто не будет стоять и все время щелкать переключателями. Сигналы ШИМ чаще всего генерируются с помощью цифровых схем.

В следующих статьях мы будем использовать для этой цели очень популярный чип NE555. Если вы решили получше изучить этот вопрос (а оно того действительно стоит!), приступайте к программированию, например, на Arduino. Микроконтроллер будет выполнять функцию генератора, и вы сможете программно установить все параметры ШИМ.

Сигнал ШИМ, отображаемый на осциллографе

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

Здесь (опять же) на помощь приходит осциллограф, то есть измерительный прибор, позволяющий визуализировать изменения напряжения во времени. Пример сигнала ШИМ, отображаемого осциллографом, показан ниже. Вы можете увидеть сигнал с частотой 20,2 кГц, где высокое состояние длится 14,6 мкс, а низкое состояние — 34,8 мкс. Это означает, что период сигнала составляет 49,4 мкс, а его рабочий цикл составляет 14,6 / 49,4, т.е.

Конкретные параметры сигнала измеряются осциллографом и отображаются прямо на экране.

Измеренный сигнал ШИМ

Пример измеренного осциллографом сигнала ШИМ

Вывод

Эта статья получилась немного более теоретической, но в следующих статьях вы обязательно узнаете, как самостоятельно сгенерировать настоящий ШИМ-сигнал и как применить его на практике. На данный момент самое важное — связать сигнал ШИМ с прямоугольным сигналом с переменным заполнением, которое можно использовать для предоставления или переноса информации.

Проверка работоспособности шим-контроллера.

Как нам уже известно из первых уроков, любой микроконтроллер умеет хорошо работать с цифровыми сигналами. Он легко справляется с арифметическими операциями над цифровыми данными, принимает и передаёт цифровые сигналы по линиям связи. А что значит «цифровые» в данном случае?

В самом первом уроке мы зажигали и гасили светодиод с помощью Ардуино. Для того, чтобы зажечь светодиод, мы подавали на его анод высокий уровень сигнала. А чтобы погасить — низкий уровень. Получается, для управления мы использовали только два уровня напряжения: высокий и низкий. Светодиод либо будет гореть, либо не будет. Третьего — не дано. Оперируя только двумя состояниями означает, что мы работаем с цифровым сигналом.

Но что делать, если нам нужно зажечь этот самый светодиод только на половину яркости? Или запустить двигатель, на 30% его мощности? Для решения этой задачи используют подход, называемый широтно-импульсной модуляцией сигнала. О том, что такое ШИМ и как это работает, мы узнаем на сегодняшнем уроке.

Широтно-импульсная модуляция — ШИМ

Разберем понятие ШИМ на примере управления скоростью вращения двигателя постоянного тока. Поставим своей целью запустить мотор на 50% от его максимальной скорости. Пусть наш двигатель идеальный и чтобы достичь заданной скорости, нам нужно в единицу времени передавать на мотор в два раза меньше мощности. Как это сделать, не меняя источник питания?

Проведем мысленный эксперимент (а кто-то может и натуральный — ничего сложного). Возьмём мотор постоянного тока с массивным маховиком, закрепленным на валу (таким маховиком может служить колесо). Подадим питание от аккумулятора и мотор начнет набирать обороты. Через какое-то время, мотор достигнет номинальной мощности, а его ротор максимальной скорости вращения. Отключим питание, и мотор постепенно начнет замедляться вплоть до полной остановки.

Следующий опыт. Снова включим мотор, и когда его скорость достигнет половины от максимальной — выключим. Заметив, что скорость падает — снова включим. И так далее. Включая и выключая питание мотора, мы заставим ротор вращаться со скоростью, близкой к половине от максимальной!

Разумеется, в силу человеческой медлительности, мотор будет удерживать заданную скорость с некоторой погрешностью. Другими словами, скорость будет «плавать» вокруг заданного значения. Чтобы минимизировать эти отклонения, нам потребуется увеличить частоту переключений. Тут уже не обойтись без автоматики.

А как заставить мотор вращаться медленнее или быстрее? Количество переданной мотору энергии будет зависеть от отношения времени когда мотор включен — tвкл к времени когда он выключен — tвыкл.

ШИМ диаграмма

Так, для передачи мотору 50% мощности, tвкл будет равно tвыкл. Такой случай как раз изображен на графике. Чтобы мотор вращался еще медленнее, скажем с мощностью 25% от номинальной, придется время включения мотора уменьшить до этих самых 25% от общего периода управления T.

ШИМ диаграмма

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

Собственно, рассмотренный способ управления мощностью и называется широтно-импульсной модуляцией сигнала, а сокращённо — ШИМ. Теперь рассмотрим параметры которые характеризуют ШИМ сигнал и которые следует учитывать при написании программ для микроконтроллеров.

Коэффициент заполнения (duty cycle)

Начнем с самого главного параметра — коэффициента заполнения D (он же duty cycle). Этот коэффициент равен отношению периода ШИМ сигнала к ширине импульса:

Пример ШИМ сигнала для разных значений D:

Широтно-импульсная модуляция

Чем больше D, тем больше мощности мы передаем управляемому устройству, например, двигателю. Так, при D = 1 двигатель работает на 100% мощности, при D = 0,5 — наполовину мощности, при D = 0 — двигатель полностью отключен.

Кстати, кроме коэффициента заполнения для характеризации ШИМ применяют и другой параметр — скважность S. Эти два параметра связаны выражением:

Скважность, как и коэффициент заполнения — величина безразмерная. В отличие от D, она может принимать значения от 1 до бесконечности. Но чаще всего, особенно в англоязычных источниках, используют именно D.

Частота ШИМ

Частота ШИМ определяет период импульса — T (см картинку выше). Требования к этой частоте диктуются несколькими факторами, в зависимости от типа управляемого устройства.

В случае управления светодиодами одним из главных факторов становится видимость мерцания. Чем выше частота, тем менее заметно мерцание излучаемого света. Высокая частота также помогает снизить влияние температурных скачков, которые светодиоды не любят. На практике для светодиодов достаточно иметь частоту ШИМ в пределах 100-300 Гц.

С моторами постоянного тока дела обстоят немного иначе. С одной стороны, чем больше частота, тем более плавно и менее шумно работает мотор. С другой — на высоких частотах падает крутящий момент. Нужен баланс. Более подробно о моторах мы поговорим в одной из будущих статей, а пока рекомендуем для большинства DIY задач использовать частоту ШИМ 2кГц.

Плюс, общая проблема для всех случаев управления силовой нагрузкой — потери в цепях силовой коммутации (в транзисторах, и не только), которые увеличиваются с ростом частоты ШИМ. Чем больше частота, тем большее время транзисторы находятся в переходных состояниях, активно выделяя тепло и снижая эффективность системы.

Разрешение ШИМ

Ещё один важный параметр — разрешение ШИМ сигнала. Этот параметр показывает, с какой точностью мы можем менять коэффициент заполнения. Чем больше разрешение, тем плавнее будет меняться мощность на управляемом устройстве.

Например, у платы Ардуино с базовыми настройками, разрешение ШИМ — 256. То есть мы можем изменять сигнал от 0 до 255 — не густо, но для большинства DIY задач хватает.

Проверка на материнской плате

Итак, при включении питания платы, срабатывает защита. В первую очередь, необходимо проверить мультиметром сопротивление плеч стабилизатора.

Для этих целей также может быть использован тестер радиодеталей. Если одно из них показывает короткое замыкание, то есть, измеренное сопротивление составляет меньше 1 Ома, значит, пробит один из ключевых полевых транзисторов.

Выявление пробитого транзистора в случае, если стабилизатор однофазный, не составляет труда – неисправный прибор при проверке мультиметром показывает короткое замыкание. Если схема стабилизатора многофазная, а именно так питается процессор, имеет место параллельное включение транзисторов. В этом случае, определить поврежденный прибор можно двумя путями:

  1. произвести демонтаж транзистора и проверить мультиметром сопротивление между его выводами на предмет пробоя;
  2. не выпаивая транзисторы, замерить и сравнить сопротивление между затвором и истоком в каждой из фаз преобразователя. Поврежденный участок определяется по более низкому значению сопротивления.

Второй способ работает не во всех случаях. Если пробитый элемент определить не удалось, придется все же выпаять транзистор.

Далее производится замена поврежденного транзистора, а также, установка на место всех выпаянных в процессе диагностики радиоэлементов. После этого можно попытаться запустить плату.

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

Неисправности ШИМ контроллера могут проявляться так же, как и пробой мосфетов, то есть уходом блока питания в защиту. При этом проверка самих транзисторов на пробой результата не дает.

Кроме этого, следствием нарушения функций ШИМ контроллера может быть отсутствие выходного напряжения или его несоответствие номинальной величине. Для проверки ШИМ контроллера следует вначале изучить его даташит. Наличие высокочастотного напряжения в импульсном режиме, при отсутствии осциллографа, можно определить, используя тестер кварцев на микроконтроллере.

Тестирование ШИМ контроллера

Для тестирования контроллера будем использовать набор ячеек литиевых батарей с номинальным напряжением 80 В, которые применяются для данного электрического велосипеда. Контроллер временно подключен к аккумулятору и мотору, который прикреплен к велосипеду, чтобы приводить в движение заднее колесо. Поворачивая потенциометр по часовой стрелке, двигатель должен начать вращаться постепенно и увеличивать скорость, пропорциональную вращению ручки.

Чтобы проверить регулятор скорости на реальной нагрузке, надо смонтировать все на своем месте. Посмотреть как он держит нагрузку, вес, долгое время работы и воздействие атмосферной влажности (лучше покрыть плату лаком).

Признаки неисправности, их устранение

Перейдем к рассмотрению конкретных признаков неисправностей ШИМ контроллера.

Остановка сразу после запуска

Импульсный модулятор запускается, но сразу останавливается. Возможные причины: разрыв цепи обратной связи; блок питания перегружен по току; неисправны фильтровые конденсаторы на выходе.

Поиск проблемы: осмотр платы, поиск видимых внешних повреждений; измерение мультиметром напряжения питания микросхемы, напряжения на ключах (на затворах и на выходе), на выходных емкостях. В режиме омметра мультиметром надо измерить нагрузку стабилизатора, сравнить с типовым значением для аналогичных схем.

Импульсный модулятор не стартует

Возможные причины: наличие запрещающего сигнала на соответствующем входе. Информацию следует искать в даташите соответствующей микросхемы. Неисправность может быть в цепи питания ШИМ контроллера, возможно внутренне повреждение в самой микросхеме.

Шаги по определению неисправности: наружный осмотр платы, визуальный поиск механических и электрических повреждений. Для проверки мультиметром делают замер напряжений на ножках микросхемы и проверку их соответствия с данными в даташит, в случае необходимости, надо заменить ШИМ контроллер.

Проблемы с напряжением

Выходное напряжение существенно отличается от номинальной величины. Это может происходить по следующим причинам: разрыв или изменение сопротивления в цепи обратной связи; неисправность внутри контроллера.

Назначение выводов:

  • GND
    (Ground) — земля, общий провод;
  • VCC
    (Input Voltage) — напряжение питания;
  • FB
    (Feedback) — вход обратной связи для контроля напряжения;
  • OUT
    (Output) — выход для подключения для подключения к затвору ключевого MOSFET транзистора;
  • SEN
    (Current sense input pin) — датчик тока. Вход для подключения для подключения к стоку ключевого транзистора;
  • RI
    (Internal Oscillator frequency setting pin) — вход для подключения внешнего частотозадающего резистора. Вместо него на некоторых моделях микросхем присутствует вход
    CT
    или
    BNO
    ;
  • CT
    (Internal Oscillator frequency setting pin) — вход для подключения внешнего частотозадающего конденсатора;
  • BNO
    (Brownout Protection Pin) — вход для контроля минимального напряжения питания. Если на этом входе напряжение меньше порога — микросхема отключает подачу импульсов на выход OUT;

При подаче питания на вход VCC

контроллера поступает напряжение через резистор с диодного моста. Микросхема запускает процесс генерации импульсов. Дальнейшая подача питания происходит выпрямлением напряжения с нижней левой обмотки импульсного трансформатора.

Частота генерации микросхемы фиксированная. Она задается величиной резистора на входе RI

или конденсатора на входе
CT
.

Стабилизация напряжения устройства осуществляется за счет сравнения величины тока, протекающего через ключевой MOSFET-транзистор и напряжения обратной связи. Ток оценивается по величине падения напряжения на резисторе в цепи стока транзистора, который подключается к выводу SEN

. Напряжение обратной связи снимается с регулируемого стабилитрона TL431, проходит через оптопару и подается на вывод
FB
микросхемы. От значений напряжений на входах
SEN
и
FB
зависит величина скважности импульсов на выходе
OUT
.

Большинство из рассматриваемых здесь микросхем снабжены несколькими различными системами защиты, предотвращающими выход из строя при непредвиденных ситуациях:

  • OVP
    (Over Voltage Protection) — защита от превышения напряжения питания. При увеличении напряжения питания на входе
    VCC
    выше порогового значения (UOVP микросхема прекращает генерацию ШИМ-импульсов на выходе OUT).
  • UVLO
    (Under Voltage Lockout) — триггер Шмитта, разрешающий работу контроллера при достижении напряжения питания на входе VCC значения UVLO on и запрещающей работу при падении напряжения до значения UVLO off. Значения этих напряжений указаны в заводской документации.
  • OLP
    (Over Load Protection) — защита от перегрузки по току.
  • Некоторые микросхемы имеют вход BNO
    (Brownout Protection Pin) — вход защиты от пониженного напряжения питания и импульсных помех на нем. Если напряжение на этом выводе ниже порогового микросхема прекращает генерацию ШИМ-импульсов на выходе
    OUT
    ).

Существует группа ШИМ-контроллеров, включаемых по упрощенной

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

Таблица маркировки ШИМ-контроллеров в корпусе SOT23-6 (обычная маркировка).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *