首页 / 专利库 / 电脑零配件 / 嵌入式系统 / 面向多轴联动经济型数控的可重构系统及重构方法

面向多轴联动经济型数控的可重构系统及重构方法

阅读:450发布:2020-05-08

专利汇可以提供面向多轴联动经济型数控的可重构系统及重构方法专利检索,专利查询,专利分析的服务。并且一种面向多轴联动经济型数控的可重构系统,包括上位控制系统、下位控制系统和被控对象;控制专用集成 电路 的基本逻辑结构单元包括:SPI读模 块 SpiRd、SPI写模块SpiWr、指令译码模块DecInstr、PWM输出控 制模 块U1PwmDrv、AD采集转换 控制模块 U0MaxDrv、 开关 量输出模块DigOutP、开关量输入模块DigInP、运动指令队列模块mInstr、运动指令执行控制模块ExeInst,以及:XYZ三轴进给运动控制模块UXMtDrv、UYMtDrv、UZMtDrv或X/Y/Z/X1/Y1/Z1/W1七轴运动控制模块U0MtDrv~U6MtDrv。系统重构方法,构造系统时,根据系统要求,选用1个或多个上述模块,并结合被控对象运动特征进行控制。,下面是面向多轴联动经济型数控的可重构系统及重构方法专利的具体信息内容。

