1. 主页 > 知识大全 >

数控机床编程入门教学优秀10篇

问渠那得清如许,为有源头活水来,以下是美丽的编辑给大家收集整理的数控机床编程入门教学优秀10篇,仅供借鉴。

数控编程总结范文 篇一

引言

在系统编程ISP(In System Programming)是指在用户设计的目标系统或印刷电路板上为重新配置逻辑,或实现新的功能而对器件进行编程或反复编程。随着EDA工具的普及和ISP器件的日益成熟,ISP技术也得到了越来越广泛的应用。ISP技术的应用使得硬件设计软件化,其显著优势体现在:简化生产流程;利用同一硬件结构实现多种系统功能,使之成多功能硬件;在不特殊电路板资源的情况下进行电路板级测试;边界扫描测试;通过Modem和ISP编程接口实现对系统的远程维护和升级。

对ISP器件的编程可通过PC机进行,利用1条编程电路(或称下载电缆)将准确定时的编程信号提供给该器件。但是,这种方法不能使各种器件的数据下载脱离EDA工具独立进行,真正意义上的在系统可编程难以实现。对于ISP器件的编程也可以通过微处理器的控制程序实现,这就为基于Neuron芯片的LON网络节点提供了应用空间。

Lon(Local Operating Networks)总线是美国Echelon公司1991年推出的局部操作网络,目前已广泛应用于测控网络中。LonWorks现场总线技术在控制系统引入了网络的概念。在该技术的基础上,可以方便地实现分布式的网络控制系统,并使得控制系统更高效、更灵活、更易于维护和扩展。利用分布的智能控制节点进行在系统编程无需编程电缆,而且能够充分地利用系统资源,简化编程操作,大大拓展了在系统编程技术的应用范围。

1 基于Neuron芯片的控制节点

1.1 Neuron芯片简介

Neuron芯片的LonWorks节点的核心部分,它既能管理通道,同时具有输入/输出以及控制等能力。该芯片主要包括Neuron 3120和3150两大系列。二者的区别是3150芯片中无部ROM,但拥有访问外部存储器的接口,寻址空间可达64KB,可用于开发更为复杂的应用系统,Noeuron芯片内部固化了完整的LonTalk通信协议,确保节点间的可靠通信和互操作。芯片内部有3个8位CPU协调工作,实现Lon节点的通信和控制功能;11个编程I/O口;5个网络通信端口提供3种工作方式;单端方式、差分方式和专用方式。

1.2 控制节点的硬件结构

Lon网络节点有2种类型:基于Neuron芯片的节点(Neuron芯片是唯一的处理器)和基于主机的节点(主处理器可以是微控制器、PC机等)。一个典型的现场总线控制节点的基本结构如图1所示,主要包含以下几个部分功能块;应用CPU、I/O处理单元、通信处理器、收发器和电源。无论哪种类型的节点都有1片Neuron芯片用于通信和/或控制、1个I/O接口用于连接1个或多个I/O设备,另外还有1个收发器负责将节点连接上网。

本设计中控制节点的基本结构如图2所法。该节点主要包括Neuron芯片、128KB Flash存储器、10MHz晶振、FTT-10A收发器以及I/O接口、驱动、CPLD。Neuron芯片外部扩展了Flash存储器,用于存储固件和用户应用程序。其中固件通过编程器下载,而应用程序的下载可以使用编程器,还可以使用网络管理工具经Lon网络下载,这样,CPLD的重新配置就能够通过Lon网络方便快捷地进行。5根在系统编程控制的ispEN、MODE、SDI、SCLK以太SDO占用Neuron芯片的5个I/O口。Neuron芯片I/O口本身的驱动能力是不够的,需要使用74HC367或74HC244增强信号驱动能力,并使用适当的阻容网络给信号线滤波,增强抗干扰能力。

2 在系统编程的软件实现

2.1 以Lattic公司的ispLSI这种CPLD器件为例,器件内需要编程的E2COMS单元阵列如图2所示。

E2COMS元件按行和列排成阵列。地址移位寄存器指明当前的编程行数,而数据移位寄存器装载将要写入该行的数据。数据移位寄存器分为低段数据寄存器高段数据寄存器,低段与高段的数据分别装入。编程时先将欲写放某行的数据串行移入数据移位寄存器,并将地址移位寄存器中与该行对应的位置置1(其余位置置0),让该行被选中,在编程脉冲的作用下将水平移位寄存器中数据写入该行。然后将地址移位寄存器移动1位,使阵列的下行被选中并将水平寄存器中装入下一行的编程数据,依此类推。

JEDEC(熔丝图)文件是电子器件工程联合会所制定的文件器件编程信息的标准格式计算机文件,编程信息用ASCII码表示。Lattice公司定义了一种专用用于ISP操作的数据格式,即ISP数据流文件(ispSTREAM),原来的一个ASCII码只用1bit表示,大大减小了数据文件的存储空间。因此,执行在系统编程之前,首先使用ispCODE软件来实现这一数据转换,形成易于与Neuron C语言源代码相融合的ispSTREAM文件。

2.2 Neuron C编程语言

Neuron C是专门为Neuron芯片设计的编程语言,它从ANSI C中派生出来的,并进一步扩展了用以支持由Neuron芯片中的固件提供的各种运行特性。Neuron C语言编程效率高,可读性强。该语言加入通信、事件调度、分布数据对象和I/O功能,是开发LonWorks应用的有力工具。

为实现Neruon芯片与I/O设备之间的通信,Neuron芯片的11个I/O引脚可定义为34种I/O对象,用户可根据实际应用的需要合理选择在应用程序中定义不同的I/O对象,然后用io_in()或io_out()等函数实现对I/O对象的数据读写操作,即实现Neuron芯片与I/O设备之间的通信。在本设计中,用作编程信号的I/O口定义为“直接I/O对象”中的“比特I/O对象”。比特输入是以TTL电平兼容的逻辑信号,输出是CMOS电平,可以驱动外接的与CMOS以及TTL兼容的逻辑电路。

2.3 软件实现

根据CPLD器件的内部结构及其在系统编程原理,控制程序的任务是从存储器中读出熔丝图数据据,然后将其转换为串行数据流,写入CPLD中。编程的过程由5个编程信号控制,它们由事先定义好的I/O口产生,然后编制读写这些I/O口的程序。ISP编程过程就是软件对这些口读写的过程。编程的关键在于提供准确定时的ISP编程信号,必须保证各ISP编程信号之间的时序关系。

Neuron C程序总体结构如图4所示。Neuron C源程序首先定义变量、函数以及I/O口的使用情况,然后编写when()语句调度程序。当需要执行ISP操作时,调用相关程序。图4中,ispSTREAM文件头包括CPLD器件类型、CPLD器件块擦除和行编程的脉冲宽度等参数。

Neuron C关键字允许直接将部分应用代码加到指定的存储段。本设计中用far关键字将ispSTREAM文件存储在RAMFAR区域。此外,在编程软件执行期间,由于指令的执行时间相对较长,大多数硬件定时要求(通常较短)都有自动地得到满足。但编程脉冲总体擦除脉冲却分别长达40ms和200ms,而板上没有硬件定时器,只要靠软件延时来实现。

在NodeBuilder开发环境下,执行build命令后,将工作目录下的文件输出,装载到编程器中,编程器将应用程序和固件下载到Flash存储器中。

结束语

数控机床编程入门教学 篇二

方法。

一、活跃课堂气氛,变通讲述方法

在任何形式的教学方式中,课堂教学都是不可或缺的教学活动。数控技术需要坚实的理论作为基础,要构建坚实的基础,课堂教学就成为了一种重要的途径。但传统的形式已经无法满足学生的需要,这就需要在课堂的理论教学中引入新的理念和方法,改变传统的教学观念。活跃课堂气氛、变通讲述方法非常关键。数控技术是一门较为枯燥的学科,没有有趣味的理论知识进行讲解,也没有经典故事可供引用。所以,要让课堂的气氛真正地活跃起来,就必须引入新的教学方法。

充分应用多媒体教学就是其中之一。例如在讲授数控系统的组成时,教材上给的概念非常具体,但是缺乏新意,很容易讲述但是初学者很难理解。尤其是初次学习数控技术的学生更是无法理解数控系统中各组成部分的含义、功能,无法理解数控装置到底是个什么设备。只采用讲述的办法无法收到很好的效果,而制作成多媒体课件后效果会截然不同。把系统的组成框图制作成图片,使用动画的方式,表示一段输入信号从控制介质经数控装置输入到伺服系统,并将该信号以动画的特点说明其被放大处理后驱动机床的运动部件和驱动机床进行动作,同时在系统的检测装置将检测机床实际运动的检测信号反馈回数控装置和输入信号进行比较,并调整机床的运动状态。经过多媒体动画演示后,学生不但理解了系统各组成部分的功能,也了解到机床检测装置对机床的重要性。在讲述数控机床的种类及特点时,把各种类型的数控机床配以动画过程,演示数控机床的加工、生产过程和普通机床的加工、生产过程相比较,很直观地展现出数控机床的性能特点,让学生看后一目了然。

