"增量式PID控制算法程序及参数设置详解"
5星 · 超过95%的资源 需积分: 9 110 浏览量
更新于2023-12-27
1
收藏 47KB DOC 举报
0000H
MOV A, BLOCK1
MOV B, BLOCK2
MOV C, BLOCK3
; 初始化 E(k),E(k-1),E(k-2),RK 为 0
MOV EK, 00H
MOV EK1, 00H
MOV EK2, 00H
MOV RK, 00H
; 读取采样数据至 BUFF
MOV CK, BUFF
; 计算 E(k)
SUBB A, CK
MOV EK, A
; 计算增量式 PID 控制算法输出值
MOV A, EK
MOV B, EK1
MOV C, EK2
MOV DPH, 00H
MOV DPL, UK
CALL PID_CONTROL_ALGORITHM
; 存储 E(k) 至 E(k-1)
MOV EK1, EK
; 将结果存入 REC
MOV REC, UK
; 循环
SJMP TEST
PID_CONTROL_ALGORITHM:
; 读取 KP
MOV A, 30H
MOV B, KP
MOVX @DPTR, A
INC DPTR
MOVX @DPTR, B
INC DPTR
; 读取 TD
MOV A, 33H
MOV B, TD
MOVX @DPTR, A
INC DPTR
MOVX @DPTR, B
INC DPTR
; 读取 TI
MOV A, 36H
MOV B, TI
MOVX @DPTR, A
INC DPTR
MOVX @DPTR, B
INC DPTR
; 读取 T
MOV A, 39H
MOV B, T
MOVX @DPTR, A
INC DPTR
MOVX @DPTR, B
INC DPTR
; 计算增量式 PID 控制算法输出值
; ...
; 返回结果
MOV A, DPL
MOV B, DPH
RET
END
这段程序是一个使用增量式PID控制算法的程序。程序从地址30H,33H,36H,39H依次读取参数KP、TD、TI和T,并从地址43H,46H,49H依次读取AB和C的值。随后,程序通过计算采样数据和AB的差值得到E(k),然后将E(k)输入增量式PID控制算法计算出控制输出值UK。最后将结果存入地址50H处,然后重复以上步骤。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2011-05-16 上传
2022-05-07 上传
2023-11-05 上传
2012-01-13 上传
2012-06-30 上传
2022-09-20 上传
IICCEE624
- 粉丝: 10
- 资源: 37
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查