Lái động cơ DC với MOSFET và vi điều khiển?


13

Tôi đang phát triển một quad quad nano sử dụng bộ vi điều khiển Atmega328, hoạt động ở mức 3,3V và các động cơ DC được chải rất nhỏ. Dòng điện trung bình được sử dụng bởi các động cơ này là khoảng 800mA @ 3.7V.

Ban đầu, để lái chúng, tôi đã sử dụng trình điều khiển động cơ L293D nhưng thành phần này khá kém hiệu quả. Dòng điện được đo khi các động cơ chạy ở công suất tối đa là khoảng 500mA và do đó lực đẩy thấp hơn nhiều.

Bây giờ, để giải quyết vấn đề này, tôi sẽ thay thế trình điều khiển động cơ đó bằng 4 MOSFET mức logic. Sau một hồi tìm kiếm, tôi tìm thấy cái này (2SK4033).

Bạn có biết nếu nó nên làm việc? Tôi có phải sử dụng nó kết hợp với một diode? Nếu câu trả lời là "có", thì cái này (MBR360RLG) thì sao?

Tôi cũng chọn những thành phần này vì tôi có thể mua chúng từ cùng một cửa hàng trực tuyến.


2
Andy đã trả lời phần MOSFET trong câu hỏi của bạn, nhưng không ai đề cập đến một câu hỏi cơ bản hơn: làm thế nào để bạn có kế hoạch thay thế L293D đó bằng 4 N MOSFET? Đặt một MOS MOS N lên phía cao có thể gây ra vấn đề hiệu quả. Một bản vẽ sơ đồ có thể giúp làm cho ý tưởng của bạn rõ ràng.
Laszlo Valko

Bạn có ý nghĩa gì với "phía cao"? Tại thời điểm này, sơ đồ duy nhất mà tôi có là cái có L293D. Nếu nó có thể giúp, tôi có thể gửi nó. Ý tưởng của tôi là mỗi động cơ được điều khiển bởi một mosfet (4 tổng thể) và nếu cần, một diode cũng vậy. Điều gì có thể là một giải pháp hiệu quả hơn?
supergiox

Mỗi đầu ra L293D bao gồm một bóng bán dẫn "phía cao" (giữa Vcc và đầu ra) và bóng bán dẫn "phía thấp" (giữa GND và đầu ra). Nếu bạn thay thế bóng bán dẫn "phía cao" bằng N MOSFET, bạn sẽ cần một nguồn cung cấp năng lượng có thể cung cấp VSS (ít nhất là 2..3..4V) trên điện áp đầu ra. Hoặc tối đa. điện áp đầu ra sẽ là Vcc - Vss ...
Laszlo Valko

VSS phải là 3,3V và đầu ra (Vds) phải là 3,7V (cùng điện áp của pin, là duy nhất). Vì vậy, nếu có vấn đề này, tôi phải làm thế nào? Bạn có thể đề xuất một giải pháp khác?
supergiox

2
Bạn có các tùy chọn sau: a) sử dụng P MOSFET cho phía cao; b) sử dụng bộ nhân đôi điện áp hoặc mạch chuyển đổi DC-DC riêng biệt để cung cấp 2 * Vcc để điều khiển các cổng MOSFET phía cao; c) sử dụng mạch bootstrap để cung cấp điện áp Vout + Vcc thích hợp để điều khiển các cổng MOSFET phía cao. Mỗi cái đều có nhược điểm và / hoặc hạn chế.
Laszlo Valko

Câu trả lời:


17

MOSFE nên hoạt động rất tốt cho ứng dụng này. Dưới đây là một số điều cần xem xét:

1:

Khi sử dụng FET để điều khiển tải, bạn có thể chọn cấu hình bên cao hoặc bên thấp. Phía cao đặt FET ở giữa đường ray điện và tải, và phía bên kia của tải được nối với mặt đất. Trong cấu hình phía thấp, một dây dẫn của tải được kết nối với đường ray điện và FET được đặt giữa tải và mặt đất:

HighVsLow

