gui设计论文十篇

时间:2023-04-11 13:44:16

gui设计论文

gui设计论文篇1

关键词:信息理论;GUI设计;交互

中图分类号:TP319 文献标识码:A 文章编号:1005-5312(2013)03-0284-01

什么是GUI?为什么要将信息理论在GUI中应用与发展?

GUI 是 Graphical User Interface 的简称,即图形用户界面,通常人机交互图形化用户界面设计经常读做“goo-ee”,准确来说 GUI 就是屏幕产品的视觉体验和互动操作部分。

简言之GUI就是为了方便界面使用而做的设计,使用的非常广泛,大到个人电脑小到手机都有GUI设计的应用,但主要的应用是手机通讯移动产品。

如果说信息理论对GUI有什么影响,那么这种影响一定是信息技术的理论对GUI设计的影响。

信息技术,是主要用于管理和处理信息所采用的各种技术的总称。它主要是应用计算机科学和通信技术来设计、开发、安装和实施信息系统及应用软件。它也常被称为信息和通信技术。主要包括传感技术、计算机技术和通信技术。

1.信息技术理论对GUI的发展第一个帮助就是让GUI的实现成为了可能,可以说没有信息技术的支撑,图像处理技术的发展,现在的GUI都不可能出现。

2.信息技术为GUI的操作方式提供了可能,信息技术不更新,GUI的发展也会陷入停滞,有很多东西是没有技术就无法实现。GUI只能研究用户怎么用习惯,但不能研究怎么样能让玩家更加舒适。没有信息技术理论的发展就没有GUI技术的发展。

3.图片在信息中是很重要的一环,人们获取信息最快的途径就是文字和图片以及数字影像。从广义的方面信息技术包含了图形处理技术,初步看来是包含与包含于的关系,传播信息的方式有很多,形式也多种多样,可以是口头的,可以是触感的,可以是嗅觉的,可以是图像的,可以是丰富多彩的,因为人的身体是灵活的。而图像却不这样,图像在一定情况下是固定的。

图像技术初始并不丰富,可以说有些单一调,一开始并不人性化,每天人们就是用着键盘对着图片敲敲打打,操作方式十分的单调。但事后来科技技术的发展,人们渐渐发现了图像技术可以有更好的,更自然的表达,GUI技术虽然好用,但是没有信息理论的支撑也是不行的,因为信息技术可以说是GUI设计的一个驱动,起了很大的推动作用。

GUI简单的说只是图形操作的一种设置,有时更像人机工程学,研究怎样使用户用的比较顺手,用户怎样用的更加快速。信息技术则更像一种设计的理念,刚开始的时候受限于技术,但是随着技术的发展可以实现。两个东西相辅相成使信息技术促进了数字艺术的发展,而GUI技术促进了数字艺术的流行。

信息技术对GUI设计的集大成就是虚拟现实技术。

虚拟现实技术可以说是能将GUI设计发展到极致的手段,能将图片与立体声光影完全的结合起来,可以说越来越简练。

虚拟现实技术具有超越现实的虚拟性。虚拟现实系统的核心设备仍然是计算机。它的一个主要功能是生成虚拟境界的图形,故此又称为图形工作站。目前在此领域应用最广泛的是SGI、SUN等生产厂商生产的专用工作站,但近来基于Intel奔腾Ⅲ(Ⅳ代)代芯片的和图形加速卡的微机图形工作站性能价格比优异,有可能异军突起。图像显示设备是用于产生立体视觉效果的关键外设,目前常见的产品包括光阀眼镜、三维投影仪和头盔显示器等。其中高档的头盔显示器在屏蔽现实世界的同时,提供高分辨率、大视场角的虚拟场景,并带有立体声耳机,可以使人产生强烈的浸没感。其他外设主要用于实现与虚拟现实的交互功能,包括数据手套、三维鼠标、运动跟踪器、力反馈装置、语音识别与合成系统等等。虚拟现实技术的应用前景十分广阔。它始于军事和航空航天领域的需求,但近年来,虚拟现实技术的应用已大步走进工业、建筑设计、教育培训、文化娱乐等方面。它正在改变着我们的生活。

gui设计论文篇2

关键词: 人机交互图形界面;SIMULINK;可执行程序;热点温度分析

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)17-0220-04

Abstract: For the problem of mixed programming with GUI and SIMULINK, this article introduce a method to establish the graphical user interface to control SIMULINK with GUI in MATLAB. According to the analyzing model of transformer hot-spot temperature, this article introduce relevant temperature calculating program, and transfer the combine model of GUI and SIMULINK to EXE executive program. By the using of MATLAB GUI/SIMULINK , mixed programming and executive program generating improve the efficiency of researcher, and it can provide a valid way to apply the SIMULINK model in the engineering.

Key words: GUI; SIMULINK; Executive program; hot-spot temperature analyzing

Simulink是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计仿真环境,是实现动态系统建模、仿真和分析的一个软件包,为了方便地创建动态系统模型,Simulink提供了一个建立窗口化的人机交互接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更简洁明了的方式,并且用户可以立即看到系统的仿真结果[1]。

从目前应用类软件发展趋势来看,友好的图形用户界面(Graphical User Interface,GUI)已成为应用软件的基本交互入口[3]。相比于VC、VB等软件的GUI功能,MATLAB的GUI的优势在于可以方便得控制并修改Simulink中的参数,并可以实时得将所需要的结构显示在GUI中,而不再需要将Simulink转换成C/C++代码再利用VC、VB等软件编制对应的GUI界面。

1 SIMULINK仿真模型的搭建和GUI界面的建立

根据上述对MATLAB中的Simulink/GUI的介绍,结合工程实际中的基于对实际变压器运行状态的变压器热点温度计算模型,对其的仿真界面进行了编程和分析。

1.1 变压器热点温度分析模型

变压器热点温度监测和温度预估一直是变压器实际运行的难点和重点,能够对变压器在不同负荷及不同环境下的热点温度计算,对变压器实际安全稳定运行具有重要意义。本实验室通过对实际运行的变压器采集的热点温度的分析,我们利用Simulink模型搭建了能够很好拟合实际热点温度的仿真模型。在该模型中,通过输入环境温度、变压器铭牌参数、变压器各部分油温等温度参数,可以计算出24小时内各个时刻变压器的运行温度[2]。

根据热电类比理论,变压器内部的热量传递路径可以等效为电路模型,其中物理量的对应关系为:热流量对应电流、热阻对应电阻、温度差对应电压、热容对应电容[2]。传统的基于底层油温的热点温度模型的计算公式为:

温度差,为热点与顶层油温的温度差。

由于热点一般在绕组纵向高度85%左右,传统模型中用顶层油温作为计算热点的参考节点存在较大误差,本模型用热点附近油温替代顶层油温[2]。改进模型的方程为:[θhs=θamb+θtank+Δθmoil-tank+Δθwoil-moil+Δθhs-woil]

经研究表明,该模型在过负荷以及动态负荷的情况下更接近于实测值,具有较高的热点温度预测精度[2]。

1.2 Simulink仿真模型的搭建

在MATLAB的command window中输入Simulink,即可进入Simulink Library Browser,在Simulink Library Browser中拖动所需要的模块,将模块用连接线进行连接,并对模块参数进行调整即可。可以通过Scope模块进行仿真数据监测,可以通过out模块将数据输出至out.m文件,可以通过To Workspace模块将数据输出至工作空间。变压器热点温度分析模型如图1所示。

1.3 GUI界面的建立

1.3.1 使用GUIDE快速生成GUI界面

MATLAB的GUIDE工具为使用者提供了组建布局编辑器、排列工具、属性编辑器、对象浏览器、菜单编辑器这几种组建布局工具,通过使用布局工具,用户可以添加所需的用户控件对象并设置所需的属性[3]。设计完成并保存就完成了对GUI的快速布局,其中所有的图形界面信息就保存在相应的FIG文件中,图形界面的回调程序代码就保存在相应的.m文件中。

1.3.2 通过.M文件动态生成GUI界面

MATLAB图形界面程序是基于消息驱动的,但它与其他可视化编程语言的不同之处也决定了其运行流程的不同[3]。运行流程如下。

① 初始化图形界面。这一过程是通过函数Openfig实现的,Openfig函数的调用与M文件对应的FIG文件来初始化图形界面[3]。在这一过程中,还在回调函数中存在CreatFcn函数,除了设置图形界面外需要用输入参数,还利用初始化函数对相应的参数进行初始化设置。

② 创建用于回调函数,存储该图形界面所有的对象内容。这一过程是通过句柄函数guihandles和guidata来实现的。只有获得了图形界面所有对象的句柄,才能顺利编程,因为对句柄的应用是MATLAB图形界面程序的基础。

③ 在后台人机交互驱动机制,等待用户通过图形界面对计算机进行的操作,并等待计算机做出相应的回应。

④ 初始化完毕,给出输出参数。

2 SIMULINK与GUI中参数的传递

由于Simulink使用的数据均来自基本工作空间,因此在仿真之前必须对Simulink中的参数进行定义,如输入常数(Constant)、系统增益(Gain)等,否则将出错。在Simulink中,可以直接双击模块的图形对仿真模块进行参数的修改,同样的,在GUI中可以使用set_param()函数设置Simulink中的参数。另外,由于函数有自己的状态空间,因此需要在GUI中使用sim()函数对Simulink进行模型仿真控制。虽然在函数中定义了仿真中的的参数,但是这些函数只存在于函数的基本状态空间中,模型在仿真时无法获取。因此,由于函数状态空间和基本状态空间的变量和数据不兼容,这就增加了在GUI中调用SIMULINK的难度。具体的参数传递步骤如下:

① 在利用GUI控制Simulink时,首先需要在GUI中加载所需要控制的Simulink仿真。利用load_system(‘model’)函数加载需要控制的仿真模块,其中model即为所需要控制的仿真模块。

