- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于ARM和FPGA的电脑绣花机控制系统的设计
电脑绣花机是随着计算机技术、电子技术、机械加工技术的应用发展而不断发展起来的光、机、电一体化设备。嵌入式系统的发展及研究风头正劲,其在数字机床、智能控制等方面的应用正逐渐改变着传统的工业生产和服务方式。电脑绣花机是当代最先进的绣花机械,它能使传统的手工绣花得到高速度、高效率的实现,并且还能实现手工绣花无法达到的”多层次、多功能、统一性和完美性”的要求。它是一种体现多种高新科技的机电产品。绣花机控制电路部分更相当于人的大脑及神经,绣花机的诸多功能很大程度上都是由电路部分决定。国产绣花机在自动化程度、操作人性化程度、存储容量、显示技术、运行效率和故障发生率方面与国外相比存在着较大差距。本文中所介绍的电脑绣花机控制系统在以上几个方面进行了改进,缩小了与世界先进水平的差距。
目前国内比较先进的绣花机控制系统如:以dsp(digital signal processing)为主控制器结合外围电路组成控制、采用已开发好的工控主板、采用基于双16位单片机系统等。且都能满足绣花机的功能要求,但是随着用户需求进一步的提高,如要求提高绣花速度,存储大容量花样文件,采用大屏幕真色彩实时显示,在缝纫过程中显示各个缝纫状态,防止由于主轴电机与绣框电机之间的互相协调能力不足造成的绣针轻微拉布等时,此时系统采用单个控制器已很难满足设备多功能的要求。所以本文拟采用risc体系结构的arm处理器扩展fpga及存储器等作为硬件平台;采用结构简单,功能强大的嵌入式实时操作系统wince作为系统软件平台便于有效管理内存、实现多任务编程。
电脑绣花机基本工作原理
电脑绣花机的工作原理是按照传统绣花流程,使用成熟的计算机嵌入式系统对生产过程进行控制,以达到提高生产效率和稳定产品质量的目的。首先通过pc机上的打版软件将刺绣花样打成花样文件,然后将花样文件存贮于u盘。工作时,首先通过u盘接口电路读出编程打版好的花样文件,再通过触摸屏上显示的人机界面设置好主轴电机转速、换色方式等一系列功能,主控器就会通过读取存贮与u盘上的花样数据,并通过一定的规律进行解码来控制x及y方向的两个步进电机带动工作台作平面运动,同时监测使针进行上下运动的电机(主轴电机)的回转,从而对x-y工作台及针的摆动完成间断运动的配合、协调控制,控制过程中通过光电编码器,cpu能随时得知主轴状态,以此来控制针的抬起或是落下及主轴电机的起停。针杆带者针和线上下运动做刺绣动作,被刺绣品随着绣花框沿x,y方向运动而得到绣花图案。需要注意的是只有当主轴角度在某两个角度之间时,即绣针离开布料到插入布料之间的时隙,x, y轴步进电机才可以运动,否则,绣针将划伤布面或是绣针被损坏。在此基本原理上,电脑绣花机还加入了断线检测、数据存储等功能模块,使其工作稳定便捷。
控制对象模块及功能划分
根据对绣花机的功能分析,将绣花机整体控制系统的功能模块划分为以下几个模块:
·主控器模块。利用cpu实现对总体绣花过程的控制,完成与各个模块之间的数据通信,调度各个模块之间的关系,将要完成的任务交给具体模块实现;
·主轴电机控制模块。对主控器模块发来的数据进行处理,并完成对主轴电机的控制;
·绣框电机控制模块。对主控器模块发来的数据进行处理,并完成对绣框电机的控制;
·人机交互模块。该模块包括lcd显示和键盘输入,完成工作人员与主控制器的交互任务;
·自动换色模块。该模块通过控制换色电机实现自动换色功能, 换色要求精确定位;
·自动剪线模块。该模块完成自动剪线的功能,使得机器工作效率更高;
·断线检测模块。该模块用来及时发现断线等故障并且具有报警功能, 通过译码接口电路可以判断出哪个针位出现断线;
·软区接口模块。cpu通过该模块可以从软盘上读取数据实现内存和外存数据交换;
·usb接口模块。cpu通过该模块可以从u盘上读取数据;
·针位检测、拉杆检测、限位检测。它们为控制系统提供这几个机械部件的位置,并可以及时发现机器工作中出现的错误,避免生产事故的发生。
硬件系统的构架
按照绣花机需要实现的功能将整个系统分成了若干功能模块。本设计中选用的fpga芯片为altera公司的cyclone2系列芯片ep1c6。采用arm + fpga的双核结构将集成arm处理器和fpga的优点,这样既满足了对系统部件集成的需要,又使系统具有了运算速度快、控制能力强、内存空间大、数据交换速度快等优点。 其主要设计思想是以arm为主处理器,fpga为协处理器。利用s3c2410a强大的功能和丰富的外部接口来简化外围接口电路的复杂度,减少器件的数量,同时利用fpga可并行操作和内部硬件资源丰富的特点,实现真正的并行处理,另外还可将外围逻辑电路用fpga实现,这样可以提高系统的执行效率和增强系统的稳定性。根据绣花机功能的要求,硬件电路需要提供各个功能实现的硬件平台,其具体硬件框图见图1。 [p]
图1 绣花机硬件框图
其中,sdram、软区接口、串口接口、lcd接口和usb接口直接由s3c2410处理器提供,这样可以减少一些外围电路。断线检测、键盘和开关量的接口通过外围电路接入处理器的通用i/o口。fpga通过并口与处理器通讯,并按照控制要求将数据转换成控制流分别对主轴电机、绣框电机和换色电机进行控制。设计时采用topdown的设计方法,首先将fpga需要实现的功能划分成相对独立的模块,然后定义各个模块的接口和功能。
基于wince软件系统结构设计
windows ce(wince)是微软公司开发的一种嵌入式操作系统(eos),它包括以下主要模块:内核模块、内核系统接口模块、允文件系统模块、图形窗口和事件子系统模块和通信模块等。wince支持多种外设和网络系统,包括键盘、鼠标、触模屏、串行口、以太网卡、调制解调器、usb设备和存储设备。wince支持超过1000个常用的microsoft win32api和一些附加的编程接口,可用于开发应用程序。此外wince支持用于管理时间关键任务响应的实时处理;各种串行通信和网络通信技术,包括支持usb;与其它操作系统比较,wince具有下列优越性:
·32位多线程、多任务、完全抢占式的操作系统;
·强大的图形显示功能支持,用户能定制完全自己风格的操作界面;
·支持大部分win32 api,基于其他windows的应用程序能方便地移植到wince上。
所以采用实时操作系统作为软件的系统结构的基础是一种缩短开发周期、简化开发难度的有效解决方法。经过比较,本设计采用wince嵌入式实时操作系统。具体的软件模块划分如图2。
图2 绣花机软件模块的划分
本控制系统中的软件分为驱动程序、嵌入式操作系统wince和应用程序三个层次。驱动程序将硬件封装起来,对操作系统和应用程序提供常用的接口支持,使得硬件对于应用程序是透明的。这样即使在更换了硬件平台之后,也可以方便的将开发好的应用程序移植到不同的平台上。另外,操作系统还提供了许多有用的函数接口,使得应用程序开发更方便。应用程序运行在操作系统之上,利用操作系统提供的中断、同步和定时等机制,实现绣花机的各个功能,如电机控制、数据分析、界面显示、断线报警等等。
结语
本文采用先进的基于“arm +wince + fpga”平台的电脑绣花机控制系统,并移植功能强大的嵌入式实时操作系统windows ce构成开发平台,提出了一种新的思路,做出了大胆的尝试,并进行了底层驱动的测试及简单多任务程序的测试。不论从功能上还是从应用前景上来看,都比目前流行的基于单处理器采用主轴匀速控制模式的平台系统有着明显的优势。相信随着工作的进一步深化、进展,定能取得令人满意的控制效果!为国产绣花机电控系统的性能的提高提供良好的解决方案。
射频工程师养成培训教程套装,助您快速成为一名优秀射频工程师...