lnwshop logo
  • ตอบกระทู้
  • ตั้งกระทู้ใหม่
QUOTE 

สอบถามครับ Arduino เกี่ยวกับการจ่ายไฟ led strip 12v ครับ

ken
ken
IP: 223.207.231.x
1 ปีที่ผ่านมา

คือผมเขียนโค๊ดหรี่ไฟให้กับ led strip 12v ครับ แต่แรงดันของ Arduino ไม่พอครับ พอจะมี พวก ไอชีขยายไฟให้ LED ตัวนี้ แบบบอร์ด Arduino ไม่พังใหมครับ (ทำบอร์ดพังมา 1 บอร์ดละครับ Cry)

ถ้ามีรบกวนแนะนำอุปกรณ์ที่ร้านหน่อยนะครับเพราะผมซื้อจากเว็ปนี้มาหลายชิ้นละครับ Laughing

(stk500_getsync(): not in sync: resp=0x01 อาการของบอร์ด Arduino ครับไม่รู้ว่าพังจริงป่าว)

led strip 12v ที่ผมใช้ มี 2 เส้น ครับ

 

วงจรนี้ครับที่ผมทำบอร์ดพัง ผมใช้ ไอซี 7812 ถ่านเป็น อะแดปเตอร์ 12 V คือทดสอบแล้วครับ ไอซี 7812 ร้อนมาก และไม่สามารถหรี่ไฟได้ แต่ถ้าเราถอดสายแดงตรง ไอซี 7812  ออก สามารถหรี่ได้ครับแต่ไฟออ่นมากคล้ายกับว่าไฟไม่พอครับ แต่พอเสียวสายแดงเข้าไปตรง ไอซี 7812  ไฟสว่างมากแต่โค๊ดไม่สามารทำงานได้ครับ

 

และผมไปค้นวิธีใหม่มาครับไม่รู้ว่าแบบนี้จะเวิร์คป่าวครับ เขาใช้ ULN2803 ครับ

โค๊ดที่ผมใช้ทดลองครับ

#define PIN 11 // control pin
#define DELAY 10 // 20ms internal delay; increase for slower fades

void setup() {
pinMode(PIN, OUTPUT);
}

void loop() {
// fade in
for(int i=0; i<255; i++) {
analogWrite(PIN, i);
delay(DELAY);
}

// fade out
for(int i=0; i<255; i++) {
analogWrite(PIN, 255-i);
delay(DELAY);
}
}

QUOTE 
ความคิดเห็นที่ #1
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

ถ้าใช้ขา Arduino จะขับกระแสได้สูงสุดแค่ 50mA ต้องเพิ่มวงจรขยายสัญญาณ

ถ้าต่อแบบรูปแล้วเป็นไอซี 7812 เป็นวงจรเรกูเลตนะครับ ถ้าวงจรขยายสัญญาณ ต้องใช้ทรานซิสเตอร์

ปัญหานี้เกิดจากกระแสไม่พอ ใช้ ULN2003 / ULN2803 ขยายสัญญาณตามรูปได้ครับ

ภายในไอซี เป็น array transistor พร้อมไดโอดป้องกันไฟย้อนกลับ จำนวน 7 / 8 ช่อง ออกแบบมาสำหรับงานเช่น ขับมอเตอร์ รีเลย์ หรือ LED ขับกระแสได้สูงสุดถึงช่องละ 500mA

แต่ถ้ายังขับไม่พออาจจะใช้  mosfet เบอร์ IRF540 ขับได้สูงสุด 9000mA หรือ 9A อย่าลืมติดแผ่นระบายความร้อนด้วยครับ

http://joost.damad.be/2012/09/dimming-12v-led-strip-with-mosfet-and.html

 

 

 

QUOTE 
ความคิดเห็นที่ #2
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

สำหรับ stk500_getsync(): not in sync: resp=0x01 

แปลว่าอัพโหลดไม่สำเร็จติดต่อชิฟ arduino ไม่ได้

วิธีแก้ ถ้าโชคดีลง bootloader ตามหน้าบทความเรื่อง arduino stand alone อาจจะหาย

ถ้าไม่หายอาจเป็นไปได้ว่าชิฟ Atmega328P มีปัญหาครับ

QUOTE 
ความคิดเห็นที่ #3
ken
ken
IP: 223.207.231.x
1 ปีที่ผ่านมา

ถ้าผมใช้ ULN2003 / ULN2803 ขยายสัญญาณตามรูป โดยใช้อะแดปเตอร์ 12 V  6A เป็นตัวเพิ่มแรงดันเข้าไปแสดงว่าอาจจะได้ใช่ป่ะครับ

QUOTE 
ความคิดเห็นที่ #4
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

