마이크로 컨트롤러를 사용하여 LED 스트립 켜기


12

나는 led 스트립에 온 60 개의 led가 있습니다. LED 스트립의 1 미터 길이에는 다음이 필요합니다.

  • 400 밀리 암페어
  • 12 볼트

마이크로 컨트롤러로 이러한 LED를 제어하고 싶습니다. TIP120 과 raspberryPi 를 사용 하려고 합니다.

라즈베리 파이 GPIO 핀 50 밀리 암페어 연속적으로 출력 할 수있다. (업데이트 : 이것은 사실이 아닙니다. 아래 참조)


나는 초보자이며, 내가 올바르게하고 있는지 잘 모르겠습니다. 모든 계산은 이 블로그에서 읽은 내용을 기반으로합니다 .


수학

베이스 전류 :

TIP120의 컬렉터 전류는 lc = 250 * lb이므로 1.6mA의베이스 전류가 필요합니다.

(1.6mA * 250 = 400)

라즈베리 파이는베이스 전류에 문제가 없어야합니다

베이스 저항 :

TIP120베이스가 포화 상태를 유지하지만 raspberryPi에 과부하가 걸리지 않도록 50mA 미만으로 유지되도록 충분히 낮은 저항이 필요합니다.

내가 언급 한 블로그에 따르면 Vbe (sat)를 찾아서 기본 저항을 찾습니다. 그림 2를 참조하십시오.

여기서 Vbe (sat)는 x 축에서 400이고, 컬렉터 전류는 y 축에서 약 1.3입니다.

여기에 이미지 설명을 입력하십시오

raspberryPi가 3.3V를 출력하면 2V
(3.3-1.3 )의 전압 강하가 있습니다

내 계산에 따르면 4 ~ 40 Ohms 사이의 저항이 필요합니다 .R = V / I
2 / (0.05 A) = 40 Ohms
2 / (0.50 A) = 4 Ohms
(업데이트 : 잘못된, 질문의 맨 아래 참조)

나는 아직도 나 자신을 아마추어라고 생각하고 내 머리 위로 조금있다.

  • 이 계산이 올바르게 보입니까?
  • TIP120이 작동합니까? (다른 제안은 환영합니다)
  • 회로도를 고려해야 할 다른 사항이 있습니까?

여기에 이미지 설명을 입력하십시오

최신 정보

답변에서 지적했듯이 밀리 암페어 등급을 10의 계수로 입력했습니다
.2 / (0.005 A) = 400 Ohms
2 / (0.050 A) = 40 Ohms

업데이트 2

라즈베리 파이의 핀이 제공 할 수있는 최대 전류에 약간의 안개가있는 것으로 보입니다. 안전을 위해 8mA라고 가정하겠습니다.

/raspberrypi/9298/what-is-the-maximum-current-the-gpio-pins-can-output

/raspberrypi/1130/what-is-the-nominal-gpio-pin-output-current

업데이트 3

Ada fruit는 마이크로 컨트롤러로 LED 스트립을 제어하는 ​​방법에 대한 훌륭한 블로그 기사를 썼습니다. 그녀는 STP16NF06 또는 TIP120을 권장합니다

https://learn.adafruit.com/rgb-led-strips/usage


2
GPIO 핀이 50mA를 공급할 수 있다고 생각하지 않습니다. + 3.3V 파워 레일 핀은 50mA를 공급할 수 있다고 생각합니다. 각 GPIO는 몇 밀리 암페어 만 소싱 할 수 있다고 생각합니다. BJT 대신 로직 레벨 MOSFET을 사용합니다. 연속 전류에 대해 걱정할 필요가 없습니다. IRLB8721은 많은 용도에 적합한 선택입니다. 나는이 사용이 자격이 있다고 생각합니다.
Jon Watte

@JonWatte 그것을 지적 해 주셔서 감사합니다. 더 나아 가기 전에 최대 전류를 다시 확인하겠습니다.
spuder

@JonWatte RPi 설계에서 전력 계산은 모든 GPIO를 동시에 3mA, 총 50mA로 계산했습니다. 당신은 주어진 시간에 더 적은을 가지고 전류를 증가시킬 수 있습니다. 또한 모든 주변 장치가 사용 중일 때 3.3v 레일에서 직접 50mA를 추가로 계산했습니다 (HDMI, 이더넷 및 sd 카드와 같은 모든 3.3v 레일에서 가져옴). 따라서 3.3v 레일에 직접 연결된 3.3v PINS와 BCM SOC의 3.3v GPIO는 다릅니다.
Passerby