1.一种面向多轴联动经济型数控的可重构系统,包括上位控制系统、下位控制系统和
被控对象;
上位控制系统完成本工业控制系统的人机接口与控制、实现数据处理算法与数据处
理;
下位控制系统由嵌入式系统、控制专用集成电路与基本支撑电路构成;
嵌入式系统实现控制过程的管理调度、加工相关控制算法与硬件驱动功能;控制专用
集成电路接收嵌入式系统送出的指令信息,根据被控设备的要求,执行数据转换并将转换
后的指令数据送入相应控制电路,驱动被控对象的相应执行部件实现相应的动作;同时,控制专用集成电路采集被控对象的状态信息给嵌入式控制系统;基本支撑电路包括嵌入式处
理器、控制专用集成电路的电源、启动、时钟和外部存储电路;
其特征是所述控制专用集成电路的基本逻辑结构单元包括:SPI读模SpiRd、SPI写模
块SpiWr、指令译码模块DecInstr、PWM输出控制模块U1PwmDrv、AD采集转换控制模块
U0MaxDrv、开关量输出模块DigOutP、开关量输入模块DigInP、运动指令队列模块mInstr、运动指令执行控制模块ExeInst,以及:
XYZ三轴进给运动控制模块UXMtDrv、UYMtDrv、UZMtDrv或X/Y/Z/X1/Y1/Z1/W1七轴运动
控制模块U0MtDrv~U6MtDrv,进给运动控制模块功能、逻辑结构、实现电路相同;W轴运动控制模块UwJetMt,UwJetMt仅要求有速度控制,其余各轴要求速度、位移控制,同时具有联动控制的要求;
则通过附加AD采集与转换控制模块U1MaxDrv增加模拟量采集转换控制,其模块电路与
U0MaxDrv相同;
SpiRd与SpiWr共同实现SPI读写控制;
DigOutP与DigInP实现开关量输入/输出控制;
被控对象具有7个进给轴和1个主运动时,U0MtDrv~U6MtDrv与UwJetMt实现被控对象的
X、Y、Z、X1、Y1、Z1、W1进给轴与W向主运动控制;
被控对象具有3个进给轴和1个主运动时,UXMtDrv、UYMtDrv、UZMtDrv与UwJetMt实现被
控对象的X、Y、Z进给轴与W向主运动控制;
SpiWr接收SPI总线的MOSI、SCK与NSS信号,并执行数据解析与数据判别,计算指令码
CMD、指令数据DInst与数据序号DIndx,然后将计算结果送至DecInstr模块,执行指令译码;
SpiRd响应SPI总线的SCK与NSS信号,将SPI发送寄存器TBuf中的数据按照预定时序送
至SPI总线的MISO端口;
DecInstr接收SpiWr输出的指令数据,实现指令译码并执行部分指令;
a、收到运动指令,则计算mInstr指令队列写指针WrP,判断队列满状态QueF,并根据写
指针WrP,将数据入mInstr指令队列,等待指令执行控制模块ExeInstr处理;
b、收到PWM输出、采集转换或开关量输出指令,则DecInstr将指令参数送至相应PWM输
出、采集转换或开关量输出模块电路,启动U1PwmDrv、U0MaxDrv、U1MaxDrv或DigOutP,输出预定的PWM波形、启动采集转换或输出指定的开关量;
c、收到开关量输入、坐标采集、AD采集数据获取或运动状态采集指令,DecInstr检索相
应的寄存器DIBuf、MtCor、wData、wData1或MtBsy,并将其数据送至SPI发送寄存器TBuf,由SpiRd送至SPI总线;
MtCor寄存器中数据为各个方向的当前坐标信息,即U0MtDrv~U6MtDrv或UXMtDrv、
UYMtDrv、UZMtDrv送出的各个方向当前坐标Cor;
MtBsy寄存器中数据为各个轴的当前状态,即U0MtDrv~U6MtDrv或UXMtDrv、UYMtDrv、
UZMtDrv送出的各个方向当前忙闲状态Bsy;
DigOutP响应指令译码DecInstr送出的使能信号EnDO,将开关量输出缓冲DObuf的数据
送至SPI总线的开关量输出端口DO;
DigInP采集SPI总线的开关量输入端口DI,将相关的输入数据送入开关量输入缓冲
DIbuf,同时响应DecInstr输出的使能信号EnDI,将DIbuf的数据送至SpiRd的发送缓冲
TBuf,最后由SpiRd送出集成电路;U0MaxDrv、U1MaxDrv接收DecInstr送出的使能信号EnAd、EnAd1,产生外部AD器件需要的mSK、mSK1、mCS与mCS1控制信号;同时,U1MaxDrv以及
U0MaxDrv根据AD器件的时序要求动态采集SPI总线的串行数据端口DM1、DM,将获得的转换
数据送至寄存器wData1、wData;而后,DecInstr响应采集数据读取指令,将wData1、wData数据送至TBuf,由SpiRd送至SPI总线;
U1PwmDrv响应DecInstr送出的使能信号EnPWM,根据DecInstr输出的脉宽参数wDur与
脉间参数wInt输出指定的PWM波形;
ExeInstr接收DecInst送出的mInstr写指针WrP,获取mInstr的指令数据,计算各个运
动的方向Dr、mInstr的读指针RdP、运动段结束停止标志Stp与mInstr运动指令队列空标志
QueE,直接输出XYZW各运动轴或X/Y/Z/W/X1/Y1/Z1/W1各轴的方向控制信号;然后将指令速度Spd、位移Dis、运动方向Dr、运动段停止标志Stp送入指定的UXMtDrv、UYMtDrv、UZMtDrv与UwJetMt或U0MtDrv~U6MtDrv与UwJetMt,输出相应的驱动脉冲xCp、yCp、zCp、x1Cp、y1Cp、z1Cp、w1Cp与wCp,实现相应运动;X/Y/Z/W/X1/Y1/Z1/W1等各轴的运动方向也由ExeInstr实现,由ExeInstr根据指令直接输出。
2.根据权利要求1所述的可重构系统,其特征是:
a、三进给轴联动控制的运动指令执行模块ExeInstr的工作周期包括等待周期tW、运动
轴及方向设置周期tC0与第1-4运动轴的参数设置周期tC1-tC5;tC1-tC4按顺序依次对应XYZW轴的控制周期;按功能,XYZ轴的控制周期又分为速度设置周期tspd、位移设置周期tdis;W轴的控制周期只进行速度设置,只有速度设置周期tspd,而无位移设置周期tdis;考虑到指令队列的容量,应允许同一指令的不连续写入,例如mInstr被写满而一条指令又未写完时,允许系统等待至队列不满以后,再写入剩余的指令参数;此时,不同参数设置周期之间需要插入一个或多个tW等待周期。
周期tW、tC0(即tax-dr)、tC4、tC5(即tenMT)、tspd、tdis的时长对应一个基准时钟CLK周期,XYZ轴的设置周期tC1、tC2、tC3分别包括一个对应的速度设置周期周期tspd和一个对应的位移设置周期tdis,W的设置周期tC4只包括一个速度设置周期周期tspd,而无位移设置周期tdis。
b、七进给轴联动控制的运动指令执行模块ExeInstr的工作周期包含XYZWX1Y1Z1W1八
运动轴的控制,与三进给轴联动系统一致,整个控制循环包括等待周期tW、运动轴及方向设置周期tC0、各运动轴的参数设置周期tC1-tC8、运动启动周期tenMT;tC1-tC8按顺序依次对应XYZWX1Y1Z1W1轴的控制周期,进给运动轴XYZX1Y1Z1W1的控制周期包括速度设置周期tspd、位移设置周期tdis。W轴的控制周期只进行速度设置,只有速度设置周期tspd,而无位移设置周期tdis;系统允许同一指令的不连续写入;此时,不同参数设置周期之间需要插入一个或多个tW等待周期。
周期tW、tC0(即tax-dr)、tC4、tC9(即tenMT)、tspd、tdis的时长对应一个基准时钟CLK周期,XYZX1Y1Z1W1轴的设置周期tC1、tC2、tC3、tC5、tC6、tC7、tC8分别包括一个对应的速度设置周期周期tspd和一个对应的位移设置周期tdis,W的设置周期tC4只包括一个速度设置周期周期tspd,而无位移设置周期tdis。
c、七进给轴联动控制的运动指令执行模块ExeInstr与三进给轴联动控制的运动指令
执行模块ExeInstr功能兼容,即七进给轴联动控制的运动指令执行模块ExeInstr替代三进
给轴联动控制的运动指令执行模块ExeInstr,但结构复杂。
3.根据权利要求1所述的可重构系统,其特征是所述集成电路的指令集为:
1)指令格式及发送方法
指令的基本构成包括指令码与指令参数和指令码指明指令的操作内容,占用1字节;指
令参数指明执行指令所使用的参数,基本指令集指令占用4-18字节;
根据功能及完成的操作,系统指令分为运动指令与非运动指令两类,其中,运动指令用
来实现加工中所需要的运动;非运动指令用于设置加工参数、获取系统状态或者实现加工
运动之外的其它输出与输入控制;
指令发送采用16位的SPI过程实现,按照顺序,嵌入式控制系统通过SPI总线依次将指
令码、指令参数按字节顺序依次发至集成电路即完成指令传送;嵌入式控制系统获取执行
部件中的状态、坐标位置数据时,指令发送最后一个SPI周期时,同时收到所请求的16位数据;
2)基本指令集非运动指令
非运动指令包括开关量输出、开关量读入、模拟量输入、PWM输出、加速度设定、坐标读
取、状态读取等,其格式定义如下;
2.1)输出开关量
开关量输出用于设定16位的输出开关量,指令的基本构成如表1所示;指令码17H,字节
2与字节3分别为16位预置开关量数据的高字节DOH与低字节DOL;
表1开关量输出指令格式
指令码 字节1 字节2 字节3
17H 00H(未用) DOH DOL
设置输出开关量时,SPI首先送出指令码与字节1的数据1700H,而后SPI送出DOH与DOL
构成的16位数据,专用集成电路输出高低位字节分别为DOH与DOL的16位开关量;
2.2)输入开关量
开关量输入用于获取16位输入开关量的状态数据,指令的基本构成如表2所示;指令码
15H,参数字节1、2、3分别为00H、XXH与XXH;其中,XXH为任意数据;
表2开关量输入指令格式
指令码 字节1 字节2 字节3
15H 00H(未用) XXH XXH
获取输入开关量时,SPI首先送出指令码与字节1的数据1500H,而后SPI送出参数字节2
与参数字节3的数据XXXXH,同时收到输入开关量的16位状态数据;
2.3)使能操作
使能操作通过拉高/复位不同的标志位启动/禁止相应的系统设备,指令的基本构成如
表3所示;
表3使能操作指令格式
指令码1BH,参数字节1、2均为00H;字节3的D0位用于采集转换控制模块U0MaxDrv的启
止(1/0),D1位用于PWM输出控制模块U1PwmDrv的启动/禁止(1/0);其余位保留,以备系统扩展;
2.4)状态获取
状态获取指令主要用于在系统发出指令前,取得系统电路的工作状况,避免误操作,指
令的基本构成及相关含义如表4所示;指令码14H,参数字节1、2均为00H;字节3的D0、D1、D2位分别为X、Y、Z向运动的忙标志,D3位为采集转换控制模块的忙标志,D4、D5位分别为运动指令队列mInstr的满、空标志;
表4状态获取指令格式
参数字节1、2及参数字节3的其它位暂时未用到,可用作系统扩展;
2.5)模拟量输入
模拟量的输入需要首先启动采集转换控制,而后等待采集转换结束,获取转换结果;
2.5.1)启动数模转换:启动数模转换需首先根据表3所示的使能操作指令,禁止采集转
换,清除上次转换结果;而后,重启模块U0MaxDrv,开始新的采集转换;
2.5.2)等待转换结束:等待转换结束时,系统按照表4所示的指令获取系统状态,AdBsy
为“0”,获取模拟量输入结果;反之,继续等待;
2.5.3)获取模拟量:模拟量获取指令的基本构成如表5所示;指令码16H,参数字节1、2、
3分别为00H、XXH与XXH;其中,XXH为任意数据;
表5模拟量获取指令格式
指令码 字节1 字节2 字节3
16H 00H(未用) XXH XXH
获取模拟量的输入结果时,SPI首先送出16位数据1600H,高字节为指令码16H,低字节
为参数字节1的值00H,而后SPI送出参数字节2与参数字节3的数据XXXXH,同时收到的16位
数据的低12位即要获取的输入模拟量;
2.6)PWM参数设置及输出指令
PWM参数设置及输出指令包括PWM脉间设置、脉宽设置与PWM输出三种,分别用于PWM波
形的脉间、脉宽参数设定以及输出指定PWM波形;
2.6.1)PWM脉间设置:脉间参数设定单位μs,指令的基本构成如表6所示;指令码19H,字
节2与字节3分别为脉间wPulInt设定值的高八位wPulIntH与低8位wPulIntL;
表6 PWM脉间设置指令格式
指令码 字节1 字节2 字节3
19H 00H(未用) wPulIntH wPulIntL
执行PWM脉间设置时,SPI首先送出指令码与字节1的数据1900H,而后送出wPulIntH与
wPulIntH构成的16位脉间参数,实现PWM脉间设定;
2.6.2)PWM脉宽设置:脉宽参数设定指令的基本构成如表7所示;指令码1AH,字节2与字
节3分别为脉间wPulDur设定值的高八位wPulDurH与低8位wPulDurL;
表7 PWM脉宽设置指令格式
指令码 字节1 字节2 字节3
1AH 00H(未用) wPulDurH wPulDurL
脉宽设置方法与脉间设置类似,区别只是指令码不同;
2.6.3)PWM波形输出:PWM波形输出通过使能操作指令完成,指令格式见表3;设定脉宽
与脉间参数后,SPI首先送出使能操作码与数据字节1B00H;而后,外部处理器将PWM使能位置位,重新计算参数字节3;最后,外部处理器通过SPI将参数字节2(00H)与算好的参数字节
3发至专用集成电路,输出预定的PWM波形;
2.7)加速度设定
加速度设定用于设定XYZ向运动的加速度参数,便于简化指令,三轴运动采用同一加速
度,指令的基本构成如表8所示;
表8加速度设定指令格式
指令码 字节1 字节2 字节3
18H 00H(未用) mAccH mAccL
指令码18H,字节2与字节3分别为16位预置加速度的高字节mAccH与低字节mAccL;
2.8)坐标读取
坐标读取包括XYZ向坐标数据的获取,W轴只做正向或反向的转动,无坐标控制要求;指
令的基本构成如表9所示;XYZ向坐标获取的指令码分别为11H、12H与13H,参数字节1、2、3分别为00H、XXH与XXH;其中,XXH为任意数据;
表9坐标读取指令格式
指令码 字节1 字节2 字节3
11H/12H/13H 00H(未用) XXH XXH
获取坐标信息时,SPI首先根据要求送出指令码与字节1的数据1100H、1200H或1200H,
而后送出参数字节2与字节3构成的16位数据XXXXH,同时收到对应的16位坐标数据;
3)基本指令集运动指令
3.1)运动指令的一般格式
加工运动类型包括单向运动、两轴联动与XYW三轴联动;其中,单向运动又分为X、Y、Z与
W向运动;两轴联动又分为XY、YW与XW联动运动;运动指令也与运动分类逐一对应,格式如表
10所示;
表10运动指令一般格式
指令码10H,参数字节1未用,参数字节2为运动轴使能状况,D0-D4为依次为X、Y、Z与W运
动与否,置“1”,该轴运动;反之,该轴不参与运动;参数字节3为指令运动方向,D0-D4为依次为X、Y、Z与W轴运动方向,置“1”,该轴负向运动;反之,该轴正向运动;
参数字节4与5为运动的16位指令速度,单位:步/s;参数字节6与7为运动的16位指令位
移,单位为:步;按先后顺序依次分配给参与运动的X、Y、Z或W轴,W只设定运动速度,无位移参数;
3.2)单向运动指令
单向运动有X、Y、Z、W轴的正、反向运动共8种情况:
3.2.1)X单向运动:X单向运动指令的结构如表11所示;指令码10H,参数字节1未用,参
数字节2为01H,指明运动为X轴运动;参数字节3指明运动方向,00H为正向运动,01H为负向运动;参数字节4-5指定以“步”为单位的16位运动速度,参数字节6-7指明以“步”为单位的
16位运动位移量;
表11 X轴单向运动指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7
10H 00H(未用) 01H 00H正向/01H负向 16位指令速度 16位指令位移
3.2.2)Y单向运动:指令结构如表12所示;指令码10H,参数字节1未用,字节2为02H,指
定Y轴运动;字节3为00H,Y正向运动;为02H,Y负向运动;字节4-5与6-7分别指定16位速度与位移量;
表12 Y轴单向运动指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7
10H 00H(未用) 02H 00H正向/02H负向 16位指令速度 16位指令位移
3.2.3)Z单向运动:指令结构如表13所示;参数字节2为04H,指定Z轴运动;参数字节3为
00H,Z轴正向运动;为04H,Z负向运动;参数字节4-5与6-7分别指定16位速度与位移量;
表13 Z轴单向运动指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7
10H 00H(未用) 04H 00H正向/04H负向 16位指令速度 16位指令位移
3.2.4)W单向运动:指令结构如表14所示;参数字节2为08H,指定W轴运动;参数字节3为
00H,W轴正向旋转;为08H,W负向旋转;参数字节4-5指定W轴的16位运动速度/频率,W轴只执行转速控制,不执行位移控制;
表14 W轴单向运动指令格式
指令码 字节1 字节2 字节3 字节4-5
10H 00H(未用) 08H 00H正向/08H负向 16位指令速度
3.3)两轴联动控制指令
用于XY斜线运动或X/Y单向轨迹,按照运动轴,分XY、YW与XW联动3种;
3.3.1)XY联动:XY轴联动控制指令结构如表15所示;指令码仍为10H,参数字节2为03H,
指明运动轴为X、Y;参数字节3指明运动方向,参数00H-03H依次表示X正向Y正向、X负向Y正向、X正向Y负向、X负向Y负向运动;
表15 XY轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11
10H 00H(未用) 03H 00H-03H 16位X速度 16位X位移 16位Y速度 16位Y位移
参数字节4-5与6-7依次指定X向的16位运动速度与位移,参数字节8-9与10-11分别指
定Y向的16 位运动速度与位移;
3.3.2)YW联动:YW轴联动控制指令结构如表16所示;参数字节2为0AH,指明运动轴为Y、
W;参数字节3的参数00H、02H、08H、0AH依次指定Y正向W正向、Y负向W正向、Y正向W负向、Y负向W负向的指令运动方向;
表16 YW轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9
10H 00H(未用) 0AH 00H、02H、08H、0AH 16位Y速度 16位Y位移 16位W速度
参数字节4-5与6-7依次指定Y向的16位运动速度与位移,参数字节8-9指定W向的16位
运动速度;
3.3.3)XW联动:XW轴联动控制指令结构如表17所示;参数字节2为09H,指明运动轴为X、
W;参数字节2的参数00H、01H、08H、09H依次指定X正向W正向、X负向W正向、X正向W负向、X负向W负向的指令运动方向;
表17 XW轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9
10H 00H(未用) 09H 00H、01H、08H、09H 16位X速度 16位X位移 16位W速度
参数字节4-5与6-7依次指定X向的16位运动速度与位移,参数字节8-9指定W向的16位
运动速度;
3.3.4)XYW三轴联动控制指令
用于XY斜线轨迹,指令结构如表18所示;指令码仍为10H,参数字节2为0BH,指明运动轴
为X、Y与W;参数字节3指明运动方向,参数00-03H、08-0BH依次表示X正向Y正向W正向、X负向Y正向W正向、X正向Y负向W正向、X负向Y负向W正向、X正向Y正向W负向、X负向Y正向W负向、X正向Y负向W负向、X负向Y负向W负向的运动;
表18 XYW三轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-13
10H 00H(未用) 0BH 00-03H,08-0BH X速度 X位移 Y速度 Y位移 W速度
参数字节4-5与6-7依次指定X向的16位运动速度与位移,参数字节8-9与10-11分别指
定Y向的16位运动速度与位移,参数字节12-13指定W向的16位运动速度;
4)扩展指令集
4.1)两轴联动扩展指令
按照参与的运动轴,两轴联动扩展分为YZ与XZ轴联动4种形式,相关定义参考基本指令
集。
(1)YZ联动:
表19 YZ轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11
10H 00H(未用) 06H 00/02/04/06H(方向控制) 16位Y速度 16位Y位移 16位Z速度 16位Z位移 (2)XZ联动:
表20 XZ轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11
10H 00H(未用) 05H 00/01/04/05H(方向控制) 16位X速度 16位X位移 16位Z速度 16位Z位移
4.2)三轴联动扩展指令
(1)XYZ联动:
表21 XYZ三轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-13 字节14-15
10H 00H(未用) 07H 00-07H(方向控制) X速度 X位移 Y速度 Y位移 Z速度 Z位移 (2)XZW联动:
表22XZW三轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-13
10H 00H(未用) 0DH 方向控制 X速度 X位移 Z速度 Z位移 W速度
(3)YZW联动:
表22 YZW三轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-13
10H 00H(未用) 0EH 方向控制 Y速度 Y位移 Z速度 Z位移 W速度
4.3)四轴联动扩展指令
表23 XYZW四轴联动控制指令格式
指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-13 字节14-15 字节14-15
10H 00H 0FH 方向控制 X速度 X位移 Y速度 Y位移 Z速度 Z位移 W速度
5)扩充指令集
5.1)非运动扩充指令
(1)扩充使能操作:扩充使能操作与基本指令的使能操作兼容,扩充了附加AD采集与转
换控制U1MaxDrv的使能控制位,如表24所示;
表24扩充使能操作指令格式
字节3的D0与D1位功能不变,D0即U0MaxDrv的使能EnAd(1使能/0禁止),D1即U1PwmDrv
的使能EnPwm(1启动/0禁止);D2为新增附加AD控制模块U1MaxDrv的使能EnAd1,其余位保
留;
(2)扩充状态获取指令:兼容基本指令的状态获取指令,扩充了附加AD控制模块
U1MaxDrv、X1、Y1、Z1与W1的忙状态标志,如表25所示;
表25扩充状态获取指令格式
字节3的D0-D5不变,分别为X、Y、Z轴、U0MaxDrv忙标志、队列mInstr的空、满标志;D6、D7分别为x1、y1忙标志;字节2的D0为z1轴忙标志,D1为附加AD采集与转换控制U1MaxDrv的忙标志;
(3)附加模拟量获取指令:附加模拟量获取指令的基本构成如表26所示;指令码16H,参
数字节1、2、3分别为00H、XXH与XXH;其中,XXH为任意数据;
表26附加模拟量获取指令格式
指令码 字节1 字节2 字节3
26H 00H(未用) XXH XXH
(4)扩充坐标读取指令:包括X、Y、Z、X1、Y1、Z1与W1向坐标数据的获取,指令的基本构成如表27所示;XYZ向坐标获取指令码11-13H,X1、Y1、Z1与W1坐标获取指令码21-24H;
表27坐标读取指令格式
指令码 字节1 字节2 字节3
11-13H/21-24H 00H(未用) XXH XXH
5.2)扩充运动指令
扩充运动指令兼容基本运动指令与扩展运动指令,同时扩充了X1、Y1、Z1与W1的向运
动,指令格式如表28所示;
表28运动指令一般格式
字节2高4位D4-D7为X1、Y1、Z1与W1使能状况,D0-D4保持不变,为XYZW运动与否;字节3
高4位D4-D7为X1、Y1、Z1与W1运动方向;D0-D4不变,为依次为X、Y、Z与W轴运动方向;指令的第2-7字依次为第1-第3运动轴速度、位移参数;第8字为第4运动轴W的速度;第9-16依次为第5-8轴速度与位移;
上述指令为系统所有运动轴均参与运动的情况,系统轴不全参与运动时,指令参数按
照X、Y、Z、W、X1、Y1、Z1与W1的顺序依次分频运动参数;指令的其它使用方法与基本指令一致;
控制专用集成电路中,
U0MtDrv~U6MtDrv,这7个模块实现被控对象的X、Y、Z、X1、Y1、Z1与W1向的加工进给动
作;
UwJetMt模块实现被控被控部件的W向运动控制,W向运动只执行速度控制,而无位移或
旋转角度的控制;
执行加工运动控制时,ExeInstr全程协调和管控U0MtDrv~U6MtDrv以及UwJetMt,驱动
执行部件的对应的执行机构实现对应操作;
X、Y、Z、X1、Y1、Z1与W1向的进给动作控制分为运动处于刹车控制、运动处于升速控制、运动处于降速控制和运动处于匀速控制。
4.根据权利要求3所述的可重构系统,其特征是
X、Y、Z、X1、Y1、Z1与W1向运动的方向由运动控制指令给出,通过ExeInstr直接输出;运动的驱动脉冲由U0MtDrv~U6MtDrv这7个模块分别实现;
7个模块分别接收基准时钟CLK、DecInstr送出的运动加速度Acc、ExeInstr送出的指令
速度SpdI、指令位移Dis、运动使能G、运动方向DR以及本段结束后停止标志bStp,分别输出相应轴的驱动脉冲CP、运动方向的当前坐标Coor与运动忙标志Bsy;
U0MtDrv~U6MtDrv各自的构成包括运动控制时钟子模块Ck10KP、状态转换控制子模块
StaCon、刹车位移计算子模块CalDis、位移运算子模块DisCtrl、驱动脉冲子模块CPGen与速度计数计算子模块CalCnt;
Ck10KP利用基准时钟CLK实现进给运动的控制时钟信号Ck10K;
StaCon采集、输出进给运动控制参数,执行速度、位移判别与状态转换,实现进给运动
的全过程控制;
CalCnt获取当前运动速度,根据驱动脉冲原理计算对应的速度计数值tSpdCnt;
CPGen获取速度计数值,送出匹配的驱动脉冲驱动伺服电机,实现运动;
DisCtrl采样伺服电机的驱动脉冲,计算当前位移;
CalDis在当前运动轴不参与下一指令的运动时,获取刹车速度,计算当前进给运动的
刹车位移;
所述U0MtDrv~U6MtDrv这7个模块的逻辑实现包括:
1)控制时钟子模块Ck10KP
根据三维打印与其它经济型数控系统的运动速度、精度等的控制要求,系统基准时钟
CLK选择1MHz有源晶振,系统控制周期10μs,控制时钟频率设置100KHz,通过Ck10KP实现;
Ck10KP接收系统的基准时钟CLK,对CLK时钟执行10分频,得到100KHz的控制时钟信号
Ck10K;
2)状态转换控制子模块StaCon
StaCon实现运动状态转换与控制,ExeInstr置位运动使能G,StaCon启动运动过程,执
行运动状态转换控制,其基本过程包括运动准备及运动过程控制;
(1)运动准备:包括A.运动类型判别,B.初始参数设置;
A.运动类型判别.运动开始,StaCon获取DecInstr送出的加速度数据Acc、运动执行控
制模块ExeInstr送出的指令速度SpdI、位移Dis、方向DR以及本段结束后停止标志bStp,比较当前速度Spd与指令速度SpdI,结合运动结束停止标志bStp,执行运动升降速类型判别以及刹车与否判别;
B.初始参数设置.运动判别结束,StaCon将Spd送入CalCnt,计算当前速度计数值;如果
运动结束后停止,将SpdI作为刹车速度BrkSpd送入CalDis,计算刹车位移;而后,StaCon根据运动升降速类型,设置对应的运动升降速控制状态、使能CPGen、置位运动忙标志Bsy;
(2)运动过程控制:运动过程控制包括运动结束判别与运动状态转换;
A.运动结束判别:运动过程中,StaCon持续采样DisCtrl,获取当前位移iDisCur,到达
指令位移Dis,模块清除运动忙标志Bsy,结束运动;未达Dis,转入运动状态转换;
B.运动状态转换:
A)速度控制.控制时钟Ck10K到,StaCon采样CalCnt输出,获取计数值tSpdCnt,作为
SpdCnt送入CPGen,而后进入状态处理;
B)状态处理.而后,StaCon执行运动状态处理;
a、运动处于刹车控制,加速度选择-Acc,StaCon调用公式(10),执行加速度积分,重算
运动速度Spd,将Spd送入CalCnt,计算计数值tSpdCnt以备下次使用;
b、运动处于升速控制,若Spd积分,重算速度Spd并送入CalCnt,计算计数值tSpdCnt以备下次使用;若Spd≥SpdI,运动转入匀速控制;
c、运动处于降速控制,若Spd>SpdI,加速度选择-Acc,StaCon调用公式(10),执行加速
度积分,重算运动速度Spd并送入CalCnt,计算计数值tSpdCnt以备下次使用;
d、运动处于匀速控制,若bStp=‘1’,当前运动结束,停止本轴运动,StaCon采集
DisCtrl送出的当前位移iDisCur,剩余位移量小于或等于RemDis,运动转入刹车控制;
C)速度计算方法:
a、速度计算原理
设置速度单位“步/s”,加速度单位“mm/s”,设定运动步当量0.01mm,积分周期Δt与运动控制周期选择一致,设置为10μs,根据公式(4),k时刻的速度vk可表述为:
定义积分余数sigMak,sigMak为积分 对除数1000的余数,公式(6)演变为:
其中的int为取整运算,Rm为取小数运算,定义参数Spdk:
由于以“步/s”为单位的速度不存在小数值,Spdk实际为时刻k的运动速度:
b、计算公式
总结公式(6)-(9),速度计算采用公式(10)实现,其中的Rem()运算为对1000求余运算:
c、计算过程
执行加速度积分时,首先计算和式sigMaK-1+ak-1结果;计算算式
时,通过将和式sigMaK-1+ak-1的计算结果右移10位实现;计算Rem(sigMak-1+ak-1)时,直接取和式sigMaK-1+ak-1结果的低10位。
3)刹车位移计算子模块CalDis
CalDis获取DecInstr送出加速度Acc与StaCon送出的刹车速度BrkSpd计算刹车位移,
根据公式(5),计算刹车位移RemDis;
CalDis包括12位的乘电路与24位被除数、13位除数的除电路各一个;乘电路执行12位
速度的平方运算,速度取值0-4000步/s即0-40mm/s,占用12位数据;除电路实现24位的速度平方和与13位加速度的除运算;公式(5)中的1/2通过逻辑右移位实现,不通过专的除电
路完成;
4)速度计数计算子模块CalCnt
(1)实现原理
运动控制利用速度计数值对基准时钟计数,定时拉高/清零运动控制电机的脉冲输出
端口,实现伺服电机等距驱动脉冲的脉宽与脉间;假定运动速度v,单位“步/s”,基准时钟CLK频率fCLK,则速度计数值kC为:
kC=fCLK/2v                         (11)
根据公式(11)的原理,CalCnt获取状态转换控制StaCon送出的当前速度Spd,计算对应
计数值tSpdCnt,将其返回StaCon备用;设置运动步当量0.01mm,基准时钟CLK频率fCLK设置
1MHz,确定计数值tSpdCnt为:
5
tSpdCnt=5×10/Spd                  (12)
(2)实现过程
CalCnt通过20位被除数、12位除数的标准除电路来计算速度计数值tSpdCnt,其中被除
数为上式的固定值5×105,除数为12位速度Spd;
5)位移运算子模块DisCtrl
DisCtrl采样CPGen输出的驱动脉冲内部信号iCP并对其执行计数操作,计算运动的即
时位移iDisCur,而后将其送入状态转换控制StaCon,实现运动的状态控制;
同时,DisCtrl结合ExeInstr送出的运动方向DR,计算该向运动的当前坐标值Coor,作
为U0MtDrv~U6MtDrv这三个模块的输出;
6)驱动脉冲子模块CPGen
子模块CPGen输出伺服电机驱动脉冲CP,拖动伺服电机实现运动;CPGen接收并响应状
态转换控制子模块StaCon送出的使能标志CPEn,对1MHz基准脉冲CLK执行计数操作,达到脉冲计数值SpdCnt,模块输出取反,重启新一轮计数;如此往复循环,实现电机驱动脉冲;
CPGen同时将CP的同源信号iCP送至位移运算子模块DisCtrl,执行位移与坐标计算;
StaCon适时监测位移与坐标运算结果,到达指令位移后,即可禁止CPEn,结束当前运动。
5.根据权利要求4所述的可重构系统,其特征是UwJetMt只需实现运动的速度、方向控
制;W轴的方向信号由运动指令给出,通过ExeInstr直接输出,W向对应的电机运动控制是由速度计数计算子模块CalCnt与驱动脉冲子模块CPEn构成,二者的实现原理、功能与进给控
制相同;
CalCnt获取ExeInstr送出的W轴运动速度Spd,计算脉冲计数值SpdCnt,送至驱动脉冲
CPGen;受ExeInstr送出的W轴运动使能信号G控制,CPGen产生对应频率的运动驱动脉冲信
号CP。
6.根据权利要求5所述的可重构系统,其特征是ExeInstr协调控制U0MtDrv~U6MtDrv、
UwJetMt的联动动作,以实现各个轴的联动运动,包括两轴、三轴、四轴及其以上轴的直线与空间曲线运动联动;
a、直线联动
1)数据预处理:
本控制电路通过SPI总线接收含各联动轴的速度、位移的运动指令;
2)联动执行:
ExeInstr获取指令参数,根据联动轴序号同时复位使能寄存器中XYZW联动轴的使能
位,禁止各联动轴动作;而后,ExeInstr获取各联动轴的运动方向,设置参与联动各轴的方向控制信号;之后,ExeInstr根据指令数据写入参与联动各轴的速度、位移参数;最后,
ExeInstr再次同时置位使能寄存器中XYZW等各联动轴的使能位,生效各运动参数,开始联
动运动;
3)联动原理:
执行联动控制时,由于联动各轴的控制模块U0MtDrv~U6MtDrv与UwJetMt使用同一基准
时钟-1MHz 的时钟CLK,通过对CLK的分频控制运动电机的每一步动作,能够保证参与联动
各轴按指定速度、指定时间实现联动位移,从而保证联动运动的速度、位移、轨迹要求;
4)实现二维斜线联动:
由X、Y轴的扫描分速度与分位移数据,ExeInstr模块首先禁止XY运动,获取并设置XY方
向信号;而后,分别写入XY的速度及位移;最后,ExeInstr再次同时启动XY向运动,即实现XY的任意角度斜线扫描;
b、空间曲线运动联动
空间曲线运动轨迹通过多段空间直线逼近,粗、精插补实现;
1)数据预处理:
执行粗插补时,结合控制精度,先由上位机将空间曲线离散成一系列的空间直线段,分
别计算各轴的运动速度、位移、方向等参数,按照指令格式,形成系列空间直线运动指令,完成“粗插补”;而后,由本控制带电路所在的下位控制系统实现空间曲线运动,即“精插补”;
2)联动执行:
本控制电路通过SPI总线持续接收各段空间直线段的直线运动指令,并存入mInstr;响
应控制时钟Ck10K,ExeInstr读取mInstr,获取直线运动指令序列,按照禁止运动轴、写入运动参数、同时重启运动轴的动作顺序,逐条执行各直线运动指令,即实现预定的空间曲线运动,亦即精插补。
7.一种权利要求1所述可重构系统的系统重构方法,其特征是重构方法是
构造系统时,SPI读模块SpiRd、SPI写模块SpiWr、指令译码模块DecInstr、运动指令队
列模块、运动指令执行控制模块,这些控制模块数量各一;
PWM输出控制模块、AD采集转换控制模块、开关量输出模块、开关量输入模块、W轴运动
控制模块等均为标准重构模块,这些模块是根据系统对PWM、AD采集转换、开关量输入输出、W轴运动的数量要求增加;
进给运动控制模块UXMtDrv、UYMtDrv、UZMtDrv或X/Y/Z/X1/Y1/Z1/W1七轴运动控制模块
U0MtDrv~U6MtDrv结构、功能、实现电路相同,为标准重构模块;根据系统的运动轴数要求,使用1个或多个运动控制模块,实现多个运动;
系统重构过程为:
1)系统结构:根据系统实现结构与系统的进给轴数、主运动数、PWM、采集转换、开关量
输入输出等的数量要求,确定进给运动、主运动、AD采集、PWM、开关量控制等模块的数量;执行部件选择复杂多轴数控系统的进给伺服电机、主轴电机、机床本体等机构与对象;
2)指令系统:
三轴两联动经济型系统使用基本指令集、三进给轴联动控制的运动指令执行模块
ExeInstr或7进给轴联动的模块ExeInstr;
三进给轴联动经济型系统使用基本指令集与扩展指令集、三进给轴联动控制的运动指
令执行模块ExeInstr或7进给轴联动的模块ExeInstr;
复杂多轴联动经济型系统使用基本指令集、扩展指令集与扩充指令集、7进给轴联动的
模块ExeInstr;
3)上位控制系统:通过标准PC系统结合多轴联动数控系统专用的编辑、译码等处理软
件实现,数据处理结束,根据指令系统要求,将指令数据通过高速通信传至下位控制系统;
4)进给运动:包括1-7轴的进给运动,通过X单向~XYZX1Y1Z1W1七向伺服系统及电机通
用控制模块实现;
5)切削主运动:
主轴运动,主运动有精确的转速控制要求,或与进给运动有速度匹配要求时,可通过W
向伺服系统及控制模块实现;
转速精度要求不高,与进给运动无协调控制要求时,采用专用PWM控制模块、外部功放
电路与相应电机实现;
6)下位控制系统:通过标准嵌入式系统及一~七轴联动专用控制程序实现;
执行加工时,专用控制程序接受基本指令与扩展指令、扩充指令,将参数写入专用集成
电路,实现主轴、X单向~XYZX1Y1Z1W1七向进给轴的运动及其它功能;
下位控制系统定时采集坐标、行程并通过高速通信上送标准PC,实现显示更新;
7)专用集成电路:接收标准嵌入式系统发出的进给运动、主运动等控制指令,输出对应
于XYZWX1Y1Z1W1等电机、PWM控制等信号,驱动执行部件,实现对应功能;同时,收集坐标、行程开关等信息,定时响应标准嵌入式系统请求,送出对应数据信息;
8)行程等开关量输入:通过开关量输入模块及相应的转换电路实现;根据系统要求,增
加开关量输入输出模块扩展开关量;
9)其它开关控制需求:通过开关量输出模块及相应的转换、功放电路实现;
10)模拟量检测需求:通过AD采集与转换控制或附加AD采集与转换控制、必要的放大转
换电路,以实现最多两路的模拟量采集;根据系统要求,增加AD采集与转换控制模块扩展模拟量检测的数目;
结合工艺,构造复杂的多轴联动控制加工系统,遇到更为复杂的工业生产现场控制时,
则通过增加PWM控制模块、进给轴控制模块、W轴控制模块、AD采集与转换控制模块,适当修改上下位控制系统数据处理与专用控制程序、适当增加控制指令、修正执行控制ExeInstr
模块,构造更为复杂的加工控制系统。
8.根据权利要求7所述的系统重构方法,其特征是特征是
所述三轴两联动经济型系统包括FDM或其它三维打印、钻床或刨床等系统;
所述三进给轴联动经济型系统包括铣床车床等系统;
所述复杂多轴联动经济型系统包括进给多于3轴、多模拟量采集或多个功率控制或有
其它复杂控制需求的系统。

