图5-4
20
实验六 直流电机闭环调速实验
6.1 实验原理及接线
人为数字给定
驱动单元 电路 速度 直流电机 CPU系统 反馈 测速电路 图6-1 直流电机闭环调速原理图
图6-2 直流电机闭环调速实验线路图
CPU系统的8255PB10脉冲信号为控制量,经驱动电路驱动电机运转。霍尔测速元件输出的脉冲信号记录电机转速构成反馈量,在参数给定情况下,经PID运算,电机可在控制量作用下,按给定转速闭环运转。其中OPCLK为1.1625MHz时钟信号,经8253的2号通道分频输出1ms的方波,接入8259产生IRQ6中断,作为系统采样时钟;PB10产生PWM脉冲计时及转速累加,8259的IRQ7中断用于测量电机转速。
6.2 实验流程图
21
主程序 8259 IRQ7中断程序: 初始化 采样周期到否? 清TK变 元TC 取YK反馈值 调PID 溢出 处理 8259IRQ6 计算 PWM 将YK,CK 值发往串口
IRQ7中断 N Y MARK=0? MARK=1 N MARK=0 取IRQ6中转速累加VADD计算电机转速 VADD清零 中断程序 IRQ6中断 TC=TC+1 产生PWM脉冲 N MARK=1? 转速累加 VADD=VADD+1 IRET 22
6.3 实验内容及步骤
(1)按图6-2接线。
(2)装入程序 CS1.EXE。其中段地址为:0000,偏移地址:2000。使用U0000:2000命令查看第一、二条指令为MOV AX,0259、MOV DS,AX由此可知数据段段地址为0259。用D0259:0000命令可查看到数据段中所放TS、SPEC、IBAND、KPP等参数值(对于双字节DW,低位在前)已按顺序排好,并与初始化值相符。用E0259:0000命令可从TS第一个数据开始修改这些值,按空格继续修改下一个值,按减号修改上一个值,按回车确认并停止修改。
(DEBUG命令的详细使用方法详见软件系统中的帮助文档中的常见命令说明部分。) 例:D0259:0000(回车)可看到:
0259:0000 14 30 00 60 00 60 10 10 即:TS=14H,SPEC=0030H, 0259:0008 00 20 00 XX XX XX XX XX IBAND=0060H KPP=1060H
KII=0010H,KDD=0020H (3)进入专用示波器界面点击运行,使用默认的段地址和偏移量,按确定运行示波。 (4)观察电机转速及示波器上给定值与反馈值的波形,分析其响应特性,改变参数Iband、KPP、KII、KDD的值后再观察其响应特性,选择一组较好的控制参数并记录下来。
参 数 项 目 IBAND KPP 1060H 1060H KII KDD 超调 稳定<2% 时间 1:例程中参数响应特性 0060H 2:去掉IBAND 4.实验程序参数表 符号 TS SPEC IBAND KPP KII KDD
0010H 0020H 0010H 0020H 0000H 单位 mmS N/s 取值范围 00H-FFH 06H-42H 0000H-007FH 0000H-1FFFH 0000H-1FFFH 0000H-1FFFH 名 称 及 作 用 采样周期:决定数据采集处理快慢程度 给定:即要求电机达到的转速值 积分分离值:PID算法中积分分离值 比例系数:PID算法中比例项系数值 积分系数:PID算法中积分项系数值 微分系数:PID算法中微分项系数值 23
CH1 CH2 YK CK VADD ZV ZVV TC FPWM CK_1 EK_1 AEK_1 BEK AAA VAA BBB VBB MARK N/s 00H-FFH 00H-FFH 0000H-0042H 00H-FFH 0000H-FFFFH 00H-FFH 00H-FFH 00H-FFH 00H-01H 00H-FFH 0000H-FFFFH 0000H-FFFFH 0000H-FFFFH 00H-FFH 00H-FFH 00H-FFH 00H-FFH 00H-01H 通道1值:在示波器功能中所显示值需放入此单元中然后再调用PUT_COM发送子程序 通道2值:(同上) 反馈:通过霍尔元件反馈算出的电机转速反馈值 控制量:PID算法产生用于控制的量 转速累加单元:记录霍尔输出脉冲用于转速计算 转速计算变量 转速计算变量 采样周期变量 PWM脉冲中间标志位 控制量变量:记录上次控制量值 PID偏差:E(K)=SPEC(K)-YK(K) △E(K)=E(K)-E(K-1) △2E(K)=△E(K)-△E(K-1) 用于PWM脉冲高电平时间计算 AAA变量 用于PWM脉低冲电平时间计算 BBB变量 PID计算用变量
R0——R8
24