PPTOK :您身边最贴心好用的PPT站!

您当前所在位置:首页 > PPT课件 > 教育培训PPT → arm嵌入式系统开发ppt

arm嵌入式系统开发ppt

  • 素材大小:6.73 MB
  • 素材授权:免费下载
  • 更新时间:2018-01-10
  • 素材类别:教育培训PPT
  • 素材格式:.ppt
  • 关键提要:arm嵌入式系统开发,系统
  • 素材版本:PowerPoint2003及以上版本(.ppt)
网友评分:
PPT介绍优秀PPT相关PPT精品PPT

这是arm嵌入式系统开发ppt下载,主要介绍了基于ARM+μC/OS-Ⅱ的嵌入式磨削数控系统的设计;基于ARM + Linux的现代化超市电子购物系统的设计;基于ARM+ Linux的嵌入式数控磨床控制系统的设计,欢迎点击下载。

PPT预览

arm嵌入式系统开发ppt

PPT内容


  8.1  基于ARM+μC/OS-Ⅱ的嵌入式     磨削数控系统的设计 8.1.1  前言   嵌入式系统是以应用为中心,以计算机技术为基础,软、硬件可剪裁,适用于对功能、可靠性、成本、体积、功耗要求严格的专用计算机系统。由于嵌入式系统具有微内核、系统精简、强实时性、专用性强等特点,因此特别适合具有实时性能要求的机电控制系统。
  传统的基于单片机的简易数控系统,虽然造价低,但功能不足,而基于工业PC的嵌入型数控系统、基于高端PLC的专用数控系统等性能较好,但造价太高。基于高性能嵌入式微处理器和实时操作系统的嵌入式数控系统,将克服上述两类数控系统的不足,具有性能好、成本低、体积小、结构灵活等优点,具有高的性价比,是未来数控系统的发展方向。本节以基于M250磨床的数控系统改造为研究背景,探讨基于S3C44B0X实现的、具有一定通用性的嵌入式磨削数控系统的设计与实现问题。
8.1.2  系统硬件设计   1. S3C44B0X微处理器简介   S3C44B0X是三星公司专为手持设备和一般应用提供的高性价比、高性能的16/32位RISC型嵌入式微处理器。它集成了ARM7TDMI核,采用0.25 μm CMOS工艺制造,并在ARM7TDMI核基本功能的基础上集成了8 KB Cache(数据或指令)、内部SRAM、外部存储器控制器、LCD控制器、4个DMA通道、带自动握手的2通道UART、1个多主I2C总线控制器、1个I2S总线控制器、5通道PWM定时器、1个看门狗定时器、71个通用I/O口、8个外部中断源、具有日历功能的实时RTC、8通道10位A/D转换器、1个SIO接口以及PLL(锁相环)时钟发生器等丰富的外围功能模块,非常适合于成本和功耗要求较高的嵌入式应用系统。
  2.存储器的扩展   为了满足需要,本系统扩展了Flash程序存储器和SDRAM数据存储器。Flash程序存储器在系统中用于存放程序代码。本系统采用一片SST39VF160构建16位的Flash存储器系统,其存储容量为2 MB,并将其配置到存储器的Bank0,即将S3C44B0X的nGCS0接至SST39VF160的片选信号nCE端,S3C44B0X的A20~A1接至SST39VF160的A19~A0端,其地址范围是0x00000000~0x001FFFFF。   SDRAM数据存储器在系统中主要用作程序的运行空间、数据及堆栈区。本系统使用HY57V651620B构建16位SDRAM存储器系统,并通过nCS6将其配置到存储器的BANK6,其存储容量为4组×16M位(8 MB),其地址范围是0x0C000000~0x0C7FFFFF。
  3.通信和调试接口   为了满足系统各种可能的通信和调试需要,系统配备了RS-232C接口、USB接口以及JTAG接口。其中RS-232C接口用于直接从PC机接收有关加工信息数据,USB接口用于接收U盘等USB移动设备存储的有关加工信息数据,JTAG接口则供系统交叉调试使用。   由于S3C44B0X只有UART0/1并没有集成RS-232C接口,这里选用MAX3232作为UART到RS-232C的电平转换芯片,以便其与PC机等其他设备进行串行通信。因S3C44B0X内部没有USB接口,这里选用USB1.1版本的USBN9603作为S3C44B0X扩展USB控制器的接口芯片。二者采用并行总线方式进行连接,S3C44B0X通过总线操作(nGCS4作为片选信号)对USBN9603进行控制,完成USB的读写操作。由于S3C44B0X中集成了JTAG信号,因此只需引出这些信号线在板上扩出JTAG口,即可与JTAG调试器进行通信。有关接口电路的具体连接此处略。
  4.电机驱动控制模块   系统选用两个交流伺服电机,交流伺服电机的控制采用位置控制。系统中采用S3C44B0X所具有的脉冲宽度调制PWM方式的输出进行控制。
  5.人机交互模块   系统需要显示的基本信息包括X轴和Y轴坐标值(含X轴和Y轴运行方向指示)、参数值(磨削—粗、精、光,速度,进给,粗磨,精磨;修整—补偿量、补偿间隔,进给量、工件统计)、磨削余量(光柱)、工作状态指示(快进、粗磨、精磨、光磨、快退、等待、修整)和控制方式指示(自动、半自动、调校)等。同时为了操作和控制的方便,我们还可显示其他有关的操作信息和控制界面。因此本系统选用LCD液晶显示器进行显示。由于S3C44B0X处理器本身自带LCD控制系统,而且可以驱动所选用的液晶显示屏,所以只要选用合适的LCD显示器并把相应的控制信号进行连接即可。   系统用于参数设置和加工控制的键盘采用矩阵式键盘,并选用中断扫描工作方式。
