Bài 4: Đọc điện áp điều chỉnh bởi biến trở

1. Giới thiệu

Bài ví dụ này sẽ giới thiệu cho các bạn cách đọc giá trị điện áp gây ra bởi một biến trở. Biến trở chỉ đơn giản chỉ là một điện trở có thể thay đổi được trị số. Mạch Arduino không đọc trực tiếp điện trở này mà đọc gián tiếp qua điện áp mà biến trở gây ra.

2. Cấu tạo biến trở

Phần màu vàng là một lớp điện trở. Cây kim màu xanh được đè chặt xuống phần điện trở này. Giả sử có dòng điện đi từ 1 đến 3 thì nó sẽ phải qua phần màu vàng (được tô đỏ) và đó chính là điện trở hiện tại của biến trở. Bạn chỉ việc vặn cây kim để tăng giảm độ dài của vùng màu đỏ, qua đó tăng giảm giá trị điện trở.

Vậy cực thứ 2 dùng để làm gì ? 

Giả sử đặt một hiệu điện thế vào 2 cực 1 và 2, sử dụng công thức định luật Ôm, ta có thể tính được điện áp lấy ra ở cực 3. Khi vặn biến trở, ta sẽ làm thay đổi điện trở ở phần màu đỏ và màu vàng (do điện tích của chúng thay đổi), qua đó làm thay đổi điện áp ở chân 3. Những cái volume vặn âm thanh to / nhỏ cũng có nguyên lí hoạt động tương tự như vậy.

Người ta gọi hệ 2 điện trở này là cầu phân áp, tức là phân chia điện áp nhờ một cầu điện trở.

3. Chuẩn bị

  • Mạch Arduino (trong bài sử dụng Arduino UNO R3).
  • Breadboard.
  • Biến trở (bạn có thể chọn loại bất kì).

4. Lắp mạch

Như bạn đã thấy, ta kết nối chân A0 (dây vàng) của mạch Arduino vào cực thứ 3 của biến trở để đọc điện áp.

Sơ đồ nguyên lí

5. Lập trình

Tham khảo bài viết Hướng dẫn nạp chương trình đơn giản cho Arduino Uno R3 nếu bạn chưa biết cách nạp chương trình.

void setup() {
  Serial.begin(9600);  //Mở cổng Serial để giap tiếp | tham khảo Serial
}

void loop() {
  int value = analogRead(A0);   //đọc giá trị điện áp ở chân A0 
                                //(value luôn nằm trong khoảng 0-1023)
  Serial.println(value);        //xuất ra giá trị vừa đọc
  
  int voltage;
  voltage = map(value,0,1023,0,5000);   //chuyển thang đo của value 
                                        //từ 0-1023 sang 0-5000 (mV)
  Serial.println(voltage);              //xuất ra điện áp (đơn vị là mV)
  
  Serial.println();     //xuống hàng
  delay(200);           //đợi 0.2 giây
}

Nào, bạn hãy bấm Ctrl + Shift + M để mở cửa sổ Serial Monitor và xem kết quả.

Giải thích

  • Dòng đầu tiên là giá trị điện áp đọc được bằng lệnh analogRead();
  • Dòng thứ 2 là giá trị điện áp (tính bằng mV) sau khi dùng hàm map() để chuyển đổi

Giả sử biến trở được sử dụng là loại 10K mắc như sơ đồ trong bài viết, giá trị do hàm analogRead() trả về là 150. Bạn hãy thử tìm cách tính xem biến trở hiện tại đang có giá trị là bao nhiêu Ohm ?

lên
34 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

Xe điều khiển bằng tay game Dual Shock3 thông qua Bluetooth

Vừa bắt đầu với arduino được hơn 1 tuần, có tham khảo qua các nguồn từ "trung ương đến địa phương", nắm được 1 số kiến thức cơ bản nên mình bắt đầu thực hiện 1 sản phẩm để đúc kết kinh nghiệm. Trong số đó thì xe điều khiển là dễ nhất. Kết hợp với cái tay game ps3 nằm lăn lóc ở góc nhà. Thế là có 1 chiếc xe điều khiển từ xa. Bắt đầu nhé.

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

Làm xe điều khiển từ xa bằng Bluetooth - Điều khiển bằng Android với App Inventor

Mình rất thích điện tử nhưng không học về ngành điện tử. Rất may là có Adruino, rồi có cộng đồng Adruino Việt Nam, đặc biệt là sự nhiệt tình của tất cả các bạn trong cộng đồng, mình đã làm được 1 chiếc xe điều khiển từ xa. Cho con chơi là lí do phụ thôi, còn tìm hiểu, học tập là chính. Hôm nay chia sẻ cùng các bạn, cùng gửi lời cảm ơn đến tất cả các bạn trong cộng đồng. Có bạn thì giúp đỡ trực tiếp, có bạn thì viết bài, rồi có bạn thì bình luận, nêu câu hỏi. Tất cả đều có giá trị đối với mình.

Ngại viết bài nên mình đăng dưới dạng ảnh.

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

Làm sao để phá hỏng Arduino Uno R3

Có lẽ bạn sẽ ngạc nhiên khi đọc cái tiêu đề này. Thông thường, bạn sẽ đi tìm hiểu cách sử dụng Arduino, nhưng hôm nay, mình sẽ làm ngược lại, đó là tìm hiểu cách phá hủy chúng. Khi ta đã biết cách làm hỏng một thứ gì đó, ta sẽ có thể sử dụng chúng cẩn thận hơn, tránh những trường hợp đáng tiếc xảy ra. 

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