找回密码
 注册
关于网站域名变更的通知
查看: 592|回复: 4
打印 上一主题 下一主题

C语言描述PID算法程序

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-1-20 14:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

  X- T( j  L' O: O- h5 y: C1 e/ B& e: f
#include <C8051 F020.H>
+ S. f3 d' G; L  V, R* X#include <string.h>. t4 Q" K9 A4 F2 g: E* ^2 W
#include <math.h>
# `" k% d, _) c7 I- _% t//void PIDInit(PID *PP);
* @% q# ~7 L* C; I/*定义结构体和公用体*/
! M* _$ D8 M9 C* P" z/ X& Y#define N 8/ C! N+ T- Z+ f5 I& [: q2 I- S
typedef struct PID{
3 Z9 M) C+ H/ |! Xunsigned int setpoint; /* 设定值*/
- m! y2 c, I% S& e" h5 b- e7 xunsigned int proportion;/*比例系数*/: E  K- Z+ Y6 h  E  p+ c8 n9 o
unsigned int integral;/*积分系数*/
2 U/ E  X; j. t0 @6 G1 y0 Y! B, `unsigned int derivative;|*微分系数*/
: f7 _: }) V2 k1 l9 \1 }2 r1 Qunsigned int lasterror;/*前一拍误差*/
4 U+ d" m; Z# M3 |$ Xunsigned int preerror; .|*前两拍误差*/$ K$ Z' G- _  c( l  e8 M
}PID;
( a7 G7 M5 Q1 v, q% }* T1 g
6 Z; ?- L9 V  o1 D
& ?7 Z- @7 {8 {& x' S! _& V
8 P) n! E, k6 F7 v5 k6 Xunion stu{) w# C8 z# F* z9 \) E7 x
unsigned int value;; [: l2 A2 P" H8 a" O
unsigned char num[2];
, v# X" C! I0 E0 i}laser;
# i! S, u3 G4 o  I  ounion dat{
9 y$ [+ c( k* r1 @5 w! c) Eunsigned char dd[2];3 u  A0 x. B) u: J7 U7 r- y
unsigned int number;3 h) H  o: n: o" R
}collect;
( W5 _0 |' }% ?% M. X1 ]& t$ a/*函数声明部分*/: v" d# c, ^1 D% ]
unsigned int PIDcal(PID *pp,int thiserror);
1 n; _+ o/ X" T$ }+ }9 J% b2 f' ?; Evoid PIDInit(PID *PP);4 x* B- J: b; M$ u
void PortInit(void);
& y+ l" ?9 q! y8 runsigned int get_ _ad(void);$ C1 ^3 p, S, g8 o+ A, D2 C) [
unsigned int filter_ _valve(void);) S& \$ Q& j2 [
void Delayms(void);
! d1 V& N/ `; Y6 q! ~: m4 u/*主函数部分*/
8 I) V2 q1 a* ~' L8 g0 Zvoid main(void)
: J* b6 P0 f4 k3 C6 Z- Y- y; o( J# F  ?. ~! i& E2 ~
{
" i7 p+ ~" m- Z# h- x% X1 oPID vPID;/*定义结构体变量名 */, a$ K1 ], A1 Y& U
unsigned  int verror;: ^' D  n2 K0 H' X- y8 j+ c! ^
unsigned  int Error;, ~3 c0 n7 E3 W8 E( {
unsigned  int tempi;+ Y# H: ]9 K7 u
unsigned char L ASERH,L ASERL;/*误差的高低字节变量*/6 `% J" }4 I0 z. ~8 d/ j
WDTCN=0xde; ( O! ]% H6 A/ l8 l
WDTCN=0xad;
0 |: S$ x- G! _( z  Q' j- R//portinit();
. f2 w3 H+ U9 |PIDInit(&vPID);( i8 R7 f& |; ?' E. [
vPID.proportion= 10;/*设置PID比例系数为10*/
3 R# F9 u! R4 Q5 ]" gvPlD.integral=10;/*设定PID积分系数 为10*/
' J4 x: x* e* ]0 R* j5 \
2 x5 ^2 k: f( s6 d6 m( B2 g' s: x% v; w  M: c3 F
: d# g: Z& s4 I2 q; h0 |0 v; r/ a. c
游客,如果您要查看本帖隐藏内容请回复

( M( y% u& Z  C* S
1 N1 s0 l$ t+ J* H4 K, G% }3 u0 D/ L6 Z

& J6 q5 N; U, h/ y; t& n9 e
3 E! x* P5 l+ ?2 x1 Z1 Z- e& ?6 v( U! H! |, V

该用户从未签到

2#
发表于 2020-1-20 18:07 | 只看该作者
C语言描述PID算法程序

该用户从未签到

3#
发表于 2020-12-17 20:53 | 只看该作者
谢谢分享学习
5 O+ v& ~6 ~* w/ h' q" u& l* S- n* u3 H
  • TA的每日心情
    开心
    2021-3-30 15:12
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2021-3-30 15:12 | 只看该作者
    xxxxxxxxxxxx1 @# q3 j, Z6 l' E. E- E
  • TA的每日心情
    开心
    2022-3-14 15:57
  • 签到天数: 105 天

    [LV.6]常住居民II

    5#
    发表于 2022-1-19 14:51 | 只看该作者
    谢谢分享学习
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-6 23:22 , Processed in 0.125000 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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