说明书全文

面向多轴联动经济型数控的可重构系统及重构方法

技术领域

[0001] 本技术方案属于数控技术领域,具体是一种面向多轴联动经济型数控的系统重构方法与可重构工业控制系统。

背景技术

[0002] 三维打印基于离散-堆积的观念,通过二维层面的加工实现空间三维形状,能够极大降低复杂三维结构的加工难度,是当前制造领域的一个重要研究内容。高性能加工控制方法及系统等均是三维打印领域的重要研究方向。结合三维打印在新型成型工艺、方法、材料与金属零件成型等方向的发展,研究低成本、高精度、高集成度、高可靠性、具有可扩展功能与重构功能的新型3D打印控制方法与经济型系统是该方面研究的重要内容。
[0003] 同时,个性化、差异化的社会需求也对生产系统的适应性、复杂度提出了更高的要求,适应多变市场、快速变化产品的低成本、高柔性、高复杂程度的经济型数控,是生产现场对加工系统的急迫要求。发明内容
[0004] 本发明根据上述状况,研究面向三维打印的控制技术,并加以扩充至面向其它典型多轴联动被控对象,基于高性能标准工业PC系统、嵌入式控制器以及专用控制集成电路,提出一种面向多轴联动经济型数控的可重构系统,包括上位控制系统、下位控制系统和被控对象;
[0005] 上位控制系统完成本工业控制系统的人机接口与控制、分层切片算法数据处理
[0006] 下位控制系统由嵌入式系统、控制专用集成电路与基本支撑电路构成;
[0007] 嵌入式系统实现控制过程的管理调度、加工相关控制算法与硬件驱动功能;控制专用集成电路接收嵌入式系统送出的指令信息,根据被控设备的要求,执行数据转换并将转换后的指令数据送入相应控制电路,驱动被控对象的相应执行部件实现相应的动作;同时,控制专用集成电路采集被控对象的状态信息给嵌入式控制系统;基本支撑电路包括嵌入式处理器、控制专用集成电路等的电源、启动、时钟、外部存储等电路;
[0008] 所述控制专用集成电路的基本逻辑结构单元包括:SPI读模SpiRd、SPI写模块SpiWr、指令译码模块DecInstr、PWM输出控制模块U1PwmDrv、AD采集转换控制模块U0MaxDrv、开关量输出模块DigOutP、开关量输入模块DigInP、运动指令队列模块mInstr、运动指令执行控制模块ExeInst,以及:
[0009] X/Y/Z/X1/Y1/Z1/W1轴运动控制模块U0MtDrv~U6MtDrv,这7个模块采用同种逻辑结构;W轴动作控制模块UwJetMt,UwJetMt仅要求有速度控制,其余各轴要求速度、位移控制,同时具有联动控制的要求;
[0010] 附加AD采集与转换控制模块U1MaxDrv,其模块电路与U0MaxDrv相同;
[0011] SpiRd与SpiWr共同实现SPI读写控制;
[0012] DigOutP与DigInP实现开关量输入/输出控制;
[0013] U0MtDrv~U6MtDrv与UwJetMt实现被控对象的X、Y、Z、X1、Y1、Z1、W1与W向运动控制;
[0014] SpiWr接收SPI总线的MOSI、SCK与NSS信号,并执行数据解析与数据判别,计算指令码CMD、指令数据DInst与数据序号DIndx,然后将计算结果送至DecInstr模块,执行指令译码;
[0015] SpiRd响应SPI总线的SCK与NSS信号,将SPI发送寄存器TBuf中的数据按照预定时序送至SPI总线的MISO端口;
[0016] DecInstr接收SpiWr输出的指令数据,实现指令译码并执行部分指令;
[0017] a、收到运动指令,则计算mInstr指令队列写指针WrP,判断队列满状态QueF,并根据写指针WrP,将数据入mInstr指令队列,等待指令执行控制模块ExeInstr处理;
[0018] b、收到PWM输出、采集转换或开关量输出指令,则DecInstr将指令参数送至相应PWM输出、采集转换或开关量输出模块电路,启动U1PwmDrv、U0MaxDrv或DigOutP,输出预定的PWM波形、启动采集转换或输出指定的开关量;
[0019] c、收到开关量输入、坐标采集、AD采集数据获取或运动状态采集指令,DecInstr检索相应的寄存器DIBuf、MtCor、wData或MtBsy,并将其数据送至SPI发送寄存器TBuf,由SpiRd送至SPI总线;
[0020] MtCor寄存器中数据为各个方向的当前坐标信息,即U0MtDrv~U6MtDrv送出的各个方向当前坐标Cor;
[0021] MtBsy寄存器中数据为各个轴的当前状态,即U0MtDrv~U6MtDrv送出的各个方向当前忙闲状态Bsy;
[0022] DigOutP响应指令译码DecInstr送出的使能信号EnDO,将开关量输出缓冲DObuf的数据送至SPI总线的开关量输出端口DO;
[0023] DigInP采集SPI总线的开关量输入端口DI,将相关的输入数据送入开关量输入缓冲DIbuf,同时响应DecInstr输出的使能信号EnDI,将DIbuf的数据送至SpiRd的发送缓冲TBuf,最后由SpiRd送出集成电路;U0MaxDrv接收DecInstr送出的使能信号EnAd,产生外部AD器件需要的mSK与mCS控制信号;同时,U1MaxDrv以及U0MaxDrv根据AD器件的时序要求动态采集SPI总线的串行数据端口DM,将获得的转换数据送至寄存器wData;而后,DecInstr响应采集数据读取指令,将wData数据送至TBuf,由SpiRd送至SPI总线;
[0024] U1PwmDrv响应DecInstr送出的使能信号EnPWM,根据DecInstr输出的脉宽参数wDur与脉间参数wInt输出指定的PWM波形;
[0025] ExeInstr接收DecInst送出的mInstr写指针WrP,获取mInstr的指令数据,计算各个运动的方向Dr、mInstr的读指针RdP、运动段结束停止标志Stp与运动指令队列空标志QueE;然后将指令速度Spd、位移Dis、运动方向Dr、运动段停止标志Stp送入指定的U0MtDrv~U6MtDrv或UwJetMt,输出相应的驱动脉冲0Cp~6Cp与wCp,实现相应运动;X/Y/Z/W/X1/Y1/Z1/W1的运动方向也由ExeInstr实现。
[0026] 一种上述可重构系统的系统重构方法:
[0027] SPI读模块SpiRd、SPI写模块SpiWr、指令译码模块DecInstr、运动指令队列模块、运动指令执行控制模块是系统的必备基本构成模块,构造系统时,数量各一;
[0028] PWM输出控制模块、AD采集转换控制模块、开关量输出模块、开关量输入模块、W轴运动控制模块等均为标准重构模块,可根据系统对PWM、AD采集转换、开关量输入输出、W轴运动的数量要求增加;
[0029] 进给运动控制模块UXMtDrv、UYMtDrv、UZMtDrv或X/Y/Z/X1/Y1/Z1/W1七轴运动控制模块U0MtDrv~U6MtDrv结构、功能、实现电路相同,为标准重构模块;根据系统的运动轴数要求,使用1个或多个运动控制模块,实现多个运动;
[0030] 系统实现与重构过程为:
[0031] 1)系统结构:根据系统实现结构与系统的进给轴数、主运动数、PWM、采集转换、开关量输入输出等的数量要求,确定进给运动、主运动、AD采集、PWM、开关量控制等模块的数量;执行部件选择复杂多轴数控系统的进给伺服电机主轴电机、机床本体等机构与对象;
[0032] 2)指令系统:采用前文所述,三轴两联动经济型系统(FDM及其它三维打印、钻床、刨床等系统)使用基本基本指令集、三进给轴联动控制的运动指令执行模块ExeInstr(也可用7进给轴联动的模块ExeInstr);三进给轴联动经济型系统(铣床车床等系统)使用基本基本指令集与扩展指令集、三进给轴联动控制的运动指令执行模块ExeInstr(也可用7进给轴联动的模块ExeInstr);复杂多轴联动经济型系统(进给多于3轴、多模拟量采集、多个功率控制等)使用基本基本指令集、扩展指令集与扩充指令集、7进给轴联动的模块ExeInstr;
[0033] 3)上位控制系统:通过标准PC系统结合多轴联动数控系统专用的编辑、译码等处理软件实现,数据处理结束,根据指令系统要求,将指令数据通过高速通信(一般采用高速串口)传至下位控制系统;
[0034] 4)进给运动:包括1-7轴的进给运动,通过X单向~XYZX1Y1Z1W1七向伺服系统及电机通用控制模块实现;
[0035] 5)切削主运动:主轴运动,主运动有较为精确的转速控制要求,或与进给运动有速度匹配要求时,可通过W向伺服系统及控制模块实现;转速精度要求一般,与进给运动无协调控制要求,可采用专用PWM控制模块、外部功放电路与相应电机实现
[0036] 6)下位控制系统:通过标准嵌入式系统及一~七轴联动专用控制程序实现;执行加工时,专用控制程序驱接受基本指令与扩展指令,将参数写入专用集成电路,实现主轴、X单向~XYZX1Y1Z1W1七向进给轴的运动及其它功能;下位控制系统定时采集坐标、行程并通过高速通信上送标准PC,实现显示更新;
[0037] 7)专用集成电路:接收标准嵌入式系统发出的进给运动、主运动等控制指令,输出对应于XYZWX1Y1Z1W1等电机、PWM控制等信号,驱动执行部件,实现对应功能;同时,收集坐标、行程开关等信息,定时响应标准嵌入式系统请求,送出对应数据信息;
[0038] 8)行程等开关量输入:通过开关量输入模块及相应的转换电路实现;可根据系统要求,增加开关量输入输出模块扩展开关量;
[0039] 9)其它开关控制需求:通过开关量输出模块及相应的转换、功放电路实现;
[0040] 10)模拟量检测需求:通过AD采集与转换控制或附加AD采集与转换控制、必要的放大转换电路,可实现最多两路的模拟量采集;可根据系统要求,增加AD采集与转换控制模块扩展模拟量检测的数目;
[0041] 结合工艺,可以构造较为复杂的多轴联动控制加工系统,遇到更为复杂的工业生产现场控制时,还可通过增加PWM控制模块、进给轴控制模块、W轴控制模块、AD采集与转换控制模块,适当修改上下位控制系统数据处理与专用控制程序、适当增加控制指令、修正执行控制ExeInstr模块,构造更为复杂的加工控制系统。附图说明
[0042] 图1是本例中面向FDM的工业控制系统的功能结构示意图;
[0043] 图2是面向FDM的工业控制系统的实现结构示意图;
[0044] 图3是面向FDM的工业控制系统专用集成电路(即本发明的控制电路)的逻辑结构示意图;
[0045] 图4是梯形加减速的加速度及速度曲线比较图(左图是加速度曲线,右图是速度曲线);
[0046] 图5是XYZ向运动控制模块的逻辑结构示意图;
[0047] 图6是W喷丝电机控制模块的逻辑结构示意图;
[0048] 图7是典型AD器件ADS7816的控制时序;
[0049] 图8是运动执行控制模块ExeInstr的工作时序示意图。
[0050] 图9是本例的复杂多轴联动可重构工业控制系统的实现结构示意图
[0051] 图10是以面向FDM为例的本控制系统的专用集成电路的逻辑结构示意图;
[0052] 图11是本例的运动执行控制模块ExeInstr的工作时序。