② 在GUI中加载了相应的Simulink模型后,即可对模型中的函数进行控制。利用set_param(‘model/Constant’,’Value’,str)函数可以将str所对应的参数赋值给model模型中Constant模块的Value值。同样的,也可以利用set_param(‘model/Gain’,’Value’,str)函数将str所对应的参数赋值给model中Gain模块的Value值。

③ 在配置完相应的仿真参数后,利用sim函数在GUI中运行仿真,具体的语句为:sim(‘model’,str2num(str1)),str1为运行时间,如果不设置此运行时间,模型的运行时间为Simulink的默认值。运行之后,必须对仿真系统进行保存,否则MATLAB会报错,保存语句为:save_system('model')。

④ 在仿真结束之后,研究人员经常会需要利用仿真的结果来进行数据分析。Simulink中提供了两种方法来让我们利用这些数据。第一种是Simulink中的To Workspace模块,利用这个模块可以直接将数据导入到MATLAB的工作空间(Workspace)中,再在GUI中利用plot或axe等函数将数据绘制在坐标系中。第二种是利用Simulink中的Out模块,可以将仿真的结果直接输出到基本工作空间中,如仿真的自变量为时间t、因变量为长度y,在工作空间中就会分别存储为tout和yout,在GUI中利用plot(tout,yout)函数即可绘制图线。另外,也可以在GUI中利用open_system('model/Scope')函数直接打开Simulink中的Scope进行图像观察,这样还可以利用Scope中内置的多种工具来分析图像,但是这条语句不能在封装之后的文件中执行,即单独的可执行文件不能运行Simulink中的Scope模块。

3 可执行文件EXE的生成

3.1 单独GUI的可执行文件的生成

由于Matlab软件本身占用较大的存储空间,不利于在工程实际中方便、直接地使用。为了使编制好的人机交互界面在脱离MATLAB环境下运行,可以利用MATLAB强大的编译功能将GUI程序编译成可执行文件(exe)进行和应用。但是在编译之前,需要对MATLAB的编译环境进行设置。在MATLAB的Command Window中输入”mbuild Csetup”,可以选择不同的编译器进行编译,由于Visual C++编译器对各种系统平台的兼容性好并且编译的效率非常高,因此一般选用Visual C++系列的编译器。设置好编译器后,有两种方法可以将GUI编译成可执行文件。

方法一:直接在命令窗口输入”mcc Cm example.m”或”mcc Ce example.m”,其中”example.m”即GUI界面所对应的m文件。对于第一条语句,在编译生成exe文件时,会额外生成一个DOS窗口,这个DOS窗口显示的内容就是Matlab Command Window里的内容,这样会便于程序调试。在程序调试安全无误之后,就可以利用第二条语句,直接生成不含有DOS窗口的exe程序,进行。

方法二:利用Matlab的Deploytool生成exe程序。在命令窗口输入”deploytool”会提示新建一个”new deployment project”,在Matlab的编译器一栏中选择建立”Standalone Application”,然后将所需要转换的GUI主程序放置在”Main Function”中,其他子程序(如子m文件、表格、图片等)放置在”Other Files”中,并在设置-打包中勾选”Include MATLAB Compiler Runtime(MCR)”,MCR是在没有Matlab环境下运行这种exe程序的环境。设置好变量之后就可以点击”Build the Project”完成编译,然后点击”Package the Project”就可以对编译好的程序与MCR一并打包,这样在其他电脑上安装程序时即可以自动安装程序与环境。

3.2 单独SIMULINK的可执行文件的生成

Real-Time Workshop(以下简称RTW)是Simulink中用于生成C或C++源代码的工具。它可以将Simulink仿真模块转换成C或C++代码与其他语言(如VB、VC、JAVA等)进行混合编程Simulink模型可以,也就是说RTW为Simulink和其他语言提供了一个“接口”。在生成C或C++代码后即可以将代码转换成exe程序,如图2所示,具体步骤如下:

① 编译模型。RTW会分析仿真中的各个仿真模块并且编译成一个中继文件“model.rtw”。

② 产生C代码。目标语言编译器会读取”model.rtw”并将它翻译为C语言,然后将这个C文件放在一个新建的目录里,而非工作目录。

③ 生成一个自定义的makefile。RTW软件会从一个合适的目标makefile样板里建立一个makefile并将它写入新建的目录。

④ 生成可执行程序(exe)。

3.3 GUI与SIMULINK进行联合编程时的可执行文件的生成

由于Matlab的编译器不支持如”sim”函数和”set_param”函数等可以控制Simulink的函数,当利用GUI和SIMULINK联合编程时,需要对这些函数进行处理。因此在GUI与Simulink联合编程时生成可执行文件的做法为:先使用实时工作工具RTW把Simulink编译成exe文件,然后与GUI一起编译,这时在GUI中就不能使用控制Simulink相关的函数,当需要给Simulink模块赋值时,先在GUI里将参数写入一个mat文件中,如将x写入Input.mat为:”save Input.mat x”,然后在Simulink模型中对模型进行修改,让Simulink从mat文件中读取参数,而不是直接由Constant模块或者Gain模块给仿真赋值。同样的,在Simulink输出时,将输出参数也写入到mat文件(如Output.mat)中,Output文件也会存储在Workspace中,就可以在GUI中从Output.mat文件读取数据并作图。

4 变压器热点温度仿真计算及分析

如图3所示为本实验室开发的变压器热点温度分析软件,该软件可以设置不同变压器参数并进行保存,通过输入不同的环境参数以及温度限制,可以计算出变压器热点温度曲线以及当前条件下的变压器运行参数。此外,该软件还具有对变压器过载能力分析的能力,输入期望的目标运行电流或者目标运行负载可以得到相应的过载分析结果。

如图4,所示为本实验室研制的改进模型热点温度、实测热点温度与其他模型热点温度对比图,其中实测热点温度数据为四川省资阳电力公司的变压器实际运行数据。通过与实际运行数据进行比对发现,该仿真结果能够很好地拟合实际运行曲线,并且利用本论文中的方法编制的软件能够稳定、高效地运行在变电站中,对变电站的实际生产提供有力的数据支持。

其他模型热点温度对比[2]

当环境温度为25℃,变压器额定功率为120MVA,变压器额定电压为250KV,负载电流为250A时,变压器的额定电流为277.13A,电流裕度为46.49A,当前运行温度为83.35℃,热点温度曲线如图5所示。

由MATLAB软件中的Simulink/GUI在变压器热点温度计算中的应用可知,该系统通过输入相应的参数,可实现对变压器热点温度、电流裕度和过载能力分析,这大大减少了研究人员在常规方法基础上的工作量,提高了效率,同时为今后MATLAB软件中的Simulink/GUI在工程应用中提供了一种新的解决问题方法。

5 结论

① 在Matlab中可以利用Simulink与GUI的混合编程来实现仿真与界面的融合,避免了先将Simulink转换为C代码在其他界面软件上二次编程的繁琐,并且还可以在GUI中实时地修改各类参数,这种方法高效而又稳定。

② Simulink与GUI混合编程可以编译成可执行文件exe,而且这种方法要比利用外部接口来实现exe程序的设计要简便。

③ 通过该方法编制的软件可以脱离matlab环境运行,易于在工程实际工作中使用。

参考文献:

[1] 刘浩, 韩晶.MATLAB R2012a完全自学一本通[M].北京:电子工业出版社,2003:136-137.

Liu H, Han J. Self-Study of MATLAB R2012a;Bei Jing: Publishing House of Electronics Industry,2003:136-137.

[2] 陈炯,薛飞,周健聪,等.动态负载下改进的变压器热点温度计算方法[J].华东电力,2014,42(12).

Chen J,Xue F,Zhou J C, etc. Improved Calculation Method for Transformer Hot Spot Temperature with Dynamic Load. East China Of Electric Power, 2014;Vol42,No.12

[3] 陈光,毛涛涛,王正林,等.精通MATLAB GUI设计[M].北京:电子工业出版社,2011:236-237.

gui设计论文篇3

【关键词】起落架控制系统;GUI;Simulink;收放控制逻辑

【Abstract】Based on aircraft landing gear retraction and extension, a control logic simulation model is constituted by GUI and Simulink. Compared with model based on Simulink, joint model has advantage at display directly, easy to test and analysis and so on. The simulation result shows the joint model could realize multiple cases test, result analysis and record. It’s also carried out the requirement of landing gear retraction and extension control logic simulation, and support to the logic validation.

【Key words】Landing gear control system; GUI; Simulink; Retraction and extension control logic

0 引言

起落架收放控制系是飞机的一个重要子系统,其控制逻辑的设计及性能影响着飞机的起降安全,因此需要对收放控制逻辑建立模型进行仿真分析,以验证控制逻辑的性能和功能。

Matlab Simulink是目前应用较为广泛的建立仿真软件,通过添加display、scope、sin和constant等模块可实现模型输入输出的设置和显示。但是当模型的输入、输出的变量很多时,通过手动逐一修改输入参数等进行模块测试就显得特别麻烦,容易出错;并且显示结果不直观。Matlab GUI是一种图形化的沟通界面,通过定制界面能够弥补Simulink显示和设置不直观的问题。将Simulink和GUI联合起来进行仿真无疑是一种较好的分析手段。

近年来,一些学者采用GUI和Simulink相结合进行建模的方式来分析解决实际遇到的问题。其中,葛述卿[1]以滑块-单摆为研究对象,采用了一种在Simulink模型中自动打开GUI界面,通过GUI界面输入仿真数据的方式实现Simulink和GUI的联合建模仿真。这种方式以Simulink作为主导,方便对Simulink进行调试,但是对于模型无须更改或者需要对模型进行加密封装以及存在大量仿真数据的情况,这种方法就略显不足。安树[2]等人以整流电路为研究对象,利用GUI GUIDE向导进行建模,实现整流电路的建模与仿真,但对于界面中存在多个相同类型控件的情况,利用GUIDE向导无疑增加了建模的工作量。

