STEM|水庫|利用Arduino製作水庫監察器
top of page

STEM|水庫|利用Arduino製作水庫監察器

利用Arduino製作水庫監察器

水庫是一個極其重要的水源儲存設施,其功能與作用相當多樣化。首先,水庫主要用於儲存大量的水源,以供應城市、農業和工業用水需求。此外,水庫也能夠調節水流,防止洪水發生,同時在乾旱期間釋放儲存的水源以維持河流的流量,保護生態環境和農作物。此外,水庫還可以發電,透過水流帶動渦輪機發電機發電,為社會供應電力。


水庫的一般設置地點通常會考慮以下幾個因素。首先是水源地,水庫通常建造在水量豐富、容易儲存的河流或溪流上。其次是地形,水庫的設置地點需要考慮地形地勢,以確保可以有效地儲存大量水源,同時避免地質災害的風險。另外,水庫附近需要有足夠的土地空間以建造水壩、發電設施以及相關的管理設施,同時還要考慮到對當地居民和生態環境的影響。



總的來說,水庫在現代社會中扮演著極其重要的角色,不僅能夠提供水資源和電力,還能夠調節水流、防洪和保護生態環境,因此其設置地點和功能需經過仔細的考慮和規劃。


以下是使用Arduino製作水庫水位探測器的製作說明:


材料清單:

1. Arduino微控制器板(如Arduino Uno)

2. 水位感測器模組(例如浮球開關、浮球傳感器等)

3. 蜂鳴器模組

4. 杜邦線

5. 面包板(可選)

### 步驟:

1. 連接硬體

- 將水位感測器模組與Arduino連接。根據使用的感測器類型,接線方式可能會有所不同,請參考感測器的使用說明書或資料表。

- 將蜂鳴器模組連接到Arduino的數位輸出引腳。

2. 編寫程式碼

- 使用Arduino IDE編寫程式碼。

- 程式碼的基本邏輯是讀取水位感測器的數值,並根據數值的高低來控制蜂鳴器發出不同的聲音。

- 在程式碼中設置閥值,當水位高於或低於閥值時,觸發蜂鳴器發出聲音。

- 程式碼中也可以包含其他功能,如即時顯示水位數值、記錄數據等。

3. 上傳程式碼

- 將編寫完成的程式碼上傳到Arduino板上。



// 定義水位感測器的引腳

const int waterSensorPin = A0;

// 定義蜂鳴器的引腳

const int buzzerPin = 9;

void setup() {

// 初始化串口通訊

Serial.begin(9600);

// 設置蜂鳴器引腳為輸出模式

pinMode(buzzerPin, OUTPUT);

}

void loop() {

// 讀取水位感測器的數值

int waterLevel = analogRead(waterSensorPin);

// 將原始數值轉換為百分比

float waterPercentage = map(waterLevel, 0, 1023, 0, 100);

// 印出水位百分比到串口

Serial.print("Water Level (%): ");

Serial.println(waterPercentage);

// 檢查水位是否高於或低於閥值

if (waterPercentage > 80) { // 如果水位高於80%

// 發出高水位警報聲音

tone(buzzerPin, 1000); // 發出1kHz聲音

} else if (waterPercentage < 20) { // 如果水位低於20%

// 發出低水位警報聲音

tone(buzzerPin, 500); // 發出500Hz聲音

} else {

// 如果水位在正常範圍內,則停止發聲

noTone(buzzerPin);

}

// 等待一段時間後再次讀取水位感測器的數值

delay(1000);

}



4. 測試

- 將水位感測器放置在水庫中,確保連接正確並且蜂鳴器能夠正確地發出聲音。

- 測試水位高於或低於閥值時蜂鳴器的觸發情況,並確保其正常運作。



注意事項:

- 確保使用的水位感測器能夠正確地檢測水位並輸出準確的數值。

- 在安裝和測試過程中注意水庫的安全,以免發生意外。

- 確保程式碼中的閥值設置適當,以符合水庫的實際需求。

製作完成後,這個水庫水位探測器將能夠準確地監測水位,並在水位過高或過低時發出警報,有助於及時處理水庫管理相關的問題。



bottom of page