Cách đơn giản nhất để điều khiển động cơ của bạn (hoặc tải khác) là sử dụng MOSFET kênh N trong cấu hình phía thấp. Một N-FET bắt đầu tiến hành khi điện áp cổng cao hơn nguồn của nó. Vì nguồn được kết nối với mặt đất, cổng có thể được điều khiển bằng logic bật tắt thông thường. Có một ngưỡng mà điện áp cổng phải vượt qua ("Vth") trước khi FET tiến hành. Một số FET có Vth trong hàng chục volt. Bạn muốn có một N-FET "mức logic" với ngưỡng nhỏ hơn đáng kể so với Vcc của bạn.

Có hai nhược điểm đối với cấu hình FET phía thấp:

  • Các cuộn dây động cơ được kết nối trực tiếp với đường sắt điện. Khi FET tắt, toàn bộ cuộn dây sẽ "nóng". Bạn đang chuyển đổi mặt đất, không phải kết nối nguồn.

  • Các động cơ sẽ không có một tài liệu tham khảo mặt đất thực sự. Tiềm năng thấp nhất của nó sẽ cao hơn mặt đất bởi điện áp chuyển tiếp của FET.

Cả hai điều này đều không quan trọng trong thiết kế của bạn. Tuy nhiên, chúng có thể có vấn đề nếu bạn không mong đợi chúng! Đặc biệt với các mạch công suất cao hơn :)

Để khắc phục những vấn đề này, bạn có thể sử dụng P-FET trong cấu hình phía cao. Các mạch lái xe trở nên phức tạp hơn một chút, mặc dù. Một công tắc P-FET thường có cổng được kéo lên đường ray điện. Đường ray công suất này cao hơn Vcc của uC, vì vậy bạn không thể kết nối trực tiếp các chân I / O của uC với cổng. Một giải pháp phổ biến là sử dụng N-FET phía thấp nhỏ hơn để kéo xuống cổng P-FET phía cao:

DualFet

R1 và R3 tồn tại để giữ FET tắt cho đến khi Q2 được điều khiển. Bạn sẽ cần R3 ngay cả trong một cấu hình bên thấp.

Trong trường hợp của bạn, tôi nghĩ rằng một N-FET đơn giản (với R3) sẽ phục vụ bạn tốt hơn.


2:

Lưu ý R2 trong sơ đồ cuối cùng. Một cổng MOSFET hoạt động như một tụ điện, phải sạc điện trước khi dòng nguồn thoát bắt đầu chảy. Có thể có dòng vào đáng kể khi bạn cung cấp năng lượng lần đầu tiên, vì vậy bạn cần hạn chế dòng điện này để tránh làm hỏng trình điều khiển đầu ra của uC. Giới hạn sẽ chỉ trông giống như một đoạn ngắn ngay lập tức vì vậy không cần phải có một lỗi sai lớn. Ví dụ, Atmel cụ thể của bạn có thể nguồn 40mA. 3,3V / 35mA => 94,3 Ohm. Một điện trở 100 Ohm sẽ hoạt động tuyệt vời.

Tuy nhiên, điện trở này sẽ làm chậm thời gian bật và tắt của FET, điều này sẽ đặt giới hạn trên cho tần số chuyển đổi của bạn. Ngoài ra, nó kéo dài thời gian mà FET ở trong khu vực hoạt động tuyến tính, gây lãng phí điện năng. Nếu bạn đang chuyển đổi ở tần số cao, đây có thể là một vấn đề. Một chỉ số là nếu FET quá nóng!

Một giải pháp cho vấn đề này là sử dụng Trình điều khiển FET. Chúng là bộ đệm hiệu quả có thể cung cấp nhiều dòng điện hơn và do đó có thể sạc cổng nhanh hơn mà không cần điện trở giới hạn. Ngoài ra, hầu hết các Trình điều khiển FET có thể sử dụng đường ray công suất cao hơn Vcc thông thường. Điện áp cổng cao hơn này làm giảm điện trở của FET, tiết kiệm năng lượng bổ sung. Trong trường hợp của bạn, bạn có thể cấp nguồn cho Trình điều khiển FET với 3.7V và điều khiển nó với 3.3V của uC.