本文根据起落架收放控制系统仿真需求,设计了一种Simulink和GUI联合仿真模型,在Simulink中搭建起落架收放控制逻辑仿真模型,并对模型进行封装;同时,借助GUI便于实现人机交互的特点,通过编写脚本文件的方式,实现仿真数据的输入、输出初始化设置、仿真数据的显示与记录,实现了对收放控制逻辑进行仿真的目标。

1 Simulink仿真模型

飞机起落架收放系统采用电传操纵、液压作动形式;正常收放系统由两个起落架控制单元冗余控制,控制单元接收起落架收放手柄以及相关传感器的信号,经过逻辑运算,控制起落架选择阀电磁铁的通断电状态,通过液压作动,完成起落架的收放动作控制。

根据控制单元的控制逻辑,在Simulink中分别利用“AND”,“OR”和“NOT”等模块搭建模型,实现控制逻辑的仿真。主要包括:轮载信号逻辑仿真模块、起落架手柄信号逻辑仿真模块、起落架上位锁信号判断逻辑仿真模块、起落架下位锁信号判断逻辑仿真模块、起落架选择阀控制信号逻辑仿真模块等。

图1所示为控制逻辑子模型示意图。图2为整个控制逻辑模型示意图;其中,模型中对关键控制逻辑部分进行了封装;并根据真实的输入信号的类型及数据长度,对输入和输出数据进行拆分和打包。此外,还在模型中添加了数据显示模块,模型的便于调试、检测和分析处理。

2 GUI建模

Matlab中GUI的创建有两种方式。一种是利用uicontrol、uimenu等函数以编写m文件的方式来创建GUI模型,这种方式的优点是当界面上需要布置较多相同类型的控件时,利用for、while等函数能够快速方便的实现;并且代码的通用性较高。另一种方式是利用Matlab提供的GUIDE向导来创建,通过鼠标对控件进行拖拽即可快速构建出整个GUI[3];但是,控件较多时,这种方法实现起来比较繁琐。本文针对起落架收放控制系统输入输出变量控件较多(40余个)的情况,采用编写m文件的方式,快速构建GUI模型,便于理解和后续维护修改,简化模型代码。图3为利用编写M文件的形式编写的仿真界面示意图。

在GUI界面中,利用“for”、“set”以及“get”等函数,实现批量的创建和设置check box控件,以完成对控制系统输入信号的设置。此外,为了能够简化操作、方便测试,设置导入数据按钮,将设置好的excel测试数据文件导入,完成对输入变量名字和数值的设置,实现多组测试方案的快速测试,避免模型修改后,手动逐一设置带来不必要的麻烦。而经过Simulink仿真运算获得的数据,以表格的形式在界面上显示,并且通过导出数据选项将测试数据记录保存在excel文件中。

3 Simulink和GUI联合建模仿真

本文采用GUI和Simulink联合建模的方式,以GUI界面作为主要的平台,实现模型的仿真分析,仿真流程如图4所示。通过GUI将数据导入Simulink模型,运行Simulink模型,输出数据到GUI,并在GUI 中显示记录仿真结果。

联合仿真过程中,Simulink和GUI的数据交互是仿真的一个关键的问题,主要通过以下4个步骤来实现这一问题。

1)打开名为control.mdl 的Simulink模型。语句如下:

open_system('control');

2)将GUI界面中设置或导入的数据data_from_GUI赋给Simulink模型中名为input_1的常量模块。语句如下:

set_param('control/input_1','Value',data_from_GUI);

3)运行Simulink模型,语句如下:

sim('control');

4)获取Simulink仿真结果,方法为通过evalin函数,从workspace中,获取名为output变量的值,具体语句如下:

evalin('base', 'control/output')。

4 仿真结果

以飞机位于空中,起落架处于放下上锁的位置作为输入状态,对联合仿真模型进行测试。

图5(b) 所示为利用GUI进行输入参数设置界面,运行程序,得到图5(a) 所示的模型参数,从图中可以看出,若在Simulink中设置参数,则需要输入较长的数据,且没有相应的信息提示,而利用GUI进行设置则清晰明了,并且在GUI中还可以通过导入数据文件功能直接参数导入,方便测试。

图6所示为联合仿真结果,GUI界面将Simulink的仿真结果进行解码,以列表的形式显示出来。从图中可以看出,经过仿真运算,得到起落架的状态为“放下上锁”,仿真运行结果正确,此外,联合仿真模型还可以实现不同信号输入条件下的仿真,仿真结果准确可靠。

5 结论

利用Simulink和GUI联合建模充分发挥二者的优势,特别地,对于起落架收放控制逻辑测试这种输入输出信号多,仿真测试过程中,具有多组输入信号的情况,利用联合建模的方式,达到了对起落架收放控制逻辑联合建模仿真的目的,实现了对控制逻辑的快速测试和分析,且模型交互性好,方便数据的管理,编程简洁便于后期维护和使用。

【参考文献】

[1]葛述卿.Simulink和GUI结合实现机械系统仿真及动画[J].机械研究与应用,2006,19(1):104-106.

gui设计论文篇4

【关键词】电力电子技术;GUI;M文件;仿真实验

电力电子技术应用是电气自动化专业的一门重要的专业基础课程,它以电力电子器件为基础,应用电路和设计理论以及分析开发工具,实现电能的高效能变换和控制[1]。该课程实践性、综合性和工程性很强,但是,由于教学学时不足和实验设备的短缺等原因,造成了进行教学实验的困难。另外,目前的电力电子技术实验台在设计过程中还有许多不尽完善的地方,学生实验复杂,还容易出错,实验设备损坏率较高,因此,需要设计一种可以在课堂上使用的电力电子技术仿真实验系统,在抽象的理论教学的同时给予学生生动的实验演示,让学生实时地观察到参数改变对电路的影响。

MATLAB软件因其强大的科学计算和图形处理功能,已广泛应用于科研和工程领域。它提供了用户图形界面开发程序GUIDE,支持可视化编辑,并根据用户设计的GUI布局,自动生成M文件的框架,用户使用这一框架编制自己的应用程序[2]。这种编程方式直接方便,容易上手。本文设计的电力电子技术仿真实验系统是一种建立在MATLAB平台上的具有图形用户界面的软件,它将理论知识与传统的模拟实验结合在一起,可大大的提高课堂教学效果,有利于培养学生分析问题和解决问题的能力[3]。

1.仿真实验的设计

本仿真实验采用模块化设计思想,共分为两大模块:电力电子器件部分和电力电子变换电路部分。电力电子器件部分包括常用的半控型器件晶闸管和四种全控型器件;电力电子变换部分包括五大变换电路,各变换电路又分设具体的变换电路。仿真实验的总体框架如图1所示。

图1 系统总体结构图

2.GUI的设计流程

系统的总体框架完成之后,就要利用MATLAB的GUI来设计每一个实验界面。一个完整的GUI设计分为两个阶段完成,第一个阶段是图形界面的结构设计。利用设计向导构造整个图形界面的布局,合理安排控件,设计菜单,进行必要的属性设计。第二个阶段为功能设计。即为控件和菜单编写相应的回调函数(Callback),具体实现界面的各种功能[4]。

3.仿真实验主界面

在仿真实验的主界面中,采用下拉菜单选择要进行的实验模块;利用静态文本框显示仿真实验的文字部分;设计了按钮,用于进入实验系统和退出系统;设计了坐标轴,用于加载图片。分别设定各控件的属性,包括String和Value值等。合理布局,确定各控件的位置之后,建立一级菜单文件、编辑和帮助,设置一级菜单和子菜单的属性,得到仿真实验系统的主界面如图2所示。

保存之后会自动生成一个同名的M文件,必须在M文件中修改和添加各控件的回调函数代码,才能实现控件的功能。在主界面中选择“电力电子器件”或“电力电子变换电路”,再继续选择所需要的实验项目,就会进入相应的二级界面。

图2 仿真实验系统的主界面

4.电力电子器件实验的界面设计

为保持界面风格的一致性,二级界面的设计基本相似[5]。在主界面上选择电力电子器件实验,点击“进入”按钮,就会调用电力电子器件实验的二级界面(如图3所示)。例如,在列表框中选择“晶闸管”元件,就会进入到相应器件的实验界面中(如图4所示)。通过axes( )和imshow( )语句在特定的坐标轴中显示器件的实物及模型等图片,利用静态文本框对器件的功能和特性进行介绍。点击“器件特性测试按钮”,进入晶闸管特性测试界面(如图5所示)。通过滚动条输入门极电压的数值,单击测试按钮,在显示区域,就会显示回路电流和器件管压降数值,以此判断器件的导通情况。

图3 电力电子器件实验界面

图4 晶闸管实验界面

图5 晶闸管特性的测试

5.电力电子变换电路实验的界面设计

在电力电子变换电路的主界面中(如图6所示),在下拉菜单中选择变换的功能,就会在另一侧的列表框中显示相应的具体电路。例如选择可控整流电路中的单相全控桥式整流电路。单击“进入”按钮时,可以通过关闭主界面close(figure(mainplat)),figure()打开相应的界面,跳转至单相全控桥式整流电路的界面。整个界面主要由电路原理图、参数设置区、结果显示区、仿真波形显示区以及按钮组成[6]。

图6 电力电子变换电路实验

图7 单相全控桥式整流电路实验

(1)电路参数的设置

如图7所示,如果是电阻性负载,参数包括负载电阻阻值、电源电压和移相角。设置参数后点击“计算”按钮,结果显示区中会自动显示常用量的计算结果。各文本框之间数据传递的相关代码为:

Voltage=str2num(get(handles.edit2,’string’));%取得电源电压数值

YiXiangJiao=str2num(get(handles.edit4,'string'));%取得移相角数值

FuZaiVol=0.9*Voltage*(1+cos(YiXiangJiao*3.1415926/180))/2;%计算负载电压值set(handles.edit8,’string’,num2str(FuZaiVol));%将负载电压显示

DianZu=str2num(get(handles.edit1,'string'));%取得电阻阻值

set(handles.edit10,'string',num2str(FuZaiVol/DianZu));%计算负载电流

set(handles.edit9,'string',num2-str(FuZaiVol/(2*DianZu)));%计算晶闸管平均电流

(2)仿真波形的显示

在M文件中,利用plot指令分别画出单相全控桥式整流电路带电阻性负载时负载电压、负载电流、晶闸管电流以及晶闸管电压的波形。只要输入移相角的数值,单击“波形”,就会在指定坐标轴中显示相关波形。相关代码如下:

alpha=(str2num(get(handles.edit4,'string')))*3.1415926/180;

x=alpha:pi/180:pi;

y=sin(x);

x2=alpha+pi:pi/180:2*pi;

y2=sin(x2);

x3=alpha+2*pi:pi/180:3*pi;

y3=sin(x3);

plot(handles.axes2,x,y,x2,abs (y2),x3,y3)

plot(handles.axes3,x,y,x2,abs (y2),x3,y3)

plot(handles.axes4,x,y,x3,y3)

根据输入的移相角和电源电压的不同,仿真波形会相应变化。四个仿真波形纵向对齐,使学生可以很方便地看到移相角的不同,各个波形会同时在转折点处发生变化,非常直观,清晰,有助于学生对电路原理的理解。如果对仿真结果不满意,可以重新设置参数继续仿真。仿真结束后可以选择返回的界面。整个实验系统界面友好,操作简单。

6.结论

依托MATLAB的GUI界面为平台,将仿真实验引入电力电子技术应用课程的教学[6],对电力电子电路进行仿真,可以将理论教学与实验过程整合一起,便于演示及交互操作,对研究参数变化对电力电子装置的影响,并进一步丰富教学手段,引导学生进行研究性学习有很好的辅助作用,并在一定程度上弥补了实验设备不足的主要问题,是一种低成本的实践教学手段。

参考文献

[1]黄家善.电力电子技术[M].北京:机械工业出版社, 2011.

[2]赵广元.MATLAB与控制系统仿真实验[M].北京:北京航空航天大学出版社,2009.

[3]黄瑛.基于MATLAB GUI的电机学仿真实验系统设计[J].中国现代教育装备,2009,17(87):38-39.

[4]罗华飞.MATLAB GUI设计学习手记[M].北京:北京航空航天大学出版社,2011.

[5]安树,赵霞,徐小华,等.基于MATLAB GUI的整流电路仿真设计[J].现代电子技术,2011,4(34):155-158.

gui设计论文篇5

关键词 翻转课堂;MATLAB GUI;自动控制原理;实验教学

中图分类号:G642.423 文献标识码:B

文章编号:1671-489X(2017)06-0127-03

1 引言

自动控制原理是高等院校自动化、测控技术、机械电子等专业本科学生的必修核心课程,主要研究自动控制系统的一般规律[1-3],其理论性强,理解和消化课程理论内容的重要途径就是实验课。但是,目前的实验教学仪器陈旧和实验学时少,实验沦为理论知识的一种验证,学生盲目地按实验任务书要求进行导线连接等机械式操作,不能充分发挥学生的能动性。

MATLAB是美国Math Works公司出品的商业数学软件,其GUI(Graphical User Interfaces)是一种新型的图形用户界面编程工具。通过MATLAB GUI设计和开发自动控制原理虚拟实验平台,采用翻转课堂教学模式,在实验课前将实验任务书、MATLAB GUI实验软件、思考小问题、小测验发放给学生,使学生实验前就对实验内容及结果有一定掌握。实验课上针对学生课前测验中遇到的问题开展讨论,并针对多数人出现的问题统一讲解和指导,而个别人的问题单独讲解。这样不但能很好地解决传统实验存在的问题,又能加深对自动控制原理课程内容的理解,更能调动学生学习的积极性,将学生盲目按指导书操作模式朝向为什么要这样做、怎样做更好、还能做些什么转变。

2 翻转课堂教学

针对自动控制原理强调方法论,理论性强,从而面对较多的抽象概念和数学公式,教师的教学过程让学生感觉枯燥乏味的问题[4],基于MATLAB GUI编写的虚拟实验软件,以翻转课堂的形式对该课程实验教学进行改革。

翻转课堂的起源 2007年,美国科罗拉多州林地公园高中的化学教师乔纳森・伯尔曼(Jon Bergmann)和亚伦・萨姆斯(Aaron Sams)为了给由于天气原因缺课的学生补课,将上课内容进行录像后,通过电邮等网络形式将教学内容发送给学生,学生在家看视频听讲解,课堂上教师主要用来讲解学生在视频学习或作业中出现的问题,成功帮助缺课而跟不上教学进度的学生[5-6]。这就是风靡全世界的翻转课堂教学模式[5-7]。

翻转课堂的定义 翻转课堂(Flipped Classroom),即学生首先在家提前完成视频等相关材料的学习,省却教师的课堂讲解,教师课堂上则集中精力开展问题讲解和分组讨论。该方法颠倒了传统学校“课上教师讲授,课后完成作业”的教学安排[5-7]。

翻转课堂的意义 首先,在教学内容及进度一样的情况下,因为能力差异,学生掌握学习知识的程度必然出现差异。翻转课堂“以学生为中心”,注重在课上进行教师针对性的指导,实现因材施教。同时,学生根据自身的学习习惯和能力,课前自主计划学习方法。其次,课堂上学与课后练习相结合模式被课前学习新知识,教师不再单纯对实验内容讲解和监督,以指导小组协作学习及答疑解惑为主所替代,针对课前自学知识遇到的问题,帮助学生更好掌握。最后,在翻转课堂中,学生由填鸭式被动接受知识转变成主动学习者、研究者,提高了学习能动性。

3 自动控制原理课程实验教学存在的问题

长期以来,实验课程几乎是理论教学的知识验证,尽管学生动手做了一些实验,却无法站在系统的高度掌握所学知识,更谈不上综合设计,灵活应用到实践中。又由于有限实验学时,实验课就成了教师的讲解为主,学生机械地完成硬件连接、记录结果,对出现的与理论的差异及如何分析出现的原因却很少进行探讨,更谈不上完成创新设计来激发兴趣,就无法有效地培养解决实际问题的能力。

现有的大部分实验教学仪器还处于传统模拟实验类型,实验箱是高度集成封闭的,通过导线连接不同的实验模块构成典型环节或系统,在典型激励信号作用下,通过示波器或计算机观察系统响应。这种实验方法存在明显不足:1)实验仪器箱集成度高,学生实验就成了连接导线,无法知道模块功能如何实现,对实验呈现出盲目性;2)理论学习和实验动手操作相互分离,实验不能用于固理论知识,理论也无法指导实践;3)由于元器件的非理想特性,当实验结果与理论值差异较大时,缺乏分析、讨论出现问题原因的环节。

4 基于MATLAB GUI实验平台的翻转实验教学改革

基于MATLAB GUI的翻转课堂教学模式构建 2011年美国学者杰姬・格斯丁(Jackie Gerstein)将课堂划分为由体验学习阶段、概念探究阶段、意义建构阶段以及展示应用阶段组成的翻转课堂教学模型[5]。在此基础上,美国的Robert Talbert教授在多年实践研究后提出翻转课堂结构图。我国南京大学的曾贞等,江苏科技大学的张其亮等,也结合自己的教学实践,创建了翻转课堂教学框架[6]。借鉴众多学者的观点,结合自动控制原理实验课程教学需求以及学生的特征,构建图1所示翻转课堂教学模型图。

基于MATLAB GUI翻转课堂的实施 基于教学模式结构图,设计基于MATLAB GUI的自动控制原理翻转实验教学流程。选取大三学生作为实验对象,他们已有电路、物理、模拟电子技术、高数等基础课程的储备,有一定的动手实践和自主学习能力;在自由组合的基础上每组4人。为实现实验教学的翻转,给学生的教学资源包括实验指导书、讲授PPT、讲解视频、相关实验文献资料和自制MATLAB GUI软件。采用MATLAB GUI软件编写的虚拟实验平台软件主界面如图2所示。

实验内容有典型环节响应特性、控制系统稳定性分析、系统频率特性、连续系统校正、数字PID控制、采样实验。同时,将采用MATLAB GUI软件编写的该课程实验的虚拟软件的原始文件也发放给学生,让学生在课前能够在学习实验指导书的基础上,在计算机上模拟完成实验,直观地获得变换控制参数对实验结果的影响,这也是该实验翻转教学区别于理论课程的地方。这样学生就能够在课前将实验指导书给定的实验任务有所练习和对实验提前掌握。因此,基于MATLAB GUI仿真软件的实验教学可以保证翻转教学的有效开展。

整个翻转课堂按课下和课上的组织形式开展。

1)课下。实验教学的目标就是要使学生加深对理论课程的理解,掌握实际电路或机械结构与理论之间存在的内在联系和差异之处。教师课下完成教学活动设计、教学资源的,收集整理学生遇到的问题,在线答疑。教学活动设计完成分配学习任务、划分学习小组、实验组织形式、制定评分标准等。的教学资源包括实验任务书、MATLAB GUI仿真软件、微视频教程、参考书籍、相关的专题学习网站等类型的素材。为适合不同基础的学生学习,将资源分为基础资源和扩展资源两个等级。其中,MATLAB GUI仿真软件和实验演示微视频的制作是资源准备中的核心内容,特别指出理论实验和实际实验中结果会出现的差异。为每个实验项目的教学目标准备1~2个微视频,每一个微视频只介绍一个实验,时间在8分钟以内。

将视频和其他电子资源上传到QQ文件夹和百度云,方便学生下载观看。同时,通过QQ和微信等网络通信工具完成在线答疑与指导。学生可以将自己在学习中遇到的问题出来,与教师和同学在线交流。教师统计学生在线提出的问题,及时掌握学生的学习情况,便可以在课堂上有针对性地指导学生学习。为了增加学生自学的兴趣和参与度,根据学生提出问题、解答问题、在线参与度和解决问题质量给出平时成绩,通过解决他人问题获得个人成就感。这种方式最大的好处就是实现了个性化学习,学生可以根据自己的情况选择资源和学习时间。

