【Arduino】可變電阻使用教學

arduino可變電阻教學

剛接觸可變電阻,不曉得那三隻腳是做甚麼的?

    -先理解可變電阻的運作原理,就不用死記那三隻腳要怎麼接線。

不會使用Arduino來讀取可變電阻的分壓?

    -下面有接線圖及Arduino的範例程式來幫助你來完成這個小專案。

可變電阻簡介

可變電阻
可變電阻符號

圖中是我們常見的可變電阻,有三個端子,中間的為滑動端。

隨著旋鈕改變,中間滑動端位置也會改變,因此與兩端的阻值就會發生改變。

以10kΩ的可變電阻為例,若是量測到左對中是2kΩ ,那麼中對右就會是8kΩ ,左對右(兩者相加)就會是固定的總阻值10kΩ。

轉動旋鈕使滑動端往右邊移動,就可以調整成左端為8 kΩ ,右端為2 kΩ 。

下面影片(ApourMaker中文频道)很清楚地說明了可變電阻的內部結構,以及其運作原理。

可變電阻分壓電路

圖中為可變電阻調至中間位置,同等右邊的電阻串聯電路

我們可以把可變電阻看成”兩個電阻串連“,然後從中間拉一條線出來(Vout)。

分壓電路的公式: Vout= Vin *R2/( R1 + R2 )

圖中計算: Vout = 5*5/(5+5) = 2.5V

從這裡我們就可以知道,當我們調整可變電阻時,會因為上下電阻的比例變動,而使Vout電壓跟著變動,再透過Arduino來讀取電壓值,這樣就可以拿來應用了。

Arduino讀取可變電阻分壓

我在這裡使用LCD來顯示讀取到的數值,若是沒使用過LCD的朋友,可參考這篇“【Arduino】LCD I2C模組使用教學”

線路連接

可變電阻線路連接
aRDUINO可變電阻
5V左端(或右端)
GND右端(或左端)
A0中間端

Arduino程式

#include <Wire.h> // I2C程式庫
#include <LiquidCrystal_I2C.h> // LCD_I2C模組程式庫

// LCD I2C位址,默認為0x27或0x3F,依據背板的晶片不同而有差異,16、2為LCD顯示器大小。
LiquidCrystal_I2C lcd(0x27, 16, 2); 

const int VR_pin=A0;
int Value; 

void setup() {

  pinMode(VR_pin,INPUT); //將VR_pin設置為類比輸入腳位
  
  // 初始化LCD
  lcd.init();
  lcd.backlight();

}

void loop() {
  
  Value=analogRead(VR_pin); //將VR_pin讀取到的值存到Value變數中。

  lcd.setCursor(2, 0); // (colum, row)從第一排的第三個位置開始顯示
  lcd.print("Value: ");
  lcd.print(Value);  //LCD顯示出Value的值
  lcd.print("   ");
  
  delay(100);


}

最後!! 你喜歡這篇文章,或是這篇文章對你有幫助的話,也歡迎分享出去給需要的人,訂閱免費電子報獲得最新資訊😄😄😄

在〈【Arduino】可變電阻使用教學〉中有 1 則留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *