变频器节电运行参数显示调节装置系统设计
扫描二维码
随时随地手机看文章
引言
在实际的变频器调速应用中,工作人员需到现场才能控制变频器,造成很大的不便。随着企业工作现场总线的发展,远程控制变频器系统开始进入我国各大型企业中,不但提高了变频器操作效率,还起到了节约电量的作用,变频器的远程控制突显出了越来越重要的作用。
1研究背景
变频器是通过对电力半导体的控制,可以使工频发生改变的电能控制装置。在变频器远程控制过程中,系统中的电动机与变频器连接,进行电动机频率的调控。在操控室中安装有PLC,用来输出动作相关信号。当现场需要对电动机进行调控时,由操控室发出动作指令,动作指令可通过使用PLC转换输出动作模拟信号,经过网络传输,被变频器控制端接收,变频器读取接收的信号,将电机调整到指令动作或频率,实现变频器的远程控制。本文设计了一个嵌入式控制变频器参数系统,其功能包括以下几个方面:通过嵌入式控制,实现高速数据采集:基于STM32F103ZET6设计了用于数据采集的硬件电路,内含144个引脚、112个I/o口,大部分I/o口均支持5V电压传输(模拟通道除外),且可支持调试。调节运行参数时,运用了ModbuS协议将STM32开发板与变频器连接,使用图形软件库STemwin,调用函数接口,设计开发嵌入式图形界面,并通过图形控制界面实现间接控制变频器。为了提高性能,在STM32F103ZET6上完成了嵌入式KeiluViSion5的调试与运行,并且在KeiluViSion5环境下完成了对GPIo、显示屏、LED数码管、按键、红外遥控等模块以及I/o口的相关设备驱动程序,并且编写了相对应的程序对设备进行控制与使用。通过对变频器参数的设置,可以实现设定变频器加减速时间、最低频率、偏置频率,选择加减速模式,提升转矩等功能。而对于利用STM32开发板实现对变频器参数的设定研究,成本较低,同时可扩展实现对变频器参数显示的远程控制。随着工业自动化程度的不断提高,在变频器广泛应用的电力、石油、钢铁等行业均有大量需求,本项目研究成果亦可得到广泛应用。
2系统结构框架
2.1 STM32主系统架构
STM32开发平台主要由嵌入式微处理器、显示器、触摸屏、存储器、设备控制模块、电源模块组成。本文使用的开发板是M3内核,Cortex-M3采用ARMv7-M架构,使用的是STM3F103ZET6芯片,内核为32位高性能ARMCortex-M3处理器,时钟高达72MHz,实际还可以超频一些,采用单周期乘法和硬件除法:有144个引脚和112个I/o口,大部分I/o口都支持5V电压传输(模拟通道除外),支持调试:TFTLCD模块使用的是四线电阻式触摸屏。电阻式触摸屏是一种传感器,它将矩形区域中的触摸点(),X)的物理位置转换为代表)坐标和X坐标的电压。电阻触摸屏的工作原理主要是通过压力感应原理来实现对屏幕内容的操作和控制。
2.2STemWin应用软件架构
典型的STemwin应用软件架构如表1所示。
STemwin软件架构主要由表1所示部分组成,最底层是硬件层,是指最基本的板级支持软件包(BSP),即是底层驱动,它提供了对硬件平台资源最直接的访问。STemwin软件库承上启下,运行在硬件层之上,与硬件层之间仅靠液晶驱动连接,而向应用层则提供了各种便于用户制作GUI应用的接口。STemwin提供的函数接口,使得开发嵌入式图形界面应用变得简单而快捷,只需要编写好液晶驱动粘合STemwin库和硬件BSP层的中间件,就可以正常使用STemwin。
3基于ST.M,平台的STemWin移植
将STemwin移植到STM32开发平台,主要分成以下步骤:下载STemwin源码、添加STemwin文件到工程、修改工程文件、移植触摸屏、添加STemwinDemo测试。
3.1STemWin的初始化配置
STemwin的内存分配等一些初始化配置包含在GUIConf.c文件中。该文件内还包含GUIConf.h头文件,主要对STemwin的配置进行设置,例如是否使用存储器,是否使用触摸功能,是否支持操作系统等。GUIConf.h文件代码如下:
#ifndefGUICoNFH
#defineGUICoNFH
#defineGUINUMLA一ERS10//显示的最大层数
#defineGUIoSY0(//不使用操作系统
#defineGUISUSSPoRRPUTH(0)//不支持触摸#defineGUIDEFAULRFPNR&GUIFont6x8//默认字体#defineGUISUSSPoRMPUSE(l)//支持鼠标
#defineGUIwINSUSSPoR(l)//窗口管理
#defineGUISUSSPoRMEMDEV(l)//存储设备#defineGUISUSSPoRDEVITES(l)//使用设备指针#endif
3.2LCD驱动设置
SRM32通过SSI总线与触摸屏芯片相连,通常的方法是采用轮询方法获取触摸屏的触点动作,这种方法不仅实时性差,而且浪费单片机的执行周期[2]。本文调用LTDxTonfig()和LTDxDiSplayDriver()这两个函数,使用LTD初始化函数RFRLTDInit()来初始化LTD,并且通过GUIDoVRemplate.c文件将打点和读点等函数封装起来传递给SRemwin,LTDxTonfig()函数代码如下:
//配置程序,用于创建显示驱动器件,设置颜色转换程序和显示尺寸
voidLTDxTonfig(void)(
GUIDEVITETreateAndLink(&GUIDoVRemplateASI,GUITTM565,0,0)://创建显示驱动件
LTDSetSizeEx(0,tftlcddata.width,tftlcddata.height):LTDSetVSizeEx(0,tftlcddata.width,tftlcddata.height):}
GUIDEVITETreateAndLink()函数用来创建显示驱动器件,第二个参数是指定所使用的调色板,本文使用的是GUITTM565调色板,即oGB565,最后根据LTD尺寸来设置屏幕大小。tftlcddata.width和tftlcddata.height是RFR彩屏的X宽度和y高度。本文实验所使用的液晶屏是TJR0560l,该液晶显示屏的主要特点如下:屏幕尺寸:640×480dpi:内建oAM内存容量:768kB:l6位色彩:支持MTU接口:不带触摸显示模块。
4STemWin的图形界面设计
4.1STemWin的窗口管理机制及移动拖影的消除
本文使用函数cbBkwindow()作为这个背景窗口的回调函数。wMSAINR消息作为清屏操作,实现重绘背景窗口。新建窗口的回调函数cbwindow(),调用函数wMTreatewindow()创建一个窗口hwnd,窗口的回调函数为cbwindow(),窗口属性设置为可见。移动窗口,每次X、y分别移动2个像素。删除窗口hwnd,使背景窗口wMHBwIN无效,这样下一次调用GUIExec()函数的时候就会重绘背景窗口wMHBwIN。而此时移动窗口hwnd,背景窗口wMHBwIN并没有设置回调函数,因此当hwnd移动时会有拖影。而再调用函数wMSetTallback()为背景窗口设置回调函数cbBkwindow(),这样在移动窗口hwnd的时候就会调用cbBkwindow()重绘背景窗口,从而可以消除拖影。回调函数设置如下:
//为背景窗口设置回调函数
cbPldBK=wMSetTallback(wMHBKwIN,cbBkwindow):Movewindow("BackgroundhaSbeenredraw")://移动窗口
wMSetTallback(wMHBKwIN,cbPldBK):
}
voidSRemwINwMoedrawReSt(void)
(
SRemwinwMoeDrawReSt():
while(l)
(
GUIDelay(l0):
}
4.2文本显示设置
本实验写的SRemwin应用是通过voidemwindemotaSk(void*parg)任务函数进行调用,文本显示调用代码如下:
//EMwINDEMP任务
voidemwindemotaSk(void*parg)
(
SRemwINRextReSt():
while(l)
(
GUIDelay(l0):
}
上述的SRemwINRextReSt()函数是实现文本显示的函数,该函数包含在textdemo.c文件内,textdemo.h文件是对函数的声明,方便其他文件能够调用。将编写的文本显示工程编译成功后,下载到开发板平台运行。在LTD应用中,其余数值、图形、位图、颜色等的显示,对话框、BURRPN等控件的应用,大多都采用如上函数调用等方式实现。
5结语
本文设计的是一种变频器节电运行参数显示调节装置系统,其本质是对嵌入式系统的应用。该系统在远程控制系统运用方面有广阔的发展空间。本文结合变频器控制设计了嵌入式远程控制系统,该控制系统不仅能节约电能,还能提高生产效率,将广泛应用于各行业生产实践中。