![]() |
發布時間: 2018-4-24 10:21
正文摘要:樓主做的基于51單片機主控的PID算法的恒溫控制系統,帶加熱指示燈與遞增和遞減按鈕.采用DS18B20做的溫度傳感器 電路原理圖如下: |
![]() |
for(i=0;i<10;i++) { s=get_temper();//取得現在的溫度。 rin = s; // Read Input rout = PIDCalc ( &spid,rin ); // Perform PID Interation } |
樓主能QQ私聊一下嗎?救助,感激不盡 |
landing 發表于 2020-5-4 11:14 能否加個QQ傳我 感激不盡 |
landing 發表于 2020-5-4 11:14 請問你能打開嗎?我打不開,顯示丟失什么文件 |
謝謝,剛好要寫一個恒溫PID控制,可以參考一下。 |
謝謝樓主分享 |
樓主你這個是通過什么加熱裝置加熱的呀 |
樓主,沒有降溫處理嗎? |
有沒有解析呢?? |
yzh123 發表于 2018-4-24 20:41 要求精度不高的話通常設置都是一樣的 |
樓主能私聊下嗎 |
zxr961129 發表于 2018-6-7 21:13 能互相交流下嗎 |
樓主能加QQ聊嗎 |
樓主你好,你的pid參數是怎么整定的? |
謝謝,樓主給力 |
學習了,下載下來以后試試 |
求救樓主 仿真的電路板在哪里,我打不開 |
可以嗎??? |
樓主流弊 |
感謝樓主,最近在做畢業設計,需要模糊pid方面的程序和仿真,很高興樓主能夠分享出來! |
實際測量溫度不顯示誰幫幫我加qq2304146938 |
實際測量溫度不顯示誰幫幫我加qq2304146938 |
溫度顯示不出來怎么回事 |
樓主我想對你的程序提幾個問題。在你的溫度比較處理子程序里面有一段程序是這樣的if(set_temper>temper) //設置溫度大于當前溫度 { ledred=0; ledgreen=1; if(set_temper-temper>1) //溫度相差1度以上 { high_time=100; low_time=0; } else //設置溫度不大于當前溫度 { for(i=0;i<10;i++) { get_temper(); rin = s; // Read Input rout = PIDCalc ( &spid,rin ); // Perform PID Interation } if (high_time<=100) high_time=(unsigned char)(rout/800); else high_time=100; low_time= (100-high_time); 請問一下rin=s是不是表示的是PID的回饋輸入,那么既然如此的話rin不應該是等于輸出的溫度嗎?為什么是s呢?我看了一下程序除了一開始的定義unsigned int s;和剛剛那個地方s就沒有別的用處了。 else //設置溫度不大于當前溫度 這一條語句的注釋也不是很明白。 這個else是在if(set_temper-temper>1) //溫度相差1度以上 這條語句后面,那么我感覺他的注釋應該是 溫度相差小于一度 最后的話是這一句 if (high_time<=100) high_time=(unsigned char)(rout/800); else high_time=100; low_time= (100-high_time);整個都不太明白 ,特別是(rout/800) 希望樓主有空的話可以賜教一下,謝謝! |
謝謝樓主,最近剛好在做這方面的東西 |
樓主你好,你的pid參數是怎么整定的? |