จ่ายกระแส 6A ตาม datasheet ไอซีขับกระแสได้สูงสุด 500mA ต่อช่องครับ กระแสไฟอีก 5.5A จะไม่ได้ใช้งานนะครับ

QUOTE 
ความคิดเห็นที่ #5
ken
ken
IP: 171.5.193.x
1 ปีที่ผ่านมา

ถ้าผมใช้ตัวนี้สามารถชับหลอดให้ติดใหมครับ

(สั่งงานแบบ PWM นะครับ)

ถ้่าตัวนี้ทำได้พอจะมีวิธีการต่อหรือไม่ครับ

อ้างอิง Power Electronic Switch Relay รีเลย์แบบอิเล็กทรอนิกส์ Switch MOS FET Relay Driver Module Power Electronic Switch Relay

 

ตามตัวอย่างโค๊ดหรี่ไฟ

#define PIN 11 // control pin #define DELAY 10 // 20ms internal delay; increase for slower fades void setup() { pinMode(PIN, OUTPUT); } void loop() { // fade in for(int i=0; i<255; i++) { analogWrite(PIN, i); delay(DELAY); } // fade out for(int i=0; i<255; i++) { analogWrite(PIN, 255-i); delay(DELAY); } }

 

QUOTE 
ความคิดเห็นที่ #6
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

ได้ครับ เป็น mosfet เบอร์ IRF540 ขับได้สูงสุด 9000mA หรือ 9A อย่าลืมติดแผ่นระบายความร้อนด้วยครับ

http://joost.damad.be/2012/09/dimming-12v-led-strip-with-mosfet-and.html

QUOTE 
ความคิดเห็นที่ #7
ken
ken
IP: 171.5.193.x
1 ปีที่ผ่านมา

พอจะมีวิธีการต่อตัวนี้ ใหมครับ

แบบนี้ใช่หรือไม่ครับ

 

3 ขา จากบอร์ด มี 5v GND PWM 

Vin Gnd คือ ไฟเข้า 12V

V+ V- คือ ไฟออกเข้าหลอด

ใช่ป่ะครับ เผื่อชื้อมาจะได้ไปถูกครับ

 

 

QUOTE 
ความคิดเห็นที่ #8
เจ้าของร้าน
เจ้าของร้าน
1 ปีที่ผ่านมา

ใช่ครับต่อตามนี้ จากการทดลอง LED ทั้งเส้นนี้ ใช้กระแสไฟประมาณ 500mA

ขับจากขา arduino โดยตรงไม่ได้ เพราะขับได้แค่ 50mA

จึงต้องมีวงจรขยายสัญญาณ ถ้าใช้ MOSFET IRF520N ขยายสัญญาณสามารถขับได้ถึง 9,000mA

/*การต่อใช้งาน โคด Arduino MOSFET IRF520N

 

  • SIG = D9
  • VCC = 5V
  • GND = GND
  • VIN = ไฟระหว่าง 0-24V ขั้วบวก
  • GND = ไฟขั้วกราวน์
  • V+ = ไฟบวกของอุปกรณ์
  • V- = ไฟกราวน์ของอุปกรณ์

 

*/

int led = 9;
void setup() {
  pinMode(led, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  for(int i=10;i<255;i++){
    analogWrite(9,i);
    delay(5);
  }
  for(int i=255;i>10;i--){
    analogWrite(9,i);
    delay(5);
  }
}

 

1
แสดงความคิดเห็นที่ 1-8 จากทั้งหมด 8 ความคิดเห็น
ข้อความ
ชื่อผู้โพส
ข้อมูลสำหรับการติดต่อกลับ (ไม่เปิดเผย เห็นเฉพาะเจ้าของร้าน)
อีเมล
เบอร์มือถือ
  • ตอบกระทู้

หมวดหมู่สินค้า

สมาชิก Arduino All

เข้าสู่ระบบด้วย
เข้าสู่ระบบ
สมัครสมาชิก

ยังไม่มีบัญชีเทพ สร้างบัญชีใหม่ ไม่เกิน 5 นาที
สมัครสมาชิก (ฟรี)

Arduino All ขายดี

รหัสสินค้า A015
275.00 บาท
  • สั่งซื้อ
รหัสสินค้า A233
5.00 บาท
  • สั่งซื้อ
รหัสสินค้า A115
10.00 บาท
  • สั่งซื้อ
รหัสสินค้า A238
4.00 บาท
  • สั่งซื้อ
รหัสสินค้า A097
4.00 บาท
  • สั่งซื้อ
รหัสสินค้า A014
90.00 บาท
  • สั่งซื้อ
รหัสสินค้า A474
5.00 บาท
  • สั่งซื้อ
รหัสสินค้า A237
4.00 บาท
  • สั่งซื้อ
รหัสสินค้า A225
5.00 บาท
  • สั่งซื้อ
Go to Top