8.1.3  系统软件设计    1.μC/OS-Ⅱ操作系统的移植   所谓μC/OS-Ⅱ的移植,实际上就是对μC/OS-Ⅱ中与处理器有关的代码进行重写或修改。其移植应满足以下要求:ARM处理器的C编译器可以产生可重入代码;可以使用C 调用进入和退出临界区代码;处理器必须支持硬件中断,并且需要一个定时中断源;处理器需要能够容纳一定数据的硬件堆栈;处理器需要有能够在CPU寄存器与内核和堆栈间交换数据的指令,移植μC/OS-Ⅱ内核主要步骤如下:用#define设置一个常量的值;用#define分别声明3个宏和10个与编译器相关的数据类型(在OS_CPU.H中);用C语言编写6个与操作系统相关的函数(在OS_CPU_C.C中);用汇编语言编写4个与处理器相关的函数(在OS_CPU_A.ASM中)。
  2.硬件驱动层扩展   在硬件之上,必须有驱动程序来实现对硬件的基本操作。事实上,μC/OS-Ⅱ并没有给驱动程序提供统一的标准接口,任何在系统中实现硬件管理的程序都可以称之为驱动程序。底层驱动程序通常采用汇编或C语言编写,主要实现初始化硬件和释放硬件,把数据从内核传到硬件和从硬件读取数据,检测和处理设备出现的错误和故障。同时,还必须将对某个硬件进行的某项操作的代码封装成函数,供上层的程序调用。在本系统中,主要完成通信接口、电机驱动控制、LCD显示等外设驱动函数的编写。限于篇幅,下面仅介绍系统中一个重要的驱动程序—USB驱动程序的编写。   USB驱动程序的主要任务是初始化USB接口、控制USB的读写操作、进行USB中断操作及处理USB中断服务程序。USB主机的软件流程如图8.2所示。
  3.应用程序代码的编写   1)  main主函数的编写   多任务的启动是通过在主函数main中调用OSStart()来实现的。调用OSStart()后,从任务就绪表中找到优先级最高的任务控制块,启动高优先级任务启动函数OSStartHighRdy()然后再启动多任务内核。在主程序main()中需要做的是调用OSInit()对有关变量初始化,创建任务,调用OSStart()进入实时多任务环境,同时启动时间节拍定时器,调度任务就绪表中优先级最高的任务转入运行,获得CPU,运行开始。
  2) 中断函数的编写   中断函数的编写和没有嵌入式操作系统时基本相同,只是在原来的基础上在固定的两个位置增加两个函数OSIntEnter()和OSIntExit(),并在系统初始化时挂接在中断向量表中。在中断服务程序编写的过程中要注意关中断的时间。在μC/OS-Ⅱ中,应把数据处理任务的优先级设得高一些,并在中断服务程序中使它进入就绪状态,这样可保证系统在调用OSIntExit()时判断是否进行任务切换;并在中断结束后立即调度并执行相应的数据处理任务,以使中断响应的时间限制在一定范围之内。
  3) 用户任务的编写   基于μC/OS-Ⅱ操作系统内核的应用代码编程,主要就是对各个任务的编程。本系统中OSTaskCreate()创建了10个用户任务:作业控制、U盘读写、键盘输入、代码翻译、插补运算、电机控制、液晶显示、检测报警、电源管理、时钟任务,同时还包括空闲任务和统计任务等两个系统任务。其中时钟任务优先级最高,它是一个超级任务,用来对其他任务进行超时监控,以避免程序“跑飞”或陷入死循环。若数控系统功能需要增减,则只要在相应的任务中进行模块的添加和删除。为了使系统更加快速、灵活、准确,根据任务的优先级把用户任务划分为四层:数据采集层、数据处理层、控制执行层和辅助管理层,并从优先级5开始定义。优先级最高的是数据采集层,包括U盘读写、键盘输入等任务,主要是准确无误地读取加工信息并传递给数据处理层;