2)课上。由于课下已完成实验相关内容的自主学习,对实验目标、操作步骤、注意事项有所掌握,课上花上几分钟针对课下大多数学生遇到的问题进行讲解。实验课上不再对实验过程等进行讲解,为动手实验留出更多的时间。课上实验分为三个阶段。

①合作探究阶段。按分组开展硬件实验,学生可以充分利用这段时间动手实践,和同组伙伴讨论实验中遇到的问题。并可将实际硬件实验结果和MATLAB GUI仿真软件结果进行对比,验证实验内容是否正确,同时可以找出理论结果与实际结果之间的差异,分析造成差异的原因。更重要的是可以在MATLAB GUI仿真软件上创造性地设计出实验参数并进行仿真,在硬件上进行验证。这样就可以避免学生实验课上对实验内容、操作步骤、实验结果的盲目性,同时能直观地观测到不同输入和输出的关系,原有系统和校正系统特性的不同也能给学生创造性设计提供检验手段。

②个性化指导阶段。针对每一个小组在合作动手实践阶段都会遇到不同的问题进行个性化指导,为每个小组解答疑惑,实现对不同问题的详细解答。同时,将遇到的问题和需要注意的地方与其他小组进行组间的交流和分享。

③总结反馈评价阶段。总结各个小组出现的主要问题,对实验中的知识要点进行系统化梳理,加深对实验内容的掌握。最后,对学生的实验进行评价,采用自评、小组成员互评、整体实验结果、组间互评等多元化形式。同时,引导学生积极探索以及交流协作精神的培养,潜移默化中提高学生自学能力和解决问题的能力。

5 翻转课堂实验教学效果分析

本次运用对照方式完成翻转课堂实验改革效果的研究。实验对象为四个班级的大三学生。首先,调查问卷结果显示实验班和对照班学生基础相当。其次,实验1、2班各有学生48人,对照班1有学生47人,对照班2有学生46人,人数相当,因此,符合对照实验的条件。对照班采用传统的“教师课上讲解演示+学生动手实验”的方式进行,实验组班级采用本文论述的翻转课堂教学模式进行教学,在8学时的实验后,对学生进行操作技能和理论测试,同时对实验班的学生进行问卷调查。

将四个班的测试成绩划为五个分数段,即90~100分、80~89分、70~79分、60~69分、60分以下,成绩分布统计图如图3所示。由图3可见,在80~100分这两个成绩段的比例,实验班明显高于对照班,实验班1和2占比58.33%和54.17%,对照班1和2占比36.17%和30.43%;而在69分以下两个成绩段的比例,实验班明显低于对照班,实验班1和2占比14.58%和16.67%,对照班1和2占比25.53%和26.09%。通过分析可知,采用翻转教学的实验班成绩有了明显进步。

通过实验班的问卷调查发现,89.53%的学生认为该教学模式很好地调动了学习的积极性,同学和教师的交流增多了,促进了自己的学习。同时也存在一些不足,主要是学生对MATLAB GUI中系统函数输入不够熟悉,课上小组汇报活动时间太短。

6 总结

自动控制原理是一门理论性较强的专业课,其实验教学是加深对理论理解、增强动手能力的有效途径。基于MATLAB GUI的翻转实验教学改革使学生在课前就能够模拟完成实验内容,得到理论实验结果,使课上实验变得有的放矢。同时,通过翻转模式提高了学生自我学习能力、团队意识,延长了实验课上动手时间,对理论和实践有了更深入的理解和掌握。实践表明,通过基于MATLAB GUI的翻转教学,学生动手能力和理论成绩都有明显提高。

参考文献

[1]韦春荣.基于MATLAB_GUI的自动控制原理课堂辅助教学系统[J].广西物理,2013(4):55-56.

[2].基于MATLAB教学平台的《自动控制原理》教学改革研究[J].台州学院学报,2011(3):76-81.

[3]隋金雪,华臻,杨莉,等.《自动控制原理》课程教学改革与创新[M].中国黑龙江哈尔滨:第6届全国高等学校电气工程及其自动化专业教学改革研讨会,2009.

[4]王艳秋.基于MATLAB教学平台的自动控制理论教学改革与实践[J].辽宁工学院W报:社会科学版,2006(1):122-124.

[5]陈怡,赵呈领.基于翻转课堂模式的教学设计及应用研究[J].现代教育技术,2014(2):49-54.

gui设计论文篇6

关键词: 叠加显示; DM6446; Qt/E; GUI

中图分类号: TN911?34; TP391 文献标识码: A 文章编号: 1004?373X(2013)14?0085?04

Video overlay display method of Qt GUI application in DM6446

LUO Guo?zhu1, 2, ZHANG Yong1

(1. Shanghai Institute of Technical Physics, Chinese Academy of Sciences, Shanghai 200083, China;

2. University of Chinese Academy of Sciences, Beijing 100049, China)

Abstract: The Qt embedded Linux (Qt/E) is used to develop the video GUI application on the MontaVista Linux software platform on DM6446. Taking full advantage of the DM6446 OSD modules, the video is displayed by the OSD video window, and overlaid by the Qt GUI layer on OSD bitmap window. Since the video data is updated by the hardware modules, the application has no need to transform the color format, thus the video display efficiency is improved. On the target board, the GUI application has the real?time ability to capture and display the video data, which shows the practicality of the Qt/E in developing the video GUI application on DM6446.

Keywords: overlay display; DM6446; Qt/E; GUI

0 引 言

TMS320DM6446是TI公司推出的一款应用于视频处理领域的达芬奇系列芯片,它包含一个ARM926EJ?STM的通用处理器(GPP)内核、一个C64x+TM的数字处理器(DSP)内核以及一个图像处理子系统(VPSS),是一个高性能的数字多媒体片上系统[1]。DM6446的在屏显示模块(OSD)支持在视频画面上叠加图片、文字、鼠标等附加信息,非常方便于视频和位图的叠加显示应用[2?4]。ARM端的MontaVista Linux提供了视频驱动V4L2和帧缓冲驱动FrameBuffer,V4L2用于视频采集,FrameBuffer用于控制在屏显示模块OSD。Qt/E是应用于嵌入式图形界面(GUI)开发的工具,其底层显示直接构建于FrameBuffer之上,通过适当的配置移植,便能够利用Qt/E在DM6446上进行GUI的开发[5?7]。

由于V4L2采集的视频数据格式为YUV422,而OSD位图窗口的数据格式为RGB565,因此若要将视频数据通过Qt绘制于GUI位图窗口之上,则需要视频数据格式的转换,这将耗费较多的CPU时间,视频的显示效率较低。本文结合OSD模块的多窗口显示特性和Qt/E在嵌入式GUI开发方面丰富的编程接口,提出了一种将视频和Qt GUI图层分开绘制,实现视频层和GUI位图层叠加显示的方法,避免了视频数据格式的转换耗时,提高了视频的显示效率。

1 系统整体结构

整个视频采集和叠加显示的结构如图1所示,从上到下依次为应用层、驱动层和硬件层。

硬件层主要包括视频采集设备和视频显示视频两部分,视频数据由视频解码芯片TVP5150从PAL制式的摄像头解码获得,数据为16位YUV 422格式(UYVY);视频的显示由DM6446的视频处理子系统VPSS中的在屏显示模块OSD和视频编码模块VENC完成,在VENC进行编码输出之前,会对OSD各窗口模块数据进行融合。驱动层主要涉及到Linux下的视频采集驱动程序V4L2以及帧缓冲驱动程序FrameBuffer。V4L2主要为应用层的视频采集线程提供视频采集接口,而FrameBuffer主要为应用层的视频显示线程提供视频显示接口,以及为Qt/E GUI提供底层绘图接口。应用层采用了多线程编程技术,以实现视频的实时采集和显示,并保证Qt/E GUI窗口能够对用户输入持续响应。在Qt/E GUI主线程中提供了对视频采集和视频显示子线程的控制接口,用以控制视频采集和显示;同时提供了对属性窗口的控制接口,能够控制属性窗口的位置、大小及混合度。

图1 视频采集和叠加显示整体结构

正如图1中的数据流向所示,视频数据采集后将被拷贝到视频窗口VIDWIN1上,而Qt/E GUI窗口图层则被绘制到OSDWIN0,视频混合模块BLEND将根据属性窗口ATTRWIN的配置值来对视频窗口和位图窗口数据进行融合,最后经由视频编码模块VENC送至显示器,实现视频和Qt/E GUI的叠加显示。

2 在屏显示模块OSD及帧缓冲FrameBuffer

2.1 在屏显示模块OSD

DM6446的视频处理后端VPBE主要由在屏显示模块OSD和视频编码模块VENC组成,OSD模块管理了多个硬件显示窗口,而VENC则负责将窗口数据进行编码后送至显示设备进行显示[2]。硬件窗口主要包含有两个视频窗口(VIDWIN0,VIDWIN1)、两个位图窗口(OSDWIN0,OSDWIN1)以及一个矩形光标窗口(Rectangular Cursor)。对于每一个视频窗口和位图窗口,都有相应的DDR2内存缓冲区用于保存窗口的数据,通过修改相应缓冲区便可达到直接写屏的目的。所有的硬件窗口最终都是要显示到同一个显示屏幕上的,这就涉及到了窗口的显示优先级问题。OSD硬件窗口模块的优先级为Rectangular Cursor>OSDWIN1>OSDWIN0>VIDWIN1>VIDWIN0>Background color。当所有窗口都使能显示时,在屏幕上重叠的窗口只有顶级窗口能够显示。在应用中,视频数据显示在VIDWIN1,GUI窗口显示在OSDWIN0,则默认屏幕上只能显示OSDWIN0,若要显示VIDWIN1,则需配置属性窗口。

