Tự động tắt nguồn cho Arduino bằng MOSFET

Ở đây mình có một boad Arduino Uno sử dụng nguồn là pin 9v. Khi mình bấm nút, Arduino bật, led sáng, và sau 1 khoảng thời gian định sẵn, arduino sẽ tựtắt. Nếu mình bấm nút một lần nữa, chương trình lại thực hiện lại 1 lần nữa và tự tắt Nếu các bạn đưa nó áp dụng vào các dự án của mình thì sẽ cảm thấy thật tuyệt vời phải không! Điều đó có nghĩa rằng chúng ta có thể tăng thêm tuổi thọ pin trong dự án của mình lên đến hàng tháng thay vì 1 vài ngày! Bạn có thể giữ Arduino của bạn hoạt động cho đến khi nào bạn muốn, và sau đó khi nó đã hoàn thành công việc của mình, bạn có thể biến nó tự động tắt chính nó. Nhưng bây giờ chúng ta hãy xem, làm thế nào để xây dựng mạch này.

I. CHUẨN BỊ

II. Cấu tạo và nguyên lý hoạt động của Mosfet

Trái tim của mạch là MOSFET.Mosfet là Transistor hiệu ứng trường ( Metal Oxide Semiconductor Field Effect Transistor ) là một Transistor đặc biệt có cấu tạo và hoạt động khác với Transistor thông thường mà ta đã biết. Mosfet thường có công suất lớn .Đối với tín hiệu 1 chiều thì nó coi như là 1 khóa đóng mở. Mosfet có nguyên tắc hoạt động dựa trên hiệu ứng từ trường để tạo ra dòng điện, là linh kiện có trở kháng đầu vào lớn thích hợn cho khuyếch đại các nguồn tín hiệu yếu, Mosfet được sử dụng nhiều trong các mạch nguồn Monitor, nguồn máy tính

Ký hiệu và sơ đồ chân tương đương giữa Mosfet và Transistor

Cấu tạo Mosfet

G : Gate gọi là cực cổng

S : Source  gọi là cực nguồn

D : Drain gọi  là cực máng

Mosfet kênh N có hai miếng bán dẫn loại P đặt trên nền bán dẫn N, giữa hai lớp P-N được cách điện bởi lớp SiO2 hai miếng bán dẫn P được nối ra thành cực D và cực S, nền bán dẫn N được nối với lớp màng mỏng ở trên sau đó được dấu ra thành cực G.

Mosfet có điện trở  giữa cực G với cực S và giữa cực G với cực D  là vô cùng lớn , còn điện trở giữa cực D và cực S phụ thuộc vào  điện áp chênh lệch giữa cực G và cực S ( UGS )

Khi điện áp UGS = 0 thì điện trở RDS rất lớn, khi điện áp UGS > 0  => do hiệu ứng từ trường làm cho điện trở RDS giảm, điện áp UGS càng lớn thì điện trở RDS càng nhỏ.

 

điện áp đặt vào chân G không tạo ra dòng GS như trong Transistor thông thường mà điện áp này chỉ tạo ra từ trường  làm cho điện trở RDS giảm xuống

Nếu chúng ta cấp 5V tại chân G, nó sẽ cho phép một số lượng lớn các dòng điện đi qua 2 chân còn lại. Nếu không có điện áp đến chân G của MOSFET, sẽ không có hiện tượng dòng điện đi qua 2 chân của MOSFET. Vì vậy chúng ta sẽ sử dụng tính năng này để kiểm soát nguồn cho Arduino.

 

Tất cả những gì các bạn cần làm là kết nối như trên sơ đồ mình đã mô phỏng

Chân G của Mosfet được nối với Pin 7 trên arduino

Chân của Led được nối với 1 chân bất kì trên arduino

III CODE

const int MOSFETPIN =  7; 
const int LED = A4;

void setup(void)
{
  pinMode(MOSFETPIN, OUTPUT);
  digitalWrite(MOSFETPIN, HIGH);
   pinMode(LED, OUTPUT);
  digitalWrite(LED, HIGH);
  delay(5000);
  digitalWrite(MOSFETPIN, LOW);
}

void loop() {

}

Như vậy, khi nhấn nút, đèn Led sẽ sáng 5 giây. sau đó tự động tắt. nhấn thêm lần nữa đèn led sáng và 5 giây sau lại tắt....

Rất đơn giản đúng không nào? các bạn có thể ứng dụng trong các thiết bị khi chỉ cần nó thực hiện xong nhiệm vụ là tự tắt nguồn.

Chúc các bạn thành công!

lên
15 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Thiết bị bật tắt Moderm Wifi tự động - Một dự án về việc hẹn giờ

Dự án này mình đã hoàn thiện vào cuối năm 2015. Tuy nhiên bây giờ mới có thời gian giới thiệu tới các bạn. Gia đình bạn có sử dụng wifi và những lúc không sử dụng bạn muốn tắt nó đi để tránh ảnh hưởng của sóng wifi tới sức khỏe, đặc biệt là với trẻ nhỏ. Dựa trên lí do đó mình đã làm 1 thiết bị có khả năng tự bật tắt wifi theo thời gian định sẵn, có thể điều khiển từ xa và học lệnh các loại điều khiển.enlightened Qua bài viết này, hi vọng nhận được nhiều ý kiến đóng góp từ các bạn đồng thời nâng cấp thêm nhiều tính năng cho thiết bị.wink

lên
26 thành viên đã đánh giá bài viết này hữu ích.

Giao tiếp I2C giữa nhiều arduino với nhau

Đôi khi chúng ta muốn chia sẻ khối lượng công việc của một Arduino với 1 arduino khác. Hoặc có khi chúng ta muốn nhiều chân digital hoặc analog hơn để xử lý công việc.I2C là giải pháp tốt nhất. Bài viết này mình sẽ hướng dẫn các bạn cách giao tiếp giữa 2 boad arduino với nhau qua giao thức I2C.

lên
24 thành viên đã đánh giá bài viết này hữu ích.