数据处理层是核心层,包括代码翻译、插补运算等任务,它根据数据采集层提供的加工信息,选择相应的控制策略,进行有关数据处理,发出相应的控制指令;控制执行层包括电机控制、液晶显示等任务,根据数据处理层的期望值作为控制量,驱动相应的电机工作控制磨削加工,显示有关加工信息;辅助管理层包括电源管理、检测报警等任务,优先级最低,主要完成一些电源管理和系统诊断等辅助功能。各层内的任务优先级不是特别重要,可以根据具体应用进行合理的设定。任务间的通信可以通过邮箱、消息队列等IPC机制来实现。限于篇幅,下面仅介绍电机控制任务的程序设计。
  磨削机系统中主轴电机只需要实现简单的通断控制即可,而要求两台交流伺服电机能够实现联动,既可以实现同方向同时旋转,又可以实现反方向同时旋转。该系统通过S3C44B0X的PWM输出通道产生连续的脉冲,为实现交流伺服电机较精确的位置控制和实时响应,采用软件定时中断的方式实现电机控制脉冲的发送。PWM控制流程如图8.3所示,其中系统中所采用的插补算法为直接函数计算插补法,可达到较高的进给速度。
8.1.4  结论   本嵌入式磨削数控系统以S3C44B0X为控制器,以μC/OS-Ⅱ为操作系统,以U盘进行加工信息的离线传输,以PWM方式进行电机控制,以LCD显示器进行显示,并配有输入键盘、程序存储器、数据存储器以及多种数据通信接口。它具有控制精度高、成本低、体积小、易于扩展和升级等特点,是传统机床的数控化改造和经济型数控机床升级开发的发展趋势。本设计的创新之处就是设计了一个基于S3C44B0X的嵌入式磨削数控系统,为传统机床的数控化改造和经济型数控机床升级开发提供了一种可行而实用的设计思路。
8.2  基于ARM + Linux的现代化超市电子购物系统的设计 8.2.1  前言   随着社会的进步和发展,工农业生产和人民生活对嵌入式系统的功能和性能的要求不断提高,原有的以单片机或嵌入式微处理器为核心的嵌入式系统已难以满足某些高科技场合的需求。近几年基于32位ARM结构的微处理器+嵌入式操作系统的嵌入式系统便应运而生,并成为嵌入式系统的研究热点。本节以现代化超市为背景,旨在解决目前超市中存在的查询商品不便、排长队结账、超市内定位困难、服务和信息滞后等问题,采用嵌入式系统、射频识别(RFID)、无线局域网、数据库、多媒体等技术,实现了现代化超市电子购物系统。
8.2.2  系统总体设计   系统采用具有全球唯一UID的“电子标签”作为商品、会员和位置的信息载体。移动购物终端获得由RFID读卡模块读取的UID,通过无线局域网查询数据库信息后进行相应的处理。将电子标签放在每个商品和会员卡中,移动购物终端就能自动识别并处理商品信息和顾客信息;将电子标签放在超市的地面下,移动购物终端就能自动在超市内定位。
  系统由移动购物终端和服务器端两大部分构成,均采用Linux操作系统,通过802.11b无限局域网连接。移动购物终端以Sitsang板为核心,外接CF无线局域网卡、相应的读卡模块和读卡控制电路,并安装在超市的购物小车上。服务器端由PC机、无限AP、打印机队列组成,通过设计服务程序为终端提供数据库服务、NFS服务、语音服务、自动结账服务,实现系统的各种功能。系统的总体结构示意图如图8.4所示,信息处理流程图如图8.5所示。