OSDWIN1可以配置为属性窗口ATTRWIN,用以控制视频窗口和位图窗口数据的混合度。当配置为属性窗口时,窗口位深必须为4 b,其中最高位用以控制属性窗口的闪烁(blink)属性(在我们的应用中不使用,所以置零),低3位用以控制8种不同的位图窗口和视频窗口混合度。属性窗口只对被其覆盖的位图窗口的透明设置有关,对于在属性窗口范围之外的其余位图窗口则不受属性窗口的影响。通过控制属性窗口的像素值,使混合度在0~7之间变化,便能够实现不同程度的视频层和位图层的融合。当混合度为0时,被覆盖部分将实现视频层的完全透明显示,而当混合度为7时,则被覆盖部分将仅显示位图数据,其余混合度下将实现视频层的半透明显示效果。OSD窗口的这一显示特点,正是视频数据和Qt GUI窗口数据叠加显示方法的硬件基础。

2.2 帧缓冲FrameBuffer

帧缓冲驱动程序FrameBuffer提供了应用程序控制显示设备的方法[8]。在MontaVista Linux中提供的FrameBuffer驱动程序,将OSD的2个视频窗口和2个位图窗口都抽象成了设备文件。其中/dev/fb/[0,1,2,3]分别对应OSDWIN0,VIDWIN0,OSDWIN1及VIDWIN1,通过操作相应的设备文件,便可以达到操作某个具体窗口的目的。

帧缓冲驱动程序向系统申请了连续的内存缓冲区用以缓存窗口像素数据,一般缓冲区大小是窗口大小的2~3倍,在实际显示时根据需要快速切换,以提高屏幕绘制效率和减少闪烁。应用程序对FrameBuffer操作的基本流程如图2所示。

帧缓冲FrameBuffer提供的应用程序编程接口(API)主要有open(),close(),ioctl(),mmap()和munmap()等。函数open()和close()主要用于设备的打开和关闭;mmap()用于将内核空间地址映射到用户空间,以加快应用程序对内核空间数据的访问,而munmap()则用于解除这种映射关系;ioctl()是应用程序与驱动程序交互的基本接口,应用程序对驱动程序的控制基本都是通过这个接口来完成。

通过FrameBuffer正确配置OSD视频窗口VIDWIN1、位图窗口OSDWIN0以及属性窗口ATTRWIN,应用程序便能够实现视频层和位图层的叠加显示。

图2 FrameBuffer操作流程图

3 Qt/E GUI视频采集及叠加显示

3.1 多线程实现方法

OSD模块为视频和GUI叠加显示提供了硬件基础,而FrameBuffer则是进行应用程序操作OSD模块的接口,是应用开发的软件基础,通过它们,才能够实现视频数据和Qt GUI窗口的叠加显示。视频采集用到了Linux下的视频设备驱动程序V4L2,通过其提供的编程接口,能够从视频解码芯片中采集得到YUV422格式的视频数据,限于篇幅,这里不做具体介绍,具体可参阅相关文档[9?10]。为了实现视频的实时采集和显示,在应用层,采用了多线程编程的方法。视频采集和显示线程都继承自Qt的线程类QThread,分别为CaptureThread和DisplayThread。在这里,主要是重新实现QThread的run()方法,分别为CaptureThread::run()和DisplayThread::run(),当线程类实例构建完毕之后,只需通过调用线程的start()来开启对应线程的run()方法即可。为了实现视频采集线程和视频显示线程对视频显示帧缓冲空间的同步访问,这里用到了Qt提供的信号量类QSemaphore。通过信号量的控制,视频采集线程能够将新采集到的视频数据正确拷贝到视频显示帧缓冲区的空闲区域,而不影响当前正在显示的画面,其过程如图3所示。

由于分配给视频显示的帧缓冲数目为3,故视频显示帧缓冲的索引值为0~2。为此,设置QSemaphore A的初始值为2,在CaptureThread中的视频显示帧缓冲索引初值为1,而设置QSemaphore B的初始值为1,在DisplayThread中视频显示帧缓冲索引初值为0。当只有视频采集线程启动时,视频采集线程将在2次视频数据拷贝后被挂起,直到视频显示线程开启为止;而当只有视频显示线程启动时,它将在更新1次显示窗口帧缓冲地址后被挂起,视频将持续显示旧数据,直到视频采集线程启动并往视频显示帧缓冲拷贝了新数据为止。这样,无论视频采集线程和视频显示线程哪个先启动,都能够实现采集和显示的同步。

图3 视频采集和显示的同步

从图3可以看到,视频采集线程每采集到一帧视频数据,都会将其拷贝到OSD的视频窗口VIDWIN1的帧缓冲区中,而通过设定系统环境变量QWS_DISPLAY=LinuxFb:/dev/fb/0,Qt/E的底层绘图引擎将把GUI窗口绘制于OSDWIN0上,这样,便实现了视频和GUI的分层绘制。接下来,应用程序通过FrameBuffer控制属性窗口,调整其大小和显示位置,并将它的帧缓冲区全部清0,则可以在其覆盖下的OSDWIN0上开一个透明窗口,实现视频和Qt/E GUI的叠加显示。

3.2 视频和Qt/E GUI叠加显示效果

实际的GUI运行效果如图4所示,屏幕分辨率为720×576,视频大小为596×390,帧频为25 f/s。图中,(a)为视频层VIDWIN1画面,其大小已设置成和采集的视频帧大小一致;(b)为Qt/E GUI层在OSDWIN0上的画面,在上半部分区域放置了一幅静态背景图片以作对比;(c)是设置属性窗口的像素值为3时视频和GUI的叠加画面,此时可以透过GUI中的静态图片背景看到视频画面;(d)为设置属性窗口的像素值为0时视频和GUI叠加画面,此时GUI中的视频显示区域将全透明显示视频画面,而其他不受属性窗口影响的区域则正常显示GUI窗口的其余部分。

因此,通过控制属性窗口的像素值,便能够实现视频和Qt/E GUI不同程度的叠加显示。

从图4中可以看到,将视频数据和Qt/E GUI分层绘制VIDWIN1以及OSDWIN0后,通过控制属性窗口ATTRWIN,确实能够实现视频层和Qt/E GUI层的同屏叠加显示,并且叠加效果良好。

图4 应用程序在目标系统中运行

4 结 语

本文结合OSD模块的硬件特点以及V4L2,FrameBuffer等软件模块的支持,利用Qt/E实现了在DM6446上视频GUI的应用开发。在目标系统中,视频采集和显示实时稳定,视频窗口和GUI窗口叠加显示效果良好,对于在DM6446中进行带视频显示功能的高效GUI应用开发具有指导意义。

参考文献

[1] Texas Instruments. TMS320DM6446 digital media system?on?chip [EB/OL]. [ 2011?2?15]. http://.

[2] Texas Instruments. TMS320DM644x DMSoc video processing back end (VPBE) user’s guide [EB/OL]. [ 2011?9?28]. http://.

[3] 王艳艳,郅晨.基于TMS320DM6446的OSD显示技术的研究与实现[J].中国新通信,2008,10(3):45?50.

[4] 黄益贵,王汝传.基于DM6446的P2P机顶盒OSD研究与实现[J].计算机技术与发展,2010,20(4):220?223,227.

[5] [加]布兰切特,[英]撒默菲儿德.C++ GUI Qt 4编程[M].闫锋欣,曾泉人,张志强,译.2版.北京:电子工业出版社,2008.

[6] 杨金林.基于DM6446和Qt的嵌入式图形界面的研究与应用[D].青岛:青岛大学,2012.

[7] 汤伟,李强.Qt/E的嵌入式Linux GUI研究与实现[J].计算机应用与软件,2011,28(10):260?263.

[8] Texas Instruments. LSP 1.20 DaVinci Linux VPBE frame buffer driver user’s guide [EB/OL]. [2011?10?19]. http:///litv/pdf.

gui设计论文篇7

关键词:Matlab GUI;信号与系统;教学辅助

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)26-0158-03

Development of Teaching Assistanceplatform for Signal and System Based on Matlab

LU Ying,ZHONG Li-hui*,LI Sha,XU Quan-yuan

( College of Computer and Informatin, SouthWest ForestryUniversity, Kunming 650024, China)

Abstract:Signal and system is the professional basic course in the major of electronic and information engineering which is complex and difficult to teach and learn. Combined with the teaching reform of the major, we have designed teaching assistance platform for signal and system based on Matlab. The platform which related closely to the teaching problem has the advantages of simple operation and visual image.It includes 8modules(chapters) and 55 interfaces,which contains the courseware, key point, dynamic simulation of important algorithms and after-school exercises and answers. Among them, algorithm simulation part is adjustable which not only has the simulation results, but also shows MATLAB program source code. The practice has proved that the platform can greatly enhance the teaching effect and learning efficiency. In addition, it is scalable and can be used as a teaching aid for other signal processing courses.

Key words:Matlab GUI; signal and system; teaching assistance

“信号与系统”是电子信息工程专业的一门基础主干课程,它以信号特性和处理等工程问题为背景,结合高等数学、线性代数、复变函数、电路分析等理论对确定性信号进行时域、频域和复频域分析,是将学生从电路分析的知识领域引入信号处理与传输领域的关键课程,也对后续专业课程如“通信原理”、“数字信号处理”等起着承上启下的作用[1]。该课程概念抽象,数学公式推导较为繁杂,结果较难理解。该课程的传统教学方式多采用单一的理论教学,或配有少数硬件设备诸如信号与系统实验箱等以进行少学时的实验教学。由于硬件设备价格昂贵,数量有限,加上实验学时的限制,学生主要依靠做习题来巩固和理解教学内容,对课程中大量应用性较强的内容不能实际动手设计、仿真和分析,严重影响并制约了教学效果。为了从一定程度上缓解学生在学习过程中存在理论和实践严重脱节的问题,论文采用面向对象程序设计方法及层次化思想,基于Matlab的图形用户界面GUI(Graphic User Interface)设计了“信号与系统”教学辅助平台。借助该平台,可帮助学生更好地理解和掌握信号处理中的基本理论和分析方法,激发学习兴趣,从而达到良好的教学效果。