FetDriver


3:

Cuối cùng, bạn sẽ muốn sử dụng một diode Schottky để bảo vệ chống lại sự đột biến điện áp gây ra bởi động cơ. Làm điều này bất cứ khi nào bạn chuyển đổi tải quy nạp:

LowSideWithDiode

Một cuộn dây động cơ là một cuộn cảm lớn, vì vậy nó sẽ chống lại mọi thay đổi trong dòng chảy hiện tại. Hãy tưởng tượng rằng dòng điện đang chảy qua cuộn dây, và sau đó bạn tắt FET. Độ tự cảm sẽ làm cho dòng điện tiếp tục chảy từ động cơ khi điện trường sụp đổ. Nhưng, không có nơi nào để hiện tại đi! Vì vậy, nó đấm qua FET, hoặc làm một cái gì đó khác chỉ là phá hoại.

Schottky, được đặt song song với tải, tạo đường dẫn an toàn cho dòng điện di chuyển. Sự tăng vọt điện áp tối đa ở điện áp chuyển tiếp của diode, chỉ 0,6V tại 1A cho điện áp bạn đã chỉ định.

Hình ảnh trước đây, một cấu hình bên thấp với diode flyback, dễ dàng, không tốn kém và khá hiệu quả.


Vấn đề duy nhất khác mà tôi thấy khi sử dụng giải pháp MOSFET là nó đơn phương. L293D ban đầu của bạn là một trình điều khiển nửa cầu. Điều này làm cho nó có thể lái xe máy theo cả hai hướng. Hình ảnh kết nối một động cơ giữa 1Y và 2Y. L293D có thể tạo 1Y = Vdd và 2Y = GND và động cơ quay theo một hướng. Hoặc, nó có thể tạo 1Y = GND và 2Y = Vdd, và động cơ sẽ quay theo cách khác. Khá tiện dụng.

Chúc may mắn và vui vẻ!


Đẹp! Tôi có cần một điện trở giữa micro dẫn và cổng không? 220 Ohm là một giá trị tốt? (3,3V / 0,02A = 170 Ohm ~ 220 Ohm)
supergiox

1
Câu hỏi hay. Trong thế giới lý tưởng, cánh cổng sẽ không chìm bất kỳ dòng điện nào cả. Đó là một trong những lợi ích của FET so với BJT. Nhưng, trong thế giới thực, cổng hoạt động như một tụ điện nhỏ, phải sạc điện trước khi dòng nguồn thoát bắt đầu chảy. Bạn muốn sạc nhanh, bật FET nhanh. Khi bạn lần đầu tiên bật pin uC, điện dung cổng xuất hiện dưới dạng ngắn mạch. ATmega328 có thể nguồn 40mA mỗi pin. Cái mũ sẽ chỉ trông giống như một cái ngắn ngay lập tức, vì vậy tôi sẽ không bận tâm với quá nhiều lỗi. Nói, 3,3V, 35mA: ~ 100-Ohm. Tôi sẽ hợp nhất cái này vào sau, hôm nay!
bitsmack 18/03/2016

1
Ồ, và nếu bạn đang chuyển động cơ ở tần số cao, điện trở này trở thành một vấn đề. Nó làm chậm quá trình sạc và xả cổng, làm chậm tần số chuyển mạch của bạn. Ngoài ra, nó kéo dài thời gian mà FET ở trong khu vực hoạt động tuyến tính, gây lãng phí điện năng. Nếu bạn thấy rằng đây là một vấn đề, hãy sử dụng "Trình điều khiển FET" hoặc một số bộ đệm khác, điều đó được tạo ra cho nguồn / chìm dòng điện cao hơn nhiều đến / từ cổng. Sau đó, bạn có thể giảm thiểu (hoặc loại bỏ) resister.
bitsmack 18/03/2016

Tôi nghĩ rằng tần số chuyển đổi là tần số pwm, vì vậy nó phải là khoảng 500Hz.
supergiox

