搜索
bottom↓
楼主: sail_007

标准的PID处理例程

  [复制链接]

出0入0汤圆

发表于 2010-3-9 17:05:41 | 显示全部楼层
记号,很适合我这样的PID盲

出0入0汤圆

发表于 2010-3-15 11:37:52 | 显示全部楼层
这是位置式PID???

出0入0汤圆

发表于 2010-3-15 13:38:44 | 显示全部楼层
mark

出100入0汤圆

发表于 2010-3-15 16:37:46 | 显示全部楼层
写的有些复杂,先收下了

下面是我的PID程序,使用在Atmega16上,ICCAVR

#define Kp (long)500  //MP项放大1000倍
#define Ti 200 //ms   //Mi项放大1000倍
#define Tc 1 //ms

int ucOCR=0;
unsigned int ad[10]={0,0,0,0,0,0,0,0,0,0};

//在定时中断中处理(定时周期=Tc)
#pragma interrupt_handler timer0_ovf_isr:iv_TIMER0_OVF
void timer0_ovf_isr(void)
{
   int Ef0=0;
   static long Mi=0;
   long Mp=0;
               
   unsigned char i;
   unsigned char cSREG = SREG; /* 保存全局中断标志*/
   _CLI(); /* 禁止中断*/
   
   ad[1] = read_adc(1);//读取控制目标当前AD值
   Ef0 = DestAD - ad[1] ;//DestAD为控制目标的预期AD值
   Mp = Kp * Ef0;
   //遇限制消弱积分法
   if(Mi<=0)
   {   
      if(Ef0>0)  Mi += Mp * Tc / Ti;
   }
   else if(Mi>=255000)
   {
      if(Ef0<0)  Mi += Mp * Tc / Ti;
   }
   else
      Mi += Mp * Tc / Ti;
   ucOCR = (Mp + Mi)/1000 ;
   if(ucOCR>0xFF) ucOCR=0xFF;//ucOCR的有效范围为0~0xFF
   else if(ucOCR<0) ucOCR=0;
   OCR2 = ucOCR;//控制PWM输出          

   SREG = cSREG; /* 恢复全局中断标志*/

}

出0入0汤圆

发表于 2010-3-15 17:46:37 | 显示全部楼层
记号

出0入0汤圆

发表于 2010-3-27 16:14:26 | 显示全部楼层
很好很强大

出0入0汤圆

发表于 2010-4-11 17:24:17 | 显示全部楼层
MARK

出0入0汤圆

发表于 2010-4-12 17:02:58 | 显示全部楼层
做个记号,用时再来看

出0入0汤圆

发表于 2010-4-12 17:22:05 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-4-24 14:56:33 | 显示全部楼层
MARK!

出0入0汤圆

发表于 2010-4-24 15:01:37 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-5-3 16:22:00 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-5-3 16:40:07 | 显示全部楼层
此贴必顶!

出0入0汤圆

发表于 2010-6-2 10:59:43 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-2 11:49:43 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-2 15:27:17 | 显示全部楼层
mark

出150入0汤圆

发表于 2010-6-2 16:10:36 | 显示全部楼层
晕晕 慢慢研究

出0入0汤圆

发表于 2010-6-2 21:06:01 | 显示全部楼层
不错!!

出0入0汤圆

发表于 2010-6-2 21:59:14 | 显示全部楼层
就不能把注解搞清楚一点啊

出0入0汤圆

发表于 2010-6-2 22:05:14 | 显示全部楼层
不错。慢慢研究一下

出0入0汤圆

发表于 2010-6-3 14:56:10 | 显示全部楼层
学习一下

出0入0汤圆

发表于 2010-6-3 14:56:26 | 显示全部楼层
学习一下

出0入0汤圆

发表于 2010-6-9 18:21:14 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-9 19:54:40 | 显示全部楼层
马克一下

出0入0汤圆

发表于 2010-6-15 10:30:19 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-7-2 13:59:45 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-8-20 16:27:31 | 显示全部楼层
亲爱的LZ,帮个忙。我正在做个水温控制系统 设置温度 用PID算法 控制加热和制冷。求一份指导程序 万分感谢!!!

出0入0汤圆

发表于 2010-8-20 16:51:17 | 显示全部楼层
pid   good

出0入0汤圆

发表于 2010-8-20 16:56:34 | 显示全部楼层
回复【楼主位】sail_007
-----------------------------------------------------------------------

亲爱的LZ,帮个忙。我正在做个水温控制系统 设置温度 用PID算法 控制加热和制冷。求一份指导程序 万分感谢!!!

出0入0汤圆

发表于 2010-8-20 17:23:28 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-8-22 19:49:06 | 显示全部楼层
还要回来看的,记下来先

出0入0汤圆

发表于 2010-8-24 16:44:38 | 显示全部楼层
谢谢分享,好好读一下

出0入0汤圆

发表于 2010-8-24 16:48:27 | 显示全部楼层
有用再看……

出0入0汤圆

发表于 2010-8-24 18:44:50 | 显示全部楼层
做个标志,还会再来!!

出0入0汤圆

发表于 2010-8-26 14:54:11 | 显示全部楼层
学习

出0入0汤圆

发表于 2010-8-28 21:49:26 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-8-29 08:55:41 | 显示全部楼层
闭环 相当有用!

出0入0汤圆

发表于 2010-9-17 15:29:54 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-9-17 16:06:35 | 显示全部楼层
不懂

出0入0汤圆

发表于 2010-9-18 14:44:24 | 显示全部楼层
MARK

出0入0汤圆

发表于 2010-9-25 15:28:04 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-9-25 16:15:46 | 显示全部楼层
不错,学习啦

出0入0汤圆

发表于 2010-9-26 15:05:42 | 显示全部楼层
回复【3楼】sail_007
-----------------------------------------------------------------------

不错,学习

出0入0汤圆

发表于 2010-10-6 11:09:56 | 显示全部楼层
mark

出350入8汤圆

发表于 2010-10-6 11:29:11 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-8 16:22:38 | 显示全部楼层
标记 mark

出0入0汤圆

发表于 2010-10-8 17:40:35 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-9 00:06:59 | 显示全部楼层
没用过,不懂,学习

出0入0汤圆

发表于 2010-10-9 08:30:21 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-9 09:21:41 | 显示全部楼层
MARK ,pid

出0入0汤圆

发表于 2010-10-9 09:27:38 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-9 09:38:58 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-9 10:50:03 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-13 19:57:37 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-11-15 23:53:04 | 显示全部楼层
啊,PID!

出0入0汤圆

发表于 2010-11-15 23:59:07 | 显示全部楼层
单片机的 PID 用汇编写应该速度要快些吧~!

出0入0汤圆

发表于 2010-11-16 10:50:37 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-11-16 12:50:22 | 显示全部楼层
MARK

出0入0汤圆

发表于 2010-11-16 13:21:40 | 显示全部楼层
现在在上理论课,很是费解,谢谢各位的讲解!!

出0入0汤圆

发表于 2010-11-17 18:15:25 | 显示全部楼层
MARK

出0入0汤圆

发表于 2010-11-18 12:43:17 | 显示全部楼层
PID记号  估计以后用得着,谢谢楼主分享。

出0入0汤圆

发表于 2010-11-18 15:42:47 | 显示全部楼层
写得比较好

出0入0汤圆

发表于 2010-11-18 16:19:43 | 显示全部楼层
学习

出0入0汤圆

发表于 2010-11-18 16:25:48 | 显示全部楼层
顶一个

出0入0汤圆

发表于 2010-11-18 20:03:37 | 显示全部楼层
学习

出0入0汤圆

发表于 2010-11-23 12:41:45 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-11-23 13:27:45 | 显示全部楼层
智能车上的PID都不知道是如何写的了

出0入0汤圆

发表于 2010-11-23 15:26:08 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-11-24 20:32:24 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-11-25 09:52:25 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-11-26 12:53:24 | 显示全部楼层
回复【8楼】livanfield
主函数里 pidinit ( &amp;spid );                  //  initialize structure   
    spid.proportion = 0.5;              //  set pid coefficients   
spid既然是指向结构的指针,其访问应该是spid-&gt;proportion吧?
-----------------------------------------------------------------------

哥哥,这不是指针

出0入0汤圆

发表于 2010-11-26 13:25:37 | 显示全部楼层
mark

出675入8汤圆

发表于 2010-11-26 15:04:37 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-11-26 15:21:48 | 显示全部楼层
PID记号

出0入0汤圆

发表于 2010-11-26 15:48:24 | 显示全部楼层
PID标记下,学习四轴有用

出0入0汤圆

发表于 2010-11-26 19:59:00 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-1 14:34:14 | 显示全部楼层
PID mark

出0入0汤圆

发表于 2010-12-9 19:42:48 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-9 22:04:56 | 显示全部楼层
回复【楼主位】sail_007  
-----------------------------------------------------------------------

标记下

出0入0汤圆

发表于 2010-12-9 23:22:00 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-9 23:48:35 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-12-14 20:36:38 | 显示全部楼层
标记

出0入0汤圆

发表于 2010-12-22 23:29:50 | 显示全部楼层
mark

出0入24汤圆

发表于 2010-12-23 09:09:14 | 显示全部楼层
Mark!

出0入0汤圆

发表于 2010-12-23 13:28:02 | 显示全部楼层
cool

出0入0汤圆

发表于 2011-1-2 11:14:42 | 显示全部楼层
顶!

出0入0汤圆

发表于 2011-1-2 13:24:54 | 显示全部楼层
mark、

出0入0汤圆

发表于 2011-1-5 09:45:35 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-1-11 10:58:47 | 显示全部楼层
sPID.Proportion = 0.5;              //  Set PID Coefficients  
    sPID.Integral   = 0.5;  
    sPID.Derivative = 0.0;  


参数取得有点那个啥。。。

出0入0汤圆

发表于 2011-3-8 11:17:07 | 显示全部楼层
学习中,顶

出0入0汤圆

发表于 2011-3-11 16:00:32 | 显示全部楼层
好贴

出0入0汤圆

发表于 2011-3-11 16:51:42 | 显示全部楼层
学习

出0入0汤圆

发表于 2011-3-12 10:40:50 | 显示全部楼层
回复【楼主位】sail_007
-----------------------------------------------------------------------

MARK

出0入0汤圆

发表于 2011-3-13 11:38:12 | 显示全部楼层
学习了。

出0入0汤圆

发表于 2011-3-13 12:45:10 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-13 13:22:43 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-16 17:28:04 | 显示全部楼层
mark!

出0入0汤圆

发表于 2011-3-16 17:54:12 | 显示全部楼层
mark一下啊。

出0入0汤圆

发表于 2011-3-16 19:16:55 | 显示全部楼层
mark!

出0入0汤圆

发表于 2011-3-17 23:10:56 | 显示全部楼层
这个很实用。
mark.
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-27 00:23

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表