1平台总体结构框图

平台的总体功能框图如图1所示。平台和教学内容保持一致,以章节内容进行划分,包括8大模块: 55个GUI界面。为简化每个基本模块的设计,论文采用层次设计方法,将每个基本模块又分解为若干个子模块,子模块下面还可以包括子模块。章节模块包含课件,知识点,重要算法的动态仿真,课后习题及解答。其中算法仿真模块结构框图如图2所示。限于篇幅,论文后续仅抽取部分章节进行介绍。

2仿真平台的Matlab GUI设计

2.1登录界面

登录界面是用户访问平台的第一个界面,如图3所示。出于对安全性的考虑,用户需要输入正确的用户名和密码后方可进入,其中用户名和密码存储在excel文件中。

2.2主界面

登录成功后则进入系统主界面,如图4所示。主界面以菜单的形式列出每一章节的内容。

2.3参数可调的连续信号运算

连续信号基本运算包含时移、反折、尺度变换三种,如图5所示。在文本框中输入变换量,点击相应按钮后,便可看到变换后的波形图,同时显示matlab程序源代码。

2.4参数可调的常用离散信号

参数可调的常用离散信号可产生四种基本序列:正弦序列、单位脉冲序列、单位阶跃序列和指数序列,如图6所示。且根据不同序列设置了不同参数。

2.5卷积积分

匹配教学用幻灯片上的范例求两连续信号的卷积积分,如图7所示,并将其卷积结果显示在同一界面中,同时显示示matlab程序源代码及重要结论。

2.6傅里叶级数

匹配教学用幻灯片上的范例求周期信号的傅里叶级数,如图8所示。分别通过6张图显示傅里叶级数展开后的谐波特性,即合成谐波次数越多越接近真实波形;低次谐波振幅较大,是组成原始波形的主体;高次谐波振幅较小,影响波形的细节等信息。同时通过单击“源代码”按钮可查看matlab程序源代码,方便学生进一步理解并修改程序。

2.7傅里叶变换的时移特性

匹配教学用幻灯片上的范例,同时配合输入的时移量显示频域的时移性质,如图9所示。时移特性表明,信号在时域中沿时间轴右移或左移t0等效于其频谱乘因子[e±jwt0],即信号时移后,幅度频谱不变,只是相位频谱发生了线性变换,产生了附加变化([±wt0])。

2.8习题及解答

该界面以图片形式显示课后习题,并通过“习题解答”按钮打开习题答案,如图10所示。

3 结束语

基于Matlab GUI开发的信号处理教学辅助平台已全面运用到我校“信号与系统”的教学过程中。平台紧扣教学大纲进行设计,信息量大,交互性强,操作方便,无需特殊硬件支持,成本低,十分便于推广,是课堂演示实验以及课外实验的有效辅助工具。可使学生学习抽象概念的同时,观察到相应知识点的具体形象的演示及编程源代码,使原本抽象、枯燥的物理概念变得直观、生动,极大程度提高了学生的学习兴趣及编程仿真能力。

参考文献:

[1] 王土央,高原.信号与系统分析课程实验教学改革探索[J] .实验技术与管理,2011,28(12).

[2] 罗华飞.MATLAB GUI设计学习手记(第2版)[D].北京航空航天大学出版社,2014.

[3] 甘俊英,胡异丁. 基于MATLAB的信号与系统实验指导[D].清华大学出版社,2010.

gui设计论文篇8

关键词:VB;GUI;成绩;分析

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)32-7556-04

考试是衡量教学效果,进行教学研究,培养实用性人才的重要手段。对每个教师而言,学期末分析学生的试卷和成绩,是教学工作中必要的一个环节。对此,特设计了“《VB程序》课程成绩分析系统”方便广大教师对所带课程成绩的分析。只需导入自己课程的学号和成绩即可。根据对学生成绩分析的特点,并本着操作方便,界面清晰,对使用者计算机水平不做要求的目的,系统设计思想如下:

l)功能齐全,能满足教师对学生成绩分析的各项工作要求。

2)界面好,完全符合当前最流行的Windows界面。

3)有效地防止用户的误操作,选项(按钮和菜单项)均采用Windows的技术特性。

4)设计结构灵活,易于扩充与维护。

5)设计具有一定的灵活性,能满足各门课程的成绩分析。

1 应用简介

本文利用matlab的GUI界面制作了一个成绩分析系统。主要分析表1中学生成绩的最大值、最小值、平均值、标准差、排序、直方图等,利用GUI界面的菜单和命令按钮来实现界面,一些函数来编写M文件来实现这些功能。

2 工具箱选择及常用函数介绍

2.1 imfilter函数用法

5 结论

本文以咸阳职业技术学院高计1201班《VB程序设计》课程成绩为研究对象,用MATLAB中的GUI界面用户向导,对高计1201班《VB程序设计》课程成绩进行了成绩质量分析,为整体了解学生对该课程的掌握情况,我们以具体的数值计算结果,列出该课程的最低分、最高分及其相应学号,以及该课程的平均分和标准方差;并将该课程的成绩按照从大到小的顺序排列,同时显示相应学号;另外我们将全班的成绩作了统计分析,将其画成直方图,为任课教师前期教学工作鉴定和后期的教学调整提供了科学的数值参考依据。

参考文献:

[1] 张圣勤.MATLAB 7.0实用教程[M].北京:机械工业出版社,2006.

[2] 满晓宇,罗捷.战胜MATLAB[M].北京:北京大学出版社,2001.

gui设计论文篇9

关键词:地震波;射线理论;MATLAB;GUI界面

引言

地震数值模拟技术的飞速发展始于20世纪60年代。现有多种类型的模拟方法:有限差分法、有限元法和分方程法等。目前运用地震波理论对边坡稳定性分析的研究主要集中在边坡局部区域地震波射线的传播规律上,尚未拓展到边坡整体稳定性分析领域。主要原因在于地震波射线在复杂地质边坡内部的传播路径很难精确确定。因此,如果能实现对边坡内地震波射线路径的可视化,将有益于地震波理论在边坡稳定性分析中的应用。

可视化是指用于创建图形、图像或动画,以便交流沟通信息的技术和方法。可视化技术是一种使人能够在二维及三维图形世界中直接与计算机交流的技术,让人直接对具有形体的信息进行操作。这种技术已经把人和机器的力量以一种直观的方式相结合,极大地提高了工作效率。因此,将地震波在均匀地质边坡中的传播规律实现可视化可极大的提高地震工作者对于地震波传播情况的分析效率。

1 建立边坡模型

选用文献[1]中的实验模型进行可视化研究。为了与实验环境吻合,可视化计算中模型为坡角为 60°的均质灰岩边坡。岩体为均匀连续的各向同性介质(材料参数为: 弹性模量E为8940MPa,泊松比μ为0.2,摩擦角φ为39°,粘聚力C为1600kPa),地震波从底部垂直向上传播。

2 地震波射线理论

地震波在弹性介质中的传播通过射线理论来分析。由于外力作用或扰动而引起位移、应力及应变在弹性体内的传播过程,就形成了弹性波,地震波通常可以被看成是在岩层中传播的弹性波[2]。这里考虑的岩体为均匀连续的各向同性介质,地震波是自下而上传播[3]。考虑到层状边坡在斜面和结构面处均会发生波场转换的现象[3],有两点需要注意:(1)P波(或SV波)如果以超过临界角入射到自由表面,将发生全反射;(2)垂直入射的P波,同样也会发生全反射。其中反射角和折射角采用斯涅尔定律计算[4]。

3 地震波射线可视化软件开发

MATLAB作为集通用科学计算、绘图、系统建模和程序设计语言为一体的高校科学计算软件,已经得到了广泛的应用,其中图形用户界面(GUI)开发环境更是被广泛应用于可视化软件开发[5]。文章以纯代码形式,采用“事件驱动”编程方法完成必要的代码并调试运行程序。图形界面在计算机屏幕上显示出来以后,用户可以从弹出式菜单选择不同的函数来产生响应的数据,然后单击选择按钮,与按钮相应的回调函数就被执行,就会在坐标轴上绘制相应的图形[6]。

将编好的GUI程序导入m文件当中,点击运行按钮,得到GUI界面,如下图所示(图2)。在界面当中XY字样下方的方框里出入待求射线规律的坐标,再选择左下方的坡脚选项,就可得到边坡地震射线可视化程序界面(图3)。

4 结束语

文章使用MATLAB语言,采用GUI界面编程,将边坡地下各点处地震波的传播路径用图形形象直观地表现出来。这样将会大大减少地震研究工作者的工作量,提高工作效率,部分解决了:(1)地震波观测系统设计不合理;(2)对地震波的传播特征研究缺乏系统性;(3)适合地震波传播成像的处理软件还未被开发等一系列问题。

参考文献

[1]邹威,许强,刘汉香.强震作用下岩质斜坡动力响应特性的大型振动台试验方案设计[J].地质灾害与环境保护,2011,22(1):87-91.

[2]孙禹成,李振春.地震波动力学基础[M].石油工业出版社,2011.

[3]陈臻林,胡潇.基于动力反透射模型的成层边坡稳定性分析[J],地质灾害与环境保护,2013,3:76-80.

[4]胡德绥.弹性波动理论[M].北京:地质出版社,1989

gui设计论文篇10

关键词:外观设计专利;苹果;三星;本土企业

中图分类号:D923.404 文献标识码:A 文章编号:1672-8122(2013)09-0034-02