在教学活动中引入多媒体技术,使课堂的气氛也活跃了起来,而这从静态的讲述到动态的演示、从书本上不动的文字到屏幕上的动画,使学生在理解上更深入,也让枯燥的讲述过程变成了互相的交流。这样不仅提高了学生的学习兴趣,还可使学生在轻松的环境中进行思考。

二、理论与现场实践并举,图样与零件相结合

理论来源于实践,实践需要理论进行指导。数控教学更是如此,只有理论和实践很好地结合才能够收到比较好的效果。

系统地讲授数控机床的理论知识、培训编程和加工工艺路径的拟定。内容包括:讲授数控车床的定义、工作原理、系统代码、编程等,使学生的认识过程达到“面―点―面”,即由对数控机床的初步了解再扩大到对整个数控生产线的了解。之后指导教师让学生分组进行现场实践,包括教师讲解数控机床的操作面板、数控机床的伺服系统,还有一些机床的动作指令,留给学生足够的时间在机床上进行实践操作,培养学生实践操作能力,将理论知识应用于实践。

在讲述编程时,还给学生准备一些图样让学生进行练习,同时还给学生提供一些已加工的零件。因为只用工件的图样不会有很好的效果,毕竟图样不能完全地把零件的所有特点表达的非常清楚,学生也很难理解所编写的程序到底加工出一个什么样的工件,而给学生一个已加工过的工件,效果就比较好。对于初学编程的学生,需要将零件的图样和零件结合起来,让学生明白程序加工后就是这个样子,这样既省了对零件的特点进行讲述,又把被动的讲述变成学生主动的思考,使学生根据零件的几何图形思考编程过程中存在的问题。例如数控车床(FANUC系统)中零件在加工过程中粗车循环指令G71、G73的循环起点的设定,螺纹车削过程指令G92、G76的起刀点以及进刀量和退刀量的设定等等。这一转换不但提高了学生学习的效率,而且使学生在学习过程中掌握了正确的学习方法。

三、实践课与生产相结合

学生学习数控技术的目的就是应用到生产过程中去。让实践课结合生产,让学生在实际生产过程中进行实践。数控技术是一门先进的机械加工技术,它的最终目的就是服务于生产,而教学的要求不同于对产品的要求,在教学实践操作过程中,学生的零件的某个部分的尺寸不合格的情况时常发生,但这样对他的实习成绩不会有太大的影响,而在生产中如果类似的情况发生,这个零件就成了废品,直接影响到生产的经济效益,这样可以使学生在实习过程中的态度发生转变,他自己生产的产品有没有价值一看便知,使学生对自己生产加工的产品有一个价值观念,这样他对待数控技术学习的态度也会自然地发生变化。

数控编程总结范文 篇三

关键词:1553B总线;多路传输总线接口;总线控制器;远程终端;总线监控器

中图分类号:TN929文献标识码:B

文章编号:1004-373X(2009)05-057-03

ACE-MBI Design Meet to Avionics Communication System Requirement

XIE Chong1,WANG Qifeng2,DANG Chunbo3

(1.PLA Military Representative Office in 631 Institute,Xi′an,710068,China;2.Aeronautical Computing Technique Research Institute,Xi′an,710068,China;

3.PLA Military Representative Office in Xi′an Aircraft Industry Company,Xi′an,710089,China)

Abstract:Multi-channel Transmission Bus Communication Interface (MBI) is the foundation of avionics system.Any subsystem of avionics system entered 1553B communication system must by MBI the most critical device of MBI is 1553 B protocol chip.In this paper,the composition and functions of the advanced 1553B protocol chip BU-61586 and the new MBI design plan with this chip which compatible with the UT-MBI used in the models task are introduced.This solution has changed the situation that rely on foreign components too much.It has been extensively used recently.

Keywords:1553B bus;multiplex transmission bus interface;bus controller;remote terminal;bus monitor

0 引 言

航空电子系统是航空电子物理设备通过1553B双余度总线综合成一个分布式通信系统。现代航空电子系统中,各个独立的航空电子分系统都是由计算机来完成数据的采集、计算、处理和通信的。总线通信是各分系统之间交换信息、协调一致、实现容错的基础,每一分系统都必须具有1553B多路传输总线通信接口(MBI)才能完成分布式通信任务,可见MBI在航空电子系统中的重要作用。为保证任务需求,扩大芯片来源,在国内尚不具备1553B协议芯片生产能力的情况下,为保证MBI的生产,及时提供给各分系统,最有效的途径之一就是采用多种1553B协议芯片,设计出与UT-MBI具有兼容性的MBI模块。美国DDC公司上世纪90年代推出了ACE(Advance Communication Engine)系列总线通信接口芯片BU-65170,BU-61580,BU-61590和BU-65620等,其中BU-61586芯片从供货渠道、芯片质量上有所保证,可以作为新MBI(ACE-MBI)设计采用的芯片。

1 高集成度ACE芯片BU-61586

1.1 功能概述

BU-61586具有BC/RT/MT三种功能,具有灵活的处理器/存储器接口,12 KB内部RAM,可扩展访问64K×16 b的外部RAM,内部集成了双通道收发器。通过软件编程可任意选择BC,RT或MT功能。除了能完全实现MIL-STD-1553B标准所规定的消息传输外,还具有较强的消息管理功能。在BC方式下,具有自动重试、可编程的消息间隔、消息帧自动重复执行和可编程的响应超时时间。在RT方式下,具有可编程设置命令非法,具有单缓冲、双缓冲和循环缓冲三种缓冲方式下,可编程设置命令非法,可对不同的子地址设置忙位。在MT方式下,可监视字,消息和RT。

1.2 ACE芯片系统结构

ACE作为主机和1553B总线之间的接口芯片,提供了处理器的接口和与1553B总线的接口。该芯片作为高级的通信接口芯片,具有双通道收发器协议处理部件、存储器管理部件、处理器接口逻辑、12 KB的可选存储部件等。ACE与双余度1553B总线连接时非常简单,采用变压器耦合方式时只须直接与变压器相接即可与1553B接口,其结构如图1所示。

2 与UT-MBI兼容的ACE-MBI设计

2.1 ACE-MBI硬件设计

按照航电系统五层通信协议(即物理层、数据链路层、传输层、驱动层、应用层)规定和设计要求,ACE-MBI对UT-MBI在驱动层和应用层上具有兼容性,而物理层和数据链路层由1553B协议芯片硬件实现,因此ACE-MBI与UT-MBI的主要区别在传输层。

ACE-MBI和UT-MBI具有基本相同的结构框图,其结构框图如图2所示。

MBI硬件按其功能特性可划分为三部分:前端区、可编程控制器、后端区。

2.2 前端区

前端区是MBI与1553B总线介质的接口区,由1553B协议处理器和隔离变压器组成,主要完成数据的串/并、并/串格式转换及发送和接收工作,同时对接收数据进行最基本的错误检测和处理。

2.3 后端区

后端区为MBI与主机之间的接口区。其主体为8 KB的双口存储器(左口)和I/O口,它是MBI传输软件与主机应用软件进行数据交换和MBI中断处理的媒介体。双口存储器空间按用途可分为数据区和控制区。

后端区由数据和地址缓冲器、GAL芯片和FPGA实现,包括以下三部分:

(1) 双口存储器地址译码电路;

(2) 中断生成电路;

(3) I/O访问、软复位产生电路。

ACE-MBI与UT-MBI在后端区设计相同。

2.4 可编程控制器

可编程控制器包括以下组件:

(1) 微处理器;

(2) 8 KB RAM,8 KB EPROM;

(3) 可编程时钟(RTC,DT);

(4) 双口存储器(右口);

(5) RS 232接口。

可编程控制器主要承担传输层任务,是传输软件的载体,是MBI各功能组件的控制管理中心,其任务是按照已定操作程序及来自主机的命令和数据对MBI实施控制。ACE-MBI和UT-MBI的区别硬件上就在可编程控制器的实现上。

UT-MBI的可编程控制器采用伪双口方式,微处理器通过UT1553B访问双口存储器,UT1553B通过DMA方式访问双口存储器。由于UT内部无RAM,其控制区和数据缓冲区均在双口存储器内。

在ACE-MBI可编程控制器设计中,根据ACE芯片的6种接口方式,有3种可行的接口方式可供选择,即16位透明方式、16位DMA方式和带有外部逻辑以减少微处理器访问双口存储器时间的16位DMA方式。采用三种接口方式的可编程控制器结构框图如图3~图5所示。

RAM时间的16位DAM方式