具体实施方式

[0053] 为了便于理解,下面先以较为简单的面向FDM简单的多轴联动经济型数控系统对本工业控制系统的原理进行说明。本工业控制系统是在此基础上实现复杂多轴联动控制。
[0054] 1.系统功能框架
[0055] 综合分析熔融沉积制造工艺的数据处理、扫描堆积加工成型过程,本文提出的面向FDM的一类经济型可重构工业控制系统的功能结构如图1所示。按照所完成的系统功能及控制任务,控制系统划分为上位控制系统、下位控制系统以及机床本体与执行部件三个构成单元。其中,上位控制系统通过高性能工业控制计算机及其支持软件实现,主要完成系统的人机接口与控制、分层切片算法与数据处理。支持用户的相关指令操作、加工参数、三维加工模型输入、模型离散化处理、加工指令生成传输、状态数据传送、显示。
[0056] 下位控制系统主要由嵌入式系统及软件、打印控制专用集成电路与基本支撑电路构成。其中,嵌入式控制系统实现打印控制过程的管理调度、单元控制算法与硬件驱动功能。执行打印控制时,管理调度程序执行根据预定策略,动态检索专用集成电路,获取机床设备的状态信息;而后,根据状态信息,调用相关算法控制程序,按照预定控制策略,动态调用相应硬件驱动控制,将相关控制数据送入集成电路,实现预定动作。
[0057] 下位控制系统的打印控制专用集成电路接收嵌入式系统及软件送出的指令信息,根据伺服电机、采集系统、加热电路的特定要求,执行数据转换并将转换后的指令数据送入相应控制电路,驱动相应设备实现相应的运动、加热、采集操作,实现打印扫描、堆叠、丝温检测与控制等功能。同时,打印控制专用集成电路响应嵌入式处理器的请求,及时采集并送出丝温、行程、极限开关等状态,供嵌入式控制系统检索。
[0058] 机床本体与执行部件主要包括机床本体、XY向扫描运动伺服系统与电机、Z向堆叠运动伺服系统与电机、W轴喷丝运动伺服系统与电机、丝温采集控制的AD转换及支持电路、喷丝加热功放电路、数字量I/O放大电路以及其它辅助控制与电路。其中,执行部件接收下位控制系统输出的标准控制信号,执行功率放大,驱动相应的电机、加热电路等设备,实现指令动作。同时,执行部件接收来自机床本体的行程开关、断电信号等数据,执行放大转换后,将其转化为标准信号,送入下位控制系统的专用集成电路,供嵌入式处理器检索。
[0059] 其它辅助控制及电路包括照明、电源开关、润滑等功能的控制,由机床本体的电气系统完成,不受下位控制系统直接控制。
[0060] 2.系统实现结构
[0061] 根据控制系统的基本功能结构与控制要求,结合模块功能的具体实现方法、实现过程以及指令操作控制的方便性要求等方面的综合考虑,本文提出的面向FDM熔融沉积成型及其它经济型数控的可重构系统实现结构如图2所示。便于系统实现、功能扩展、提高系统可靠性,上位控制系统通过标准工业PC构建。硬件采用标准工业PC实现,支持软件为主流操作系统、标准驱动程序与图形库,高速数据通信采用PC内置的RS232标准串口及传输协议。上位控制系统的专用算法及处理程序接收并处理三维CAD模型,根据工艺及控制系统硬件要求,生成加工控制文件,并依据基于RS232的专用通信协议将加工文件传至下位控制系统。
[0062] 下位的加工控制通过标准嵌入式系统与自行设计的打印控制专用集成电路实现。其中,嵌入式控制系统又包括了嵌入式处理器、启动电路、时钟电路以及下载电路等标准硬件与专用的打印控制程序;基于传输速度、传输距离、控制实时性等方面的考虑,嵌入式系统与专用集成电路之间的数据传送通过SPI总线协议实现,通信波特率36MBPS。通过标准嵌入式系统的专用控制程序,下位控制系统接收并解释高速通信端口送出的指令程序,驱动专用集成电路的多轴运动控制、PWM控制、AD转换与采集控制子模块,实现加工运动、丝温采集、喷丝加热等指令动作,加工指定三维实体零件。
[0063] 专用集成电路受嵌入式系统的指令控制,实现打印扫描、层面堆叠、丝温采集、打印喷丝等功能的直接控制;其中的XYZW向运动控制模块完成XY向的打印扫描、Z向的加工堆叠以及W轴的喷丝动作,输出XYZW轴伺服系统的驱动脉冲及方向控制信号,具体控制内容包括XYZ轴的方向、加速、速度、位移、联动、W轴的方向以及速度控制等;专用PWM控制模块接收标准嵌入式系统送出的PWM参数,输出符合预定占空比的PWM控制信号,驱动加热功放电路实现喷丝加热功率的适时调节;AD转换与采集控制模块根据来自SPI的指令要求,送出符合外部AD器件时序逻辑要求的控制信号,启动数据采集,获取即时喷丝温度
[0064] 开关量输入/输出控制模块接收机床设备端送出的行程、极限等开关信号,将其实时状态送入片内专用缓冲并响应指令上送系统;同时,模块根据系统指令,输出加工指示、运行状况等开关信号,实现设备状态指示;集成电路的寄存器与加工指令队列暂存运行参数、状态以及加工指令信息等数据,加工指令执行控制模块自行获取队列指令,执行指令译码,根据指令启动相关的控制模块,实现指令要求动作。
[0065] 3.集成电路逻辑结构及指令集设计
[0066] 3.1逻辑结构设计
[0067] 根据可重构控制系统的功能结构、实现结构,结合专用控制集成电路的功能要求、工作过程分析、与可重构系统其它构成模块间的输入输出逻辑关系,面向FDM的一类可重构控制系统专用集成电路的逻辑单元构成与逻辑关系结构如图3所示。
[0068] 专用集成电路的基本构成单元主要包括SPI读SpiRd、SPI写SpiWr、指令译码DecInstr、PWM输出控制U1PwmDrv、采集转换控制U0MaxDrv、开关量输出DigOutP、开关量输入DigInP、运动指令队列mInstr、运动指令执行控制ExeInstr、X向运动控制UxMtDrv、Y向运动控制UyMtDrv、Z向运动控制UzMtDrv与W轴运动控制UwJetMt。其中,SpiRd与SpiWr共同构成SPI读写控制,DigOutP与DigInP实现开关量输入/输出控制,UxMtDrv、UyMtDrv、UzMtDrv与UwJetMt实现XYZW向运动控制。
[0069] 集成电路的SpiWr模块接收SPI标准信号MOSI、SCK与NSS,执行数据解析与数据判别,计算指令码CMD、指令数据DInst与数据序号DIndx,将计算结果送至DecInstr模块,执行指令译码;SpiRd模块响应SPI信号SCK与NSS,将片内数据TBuf按照预定时序送至SPI端口MISO。
[0070] 模块DecInstr接收SpiWr输出的指令数据CMD、DIndx与DInstr,实现指令译码并执行部分指令。收到运动指令(如喷丝、进给等),模块计算mInstr指令队列写指针WrP,判断队列满状态QueF,根据写指针WrP,将数据写入mInstr指令队列,等待指令执行控制模块ExeInstr处理;收到PWM输出、采集转换、开关量输出等指令,模块DecInstr将指令参数送至相应模块电路,启动U1PwmDrv、U0MaxDrv或DigOutP模块,输出预定的PWM波形、启动采集转换或输出指定的开关量;收到开关量输入、XYZ坐标采集、AD采集数据获取、运动状态采集等指令,模块DecInstr检索相应的寄存器DIBuf、MtCor、wData、MtBsy并将其数据送至SPI发送寄存器TBuf,由SpiRd送至SPI总线。图中的信号MtCor为XYZ向的当前坐标信息,即UxMtDrv、UyMtDrv、UzMtDrv送出的XYZ当前坐标Cor;信号MtBsy为XYZ轴的当前状态,即UxMtDrv、UyMtDrv、UzMtDrv送出的XYZ当前忙闲状态Bsy。
[0071] 开关量输出DigOutP响应指令译码DecInstr送出的使能信号EnDO,将开关量输出缓冲DObuf的16位数据送至集成电路端口DO;开关量输入DigInP采集16路的开关量输入端口DI,将相关的输入数据送入缓冲DIbuf,同时模块响应DecInstr输出的使能信号EnDI,将DIbuf送至SpiRd的发送缓冲TBuf,由SpiRd送出集成电路;采集转换控制U0MaxDrv接受DecInstr送出的使能信号EnAd,产生外部AD器件需要的mSK与mCS控制信号。同时,模块U0MaxDrv根据AD器件的时序要求动态采集串行数据端口DM,将获得的转换数据送至寄存器wData。而后,DecInstr响应采集数据读取指令,将wData数据送至TBuf,由SpiRd送至SPI总线;PWM输出控制U1PwmDrv响应DecInstr送出的使能信号EnPWM,根据DecInstr输出的脉宽参数wDur与脉间参数wInt输出指定的PWM波形。
[0072] 执行控制ExeInstr接收指令译码DecInstr送出的mInstr写指针WrP,获取运动指令队列mInstr的指令数据,计算XYZW运动轴的方向Dr、mInstr的读指针RdP、运动段结束停止标志Stp与运动指令队列空标志QueE,将指令速度Spd、位移Dis、运动方向Dr、运动段停止标志Stp送入指定的XYZW控制模块UxMtDrv、UyMtDrv、UzMtDrv或UwJetMt,输出相应XYZW轴的驱动脉冲xCp、yCp、zCp与wCp,实现相应运动。特别说明,XYZW轴的运动方向也由执行控制模块ExeInstr实现。
[0073] 运动控制模块UxMtDrv、UyMtDrv、UzMtDrv实现打印XY向扫描与Z向堆叠运动,模块接收指令译码DecInstr输出的加速度设定值mAcc、执行控制ExeInstr模块送出的使能信号En、速度设定Spd、位移设定Dis、方向设定DR及运动段后接收标志Stp,输出相应方向的伺服电机驱动脉冲xCp、yCp与zCp,三向运动轴忙标志Bsy与三轴当前坐标Cor(即xCor、yCor、zCor),实现相应方向的加减速控制及相应轴电机的驱动;运动控制模块UwJetMt实现三维打印喷丝电机的喷丝动作,模块接收指令译码DecInstr输出的使能信号wEn、速度设定Spd,输出喷丝轴W的驱动脉冲wCp,便于简化电路,模块未设置加减速功能。
[0074] 3.2基本指令及基本指令集设计
[0075] 3.2.1指令格式及发送方法
[0076] 指令的基本构成包括指令码与指令参数,指令码指明指令的操作内容,占用1字节;指令参数指明执行指令所使用的参数,基本指令集指令占用4-18字节。根据功能及完成的操作,系统指令分为运动指令与非运动指令两类。其中,运动指令用来实现加工中所需要的运动;非运动指令用于设置加工参数、获取系统状态或者实现加工运动之外的其它输出与输入控制。
[0077] 指令发送采用16位的SPI过程实现,按照顺序,嵌入式CPU通过SPI依次将指令码、指令参数按字节顺序依次发至专用集成电路即完成指令传送;获取系统状态、坐标位置等数据时,指令发送最后一个SPI周期时,同时收到所请求的16位数据。
[0078] 3.2.2非运动指令
[0079] 非运动指令包括开关量输出、开关量读入、模拟量输入、PWM输出、加速度设定、坐标读取、状态读取等,其格式定义各不相同。
[0080] 1)输出开关量
[0081] 开关量输出用于设定16位的输出开关量,指令的基本构成如表1所示。指令码17H,字节2与字节3分别为16位预置开关量数据的高字节DOH与低字节DOL。
[0082] 表1 开关量输出指令格式
[0083]指令码 字节1 字节2 字节3
17H 00H(未用) DOH DOL
[0084] 设置输出开关量时,SPI首先送出指令码与字节1的数据1700H,而后SPI送出DOH与DOL构成的16位数据,专用集成电路输出高低位字节分别为DOH与DOL的16位开关量。
[0085] 2)输入开关量
[0086] 开关量输入用于获取16位输入开关量的状态数据,指令的基本构成如表2所示。指令码15H,参数字节1、2、3分别为00H、XXH与XXH。其中,XXH为任意数据。
[0087] 表2 开关量输入指令格式
[0088]指令码 字节1 字节2 字节3
15H 00H(未用) XXH XXH
[0089] 获取输入开关量时,SPI首先送出指令码与字节1的数据1500H,而后SPI送出参数字节2与参数字节3的数据XXXXH,同时收到输入开关量的16位状态数据。
[0090] 3)使能操作
[0091] 使能操作通过拉高/复位不同的标志位启动/禁止相应的系统设备,指令的基本构成如表3所示。
[0092] 表3 使能操作指令格式
[0093]
[0094] 指令码1BH,参数字节1、2均为00H。字节3的D0位用于采集转换控制模块U0MaxDrv的启止(1/0),D1位用于PWM输出控制模块U1PwmDrv的启动/禁止(1/0);其余位保留,以备系统扩展。
[0095] 4)状态获取
[0096] 状态获取指令主要用于在系统发出指令前,取得系统电路的工作状况,避免误操作,指令的基本构成及相关含义如表4所示。指令码14H,参数字节1、2均为00H。字节3的D0、D1、D2位分别为X、Y、Z向运动的忙标志,D3位为采集转换控制模块的忙标志,D4、D5位分别为运动指令队列mInstr的满、空标志。
[0097] 表4 状态获取指令格式
[0098]
[0099] 参数字节1、2及参数字节3的其它位暂时未用到,可用作系统扩展。
[0100] 5)模拟量输入
[0101] 模拟量的输入需要首先启动采集转换控制,而后等待采集转换结束,获取转换结果。
[0102] (1)启动数模转换:启动数模转换需首先根据表3所示的使能操作指令,禁止采集转换,清除上次转换结果。而后,重启模块U0MaxDrv,开始新的采集转换。
[0103] (2)等待转换结束:等待转换结束时,系统按照表4所示的指令获取系统状态,AdBsy为“0”,获取模拟量输入结果;反之,继续等待。
[0104] (3)获取模拟量:模拟量获取指令的基本构成如表5所示。指令码16H,参数字节1、2、3分别为00H、XXH与XXH。其中,XXH为任意数据。
[0105] 表5 模拟量获取指令格式
[0106] 指令码 字节1 字节2 字节316H 00H(未用) XXH XXH
[0107] 获取模拟量的输入结果时,SPI首先送出16位数据1600H(高字节为指令码16H,低字节为参数字节1的值00H),而后SPI送出参数字节2与参数字节3的数据XXXXH,同时收到的16位数据的低12位即要获取的输入模拟量。
[0108] 6)PWM参数设置及输出指令
[0109] PWM参数设置及输出指令包括PWM脉间设置、脉宽设置与PWM输出三种,分别用于PWM波形的脉间、脉宽参数设定以及输出指定PWM波形。
[0110] (1)PWM脉间设置:脉间参数设定单位μs,指令的基本构成如表6所示。指令码19H,字节2与字节3分别为脉间wPulInt设定值的高八位wPulIntH与低8位wPulIntL。
[0111] 表6 PWM脉间设置指令格式
[0112]指令码 字节1 字节2 字节3
19H 00H(未用) wPulIntH wPulIntL
[0113] 执行PWM脉间设置时,SPI首先送出指令码与字节1的数据1900H,而后送出wPulIntH与wPulIntL构成的16位脉间参数,实现PWM脉间设定。
[0114] (2)PWM脉宽设置:脉宽参数设定指令的基本构成如表7所示。指令码1AH,字节2与字节3分别为脉间wPulDur设定值的高八位wPulDurH与低8位wPulDurL。
[0115] 表7 PWM脉宽设置指令格式
[0116]指令码 字节1 字节2 字节3
1AH 00H(未用) wPulDurH wPulDurL
[0117] 脉宽设置方法与脉间设置类似,区别只是指令码不同。
[0118] (3)PWM波形输出:PWM波形输出通过使能操作指令完成,指令格式见表3。设定脉宽与脉间参数后,SPI首先送出使能操作码与数据字节1B00H;而后,外部处理器将PWM使能位置位,重新计算参数字节3;最后,外部处理器通过SPI将参数字节2(00H)与算好的参数字节3发至专用集成电路,输出预定的PWM波形。
[0119] 8)加速度设定
[0120] 加速度设定用于设定XYZ向运动的加速度参数,便于简化指令,三轴运动采用同一加速度,指令的基本构成如表8所示。
[0121] 表8 加速度设定指令格式
[0122]指令码 字节1 字节2 字节3
18H 00H(未用) mAccH mAccL
[0123] 指令码18H,字节2与字节3分别为16位预置加速度的高字节mAccH与低字节mAccL,设置方法与输出开关量类似,此处不再赘述。
[0124] 9)坐标读取
[0125] 坐标读取主要包括XYZ向坐标数据的获取,W轴只做正向或反向的转动,无坐标控制要求,指令的基本构成如表9所示。XYZ向坐标获取的指令码分别为11H、12H与13H,参数字节1、2、3分别为00H、XXH与XXH。其中,XXH为任意数据。
[0126] 表9 坐标读取指令格式
[0127]指令码 字节1 字节2 字节3
11H/12H/13H 00H(未用) XXH XXH
[0128] 获取坐标信息时,SPI首先根据要求送出指令码与字节1的数据1100H、1200H或1200H,而后送出参数字节2与字节3构成的16位数据XXXXH,同时收到对应的16位坐标数据。
[0129] 3.2.3运动指令
[0130] 1)运动指令一般格式
[0131] 系统的加工运动包括单向运动、两轴联动与XYW三轴联动三类。其中,单向运动又分为X、Y、Z与W向运动;,两轴联动又分为XY、YW与XW联动运动;运动指令也与运动分类逐一对应,一般格式如表10所示。
[0132] 表10 运动指令一般格式
[0133]
[0134] 指令码10H,参数字节1未用,参数字节2为运动轴使能状况,D0-D4为依次为X、Y、Z与W运动与否,置“1”,该轴运动;反之,该轴不参与运动;参数字节3为指令运动方向,D0-D4为依次为X、Y、Z与W轴运动方向,置“1”,该轴负向运动;反之,该轴正向运动;
[0135] 参数字节4与5为运动的16位指令速度,单位:步/s;参数字节6与7为运动的16位指令位移,单位为:步。按先后顺序依次分配给参与运动的X、Y、Z或W轴(W只设定运动速度,无位移参数)。
[0136] 2)单向运动指令
[0137] 单向运动有X、Y、Z、W轴的正、反向运动共8种情况
[0138] (1)X单向运动:X单向运动指令的结构如表11所示。指令码10H,参数字节1未用,参数字节2为01H,指明运动为X轴运动;参数字节3指明运动方向,00H为正向运动,01H为负向运动。参数字节4-5指定以“步/s”为单位的16位运动速度,参数字节6-7指明以“步”为单位的16位运动位移量。
[0139] 表11 X轴单向运动指令格式
[0140] 指令码 字节1 字节2 字节3 字节4-5 字节6-710H 00H(未用) 01H 00H正向/01H负向 16位指令速度 16位指令位移
[0141] (2)Y单向运动:指令结构如表12所示。指令码10H,参数字节1未用,字节2为02H,指定Y轴运动;字节3为00H,Y正向运动;为02H,Y负向运动。字节4-5与6-7分别指定16位速度与位移量。
[0142] 表12 Y轴单向运动指令格式
[0143] 指令码 字节1 字节2 字节3 字节4-5 字节6-710H 00H(未用) 02H 00H正向/02H负向 16位指令速度 16位指令位移
[0144] (3)Z单向运动:指令结构如表13所示。参数字节2为04H,指定Z轴运动;参数字节3为00H,Z轴正向运动;为04H,Z负向运动。参数字节4-5与6-7分别指定16位速度与位移量。
[0145] 表13 Z轴单向运动指令格式
[0146] 指令码 字节1 字节2 字节3 字节4-5 字节6-710H 00H(未用) 04H 00H正向/04H负向 16位指令速度 16位指令位移
[0147] (4)W单向运动:指令结构如表14所示。参数字节2为08H,指定W轴运动;参数字节3为00H,W轴正向旋转;为08H,W负向旋转。参数字节4-5指定W轴的16位运动速度(频率),W轴用作喷丝轴的喷丝动作或经济型数控的主轴旋转动作,只执行转速控制,不执行位移控制。
[0148] 表14 W轴单向运动指令格式
[0149]指令码 字节1 字节2 字节3 字节4-5
10H 00H(未用) 08H 00H正向/08H负向 16位指令速度
[0150] 3)两轴联动控制指令
[0151] 用于XY斜线运动或X/Y单向打印轨迹或数控切削轨迹,按照运动轴,分XY、YW与XW联动3种。
[0152] (1)XY联动:XY轴联动控制指令结构如表15所示。指令码仍为10H,参数字节2为03H,指明运动轴为X、Y;参数字节3指明运动方向,参数00H-03H依次表示X正向Y正向、X负向Y正向、X正向Y负向、X负向Y负向运动。
[0153] 表15 XY轴联动控制指令格式
[0154]
[0155]
[0156] 参数字节4-5与6-7依次指定X向的16位运动速度与位移,参数字节8-9与10-11分别指定Y向的16位运动速度与位移。
[0157] (2)YW联动:YW轴联动控制指令结构如表16所示。参数字节2为0AH,指明运动轴为Y、W;参数字节3的参数00H、02H、08H、0AH依次指定Y正向W正向、Y负向W正向、Y正向W负向、Y负向W负向的指令运动方向。
[0158] 表16 YW轴联动控制指令格式
[0159] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-910H 00H(未用) 0AH 00H、02H、08H、0AH 16位Y速度 16位Y位移 16位W速度
[0160] 参数字节4-5与6-7依次指定Y向的16位运动速度与位移,参数字节8-9指定W向的16位运动速度。
[0161] (3)XW联动:XW轴联动控制指令结构如表17所示。参数字节2为09H,指明运动轴为X、W;参数字节2的参数00H、01H、08H、09H依次指定X正向W正向、X负向W正向、X正向W负向、X负向W负向的指令运动方向。
[0162] 表17 XW轴联动控制指令格式
[0163] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-910H 00H(未用) 09H 00H、01H、08H、09H 16位X速度 16位X位移 16位W速度
[0164] 参数字节4-5与6-7依次指定X向的16位运动速度与位移,参数字节8-9指定W向的16位运动速度。
[0165] 4)XYW三轴联动控制指令
[0166] 用于XY斜线打印或数控切削轨迹,指令结构如表18所示。指令码仍为10H,参数字节2为0BH,指明运动轴为X、Y与W;参数字节3指明运动方向,参数00-03H、08-0BH依次表示X正向Y正向W正向、X负向Y正向W正向、X正向Y负向W正向、X负向Y负向W正向、X正向Y正向W负向、X负向Y正向W负向、X正向Y负向W负向、X负向Y负向W负向的运动。
[0167] 表18 XYW三轴联动控制指令格式
[0168] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-1310H 00H(未用) 0BH 00-03H,08-0BH X速度 X位移 Y速度 Y位移 W速度
[0169] 参数字节4-5与6-7依次指定X向的16位运动速度与位移,参数字节8-9与10-11分别指定Y向的16位运动速度与位移,参数字节12-13指定W向的16位运动速度。
[0170] 4.运动控制及实现
[0171] 系统的运动控制包括XYZ向加工进给运动与喷丝轴W向的喷丝运动,两类运动的要求及实现方法各不相同。其中,打印进给要求运动平稳、无冲击,有运动速度与位移控制的要求,通过X、Y、Z向的运动控制模块UxMtDrv、UyMtDrv与UzMtDrv实现;喷丝运动通过W向运动控制UwJetMt实现,相对于打印进给运动,喷丝运动功率小,速度低,只执行速度控制,而无位移或旋转角度的控制要求。
[0172] 执行加工运动时,执行控制模块ExeInstr全程协调、管控XYZ运动控制模块UxMtDrv、UyMtDrv、UzMtDrv以及W向喷丝运动控制模块UwJetMt,驱动对应的伺服电机实现三维打印操作。
[0173] 4.1进给控制原理
[0174] 4.1.1驱动方式
[0175] XYZW向的运动采用伺服电机拖动,驱动方法采用指令脉冲结合方向信号的方式。相对于其它控制方式,指令脉冲结合方向信号的方式接线、调试简单方便、易于实现。
[0176] 工作于指令脉冲方式时,伺服电机的驱动信号包括驱动脉冲与方向控制两个信号。其中,驱动脉冲的频率决定伺服电机的转速,脉冲频率越高,转速越快;频率越低,转速越慢;电机的旋转角度通过指令脉冲的个数控制,指令脉冲的个数越多,伺服电机的转角越大。
[0177] 方向信号的电平状态决定电机的旋转方向,控制伺服电机实现逆时针或顺时针方向的旋转运动。
[0178] 4.1.2加减速控制
[0179] 从简化计算、便于实现的角度出发,系统的打印进给运动通过梯形曲线加减速等实现。假定运动的加速度值aM,指令速度vM,初始速度值为“0“,完整梯形加减速过程的加速度与速度变化曲线如图4所示。
[0180] 根据速度变化特征,可以将梯形加减速的全过程划分为加速段、匀速段与减速段3个过程,分别对应于0-t0、t0-t1与t1-t2时间段。假定时刻t的加速度、速度分别为a(t)、v(t),则t时刻的加速度a(t)为:
[0181]
[0182] t时刻的速度v(t)为:
[0183]
[0184] 假定运动的初始速度v0,速度v还可以描述为:
[0185]
[0186] 假定系统采样时间为Δt,k时刻的速度、加速度分别设置为vk、ak,k时刻的速度vk离散化为:
[0187]
[0188] 根据公式(1)与(4),计算各个运动时刻的瞬时加速度与速度。而后,根据瞬时速度计算相应驱动脉冲计数值,产生符合运动速度与位移的电机驱动脉冲,即可实现相应方向运动的速度与位移控制。
[0189] 4.1.3进给运动控制策略设计
[0190] 1)运动分析及规划
[0191] 假定进给运动的当前速度v,指令速度vM,按照v与vM的对比关系、当前方向运动下一段是否继续等条件,将X、Y、Z轴的进给运动分为4种类型:升速结束运动、降速结束运动、升速持续运动、降速持续运动,分别设计控制策略。
[0192] (1)升速结束运动
[0193] ①运动特征:A.当前速度v≤指令速度vM;B.当前运动结束,该方向运动停止;C.运动包含升速、匀速与刹车3个运动段。
[0194] ②运动规划:根据进给所处的运动段规划运动速度与位移量。
[0195] A.升速段,定时执行加速度积分,计算即时速度与计数值,输出对应驱动脉冲,直到指令速度vM;
[0196] B.匀速段,根据vM计算刹车位移,速度不变,定时采集位移,刹车位移到,进入刹车段;
[0197] C.刹车段,定时执行加速度积分,计算速度与计数值,输出驱动脉冲,直至达到目标位移。
[0198] (2)降速结束运动
[0199] ①运动特征:A.当前速度v≥指令速度vM;B.当前运动结束,该方向运动停止;C.运动包含降速、匀速与刹车3个运动段。
[0200] ②运动规划:根据进给所处的运动段规划运动速度与位移量。
[0201] A.降速段,定时执行加速度积分,计算即时速度与计数值,输出对应驱动脉冲,直到指令速度vM;
[0202] B.匀速段,根据vM计算刹车位移,速度不变,定时采集位移,刹车位移到,进入刹车段;
[0203] C.刹车段,定时执行加速度积分,计算速度与计数值,输出驱动脉冲,直至达到目标位移。
[0204] (3)升速持续运动
[0205] ①运动特征:A.当前速度v≤指令速度vM;B.当前运动结束,该方向运动持续;C.运动包含升速、匀速2个运动段。
[0206] ②运动规划:根据进给所处的运动段规划运动速度与位移量。
[0207] A.升速段,定时执行加速度积分,计算即时速度与计数值,输出对应驱动脉冲,直到指令速度vM;
[0208] B.匀速段,定时采集位移,直到目标位移。
[0209] (4)降速持续运动
[0210] ①运动特征:A.当前速度v≥指令速度vM;B.当前运动结束,该方向运动持续;C.运动包含降速、匀速2个运动段。
[0211] ②运动规划:根据进给所处的运动段规划运动速度与位移量。
[0212] A.降速段,定时执行加速度积分,计算即时速度与计数值,输出对应驱动脉冲,直到指令速度vM;
[0213] B.匀速段,定时采集位移,直到目标位移。
[0214] 2)进给控制策略
[0215] A.相关概念
[0216] 刹车速度:系统执行刹车时的速度
[0217] 刹车位移:执行刹车时,运动由刹车速度降至速度0,期间产生的位移。假定刹车速度值vBRK,则根据梯形加减速的参数曲线,刹车位移sBRK为:
[0218]
[0219] 刹车位移的实质是系统执行刹车操作时,当前运动剩余的未完成位移量。
[0220] B.运动准备:获取运动参数,判断当前运动结束后该方向运动是否停止,运动停止,获取指令速度vM并作为刹车速度计算刹车位移;运动继续,则不执行刹车位移计算;比较当前速度v与指令速度vM,判别升/降速类型,确定加速度a(升速段取值aM,降速段取值-aM),进入对应的升/降速控制;
[0221] C.升/降速控制:定时执行梯形加速度积分,计算即时速度与计数值,输出驱动脉冲,直到指令速度vM;
[0222] D.匀速控制:若当前运动结束后该方向运动停止,系统定时采集位移,到达刹车位移后进入刹车控制;若当前运动结束后该方向运动持续,定时采集位移,直到指令位移;。
[0223] E.刹车控制,加速度a取值-aM,定时执行加速度积分,计算速度与计数值,输出驱动脉冲,直到指令位移。
[0224] F.异常控制,无论何种控制模式,达到指令位移,禁止系统输出,运动结束;升速控制时,达到指令位移1/2,系统进入刹车控制。
[0225] 4.2XYZ向运动控制的实现
[0226] 4.2.1控制模块的逻辑结构
[0227] X、Y、Z向运动控制模块UxMtDrv、UyMtDrv与UzMtDrv采用上述脉冲结合方向信号的模式实现相应运动电机的驱动,加减速控制通过梯形加减速完成。三个模块功能、要求类似,采用同种逻辑结构,主要构成如图5所示。
[0228] XYZW向运动的方向由运动控制指令给出,通过运动执行控制ExeInstr直接输出;运动的驱动脉冲由XYZ运动控制模块实现。
[0229] XYZ运动控制模块接收基准时钟CLK、指令译码模块DecInstr送出的运动加速度Acc、运动执行控制ExeInstr送出的指令速度SpdI、指令位移Dis、运动使能G、运动方向DR以及本段结束后停止标志bStp,输出X、Y与Z轴的驱动脉冲CP、运动方向的当前坐标Coor与运动忙标志Bsy。模块的主要构成包括运动控制时钟子模块Ck10KP、状态转换控制子模块StaCon、刹车位移计算子模块CalDis、位移运算子模块DisCtrl、驱动脉冲子模块CPGen与速度计数计算子模块CalCnt。
[0230] Ck10KP子模块利用基准时钟CLK,实现进给运动的控制时钟信号Ck10K;状态转换控制StaCon采集、输出进给运动控制参数,执行速度、位移判别与状态转换,实现进给运动的全过程控制;速度计数计算子模块CalCnt获取当前运动速度,根据驱动脉冲原理计算对应的速度计数值tSpdCnt;驱动脉冲子模块CPGen获取速度计数值,送出匹配的驱动脉冲驱动伺服电机,实现运动;位移运算子模块DisCtrl采样伺服电机的驱动脉冲,计算当前位移;刹车位移计算子模块CalDis在当前运动轴不参与下一指令的运动时,获取刹车速度,计算当前进给运动的刹车位移。
[0231] 4.2.2控制模块的逻辑实现
[0232] 1)控制时钟子模块Ck10KP
[0233] 根据三维打印与其它经济型数控系统的运动速度、精度等的控制要求,系统基准时钟CLK选择1MHz有源晶振,系统控制周期10μs,控制时钟频率设置100KHz,通过子模块Ck10KP实现。
[0234] Ck10KP接收系统的基准时钟CLK,对CLK时钟执行10分频,得到10KHz的控制时钟信号Ck10K。2)状态转换控制StaCon
[0235] 子模块StaCon实现运动状态转换与控制,运动执行控制ExeInstr置位运动使能G,StaCon启动运动过程,执行运动状态转换控制,其基本过程主要包括运动准备及运动过程控制。
[0236] (1)运动准备:包括A.运动类型判别,B.初始参数设置。
[0237] A.运动类型判别.运动开始,StaCon获取指令译码模块DecInstr送出的加速度数据Acc、运动执行控制模块ExeInstr送出的指令速度SpdI、位移Dis、方向DR以及本段结束后停止标志bStp,比较当前速度Spd与指令速度SpdI,结合运动结束停止标志bStp,执行运动升降速类型判别以及刹车与否判别。
[0238] B.初始参数设置.运动判别结束,StaCon将Spd送入CalCnt,计算当前速度计数值;如果运动结束后停止,将SpdI作为刹车速度BrkSpd送入CalDis,计算刹车位移。而后,StaCon根据运动升降速类型,设置对应的运动升降速控制状态、使能驱动脉冲子模块
CPGen、置位运动忙标志Bsy。
[0239] (2)过程控制:运动过程控制包括运动结束判别与运动状态转换。
[0240] A.运动结束判别.运动过程中,StaCon持续采样位移运算子模块DisCtrl,获取当前位移iDisCur,到达指令位移Dis,模块清除运动忙标志Bsy,结束运动;未达Dis,转入运动状态转换;
[0241] B.运动状态转换.
[0242] A)速度控制.控制时钟Ck10K到,StaCon采样CalCnt输出,获取计数值tSpdCnt,作为SpdCnt送入驱动脉冲子模块CPGen,而后进入状态处理;
[0243] B)状态处理.而后,StaCon执行运动状态处理。
[0244] (A)运动处于刹车控制,加速度选择-Acc,StaCon调用公式(10),执行加速度积分,重算运动速度Spd,将Spd送入CalCnt,计算计数值tSpdCnt以备下次使用;
[0245] (B)运动处于升速控制,若Spd
[0246] (C)运动处于降速控制,若Spd>SpdI,加速度选择-Acc,StaCon调用公式(10),执行加速度积分,重算运动速度Spd并送入CalCnt,计算计数值tSpdCnt以备下次使用;
[0247] (D)运动处于匀速控制,若bStp=‘1’(当前运动结束,停止本轴运动),StaCon采集DisCtrl送出的当前位移iDisCur,剩余位移量小于或等于RemDis,运动转入刹车控制。
[0248] C)速度计算方法
[0249] (A)速度计算原理
[0250] 设置速度单位“步/s”,加速度单位“mm/s”,设定运动步当量0.01mm,积分周期Δt与运动控制周期选择一致,设置为10μs,根据公式(4),k时刻的速度vk可表述为:
[0251]
[0252] 定义积分余数sigMak,sigMak为积分 对除数1000的余数,公式(6)演变为:
[0253]
[0254] 其中的int为取整运算,Rm为取小数运算,定义参数Spdk:
[0255]
[0256] 由于以“步/s”为单位的速度不存在小数值,Spdk实际为时刻k的运动速度,:
[0257]
[0258] (B)计算公式
[0259] 总结公式(6)-(9),速度计算采用公式(10)实现,其中的Rem()运算为对1000求余运算:
[0260]
[0261] (C)计算过程
[0262] 执行加速度积分时,电路模块首先计算和式sigMaK-1+ak-1结果。计算算式时,通过将和式sigMax-1+ak-1的计算结果右移10位实现;计算Rem
(sigMak-1+ak-1)时,直接取和式sigMax-1+ak-1结果的低10位。
[0263] 3)刹车位移计算子模块CalDis
[0264] CalDis获取指令译码模块送出加速度Acc与状态转换控制StaCon送出的刹车速度BrkSpd计算刹车位移,根据公式(5),计算刹车位移RemDis,单位:步(0.01mm)。
[0265] CalDis包括12位的乘电路与24位被除数、13位除数的除电路各一个。乘电路执行12位速度的平方运算,速度取值0-4000步/s(0-40mm/s),占用12位数据;除电路实现24位的速度平方和与13位加速度的除运算;公式(5)中的1/2通过逻辑右移位实现,不通过专的除电路完成,以节省资源。
[0266] 4)速度计数计算子模块CalCnt
[0267] (1)速度计数计算实现原理
[0268] 系统的运动控制利用速度计数值对基准时钟计数,定时拉高/清零运动控制电机的脉冲输出端口,实现伺服电机等距驱动脉冲的脉宽与脉间。假定运动速度v,单位“步/s”,基准时钟CLK频率fCLK,则速度计数值kC为:
[0269] kC=fCLK/2v   (11)
[0270] 根据公式(11)所述的原理,子模块CalCnt获取状态转换控制StaCon送出的当前速度Spd,计算对应计数值tSpdCnt,将其返回StaCon备用。设置运动步当量0.01mm,基准时钟CLK频率fCLK设置1MHz,可以确定计数值tSpdCnt为:
[0271] tSpdCnt=5×105/Spd  (12)
[0272] (2)实现过程
[0273] CalCnt通过20位被除数、12位除数的标准除电路来计算速度计数值tSpdCnt,其中被除数为上式的固定值5×105,除数为12位速度Spd。
[0274] 5)位移运算子模块DisCtrl
[0275] 子模块DisCtrl采样CPGen子模块输出的驱动脉冲内部信号iCP并对其执行计数操作,计算运动的即时位移iDisCur,而后将其送入状态转换控制StaCon,实现运动的状态控制;
[0276] 同时,DisCtrl结合运动执行控制模块ExeInstr送出的运动方向DR,计算该向运动的当前坐标值Coor,作为运动控制模块的输出。
[0277] 6)驱动脉冲子模块CPGen
[0278] 子模块CPGen输出伺服电机驱动脉冲CP,拖动伺服电机实现运动。CPGen接收并响应状态转换控制子模块StaCon送出的使能标志CPEn,对1MHz基准脉冲CLK执行计数操作,达到脉冲计数值SpdCnt,模块输出取反,重启新一轮计数;如此往复循环,实现电机驱动脉冲。
[0279] CPGen同时将CP的同源信号iCP送至位移运算子模块DisCtrl,执行位移与坐标计算;StaCon适时监测位移与坐标运算结果,到达指令位移后,即可禁止CPEn,结束当前运动。
[0280] 4.3喷丝/主轴运动控制UwJetMt(在FDM系统中,控制W主轴为控制喷丝电机)
[0281] 不同于XYZ向的运动,喷丝电机的运动控制相对简单,无需执行加减速、位移控制,只需实现运动的速度、方向控制即可。W轴喷丝电机的方向信号也是由运动指令给出,通过模块ExeInstr直接输出,W喷丝电机运动控制的逻辑结构如图6所示。
[0282] 图6所示的控制结构实现电机驱动脉冲输出,由速度计数计算子模块CalCnt与驱动脉冲子模块CPEn构成,二者的实现原理、功能与进给控制相同。CalCnt获取ExeInstr送出的W轴运动速度Spd,计算脉冲计数值SpdCnt,送至驱动脉冲CPGen;受ExeInstr送出的W轴运动使能信号G控制,CPGen产生对应频率的喷丝运动驱动脉冲信号CP
[0283] 4.4联动控制
[0284] 通过模块ExeInstr协调控制UxMtDrv、UyMtDrv、UzMtDrv与UwJetMt的动作,可以实现XYZ以及W轴的联动运动,包括两轴、三轴与四轴的直线与曲线联动运动。
[0285] 4.4.1直线联动
[0286] 1)数据预处理:
[0287] 执行直线联动时,下位控制系统的嵌入式CPU计算各联动轴的速度、位移,结合指令格式与指令集生成指令,而后将指令通过SPI总线送入专用集成电路。
[0288] 2)联动执行:
[0289] 专用集成电路的ExeInstr模块获取指令参数,根据联动轴序号同时复位使能寄存器中XYZW联动轴的使能位,禁止各联动轴动作;而后,ExeInstr获取各联动轴的运动方向,设置参与联动各轴的方向控制信号;之后,ExeInstr根据指令数据写入参与联动各轴的速度、位移参数;最后,ExeInstr模块再次同时置位使能寄存器中XYZW各联动轴的使能位,生效各运动参数,开始联动运动。
[0290] 3)联动原理:
[0291] 执行联动控制时,由于联动各轴的控制模块UxMtDrv、UyMtDrv、UzMtDrv与UwJetMt使用同一基准时钟-1MHz的时钟CLK,通过对CLK的分频控制运动电机的每一步动作,能够保证参与联动各轴按指定速度、指定时间实现联动位移,从而保证联动运动的速度、位移、轨迹要求。
[0292] 4)FDM联动:
[0293] FDM三维打印的运动仅有XY向扫描运动的联动要求,用于实现二维层面扫描边界的任意角度斜线的加工轨迹。
[0294] 实现斜线扫描轨迹时,下位控制系统的嵌入式CPU根据轨迹参数及速度数据分别计算X、Y轴的扫描分速度与分位移,根据指令格式写入集成电路;专用集成电路的ExeInstr模块首先禁止XY运动,获取并设置XY方向信号;而后,分别写入XY的速度及位移;最后,ExeInstr再次同时启动XY向运动,即实现XY的任意角度斜线扫描。
[0295] 4.4.2空间曲线运动
[0296] 数控系统的三维曲线运动需要多运动轴的联动,其实现较直线联动复杂。由于牵涉到空间曲线参数的计算,运算速度、复杂程度较高,需要上位控制系统PC机的参与。空间曲线运动轨迹通过多段空间直线逼近,即所谓的粗、精插补实现。
[0297] 1)数据预处理:
[0298] 执行粗插补时,结合控制精度,上位控制系统的工业PC对空间曲线执行离散化操作,将空间曲线离散成一系列的空间直线段,分别计算各轴的运动速度、位移、方向等参数,按照指令格式,形成系列空间直线运动指令,完成所谓的“粗插补”。
[0299] 而后,通过高速数据通信,工业PC将系列空间直线运动指令送入下位控制系统,由下位控制系统实现空间曲线运动,即所谓的“精插补”。
[0300] 2)联动执行:
[0301] 通过SPI总线,下位控制系统的嵌入式CPU将收到的系列直线运动指令持续送入专用集成电路,存入指令队列mInstr。响应控制时钟Ck10K,ExeInstr读取mInstr,获取直线运动指令序列,按照禁止运动轴、写入运动参数、同时重启运动轴的动作顺序,逐条执行各直线运动指令,即实现预定的空间曲线运动,亦即“精插补”。
[0302] 5.丝温加热及采集控制
[0303] 丝温控制通过下位控制系统的丝温控制算法、丝温加热控制与喷丝温度采集控制实现。执行喷丝温度控制时,下位控制系统的嵌入式CPU定时采集喷丝温度,根据丝温设定计算温度偏差,调用丝温控制算法计算加热控制PWM信号的占空比,结合1MHz的基准时钟计算PWM的脉宽、脉间计数值,将其送入专用集成电路,输出相应的PWM控制信号,驱动相应电路加热喷丝,实现相应喷丝温度。
[0304] 5.1丝温加热与模拟量输出控制
[0305] 丝温加热与模拟量输出控制通过PWM输出控制模块U1PwmDrv实现对喷丝加热功率的控制。U1PwmDrv接收指令译码DecInstr模块送出的PWM波形脉宽计数值wDur、脉间计数值wInt与使能控制信号EnPWM,输出信号PWM,控制喷丝加热。
[0306] 执行喷丝加热操作时,SPI分别向专用集成电路发出PWM脉宽设置指令与脉间设置指令,设定PWM的脉宽与脉间参数;而后,置位PWM使能位EnPWM,启动PWM输出控制模块U1PwmDrv;U1PwmDrv响应并对1MHz的基准时钟CLK执行脉宽/脉间计数,计数值达到wDur/wInt,U1PwmDrv取反输出端口信号PWM,转入脉间/脉宽计数;如此循环往复,实现预定的PWM波形,拖动外部加热电路实现喷丝加热功率控制。
[0307] PWM输出控制模块U1PwmDrv还可用于切削主轴电机等的控制,转速或其它控制量通过占空比调节。
[0308] 5.2丝温采集及模拟量输入控制
[0309] 丝温采集通过模拟量输入控制模块U0MaxDrv实现,控制面向的外部AD器件为典型12位AD转换器件ADS7816,器件的控制时序如图7所示。
[0310] 执行丝温采集时,温度传感器将标准的5v温度采集量或其它模拟量送入ADS7816,由专用集成电路的采集转换控制U0MaxDrv完成温度/模拟量的采集与转换。
[0311] U0MaxDrv接收指令译码DecInstr送出的使能控制信号EnAd,输出mCS、mSK启动ADS7816执行模数转换并根据图7所示协议传输数据;
[0312] 转换结束,ADS7816响应U0MaxDrv送出的数据时钟mSK,将采集数据按位依次送至U0MaxDrv模块的DM端;U0MaxDrv根据mSK采样DM端口获取各数据位,将数据送入wData;
[0313] 最后,SPI发出模拟量获取指令,指令译码模块DecInstr获取采集数据wData,将其通过缓冲器TBuf送至SpiRd,由SpiRd将数据发至下位控制系统的嵌入式CPU。
[0314] 6.运动执行控制ExeInstr
[0315] 三维打印XYZ向进给运动、W向喷丝运动及其协调控制通过运动指令执行控制ExeInstr实现。执行系统运动时,ExeInstr从指令队列mInstr获取指令,修正队列读指针pRd与队列空标志QueE,获取并分配运动参数,协调控制XYZW向运动控制模块执行相应运动。队列mInstr的读指针pRd与写指针pWr分别指向1字(2字节)的数据,模块ExeInstr的工作时序如图8所示。
[0316] ExeInstr的工作周期包括等待周期tW、运动轴及方向设置周期tC0与第1-4运动轴的参数设置周期tC1-tC5;tC1-tC4按顺序依次对应XYZW轴的控制周期,又分为速度设置周期tspd、位移设置周期tdis。考虑到指令队列的容量,应允许同一指令的不连续写入,例如mInstr被写满而一条指令又未写完时,允许系统等待至队列不满以后,再写入剩余的指令参数;此时,不同参数设置周期之间需要插入一个或多个tW等待周期。
[0317] 周期tW、tC0(即tax-dr)、tC4、tC5(即tenMT)、tspd、tdis的时长对应一个基准时钟CLK周期,XYZ轴的设置周期tC1、tC2、tC3分别包括一个对应的速度设置周期周期tspd和一个对应的位移设置周期tdis,W的设置周期tC4只包括一个速度设置周期周期tspd,而无位移设置周期tdis。
[0318] 系统运行过程中,模块ExeInstr响应基准时钟CLK,执行图8所示操作时序;CLK到,ExeInstr检索XYZ向运动忙标志Bsy与指令队列mInstr空标志QueE;QueE或任一向的Bsy标志置位,ExeInstr插入等待周期tW;QueE与XYZ向的Bsy标志均为“0”,ExeInstr读取1字(2字节)的mInstr队列数据,执行周期tax-dr,获取1字节的运动轴使能状况与1字节的运动轴方向;而后,ExeInstr模块根据指令格式,按照运动轴使能状况字节的数据位顺序,由低到高依次检索XYZW轴的使能状况,将指令中参与运动各轴的使能标志En拉低,禁止指令运动轴动作,准备写入运动参数;而后,ExeInstr模块根据指令格式,按照运动方向字节的数据位顺序,由低到高依次检索XYZW轴的运动方向并输出相应的运动方向DR;之后,ExeInstr将队列mInstr的读指针pRd加一,比较读写指针pWr与pRd;二者相等,置位mInstr的空标志QueE,队列数据取空;反之,不执行任何处理;最后,ExeInstr等待下一个CLK时钟,进入各轴的运动参数设置。
[0319] 执行各轴的运动参数设置时,ExeInstr响应时钟CLK,按照顺序依次进入周期tC1-tC4,设置第1-4最多4个运动轴的参数设置。进入tC1的tspd周期,若QueE置位,插入等待周期tW;反之,ExeInstr检索指令使能状况字节的D0位(X使能位),若为“1”,读取2字节mInstr数据,送入X速度Spd;而后,读指针pRd加一,与pWr比较并修改空标志QueE,完成X速度设定;而后,等待CLK,进入X位移设置tdis;X使能位为“0”,直接进入X位移设置tdis。进入tC1的tdis周期,QueE置位,插入tW;反之,ExeInstr获取使能状况字节的D0位(X使能位),若为“1”,取2字节mInstr数据送入X位移Dis;随后读指针pRd加一,与pWr比较并修改空标志QueE,完成X位移设定;而后,等待CLK,进入tC2;X使能位为“0”,直接进入周期tC2,Y轴参数设置。
[0320] Y、Z轴参数设置与X轴类似,此处不再详细介绍。XYZ轴的参数设置完成后,ExeInstr进入W轴参数设置。此时,ExeInstr响应CLK,写入W轴运动速度即完成所有运动轴的参数设置。而后,ExeInstr进入tC5,参数生效周期。CLK再次来临,ExeInstr按照指令的运动轴使能状况字节,置位XYZW各运动轴的使能位,即启动运动轴,执行预定指令。此时,ExeInstr进入等待状态,根据CLK定时采用XYZ轴的忙标志,全部空闲时,ExeInstr再次读取队列mInstr,获取并执行新的指令。
[0321] 系统运行过程中,模块ExeInstr持续监测队列写指针pWr,有新的运动指令或指令数据写入,pWr发生变化,ExeInstr立即清零空标志QueE,准备指令读取及执行。
[0322] 7.其它控制
[0323] 其它控制包括SPI读SpiRd、SPI写SpiWr、指令译码DecInstr,开关量输出DigOutP、开关量输入DigInP、运动指令队列mInstr。
[0324] 1)SPI读控制SpiRd
[0325] SPI读模块SpiRd执行并-串转换,响应串行数据时钟SCK,将集成电路发送缓冲区的16位数据按照由高到低的顺序,依次送上SPI数据端MISO,供下位控制系统的嵌入式CPU检索。
[0326] 执行读操作时,嵌入式CPU需要根据指令送出指令码与字节1,而后,再次发出任意数据,在SPI的接受缓冲区即受到指令请求的数据。
[0327] 2)SPI写控制SpiWr
[0328] SPI写模块SpiWr执行串-并转换,响应串行数据时钟SCK,按照由高到低的顺序依次接收来自SPI数据端MOSI的数据,形成16位并行数据。
[0329] 本文系统的SPI写SpiWr默认系统第一次写入的16位数据的高8位为指令码,根据指令码结合指令集判断参数个数、参数序号以及参数写入是否结束;参数写入完成,SpiWr再次转入指令周期,等待新指令3)指令译码DecInstr
[0330] 指令译码DecInstr获取SPI写控制SpiWr送出的指令Cmd、参数序号Dindx与指令数据Dinst,根据指令Cmd将参数送入并启动对应的控制模块,实现指令。
[0331] (1)指令为开关量输入、状态获取、模拟量获取、坐标获取等指令,DecInstr在SPI送出指令码字节之后,字节1发送结束之前,将对应的开关量输入、状态获取、模拟量输入、坐标寄存器内容送入SPI的发送缓冲TBuf。而后,SPI发送XXXXH(即任意16位数据),SpiRd将Tbuf由高到低,响应数据时钟依次将TBuf各位送上MISO,送至下位控制系统的嵌入式CPU。
[0332] (2)指令为开关量输出、使能操作、PWM脉间/脉宽设置、加速度设置等指令,DecInstr获取指令码与指令参数,将指令参数送入对应的开关量输出端口、使能标志位、脉宽/脉间参数寄存器、加速度寄存器。
[0333] (3)获取模拟量输入需要多条指令才能实现。此时,需要首先执行使能操作,禁止AD采集与转换控制模块U0MaxDrv动作,而后再次使能模块U0MaxDrv,输出符合ADS7816器件时序的控制信号波形,采集转换外部模拟量,并获得转换数据;之后,执行状态获取指令,获取U0MaxDrv的忙状态,不忙则转换结束,通过模拟量获取指令取得转换数据。
[0334] (4)收到运动指令,模块DecInstr将指令码与参数字节按字顺次存入运动指令队列mInstr,计算写指针pWr并与读指针pRd比较,相等,置位mInstr满标志QueF;同时,指令译码模块DecInstr监测读指针pRd,一旦发生读操作,立即清除满标志QueF。
[0335] 4)开关量输出DigOutP:DigOutP接收指令译码模块DecInstr送出的启动信号EnDO与输出数据DObuf,EnDO为高,将DObuf数据送出开关量输出端口DO。
[0336] 5)开关量输入DigInP:DigInP接收指令译码模块DecInstr送出的启动信号EnDI与外部输入DI,EnDI为高,DigInP将16位DI数据送入DIbuf,进入DecInstr模块。
[0337] 6)运动指令队列mInstr:mInstr为20字节的先入先出电路,其写入操作由指令译码DecInstr完成,包括满标志QueF与写指针pWr的操作;其读出操作由运动执行模块ExeInstr完成,包括空标志QueE与写指针pRd的操作;
[0338] 8.面向FDM的三维打印数控系统的构建
[0339] 采用上述的方法,可以实现以FDM加工为代表的一类经济型数控系统,包括FDM加工系统、SLA加工系统等。
[0340] 1)系统结构:采用图1的功能结构与图2所示的实现结构。
[0341] 2)指令系统:采用前文所述的基本指令格式与指令集。
[0342] 3)上位控制系统:通过标准PC系统结合FDM专用数据处理软件实现,处理结束,根据指令系统要求,将指令数据通过高速通信(一般采用高速串口)传至下位控制系统。
[0343] 4)打印运动:包括扫描、堆叠、喷丝等,扫描通过XY向伺服系统及控制模块实现,堆叠通过Z向伺服系统及控制模块实现,喷丝运动通过W向伺服系统及控制模块实现。
[0344] 5)喷丝加热及采集:包括丝温加热、丝温采集控制。丝温加热通过PWM控制模块及加热电路,控制电路加热通断,实现功率控制。丝温采集通过丝温采集及模拟量输入控制模块实现。
[0345] 6)下位控制系统:通过标准嵌入式系统及专用控制程序实现。打印加工时,专用控制程序驱动丝温采集模块定时获取喷丝温度,计算温度偏差,通过PID算法计算喷丝加热控制的PWM占空比,实现喷丝温度控制。同时接受指令,将参数写入专用集成电路,实现加工。下位控制系统定时采集坐标、温度、行程并通过高速通信上送标准PC,实现显示更新。
[0346] 7)专用集成电路:接收标准嵌入式系统发出的喷丝加热、温度采集、扫描、喷丝、堆叠运动等控制指令,输出电机、采集控制、加热控制PWM等信号,驱动执行部件,实现对应功能;同时,收集坐标、温度等信息,响应标准嵌入式系统请求,送出对应数据信息。
[0347] 8)行程等开关量输入:通过开关量输入模块实现。
[0348] 结合其它加工工艺,可以构造其它类型的三维打印系统,如将W轴喷丝控制粘结剂的喷出控制,可实现粉料的三维粘结成型;将W轴的方向控制用于紫外光或激光的开关控制,可实现SLA。利用上述方法实现其它三维打印时,需结合改换相应的数据处理程序,才能实现系统的重构。
[0349] 9.经济型数控的系统重构方法
[0350] 对于复杂多轴联动的工业控制系统,是在前述简单控制系统的基础上,根据其被控设备的复杂度,进一步完善得到。
[0351] 9.1两轴联动经济型数控的重构方法
[0352] 采用上述的方法,还可以实现要求有两轴以下进给联动要求的通用经济型数控系统,一般称两轴联动数控系统,包括钻床系统、线切割系统等。
[0353] 1)系统结构:采用图1的功能结构,系统的上位控制系统与下位控制系统的实现结构与图2相同。执行部件为加工工艺对应电机、机床本体等机构与对象。
[0354] 2)指令系统:采用前文所述的基本指令格式与指令集。
[0355] 3)上位控制系统:通过标准PC系统结合数控系统专用的编辑、译码等处理软件实现,处理结束,根据指令系统要求,将指令数据通过高速通信(一般采用高速串口)传至下位控制系统。
[0356] 4)进给运动:包括XYZ三轴的运动,通过XYZ向伺服系统及控制模块实现。
[0357] 5)切削主运动:主轴运动,主运动有较为精确的转速控制要求,或与进给运动有速度匹配要求时,可通过W向伺服系统及控制模块实现;转速精度要求一般,与进给运动无协调控制要求,可采用专用PWM控制模块、外部功放电路与相应电机实现
[0358] 6)下位控制系统:通过标准嵌入式系统及两轴联动专用控制程序实现。执行加工时,两轴联动专用控制程序驱接受基本控制指令集指令,将参数写入专用集成电路,实现主轴、XYZ进给轴的运动及其它功能。
[0359] 下位控制系统定时采集坐标、行程并通过高速通信上送标准PC,实现显示更新。
[0360] 7)专用集成电路:接收标准嵌入式系统发出的进给运动、主运动等控制指令,输出对应电机、PWM控制等信号,驱动执行部件,实现对应功能;同时,收集坐标、行程开关等信息,定时响应标准嵌入式系统请求,送出对应数据信息。
[0361] 8)行程等开关量输入:通过开关量输入模块及相应的转换电路实现。
[0362] 9)其它开关控制需求:通过开关量输出模块及相应的转换、功放电路实现。
[0363] 结合加工工艺,可以构造其它类型的加工系统,如将W轴用于普通钻床的主轴控制,可实现钻床控制系统;将W轴的方向控制激光的开关控制,可实现激光切割。利用上述方法实现其它切削加工时,需结合加工工艺修改相应的PC机数据处理程序,才能实现系统的重构。专用PWM控制可用于主轴控制,也可用于扩展系统专门的模拟量控制或其它的功率控制。
[0364] 9.2三轴联动经济型数控的重构方法
[0365] 三轴联动数控系统一般指有三进给轴联动要求的系统,其经济型数控系统采用基本指令集与扩展指令集,其控制相对复杂。
[0366] 9.2.1扩展指令集
[0367] 1)两轴联动扩展指令
[0368] 按照参与的运动轴,两轴联动扩展分为YZ与XZ轴联动2种形式,相关定义参考基本指令集。
[0369] (1)YZ联动:
[0370] 表19 YZ轴联动控制指令格式
[0371] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-1110H 00H(未用) 06H 00/02/04/06H(方向控制) 16位Y速度 16位Y位移 16位Z速度 16位Z位移[0372] (2)XZ联动:
[0373] 表20 XZ轴联动控制指令格式
[0374] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-1110H 00H(未用) 05H 00/01/04/05H(方向控制) 16位X速度 16位X位移 16位Z速度 16位Z位移[0375] 2)三轴联动扩展指令
[0376] (1)XYZ联动:
[0377] 表21 XYZ三轴联动控制指令格式
[0378] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-13 字节14-1510H 00H(未用) 07H 00-07H(方向控制) X速度 X位移 Y速度 Y位移 Z速度 Z位移
[0379] (2)XZW联动:
[0380] 表22 XZW三轴联动控制指令格式
[0381] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-1310H 00H(未用) 0DH 方向控制 X速度 X位移 Z速度 Z位移 W速度
[0382] (3)YZW联动:
[0383] 表22 YZW三轴联动控制指令格式
[0384] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-1310H 00H(未用) 0EH 方向控制 Y速度 Y位移 Z速度 Z位移 W速度
[0385] 3)四轴联动扩展指令
[0386] 表23 XYZW四轴联动控制指令格式
[0387] 指令码 字节1 字节2 字节3 字节4-5 字节6-7 字节8-9 字节10-11 字节12-13 字节14-15 字节14-1510H 00H 0FH 方向控制 X速度 X位移 Y速度 Y位移 Z速度 Z位移 W速度
[0388] 9.2.2三轴联动经济型数控的实现方法
[0389] 1)系统结构:三轴联动经济型数控仍然采用图1的功能结构,上位控制系统与下位控制系统的实现结构与图2相同。执行部件为三轴数控系统XYZ向进给电机、主轴电机、机床本体等机构与对象。
[0390] 2)指令系统:采用前文所述的基本指令格式、基本指令集与扩展指令集。
[0391] 3)上位控制系统:通过标准PC系统结合三轴联动数控系统专用的编辑、译码等处理软件实现,数据处理结束,根据指令系统要求,将指令数据通过高速通信(一般采用高速串口)传至下位控制系统。
[0392] 4)进给运动:包括XYZ三轴的运动,通过XYZ向伺服系统及控制模块实现。
[0393] 5)切削主运动:主轴运动,主运动有较为精确的转速控制要求,或与进给运动有速度匹配要求时,可通过W向伺服系统及控制模块实现;转速精度要求一般,与进给运动无协调控制要求,可采用专用PWM控制模块、外部功放电路与相应电机实现
[0394] 6)下位控制系统:通过标准嵌入式系统及三轴联动专用控制程序实现。执行加工时,专用控制程序驱接受基本指令与扩展指令,将参数写入专用集成电路,实现主轴、XYZ进给轴的运动及其它功能。下位控制系统定时采集坐标、行程并通过高速通信上送标准PC,实现显示更新。
[0395] 7)专用集成电路:接收标准嵌入式系统发出的进给运动、主运动等控制指令,输出对应XYZW电机、PWM控制等信号,驱动执行部件,实现对应功能;同时,收集坐标、行程开关等信息,定时响应标准嵌入式系统请求,送出对应数据信息。
[0396] 8)行程等开关量输入:通过开关量输入模块及相应的转换电路实现。
[0397] 9)其它开关控制需求:通过开关量输出模块及相应的转换、功放电路实现。
[0398] 10)模拟量检测需求:通过AD采集与转换控制、必要的放大转换电路,可实现1路的模拟量采集。
[0399] 结合工艺,可构造多类型的控制系统,W可用于车、钻、铣等的主轴控制:AD采集与转换控制可实现外部温度、流量等模拟量采集,专用PWM控制可用于主轴控制,也可扩展专门的模拟量控制如加热功率。实现系统时,需结合加工修改数据处理程序与下位标准嵌入式控制系统的专用控制程序。
[0400] 9.3复杂多轴联动经济型数控的重构方法
[0401] 9.3.1系统实现结构
[0402] 复杂多轴联动可重构系统的结构如图9所示。执行复杂对象的控制时,会用到多于三个进给轴的多轴联动控制系统,此时沿用前述的控制架构、实现方法、轴控模块、AD与转换控制、开关量控制等,在原有基本指令集、扩展指令集基础上,增加扩充指令集;同时,扩充执行模块至8轴运动控制,构成具有多轴联动控制、适于复杂控制场合的新型系统。运动轴数由XYZW四轴增加到XYZW与X1、Y1、Z1、W1的8轴控制,AD采集转换控制增至两个。其中,W轴主要用于切削主运动及其类似控制,仅要求有速度控制,其余各轴要求速度、位移控制,同时具有联动控制的要求。
[0403] 适应复杂多轴联动经济型控制系统的特殊需求,上位控制系统的专用算法与处理需增加多轴联动、附加AD转换等功能的编辑、译码等处理;下位控制系统的专用控制程序相应增加多轴联动功能指令控制、附加AD的启动、状态获取、数据获取等控制功能;指令译码增加附加AD的启动、状态获取、数据获取指令译码功能;执行控制则需修改并扩充多轴联动的使能、参数设置、启动、过程监测控制等功能。
[0404] 9.3.2集成电路的重构
[0405] 复杂多轴联动经济型数控专用集成电路的逻辑单元构成与逻辑关系结构如图3所示。
[0406] SPI读SpiRd、SPI写SpiWr、PWM输出控制U1PwmDrv、采集转换控制U0MaxDrv、开关量输出DigOutP、开关量输入DigInP、W轴运动控制UwJetMt、运动指令队列mInstr与前述系统的同名模块相同;X/Y/Z/X1/Y1/Z1/W1轴运动控制模块U0MtDrv-U6MtDrv采用XYZ向电机控制基本模块,运动指令执行控制ExeInstr为前述运动执行控制ExeInstr的扩充模块,兼容前述的ExeInstr;指令译码DecInstr也为原有DecInstr扩充模块,兼容原有指令译码模块DecInstr。U1MaxDrv为新增的附加AD采集与转换控制模块,模块电路与U0MaxDrv相同。
[0407] 9.3.3扩充指令集
[0408] 1)非运动扩充指令
[0409] (1)扩充使能操作:扩充使能操作与基本指令的使能操作兼容,扩充了附加AD采集与转换控制U1MaxDrv的使能控制位,如表24所示。
[0410] 表24 扩充使能操作指令格式
[0411]
[0412] 字节3的D0与D1位功能不变,D0即U0MaxDrv的使能EnAd(1使能/0禁止),D1即U1PwmDrv的使能EnPwm(1启动/0禁止);D2为新增附加AD控制模块U1MaxDrv的使能EnAd1,其余位保留。
[0413] (2)扩充状态获取指令:兼容基本指令的状态获取指令,扩充了附加AD控制模块U1MaxDrv、X1、Y1、Z1与W1的忙状态标志,如表25所示。
[0414] 表25 扩充状态获取指令格式
[0415]
[0416] 字节3的D0-D5不变,分别为X、Y、Z轴、U0MaxDrv忙标志、队列mInstr的空、满标志。D6、D7分别为x1、y1忙标志;字节2的D0为z1轴忙标志,D1为附加AD采集与转换控制U1MaxDrv的忙标志。(3)附加模拟量获取指令:附加模拟量获取指令的基本构成如表26所示。指令码
16H,参数字节1、2、3分别为00H、XXH与XXH。其中,XXH为任意数据。
[0417] 表26 附加模拟量获取指令格式
[0418]指令码 字节1 字节2 字节3
26H 00H(未用) XXH XXH
[0419] (4)扩充坐标读取指令:包括X、Y、Z、X1、Y1、Z1与W1向坐标数据的获取,指令的基本构成如表27
[0420] 所示。XYZ向坐标获取指令码11-13H,X1、Y1、Z1与W1坐标获取指令码21-24H。
[0421] 表27 坐标读取指令格式
[0422]指令码 字节1 字节2 字节3
11-13H/21-24H 00H(未用) XXH XXH
[0423] 2)扩充运动指令
[0424] 扩充运动指令兼容基本运动指令与扩展运动指令,同时扩充了X1、Y1、Z1与W1的向运动,指令格式如表28所示。
[0425] 表28 运动指令一般格式
[0426]
[0427] 字节2高4位D4-D7为X1、Y1、Z1与W1使能状况,D0-D4保持不变,为XYZW运动与否。字节3高4位D4-D7为X1、Y1、Z1与W1运动方向;D0-D4不变,为依次为X、Y、Z与W轴运动方向。指令的第2-7字依次为第1-第3运动轴速度、位移参数;第8字为第4运动轴W的速度;第9-16依次为第5-8轴速度与位移。
[0428] 上述指令为系统所有运动轴均参与运动的情况,系统轴不全参与运动时,指令参数按照X、Y、Z、W、X1、Y1、Z1与W1的顺序依次分频运动参数。指令的其它使用方法与基本指令一致。
[0429] 9.3.4复杂多轴联动执行控制模块ExeInstr
[0430] 复杂多轴联动系统与前述的三轴联动、两轴联动、三维打印系统的运动指令执行控制ExeInstr电路原理、工作时序、实现方法类似。模块ExeInstr的工作时序如图11所示。
[0431] 图11所示为一条包含XYZWX1Y1Z1W1八轴联动指令的控制时序,与三轴联动系统一致,整个控制循环包括等待周期tW、运动轴及方向设置周期tC0、各运动轴的参数设置周期tC1-tC8、运动启动周期tenMT;tC1-tC8按顺序依次对应XYZWX1Y1Z1W1轴的控制周期,包括速度设置周期tspd、位移设置周期tdis。系统允许同一指令的不连续写入;此时,不同参数设置周期之间需要插入一个或多个tW等待周期。
[0432] 周期tW、tC0(即tax-dr)、tC4、tC9(即tenMT)、tspd、tdis的时长对应一个基准时钟CLK周期,XYZWX1Y1Z1W1轴的设置周期tC1、tC2、tC3、tC5、tC6、tC7、tC8分别包括一个对应的速度设置周期周期tspd和一个对应的位移设置周期tdis,W的设置周期tC4只包括一个速度设置周期周期tspd,而无位移设置周期tdis。
[0433] 队列mInstr不空且当前无系统运动,模块ExeInstr响应基准时钟CLK,进入图11所示的周期tax-dr,获取运动轴,禁止指令运动轴动作,设置各运动轴方向信号,准备参数写入,进入周期tC1;tC1内,模块ExeInstr响应时钟CLK,设置运动轴1的速度及位移参数;循环上述操作,直至周期tC1,实现所有运动轴的参数设置。最后,ExeInstr响应CLK时钟,进入运动启动周期tC8,重新使能各运动轴,执行指令运动。
[0434] 同样,执行运动参数设置时,遇到运动指令队列mInstr为空,系统插入等待周期tW,等待运动参数的写入。不同于三轴联动或两轴联动系统,复杂多轴联动执行控制模块ExeInstr执行一条运动指令需经过17个时钟周期,即使所处周期对应的运动轴不参与当前指令的运动,该周期仍不能跳过。此时mInstr模块只是单纯的相应时钟信号,并不执行任何处理。
[0435] 9.3.5复杂多轴联动经济型数控的实现方法
[0436] 1)系统结构:复杂多轴联动经济型数控采用图9所示的实现结构。相对于图2的实现结构,复杂多轴联动系统增加了X1、Y1、Z1、W1运动控制模块、附加AD采集与转换控制模块,均为通用模块。执行部件为复杂多轴数控系统X、Y、Z、X1、Y1、Z1、W1向进给电机、主轴电机、机床本体等机构与对象。
[0437] 2)指令系统:采用前文所述的基本指令格式、基本指令集、扩展指令集与扩充指令集。
[0438] 3)上位控制系统:通过标准PC系统结合复杂多轴联动数控系统专用的编辑、译码等处理软件实现,数据处理结束,根据指令系统要求,将指令数据通过高速通信(一般采用高速串口)传至下位控制系统。
[0439] 4)进给运动:包括XYZX1Y1Z1W1七轴的运动,通过XYZX1Y1Z1W1向伺服系统及电机通用控制模块实现。
[0440] 5)切削主运动(以数控加工机床为例):主轴运动,主运动有较为精确的转速控制要求,或与进给运动有速度匹配要求时,可通过W向伺服系统及控制模块实现;转速精度要求一般,与进给运动无协调控制要求,可采用专用PWM控制模块、外部功放电路与相应电机实现
[0441] 6)下位控制系统:通过标准嵌入式系统及七轴联动专用控制程序实现。执行加工时,专用控制程序驱接受基本指令与扩展指令,将参数写入专用集成电路,实现主轴、XYZX1Y1Z1W1进给轴的运动及其它功能。下位控制系统定时采集坐标、行程并通过高速通信上送标准PC,实现显示更新。
[0442] 7)专用集成电路:接收标准嵌入式系统发出的进给运动、主运动等控制指令,输出对应XYZWX1Y1Z1W1电机、PWM控制等信号,驱动执行部件,实现对应功能;同时,收集坐标、行程开关等信息,定时响应标准嵌入式系统请求,送出对应数据信息。
[0443] 8)行程等开关量输入:通过开关量输入模块及相应的转换电路实现。
[0444] 9)其它开关控制需求:通过开关量输出模块及相应的转换、功放电路实现。
[0445] 10)模拟量检测需求:通过AD采集与转换控制或附加AD采集与转换控制、必要的放大转换电路,可实现最多两路的模拟量采集。
[0446] 结合工艺,可以构造较为复杂的多轴联动控制加工系统,遇到更为复杂的工业生产现场控制时,还可通过增加PWM控制模块、进给轴控制模块、W轴控制模块、AD采集与转换控制模块,适当修改上下位控制系统数据处理与专用控制程序、适当增加控制指令、修正执行控制ExeInstr模块,构造更为复杂的加工控制系统。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