8.2.3  移动购物终端硬件设计   移动购物终端采用两个RFID读卡模块,一个是识别商品电子标签的商品电子读卡模块,另一个是识别定位电子标签的定位标签读卡模块,两个模块均选用了Promatic公司的PRR8032 RFID读卡模块,电子标签采用TI公司的Tag-it HF-I Inlay(ISO15693)无源标签。UID是每个电子标签中的全球唯一的64位标识码,根据ISO15693-3协议,它具有严格的数据格式,在生产过程中已经被固化在每一个电子标签的微电子芯片中,生产出以后不能再修改。移动购物终端的硬件结构如图8.6所示。图8.7是商品/会员标签和定位标签读卡控制电路框图。
8.2.4  移动购物终端软件设计   移动购物终端的软件是基于Sitsang平台和Linux操作系统,采用多进程技术开发,通过模块化的设计,完成对商品信息、会员信息、超市服务信息的识别、查询、管理、操作与显示。图8.8是软件总体结构流程图。移动购物终端软件设计包括图形界面设计和应用程序设计。其中图形界面设计使用Linux平台的QT/Embedded Evaluation Version2.3.2开发,采用QT特有的信号和槽(Signals and Slot)机制设计全新的图形界面和应用程序。图8.9~图8.16为系统部分拟设计的典型图形界面。应用程序设计主要包括读卡模块设计、表格显示模块设计、数据库客户端模块设计等。
8.2.5  移动购物服务器端设计   服务器使用Redhat Linux 9.0操作系统,并安装较新版本的MySQL数据库。通过配置打印机队列进行购物小票的打印。通过多个AP覆盖整个超市的范围,服务器就可以同时为多个移动购物终端提供各种服务。服务器端编写了自动结账、语音服务等服务程序,并制作了相应操作界面,管理各种信息。服务器端的设计主要包括三个方面:数据库的设计、定位子系统的设计、自动结账子系统的设计。限于篇幅,有关具体设计略。
8.2.6  系统设计开发调试结果   1.应用程序开发环境的建立   通过修改内核源程序printk.c中的printk函数,杜绝系统的内核输出信息破坏图形界面显示:通过修改USB主口驱动源程序usbserio.c中的get_free_serial函数和结构体变量,并在编译内核时选择模块USB FTDI Single Port Serial Driver,编译模块后将usbserial.o和ftdi_sio.o加载入内核,驱动FT232BM芯片将USB主口转换为UART;在定制文件系统时删去与qpe桌面相关的部分,将移动购物终端软件的程序及文件拷贝到/usr/qpe/bin目录下取代原qpe桌面程序,修改qpe.sh脚本,即可实现在开机后自动运行终端程序并进入图形界面。
  2.网络调试环境建立   为解决在一台PC机上同时运行两个Linux操作系统的问题,本设计采用在WindowsXP系统中安装虚拟机的方法。在虚拟机里安装两个Linux操作系统,一个作为宿主机,一个作为目标机,这样就可利用切换键在这三个系统之间相互切换,并建立三个系统的通信,既能充分利用熟悉的Windows操作系统的网络资源,又能共享三个系统的资源。
  3.图形界面的调试   在VMware中搭建调试环境,建立development机和target机,在VMware里使用kgdb进行调试环境的搭建。在development机上配合使用一些其他的调试工具,本设计使用的是图形界面的DDD调试器,方便了内核的调试工作。图8.17~图8.20为系统部分典型图形界面的调试结果。
  4.内核在PXA255上的移植   (1) 内核的修改配置。找到经过裁剪编译的内核,修改配置文件,匹配交叉编译器;在193行找到ARCH,并进行对应的修改;配置编译的内核,修改动态参数。   (2) 编译内核。创建一个指向裁剪后的内核源代码符号;进入此目录;运行清理包命令: make mrproper;使用现有的配置文件作为新内核配置文件的基础,复制已经存在的配置文件到相应的目录中;运行sudo make menuconfig或sudo make xconfig进行编译。   (3) 下载移植。下载zImage到开发板,完成移植。