1
Đẹp :) Tôi ghen tị; Tôi đã muốn xây dựng một máy photocopy quad từ khá lâu rồi! Hãy cho chúng tôi biết ...
bitsmack

12

Đây là những gì tôi sẽ xem xét cho bất kỳ MOSFET. Đây là từ bảng dữ liệu của 2SK4033: -

nhập mô tả hình ảnh ở đây

Bạn nói 800mA là dòng điện trung bình, nhưng điều này có thể tăng lên hơn 1A khi tải không? Dù sao, ở 1A và với điện áp ổ đĩa 3,3V, MOSFET giảm khoảng 0,15V trên các thiết bị đầu cuối của nó khi cấp nguồn cho tải 1A. Bạn có thể sống với tổn thất điện năng này (150mW) và quan trọng hơn, khi điện áp pin giảm xuống dưới 3V, bạn có thể sống với hiệu suất bị mất khi điện áp cổng không thể tránh khỏi.

Chỉ có bạn mới có thể trả lời câu hỏi này. Có nhiều MOSFE tốt hơn thế này nhưng bạn phải tính toán dòng tải thực cho động cơ mà bạn mong đợi nhìn thấy.

EDITS

Đây là một con chip mà tôi đã tìm thấy có thể khá hữu ích thay cho MOSFET. Đó là DRV8850 từ TI. Nó chứa hai nửa cầu và điều này có nghĩa là nó có thể điều khiển độc lập hai trong số 4 động cơ mà không cần điốt flyback (thực tế, FET hàng đầu đang hoạt động như một bộ chỉnh lưu đồng bộ và điều này tất nhiên làm giảm tổn thất). Điện trở trên cho mỗi FET là 0,045 ohms và nó được đánh giá ở mức 5A (công suất tiêu tán khoảng 1,1 watt), nhưng với điều kiện OP muốn khoảng 1A thì điều này trở nên rất tầm thường. Phạm vi điện áp nguồn là 2V đến 5,5V nên một lần nữa điều này rất phù hợp: -

nhập mô tả hình ảnh ở đây


Cảm ơn rất nhiều. Có, các động cơ có thể tăng dòng điện lên một giá trị hơn 1A, nhưng chỉ trong một thời gian ngắn. Một quy tắc pratical mà tôi biết là xem xét một dòng điện là gấp đôi mức trung bình (1.6A). Tôi nghĩ rằng 150mW mất điện không phải là một vấn đề lớn.
supergiox

Điều gì về điện áp pin thấp hơn khi ổ đĩa cổng kém hơn và tổn thất trở nên lớn hơn. Tôi đang chơi quỷ ủng hộ tất nhiên!
Andy aka

Về điện áp pin giảm xuống dưới 3V, tôi không biết tôi có hiểu ý bạn không. Dù sao, tôi sử dụng bộ điều chỉnh điện áp (LE33CZ) để cấp nguồn cho ATmega ở mức 3,3V. Điều đó không có nghĩa là điện áp "luôn luôn" 3,3V sao? Thêm một câu hỏi nữa. Diode thì sao?
supergiox

1
Khi điện áp pin giảm xuống còn 3,4 volt, đầu ra của bộ điều chỉnh cũng sẽ bắt đầu giảm và điều này có nghĩa là ổ đĩa vôn đến cổng bắt đầu giảm và các máy bay trở nên kém hiệu quả hơn. Đối phó với kịch bản này trước khi điốt. Các điốt là tầm thường trong so sánh.
Andy aka

1
Bạn có cần một Fet để điều khiển mỗi động cơ hoặc hai. Laszlo giả định rằng bạn cần 2 vì ban đầu bạn đã sử dụng L293.
Andy aka

6