由于设计要求ACE-MBI在替换UT-MBI时,在驱动层、应用层是透明的,保证UT-MBI原双口格式划分不能改变,但是ACE芯片的控制方式、格式与UT1553B完全不同,那么ACE芯片的控制区只能放在其内部RAM中,这样双口存储器中控制区格式不需修改。

在以上三种接口方式下,ACE芯片数据缓冲区即可放在其内部RAM,也可放在双口RAM中。若将数据缓冲区放在芯片内部,传输软件将担负数据从内部缓冲区向双口的搬家工作,从而降低了工作效率。所以采用将ACE芯片数据缓冲区按UT数据缓冲区格式进行编排,放在双口存储器数据缓冲区内的方式,传输软件仅实现控制信息、总线表、通信表的格式转换和传递,这样就保证了双口存储器中数据缓冲区和控制区的格式不变,原UT-MBI的驱动软件、应用软件就可以直接在ACE-MBI上使用。

以上三种接口方式中,通过可编程控制器结构框图可以看出,16位透明方式需增加数据线、地址线隔离,增加了硬件设计难度和芯片使用数量,降低了MBI的可靠性,不宜采用。后两种16位DMA方式中,16位DMA方式硬件设计类似于UT-MBI的伪双口方式,但这种方式下访问双口存储器的时间较之于带有外部逻辑的16位DMA方式时间较长,带有外部逻辑的16位DMA方式只需增加部分组合逻辑,即可实现。通过减少微处理器访问双口存储器时间可提高传输软件效率,因此带有外部逻辑,以减少微处理器访问双口存储器时间的16位DMA方式应作为首选方案。

3 ACE-MBI通信软件

由于应用层与特定的子系统相关,数据链路层和物理层由硬件实现,所以ACE-MBI通信软件实现驱动层和传输层的功能。

3.1 通信软件结构

通信软件的层次结构及其关系如图6所示。

3.2 驱动软件

驱动软件是实现ACE-MBI上传输软件与主机应用软件间的软件接口,是实现通信控制与数据传输的专用软件。它可以提供各类总线消息数据的读写支持,实现对ACE-MBI内部程序的调用,对计时器的控制及处理。驱动软件的另一主要功能是对主机接收到的ACE-MBI的中断信号进行中断原因分析,并调用系统通信控制(SCC)或局部通信控制(LCC)中断服务程序。

驱动软件按其功能可分为MBI控制、系统控制、计时器控制、消息控制和MBI中断服务。驱动软件驻留于主机中。

ACE-MBI与UT-MBI驱动软件相同。

3.3 传输软件

传输软件控制航空电子系统多路传输数据总线上的数据传输,它在主机的控制下能够完成通信系统的传输层协议,实现故障检测与处理、双余度总线的管理与切换、实时时钟RTC的同步、控制信息、总线表、通信表的格式转换。传输软件包括通信表、总线表和控制程序几部分。

通信表主要用于定义出入BC或RT各类消息的物理名、逻辑名、终端子地址、消息功能及其总线属性等相关信息之间的对应关系。

总线表(BC专用)用于管理和组织执行位于总线通信过程中有效终端RT间的数据传输,包括优化总线指令表及一些相关信息。

控制程序是在MBI的正常操作过程中可由MBI内的微处理器独立执行的程序。

ACE-MBI的传输软件比UT-MBI的传输软件多一项任务,即进行控制信息、总线表、通信表

的格式转换和传递。

4 结 语

目前,按照要求设计的ACE-MBI已完成生产,并通过了航空电子系统测试平台的验收测试。验收结果证明,其完全可作为UT-MBI的替换产品。在新任务中,ACE-MBI得到了推广应用,替换方案的实现扩大了芯片来源,保障了产品生产任务的完成。

参考文献

[1]航空航天部301所。MIL-HDBK-1553多路传输数据总线应用手册[Z].1988.

[2]颜学龙,黄雪明,任登娟,等。1553B总线接口控制器研究与顶层设计。微计算机信息,2007,23(22):29-31.

[3]航空工业部第301研究所。飞机内部时分制指令/响应式多路传输数据总线。GJB 289-87,1987.

[4]李化云,周密,尚利宏,等。基于自主1553B协议芯片PC-MBI通信软件的设计与实现。微计算机信息,2006,22(26):40-41,94.

[5]宋丽娜,熊华钢。1553B总线控制器异步通讯仿真软件设计。电子技术应用,2003,29(2):50-52.

[6]高成金,肖明清。基于FPGA的1553B-ARINC429总线转换器设计。电子测量技术,2007,30(2):189-193.

[7]傅大丰,杨善水,陈志辉,等。1553B总线在现代飞机自动配电系统中的应用。沈阳航空工业学院学报,2004(1):8-9.

[8]罗志强。航空电子综合化系统[M].北京:北京航空航天大学出版社,1990.

[9]丁明亮,魏志刚。1553B总线远程终端仿真软件设计。计量与测试技术,2008,35(1):43-44.

[10]陈汝全,林水生。实用微机与单片机控制技术[M].成都:电子科技大学出版社,1993.

数控编程开发范文 篇四

相对于传统的手动编程,自动编程以其强大的灵活性和简便性被越来越多的行业和人员所接受,并且仍在被不断改良,自动编程优于手动编程主要体现在以下几个方面。

(1)数学运算处理能力强。对于手工编程难以完成的,像空间曲面零件以及程序量很大的零件自动编程就轻松多了。

(2)能快速、自动生成数控程序。对非圆曲线的轮廓加工,手工编程会因为节点数过多程序段很大而使编程进度慢且容易出错,自动编程在完成计算刀具运动轨迹之后,会在极短时间内自动生成数控程序且不会出错。

(3)后置处理程序灵活多变。前置处理可以通用化,但后置处理相比前置处理工作量要小的多,而且它灵活多变,能适应不同的数控机床。

(4)程序自检、纠错能力强。手工编程时,书写笔误、算式错误、程序格式出错,靠人工纠正费时又费力,采用自动编程,能自动纠正,省时省力。

(5)便于实现与数控系统通讯。自动编程系统通讯在无需再制备穿孔纸带等控制介质的条件下可以把自动生成的数控程序经通讯接口直接输入数控系统,达到控制数控机床加工的目的,不用担心数控系统内存不够大,做到边输入,边加工,提高效率,缩短周期。

2数控加工自动编程系统的实现及技术分析

数控机床的自动编程是怎么实现的呢?机械数控专业出身的人都知道是用CAM(computerAidedManufacturing,计算机辅助制造)软件实现的。像比较常用的mastcam系统。CAD/CAM系统自动编程首先是利用CAD模块生成相应的几何图形,然后再采用人与机器相互交换的实时对话方式,在指定被加工部位的计算机上自动输入相对应的加工几何参数,计算机便经过在线的数学处理编程出数控加工程序,同时刀具的加工轨迹便在计算机屏幕上已动态的形式被显示出来了。计算机数值控制(简称数控)是CAM的核心,是它让将计算机系统应用于了制造生产中。早在1952年数控铣床就在美国麻省理工学院被研制成功,那时候数控是由编码在穿孔纸带上的程序指令来控制机床的。此后发展出了一系列包括称之为“加工中心”的多功能机床在内的的数控机床,通过数控程序指令的改变就能从刀库中自动转换和自动换刀,完成连续的锐、钻、饺、攻丝等多道复杂工序,流行的“柔性”一词就是对这种加工灵活性的褒奖。

数控除了在机床应用以外,在其它各种设备的控制上也应用甚广,如火焰或等离子切割、数控焊接机器人、激光束加工仪器、自动绘图仪、油漆喷涂机器人、自动编织机、电脑绣花、自动雕刻机等,数控机床是机、电、液、气、光五种元素高度一体化的智能产品。我们首先要用几何信息来描述刀具和工件间的相对运动和一些必要的工艺参数(进给速度、主轴正反转、主轴转速、换补刀)。然后在相应的磁盘、穿孔纸带、磁带等信息载体上利用数控系统读入将这些信息按一定的格式形成数控加工程序,从而使数控机床动作生产加工零件。接下来介绍一下数控加工中心,它比数控机床多了带有刀库和自动换刀装置。有了这些装置加工中心就能自动的换刀,从而能连续地对工件的各个加工表面进行钻削、扩孔、铰孔、镗孔、攻丝、铣削等多种工序的加工。作为一种加工功能很强,更加智能化机器,它的主要功能还是体现在铣削功能上,并不是所有的工件都适用于加工中心上,当加工对象为形状复杂、工序多且繁琐、精度要求高的工件才适用于加工中心。而且在数控加工中心上加工的半成品大多属于平面类零件,因为平面类的一般只须用3坐标数控铣床的两坐标联动就可以把它们加工出来。

3数控自动化对未来工业发展的关键作用

数控编程总结范文 篇五

关键词:臂式斗轮堆取料机;PLC;现场总线