8.2.7  结论   系统由移动购物终端和服务器端组成,其中移动购物终端以Sitsang开发板和RIFD感应器为基础设计制作,借助于RFID卡和埋设在货架通道上的定位卡,可以通过用户购物车系统方便地获得商品信息和超市导购信息。整个系统具有友好的中文图形界面,能够实现商品的自动识别与详细信息显示、购物清单管理、商品分类查询、顾客定位与商品定位、自动结账、会员身份识别与管理、超市3D布局显示、语音呼叫与留言等功能。本设计主要应用于现代化超市中,还可以应用到图书馆、仓储、档案室、物流等领域,具有良好的应用价值。
8.3  基于ARM+Linux的嵌入式数控磨床控制系统的设计 8.3.1  前言   当今,数控机床以节约劳动力、生产效率高、精度可靠性高、柔性高等优势,已经逐渐取代了传统机床。嵌入式系统相比于传统的单片机系统和PC平台,既有单片机系统成本低、系统结构精简、体积小、功耗低的特点,又具有PC平台的开发环境好、资源丰富、具备操作系统、用户界面友好的特点,恰恰弥补了传统数控系统的不足。它不仅具有可靠性高、稳定性好、功能强的优点,而且具有良好的可移植性和可裁减性,可根据实际需求进行系统功能的扩展和裁减,因而在数控技术领域就有良好的发展前景。本节以基于传统数控磨床的数控系统改造为研究背景,探讨基于S3C2440A实现的、具有一定通用性的嵌入式数控磨床控制系统的设计与实现问题。
8.3.2  系统总体设计   系统基于原始PC数控磨床的基础上进行改造设计,以三星公司的S3C2440A微处理器为核心。为通过扩展用户板块构成硬件平台,采用Linux操作系统为软件平台,编写设备驱动程序、数控算法、人机交换界面等,以实现向伺服电机和步进电机驱动器提供控制信号,控制数控磨床各个刀片的旋转和走位的嵌入式数控磨床的控制系统。它可以从USB和SD卡中读取要加工的文件,也可以通过网络或串口、USB下载存入Flash的具体地址,同时网络功能也为远程监控做好了准备。系统选用两个交流伺服电机,交流伺服电机的控制采用位置控制,系统中采用S3C2440A所具有的脉冲宽度调制PWM方式的输出进行控制、加工。同时系统主板上有多种接口,为以后扩展其他功能做好准备,如扩展网络摄像机,以更方便、更直观地进行远程监控。
8.3.3  系统硬件设计   系统硬件以三星公司的S3C2440A ARM9芯片为核心(处理器为ARM920T),扩展用户板块组成,硬件系统如图8.21所示。
  1.  S3C2440A微处理器选择   由于本系统对处理速度要求高,所以选用ARM9内核芯片;并且所要实现的功能比较强大,集成了很多的模块,如触摸屏、USB、摄像头等,所以选用目前比较流行且集成度相当高的S3C2440A芯片。   S3C2440A采用ARM920T内核,集成的片上功能有:1.2 V内核,1.8 V/2.5 V/3.3 V储存器,3.3 V扩展I/O,16 KB指令Cache(I-Cache)/16 KB数据Cache(D-Cache);外部储存控制器(SDRAM控制盒片选逻辑);集成LCD专用DMA的LCD控制器(支持最大4K色STN和256K色TFT);4路拥有外部请求引脚的DMA控制器;
