Определяет ли прямоугольная природа ШИМ, какое сопротивление вам нужно?

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

Предположим, я хочу запитать 10 светодиодов с помощью ШИМ с помощью моего Mega 2560. У меня есть связка резисторов сопротивлением 200 Ом.

Я знаю, что Mega и большинство других плат Arduino могут безопасно обеспечивать общий ток до 200 мА. 200 мА / 10 — это максимум 20 мА на светодиод.

Используя резисторы сопротивлением 200 Ом, я могу рассчитать, какое напряжение обеспечит ток 20 мА:

V = 200 ohms * 20mA
V = 4V

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

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

Когда на каждом выводе напряжение 5 В, плата должна подавать питание

(5V / 200 ohms) * 10 = 250mA

Это выходит за рамки спецификации, поэтому я могу повредить плату. Верно?

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

Таким образом, чтобы быть в безопасности, мне нужно приобрести новые резисторы с сопротивлением:

5V / 20mA = 250 ohms

Все это верно?

, 👍3

Обсуждение

Просто чтобы проверить, собираетесь ли вы подключить все 10 светодиодов напрямую к одному выводу ШИМ? Это была бы очень плохая идея. В лучшем случае это просто не сработает. В худшем случае вы что-нибудь поджарите. (Каждый отдельный вывод способен вырабатывать лишь небольшой ток.), @Peter Bloomfield

Нет, на Меге отдельные пины, хотя спасибо., @Aurast

Mega может поддерживать общий ток 800 мА, распределенный по портам в соответствии с примечаниями, перечисленными в таблицах 30 или 31 (у меня нет под рукой таблицы данных). Выводы VCC и GND могут поддерживать ток 200 мА каждый, их по 4 штуки., @CrossRoads


2 ответа


Лучший ответ:

7

Это... по большей части неверно. По трем независимым причинам.

Сами светодиоды, как и все диоды, поглощают часть электровольтаического потенциала проходящего через них электричества, в результате чего в их цепи снижается напряжение. Это означает, что хотя для питания резистора и светодиода в цепи используется напряжение 5 В, через резистор проходит лишь часть этого напряжения. Если мы используем типичное (для синего, белого и других экзотических цветов) прямое напряжение (Vf) 2,8 В, это означает, что на резисторе имеется только 2,2 В. Для резистора сопротивлением 200 Ом это означает, что через цепь проходит только 11 мА. Если вы хотите, чтобы через светодиод проходил ток 20 мА, вам нужно вместо этого использовать сопротивление 110 Ом.

Во-вторых, напряжение на самих выводах микроконтроллера зависит от тока, проходящего через них. В разделе 32.7 таблицы данных ATmega2560 «Типичные характеристики — прочность драйвера вывода» приведены диаграммы зависимости напряжения от тока как для источника, так и для тока потребления; при токе 20 мА напряжение падает примерно до 4,5 В, а это означает, что сопротивление, необходимое для светодиода 2,8 В, падает со 110 Ом до 85 Ом.

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

,

Это глубже, чем я думал xD Итак, фактический ток, потребляемый Arduino, равен ((5 В — прямое напряжение) / сопротивление)?, @Aurast

Это будет близко к этому. Смотрите второй пункт., @Ignacio Vazquez-Abrams


0

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

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

На самом деле вам следует рассчитать значение резистора на основе падения напряжения светодиода и максимального тока:

Предположим, у вас есть красный светодиод с падением напряжения 1,8 В.

Питание 5 В - падение напряжения на светодиоде 1,8 = 3,2 В Если светодиод выдерживает максимум 15 мА, это будет 3,2/0,015 ≈ 213 Ом. Округлите значение резистора до ближайших 10 %, 220 Ом. Это даст вам около 14,8 мА через светодиод, что немного меньше максимального значения.

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

,