❶ 求助。。用C語言寫個代碼:就是做一個低水位一個高水位的檢測,低於某個水位就自動上水,高於就停止。。
#include <iostream>
using namespace std;
void checkWaterLevel(int uLevel,int dLevel); //檢查水位函數
bool controlWaterLevel(); //PI演算法檢查水位 ,演算法自己添加進去,
int main()
{
int upLevel,downlevel;
upLevel = 3; // 設置水位的最高值
downlevel = 7;// 設置水位的最低值
cout << "The water's upLevel is 3 and downlevel is 7! " << endl;
checkWaterLevel(upLevel,downlevel);
return 0;
}
void checkWaterLevel(int uLevel,int dLevel)
{
int level;
cout << "Get a water level: ";
cin >> level;
if (level < uLevel) // 檢查是否在最高水位的下限
{
cout << "start work!"<<endl; // 自己把這里的方法改成單片機的控制命令就OK了,我就不幫你寫了
}
else
{
if(level > dLevel) // 檢查是否在最低水位的下限
{
cout << "stop work!" << endl; // 自己把這里的方法改成單片機的控制命令就OK了,我就不幫你寫了
}
else
{
controlWaterLevel();
}
}
}
bool controlWaterLevel() // PI演算法自己有的話,可以把PI演算法放進這個函數裡面去就可以了
{
int setWaterLevel,getWaterLevel;
cout << "Set water's level!" << endl; //設置水位的 預設值
cin >> setWaterLevel;
cout << "now water's Level is: ";
cin >> getWaterLevel; //獲得水位,怎麼獲得水位更具自己單片機的感測器來設置
cout << endl;
if (getWaterLevel == setWaterLevel) // 判斷水位是否等於設置水位
cout << "end work!" << endl; //自己把這里的方法改成單片機的控制命令就OK了,我就不幫你寫了
return false;
controlWaterLevel();
}
❷ 設計洪水位、校核洪水位怎麼確定設計頻率洪水過程怎麼做
設計洪水位是發生設計頻率的洪水時,斷面對應的水位,校核洪水位也是一樣的
首先要進行洪水計算,方法有水文比擬法和推理公式法;其次如果是水工建築物要進行調洪演算,確定相應頻率洪水對應的水位;如果是一般的河道,一般選擇較為順直的斷面,用謝才公式推流,再結合歷史洪水調查,綜合確定洪水位。
洪水過程一般都在洪水計算時,軟體自動生成的。