3路URAT(IrDA1.0,64 B Tx FIFO,64B Rx FIFO);2路SPI;I2C总线接口(多主支持);I2S音频编解码器接口;AC97编解码器接口;1.0版SD主接口,兼容2.11版MMC接口;2路USB主机控制/1路USB期间控制(ver1.1);4路PWM定时器/1路内部定时器/看门狗定时器;8路10位ADC和触摸屏接口;具有日历功能的RTC;摄像头接口(支持最大4096 × 4096的输入,2048 × 2048缩放输入);130个通用I/O,24个外部中断源;电源控制(正常、慢速、空闲、睡眠模式);带PLL的片上时钟发生器等。其接口丰富,非常适合外围扩展模块较多且低成本的嵌入式系统开发。
  2. 存储器的扩展   本系统的存储模块采用NAND Flash与SDRAM组合成程序、数据存储器,可以获得非常高的性价比。   本系统中使用的Flash芯片是Intel公司的K9F1216U0A Flash,存储空间由128 KB的擦除块组成。擦除块是相互独立的,每一块的擦除操作可以在1秒内完成。每一块可以独立地被擦除100 000次以上。
  目前常用的SDRAM为8位/16位数据宽度,可根据系统需求构建16位或32位的SDRAM存储器系统。TQS3C2440使用了两片外接的32 MB总共64 MB的SDRAM 芯片(型号为HY57V561620FTP),一般称之为内存,它们并接在一起形成32位的总线数据宽度,这样可以增加访问的速度。因为是并接,故它们都使用了nGCS6作为片选端,物理起始地址为0x30000000。
  3. 各种外围接口   系统为了能更方便用户的使用,扩展了许多接口,如图8.21所示。   USB和SD卡接口,用于接收U盘、SD卡等移动存储设备的有关加工信息数据文件,通过这两个接口可以把加工文件输入数控系统中,同时也可把文件拷贝到U盘或SD卡中。   系统采用的人机交换界面是触摸屏。系统需要显示的基本信息包括X轴和Y轴坐标值(含X轴和Y轴运行方向指示)、参数值(磨削—粗、精、光,速度—进给、粗磨、精磨,修整,补偿量、补偿间隔,进给量、工件统计)、磨削余量(光柱)、工作状态指示(快进、粗磨、精磨、光磨、快退、等待、修整)和控制方式指示(自动、半自动、调校)等。同时为了操作和控制的方便,还可显示其他有关的操作信息和控制界面,也可通过USB接备用鼠标和键盘。
  JTAG接口用来进行系统的调试与仿真,同时还可以用来进行文件的烧写。   以太网接口,系统用的是DM9000以太网芯片,有100M,用来与外界联系,也可以通过以太网进行文件的传输和远程监控。网络摄像头配合以太网进行远程监控。
  4. 差分模块   驱动器所需指令脉冲和指令信号是一对相位相差180°的信号,故在这里设置了差分电路,并使用四线高速差分驱动电路DS26LS31进行处理。微处理器输出的单路信号经过DS26LS31处理,可以得到一对相位相差180°的信号以及所需要的指令脉冲和指令信号。
  5. 电机传动模块   1) 伺服电机   在本系统设计过程中,考虑到电机带动主轴高速旋转进行金属切削,属于大负载、高速度的应用,用伺服电机比较好,故在主轴上采用交流伺服电机驱动。考虑到由主机直接实现电机控制算法会占用处理器资源、影响多任务操作的快速性,且不敢保证自己设计的外围电路的驱动能力能满足要求,故采用电机驱动器或变频器驱动电机。在本系统的设计中,选用交流伺服驱动器,通过S3C2440的PWM输出通道产生连续的脉冲,并且为实现交流伺服电机比较的位置控制和实时响应,采用软件定时中断的方式实现电机控制脉冲的发生。PWM的控制流程图如图8.22所示。
  编码器反馈电缆直接接到伺服电机驱动器而非数控系统,传感器将交流伺服电机转子的位置、速度、转矩信息编码传回给驱动器,驱动器再根据此信号调节电机转速。故无需考虑电机控制算法,只需向驱动器发送指令,即可对电机进行控制。
  2) 步进电机   系统使用的是混合式步进电机(Hybrid,简称HB)。混合式步进电机综合了反应式电机和永磁式机两者的优点。混合式机与传统的反应式机相比,结构上转子加有永磁体,以提供软材料的工作点,而定子激磁只需提供变化的磁场而不必提供磁铁材料工作点的耗能,因此该电机效率高,电流小,发热低。因永磁体的存在,该电机具有较强的反电势,其自身阻尼作用比较好,使其在运转工程中比较平稳,噪声低,低频振动小。步进电机驱动器至少要连接一两根信号线(脉冲和方向信号)。在三维空间的三个坐标轴上,每个坐标轴承上都需要接一组电机和驱动器,则至少需要6根信号线(为将来能扩展为5轴,需要10根信号线),S3C2440A芯片提供了130个通用I/O口,所以我们在这使用I/O口进行连接。
  为了保护器件不受外来意外高压/电流的损害,减少外界干扰,需要在芯片和外界电路之间加装光耦芯片。另外,在本系统中,为了将刀具位置反馈给用户查看,每个步进电机上需再安装一个编码器。编码器与上位机连接的方式是通过RS-232/442/485等标准通信数据线连接,检测数据由编码器处理并打包成标准协议格式发给上位机,而不需要进行其他算法的控制,提高了系统的实时性,精简了外围电路,降低了成本。
  6.光电隔离模块   为了防止控制信号受到干扰,在以前的步进电机驱动器电路设计时,通常采用脉冲变压器作为电压隔离接口部件,但是它在耐压值、可靠性及体积方面都无法与光电耦合器相比,所以本系统采用了光电耦合器作为隔离接口器件。光电耦合器是实现电隔离的核心器件,在本系统采用的是TLP521-4光电耦合器。利用TLP521-4的体积小、寿命长、抗干扰性强以及无触点输出(在电气上完全隔离)等优点来隔离电路、数模电路、逻辑电路、过流保护等。TLP521-4是4路光电耦合器,8个TLP521-4则组成32路光电耦合,其能把编码器传递回的信号与电路板连接起来。
