一种基于C8051F单片机的液压智能PID控制系统的制作方法

文档序号:12716455阅读:1394来源:国知局
一种基于C8051F单片机的液压智能PID控制系统的制作方法与工艺

本发明涉及一种基于C8051F单片机的液压智能PID控制系统,适用于机械领域。



背景技术:

在电机的运行控制中,通常广泛采用液压智能PID技术,具有响应快、精度高、平稳性好等特点。利用大功率晶体管的开关作用,PID将直流电源调制成具有一定频率的宽度(脉冲占空比A)可调的方波脉冲电压,加在直流电机的电枢上,单片机把检测到的电机转速、转向与设定的转速、转向进行比较,通过数字PID调节对方波脉宽进行调制,从而改变电枢电压相序及平均值,实现对电机转向、转速的控制。



技术实现要素:

本发明提出了一种基于C8051F单片机的液压智能PID控制系统,系统通过单片机C8051F060所构成的实时控制器来完成采集数据、命令计算、PID控制和通讯等任务,达到了系统的精度和速度的要求。

本发明所采用的技术方案是:所述控制系统由两级构成,即安装有监控软件的管理计算机和基于C8051F060单片机的伺服控制器。管理计算机和伺服控制器之间通过RS232来进行数据交换。伺服控制器是一个多功能的基于单片机控制系统,可完成两通道伺服控制系统的数据采集、静态和动态命令信号的生成(各种动态命令信号)、PID运算、输出控制等任务,从而实现实时控制。采用单片机C8051F060构成的伺服控制器的设计方法能在保证控制品质的基础上降低成本和难度,且能在不同的领域得到较广泛的应用。

所述控制系统的两通道伺服控制器的硬件采用C8051F060单片机系统,该系统包括16位的A/D转换模块和12位的D/A转换模块以及若干开关量输入输出和定时器,其外围电路主要包括模拟信号输入调理电路、复位与时钟电路、电源转换、数据通讯电路、电流驱动(功率放大)等部分。所采用C8051F060通过16位A/D模块完成对输入信号的采集,同时通过D/A模块完成数字信号向模拟信号的转换,转换后的模拟信号经电流驱动(功率放大)后输出,控制伺服阀。

所述系统的两通道伺服控制系统是由C8051F060单片机构成的,其核心控制软件为嵌入式软件,是在TurboC环境下开发的,初始化程序(含启动定时器)进行各种变量和参数的初始化,为满足系统控制的需求,定时器定时时间(控制周期)设为1ms。程序通过定时中断标志位(由中断服务子程序完成)判断定时时间是否已到。如果未到,则进行等待,否则进行中断循环,中断循环中包括:A/D模块、命令模块、PID控制模块、输出控制模块、通信(回传)模块、通讯数据到否判断模块、处理接收数据模块和清零中断标志位模块等。其中A/D模块的功能是对位移、载荷、应变和开关量等模块进行采集,命令模块主要完成控制器的静态命令和动态命令(根据控制模式的转换而定义成相应的物理量),PID控制模块主要根据命令信号和反馈信号进行相关的PID控制计算,得到相应的输出控制量,输出控制模块的任务是通过D/A和开关量将控制命令进行输出控制,驱动伺服阀和相关开关量,完成伺服控制任务,通信(回传)模块的任务是将当前时刻的所有参量通过串口回传给监控系统,通讯数据到否判断模块用于判断监控系统是否有新的控制指令下传,处理接收数据模块用于处理监控系统下传的控制指令,清零中断标志位模块完成中断标志位的复位或清零工作,以保证系统工作的正常进行。需要说明的是:以上所有工作均必须在1ms之内完成,如果控制通道增加则需要的时间会增加,则无法保证控制系统的响应频率。

所述控制系统在基本PID控制的基础上进行了一些改进,主要改进部分包括:前馈控制、分段比例控制和变积分控制等,所有这些控制方式均可在监控软件中由操作者进行选择。其控制指令由静态和动态指令叠加构成,所有控制指令均由控制器产生,其指令特征由操作者通过监控软件来设定和选择,控制指令信号由控制器内部产生,直接进入PID回路。反馈信号经传感器、信号放大、A/D采集进入PID控制回路(算法)。并通过输出驱动模块控制伺服阀,从而构成PID(数字式)闭环控制。

本发明的有益效果是:该系统通过单片机C8051F060所构成的实时控制器来完成采集数据、命令计算、PID控制和通讯等任务,达到了系统的精度和速度的要求。

附图说明

下面结合附图和实施例对本发明进一步说明。