中图分类号:TF325.3文献标识码:A

前言

臂式斗轮堆取料机是在小型斗轮挖掘机的基础上发展起来的堆、取合一的轨道式散料专用装卸设备。它具有堆取能力大、料场占地面积小、操作方便等优点而被工业部门广泛使用[1]。它广泛应用于火力发电厂、轻工化工、散货港口等的储料厂。所以研究斗轮堆取料机的控制系统有着重要意义。

1初期的臂式斗轮堆取料机控制系统

80年代初期,PLC、变频器和软启停器等应用于斗轮机控制系统中,减少了继电器和控制电缆,在斗轮机取料的过程中,通过变频调速技术实现了斗轮取料机构取煤量在一定范围内的可调;实现了大车的平稳启动与制动,减小了启动与制动过程中对设备的冲击[2]。斗轮机的性能得到了提高。

2现场总线技术

根据国际电工委员会(IEC)和美国仪表协会(ISA)的定义:现场总线是连接智能现场设备和自动化系统的数字、双向传输、多分支结构的通信网络,它的关键标志是能支持双向多节点、总线式的全数字通讯,具有可靠性高、抗干扰能力强、通信速率快、维护成本低等特点[3]。

Profibus符合国际标准IEC61158,是世界上通用的现场总线标准之一,并以其独特的技术特点,严格的认证规范、开放的标准、众多厂商的支持和不断发展的应用行规,成为现场的最优解决方案[4]。

3应用了总线控制的的臂式斗轮堆取料机控制和通讯系统

设计以PLC为核心,采用先进的现场总线方式,将PLC、变频器、触摸屏、检测系统连接在一起,控制臂式斗轮堆取料机各机构的运行。本系统采用SIEMENS公司的Profibus-DP总线控制系统,所有的网络元件都要和CPU通过总线进行数据交换。

3.1臂式斗轮堆取料机的硬件系统设计

臂式斗轮堆取料机的电气控制系统由电源部分、电动机控制中心(MCC)、变频调速系统、操作台、PLC及触摸屏等组成。

PLC是系统的控制核心,采用SIEMENS公司的S7 300系列可编程序控制器,主机采用CPU315-2DP,提供一个PROFIBUS DP接口。

变频器采用施耐德公司的ATV71变频器。

软起动器采用西门子公司的3RW44。

变频器、人机界面等现场装置,通过独立的Profibus-DP接口直接连接到现场总线上。PLC通过逻辑运算处理发出相应的数字信息,从而控制现场装置的工作运行。

3.2臂式斗轮堆取料机软件控制系统

根据控制系统的硬件,选择相应的编程软件对系统的控制流程进行开发。西门子专门为客户提供了程序开发软件STEP 7。STEP 7是用于SIMATIC可编程序控制器的组态和编程的标准软件包,它是SIMATIC工业软件的组成部分[5]。

(1)堆料程序控制任务

在斗轮堆取料机堆料PLC控制程序中,断续回转+断续行走定点堆料是经常采用的一种工作方式。首先将大车行走到预定料场位置,启动堆料程序,给系统发出堆料作业信号并实现与系统胶带工况联锁。通过编码器和物位计的采样、传送、逻辑运算,做出判断进行悬臂回转和大车行走动作,实现斗轮堆取料机的堆料作业。

(2)取料程序控制任务

在斗轮堆取料机取料PLC控制程序中,采用旋转分层不分段取料。首先将大车开至预定取料位置。当接到系统取料指令后,启动取料程序,斗轮在程序控制下顺序启动,通过编码器分别进行取料初始角和取料终止角的角度采集、传送和存贮,确定悬臂回转的取料范围。实现斗轮堆取料机的取料作业。

3.2臂式斗轮堆取料机软件控制系统的解决方案

项目可用来存储为自动化任务解决方案而生成的数据和程序。这些数据被收集在一个项目下,包括:硬件结构的组态数据及模板参数;网络通讯的组态数据,以及为可编程序模板编制的程序。生成一个项目的主要任务就是为编程准备这些数据。数据在一个项目中以对象的形式存储。

(2)项目硬件组态

通过STEP 7编程软件对臂式斗轮堆取料机控制系统的硬件配置进行组态。在项目中插入相应的可编程序控制器的硬件结构。如图1所示:

图1 系统的硬件组态

(3)项目程序开发

一旦完成了硬件组态,就可以为可编程模板生成软件,选择编程语言,完成程序逻辑。STEP 7软件为客户提供多种编程语言,包括语句表STL、梯形逻辑LAD、功能块图FBD、SCL结构控制语言等等。本设计采用语句表STL和梯形图LAD进行设计。

3.3臂式斗轮堆取料机软件控制系统的编程实例

如图2所示为一段斗轮堆取料机自动堆料程序,采用LAD梯形图编制。

程序块中包含了堆料联锁工艺流程,只有满足各种工作条件,才能激活输出点,斗轮堆取料机各个机构才能互相配合顺序运行。为了方便阅读和编程,通常要将I/O点进行定义,通过Step 7软件提供的符号编辑表就可以轻而易举地完成。

・I代表数字输入;

・Q代表数字输出;

・M代表中间变量;

・PIW代表输入字;

・PQW代表输出字。

图2STEP7自动堆料编程段

4 结论

通过分析斗轮堆取料机的堆料工艺和取料工艺,确定系统的控制方案,设计一套控制系统。本文的创新点在于采用了先进的现场总线控制系统,通过现场总线将PLC、变频器等现场装置连接在一起,实现了PLC控制技术、变频器调速技术与检测技术的集成。现场总线构成了该控制系统的基本框架,是斗轮堆取料机控制系统的核心部分。通过现场的应用结果表明该现场总线系统提高了作业效率,保证了设备的可靠运行,提高设备的使用寿命。

参考文献

[1] 邵明亮。斗轮堆取料机[M].北京:化学工业出版社,2007

[2] 何恩江,闫德轩。变频调速在斗轮堆取料机行走控制系统中的应用[J].哈尔滨轴承,2006(02)

[3] 王慧锋。现场总线控制系统原理与应用[M].北京:化学工业出版社,2006

[4] 崔坚。西门子工业通信网络指南。北京:机械工业出版社,2003

数控机床编程入门教学 篇六

关键词:数控技术;编程;教学方法;师资培养

随着现代技术的迅猛发展,数控技术在机械制造业已迅速地被广泛应用,目前,在经济发达的珠江三角洲地区的各类企业中,已普遍使用了数控设备进行生产。因此,数控技术的应用在很大程度上决定了地区的发展速度和企业的竞争力,可以说,21世纪机械制造行业的竞争主要就是数控技术应用能力的竟争。为了能培养出既懂现代技术,又具有实践生产力的新型人才,笔者进行了很多探索和研究,在几年的教学实践中,既遇到教学的难题,也尝到了解决难题的乐趣,积累了一定的教学经验,现将数控编程课程教学的一些问题进行探讨。

一、目前存在的问题

1、生源素质差

教学对象素质较低,主要表现在文化理论基础差,自控能力弱,思想上不求上进等几方面。而生源的这些问题给教学自然地带来了很大的影响:主要是给正常教学带来了很难克服的困难。

2、教学设备简陋,教学条件差,实践环节薄弱

数控专业是一门实践性很强的专业,需要学生在讲解理论的同时及时地进行实践操作以加深理论理解。如果不能及时地理论联系实际地教学,那就很难有好的教学效果,而众多的学生实习需要有数量较多的昂贵的数控设备,这使许多学校力所不及。

3、师资培养跟不技术发展的需要

目前大多数学校的老师都是由其它课老师转型而来,不但在实践操作能力上不行,在理论上也边学边教,任课老师需要学习的知识很多,理论与实践提高的空间还很大。虽然教师学习的热情很高,花的气力也很大,但由于教学任务重,培训机会少,知识更新慢,跟不上技术发展的需要,很难适应教学方面的要求。

二、解决问题的办法

以上教学中存在的问题是目前各校的共性问题,是大环境造成的,一时难以改变,也非一校所有,为了在现有基础上搞好教学,我针对上述存在的问题,进行了大胆探索,得到了一定的经验与体会。

1、如何解决学生素质差,教学计划难完成的问题

首先,在学生学习能力,素质差的方面,我采用由浅入深,分阶段教学的方法进行,具体做法是:针对学校学生综合素质差,理解能力有限,选择合适的例题,分阶段,有步骤进行教学,我改变了教材一开始就讲如何编程,用较难形状编程的例子的方法,先举了一个只有单一动作的例题进行编程,给学生示范,并在机床上操作演示给学生看,学生看到了操作成功后,对单一的程序有了初步认识之后,进一步给他们讲解有关程序的格式、内容及国家标准规定的指定数控代码,让学生记、背熟练。接下来我就讲几种常见轮廓形状的加工程序的设计,再根据教科书上的几何形面结合的例题讲给学生听,这样由浅入深,层层深入的处理后,学生就能接受了。这样分步骤教学也不是一开始就想到的,是在实践中发现学生不能接受这个新事物时才发现的,这使笔者体会到,作为教师应该了解和熟悉教学对象,然后,根据对象的不同,认真把握和处理好教学内容,找出适合学生的教学方法,是十分重要的,有了合适的方法,不但能按完成教学计划,在教学上还能做到不能做到的事半功倍。2、如何解决教学条件差,实习设备不足的问题