8.3.4  系统软件设计   1. 操作系统平台的搭建   由于数控磨床系统需要同时运行多个设备,所以必须选用多线程操作系统,并且要求实时性非常高、运行稳定、成本要低等。Linux以其开放源代码和免费使用的特性以及架构清晰、平台支持广泛、网络支持强劲、内核小、稳定性强、效率高、可裁剪,软件丰富等优点及支持多线程、运行速度快、便于移植的特点而受到广大用户的青睐。因此本系统选用Linux作为操作系统。Linux操作系统的移植主要分为三部分:U-Boot的修改移植(Boot Loader)、Linux内核的配置与移植、文件系统的制作与移植。本系统使用的是Linux 2.6.30内核和yaffs格式文件系统。
图8.23  系统软件结构图
  2. 伺服电机与步进电机驱动程序   1) 伺服电机驱动   驱动伺服电机实际上是使用PWM波形发生器向伺服驱动器发送PWM脉冲,这是通过定时器的中断来控制一个GPIO引脚置高或置低的持续时间实现的。S3C2440自带了5个定时器,其中timer3已被DMA占用。通过改变相应特殊寄存器的值对计时器进行配置。该驱动程序中编写了四个方法:open、close、write、ioctl。其中write方法从应用程序读入一个周期的高低电平的脉宽,根据这些脉宽调节高低电平的持续时间;ioctl方法则是使输出PWM波形的GPIO引脚保持低电平。
  2) 步进电机驱动   三组步进电机的驱动信号是通过用户扩展数据总线发出的,每个步进电机占用两位,分别表示方向和进给动作,6位总线数据同时发送,使得三个步进电机可以同时动作,实现三轴联动。该驱动程序中除了open、close方法外,还编写了write、read、ioctl方法。其中write方法完成连续控制电机转动功能,它将一系列连续的16位脉冲组合信号写入虚拟地址中,使用一个计时器控制脉冲发送频率;read方法完成从编码器读入位置信号的功能;ioctl方法不是连续发送脉冲信号,它读取从应用程序检测到的键盘按键值,每收到一个键值,该方法就根据这个键值发送一个脉冲到相应的电机,完成相应的动作。
  3) 插补程序及算法   对于控制零件的轮廓来说,最重要的便是插补功能。由于插补运算是在机床运动过程中实时进行的,因此在有限的时间内,必须对各坐标轴实时地分配相应的位置控制信息和速度控制信息。软插补器时延较大,现在一般采用软、硬结合的方式。现在的数控系统普遍提出了高速高精度的加工要求,而对于高速高精度的运动控制,必须缩短采样周期,提高插补精度。同样,由于受机床的加速度及加速度变化率的限制,要保证机床运行的平稳性及动态的精度,足够数量程序段的前瞻处理优化也是必不可少的。同时,在密集数据处理中不能有数据传输瓶颈,预处理时间要短,从而保证机床连续高速运行。有了这些基础,通过伺服前馈控制才能减小跟踪误差,在保证高精度的前提下实现高速加工。
  系统采用的是逐点比较圆弧插补法,在编写加工程序时,一般只考虑刀具中心沿零件轮廓切削,而忽略刀具半径对加工的影响,在实际加工时需要在刀具中心与刀具切削点之间进行位置偏置,补偿上述影响,这种变换过程即为刀具补偿。系统采用的是带有过渡连接的C刀具补偿算法,该算法比较复杂,与许多因素有关,为此定义了一个刀补函数参数,该函数具有更改插补始末位置、增加过渡曲线实现刀补功能。
  4) 仿真程序的编写   仿真是通过对已编译的加工文件的解析,按已编译加工文件的指示,在仿真界面上用小段直线逐个连接插补点实现的。这样做而不直接解析加工代码的好处是:由于仿真和运行时使用相同的已编译加工文件,且解析方法相同,因此可以真实地反映运行的结果,故可以达到所见即所得的目的。仿真程序只关心与走刀有关的信息,目前还不能对速度进行仿真,所以只关心脉冲。打开已编译的加工文件之后,逐个读取其中的字(长度为int型),在发现脉冲标志之后,允许画图。把所有非标志字看做脉冲,将脉冲转化为当前视图的坐标增量,在图上画点并与前一点以小线段相连,直到遇到标志字或到达文件结尾。