질문을하기 전에 초보자가 자신의 연구를 수행하고 거의 끝까지 도달 한 경우 +1
pjc50

@Passerby GPIO 핀 중 하나에서 50mA를 공급하고 나머지는 유휴 상태로 유지하려고하면 GPIO 핀의 드라이버 단계를 태울 것입니다.
Jon Watte

답변:


6

당신은 거의 거기에 있습니다.

기본 저항 계산이 올바르지 않습니다. 계산에 따라 1.6mA 만 필요합니다 (콜렉터 전류는 별도 임).
데이터 시트를 살펴보면 최소 게인은 1000이고 최대베이스 이미 터 전압은 2.5V이므로 계산을 조정해야합니다. 1.6mA는 기본 전류에 대해 수행합니다 (항상 게인 스위치를 위해 여분의 것이 좋습니다) 채도 감소)) 최악의 경우 1.3V 대신 2.5V를 사용해야합니다 (그래프를 보면 최악의 경우 / 최대 값을 사용하는 것이 좋습니다. 그래프를 보면 여분의 Vbe가이 전류에서는 거의 없을 것 같습니다. 아래 두 그림 사이에 문제가 없어야합니다.)

그래서:

(3.3V-2.5V) / 1.4mA = 570Ω

또는

(3.3V-1.5V) / 1.4mA = ~ 1.2kΩ

이것은 잘 작동하지만 가장 효율적인 방법은 아닙니다. 트랜지스터 손실은 0.4A * Vce (sat) 이상이며 약 0.4A * 0.75V = 0.3W이며 R-pi는 적어도 필요합니다. 그것을 구동하기 위해 몇 mA 정도.
최신 로직 레벨 MOSFET은 훨씬 더 작을 수 있으며 (거의) 비전 류로 구동되며 거의 소멸되지 않습니다. 다음은 Farnell의 수천 중에서 임의로 선택한 FDC637BNZ 예제 부분입니다 .

여기에 이미지 설명을 입력하십시오


3

0.5A는 500 밀리 암페어입니다 ... 파이를 날려 버리게됩니다. 0.05는 50 밀리 암페어입니다. 그것이 상한입니다. 그럴 필요가 없습니다. 말한대로 1.6mA 만 있으면됩니다. 그러니 조금 버프하십시오. 3.3-1.3 = 2v 저항을 떨어 뜨려야합니다. 2v / 0.005A (5mA) = 400Ω. 다음으로 가장 큰 크기 인 470Ω으로 반올림하면베이스에서 ~ 4mA를 얻습니다.

이 수학 오류는 제쳐두고, TIP120은 LED 스트립이 사용하는 400mA에 대해 과도하게 사용 되더라도 잘 작동합니다. 고전류 곱셈을위한 달링턴 쌍입니다. PN2222와 같은 일반적인 단일 BJT 트랜지스터 (표준 To-92 패키지의 1A)로 충분합니다. 또는 스트립을 2 ~ 3 개로 분할하고 몇 개의 2n3904 (100 ~ 200mA)를 사용하고 다른 섹션을 다르게 플래시 할 수 있습니다 (물론 단일 GPIO에서 모든 드라이브를 구동하지 않는 한 동일한 숫자의 GPIO가 필요함) LED 스트립의 작은 부분을 구동하는 자체 기본 저항이있는 병렬 트랜지스터는 더 큰 트랜지스터를 얻을 수 없다면 더 작은 트랜지스터를 다루는 좋은 방법입니다.)

그리고 당신의 회로도는 모형에 충분합니다. 단일 컬러 LED 스트립은 사용하기에 매우 복잡한 회로가 아니기 때문에 일반적인 자리 표시 자 대신 올바른 부품을 사용하는 것 외에 개선 할 방법이 없습니다.


찾아 주셔서 감사합니다. 나는 계산을 오타했습니다. 올바른 정보로 질문을 업데이트했습니다.
spuder

1
달링턴 쌍의 단점은 트랜지스터의 전력을 소산시키는 비교적 높은 V (CE, sat)이다. 정기적 인 BJT는 그 측면에서 훨씬 더 잘 수행됩니다. @Passerby가 말했듯이 TIP120과 같은 짐승이 필요하지 않습니다.
jippie
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.