Vì một động cơ DC được chải đang được sử dụng, bạn không nhất thiết phải có Cầu H làm ổ đĩa. Chỉ có hai trường hợp thực sự cần một cây cầu H; cần phải chuyển động bên ngoài động cơ (ví dụ như động cơ PM không chổi than) hoặc cần quay ngược lại. Không ai trong số này dường như áp dụng ở đây. Sử dụng một hướng hoặc Ổ đĩa đơn Quadrant (SQD) sẽ đơn giản hóa rất nhiều những gì bạn đang cố gắng thực hiện.

FET mà bạn đang nghĩ đến việc sử dụng (2SK4033) không phải là một kết hợp tuyệt vời cho điện áp ổ đĩa có sẵn (Andy đã chỉ ra lý do tại sao) và chúng ta sẽ tìm hiểu thêm chi tiết về cách chọn FET sau.

Lái xe động cơ DC chải với một ổ đĩa Quadrant (SQD)

Vth

nhập mô tả hình ảnh ở đây

VωRwindRgRpdVbVdrv là điện áp từ trình điều khiển FET.

ImIdpkIdrmsIcr-ave

  • IdpkIm
  • Id-rms2Im2
  • Icr-aveIm

Tiêu chí cơ bản để chọn FET (loại ABCs chọn FET):

  • VDS1.5VB-max

VDS

  • Vth-maxVDrv-min3

    Vth-maxRds

  • ΔTJA

    Tăng nhiệt là thực sự quan trọng. Nó chiếm tất cả các tổn thất ... mất dẫn, mất cổng và mất chuyển mạch.

Lựa chọn phần mẫu dựa trên 3 tiêu chí:

VB-maxVDrv-minVDSVth-maxRDS

  • VDSVth-max

Rth

PTPcondPsw

Ở đâu

PcondRdsIm2

Psw12ImVbFPWM(τf+τr)

VgsVdsVgsVmpVds

nhập mô tả hình ảnh ở đây

QmpVmpVdrvRgVmpVdrv

QmpτVdrv2Rg hoặc là τ = = 2RgQmpVdrv = = 2(100ÔihmS)(4nC)3,3V = 242nec

Thời gian cho một số giả định hoạt động. Nhiệt độ môi trường xung quanh là 50C (vì vậy, nhiệt độ chết FET tối đa là 100C), tần số PWM là 20kHz (vì tần số thấp hơn có thể nghe được và thực sự 5kHz đến 10kHz chỉ là đáng ghét), chu kỳ nhiệm vụ (DC) là 90% và dòng điện động cơ (Tôim) là 1,2A. TừRDS so với đường cong tạm thời trên trang 3 của biểu dữ liệu, chúng ta thấy rằng ở 100C, RDSlà 33mOms. Bây giờ chúng tôi đã sẵn sàng để tính toán tổn thất điện năng trong FET.

PT = = 0,9(33mOhm)(1.2A)2 + (3.3V)(1.2A)(242nSec)(20kHz) = 36mW + 19mW = 55mW

Vì vậy, đối với những điều kiện này, nhiệt độ FET tăng lên khoảng 1/2 giới hạn 100mW. Trong thực tế,Tôim có thể là 1,65A và FET vẫn sẽ nằm trong ngân sách tăng nhiệt.

Kết thúc lỏng lẻo

  • Đặt mạch ổ đĩa và công tắc gần động cơ.

  • Mặc dù micro có thể điều khiển FET trực tiếp, nhưng trình điều khiển để bảo vệ micro là một ý tưởng tốt (một cái gì đó giống như NC7WZ16 có thể hoạt động ở đây).

  • Điện trở mạch cổng trở thành một bài tập trong kết hợp trở kháng. Điện trở mạch cổng thấp nhất phải là trở kháng đặc trưng của ký sinh L và FET mạch cổngCngay lập tức. Đây là một câu hỏi trước đó đi vào chi tiết hơn và có thể hữu ích.

  • Chọn một diode có cùng mức điện áp với FET và xếp hạng hiện tại cao hơn mức tối đa Tôim. Một Schottky sẽ có tổn thất thấp hơn, nhưng nếu chu kỳ nhiệm vụ FET> ~ 70% thì sẽ không thực sự quan trọng nếu sử dụng một diode chuyển mạch.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.