8.3.5  系统设计开发调试结果   本系统开发基于广州天嵌计算机科技有限公司的TQ2440+3.5开发套件及配套的软件和工具,具体如下。   (1)  Linux 系统:在虚拟机VMware Workstation 6.5上安装Redhat Linux 9.0。Windows XP 系统下虚拟机设置的共享目录是E:\imags,对应的Linux系统的目录是/mnt/hgfs/imags。   (2)  Linux内核2.6.30.4:使用TQ2440开发板提供的Linux-2.6.30.4_20091030.tar.bz2。
  (3) 交叉编译工具链:使用TQ2440开发板提供的arm-Linux-4.3.3工具链。   (4) 根文件系统制作工具:使用TQ2440开发板提供的Busybox-1.1.3.0.tar.bz2。   (5) 根文件系统:在制作根文件系统时,直接使用天嵌公司提供的lib库,这些文件都下载到E:\images中,通过虚拟机进入Redhat9.0系统,进入/mnt/hgfs/imags目录便可访问这些与Windows XP共享的文件。   (6) 硬件平台:ARM920T处理器的S3C2440开发板。
  本设计在虚拟机VMware 6.5上安装了Redhat Linux 9.0,建立了交叉编译环境,进行了系统启动引导程序U-Boot和操作系统内核Linux2.6.30的移植,使用Busybox建立了根文件系统,安装移植了GUI工具Qtopia2.2.0/Qte2.3.12和下载工具等。   系统部分界面的测试结果如图8.24~图8.30所示,图8.31则为控制系统实物照片。
8.3.6  结论   本系统基于ARM微处理器和Linux操作系统构建了一个比较完整、实用的数控磨床嵌入式数控系统。与传统的单片机系统和PC平台相比,该系统能在较好地满足传统数控磨床系统功能要求的前提下,融合ARM微处理器和Linux操作系统的优点,既有单片机系统成本低、体积小、功耗低的特点,又具有PC平台的开发环境好、资源丰富、具备操作系统、用户界面友好的特点。此外它不仅具有可靠性高、稳定性好、功能强的优点,而且具有良好的可移植性和可裁减性,便于根据实际需求进行功能的扩展和裁减。   当然在本系统中还存在一些不足,如插补功能算法不全面,只能对直线和圆弧进行加工,没有加入三维和其他二维算法,不能实现高级加工功能,诊断功能不完善,等等。
 

相关PPT

中枢神经系统肿瘤ppt:这是中枢神经系统肿瘤ppt下载,主要介绍了中枢神经肿瘤分类,脑胶质细胞瘤,脑胶质细胞瘤概述,什么是胶质细胞,星形细胞瘤概述,星形细胞瘤病理分级,胶质瘤病理诊断的操作流程,临床表现,辅助检查,MRI影像学特征等内容,欢迎点击下载。
基金智能定投系统-业务培训ppt:这是基金智能定投系统-业务培训ppt,包括了业务及系统简介,定投方式介绍,定投流程介绍,定投参数说明,定投工作方式等内容,欢迎点击下载。
毕业设计中期答辩-智能型电冰箱温度控制系统ppt:这是毕业设计中期答辩-智能型电冰箱温度控制系统ppt,包括了课题阐述,电冰箱现状及用户分析,最终设计方案,目前已完成的工作,遇见的一些问题,剩余论文的进度安排等内容,欢迎点击下载。
《arm嵌入式系统开发ppt》是由用户south于2018-01-10上传,属于教育培训PPT。

标签:

优秀PPT

缩略图

  • arm嵌入式系统开发ppt

下载地址

  • arm嵌入式系统开发ppt

相关PPT

推荐

颜色分类黑色PPT模板橙色PPT模板紫色PPT模板蓝色PPT模板黄色PPT模板红色PPT模板绿色PPT模板彩色PPT模板黑白PPT模板

行业分类科技PPT模板医学PPT模板教育PPT模板工业PPT模板金融PPT模板音乐PPT模板汽车房地产互联网培训手机

实用必备个人简历自我介绍年终总结职业规划述职报告工作汇报工作总结岗位竞聘公司简介发布会年会论文答辩

PPT推荐语文课件数学课件英语课件美术课件物理课件科学课件化学课件地理课件生物课件主题班会家长会绘本故事

节日PPT新年元旦节农历春节情人节元宵节三八妇女节愚人节清明节五一劳动节母亲节六一儿童节端午节

节日PPT 父亲节七夕情人节教师节中秋节国庆节重阳节万圣节光棍节感恩节平安夜圣诞节纪念日