Đọc mục blog của tôi "Byte and Switch" - nó bao gồm kịch bản chính xác này.
Câu trả lời ngắn gọn là bạn cần một diode tự do để dẫn dòng điện khi MOSFET tắt; điện từ có độ tự cảm lưu trữ năng lượng trong từ trường và khi bạn tắt MOSFET thì độ tự cảm sẽ tạo ra tuy nhiên cần nhiều điện áp để tiếp tục dòng điện đó. Xung điện áp kết quả sẽ gây ra sự cố trong MOSFET gây ra thiệt hại mà bạn đang thấy.
Bạn cũng nên thêm một vài điện trở, một từ đầu ra của vi điều khiển xuống đất, để chắc chắn rằng nó tắt khi vi điều khiển của bạn được đặt lại, và một từ vi điều khiển đến cổng MOSFET, để thêm một số cách ly điện trở giữa công tắc nguồn và của bạn vi điều khiển.
chỉnh sửa: Tôi chỉ nhận thấy bạn đang sử dụng BS170 MOSFET. Bạn đã xem bảng dữ liệu chưa? Đây là một lựa chọn kém cho MOSFET được sử dụng làm công tắc nguồn từ vi điều khiển.
Trước hết, MOSFET được chỉ định ở mức 10V Vss. Bạn đang cung cấp nó từ một vi điều khiển 5V. Bạn cần đảm bảo rằng bạn sử dụng các MOSFET có "mức logic" và có điện trở trên được chỉ định ở VV 4,5V hoặc 3,3V. (Tôi khuyên bạn không nên sử dụng MOSFET điện áp cực thấp vì có khả năng nó sẽ bật yếu khi bạn nghĩ nó bị tắt.)
Quan trọng hơn, đó là một MOS-TO-92 nhỏ được chỉ định ở mức 5 ohms max Rdson ở 10V Vss. MOSFET này tốt cho các tải rất nhỏ như đèn LED vẽ một vài milliamp. Nhưng solenoids thường thu hút hàng chục hoặc hàng trăm milliamp, và bạn cần tính toán tổn thất I2R trong MOSFET cho tải hiện tại mà nó rút ra và đảm bảo rằng nó không làm cho bóng bán dẫn của bạn quá nóng. Nhìn vào điện trở nhiệt R theta JA trên biểu dữ liệu và bạn có thể ước tính mức tăng nhiệt độ trong phần đó.
Sử dụng MOSFET trong phạm vi 20V-60V có điện trở thấp hơn - như tôi đã nói trong nhận xét của mình, chúng tôi cần biết điện từ của bạn rút ra bao nhiêu nếu chúng tôi sẽ giúp bạn.