4 人机交互界面
随着嵌入式系统的发展,用户对嵌入式系统的要求越来越高,因此用于实现与用户交流功能的嵌入式GUI重要性越来越大。Linux环境下的GUI作为源代码开放的图形系统,提供了丰富的二维绘图库、多字体即可扩充字符集、位图显示、多级RGB及灰度调整、动画优化显示、具有Windows风格的对话框和预定义空间,以及对键盘、鼠标、触摸屏等输入设备和LCD输出的支持。
目前可供选择的GUI图形开发界面主要有:紧缩的XWindow系统、MicroWindows、OpenGUI、Qt/Embedded、MiniGUI、PicoGUI。
GUI的设计要求:(1)占用的存储空间及运行时占用资源少;(2)运行速度及响应速度快可靠性高;(3)便于移植和定制
Qt是一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt是完全面向对象的,很容易扩展,并且允许真正地组件编程。Qt/E是用于嵌入式Linux的Qt版本,以下是应用程序的操作步骤。
4.1 人机交互界面开发所需准备
VMware8.0.2Ubuntu10.10EABI-4.3.3_EmbedSky_20100610.tar
qt-embedded-linux-opensource-src-4.5.0_20100601.tar
4.2 Ubuntu下交叉编译环境的配置及QT库的编译
安装标准的C开发环境,由于Ubuntu10.10Linux安装默认是不安装的,所以需要先安装一下(如果已经安装好的话,就可以免去这一步了):
$sudoapt-getinstallgccg++libgcc1libg++makegdb
如果上面这个安装不行,可以试试$sudoapt-getinstallbuild-essential
将已下载的EABI-4.3.3_EmbedSky_20100610.tar存放于新建的文件夹(必须是字母或数字)ubuntu下然后用sudotarxvfjEABI-4.3.3_EmbedSky_20100610.tar命令,回车,自动解压。
4.3 修改环境变量,把交叉编译器的路径加入到PATH
方法一:修改/etc/bash.bashrc文件(此文件只对当前用户适用)
$sudogedit/etc/bash.bashrc
在最后加上exportPATH=$PATH:/usr/local/arm/4.3.2/bin
方法二:修改/etc/profile文件(此文件属于系统级别的环境变量,设置在里面的东西对所有用户适用):
$sudogedit/etc/profile
增加路径设置,在末尾添加如下,保存/etc/profile文件:
exportPATH=$PATH:/usr/local/arm/4.3.2/bin
方法三:修改/etc/environment文件
$sudogedit/etc/environment
原文件应为PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games“将其改为PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/arm/4.3.2/bin"保存退出即可
检查是否将路径添加进去在终端执行命令echo#PATH回车即可显示内容/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/yonghuming/ubuntu/opt/EmbedSky4.3.3/bin说明已经将交叉编译器的路径加入PATH。至此,交叉编译环境安装完成。
4.4 测试是否安装成功
在终端运行arm-linux-gcc–v回车,出现:
5 QT界面设计
该界面是机械手控制系统的主界面,可以对机械实施监视、报警
该界面是功能主界面,包含八种功能键,功能如图所示:
该界面是信号设定界面,可以决定各个器具的使用情况:
该界面是时间设置界面,通过设置机械臂移动方向的时长实现预定的功能:
6 结论
本课题是以基于ARM核的32位嵌入式处理器ARM作为核心运算、控制CPU设计并制作了一个注塑机三轴伺服控制系统人机界面,该原型已经实现了对机械手运行参数的设定、运行指令的下发和运行状态的监视。本文依据这一项目,运用嵌入式系统的设计思想和开发方法,对操作系统Linux的裁剪和移植和人机界面的设计作了详细的概述。