图1是本发明的基于单片机的伺服控制器结构框图。

图2是本发明的主程序框图。

图3是本发明的基本PID控制系统原理框图。

具体实施方式

下面结合附图和实施例对本发明作进一步说明。

如图1,控制系统由两级构成,即安装有监控软件的管理计算机和基于C8051F060单片机的伺服控制器。管理计算机和伺服控制器之间通过RS232来进行数据交换。伺服控制器是一个多功能的基于单片机控制系统,可完成两通道伺服控制系统的数据采集、静态和动态命令信号的生成(各种动态命令信号)、PID运算、输出控制等任务,从而实现实时控制。采用单片机C8051F060构成的伺服控制器的设计方法能在保证控制品质的基础上降低成本和难度,且能在不同的领域得到较广泛的应用。

控制系统中通过独立的D/A模块输出一定的电压信号(阀平衡值),与正常的阀驱动信号进行叠加,达到当伺服控制量为零时阀的输出电流为零的目的,以克服伺服阀零偏引起的静态控制误差。为了克服液压伺服系统具有的活塞爬行现象,本控制系统将高频振颤信号(由函数发生器芯片构成的正弦信号)叠加在正常信号输出部分,其频率在330Hz左右,用户通过监控软件对其大小进行调节(硬件上通过单独的D/A模块输出一定的电压和乘法电路来实现),该方法具有十分明显的效果,特别是在静态控制的应用场合。由于D/A转换模块得到的控制模拟信号、阀平衡值模拟信号和颤振模拟信号之和的输出为电压信号,且其驱动电流很小,而伺服阀为电感性负载,需要的控制信号为电流控制,对电感性负载而言,其电压和电流之间相差900相位,为了满足伺服阀电流控制的需要,系统中提供了一套深度电流负反馈模块,可以使得伺服阀上的电流信号与输出控制电压完全同相,且满足伺服阀的驱动功率要求。

所述控制系统的2通道伺服控制器的硬件采用C8051F060单片机系统,该系统包括16位的A/D转换模块和12位的D/A转换模块以及若干开关量输入输出和定时器,其外围电路主要包括模拟信号输入调理电路、复位与时钟电路、电源转换、数据通讯电路、电流驱动(功率放大)等部分。所采用C8051F060通过16位A/D模块完成对输入信号的采集,同时通过D/A模块完成数字信号向模拟信号的转换,转换后的模拟信号经电流驱动(功率放大)后输出,控制伺服阀。

如图2,系统的两通道伺服控制系统是由C8051F060单片机构成的,其核心控制软件为嵌入式软件,是在TurboC环境下开发的,初始化程序(含启动定时器)进行各种变量和参数的初始化,为满足系统控制的需求,定时器定时时间(控制周期)设为1ms。程序通过定时中断标志位(由中断服务子程序完成)判断定时时间是否已到。如果未到,则进行等待,否则进行中断循环,中断循环中包括:A/D模块、命令模块、PID控制模块、输出控制模块、通信(回传)模块、通讯数据到否判断模块、处理接收数据模块和清零中断标志位模块等。其中A/D模块的功能是对位移、载荷、应变和开关量等模块进行采集,命令模块主要完成控制器的静态命令和动态命令(根据控制模式的转换而定义成相应的物理量),PID控制模块主要根据命令信号和反馈信号进行相关的PID控制计算,得到相应的输出控制量,输出控制模块的任务是通过D/A和开关量将控制命令进行输出控制,驱动伺服阀和相关开关量,完成伺服控制任务,通信(回传)模块的任务是将当前时刻的所有参量通过串口回传给监控系统,通讯数据到否判断模块用于判断监控系统是否有新的控制指令下传,处理接收数据模块用于处理监控系统下传的控制指令,清零中断标志位模块完成中断标志位的复位或清零工作,以保证系统工作的正常进行。需要说明的是:以上所有工作均必须在1ms之内完成,如果控制通道增加则需要的时间会增加,则无法保证控制系统的响应频率。

如图3,控制系统在基本PID控制的基础上进行了一些改进,主要改进部分包括:前馈控制、分段比例控制和变积分控制等,所有这些控制方式均可在监控软件中由操作者进行选择。其控制指令由静态和动态指令叠加构成,所有控制指令均由控制器产生,其指令特征由操作者通过监控软件来设定和选择,控制指令信号由控制器内部产生,直接进入PID回路。反馈信号经传感器、信号放大、A/D采集进入PID控制回路(算法)。并通过输出驱动模块控制伺服阀,从而构成PID(数字式)闭环控制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1