在教学方法上,理论与实践分段进行,构建“实践―理论―再实践”的教学方法,做到早实践、多实践、实践教学不断线。

1)理论教学环节

①根据学生的特点与教材内容写出合理的教学计划

②教学内容以“必须,够用”为度,少一点公式推导,多一点应用实践,删繁就简,确保重点,突出针对性和应用性。例如:在讲“数控编程与操作”的内容时,理论方面应着重从编程思想与方法出发,将涉及到的工艺分析、程序的代码、结构、格式及数值计算进行详细讲解,多一些编程操作实例,突出实用、实践,而无需对数控系统或数控机床的维护维护保养等知识讲解。在教学中要充分与实践相结合,采用精讲多练,边讲边练,讲练结合的形式。

③在组织教学方面,运用先进的教学手段组织教学

数控专业是一门工程实践很强的学科,课程中的内容较多都要涉及至各种机械的结构及机构的传动,运动原理。随着计算机、多媒体和网络技术的迅速发展和广泛应用,数控专业的课堂教学应进入数字化时代,可以购买相应的多媒体教学光盘或教师自己制作多媒体课件来授课,以到达良好的教学效果。

2)实习教学

实习教学是数控专业的一个重要环节,由于数控加工牵涉到机床、夹具、刀具、工艺路线、切削参数及编程方面的知识,由于数控设备少,我们可先在普通设备上培训有关知识,避免一开始就就让大批学生涌向数量不多的数控机床,等到相关知识准备好了,需要进行程序运行时才上数控机床,这就大大减少了数控机床的工作量,从而缓解了设备不足的压力。因此,我建议实习应按普通机床加工(如普车、普铣)仿真模拟训练数控机床操作三步进行,其中,普车普铣旨在让学生掌握主要的机械加工工艺与装夹方法。训练其对不同材料,不同零件,采用何种工艺路线,及在不同的工艺路线、不同的主轴转速、进给速度及切削深度条件对工件的形位精度产生的影响。培养学生对切削加工参数和工艺路线制定的感性认识。仿真模拟训练主要是培养学生对编程指令和机床面板的熟练程度,为在数控机床上的操作打下坚实的基础。避免因指令不熟而损坏数控设备。

3、师资队伍的建设,对数控教师进行再培养

教师是课程建设与组织教学实施的主体,其素质高低直接影响课堂教学目标的实现,而数控专业又是一门工程实践性的学科,且发展很快,对从事数控专业的教师而言,应既是知识的传播者,也是实践的示范者。目前,中等职业教育学校的专业教师,大多是从学校到学校,缺乏实践这一环节的训练,在动手能力的培养上还有待提高,同时,由于该专业的特点,在理论上还需加强专业学习,把教材钻深钻透。因此,作为数控专业的教师必须加强“双师型”能力的培养。作到台上能讲,台下能做,理论联系实际,才能真正地把这一门课上好。而要做到这些,任课老师积极主动地投入学习,是十分重要的,但光有老师一方面的积极性是远远不够的,为了让老师尽快向双师型过渡,学校对教师的关心和培养,更为重要。学校应尽量为教师的理论提高创造必要条件,争取多让老师参加社会或高校的理论培训和学术交流,让教师能熟悉和了解数控技术的发展、动态和方向。及时掌握最新理论,在实践上,学校也应鼓励和支持教师积极参加实践操作,参加实习指导,为教师提高动手能力提供更多更方便的条件。

结束语

综上所述,针对目前的学习对象,教什么?怎么教?对教学内容的处理,教学方法的改进,实习设备的投入,双师型教师的培养这几个方面都将直接影响到数控人才的培养。

参考文献:

1.数控加工工艺学。中国劳动社会保障出版社,2005.6

数控编程开发范文 篇七

数控自动编程的软件很多,一般的CAD都有这样的自动编程功能,例如现在PRO-E、MASTERCAM、UG、solidworks等软件都有这样的自动编程功能,他们的结构庞大,软件的学习上也很复杂,并且在价格上也很昂贵。假如仅仅用于数控车床的自动编程上,真是大材小用了,很是浪费。使用简洁,操作方便,专用于数控车床加工的小软件,这样的软件专业性和专一性很强。既节省人力又节省物力。而AutoCAD因其灵活性和接口的多样性被广泛的使用在机械设计领域中。在其能够生成的文件格式中有一个二进制的文件,文件中包含着轮廓线的线型和坐标的信息。使用二维功能强大的AutoCAD软件绘制轴承类的零件的外轮廓显然是一件非常容易的事情。

Auto CAD作为一个完整的绘图编辑器,可以独立使用,并可完成用户的很多设计工作,但要完成零部件从设计到制造的全过程的工作,仍然力不从心,如零件设计完后要做有限元分析,要制定工艺规程,要生成NC代码,这些工作AutoCAD都不能胜任,这些必须借助其他应用软件,而所用的软件都在不同程度上要求得到Auto CAD的图形信息支持,因此需要Auto CAD提供一个便于外界接受的文件格式输出图形信息。另外,用户在设计过程中还会根据工作的需要开发一些自己的应用程序,以便做计算、分析或其它之用,处理后的数据希望传给AutoCAD,用于自动生成图形,这时用户传递这些数据最好的办法就是写成Auto CAD可直接接受的数据文件,为了解决AutoCAD和其他程序间图形数据的交换问题,定义了图形交换文件规范。

