MOSFET ควรทำงานได้ดีมากสำหรับแอปพลิเคชันนี้ นี่คือสิ่งที่ต้องพิจารณา:
1:
เมื่อใช้ FET เพื่อขับเคลื่อนการโหลดคุณสามารถเลือกการกำหนดค่าด้านสูงหรือด้านต่ำ High-side วาง FET ไว้ระหว่างรางไฟฟ้าและโหลดและอีกด้านหนึ่งของโหลดเชื่อมต่อกับกราวด์ ในการกำหนดค่าต่ำด้านหนึ่งนำของโหลดเชื่อมต่อกับรางไฟฟ้าและ FET อยู่ในตำแหน่งระหว่างโหลดและกราวด์:
วิธีที่ง่ายที่สุดในการขับเคลื่อนมอเตอร์ของคุณ (หรือโหลดอื่น ๆ ) คือการใช้ N-Channel MOSFET ในการกำหนดค่าด้านต่ำ N-FET เริ่มทำงานเมื่อแรงดันเกตของประตูสูงกว่าแหล่งกำเนิด เนื่องจากแหล่งสัญญาณเชื่อมต่อกับกราวด์จึงสามารถขับเคลื่อนเกตด้วยตรรกะเปิด - ปิดปกติ มีเกณฑ์ที่แรงดันเกตต้องเกิน ("Vth") ก่อนที่ FET จะดำเนินการ FET บางตัวมี Vth ในหลักสิบโวลต์ คุณต้องการ N-FET "ระดับตรรกะ" ที่มีขีด จำกัด ที่น้อยกว่า Vcc ของคุณมาก
มีข้อเสียสองประการสำหรับการกำหนดค่า FET ที่ด้านล่าง:
ขดลวดมอเตอร์เชื่อมต่อโดยตรงกับรางไฟ เมื่อ FET ปิดอยู่การม้วนทั้งหมดจะ "ร้อน" คุณกำลังเปลี่ยนพื้นไม่ใช่การเชื่อมต่อพลังงาน
มอเตอร์จะไม่มีการอ้างอิงภาคพื้นจริง ศักยภาพต่ำสุดจะสูงกว่าพื้นดินโดยแรงดันไฟฟ้าไปข้างหน้าของ FET
สิ่งเหล่านี้ไม่ควรสำคัญในการออกแบบของคุณ อย่างไรก็ตามพวกเขาอาจมีปัญหาหากคุณไม่คาดหวัง! โดยเฉพาะอย่างยิ่งกับวงจรกำลังสูง :)
เพื่อแก้ไขปัญหาเหล่านี้คุณสามารถใช้ P-FET ในการกำหนดค่าระดับสูง แม้ว่าวงจรการขับขี่จะซับซ้อนกว่านี้เล็กน้อย โดยทั่วไปแล้วสวิตช์ P-FET จะดึงประตูขึ้นสู่รางไฟฟ้า รางไฟนี้สูงกว่า Vcc ของ uC ดังนั้นคุณจึงไม่สามารถเชื่อมต่อหมุด I / O ของ uC เข้ากับเกตได้โดยตรง วิธีแก้ปัญหาทั่วไปคือการใช้ N-FET ขนาดเล็กที่อยู่ด้านล่างเพื่อดึงเกทของ P-FET ที่อยู่ด้านสูงลง:
R1 และ R3 มีอยู่เพื่อไม่ให้ FET ปิดจนกว่าจะขับเคลื่อน Q2 คุณจะต้อง R3 แม้ในการกำหนดค่าด้านต่ำ
ในกรณีของคุณฉันคิดว่า N-FET แบบ low-side ที่เรียบง่าย (ด้วย R3) จะให้บริการคุณได้ดีขึ้น
2:
ประกาศ R2 ในแผนภาพสุดท้าย เกท MOSFET ทำหน้าที่เป็นตัวเก็บประจุซึ่งจะต้องชาร์จประจุก่อนที่กระแสระบายออกจะเริ่มไหล อาจมีกระแสไฟไหลเข้าที่สำคัญเมื่อคุณให้พลังงานครั้งแรกดังนั้นคุณต้อง จำกัด กระแสไฟฟ้านี้เพื่อป้องกันความเสียหายที่จะเกิดกับไดรเวอร์เอาต์พุตของ uC ฝาครอบจะดูเหมือนสั้น ๆ ในทันทีดังนั้นจึงไม่จำเป็นต้องมีข้อผิดพลาดขนาดใหญ่ ตัวอย่างเช่น Atmel ของคุณสามารถส่ง 40mA ได้ 3.3V / 35mA => 94.3 โอห์ม ตัวต้านทาน 100 โอห์มจะทำงานได้ดี
อย่างไรก็ตามตัวต้านทานนี้จะชะลอเวลาเปิดและปิดของ FET ซึ่งจะทำให้ขีด จำกัด บนของความถี่การสลับของคุณ นอกจากนี้ยังเป็นการยืดระยะเวลาที่ FET อยู่ในภูมิภาคเชิงเส้นของการใช้งานซึ่งสิ้นเปลืองพลังงาน หากคุณสลับที่ความถี่สูงอาจเป็นปัญหา ตัวบ่งชี้หนึ่งคือถ้า FET ร้อนเกินไป!
วิธีแก้ไขปัญหานี้คือใช้ไดรเวอร์ FET มันเป็นบัฟเฟอร์ที่มีประสิทธิภาพซึ่งสามารถจ่ายกระแสได้มากกว่าและสามารถชาร์จเกตได้เร็วขึ้นโดยไม่จำเป็นต้องมีตัวต้านทาน จำกัด นอกจากนี้ไดรเวอร์ FET ส่วนใหญ่สามารถใช้รางพลังงานสูงกว่า Vcc ทั่วไป แรงดันไฟฟ้าเกตที่สูงขึ้นนี้จะลดความต้านทานต่อ FET และประหยัดพลังงานเพิ่มเติม ในกรณีของคุณคุณสามารถขับเคลื่อน FET Driver ด้วย 3.7V และควบคุมด้วย 3.3V ของ uC
3:
ในที่สุดคุณจะต้องการใช้ไดโอด Schottky เพื่อป้องกันแรงดันไฟฟ้าที่เกิดจากมอเตอร์ ทำเช่นนี้เมื่อใดก็ตามที่คุณเปลี่ยนโหลดอุปนัย:
ขดลวดมอเตอร์เป็นตัวเหนี่ยวนำขนาดใหญ่ดังนั้นมันจะต้านทานการเปลี่ยนแปลงใด ๆ ในการไหลของกระแส ลองจินตนาการว่ากระแสนั้นไหลผ่านคดเคี้ยวแล้วคุณจะปิด FET ตัวเหนี่ยวนำจะทำให้กระแสไฟฟ้าไหลออกจากมอเตอร์อย่างต่อเนื่องเมื่อสนามไฟฟ้ายุบตัว แต่ปัจจุบันไม่มีสถานที่ที่จะไป! ดังนั้นมันจึงเจาะผ่าน FET หรือทำอย่างอื่นที่ทำลายล้าง
Schottky วางขนานกับโหลดทำให้เส้นทางปลอดภัยสำหรับกระแสที่จะเดินทาง แรงดันไฟฟ้าพุ่งสูงสุดที่แรงดันไปข้างหน้าของไดโอดซึ่งเป็นเพียง 0.6V ที่ 1A สำหรับคนที่คุณระบุ
ภาพก่อนหน้านี้การตั้งค่าด้านต่ำพร้อมกับ flyback diode นั้นง่ายราคาไม่แพงและมีประสิทธิภาพมาก
ปัญหาเดียวที่ฉันเห็นเมื่อใช้โซลูชัน MOSFET ก็คือมันเป็นทิศทางเดียวโดยเนื้อแท้ L293D ดั้งเดิมของคุณคือไดรเวอร์ฮาล์ฟบริดจ์หลายตัว ทำให้สามารถขับมอเตอร์ได้ทั้งสองทิศทาง การถ่ายภาพเชื่อมต่อมอเตอร์ระหว่าง 1Y ถึง 2Y L293D สามารถสร้าง 1Y = Vdd และ 2Y = GND และมอเตอร์หมุนไปในทิศทางเดียว หรืออาจทำให้ 1Y = GND และ 2Y = Vdd และมอเตอร์ก็จะหมุนไปทางอื่น ค่อนข้างมีประโยชน์
ขอให้โชคดีและสนุก!