久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11319|回復: 3
打印 上一主題 下一主題
收起左側

一個簡單的PID單片機算法程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:372048 發表于 2018-9-11 20:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
用單片機做的,在電機測試了可以用。就是開機的時候,會最大轉速輸出,有點噪音

單片機源程序如下:
  1. void Pid_regulate(void)
  2. {
  3.         u8 TempError;
  4.         u8 TempAngle;
  5.         if(Pid_Ts != 0)
  6.         {
  7.                 return;                //采樣時間未到,退出
  8.         }
  9.         Pid_ts = 0x1a;        //重置采樣時間
  10.         TempError = Temp_Setting - TempOp;        //溫度誤差
  11.         Integral = Integral + Ki * TempError;                //誤差* 積分增益并累加
  12.         if(Integral > 1024)
  13.                 Integral = 1024;
  14.         else if(Integral < -1024)
  15.                 Integral = -1024;
  16.         TempAngle = FeedFwd_agnle(Templn,Voltage,WaterFlow);
  17.         TempAngle = Kp * TempError;
  18.         TempAngle = TempAngle + (Integral >> 4);//累加
  19.         if(TempAngle < 2)
  20.                 TempAngle = 2;                //下限
  21.         else if(TempAngle > 200)
  22.                 TempAngle = 200;                //上限
  23.         Fire_angle = 200 - (u8)TempAngle;        //得到觸發角

  24. }

  25. void PID(void)
  26. {
  27.         float ek,ek1,ek2,ek_sum;
  28.         uint a;
  29.         ek=K-temp; //計算誤差
  30.         while(1)
  31.         {
  32.                 if(ON_OFF==1) //溫控開關開
  33.                 {
  34.                         if(ek>=15)
  35.                         {
  36.                                 outflag=1;
  37.                                 OUT=0;
  38.                                 Time_on=100;
  39.                                 break;
  40.                         } //溫差大于15度,不用PID調節
  41.                         else if(ek<0)
  42.                         {
  43.                                 ek=0;
  44.                                 outflag=0;
  45.                                 OUT=1;
  46.                                 Time_on=0;
  47.                                 break;
  48.                         } //溫差小于等于0不調節
  49.                         else
  50.                         {
  51.                                 if(ek>5)
  52.                                         a=0;
  53.                                 if(ek<5)
  54.                                         a=1;
  55.                                 ek2=ek1;
  56.                                 ek1=ek;
  57.                                 ek_sum+=ek;
  58.                                 uk=kp*ek+ki*ek_sum+kd*(ek1-ek2);
  59.                                 //計算PID輸出uk
  60.                                 if(start_flag==0) //PID運算標志位
  61.                                 {
  62.                                         uk0=uk; //uk初值,用于參考以后uk加熱時間
  63.                                         start_flag=1;
  64.                                         div=100/uk0;
  65.                                 } //開始PID計算
  66.                                 else if(start_flag==1)//加熱片加熱時間
  67.                                 {
  68.                                         Time_on=uk*div;
  69.                                         OUT=0;
  70.                                         outflag=1;
  71.                                 }
  72.                                 break;
  73.                         }
  74.                 }
  75.                 else
  76.                 {
  77.                         outflag=0;
  78.                         OUT=1;
  79.                         break;
  80.                 } //不加熱
  81.         }
  82. }
復制代碼

所有資料51hei提供下載:
Pid.rar (861 Bytes, 下載次數: 99)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:101990 發表于 2019-4-22 15:42 | 只看該作者
學習學習啦!!!謝謝!!
回復

使用道具 舉報

板凳
ID:602230 發表于 2019-8-21 09:21 | 只看該作者
學習學習啦!!!謝謝!!
回復

使用道具 舉報

地板
ID:593177 發表于 2019-9-4 10:08 | 只看該作者
感謝分享!
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一级日韩 | 中文字幕二区 | 日韩成人精品一区 | 久久99蜜桃综合影院免费观看 | 国产粉嫩尤物极品99综合精品 | 日韩一级不卡 | 中文字幕在线一区二区三区 | 美女视频黄的免费 | 91在线免费视频 | 中文字幕乱码亚洲精品一区 | 成人在线免费网站 | 国产精品中文字幕在线 | 亚洲免费在线 | 久久久精品一区二区 | 国产综合区 | 国内精品伊人久久久久网站 | 成人在线一区二区 | 欧美区日韩区 | 日本久久视频 | www.婷婷 | 欧美又大粗又爽又黄大片视频 | 亚洲成人三区 | 天天综合久久 | 91干b| 欧美一区二区视频 | 国产成人jvid在线播放 | 欧美精品成人一区二区三区四区 | 成人免费视频网站在线看 | 国产欧美日韩精品在线观看 | 暖暖日本在线视频 | 97色在线视频 | 欧美国产日韩一区二区三区 | 精品免费国产 | 国产 91 视频 | 在线看日韩 | 日日操操 | 一本色道精品久久一区二区三区 | 天堂在线网| 精品视频一区二区三区在线观看 | 国内91在线 | 亚洲福利视频一区二区 |