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

C语言描述PID算法程序

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x

. o! f3 C4 j4 H: x* _$ v6 C" }5 B/ {' Q3 M
#include <C8051 F020.H>7 V0 G3 D* G. w( [# E# [
#include <string.h>
& C, f( P( p' x" ?2 q- C#include <math.h>+ ^( m) ~* E7 o6 Z  B5 F
//void PIDInit(PID *PP);+ F+ h- a) c$ i
/*定义结构体和公用体*/' q1 Q) K* Q3 d( g% [8 P
#define N 8
/ k# D/ R+ E" d8 g/ Z. Ltypedef struct PID{$ z6 ]7 ?, Y* q5 Y& K+ s
unsigned int setpoint; /* 设定值*/
( R- _4 a* \2 C5 d0 uunsigned int proportion;/*比例系数*/* T, f5 }* P3 @6 q6 d6 x
unsigned int integral;/*积分系数*// l0 G4 J9 l4 u% Y# d! [, X
unsigned int derivative;|*微分系数*/
/ X0 l6 ]( o- h+ o; [unsigned int lasterror;/*前一拍误差*/
9 a0 ^4 b. ]0 u9 f/ Z6 cunsigned int preerror; .|*前两拍误差*/; t# ]4 ]4 j- W8 o- B" L/ v
}PID;
. P9 V+ h: o, h8 T- b- m9 m9 n# s: G. T. A
. V; g& ?7 b9 z1 l/ |: R, c. r: b
8 G, r- Q9 V/ [+ v7 A
union stu{
& s1 @8 c" C. V( m% V9 Bunsigned int value;' u" Q7 x1 I+ U7 b8 S
unsigned char num[2];
+ e/ s- t) ?+ u0 t- U3 m" Q5 |}laser;- Y% c; X) {' t- S
union dat{
# E7 o* x0 z# o3 C( Nunsigned char dd[2];7 l9 e. V+ @$ Q+ G1 A- Z: [
unsigned int number;+ o: g( o3 N$ p! B5 a+ f4 |! E
}collect;; ]2 E7 _& N+ M1 ~, b( g
/*函数声明部分*/( ?' O: i/ u* r
unsigned int PIDcal(PID *pp,int thiserror);
+ ^1 `& H4 \2 J: E1 Q. ?5 L5 x/ N. Bvoid PIDInit(PID *PP);
3 @* S7 h6 N/ W0 R1 L" p3 Yvoid PortInit(void);* R2 r1 _; Z! L* Z: z% |; T% x
unsigned int get_ _ad(void);: l6 U; ~4 E: W; x6 G, I! b
unsigned int filter_ _valve(void);
, B* o6 w7 d7 P6 H" J  ]* Xvoid Delayms(void);
" w6 C8 d" l6 h3 _% i% R; u/*主函数部分*/
. ~. |( Q5 \0 w$ f; t; }; rvoid main(void)( L; w: M2 D' O! [# l! m
2 Z7 k. V$ Z; a8 ?7 n, |
{
* p: [4 L/ p1 J* ]) K4 QPID vPID;/*定义结构体变量名 */) W( z/ m. p- O1 V( P
unsigned  int verror;# c1 u8 f7 d5 [4 I' X& l, [
unsigned  int Error;
8 s0 w  _7 E: U% H( I! iunsigned  int tempi;- D- i' a2 n+ v$ X: |  X7 {+ }4 h
unsigned char L ASERH,L ASERL;/*误差的高低字节变量*/
( R: M1 {6 U+ }! r6 ^9 IWDTCN=0xde;
3 j5 d; S; R# _3 TWDTCN=0xad;
( V/ F1 {- i8 J! C; j; ?//portinit();; Y* V) n0 V" J: l" \: i  T' f
PIDInit(&vPID);
- s0 @3 X) T% n  S  J  Y/ AvPID.proportion= 10;/*设置PID比例系数为10*/9 p9 f3 p/ Y1 J# y" w
vPlD.integral=10;/*设定PID积分系数 为10*// Y% n" l% P: g
0 n  j/ H, f) q3 x  Y
  X, c8 R6 A9 v+ _( U
6 ~8 v' g0 T/ }" j8 Q
游客,如果您要查看本帖隐藏内容请回复
' e& d( j1 P9 [0 Z. x6 r# a

* q( [; N! z3 x3 _8 _6 F/ G6 \  R# _. D
7 u, Q; f  `2 }/ C, @
# r! L5 G7 ~3 `9 |$ Y4 Y& R" u6 g

5 A# b* ~! Q9 `3 c3 U+ n

该用户从未签到

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

该用户从未签到

3#
发表于 2020-12-17 20:53 | 只看该作者
谢谢分享学习
3 I9 V% A4 M9 Y$ r" Z
  • TA的每日心情
    开心
    2021-3-30 15:12
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2021-3-30 15:12 | 只看该作者
    xxxxxxxxxxxx3 d# T* j7 Z! \3 G7 I0 i
  • 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-30 17:04 , Processed in 0.171875 second(s), 26 queries , Gzip On.

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

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

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