从2011年4月开始,苹果公司在美国三星侵犯其知识产权,由此引发的两公司之间的诉讼战迅速扩展到全球范围。综合案情结果,苹果公司依靠其特色的外观设计专利又一次在手机行业获得了胜利。苹果倚靠外观设计成功打压了HTC在美国的发展,也阻挡了我国本土手机大商魅族的发展。那么相对于其他手机公司或者是手机行业来说,外观设计专利目前处于何种地位呢?本文主要通过分析苹果公司与三星公司在外观设计方面的发展,旨在研究外观设计专利对企业知识产权战略的发展与影响,同时对比我国手机行业外观设计的现状,提出相关的设想。

一、外观设计专利现状

(一)外观设计专利发展概况

外观设计专利保护制度因其独特的价值也得到人们越来越多的关注。由于外观设计专利投入少、见效快、权利获得便捷、价值可观,企业和个人申报的积极性较高。2013年3月,我国专利公开公告数据统计共52849件,外观设计专利占17.92%,其中手机行业的外观设计达13000多件。一个企业想要自己的产品在市场玲琅满目的商品中脱颖而出,抓住消费者的目光,除了可靠的质量、很高的性价比之外,拥有一款与众不同的外观设计也是必不可少的[1]。

(二)外观设计专利研究现状

发明专利的科技投入以及高科技产出,使得其一直成为国内外专家学者以及企业界关注与研究的重点。但从目前趋势来看,各电子产品厂商开始将目光转移至产品的外观设计上。而且在侵权案件中,由于发明专利的技术性需要专业人士的审查,给案件的审理增加了难度,而外观设计专利就截然相反。对普通人而言,外观设计显而易见,对于侵不侵权的判定也不会产生诸多误会,因此在产品侵权方面企业多乐于使用外观设计打压竞争对手。我国学者对于外观设计专利方面研究的重点主要集中在GUI(Graphic User Interface)、外观设计专利与企业绩效之间的关系、外观设计专利的行政保护、侵权判定等几个方面。GUI即电子产品用户界面,是欧美等国家目前电子产品的重点方向,苹果诉三星侵权案件中就包括了此项专利。我国学者李小武(2012)认为,在GUI问题上的态度折射出我国现今对于外观设计保护制度的整体理解,我国应该汲取欧盟外观设计保护指令中的精华[2]。还有部分学者特别研究外观设计中的“部分外观设计”。苏平(2012)认为,部分外观设计――如GUI设计在我国尚处于灰色地段。他分析了我国外观设计专利方面的缺陷,重新提出了相关的适用范围与实行方法。综上,从各专家学者的关注点来看,与中国外观设计专利申请和授权的数量逐渐增加的现象相对应的,是随之增加的外观设计专利纠纷,这也使得外观设计专利的保护面临越来越多的挑战。

二、跨国公司在手机外观设计方面的发展

如今,在各大手机厂商纷纷争夺智能手机市场份额的形势之下,仅靠提升性能和降低价格很难在激烈的竞争中胜出,因为产品的功能更新会分阶段在一定时期内达到饱和,待这一阶段的功能被大致消化完毕之后才会进入一个新的阶段,而不断压低产品价格将使企业的利润减少,所以降价不能成为企业占领市场的主要手段。外观设计专利因其便于识别,易于打压竞争对手的特点开始成为手机厂商致胜的法宝。

(一)苹果公司外观设计专利概况

在外观设计方面,苹果公司主要依靠强烈的视觉冲击与独特的差异获得了消费者的追捧,也获得了可观的市场占有率。2007年开始Iphone手机投入市场,其设计风格与市场中类似产品明显不同:平滑的表面、圆形的折角、隐藏按钮、背面设计简洁,使得该智能手机迅速占领了市场。从2007年开始手机销量持续上升。2010年开始,苹果推出了4代手机,其外形与3代手机大有改进,放弃了原本的弧形背面,同时也推出了新的用户界面。

苹果公司在外观设计方面的布局主要可以概括为以下几点:1.强调基本外观,固定特色外形。根据历代苹果产品,笔者发现,苹果公司的外观设计战略是在基础外形上不断推陈出新。Iphone不同时期的产品在整体外观上有着共通的标识――home键以及开机键(专利D669,D069),且标识设计的非常易于辨识。苹果公司在产品上采用一贯继承的策略,使消费者更易于接受新产品。其次,D675612(圆角矩形专利)也是苹果公司外观的重点,每一代苹果手机都是在四周圆角的基础上改进的,其外形几乎垄断了整个手机外形市场。2.申请多为围绕式。苹果公司申请的外观设计专利主要是围绕一件产品及其配套产品所作出的设计,包括产品主体、产品的配件(如充电装置、连接配件等)以及产品的包装盒。苹果公司在进行产品外观设计的创新时,不仅对产品的主体进行创新设计,对于其周边的配套产品,苹果公司也会根据产品主体的设计情况以及市场需求进行创新设计。3.注重GUI申请。苹果在用户界面方面的专利申请高达29%,是其外观设计专利的重要组成部分。苹果特有的用户界面,包括锁屏、橡皮筋专利以及缩小放大专利成为了现今手机流行的趋势,也是苹果公司吸引消费者的重要手段。

图1 苹果公司历年外观设计专利申请量

(二)三星电子公司外观设计概况

三星在此次诉讼中,完全败于苹果的外观专利,10.5亿美元损害赔偿中,主要是以外观设计专利和外观包装等专利为主。在生产上,三星采取的则是一种纵向整合模式:在上游生产液晶屏、芯片处理器、内存、电池等元件;在中游进行手机设计、组装制造和品牌宣传;在下游甚至拥有自己的销售渠道。三星目前主打定位还是以发明专利为主,2011年智能手机外观设计192件,2012年智能手机外观设计176件。而苹果公司早在2007年开始为其智能手机外观设计进行布局,当时一年在华外观设计专利已经达到100多件。不论从时间还是数量上来看,三星在起步的时候已经输于苹果。三星公司在致力于智能手机研发的过程中,未能及时就手机外观设计以及周边产品进行外观设计专利保护,导致了其在与苹果的诉讼中败北而归。三星在智能手机外观方面败下一局之后迅速调整了产品策略。目前三星重点推出的Galaxy系列手机不论从外观还是用户界面来说都与苹果完全不同,突出了三星手机自身的特点。

三、中国手机外观设计去“山寨化”的思考

中国手机厂商起步较晚,同时关于知识产权的风险意识也无法跟随时代潮流。虽然如今我国已将科研创新列为重点,发明专利也成为了企业之间竞争的法宝,但是从国际上知名的跨国公司来看,外观设计专利已经成为新的战场。

(一)我国企业在外观设计专利方面尚存的问题

目前国内重点研究外观设计的专家学者不多,也有不少学者质疑外观设计对企业能否发挥作用,但是从苹果诉魅族这一案件来看,外观设计在企业之间诉讼纠纷中越来越重要。从国内魅族等企业来看,我国手机行业在外观设计方面存在以下问题:1.对外观设计草率模仿。国内手机行业在刚起步上为了及时抢占市场份额,往往喜欢模仿借鉴跨国公司优秀产品。但是企业在模仿过程中不追求革新与改进,抄袭与模仿痕迹过于明显,也不懂得为自己产品申请外观设计,这就导致国内企业成为跨国公司打击的靶子。2.企业的决策者防范意识不够。国内许多企业只注重企业的经营发展,忽视自己在生产中是否拥有外观设计专利权以及是否侵犯他人的外观设计专利权,特别是部分拥有外观设计专利权的企业忽视加强保护自己的专利权。因此魅族在推出新手机抢占国内手机市场时被苹果诉至法院。在欧美国家,很多企业慢慢将诉讼重点转移至外观设计专利,因为对他们而言,发明专利过于专业,诉讼时间过长,远不及外观设计的易于辨别[3]。中国企业对于外观设计的重视程度远远不够,2010年中国的魅族M8手机就因为侵犯了苹果的外观设计专利而被叫停,魅族因此蒙受了接近1个亿的损失[4]。从魅族在华外观专利可以看出,自2004年之后就在外观设计方面停滞不前,2007年与苹果的诉讼之后更是在手机领域一蹶不振。魅族作为本土手机大厂商,自2010年之后开始注重手机的外观设计,不再一味的学习苹果设计,开始走上自主研发自主创新之路。

(二)对外观设计专利的思考

我国手机企业在外观设计方面仍有很多地方需要改进,也有很长的路需要走,同时我国专利制度也需要顺应国际环境的发展。1.做好风险防范意识。企业负责人必须强化风险意识,在企业生产经营活动中注意自己的外观设计专利权是否被侵犯以及是否侵犯他人外观设计专利权,做到事前的可防可控。2.注重周边产品的保护。手机行业除去手机机身之外,周边产品也是重中之重。苹果公司在申请外观设计专利时就充分考虑了此点,为它的各种周边产品也申请了大范围的专利,包括手机壳、充电器等。3.做好GUI的保护。目前我国暂时不保护GUI设计,但各跨国公司的诉讼争端开始转向用户界面。我国对于是否保护GUI尚存争议,就笔者而言,国家可以放宽保护范围,为之后的国际诉讼做好先前准备。

从三星与苹果的世纪大战,笔者认为跨国公司的诉讼重点已悄然开始向外观设计专利转移,而这一方面恰是我国企业不足的。我国企业,特别是目前走俏的手机厂商,一直在走跨国公司走的老路,不论是学习苹果的策略还是学习三星的以发明专利为重。如何在三国鼎立的手机市场为自己寻找一片天地已成为我国手机行业的重点。

我国目前尚未认可GUI保护,那么在GUI已成为世界手机厂商保护重点的时候,国内企业应如何寻求对策适应国际变化呢?笔者认为这仍需要国家、企业以及行业协会的重视与关注。外观设计专利是新的战场,我国企业需要从三星苹果大战中吸取教训,转变企业的知识产权战略方针。

参考文献:

[1] 夏进军.基于外观设计专利的企业绩效研究[J].设计,2012(2).

[2] 李小武.回到外观设计保护制度的起点――从GUI的保护谈起[J].清华法学,2012(6).