首页 / 专利库 / 计算机网络 / 高级消息队列协议 / 基于WIFI通信的数控机床运动控制卡

基于WIFI通信的数控机床运动控制卡

阅读:156发布:2020-05-23

专利汇可以提供基于WIFI通信的数控机床运动控制卡专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于WIFI通信的数控机床运动控制卡,本设计运动控制卡采用ARM芯片为主 控制器 ,FPGA芯片为 协处理器 的 硬件 总体结构;ARM芯片的外围 电路 包括复位电路、 实时时钟 电路、SDRAM内存、FLASH存储模 块 、以及各类通信 接口 ,要完成与上位机的通信任务,并将上位机传送下来的运动代码与指令进行计算,最终处理形成插补数据以及IO逻辑数据传送给FPGA执行;本发明提供的基于WIFI通信的数控机床运动控制卡,所提出的新型数控系统模式与传统数控系统模式的优势比较,并从控制实时性以及安全可靠性 角 度分析了采用WIFI无线通信方式的可行性,无线通信数据 帧 格式设计与详细语义定义,其中为提高通信的实时性,提出数据校验以可靠的硬件CRC校验为主。,下面是基于WIFI通信的数控机床运动控制卡专利的具体信息内容。

1.一种基于WIFI通信的数控机床运动控制卡,其特征在于:
硬件电路设计:
本设计运动控制卡采用ARM芯片为主控制器,FPGA芯片为协处理器的硬件总体结构;
ARM芯片的外围电路包括复位电路、实时时钟电路、SDRAM内存、FLASH存储模、以及各类通信接口,要完成与上位机的通信任务,并将上位机传送下来的运动代码与指令进行计算,最终处理形成插补数据以及IO逻辑数据传送给FPGA执行;
FPGA芯片外围电路包括IO扩展、脉冲发生,PWM的输入输出接口,以及负载驱动电路,负责执行ARM传送过来的脉冲指令以及各类I/O逻辑指令,并驱动外围负载电路执行;
ARM与FPGA之间通过32位并行总线进行通信并且提供了4根可编程I/O线可实现FPGA对ARM产生实时中断;
电源模块电路设计:
运动控制卡电源电路的设计是至关重要的,一方面要给硬件电路中的各个模块提供能量;另一方面电源电路一旦设计不好,整个电路很容易受到干扰,数控机床所处工厂环境常见的干扰源有工厂供电电压不稳、电源地不稳定、负载电路的反向电动势干扰、电磁干扰、高频干扰等等,数控等离子切割机的等离子电源是一个高频高压的强干扰源,一般的电路很难承受,经常容易造成电路烧毁;
运动控制卡由2个24V开关电源进行供电,一个50W的24V开关电源作为控制电源,另一个大功率的24V开关电源作为负载电源;控制电源主要负责为CPU等核心芯片模块、通信模块、以及脉冲、IO的光耦隔离内电源等供电,为保证它的稳定性,本设计在电路板的控制电源24V输入口部分又设计了一个DC-DC隔离电源模块,它完成3项功能;
1)将24V控制电源转换成3路隔离电源分别为5V和±15V,供不同模块使用;
2)将内部控制电与开关电源进行物理隔离,尽可能避免电网传导的干扰源;
3)实现过载和短路保护;
DC-DC隔离电源模块电路主芯片采用Unitrode公司的UC3842B,是一种高性能固定频率电流型控制器,包含误差放大器、PWM比较器、PWM存器、振荡器、内部基准电源和欠压锁定等单元;
由于ARM和FPGA芯片为3.3V供电,因此,控制主电源5V再经过LM1117-3.3V和LM1117-
1.5V线性稳压电源转换成3.3V和1.5V供ARM和FPGA核心供电;
设计采用PROTEL DXP软件进行电路仿真,进行性能分析,产生的输出波形能判断出电路参数设置合理,电容C值改变,在进行瞬态分析,输出波形将显示一个不均匀的占空比波形。
2.如权利要求1所述的基于WIFI通信的数控机床运动控制卡,其特征在于:
运动控制卡软件设计:
基于硬件设计,运动控制卡的嵌入式软件分为ARM软件结构与FPGA软件结构2部分;
ARM嵌入式软件设计分析:
ARM嵌入式软件采用C语言编写,主要框架包括Target、FIFO(先入先出缓冲区)、uC-OSII操作系统、接口底层驱动程序以及运动控制主程序的多线程任务;
Target目标板规划包括配置ARM软件的启动代码、SYSCLK系统总线时钟配置、中断向量表规划、心跳时钟配置、GPIOPin管脚规划以及STM32F407 CPU的Library库函数。其中启动代码指向软件从哪个指针入口开始执行,如果判断软件需求升级标志,则启动软件下载更新任务;中断向量表配置了软件设计需求的各类中断,并定义了中断优先级顺序;GPIOPin管脚根据目标板的工艺需求规划各个CPU管脚用于什么类别的功能需求;
FIFO先入先出缓冲区包括预读缓冲区、运动缓冲区以及同步表缓冲区。其中预读缓冲区设定为500行,用于海量运动代码的计算预处理,在空闲时将数据准备好给计算任务插补计算备用;运动缓冲区设定为10行,在插补计算任务中准备,当FPGA一小段插补数据执行完中断请求时,运动缓冲区立即在中断响应中给出下一段运动代码给FPGA继续执行;FIFO缓冲区可以实现数据计算准备在CPU空闲时准备好,避免中断响应过程中再需求大量数据计算造成CPU计算过载,提升CPU使用效率;
接口底层驱动包括串口驱动、USB驱动、I2C驱动、SPI驱动、以太网驱动、FPGA驱动,其中I2C驱动接口ATSHA204加密芯片;SPI驱动接口FLASH存储芯片以及WIFI通信模块、FPGA驱动采用32位复用高速并行总线,底层驱动软件设计包括设备初始化函数、设备打开函数、设备关闭函数、数据传输函数,其中设备初始化包括GPIOPin管脚的配置、系统总线时钟配置、设备中断配置。
3.如权利要求2所述的基于WIFI通信的数控机床运动控制卡,其特征在于:
STM32F407 ARM芯片设计:
STM32F407系列基于ARM CortexM4内核,32位MCU+FPU,210DMIPS主频,1MB FLASH,192K RAM+4KB断电保存RAM,该处理器的优良特性在于系统功耗低,频率高,大容量,内部集成DSP协处理单元,浮点计算能非常强,并具有及其丰富的外设资源,如I2C、SPI、CAN、USB OTG HS/FS,Ethernet,17TIMs,3ADCs,15USART.interfaces&camera;电源电压范围2V~3.6V;工作温度范围为﹣40℃~+85℃,该处理器作为主CPU选型,完全满足运动控制卡插补计算以及通信的功能需求;
STM32F407芯片的最小核心系统,芯片采用LQFP-144引脚这种扁平贴片封装形式,主晶振采用25M/3PPM高精度有源晶振,实时时钟采用32.768K/3PPM高精度无源晶振,并配有电池供电,复位电路采用SP706SE工业级看狗电路;
串行FLASH设计:
为满足系统参数以及海量NC运动代码的存储需求,在ARM外围电路还设计了256M的串行FLASH,采用SPI通信接口
加密芯片选择:
现代嵌入式软件系统越来越复杂,开发成本很高,且都是基于控制芯片外加FLASH存储芯片的设计方案,上电即从存储芯片读取程序运行,放在FLASH中的程序容易被拷贝,PCB电路板也容易被复制;采用Atmel公司的加密芯片ATSHA204,采用SHA-256公钥算法,具有体积小、功耗低、安全性高等一系列特点,与ARM采用I2C通信方式:
A3P250 FPGA选用:
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点;
FPGA采用了逻辑单元阵列LCA这样一个概念,内部包括可配置逻辑模块CLB、输入输出模块IOB和内部连线三个部分,现场可编程门阵列是可编程器件,与传统逻辑电路和门阵列相比,FPGA具有不同的结构,FPGA利用小型查找表,来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块;FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程;
采用了ACTEL公司的A3P250,最小核心系统,它与ARM之间采用32位数据总线通信,主要完成可编程脉冲,PWM输出以及IO的控制。
4.如权利要求3所述的基于WIFI通信的数控机床运动控制卡,其特征在于:
USART通信接口设计:
通用异步收发传输器,通常称作UART,是一种异步收发传输器,是最常见的集成于微处理器中的周边设备,一般和RS-232C规格的,类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口,在UART上追加同步方式的序列信号变换电路的产品,本设计使用的STM32F407 ARM带有15个USART资源,由于本设计未采用串口通信,因此只设计一路串口接口,作为批量程序烧录接口备用;
USB通信接口设计:
STM32F407系列ARM带有USB OTG HS/FS,既可以达到USB2.0标准的480Mbit/s高速模式,也使用USB1.1标准的12Mbit/s的全速模式,在没有主机的情况下,它还可以实现点到点的通信并可以实现主从互换(USB OTG),它支持双向8个端点,8个IN端点和8个OUT端点,每个端点都有一个缓冲区描述块,描述该端点使用的缓冲区地址、大小和需要传输的字节数,硬件实现CRC自动生成/校验,NRZI编码/解码和bit-stuffing(位插入,位填充),支持控制传输、中断传输、大容量传输和同步传输四种传输方式,支持USB的挂起和/唤醒;
本设计未采用USB通信方式,但是设计USB口可实现烧写以及升级程序备用口以及可作为传送文件与调试参数文件的接口使用,FS_USB_P和FS_USB_N是2根差分传输信号,由于是高速传输线,PCB布线时注意这两根线一定要等距等长布线,否则会造成信号延时产生USB通信不稳定问题;
USB接口采用USB MINI-AB小口接口形式,在2根数据线上加上了一个EDS保护芯片,防止热插拔时的高压静电对接口产生损坏;
以太网通信接口设计:
STM32F407芯片自带以太网模块,该模块包括带专用DMA控制器的MAC 802.3(介质访问控制)控制器,支持介质独立接口(MII)和简化介质独立接口(RMII),并自带了一个用于外部PHY通信的SMI接口,通过一组配置寄存器,可以为MAC控制器和DMA控制器选择所需模式和功能;
STM32F407芯片自带以太网模块特点包括:
支持外部PHY接口,实现10M/100Mbit/s的数据传输速率;
通过符合IEEE802.3的MII/RMII接口与外部以太网PHY进行通信;
支持全双工和半双工操作;
可编程长度,支持高达16KB巨型帧;
可编程帧间隔(40~96位时间,以8为步长);
支持多种灵活的地址过滤模式;
通过SMI(MDIO)接口配置和管理PHY设备;
支持以太网时间戳(参见IEEE1588-2008),提供64位时间戳;
提供接收和发送两组FIFO;
支持DMA;
STM32F407是必须外接PHY芯片才可以完成以太网通信的,外部PHY芯片通过MII/RMII接口与STM32F4内部MAC连接,并且支持SMI(MDIO&MDC)接口配置外部以太网PHY芯片,本设计选用的是工业级的DP83848IVV作为外部PHY芯片,并选用汉仁的HR911105A自带网络变压器的RJ45接口;
其中RD_N、RD_P与TD_N、TD_P是两对差分信号线,线上通信速率很高,因此PCB布线时应注意差分信号线应等距等长布线,否则会造成通信失败;PROTEL DXP仿真软件模拟电路把输出信号传给STM32F407芯片,芯片能正常工作。
5.如权利要求4所述的基于WIFI通信的数控机床运动控制卡,其特征在于:
WIFI通信接口设计:
本设计运动控制卡采用WIFI通信,WIFI通信接口采用的是一款嵌入式的RF-WF-3200B1模块,模块搭载的是TI公司最新的SimpleLink Wi-Fi CC3200芯片设计,内置高性能ARM Cortex-M4 MCU,并包含多种外设,如并行摄像头接口,I2S,SD/MMC,UART,SPI,I2C,ADC和GPIO,支持802.11b/g/n无线标准,支持Station,AP和Wi-Fi直连模式;
该模块集成了TCP/IP协议栈,通过SPI总线与STM32F407主芯片进行通信;
SimpleLink Wi-Fi CC3200芯片管脚19、20、21输出的三个信号进行动态瞬态分析,然后与主芯片进行通信,模拟结果合理;
普通IO口电路设计:
数控系统用于工业生产现场,条件恶劣复杂,周围强电设备和强电电路所形成的电磁干扰错综复杂,来自信号传输线上的干扰、电源的干扰和空间辐射干扰以及机床工作过程中等离子弧的高频干扰等各种干扰源,使得数控系统很容易被周围干扰源干扰导致运行程序发生错乱引起控制系统产生误动作,所以要特别重视系统的抗干扰设计,运动控制卡的输入输出均采用开关量,光电耦合器由于存在信号单向传输,抗干扰能力强,工作稳定,无触点,使用寿命长,传输效率高的特点,使得运动控制卡的核心电路与外围负载完全实现了光电隔离,较好地消除了外部电磁干扰对运动控制卡内部所产生的影响,并且由于光电耦合器的输入端属于电流型工作的低阻元件,还具有很强的共模抑制能力;
高速输入口电路设计:
普通光耦隔离电路可实现低速普通IO口的隔离,普通光耦的开关频率一般只能达到几十KHz,在某些高频率的输入口比如PWM信号输入需采用高速光耦进行隔离,常用的高速光耦有6N137,它的开关频率能达到1M以上;
脉冲输出电路设计:
运动控制卡通过脉冲输出接口驱动外部的伺服电机或步进电机,从而控制机床按照设定的路线进行运动,一般情况下脉冲输出电路采用差分输出方式,这种方式能有效地抵制共模干扰,适合长线传输,但针对单端共阴共阳输入的步进电机驱动器来说,这种方式的驱动能力较弱,因此本设计脉冲输出的接口原理采用推挽输出的方式;电路前级U31为磁隔离器,它相比光耦隔离器件来说具有开关速度高,隔离波形整形较好的特点,这有利于脉冲输出的波形稳定,电路后级上面为一个NPN三极管,下面为一个PNP三级管,形成对管的推挽输出方式,这种方式的驱动能力强,同时能适应绝大部分的伺服电机与步进电机驱动器接口连接;
电磁驱动电路设计:
运动控制卡I/O口通过光耦将核心电源与负载电源物理隔离,并对驱动负载能力进行了放大,但也只是将几毫安级放大到了几十毫安级,不足以能驱动外部的电磁阀或直流电机等负载元件,这些元件一般都要达到安培级的驱动需求,因此经常在光耦后级再通过继电器再进行隔离放大,一般继电器的触点驱动能力能达到几安培以上。但是继电器由于长期的开关,如果灭弧保护电路处理不当,继电器触点容易化损坏。因此本设计采用了英飞凌的汽车电子芯片BTS737来作为电磁阀的驱动电路;
BTS737驱动芯片外围通过与门控制I/O口的控制使能,通过LM339放大器电路形成迟滞电路,对负载电流限定过流及短路保护;
它相比继电器电路的优点如下:
1)没有触点,可靠性高;
2)对外围负载可以进行限流和短路保护,更有效地保护电路不被烧毁;
3)更加智能,对负载的故障能有感知,负载过载后能反馈信息给CPU控制核心;
4)由于没有线圈控制,对外界电路的干扰较小;
5)体积小巧,电路板占有面积只有继电器的1/4;
直流电机驱动电路设计:
同上结描述,本设计直流电机控制电路也采用了英飞凌的汽车电子芯片TLE5206,它也具有更加智能,更加可靠保护,更加小巧等特点;
根据电容CP6的充放电原理,芯片TLE5206的模拟仿真输出波形,能给光电二极管DS16、DS17提供合适的信号;
硬件电路板设计:
本设计电路板采用Altium Designer软件设计,PCB采用4层电路板设计,上下2层分别为电气走线,中间2层为电源和地,这样的布线方式能更好地提高电路板的抗干扰特性。
6.如权利要求5所述的基于WIFI通信的数控机床运动控制卡,其特征在于:
uC-OSII操作系统选择:
本设计运动控制卡嵌入式软件采用uC-OSII操作系统,uC-OSII由Micrium公司提供,是一个可移植、可固化的、可裁剪的、占先式多任务实时内核,它专门为嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU上,用户只要有标准的ANSI的C交叉编译器,有汇编器、连接器等软件工具,就可以将uC-OSII嵌入到开发的产品中,uC-OSII具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB;
严格地说uC-OSII只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务,但由于uC-OSII良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现[;
uC-OSII目标是实现一个基于优先级调度的抢占式的实时内核,这非常适合本设计运动控制插补计算任务的高实时性要求,uC-OSII在这个内核之上提供最基本的系统服务:
信号量
互斥信号量
事件标识
消息邮箱
消息队列
任务管理
固定大小内存块管理
时间管理
另外,在uC-OSII内核之上,有如下独立模块可供用户选择:
μC/FS文件系统模块
μC/GUI图形软件模块
μC/TCP-IP协议栈模块
μC/USB协议栈模块
uC-OSII可以分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分;
(1)核心部分(OSCore.c)
是操作系统的处理核心,包括操作系统初始化、操作系统运行、中断进出的前导、时钟节拍、任务调度、事件处理等多部分,能够维持系统基本工作的部分都在这里;
(2)任务处理部分(OSTask.c)
任务处理部分中的内容都是与任务的操作密切相关的;包括任务的建立、删除、挂起、恢复等等;因为μC/OS-II是以任务为基本单位调度的,所以这部分内容也相当重要;
(3)时钟部分(OSTime.c)
uC-OSII中的最小时钟单位是timetick(时钟节拍);任务延时等操作是在这里完成的;
(4)任务同步和通信部分
为事件处理部分,包括信号量、邮箱、邮箱队列、事件标志等部分;主要用于任务间的互相联系和对临界资源的访问;
(5)与CPU的接口部分
是指uC-OSII针对所使用的CPU的移植部分;由于uC-OSII是一个通用性的操作系统,所以对于关键问题上的实现,还是需要根据具体CPU的具体内容和要求作相应的移植。这部分内容由于牵涉到SP等系统指针,所以通常用汇编语言编写;主要包括中断级任务切换的底层实现、任务级任务切换的底层实现、时钟节拍的产生和处理、中断的相关处理部分等内容。
7.如权利要求6所述的基于WIFI通信的数控机床运动控制卡,其特征在于:
多线程任务功能分配与优先级设计:
uC-OSII中最多可以支持256个任务,分别对应优先级0~255,其中0为最高优先级,255为最低级;uC-OSII提供了任务管理的各种函数调用,包括创建任务,删除任务,改变任务的优先级,任务挂起和恢复等;
FPGA嵌入式软件设计分析:
FPGA嵌入式软件采用Verilog语言编写,主要框架包括总线驱动、脉冲发生、脉冲计数、I/O逻辑执行、高速输入口捕获等软件功能;
其中总线驱动根据STM32F407的32位高速总线逻辑编写,脉冲发生通过8M的主频时钟分频获得,脉冲计数采用32位计数器,高速输入口捕获用于外部回零开关高速位置获取等功能;
Verilog开发语言:
Verilog HDL是一种硬件描述语言(HDL:Hardware Description Language),以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能;Verilog由Gateway Design Automation公司开发;
使用Verilog描述硬件的基本设计单元是模块(module);构建复杂的电子电路,主要是通过模块的相互连接调用来实现的;模块被包含在关键字module、endmodule之内,形成实际的电路元件;Verilog中的模块类似C语言中的函数,它能够提供输入、输出端口,可以实例调用其他模块,也可以被其他模块实例调用;模块中包括组合逻辑部分、过程时序部分。
8.如权利要求7所述的基于WIFI通信的数控机床运动控制卡,其特征在于:
脉冲发生器原理设计:
运动控制卡通过脉冲接口驱动伺服电机或步进电机按照指定的方向和指定的速度走到指定的位置,从而控制机床实现精确走位。可见运动控制卡发出的脉冲要实现三要素即方向、速度、位置;
本设计运动控制卡采用脉冲+方向控制方式,由方向线的高低电平2种状态控制电机的CW与CCW旋转方向,从而控制机床运行方向;通过对脉冲发生频率的控制来控制机床的运行速度;通过FPGA对脉冲升降沿的高速计数,将脉冲数通过设定的机床脉冲当量来控制机床走行的距离;
其中脉冲频率通过基准主频分频获得,本设计运动控制卡的脉冲主频设定为8M,由FPGA程序控制对主频进行分频,主频脉冲A为8M,经过16分频,就获取了一个500K频率的分频脉冲B;
本设计的脉冲分频采用16位分频,即分频脉冲频率范围为[122Hz(8M/2^16)~8M(8M/
1)],但整数分频技术会造成分频脉冲的频率精度不够,比如16分频能获得500K的频率脉冲,17分频则能获得470.6K的频率脉冲,而要想获得480K频率的脉冲,理论上需求16.67分频,整数分频技术则无法实现。那就需要研究一种小数分频技术;
小数分频基本原理是在若干分频周期中,使某几个周期多计或少计一个数,从而在整个周期的总体平均意义上获得一个小数分频比;
设:主频为M,K为需求频率;N为分频系数的整数部分;X为分频的余数部分;
则有:
N=M/K       1
X=M%K      2
由式1和式2可得
在需求频率K的基础上,前X个脉冲的上升沿都自动加一个计数,从而实现小数分频的效果;
移动终端上位机人机界面软件设计:
上位机人机界面的软件功能主要包括NC文件管理,参数设置,图形与运动轨迹与运动状态跟踪显示,智能诊断,工艺指令等功能;
QT开发语言选择与界面:
对于移动终端的软件开发,主要的开发语言工具有java和QT,两种都是跨平台的开发语言。java是通过java虚拟机进行了跨平台,也就是java通过虚拟机把和操作系统相关的东西进行了封装;而QT是基于C/C++,把和系统平台相关的底层接口封装到了QT里面,对上层提供了统一接口,相对java来说少了一层虚拟机,效率相对高一点;
本设计移动终端数控系统上位机开发语言选择效率相对较高的Qt Creator,QtCreator是一个跨平台的C++图形用户界面库,借助它开发者可以快速搭建美观灵活的人机界面;
人机界面格采用三段式;最顶端为状态栏,主要显示系统的相关状态和报警信息以及设置按钮;中间为加工图形显示区,包括加工的各种状态显示,显示区可进行手势图形缩放;下端为功能按钮区,可对需要操作的工艺功能按钮灵活布局按钮界面;人机界面还可以设计摇一摇等更加高级的手势功能,让操作者在工作的同时可以得到更多的优秀体验。

说明书全文

基于WIFI通信的数控机床运动控制卡

技术领域

[0001] 本发明涉及数控切割机使用集成化嵌入式数控系统技术领域,进一步说,尤其涉及一种基于WIFI通信的数控机床运动控制卡。

背景技术

[0002] 传统的小型便携式数控切割机使用集成化的嵌入式数控系统,往往将显示、功能按键、运动控制等多项功能集成于一起。由于铆焊工厂环境恶劣,导致系统显示和按键极易损坏,返修率较高,且需要返回专业厂家维修,生产效率和生产成本都受到影响。
[0003] 基于数控系统现状,本发明提出了一种新型的数控系统模式,该模式与传统模式的主要区别在于:(1)将人机界面与运动控制分开,运动控制卡集成于切割机内部,由此降低了作为数控机床核心部件运动控制卡的故障率;(2)使用运动控制卡主控机床运动和安全控制,由此降低了上位机与机床之间的通信实时性和可靠性要求,可以使用便利的WIFI无线通信方式代替传统的串口、PCI总线、Ethernet等通信方式;(3)基于WIFI无线通信方式,可将人机界面移植到手机、平板电脑笔记本电脑等移动终端上,由此可进一步降低数控系统成本、提高控制的便捷性。

发明内容

[0004] 本发明为解决上述技术问题而采用的技术方案是提供一种基于WIFI通信的数控机床运动控制卡,其中,具体技术方案为:
[0005] 硬件电路设计:
[0006] 本设计运动控制卡采用ARM芯片为主控制器,FPGA芯片为协处理器的硬件总体结构;
[0007] ARM芯片的外围电路包括复位电路、实时时钟电路、SDRAM内存、FLASH存储模、以及各类通信接口,要完成与上位机的通信任务,并将上位机传送下来的运动代码与指令进行计算,最终处理形成插补数据以及IO逻辑数据传送给FPGA执行;
[0008] FPGA芯片外围电路包括IO扩展、脉冲发生,PWM的输入输出接口,以及负载驱动电路,负责执行ARM传送过来的脉冲指令以及各类I/O逻辑指令,并驱动外围负载电路执行;
[0009] ARM与FPGA之间通过32位并行总线进行通信并且提供了4根可编程I/O线可实现FPGA对ARM产生实时中断;
[0010] 电源模块电路设计:
[0011] 运动控制卡电源电路的设计是至关重要的,一方面要给硬件电路中的各个模块提供能量;另一方面电源电路一旦设计不好,整个电路很容易受到干扰,数控机床所处工厂环境常见的干扰源有工厂供电电压不稳、电源地不稳定、负载电路的反向电动势干扰、电磁干扰、高频干扰等等,数控等离子切割机的等离子电源是一个高频高压的强干扰源,一般的电路很难承受,经常容易造成电路烧毁;
[0012] 运动控制卡由2个24V开关电源进行供电,一个50W的24V开关电源作为控制电源,另一个大功率的24V开关电源作为负载电源;控制电源主要负责为CPU等核心芯片模块、通信模块、以及脉冲、IO的光耦隔离内电源等供电,为保证它的稳定性,本设计在电路板的控制电源24V输入口部分又设计了一个DC-DC隔离电源模块,它完成3项功能;
[0013] 1)将24V控制电源转换成3路隔离电源分别为5V和±15V,供不同模块使用;
[0014] 2)将内部控制电与开关电源进行物理隔离,尽可能避免电网传导的干扰源;
[0015] 3)实现过载和短路保护;
[0016] DC-DC隔离电源模块电路主芯片采用Unitrode公司的UC3842B,是一种高性能固定频率电流型控制器,包含误差放大器、PWM比较器、PWM存器、振荡器、内部基准电源和欠压锁定等单元;
[0017] 由于ARM和FPGA芯片为3.3V供电,因此,控制主电源5V再经过LM1117-3.3V和LM1117-1.5V线性稳压电源转换成3.3V和1.5V供ARM和FPGA核心供电;
[0018] 设计采用PROTEL DXP软件进行电路仿真,进行性能分析,产生的输出波形能判断出电路参数设置合理,电容C值改变,在进行瞬态分析,输出波形将显示一个不均匀的占空比波形。
[0019] 运动控制卡软件设计:
[0020] 基于硬件设计,运动控制卡的嵌入式软件分为ARM软件结构与FPGA软件结构2部分;
[0021] ARM嵌入式软件设计分析:
[0022] ARM嵌入式软件采用C语言编写,主要框架包括Target、FIFO(先入先出缓冲区)、uC-OSII操作系统、接口底层驱动程序以及运动控制主程序的多线程任务;
[0023] Target目标板规划包括配置ARM软件的启动代码、SYSCLK系统总线时钟配置、中断向量表规划、心跳时钟配置、GPIOPin管脚规划以及STM32F407CPU的Library库函数。其中启动代码指向软件从哪个指针入口开始执行,如果判断软件需求升级标志,则启动软件下载更新任务;中断向量表配置了软件设计需求的各类中断,并定义了中断优先级顺序;GPIOPin管脚根据目标板的工艺需求规划各个CPU管脚用于什么类别的功能需求;
[0024] FIFO先入先出缓冲区包括预读缓冲区、运动缓冲区以及同步表缓冲区。其中预读缓冲区设定为500行,用于海量运动代码的计算预处理,在空闲时将数据准备好给计算任务插补计算备用;运动缓冲区设定为10行,在插补计算任务中准备,当FPGA一小段插补数据执行完中断请求时,运动缓冲区立即在中断响应中给出下一段运动代码给FPGA继续执行;FIFO缓冲区可以实现数据计算准备在CPU空闲时准备好,避免中断响应过程中再需求大量数据计算造成CPU计算过载,提升CPU使用效率;
[0025] 接口底层驱动包括串口驱动、USB驱动、I2C驱动、SPI驱动、以太网驱动、FPGA驱动,其中I2C驱动接口ATSHA204加密芯片;SPI驱动接口FLASH存储芯片以及WIFI通信模块、FPGA驱动采用32位复用高速并行总线,底层驱动软件设计包括设备初始化函数、设备打开函数、设备关闭函数、数据传输函数,其中设备初始化包括GPIOPin管脚的配置、系统总线时钟配置、设备中断配置。
[0026] STM32F407ARM芯片设计:
[0027] STM32F407系列基于ARM CortexM4内核,32位MCU+FPU,210DMIPS主频,1MB FLASH,192K RAM+4KB断电保存RAM,该处理器的优良特性在于系统功耗低,频率高,大容量,内部集成DSP协处理单元,浮点计算能非常强,并具有及其丰富的外设资源,如I2C、SPI、CAN、USB OTG HS/FS,Ethernet,17TIMs,3ADCs,15USART.interfaces&camera;电源电压范围2V~
3.6V;工作温度范围为﹣40℃~+85℃,该处理器作为主CPU选型,完全满足运动控制卡插补计算以及通信的功能需求;
[0028] STM32F407芯片的最小核心系统,芯片采用LQFP-144引脚这种扁平贴片封装形式,主晶振采用25M/3PPM高精度有源晶振,实时时钟采用32.768K/3PPM高精度无源晶振,并配有电池供电,复位电路采用SP706SE工业级看狗电路;
[0029] 串行FLASH设计:
[0030] 为满足系统参数以及海量NC运动代码的存储需求,在ARM外围电路还设计了256M的串行FLASH,采用SPI通信接口
[0031] 加密芯片选择:
[0032] 现代嵌入式软件系统越来越复杂,开发成本很高,且都是基于控制芯片外加FLASH存储芯片的设计方案,上电即从存储芯片读取程序运行,放在FLASH中的程序容易被拷贝,PCB电路板也容易被复制;采用Atmel公司的加密芯片ATSHA204,采用SHA-256公钥算法,具有体积小、功耗低、安全性高等一系列特点,与ARM采用I2C通信方式:
[0033] A3P250FPGA选用:
[0034] FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点;
[0035] FPGA采用了逻辑单元阵列LCA这样一个概念,内部包括可配置逻辑模块CLB、输入输出模块IOB和内部连线三个部分,现场可编程门阵列是可编程器件,与传统逻辑电路和门阵列相比,FPGA具有不同的结构,FPGA利用小型查找表,来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块;FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程;
[0036] 采用了ACTEL公司的A3P250,最小核心系统,它与ARM之间采用32位数据总线通信,主要完成可编程脉冲,PWM输出以及IO的控制。
[0037] USART通信接口设计:
[0038] 通用异步收发传输器,通常称作UART,是一种异步收发传输器,是最常见的集成于微处理器中的周边设备,一般和RS-232C规格的,类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口,在UART上追加同步方式的序列信号变换电路的产品,本设计使用的STM32F407ARM带有15个USART资源,由于本设计未采用串口通信,因此只设计一路串口接口,作为批量程序烧录接口备用;
[0039] USB通信接口设计:
[0040] STM32F407系列ARM带有USB OTG HS/FS,既可以达到USB2.0标准的480Mbit/s高速模式,也使用USB1.1标准的12Mbit/s的全速模式,在没有主机的情况下,它还可以实现点到点的通信并可以实现主从互换(USB OTG),它支持双向8个端点,8个IN端点和8个OUT端点,每个端点都有一个缓冲区描述块,描述该端点使用的缓冲区地址、大小和需要传输的字节数,硬件实现CRC自动生成/校验,NRZI编码/解码和bit-stuffing(位插入,位填充),支持控制传输、中断传输、大容量传输和同步传输四种传输方式,支持USB的挂起和/唤醒;
[0041] 本设计未采用USB通信方式,但是设计USB口可实现烧写以及升级程序备用口以及可作为传送文件与调试参数文件的接口使用,FS_USB_P和FS_USB_N是2根差分传输信号,由于是高速传输线,PCB布线时注意这两根线一定要等距等长布线,否则会造成信号延时产生USB通信不稳定问题;
[0042] USB接口采用USB MINI-AB小口接口形式,在2根数据线上加上了一个EDS保护芯片,防止热插拔时的高压静电对接口产生损坏;
[0043] 以太网通信接口设计:
[0044] STM32F407芯片自带以太网模块,该模块包括带专用DMA控制器的MAC 802.3(介质访问控制)控制器,支持介质独立接口(MII)和简化介质独立接口(RMII),并自带了一个用于外部PHY通信的SMI接口,通过一组配置寄存器,可以为MAC控制器和DMA控制器选择所需模式和功能;
[0045] STM32F407芯片自带以太网模块特点包括:
[0046] 支持外部PHY接口,实现10M/100Mbit/s的数据传输速率;
[0047] 通过符合IEEE802.3的MII/RMII接口与外部以太网PHY进行通信;
[0048] 支持全双工和半双工操作;
[0049] 可编程长度,支持高达16KB巨型帧;
[0050] 可编程帧间隔(40~96位时间,以8为步长);
[0051] 支持多种灵活的地址过滤模式;
[0052] 通过SMI(MDIO)接口配置和管理PHY设备;
[0053] 支持以太网时间戳(参见IEEE1588-2008),提供64位时间戳;
[0054] 提供接收和发送两组FIFO;
[0055] 支持DMA;
[0056] STM32F407是必须外接PHY芯片才可以完成以太网通信的,外部PHY芯片通过MII/RMII接口与STM32F4内部MAC连接,并且支持SMI(MDIO&MDC)接口配置外部以太网PHY芯片,本设计选用的是工业级的DP83848IVV作为外部PHY芯片,并选用汉仁的HR911105A自带网络变压器的RJ45接口;
[0057] 其中RD_N、RD_P与TD_N、TD_P是两对差分信号线,线上通信速率很高,因此PCB布线时应注意差分信号线应等距等长布线,否则会造成通信失败;PROTEL DXP仿真软件模拟电路把输出信号传给STM32F407芯片,芯片能正常工作。
[0058] WIFI通信接口设计:
[0059] 本设计运动控制卡采用WIFI通信,WIFI通信接口采用的是一款嵌入式的RF-WF-3200B1模块,模块搭载的是TI公司最新的SimpleLink Wi-Fi CC3200芯片设计,内置高性能ARM Cortex-M4MCU,并包含多种外设,如并行摄像头接口,I2S,SD/MMC,UART,SPI,I2C,ADC和GPIO,支持802.11b/g/n无线标准,支持Station,AP和Wi-Fi直连模式;
[0060] 该模块集成了TCP/IP协议栈,通过SPI总线与STM32F407主芯片进行通信;
[0061] SimpleLink Wi-Fi CC3200芯片管脚19、20、21输出的三个信号进行动态瞬态分析,然后与主芯片进行通信,模拟结果合理;
[0062] 普通IO口电路设计:
[0063] 数控系统用于工业生产现场,条件恶劣复杂,周围强电设备和强电电路所形成的电磁干扰错综复杂,来自信号传输线上的干扰、电源的干扰和空间辐射干扰以及机床工作过程中等离子弧的高频干扰等各种干扰源,使得数控系统很容易被周围干扰源干扰导致运行程序发生错乱引起控制系统产生误动作,所以要特别重视系统的抗干扰设计,运动控制卡的输入输出均采用开关量,光电耦合器由于存在信号单向传输,抗干扰能力强,工作稳定,无触点,使用寿命长,传输效率高的特点,使得运动控制卡的核心电路与外围负载完全实现了光电隔离,较好地消除了外部电磁干扰对运动控制卡内部所产生的影响,并且由于光电耦合器的输入端属于电流型工作的低阻元件,还具有很强的共模抑制能力;
[0064] 高速输入口电路设计:
[0065] 普通光耦隔离电路可实现低速普通IO口的隔离,普通光耦的开关频率一般只能达到几十KHz,在某些高频率的输入口比如PWM信号输入需采用高速光耦进行隔离,常用的高速光耦有6N137,它的开关频率能达到1M以上;
[0066] 脉冲输出电路设计:
[0067] 运动控制卡通过脉冲输出接口驱动外部的伺服电机或步进电机,从而控制机床按照设定的路线进行运动,一般情况下脉冲输出电路采用差分输出方式,这种方式能有效地抵制共模干扰,适合长线传输,但针对单端共阴共阳输入的步进电机驱动器来说,这种方式的驱动能力较弱,因此本设计脉冲输出的接口原理采用推挽输出的方式;电路前级U31为磁隔离器,它相比光耦隔离器件来说具有开关速度高,隔离波形整形较好的特点,这有利于脉冲输出的波形稳定,电路后级上面为一个NPN三极管,下面为一个PNP三级管,形成对管的推挽输出方式,这种方式的驱动能力强,同时能适应绝大部分的伺服电机与步进电机驱动器接口连接;
[0068] 电磁驱动电路设计:
[0069] 运动控制卡I/O口通过光耦将核心电源与负载电源物理隔离,并对驱动负载能力进行了放大,但也只是将几毫安级放大到了几十毫安级,不足以能驱动外部的电磁阀或直流电机等负载元件,这些元件一般都要达到安培级的驱动需求,因此经常在光耦后级再通过继电器再进行隔离放大,一般继电器的触点驱动能力能达到几安培以上。但是继电器由于长期的开关,如果灭弧保护电路处理不当,继电器触点容易化损坏。因此本设计采用了英飞凌的汽车电子芯片BTS737来作为电磁阀的驱动电路;
[0070] BTS737驱动芯片外围通过与门控制I/O口的控制使能,通过LM339放大器电路形成迟滞电路,对负载电流限定过流及短路保护;
[0071] 它相比继电器电路的优点如下:
[0072] 1)没有触点,可靠性高;
[0073] 2)对外围负载可以进行限流和短路保护,更有效地保护电路不被烧毁;
[0074] 3)更加智能,对负载的故障能有感知,负载过载后能反馈信息给CPU控制核心;
[0075] 4)由于没有线圈控制,对外界电路的干扰较小;
[0076] 5)体积小巧,电路板占有面积只有继电器的1/4;
[0077] 直流电机驱动电路设计:
[0078] 同上结描述,本设计直流电机控制电路也采用了英飞凌的汽车电子芯片TLE5206,它也具有更加智能,更加可靠保护,更加小巧等特点;
[0079] 根据电容CP6的充放电原理,芯片TLE5206的模拟仿真输出波形,能给光电二极管DS16、DS17提供合适的信号;
[0080] 硬件电路板设计:
[0081] 本设计电路板采用Altium Designer软件设计,PCB采用4层电路板设计,上下2层分别为电气走线,中间2层为电源和地,这样的布线方式能更好地提高电路板的抗干扰特性。
[0082] uC-OSII操作系统选择:
[0083] 本设计运动控制卡嵌入式软件采用uC-OSII操作系统,uC-OSII由Micrium公司提供,是一个可移植、可固化的、可裁剪的、占先式多任务实时内核,它专门为嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU上,用户只要有标准的ANSI的C交叉编译器,有汇编器、连接器等软件工具,就可以将uC-OSII嵌入到开发的产品中,uC-OSII具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB;
[0084] 严格地说uC-OSII只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务,但由于uC-OSII良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现[;
[0085] uC-OSII目标是实现一个基于优先级调度的抢占式的实时内核,这非常适合本设计运动控制插补计算任务的高实时性要求,uC-OSII在这个内核之上提供最基本的系统服务:
[0086] 信号量
[0087] 互斥信号量
[0088] 事件标识
[0089] 消息邮箱
[0090] 消息队列
[0091] 任务管理
[0092] 固定大小内存块管理
[0093] 时间管理
[0094] 另外,在uC-OSII内核之上,有如下独立模块可供用户选择:
[0095] μC/FS文件系统模块
[0096] μC/GUI图形软件模块
[0097] μC/TCP-IP协议栈模块
[0098] μC/USB协议栈模块
[0099] uC-OSII可以分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分;
[0100] (1)核心部分(OSCore.c)
[0101] 是操作系统的处理核心,包括操作系统初始化、操作系统运行、中断进出的前导、时钟节拍、任务调度、事件处理等多部分,能够维持系统基本工作的部分都在这里;
[0102] (2)任务处理部分(OSTask.c)
[0103] 任务处理部分中的内容都是与任务的操作密切相关的;包括任务的建立、删除、挂起、恢复等等;因为μC/OS-II是以任务为基本单位调度的,所以这部分内容也相当重要;
[0104] (3)时钟部分(OSTime.c)
[0105] uC-OSII中的最小时钟单位是timetick(时钟节拍);任务延时等操作是在这里完成的;
[0106] (4)任务同步和通信部分
[0107] 为事件处理部分,包括信号量、邮箱、邮箱队列、事件标志等部分;主要用于任务间的互相联系和对临界资源的访问;
[0108] (5)与CPU的接口部分
[0109] 是指uC-OSII针对所使用的CPU的移植部分;由于uC-OSII是一个通用性的操作系统,所以对于关键问题上的实现,还是需要根据具体CPU的具体内容和要求作相应的移植。这部分内容由于牵涉到SP等系统指针,所以通常用汇编语言编写;主要包括中断级任务切换的底层实现、任务级任务切换的底层实现、时钟节拍的产生和处理、中断的相关处理部分等内容。
[0110] 多线程任务功能分配与优先级设计:
[0111] uC-OSII中最多可以支持256个任务,分别对应优先级0~255,其中0为最高优先级,255为最低级;uC-OSII提供了任务管理的各种函数调用,包括创建任务,删除任务,改变任务的优先级,任务挂起和恢复等;
[0112] FPGA嵌入式软件设计分析:
[0113] FPGA嵌入式软件采用Verilog语言编写,主要框架包括总线驱动、脉冲发生、脉冲计数、I/O逻辑执行、高速输入口捕获等软件功能;
[0114] 其中总线驱动根据STM32F407的32位高速总线逻辑编写,脉冲发生通过8M的主频时钟分频获得,脉冲计数采用32位计数器,高速输入口捕获用于外部回零开关高速位置获取等功能;
[0115] Verilog开发语言:
[0116] Verilog HDL是一种硬件描述语言(HDL:Hardware Description Language),以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能;Verilog由Gateway Design Automation公司开发;
[0117] 使用Verilog描述硬件的基本设计单元是模块(module);构建复杂的电子电路,主要是通过模块的相互连接调用来实现的;模块被包含在关键字module、endmodule之内,形成实际的电路元件;Verilog中的模块类似C语言中的函数,它能够提供输入、输出端口,可以实例调用其他模块,也可以被其他模块实例调用;模块中包括组合逻辑部分、过程时序部分。
[0118] 脉冲发生器原理设计:
[0119] 运动控制卡通过脉冲接口驱动伺服电机或步进电机按照指定的方向和指定的速度走到指定的位置,从而控制机床实现精确走位。可见运动控制卡发出的脉冲要实现三要素即方向、速度、位置;
[0120] 本设计运动控制卡采用脉冲+方向控制方式,由方向线的高低电平2种状态控制电机的CW与CCW旋转方向,从而控制机床运行方向;通过对脉冲发生频率的控制来控制机床的运行速度;通过FPGA对脉冲升降沿的高速计数,将脉冲数通过设定的机床脉冲当量来控制机床走行的距离;
[0121] 其中脉冲频率通过基准主频分频获得,本设计运动控制卡的脉冲主频设定为8M,由FPGA程序控制对主频进行分频,主频脉冲A为8M,经过16分频,就获取了一个500K频率的分频脉冲B;
[0122] 本设计的脉冲分频采用16位分频,即分频脉冲频率范围为[122Hz(8M/2^16)~8M(8M/1)],但整数分频技术会造成分频脉冲的频率精度不够,比如16分频能获得500K的频率脉冲,17分频则能获得470.6K的频率脉冲,而要想获得480K频率的脉冲,理论上需求16.67分频,整数分频技术则无法实现。那就需要研究一种小数分频技术;
[0123] 小数分频基本原理是在若干分频周期中,使某几个周期多计或少计一个数,从而在整个周期的总体平均意义上获得一个小数分频比;
[0124] 设:主频为M,K为需求频率;N为分频系数的整数部分;X为分频的余数部分;
[0125] 则有:
[0126] N=M/K       1
[0127] X=M%K      2
[0128] 由式1和式2可得
[0129] 在需求频率K的基础上,前X个脉冲的上升沿都自动加一个计数,从而实现小数分频的效果;
[0130] 移动终端上位机人机界面软件设计:
[0131] 上位机人机界面的软件功能主要包括NC文件管理,参数设置,图形与运动轨迹与运动状态跟踪显示,智能诊断,工艺指令等功能;
[0132] QT开发语言选择与界面:
[0133] 对于移动终端的软件开发,主要的开发语言工具有java和QT,两种都是跨平台的开发语言。java是通过java虚拟机进行了跨平台,也就是java通过虚拟机把和操作系统相关的东西进行了封装;而QT是基于C/C++,把和系统平台相关的底层接口封装到了QT里面,对上层提供了统一接口,相对java来说少了一层虚拟机,效率相对高一点;
[0134] 本设计移动终端数控系统上位机开发语言选择效率相对较高的Qt Creator,Qt Creator是一个跨平台的C++图形用户界面库,借助它开发者可以快速搭建美观灵活的人机界面;
[0135] 人机界面格采用三段式;最顶端为状态栏,主要显示系统的相关状态和报警信息以及设置按钮;中间为加工图形显示区,包括加工的各种状态显示,显示区可进行手势图形缩放;下端为功能按钮区,可对需要操作的工艺功能按钮灵活布局按钮界面;人机界面还可以设计摇一摇等更加高级的手势功能,让操作者在工作的同时可以得到更多的优秀体验。
[0136] 本发明相对于现有技术具有如下有益效果:
[0137] (1)所提出的新型数控系统模式与传统数控系统模式的优势比较,并从控制实时性以及安全可靠性度分析了采用WIFI无线通信方式的可行性;
[0138] (2)无线通信数据帧格式设计与详细语义定义,其中为提高通信的实时性,提出数据校验以可靠的硬件CRC校验为主;
[0139] (3)无线通信的鲁棒性设计。所提出的新型数控系统模式由运动控制卡作为主控器,保障了系统控制的实时性和安全可靠性。此外还提出了采用全向双极天线、降低物理数据传输速率及AP自动改变信道等抗干扰设计;
[0140] (4)上位机采用移动终端的新特性分析。提出了有别于传统集中化数控系统的多终端控制模式、一机多控模式、数控模式等。并针对新型的多终端模式提出了运用数据同步技术,保证多个移动终端的数据一致;
[0141] (5)控制卡硬件电路设计。主要为芯片的功能、性能分析及在此基础上的选用。隔离电源设计、ARM和FPGA双核设计、带保护装置的通信接口设计、具有抗干扰能力的四层硬件电路板设计等是硬件电路设计的主要特色;
[0142] (6)控制卡嵌入式软件设计。多线程任务功能分配与优先级设计、脉冲发生器主频计算方式是软件设计的主要内容。
[0143] 由于无线通信的实时性和可靠性问题,基于移动终端开发的无线通信数控系统目前在国内外市场还很少应用,本发明通过提出了新型的数控系统架构模式保证了数控系统无线通信的可行性,这种通信方式也为目前的工业4.0智造革命与云数控提供了天然的智能接口。对机床组网与机床大数据分析提供了必要技术条件。这种新型的移动终端数控系统一旦应用得以推广,将带来数控系统的另外一场机床互联革命。附图说明
[0144] 图1为基于ARM+FPGA的运动控制卡硬件结构示意图。
[0145] 图2为运动控制卡的DC-DC隔离电源电路原理的示意图。
[0146] 图3为CPU供电电源原理图的示意图。
[0147] 图4为SPI FLASH原理图的示意图。
[0148] 图5为加密芯片原理图的示意图。
[0149] 图6为串口原理图的示意图。
[0150] 图7为USB接口原理图的示意图。
[0151] 图8为WIFI模块接口原理的示意图。
[0152] 图9为输出信号瞬态分析的示意图。
[0153] 图10为运动控制卡I/O口光耦隔离原理图的示意图。
[0154] 图11为高速输入口电路原理图的示意图。
[0155] 图12为运动控制卡嵌入式软件架构图的示意图。

具体实施方式

[0156] 下面结合附图和实施例对本发明作进一步的描述。
[0157] 本发明提供了一种基于WIFI通信的数控机床运动控制卡;
[0158] 硬件电路设计:
[0159] 本设计运动控制卡采用ARM芯片为主控制器,FPGA芯片为协处理器的硬件总体结构;
[0160] ARM芯片的外围电路包括复位电路、实时时钟电路、SDRAM内存、FLASH存储模块、以及各类通信接口,要完成与上位机的通信任务,并将上位机传送下来的运动代码与指令进行计算,最终处理形成插补数据以及IO逻辑数据传送给FPGA执行;
[0161] FPGA芯片外围电路包括IO扩展、脉冲发生,PWM的输入输出接口,以及负载驱动电路,负责执行ARM传送过来的脉冲指令以及各类I/O逻辑指令,并驱动外围负载电路执行;
[0162] ARM与FPGA之间通过32位并行总线进行通信并且提供了4根可编程I/O线可实现FPGA对ARM产生实时中断;
[0163] 电源模块电路设计:
[0164] 运动控制卡电源电路的设计是至关重要的,一方面要给硬件电路中的各个模块提供能量;另一方面电源电路一旦设计不好,整个电路很容易受到干扰,数控机床所处工厂环境常见的干扰源有工厂供电电压不稳、电源地不稳定、负载电路的反向电动势干扰、电磁干扰、高频干扰等等,数控等离子切割机的等离子电源是一个高频高压的强干扰源,一般的电路很难承受,经常容易造成电路烧毁;
[0165] 运动控制卡由2个24V开关电源进行供电,一个50W的24V开关电源作为控制电源,另一个大功率的24V开关电源作为负载电源;控制电源主要负责为CPU等核心芯片模块、通信模块、以及脉冲、IO的光耦隔离内电源等供电,为保证它的稳定性,本设计在电路板的控制电源24V输入口部分又设计了一个DC-DC隔离电源模块,它完成3项功能;
[0166] 1)将24V控制电源转换成3路隔离电源分别为5V和±15V,供不同模块使用;
[0167] 2)将内部控制电与开关电源进行物理隔离,尽可能避免电网传导的干扰源;
[0168] 3)实现过载和短路保护;
[0169] DC-DC隔离电源模块电路主芯片采用Unitrode公司的UC3842B,是一种高性能固定频率电流型控制器,包含误差放大器、PWM比较器、PWM锁存器、振荡器、内部基准电源和欠压锁定等单元;
[0170] 由于ARM和FPGA芯片为3.3V供电,因此,控制主电源5V再经过LM1117-3.3V和LM1117-1.5V线性稳压电源转换成3.3V和1.5V供ARM和FPGA核心供电;
[0171] 设计采用PROTEL DXP软件进行电路仿真,进行性能分析,产生的输出波形能判断出电路参数设置合理,电容C值改变,在进行瞬态分析,输出波形将显示一个不均匀的占空比波形;
[0172] STM32F407ARM芯片设计:
[0173] STM32F407系列基于ARM CortexM4内核,32位MCU+FPU,210DMIPS主频,1MB FLASH,192K RAM+4KB断电保存RAM,该处理器的优良特性在于系统功耗低,频率高,大容量,内部集成DSP协处理单元,浮点计算能力非常强,并具有及其丰富的外设资源,如I2C、SPI、CAN、USB OTG HS/FS,Ethernet,17TIMs,3ADCs,15USART.interfaces&camera;电源电压范围2V~
3.6V;工作温度范围为﹣40℃~+85℃,该处理器作为主CPU选型,完全满足运动控制卡插补计算以及通信的功能需求;
[0174] STM32F407芯片的最小核心系统,芯片采用LQFP-144引脚这种扁平贴片封装形式,主晶振采用25M/3PPM高精度有源晶振,实时时钟采用32.768K/3PPM高精度无源晶振,并配有电池供电,复位电路采用SP706SE工业级看门狗电路;
[0175] 串行FLASH设计:
[0176] 为满足系统参数以及海量NC运动代码的存储需求,在ARM外围电路还设计了256M的串行FLASH,采用SPI通信接口;
[0177] 加密芯片选择:
[0178] 现代嵌入式软件系统越来越复杂,开发成本很高,且都是基于控制芯片外加FLASH存储芯片的设计方案,上电即从存储芯片读取程序运行,放在FLASH中的程序容易被拷贝,PCB电路板也容易被复制;采用Atmel公司的加密芯片ATSHA204,采用SHA-256公钥算法,具有体积小、功耗低、安全性高等一系列特点,与ARM采用I2C通信方式:
[0179] A3P250FPGA选用:
[0180] FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物,它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点;
[0181] FPGA采用了逻辑单元阵列LCA这样一个概念,内部包括可配置逻辑模块CLB、输入输出模块IOB和内部连线三个部分,现场可编程门阵列是可编程器件,与传统逻辑电路和门阵列相比,FPGA具有不同的结构,FPGA利用小型查找表,来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块;FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程;
[0182] 采用了ACTEL公司的A3P250,最小核心系统,它与ARM之间采用32位数据总线通信,主要完成可编程脉冲,PWM输出以及IO的控制;
[0183] USART通信接口设计:
[0184] 通用异步收发传输器,通常称作UART,是一种异步收发传输器,是最常见的集成于微处理器中的周边设备,一般和RS-232C规格的,类似Maxim的MAX232之类的标准信号幅度变换芯片进行搭配,作为连接外部设备的接口,在UART上追加同步方式的序列信号变换电路的产品,本设计使用的STM32F407ARM带有15个USART资源,由于本设计未采用串口通信,因此只设计一路串口接口,作为批量程序烧录接口备用;
[0185] USB通信接口设计:
[0186] STM32F407系列ARM带有USB OTG HS/FS,既可以达到USB2.0标准的480Mbit/s高速模式,也使用USB1.1标准的12Mbit/s的全速模式,在没有主机的情况下,它还可以实现点到点的通信并可以实现主从互换(USB OTG),它支持双向8个端点,8个IN端点和8个OUT端点,每个端点都有一个缓冲区描述块,描述该端点使用的缓冲区地址、大小和需要传输的字节数,硬件实现CRC自动生成/校验,NRZI编码/解码和bit-stuffing(位插入,位填充),支持控制传输、中断传输、大容量传输和同步传输四种传输方式,支持USB的挂起和/唤醒;
[0187] 本设计未采用USB通信方式,但是设计USB口可实现烧写以及升级程序备用口以及可作为传送文件与调试参数文件的接口使用,FS_USB_P和FS_USB_N是2根差分传输信号,由于是高速传输线,PCB布线时注意这两根线一定要等距等长布线,否则会造成信号延时产生USB通信不稳定问题;
[0188] USB接口采用USB MINI-AB小口接口形式,在2根数据线上加上了一个EDS保护芯片,防止热插拔时的高压静电对接口产生损坏;
[0189] 以太网通信接口设计:
[0190] STM32F407芯片自带以太网模块,该模块包括带专用DMA控制器的MAC 802.3(介质访问控制)控制器,支持介质独立接口(MII)和简化介质独立接口(RMII),并自带了一个用于外部PHY通信的SMI接口,通过一组配置寄存器,可以为MAC控制器和DMA控制器选择所需模式和功能;
[0191] STM32F407芯片自带以太网模块特点包括:
[0192] 支持外部PHY接口,实现10M/100Mbit/s的数据传输速率;
[0193] 通过符合IEEE802.3的MII/RMII接口与外部以太网PHY进行通信;
[0194] 支持全双工和半双工操作;
[0195] 可编程帧长度,支持高达16KB巨型帧;
[0196] 可编程帧间隔(40~96位时间,以8为步长);
[0197] 支持多种灵活的地址过滤模式;
[0198] 通过SMI(MDIO)接口配置和管理PHY设备;
[0199] 支持以太网时间戳(参见IEEE1588-2008),提供64位时间戳;
[0200] 提供接收和发送两组FIFO;
[0201] 支持DMA;
[0202] STM32F407是必须外接PHY芯片才可以完成以太网通信的,外部PHY芯片通过MII/RMII接口与STM32F4内部MAC连接,并且支持SMI(MDIO&MDC)接口配置外部以太网PHY芯片,本设计选用的是工业级的DP83848IVV作为外部PHY芯片,并选用汉仁的HR911105A自带网络变压器的RJ45接口;
[0203] 其中RD_N、RD_P与TD_N、TD_P是两对差分信号线,线上通信速率很高,因此PCB布线时应注意差分信号线应等距等长布线,否则会造成通信失败;PROTEL DXP仿真软件模拟电路把输出信号传给STM32F407芯片,芯片能正常工作;
[0204] WIFI通信接口设计:
[0205] 本设计运动控制卡采用WIFI通信,WIFI通信接口采用的是一款嵌入式的RF-WF-3200B1模块,模块搭载的是TI公司最新的SimpleLink Wi-Fi CC3200芯片设计,内置高性能ARM Cortex-M4MCU,并包含多种外设,如并行摄像头接口,I2S,SD/MMC,UART,SPI,I2C,ADC和GPIO,支持802.11b/g/n无线标准,支持Station,AP和Wi-Fi直连模式;
[0206] 该模块集成了TCP/IP协议栈,通过SPI总线与STM32F407主芯片进行通信;
[0207] SimpleLink Wi-Fi CC3200芯片管脚19、20、21输出的三个信号进行动态瞬态分析,然后与主芯片进行通信,模拟结果合理;
[0208] 普通IO口电路设计:
[0209] 数控系统用于工业生产现场,条件恶劣复杂,周围强电设备和强电电路所形成的电磁干扰错综复杂,来自信号传输线上的干扰、电源的干扰和空间辐射干扰以及机床工作过程中等离子弧的高频干扰等各种干扰源,使得数控系统很容易被周围干扰源干扰导致运行程序发生错乱引起控制系统产生误动作,所以要特别重视系统的抗干扰设计,运动控制卡的输入输出均采用开关量,光电耦合器由于存在信号单向传输,抗干扰能力强,工作稳定,无触点,使用寿命长,传输效率高的特点,使得运动控制卡的核心电路与外围负载完全实现了光电隔离,较好地消除了外部电磁干扰对运动控制卡内部所产生的影响,并且由于光电耦合器的输入端属于电流型工作的低阻元件,还具有很强的共模抑制能力;
[0210] 高速输入口电路设计:
[0211] 普通光耦隔离电路可实现低速普通IO口的隔离,普通光耦的开关频率一般只能达到几十KHz,在某些高频率的输入口比如PWM信号输入需采用高速光耦进行隔离,常用的高速光耦有6N137,它的开关频率能达到1M以上;
[0212] 脉冲输出电路设计:
[0213] 运动控制卡通过脉冲输出接口驱动外部的伺服电机或步进电机,从而控制机床按照设定的路线进行运动,一般情况下脉冲输出电路采用差分输出方式,这种方式能有效地抵制共模干扰,适合长线传输,但针对单端共阴共阳输入的步进电机驱动器来说,这种方式的驱动能力较弱,因此本设计脉冲输出的接口原理采用推挽输出的方式;电路前级U31为磁隔离器,它相比光耦隔离器件来说具有开关速度高,隔离波形整形较好的特点,这有利于脉冲输出的波形稳定,电路后级上面为一个NPN三极管,下面为一个PNP三级管,形成对管的推挽输出方式,这种方式的驱动能力强,同时能适应绝大部分的伺服电机与步进电机驱动器接口连接;
[0214] 电磁阀驱动电路设计:
[0215] 运动控制卡I/O口通过光耦将核心电源与负载电源物理隔离,并对驱动负载能力进行了放大,但也只是将几毫安级放大到了几十毫安级,不足以能驱动外部的电磁阀或直流电机等负载元件,这些元件一般都要达到安培级的驱动需求,因此经常在光耦后级再通过继电器再进行隔离放大,一般继电器的触点驱动能力能达到几安培以上。但是继电器由于长期的开关,如果灭弧保护电路处理不当,继电器触点容易氧化损坏。因此本设计采用了英飞凌的汽车电子芯片BTS737来作为电磁阀的驱动电路;
[0216] BTS737驱动芯片外围通过与门控制I/O口的控制使能,通过LM339放大器电路形成迟滞电路,对负载电流限定过流及短路保护;
[0217] 它相比继电器电路的优点如下:
[0218] 1)没有触点,可靠性高;
[0219] 2)对外围负载可以进行限流和短路保护,更有效地保护电路不被烧毁;
[0220] 3)更加智能,对负载的故障能有感知,负载过载后能反馈信息给CPU控制核心;
[0221] 4)由于没有线圈控制,对外界电路的干扰较小;
[0222] 5)体积小巧,电路板占有面积只有继电器的1/4;
[0223] 直流电机驱动电路设计:
[0224] 同上结描述,本设计直流电机控制电路也采用了英飞凌的汽车电子芯片TLE5206,它也具有更加智能,更加可靠保护,更加小巧等特点;
[0225] 根据电容CP6的充放电原理,芯片TLE5206的模拟仿真输出波形,能给光电二极管DS16、DS17提供合适的信号;
[0226] 硬件电路板设计:
[0227] 本设计电路板采用Altium Designer软件设计,PCB采用4层电路板设计,上下2层分别为电气走线,中间2层为电源和地,这样的布线方式能更好地提高电路板的抗干扰特性。
[0228] 运动控制卡软件设计:
[0229] 基于硬件设计,运动控制卡的嵌入式软件分为ARM软件结构与FPGA软件结构2部分;
[0230] ARM嵌入式软件设计分析:
[0231] ARM嵌入式软件采用C语言编写,主要框架包括Target、FIFO(先入先出缓冲区)、uC-OSII操作系统、接口底层驱动程序以及运动控制主程序的多线程任务;
[0232] Target目标板规划包括配置ARM软件的启动代码、SYSCLK系统总线时钟配置、中断向量表规划、心跳时钟配置、GPIOPin管脚规划以及STM32F407CPU的Library库函数。其中启动代码指向软件从哪个指针入口开始执行,如果判断软件需求升级标志,则启动软件下载更新任务;中断向量表配置了软件设计需求的各类中断,并定义了中断优先级顺序;GPIOPin管脚根据目标板的工艺需求规划各个CPU管脚用于什么类别的功能需求;
[0233] FIFO先入先出缓冲区包括预读缓冲区、运动缓冲区以及同步表缓冲区。其中预读缓冲区设定为500行,用于海量运动代码的计算预处理,在空闲时将数据准备好给计算任务插补计算备用;运动缓冲区设定为10行,在插补计算任务中准备,当FPGA一小段插补数据执行完中断请求时,运动缓冲区立即在中断响应中给出下一段运动代码给FPGA继续执行;FIFO缓冲区可以实现数据计算准备在CPU空闲时准备好,避免中断响应过程中再需求大量数据计算造成CPU计算过载,提升CPU使用效率;
[0234] 接口底层驱动包括串口驱动、USB驱动、I2C驱动、SPI驱动、以太网驱动、FPGA驱动,其中I2C驱动接口ATSHA204加密芯片;SPI驱动接口FLASH存储芯片以及WIFI通信模块、FPGA驱动采用32位复用高速并行总线,底层驱动软件设计包括设备初始化函数、设备打开函数、设备关闭函数、数据传输函数,其中设备初始化包括GPIOPin管脚的配置、系统总线时钟配置、设备中断配置;
[0235] uC-OSII操作系统选择:
[0236] 本设计运动控制卡嵌入式软件采用uC-OSII操作系统,uC-OSII由Micrium公司提供,是一个可移植、可固化的、可裁剪的、占先式多任务实时内核,它专门为嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU上,用户只要有标准的ANSI的C交叉编译器,有汇编器、连接器等软件工具,就可以将uC-OSII嵌入到开发的产品中,uC-OSII具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB;
[0237] 严格地说uC-OSII只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务,但由于uC-OSII良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现[;
[0238] uC-OSII目标是实现一个基于优先级调度的抢占式的实时内核,这非常适合本设计运动控制插补计算任务的高实时性要求,uC-OSII在这个内核之上提供最基本的系统服务:
[0239] 信号量
[0240] 互斥信号量
[0241] 事件标识
[0242] 消息邮箱
[0243] 消息队列
[0244] 任务管理
[0245] 固定大小内存块管理
[0246] 时间管理
[0247] 另外,在uC-OSII内核之上,有如下独立模块可供用户选择:
[0248] μC/FS文件系统模块
[0249] μC/GUI图形软件模块
[0250] μC/TCP-IP协议栈模块
[0251] μC/USB协议栈模块
[0252] uC-OSII可以分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分;
[0253] (1)核心部分(OSCore.c)
[0254] 是操作系统的处理核心,包括操作系统初始化、操作系统运行、中断进出的前导、时钟节拍、任务调度、事件处理等多部分,能够维持系统基本工作的部分都在这里;
[0255] (2)任务处理部分(OSTask.c)
[0256] 任务处理部分中的内容都是与任务的操作密切相关的;包括任务的建立、删除、挂起、恢复等等;因为μC/OS-II是以任务为基本单位调度的,所以这部分内容也相当重要;
[0257] (3)时钟部分(OSTime.c)
[0258] uC-OSII中的最小时钟单位是timetick(时钟节拍);任务延时等操作是在这里完成的;
[0259] (4)任务同步和通信部分
[0260] 为事件处理部分,包括信号量、邮箱、邮箱队列、事件标志等部分;主要用于任务间的互相联系和对临界资源的访问;
[0261] (5)与CPU的接口部分
[0262] 是指uC-OSII针对所使用的CPU的移植部分;由于uC-OSII是一个通用性的操作系统,所以对于关键问题上的实现,还是需要根据具体CPU的具体内容和要求作相应的移植。这部分内容由于牵涉到SP等系统指针,所以通常用汇编语言编写;主要包括中断级任务切换的底层实现、任务级任务切换的底层实现、时钟节拍的产生和处理、中断的相关处理部分等内容;
[0263] 多线程任务功能分配与优先级设计:
[0264] uC-OSII中最多可以支持256个任务,分别对应优先级0~255,其中0为最高优先级,255为最低级;uC-OSII提供了任务管理的各种函数调用,包括创建任务,删除任务,改变任务的优先级,任务挂起和恢复等;
[0265] FPGA嵌入式软件设计分析:
[0266] FPGA嵌入式软件采用Verilog语言编写,主要框架包括总线驱动、脉冲发生、脉冲计数、I/O逻辑执行、高速输入口捕获等软件功能;
[0267] 其中总线驱动根据STM32F407的32位高速总线逻辑编写,脉冲发生通过8M的主频时钟分频获得,脉冲计数采用32位计数器,高速输入口捕获用于外部回零开关高速位置获取等功能;
[0268] Verilog开发语言:
[0269] Verilog HDL是一种硬件描述语言(HDL:Hardware Description Language),以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能;Verilog由Gateway Design Automation公司开发;
[0270] 使用Verilog描述硬件的基本设计单元是模块(module);构建复杂的电子电路,主要是通过模块的相互连接调用来实现的;模块被包含在关键字module、endmodule之内,形成实际的电路元件;Verilog中的模块类似C语言中的函数,它能够提供输入、输出端口,可以实例调用其他模块,也可以被其他模块实例调用;模块中包括组合逻辑部分、过程时序部分;
[0271] 脉冲发生器原理设计:
[0272] 运动控制卡通过脉冲接口驱动伺服电机或步进电机按照指定的方向和指定的速度走到指定的位置,从而控制机床实现精确走位。可见运动控制卡发出的脉冲要实现三要素即方向、速度、位置;
[0273] 本设计运动控制卡采用脉冲+方向控制方式,由方向线的高低电平2种状态控制电机的CW与CCW旋转方向,从而控制机床运行方向;通过对脉冲发生频率的控制来控制机床的运行速度;通过FPGA对脉冲升降沿的高速计数,将脉冲数通过设定的机床脉冲当量来控制机床走行的距离;
[0274] 其中脉冲频率通过基准主频分频获得,本设计运动控制卡的脉冲主频设定为8M,由FPGA程序控制对主频进行分频,主频脉冲A为8M,经过16分频,就获取了一个500K频率的分频脉冲B;
[0275] 本设计的脉冲分频采用16位分频,即分频脉冲频率范围为[122Hz(8M/2^16)~8M(8M/1)],但整数分频技术会造成分频脉冲的频率精度不够,比如16分频能获得500K的频率脉冲,17分频则能获得470.6K的频率脉冲,而要想获得480K频率的脉冲,理论上需求16.67分频,整数分频技术则无法实现。那就需要研究一种小数分频技术;
[0276] 小数分频基本原理是在若干分频周期中,使某几个周期多计或少计一个数,从而在整个周期的总体平均意义上获得一个小数分频比;
[0277] 设:主频为M,K为需求频率;N为分频系数的整数部分;X为分频的余数部分;
[0278] 则有:
[0279] N=M/K          1
[0280] X=M%K         2
[0281] 由式1和式2可得
[0282] 在需求频率K的基础上,前X个脉冲的上升沿都自动加一个计数,从而实现小数分频的效果;
[0283] 移动终端上位机人机界面软件设计:
[0284] 上位机人机界面的软件功能主要包括NC文件管理,参数设置,图形与运动轨迹与运动状态跟踪显示,智能诊断,工艺指令等功能;
[0285] QT开发语言选择与界面:
[0286] 对于移动终端的软件开发,主要的开发语言工具有java和QT,两种都是跨平台的开发语言。java是通过java虚拟机进行了跨平台,也就是java通过虚拟机把和操作系统相关的东西进行了封装;而QT是基于C/C++,把和系统平台相关的底层接口封装到了QT里面,对上层提供了统一接口,相对java来说少了一层虚拟机,效率相对高一点;
[0287] 本设计移动终端数控系统上位机开发语言选择效率相对较高的Qt Creator,Qt Creator是一个跨平台的C++图形用户界面库,借助它开发者可以快速搭建美观灵活的人机界面;这种移动端的人机界面完全摈弃了传统数控系统人机界面F1-F8功能按键的界面风格,更加简洁明了,他有以下几点优势:
[0288] 人机界面友好度大大提升,可做手势控制,功能更强大;
[0289] 人机界面升级维护方便;
[0290] 人机界面硬件免维护,零成本,可多终端使用;
[0291] 可方便接入到移动互联云端平台,作为设备的智能接口;
[0292] 人机界面风格采用三段式;最顶端为状态栏,主要显示系统的相关状态和报警信息以及设置按钮;中间为加工图形显示区,包括加工的各种状态显示,显示区可进行手势图形缩放;下端为功能按钮区,可对需要操作的工艺功能按钮灵活布局按钮界面;
[0293] 人机界面还可以设计摇一摇等更加高级的手势功能,让操作者在工作的同时可以得到更多的优秀体验。
[0294] 虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