一个完整的自动编程系统,必须包括前处理程序(Maln Processorl和后置处理程序(Post Processor)两部分。

一、前处理程序设计

前处理程序用以对源程序进行翻译并计算刀具中心轨迹,或通过处理图形数据文件而得到刀具中心轨迹,这一部分完全独立于具体的数控机床,前处理程序的输出一般为刀位数据(Cut Loca―tion Datal,但这种刀位数据不能直接用作数控装置的控制指令,因此必须要有一个后置处理模块,后置处理程序是自动编程系统中的一个重要组成部分,它是按数控机床的功能及数控加工程序格式的要求而编写的一个计算程序。它将主处理程序产生的位置数据和功能信息转换成能被某种数控机床控制单元所需要的数控加工程序代码,以便用于控制机床并产生各种加工功能和加工运动。由于各种数控机床的输人格式各不相同,因而为了适应各种机床的不同要求,后置处理程序也是各不一样的。

二、后处理程序设计

后置处理的目的是形成数控指令文件。由于各种机床使用的控制系统不同,所以所用的数控指令文件的代码及格式也有所不同。为解决这个问题,每个自动编程软件通常有自己专用的后置处理程序。

本系统采用的数控机床的指令有以下几种:

1.坐标功能指令:x,z,I,K。

2.准备功能指令:G00一快速进给;G01一直线插补;G02一顺时针方向圆弧插补:G03一逆时针方向圆弧擂补;G33一等螺距螺纹加32;G54一坐标设定指令。

3.速度功能指令:主轴转速S;进给速度F。

4.换刀功能指令:刀号选择T01-T04。

5.刀具补偿指令:G41-在工件轮廓左边刀补有效;G42-在工件轮廓右边刀补。

6.辅助功能指令:M02一程序结束;M03一主轴正转;M04一主轴反转:M05一主轴停止。

在生成数控程序时,首先打开前面生成的刀具中心轨迹文件,从最外层向内逐层生成加工程序,在把刀具中心轨迹文件的数据转化为数控程序时,逐行读人数据,根据线形确定所采用的刀具以及相应的G指令,并把坐标值X,Z,I,K赋给对应的变量。再根据所输入的主轴转速和进给量,使所有的数据转换成字符串,然后与字母G,T,S,F,X,Z,I,K组合成数控指令。最后加上程序号和必要的M指令组成程序段,在每一层切削完成后或换刀时,添加一个必要的程序段使刀具回到换刀位置,在程序结束时加上辅助指令M0 2以表示程序结束,最后将程序以文件的形式存盘。

数控编程开发范文 篇八

关键词: DM365; 视频监控系统; H.264; 流媒体

中图分类号:TP393.07 文献标志码:A 文章编号:1006-8228(2013)10-35-03

0 引言

随着电子、计算机、通信和自动化技术的发展,嵌入式视频监控系统已成为现代安防系统发展趋势,并且已经引起了人们的重视。嵌入式视频监控系统主要由嵌入式处理器、嵌入式操作系统及相关软硬件等组成。TI公司的达芬奇技术是一种专门针对数字视频应用、基于信号处理的解决方案,能为视频设备制造商提供集成处理器、软件、工具和支持,以简化设计进程,加速产品创新[1]。本系统采用TM320DM365(简称DM365)视频处理芯片开发嵌入式网络视频监控系统,它具有功耗低、性能高、开发周期短、可扩展等优点。

1 网络视频监视系统结构

DM365处理器集成了一个ARM926EJ-S内核,一个H.264高清编解码协处理器HDVICP和一个MPEG-4/JPEG高清编解码协处理器MJCP,可以支持H.264/MPEG-4高清视频编解码。本系统利用DM365的强大运算能力,在ARM926EJ-S内核上运行基于Linux操作系统的应用程序实现视频采集、视频显示、网络通信、流媒体传输、器件控制等;在HDVICP协处理器上运行H.264算法来实现视频编码。

本系统所设计的网络视频监控系统总体结构如图1所示,它由摄像头、视频服务器、网络和客户监控端等模块组成。摄像头实现对现场实时视频的采集,由视频服务器读取采集到的视频信号经H.264编码器编码后进行存储和网络实时传输;客户监控端主要完成视频信号的接收、存储、播放和下载等功能。另外,客户监控端可以把用户的操作转换成相应的控制信号发送到视频服务器,由视频服务器对器件进行控制。

2 视频监控服务器模块的设计

视频监控服务器的主要任务是监听网络连接,采集视频数据,视频数据压缩编码,存储视频数据并分发给客户监视端[2]。在视频数据采集方面,使用V4L2常用模型;在编码方面,结合DM365芯片的特点采用H.264压缩编码标准;另外,使用RTP/RTCP协议在视频监控服务器与客户监控端之间进行视频数据传输[3]。

2.1 视频监视服务器模块工作流程

视频监控服务器包括三个子模块,一是视频数据处理子模块,负责视频数据采集与编码;二是视频监控控制子模块,负责开启、关闭视频监控等控制操作;三是数据传输子模块,负责视频数据的实时传输以及备份视频数据等工作。视频监控服务器模块的工作流程如下。

① 主控程序对系统初始化,主要包括ARM处理器与HDVICP协处理器的共享内存的配置,视频采集设备的初始化等。

② 主控程序建立视频采集线程Capture、视频压缩线程Video、视频数据存储与实时传输线程Trans、视频文件备份线程BackData和监听线程Listen。当主控程序完成初始化工作和线程创建工作后转化为系统控制线程Ctrl。

③ Capture线程负责采集视频信号;Video线程负责将视频采集线程采集到的视频信号用H.264编码器压缩编码;Trans线程负责将压缩后的视频数据存储在视频服务器端的硬盘上,并实时地将视频流传输给视频监控端;Listen线程主要负责监听客户监控端的控制命令,并对命令进行词法解析,执行相应的命令;BackData线程负责视频文件的传输,以备客户端备份视频文件。

④ 如果退出系统,则所有线程结束;否则循环执行③。

2.2 视频数据处理子模块流程

在视频监控服务器中涉及到的数据分为两类:一类是摄像头采集到的原始视频数据,一类是压缩后的视频数据。这两类数据均存放在缓冲区中,这些缓冲区被多个线程共享。共享的方法是采用管道通信,一方将缓冲区的地址送入管道,另一方从管道读取缓冲区地址对该缓冲区共享。

2.2.1 缓冲区共享

由于运行在Linux上的应用程序调用malloc获得的缓冲区所用地址均为虚拟地址,因此,缓冲区的物理空间不一定连续,当把缓冲区的地址传递给协处理器进行编码的时候,数据完整性问题就出现了,因为编码算法是运行在HDVICP协处理器上的,这是一个只有实地址的世界。所以,TI公司开发的编码引擎(Codec Engine,简称CE)的软件架构时提供了CMEM模块,该模块为ARM926EJ-S内核和协处理器之间通信提供了连续的内存。程序员可调用CMEM API申请物理上连续的共享缓冲区。

本系统设置了四个管道,其中CVInFifo和CVOutFifo这两个管道由Capture线程和Video线程共享;VTInFifo和VTOutFifo这两个管道由Video线程和Trans线程共享。三个线程共享四个管道的示意图如图2所示。在系统初始化时,Video线程和Trans线程通过调用CMEM API分别申请若干个物理地址连续的缓冲区,Video线程将其申请的缓冲区地址送入CVInFifo管道,Trans线程将其申请的缓冲区送到VTOutFifo管道。Capture、Video、Trans和Ctrl四个线程汇集在一起后,循环执行以下步骤以实现视频数据的采集、编码和传输。

[Video线程初始化时,申请若干个连续的缓冲区,并将各缓冲区地址送入管道。][⑤Video线程将废弃的缓冲区hCapBuf送入管道,供Capture线程使用。][②Capture线程将缓冲区hCapBuf的地址送入管道。][⑥Video线程将已编码视频数据缓冲区hDstBuf的地址送入管道。][⑧Trans线程将废弃的缓冲区hDstBuf送入管道供Video线程使用。][Trans线程初始化时,申请若干个连续的缓冲区,并将各缓冲区地址送入管道。][①Capture线程从管道获取一个空缓冲区hCapBuf,并采集一帧原始视频保存在该缓冲区中。][③Video线程获得装有原始视频帧的缓冲区hCapBuf。][⑦Trans线程从管道获取一个已编码的缓冲区hDstBuf,将其内容写入文件,并按RTP/RTCP协议传输给客户端。][④Video线程从管道获取一个空缓冲区hDstBuf,并对hCapBuf缓冲区中的视频数据进行编码,其结果存放在缓冲区hDstBuf中。] [CVInfifo] [CVOufifo] [VTInFifo] [VTOutfifo]

① Capture线程从CVInFifo管道获取一个空缓冲区hCapBuf,采集一帧视频并保存在该缓冲区中;

② Capture线程将缓冲区hCapBuf地址送入CVOutFifo管道;

③ Video线程从CVOutFifo管道中获得装有原始视频帧的缓冲区hCapBuf;

④ Video线程从VTOutFifo管道中获取一个空缓冲区hDstBuf,并对hCapBuf缓冲区中的视频数据用H.264编码器进行编码,其结果存放在缓冲区hDstBuf中;

⑤ Video线程将废弃的缓冲区hCapBuf送CVInFifo管道,供Capture线程循环利用;

⑥ Video线程将已编码的视频数据缓冲区hDstBuf的地址送入VTInFifo管道;

⑦ Trans线程从管道获取一个已编码的缓冲区hDstBuf,将其内容写入文件,并按RTP/RTCP协议传输给客户端;

⑧ Trans线程将废弃的缓冲区hDstBuf送入管道供Video线程使用。

2.2.2 H.264编码器

系统选择先进的H.264编码方案。H.264编码器继承了H.263和MPEGl/2/4视频编码器的优点,在吸收变换编码和运动补偿的基础上,采用全新的帧内预测、多帧参考预测、高精度运动估计、类DCT整数变换、基于上下文的自适应熵编码、去块效应滤波等编码技术,有效提高了数据压缩效率[4]。H.264引入了面向包的编码机制,有利于网络中的分组传输,支持网络中视频的流媒体传输,能适应于不同网络中的视频传输,网络亲和性好。

在H.264标准中定义了两个层次:视频编码层(VCL)和网络抽象层(NAL)。VCL主要负责高效的数字视频数据压缩。VCL处理的是块、宏块和片的数据,并尽可能地设计成不依赖于任何网络的特性。NAL处理的主要是片以上的数据,提供适当的接口对数据进行打包和传送。在VCL和NAL之间定义了一个基于分组方式的接口。这样,高编码效率和网络友好性的任务分别由VCL和NAL来完成。H.264的这种双结构扩大了应用范围,几乎涵盖了视频监控、视频点播、流媒体业务等大部分的视频业务。

本系统采用TI达芬奇技术来实现H.264编码器,此视频压缩算法运行在HDVICP协处理器端,ARM端通过引擎Codec Engine和服务器Code Server与HDVICP协处理器进行交互[5]。编码后的H.264视频序列是由一系列NAL单元构成。一个NAL单元就是一个变长的包括某一类型的语义元素的字节流。比如,NAL单元可以装载一个图像码片、一个A/B/C的数据分割、一个序列或者图像的参数设置等。

2.3 网络传输模块的设计

网络传输模块的主要功能是负责为客户端的请求建立链接,并将经H.264编码器编码的视频流传输给客户端。这项工作由Listen和Trans两个线程完成。

网络服务器与客户监控端采用UDP数据包进行通信。Listen线程循环监听用户请求,当有用户请求实时监控视频时,Listen线程将该用户的IP地址及UDP端口号保存在与Trans线程共享的变量ClientUdp[]中,Trans线程根据变量ClientUdp[]创建UDP套接字,并按RTP/RTCP协议传输实时视频编码。当用户关闭视频监时,Listen同样将用户的关闭视频请求传递给Trans,Trans将关闭相应的UDP套接字,停止视频的实时传输。另外,Listen线程还具有接收来自客户端的控制命令,比如实现视频文件的下载,以及关闭和开启实时视频监控等功能。

2.3.1 NAL单元的提取与RTP数据包的传输

由于在达芬奇DM365开发平台上的H.264编码器的输出码流中,每个NAL单元前面有4个字节的前缀来标识NAL单元边,即起始码前缀(0x00000001)。因此,Trans线程可以根据起始码从已编码缓冲区中提取出各个NAL单元以备发送,即从Video线程和Trans线程共享的缓冲区中获得H.264编码的图像帧的数据,并在每帧的数据里搜寻出每个NAL单元。在默认情况下,达芬奇DM365开发平台采用的H.264编码器每次提供一个完整的H.264视频帧,除第一帧由三个NAL单元组成外,其他帧仅包含一个NAL单元。第一帧的三个NAL单元的类型分别为序列参数集(SPS)、图像参数集(PPS)和IDR图像片段。其他帧的NAL单元类型均为I图像片段。

实时传输协议RTP负责提供实时数据(如交互式的音频和视频)的端到端传输服务,它可以建立在底层的面向连接或非面向连接的传输协议之上。通常情况下RTP数据包使用UDP来传送,但它不能为按顺序传送数据包提供可靠的传送机制,也不提供流量控制或拥塞控制,而是依靠实时传输控制协议RTCP提供这些服务。本系统按RTP数据包格式将每一帧视频打包后,使用UDP套接字将该数据包发送给客户监控端。

2.3.2 实时监控的实现

4 结束语

本系统基于DM365嵌入式平台,设计了嵌入式网络视频监控系统。视频服务器端主要实现视频的采集、编码与网络传输,通过四个共享管道实现视频数据流的共享,整个视频服务器由五个线程相互配合完成。客户监控端采用Davinci-VLC客户端程序实现视频的监控及视频文件的备份。下一步的工作重点是研究基于WiFi+3G视频监控,以及保证视频数据在网络上的安全传输。

参考文献:

[1] TI. DaVinci? Technology Overview.http:///lit/ml/sprb189b/sprb189b.pdf,2008.

[2] 韩慧英,潘娅。基于Davinci的嵌入式Web视频监控系统[J]. 兵工自动化,2010.29(4):75-77

[3] 张多英,申晨,刘伟平,黄红斌。嵌入式视频监控传输系统的设计与实现[J].计算机工程与设计,2010.31(4):724-728

数控编程开发范文 篇九

[关键词] 可编程控制器 原理特性 主要应用

一、可编程控制的实现控制的原理特性

1.可编程控制器实现控制的要点

入出信息变换、可靠物理实现,可以说是可编程控制器实现控制的两个基本要点。可编程控制器程序既有生产厂家的系统程序(不可更改),又有用户自行开发的应用(用户)程序。系统程序提供运行平台,同时,还为可编程控制器程序可靠运行及信号与信息转换进行必要的公共处理。用户程序由用户按控制要求设计。什么样的控制要求,就应有什么样的用户程序。可靠物理实现主要靠输人(INPUT)及输出(OUTPUT)电路。可编程控制器的I/O电路,都是专门设计的。输入电路要对输入信号进行滤波,以去掉高频干扰。而且与内部计算机电路在电上是隔离的,靠光耦元件建立联系。输出电路内外也是电隔离的,靠光耦元件或输出继电器建立联系。输出电路还要进行功率放大,以足以带动一般的工业控制元器件,如电磁阀、接触器等等。由于可编程控制器有强大的指令系统,编写出满足这个要求的程序是完全可能的,而且也是较为容易的。

2.实现控制过程

简单地说,可编程控制器实现控制的过程一般是:

输入刷新――再运行用户程序――再输出刷新――再输入刷新――再运行用户程序――再输出刷新……永不停止地循环反复地进行着。

为此,可编程控制器的工作速度要快。速度快、执行指令时间短,是可编程控制器实现控制的基础。事实上,它的速度是很快的,执行一条指令,多的几微秒、几十微秒,少的才零点几,或零点零几微秒。而且这个速度还在不断提高中。

3.可编程控制器实现控制的方式

用这种不断地重复运行程序实现控制称扫描方式。是用计算机进行实时控制的一种方式。此外,计算机用于控制还有中断方式。在中断方式下,需处理的控制先申请中断,被响应后正运行的程序停止运行,转而去处理中断工作(运行有关中断服务程序)。待处理完中断,又返回运行原来程序。哪个控制需要处理,哪个就去申请中断。哪个不需处理,将不被理睬。显然,中断方式与扫描方式是不同的。

二、可编程控制的应用

1.用于开关量控制

可编程控制器控制开关量的能力是很强的。所控制的入出点数,少的十几点、几十点,多的可到几百、几千,甚至几万点。由于它能联网,点数几乎不受限制,不管多少点都能控制。所控制的逻辑问题可以是多种多样的:组合的、时序的;即时的、延时的;不需计数的,需要计数的;固定顺序的,随机工作的;等等,都可进行。可编程控制器的硬件结构是可变的,软件程序是可编的,用于控制时,非常灵活。必要时,可编写多套,或多组程序,依需要调用。它很适应于工业现场多工况、多状态变换的需要。用可编程控制器进行开关量控制实例是很多的,冶金、机械、轻工、化工、纺织等等,几乎所有工业行业都需要用到它。目前,可编程控制器首用的目标,也是别的控制器无法与其比拟的,就是它能方便并可靠地用于开关量的控制。

2.用于模拟量控制

模拟量,如电流、电压、温度、压力等等,它的大小是连续变化的。工业生产,特别是连续型生产过程,常要对这些物理量进行控制。作为一种工业控制电子装置,可编程控制器若不能对这些量进行控制,那是一大不足。为此,各可编程控制器厂家都在这方面进行大量的开发。目前,不仅大型、中型机可以进行模拟量控制,就是小型机,也能进行这样的控制。

可编程控制器进行模拟量控制,要配置有模拟量与数字量相互转换的A/D、D/A单元。它也是I/O单元,不过是特殊的I/O单元。用可编程控制器进行模拟量控制的好处是,在进行模拟量控制的同时,开关量也可控制。这个优点是别的控制器所不具备的,或控制的实现不如可编程控制器方便。

3.用于运动控制

实际的物理量,除了开关量、模拟量,还有运动控制。如机床部件的位移,常以数字量表示。运动控制,有效的办法是NC,即数字控制技术。这是50年代诞生于美国的基于计算机的控制技术。当今已很普及,并也很完善。目前,先进国家的金属切削机床,数控化的比率已超过40%~80%,有的甚至更高。可编程控制器也是基于计算机的技术,并日益完善。故它也完全可以用于数字量控制。

4.用于数据采集

随着可编程控制器技术的发展,其数据存储区越来越大。如德维森公司的可编程控制器,其数据存储区(DM区)可达到9999个字。这样庞大的数据存储区,可以存储大量数据。

数据采集可以用计数器,累计记录采集到的脉冲数,并定时地转存到DM区中去。数据采集也可用A/D单元,当模拟量转换成数字量后,再定时地转存到DM区中去。可编程控制器还可配置上小型打印机,定期把DM区的数据打出来。可编程控制器也可与计算机通讯,由计算机把DM区的数据读出,并由计算机再对这些数据作处理。这时,可编程控制器即成为计算机的数据终端。电力用户曾使用可编程控制器,用以实时记录用户用电情况,以实现不同用电时间、不同计价的收费办法,鼓励用户在用电低谷时多用电,达到合理用电与节约用电的目的。

5.用于信号监控

可编程控制器自检信号很多,内部器件也很多,多数使用者未充分发挥其作用。其实,完全可利用它进行可编程控制器自身工作的监控,或对控制对象进行监控。对一个复杂的控制系统,特别是自动控制系统,监控以至进一步能自诊断是非常必要的。它可减少系统的故障,出了故障也好查找,可提高累计平均无故障运行时间,降低故障修复时间,提高系统的可靠性。

6.用于联网、通讯

可编程控制器联网、通讯能力很强,不断有新的联网的结构推出。可编程控制器可与个人计算机相连接进行通讯,可用计算机参与编程及对可编程控制器进行控制的管理,使可编程控制器用起来更方便。为了充分发挥计算机的作用,可实行一台计算机控制与管理多台可编程控制器,多的可达32台。也可一台可编程控制器与两台或更多的计算机通讯,交换信息,以实现多地对可编程控制器控制系统的监控。可编程控制器与可编程控制器也可通讯。可一对一可编程控制器通讯。可几个可编程控制器通讯。可多到几十、几百。

总之,可编程控制器已广泛应用于工业生产的各个领域。从行业看,冶金、机械、化工、轻工、食品、建材等等,几乎没有不用到它的。不仅工业生产用它,一些非工业过程,如楼宇自动化、电梯控制也用到它。农业的大棚环境参数调控,水利灌溉也用到它。

参 考 文 献

数控机床编程入门教学 篇十

关键词:数控编程;仿真软件;教学研究

中图分类号:G642.4 文献标志码:A 文章编号:1674-9324(2013)31-0084-02

数控技术与编程是机械工程专业的一门主干专业课程,是一门综合性、实践性很强的课程,它牵涉到机械制造技术、测量与公差、数控工艺与设备、数控原理、数控编程等专业理论知识,其实践性强,实训设备投资经费大[1]。如何为数控技术与编程课程教学提供切实可行的教学方法和手段,提高学生的理论水平和实践能力,一直是各高校本科课程教学改革研究的主要课题[2]。大连交通大学机械工程学院在数控技术与编程课程的改革中,将先进的教学理念引入课程教学过程,以德国KELLER数控仿真软件为基础,对传统的教学方法、教学内容进行改革与优化,取得了良好的教学效果。

一、传统数控教学中存在的问题

1.理论与实践脱节。在传统教学中,课程的理论教学一般采用的是单一的、以教师为中心的学生被动接受的“灌输式”教育模式[3]。由于数控技术与编程课程实践性强,单纯的理论教学对于缺少实际加工经验的学生而言,内容会显得枯燥,使学生学起来感到抽象、难学,很容易让学生产生厌学情绪,教学效果不理想。

2.数控机床设备不足。数控技术与编程课程,实践性很强,学生要想利用正常课堂授课的短时间内学好这门课,必须将理论与实践相结合,由于数控机床品种繁多且价格大多较高,数量必然有限,教学设备大多会不足,因而造成学生操作实训少、学习效果差。为了解决上述问题,必须寻求一种资金投入少,但是效果明显的数控编程课程新教学培养模式。数控加工仿真系统软件在教学中的合理运用是解决这一问题的有效途径。

二、基于德国KELLER数控仿真软件的教学研究

1.德国KELLER数控仿真软件简介。KELLER SymPlus CNC仿真模拟软件是德国凯勒软件有限公司开发的系列产品[4]。它利用二维、三维模拟仿真的方法和大量的图、加工参数、名词解释和练习题,对CNC数控设备工作过程与原理、PALplus练习模块、CAD/CAM功能模块、车铣钻削加工编程、系统控制理论等,进行教学演示和仿真训练。通过这套仿真模拟软件的使用,可以达到各种CNC设备操作实训目的,大大减少昂贵的设备投入。凯勒CNC软件最主要的特点是易于操作、由浅入深、综合性强。整个软件由若干个系统组成,即:动态虚拟车间与机床设备、PALpuls多媒体模拟与仿真、FANUC与西门子控制系统仿真教学模块、CAD/CAM仿真模块。它涵盖了从基础培训到初级编程再到专业的制造加工编程的CNC和CAD/CAM技术,具备了现代的教学方法的特点。

2.KELLER仿真软件应用到数控理论教学中。在进行数控机床的工作过程的理论教学时,对于由数控程序到机床的执行动作过程,一般要有对输入指令进行译码、寄存和运算,向系统的各个坐标轴的伺服系统发出指令信号,经过驱动电路的放大处理,驱动伺服电动机输出位移和速度,实现进给运动的这样一个过程。但是,教学中由于学生对机床本身结构等知识了解较少,单纯的理论教学会显得枯燥,使学生学起来感到抽象、难学。利用KELLER数控仿真软件的Dynamic Virtual Workshop模块,如图1所示,给出了数控机床工作工程中,加工信息流动的方向与方式,形象地给出了机床的工作过程,使学生一目了然地学习到了数控理论知识。

图1 数控机床工作过程演示

3.利用KELLER软件进行数控关键知识点的教学。在数控车削加工中,刀尖处常带有圆弧过渡刃。一般数控装置都有刀尖圆弧半径补偿功能,为编制程序提供了方便。有刀具半径补偿功能的数控系统,编程时不需要计算刀具中心的运动轨迹,只按零件轮廓编程[5,6]。

为了解释清楚上述的数控编程的关键知识点,利用KELLER软件,如图2(a)(b)所示,当不考虑刀尖圆弧半径补偿时,会产生少切和过切现象,图中黄色线为要求的编程轨迹,再没有考虑半径补偿时,切削后的结果如灰色区域所示,可以看出产生了较大的误差。然而,在带有补偿功能的数控系统中,使用了G42的补偿指令后,依然按照要求的编程轨迹进行编程,这可以加工出与要求完全一致的实际轮廓,不会产生加工误差,如图2(c)(d)所示。

4.利用KELLER数控仿真软件进行手工编程教学。G71外圆粗车循环指令就是数控车床上经常使用的复合循环指令之一,适用于多次走刀才能完成的内外圆柱面、圆锥面的加工[7,8]。虽然G71指令功能强大,能够简化编程,但是在使用过程中,特别是在教学过程中,对于G71的复杂的走刀路线(和指令参数的含义,学生很难理解。此时,利用KELLER软件的PALpuls模块、控制系统模块,可以在实现G71编程以后进行二维及三维模拟(如图3所示),可以清晰直观地理解G71要指令的格式与使用要求,很好地完成车削加工关键指令的教学工作。

5.利用KELLER数控仿真软件进行CAD/CAM教学。由于交互式图形编程具有速度快、精度高、直观性好、使用简便、便于检查和修改等优点,已成为目前国内外先进的CAD/CAM软件所普遍采用的数控编程方法。交互式图形编程的实现是以CAD技术为前提的。目前,绝大多数的数控编程软件同时具备CAD的功能,因而CAD/CAM编程也是数控编程教学中一个不可或缺的部分。

利用KELLER软件的CAD/CAM模块中的几何\工作计划\模拟器子模块功能,首先利用几何模块中的相关工具建立被加工件的几何图形,建立被加工件的工作计划,如图5(a),工作计划建立以后,可以利用仿真功能模拟演示其加工过程,如图4(b)所示,最后确认加工无误以后就可以生成满足要求的数控代码如图4(c)。通过以上的工作学生可以直观地学习CAD/CAM数控编程技术,较好地掌握交互图形编程方法。

三、教学效果

1.提高了数控编程课程的教学质量。数控仿真教学软件的使用,摒弃了原有的空洞的理论教学,而是将多媒体和仿真软件灵活运用到教学过程中,使教学过程具有互动性。数控仿真模拟了真实机床加工条件与加工过程,在对学生进行演示加工的过程中,把书本中抽象、笼统的理论转化为形象、具体的印象。学生在自己动手进行仿真编程的过程中自然而然地学习到了书本上的相关知识,也加深了对知识要点的理解,主动性与积极性大大提高,取得更好的教学效果。

2.有效降低了教学成本,提高了效率和安全性。利用虚拟机床代替实际机床,弥补了设备和师资的不足,仿真软件的教学方法,纠正了原有的“吃大锅饭”的课堂“填压式”的教学方法的弊端,让学生通过操作训练,达到一对一、手把手的教学效果,既保证了学生用最快的时间学会所要掌握的知识,提高了学习效率,同时又能有效地避免初学者直接上机床进行操作可能出现的各种错误现象,实现了学生对基本数控编程知识的迅速掌握。

由于数控技术的发展,出现了各种创新的数控机床、种类繁多的数控加工刀具、加工工艺与加工方法,而与之相适应的数控技术与编程课程的教学,往往受到了有限的资金投入和设备投入的限制。所以以现有的有限教学资源为基础,在不增加硬件设备的前提下,充分利用Keller仿真软件的进行辅助教学,必将对数控加工与数控编程等课程的教学起到更大的推动作用。

参考文献:

[1]王海根,马剑。仿真软件在数控技术课程教学中的应用[J].实验室研究与探讨,2007,(11).

[2]孙业荣。应用型本科人才培养模式下的数控技术课程教改与探索[J].装备制造技术,2011,(1).

[3]丛娟,丛树林。基于数控仿真软件的数控加工工艺与编程课程改革[J].辽宁高职学报,2011,(3).

[4]李文杰,杨承涛。德国Keller数控仿真软件在职业教育中的应用研究[J].价值工程,2011,(5).

[5]丁静,杨春燕。刀尖圆弧半径补偿在数控车削中的应用[J].组合机床与自动化加工技术,2009,(12).

[6]徐卫东。刀尖圆弧半径补偿在数控车削加工中的正确应用[J].现代制造,2008,(7):92-94.

[7]陈艳巧,肖国涛,戴曰梅。复合循环G71指令在数控车削中的应用[J].硅谷,2012,(1).