CH365型接口MCX314As型运动控制器PCI总线
时间:06-08
来源:互联网
点击:
4 控制卡系统设计
4.1控制卡硬件结构设计
控制卡硬件结构如图1所示。PCI端的主要信号有地址、数据多路复用的输入/输出信号(AD[3l-O])、总线命令和字节使能多路复用信号(CBE[3-O])、奇偶校验信号(PAR)、帧周期信号(FRAME)、发起设备准备好信号(IRDY)、目标设备准备好信号(TRDY)、初始化设备选择信号(IDSEL)、设备选择信号(I)EVSEL)、时钟输入信号(CLK)、复位信号(RST)和中断信号(INTA)。这些信号完全符合:PCI规范的要求。

控制卡本地端使用的信号主要有双向数据信号(D[7-0]),地址信号(A[14—0]),独立输出控制信号A15,I/O端口读/写控制信号(IOP_RD,IOP_WR)及中断信号(INTA)。CH365在I/O读写控制时只用到8根地址线A[7—0]。在本系统中,低4位地址信号A[3—0]作为MCX314As中寄存器的地址信号直接连到MCX314As,高4位A[7—4]作为译码电路的输入信号来产生MCX314As的片选信号,A[14—8]空闲不用,独立输出控制信号A15作为控制是否启用电子齿轮电路的选通开关信号。
对于MCX314As,其RSq、端与CH365共用,该输入把:MCX314As的RESETN置为低电平且大于4周期以上时,执行复位。CS端为MCX314As的片选信号,由CPLD中的译码电路模块产生。H16L8端接地,设置电路处于8位数据总线访问方式,这是因为CH365的数据传输是8位。也正因为这样,本系统只用到MCX314As的16位数据总线D[15:0]中的D[7:0],而D[15:8]要经高电阻接至+5V。RD和WR分别为MCX314As的读、写信号线,当它们为低电平时,可以对MCX314As进行寄存器的读写操作。需要特别注意的是由于本系统采用8位数据传输,所以对于MCX314As中的16位寄存器分为高8位和低8位地址,读写操作必须访问2次。A[3:0]用来选择MCX314As的寄存器地址。BLTSYN连接MCX314As忙信号,处于低电平时不能执行写入命令。MCX-314As只有一个中断INTN,所有中断源都需进行“或运算”后输出到中断信号端口。与其他运动控制卡相比,本运动控制卡的最大特色是具有位插补功能、自动原位搜寻功能及电子齿轮设计。
与直线、圆弧插补相比,位插补不是由几个参数和指令来产生任一特定的运动控制(如直线、圆弧等),它需要由上位机提供所有的插补数据。而这种插补模式却有很大的适应性,它对插补数据没有任何形式的限制,这无疑为实现样条插补、特殊函数曲线插补提供了方便,使得本运动控制卡在加工复杂轮廓曲线的工件时有很大的优越性,尤其适用于仿形机上的应用。由于位插补需要大量的插补数据,因此如何生成和管理这些数据就成为位插补模式应用的关键。一般来讲,插补数据都是由上位机提前生成的,这样,如何管理这些数据使其能及时写入而让插补连续进行就成为本设计系统的一个关键。针对这些数据“先进先出”的特点.本设计系统采用队列管理机制,并结合MCX314As中的堆栈计数器(SC),利用中断不断地将插补数据写入MCX314As中的4个(正反向各2个)数据缓冲区,从而保证了位插补的连续性。位插补的终止有2种方式:向正反方向各2个缓冲区都写入l;上位机停止写入数据。
自动原位搜寻功能有助于机床快速归零到机床参考点。在此功能下,设计系统按选定轴负方向高速驱动至原点附近,然后以低速驱动直到原点信号或编码器Z信号激活而停止。再以设定的驱动速度往正方向快速归零到机床参考点。与其他控制系统的通过程序实现机制相比,该功能更为简单方便。
在3轴极坐标螺旋仿形加工中,要求其中2轴(极径、极角)按工件外形轮廓曲线联动插补。第三轴按设定的螺距跟随极角坐标轴进给。在一般三轴加工中,上位机发送来的加工数据都为3维增量坐标,这里的第三轴增量坐标数据由设定的螺距决定,而M(2X314As的速度是按合成速度来控制的,这样就会出现下述情况:当粗加工螺距设定很大时。第三轴数据值就大,速度分量也很大,导致其它2轴速度分量大大降低,影响加工效率与质量。考虑到这种情况,本系统基于电子随动原理设计了电子齿轮,1轴可以按设定的比率从动于其他3轴中的任意l轴(类似机械齿轮传动),也可以解除这种从动关系的设定。在电子齿轮关系机制下,上述的3轴极坐标螺旋仿形加工就只需2轴数据,而第三轴按设定的传动比率跟随前者中的某一轴,从而理想地解决了这个难题。
为了提高反馈脉冲的分辨率,本设计系统还采用了4倍频电路设计,对电动机的编码反馈脉冲进行4倍频处理。
为了提高板卡的集成度,本系统使用VHDL硬件描述语言在(2PLD(MAX7000)中实现系统所需的一些外围电路。如地址译码(用于产生M(2X314As的片选信号)、4倍频电路、电子齿轮电路、速度倍率手轮译码等,限于篇幅,不再介绍。
系统对电机的控制脉冲由MCX314As产生,并根据需要选择是否采用电子齿轮传动方式,然后经差分驱动输出驱动器产生差分驱动输出,既可以控制数字式交流伺服驱动器,也可以控制步进电机驱动器。电机编码器反馈信号(A、B、Z)经过高速光电隔离后输入CPLD,经过4倍频后传输给MCX314As的实际位置寄存器,用于位置显示和软件限位。通用输出信号经过74LS06型输出缓冲器输出。外部反馈脉冲(如超程限位信号、原位搜索信号等)及外部手动控制信号要经过光电隔离才能输入MCX314As。
本系统采用MCX314As默认的16MHz频率作为时钟信号。该时钟决定了每个轴的正/负方向的驱动脉冲时间周期。图2示出MCX314As的时钟电路[4]。
4.2控制卡系统的软件设计
控制卡系统的软件设计主要是板卡驱动程序设计、CPLD硬件语言描述程序和MCX314As功能驱动函数设计。本系统的驱动程序主要是围绕(2H365来实现该板卡与PC的接口功能,选用DriverStudio 2.6开发工具,快速有效地开发了在Windows环境下用户级的WDM设备驱动程序,向该板卡的运用程序提供I/O基址、中断号等。CPLD硬件语言描述程序是用VHDL编写的,主要实现M(2X314As的片选信号、4倍频电路、电子齿轮电路、速度倍率手轮译码等外围电路功能。MCX314As的功能驱动函数设计是用于MCX314As的初始化、速度和加速度设置、直线插补、圆弧插补、归零搜索(1IOME)、硬件限位、位插补、数字信号的输入/输出和中断信号处理等功能函数设计。限于篇幅,这里只给出位插补的程序流程,如图3所示。
4.1控制卡硬件结构设计
控制卡硬件结构如图1所示。PCI端的主要信号有地址、数据多路复用的输入/输出信号(AD[3l-O])、总线命令和字节使能多路复用信号(CBE[3-O])、奇偶校验信号(PAR)、帧周期信号(FRAME)、发起设备准备好信号(IRDY)、目标设备准备好信号(TRDY)、初始化设备选择信号(IDSEL)、设备选择信号(I)EVSEL)、时钟输入信号(CLK)、复位信号(RST)和中断信号(INTA)。这些信号完全符合:PCI规范的要求。

控制卡本地端使用的信号主要有双向数据信号(D[7-0]),地址信号(A[14—0]),独立输出控制信号A15,I/O端口读/写控制信号(IOP_RD,IOP_WR)及中断信号(INTA)。CH365在I/O读写控制时只用到8根地址线A[7—0]。在本系统中,低4位地址信号A[3—0]作为MCX314As中寄存器的地址信号直接连到MCX314As,高4位A[7—4]作为译码电路的输入信号来产生MCX314As的片选信号,A[14—8]空闲不用,独立输出控制信号A15作为控制是否启用电子齿轮电路的选通开关信号。
对于MCX314As,其RSq、端与CH365共用,该输入把:MCX314As的RESETN置为低电平且大于4周期以上时,执行复位。CS端为MCX314As的片选信号,由CPLD中的译码电路模块产生。H16L8端接地,设置电路处于8位数据总线访问方式,这是因为CH365的数据传输是8位。也正因为这样,本系统只用到MCX314As的16位数据总线D[15:0]中的D[7:0],而D[15:8]要经高电阻接至+5V。RD和WR分别为MCX314As的读、写信号线,当它们为低电平时,可以对MCX314As进行寄存器的读写操作。需要特别注意的是由于本系统采用8位数据传输,所以对于MCX314As中的16位寄存器分为高8位和低8位地址,读写操作必须访问2次。A[3:0]用来选择MCX314As的寄存器地址。BLTSYN连接MCX314As忙信号,处于低电平时不能执行写入命令。MCX-314As只有一个中断INTN,所有中断源都需进行“或运算”后输出到中断信号端口。与其他运动控制卡相比,本运动控制卡的最大特色是具有位插补功能、自动原位搜寻功能及电子齿轮设计。
与直线、圆弧插补相比,位插补不是由几个参数和指令来产生任一特定的运动控制(如直线、圆弧等),它需要由上位机提供所有的插补数据。而这种插补模式却有很大的适应性,它对插补数据没有任何形式的限制,这无疑为实现样条插补、特殊函数曲线插补提供了方便,使得本运动控制卡在加工复杂轮廓曲线的工件时有很大的优越性,尤其适用于仿形机上的应用。由于位插补需要大量的插补数据,因此如何生成和管理这些数据就成为位插补模式应用的关键。一般来讲,插补数据都是由上位机提前生成的,这样,如何管理这些数据使其能及时写入而让插补连续进行就成为本设计系统的一个关键。针对这些数据“先进先出”的特点.本设计系统采用队列管理机制,并结合MCX314As中的堆栈计数器(SC),利用中断不断地将插补数据写入MCX314As中的4个(正反向各2个)数据缓冲区,从而保证了位插补的连续性。位插补的终止有2种方式:向正反方向各2个缓冲区都写入l;上位机停止写入数据。
自动原位搜寻功能有助于机床快速归零到机床参考点。在此功能下,设计系统按选定轴负方向高速驱动至原点附近,然后以低速驱动直到原点信号或编码器Z信号激活而停止。再以设定的驱动速度往正方向快速归零到机床参考点。与其他控制系统的通过程序实现机制相比,该功能更为简单方便。
在3轴极坐标螺旋仿形加工中,要求其中2轴(极径、极角)按工件外形轮廓曲线联动插补。第三轴按设定的螺距跟随极角坐标轴进给。在一般三轴加工中,上位机发送来的加工数据都为3维增量坐标,这里的第三轴增量坐标数据由设定的螺距决定,而M(2X314As的速度是按合成速度来控制的,这样就会出现下述情况:当粗加工螺距设定很大时。第三轴数据值就大,速度分量也很大,导致其它2轴速度分量大大降低,影响加工效率与质量。考虑到这种情况,本系统基于电子随动原理设计了电子齿轮,1轴可以按设定的比率从动于其他3轴中的任意l轴(类似机械齿轮传动),也可以解除这种从动关系的设定。在电子齿轮关系机制下,上述的3轴极坐标螺旋仿形加工就只需2轴数据,而第三轴按设定的传动比率跟随前者中的某一轴,从而理想地解决了这个难题。
为了提高反馈脉冲的分辨率,本设计系统还采用了4倍频电路设计,对电动机的编码反馈脉冲进行4倍频处理。
为了提高板卡的集成度,本系统使用VHDL硬件描述语言在(2PLD(MAX7000)中实现系统所需的一些外围电路。如地址译码(用于产生M(2X314As的片选信号)、4倍频电路、电子齿轮电路、速度倍率手轮译码等,限于篇幅,不再介绍。
系统对电机的控制脉冲由MCX314As产生,并根据需要选择是否采用电子齿轮传动方式,然后经差分驱动输出驱动器产生差分驱动输出,既可以控制数字式交流伺服驱动器,也可以控制步进电机驱动器。电机编码器反馈信号(A、B、Z)经过高速光电隔离后输入CPLD,经过4倍频后传输给MCX314As的实际位置寄存器,用于位置显示和软件限位。通用输出信号经过74LS06型输出缓冲器输出。外部反馈脉冲(如超程限位信号、原位搜索信号等)及外部手动控制信号要经过光电隔离才能输入MCX314As。
本系统采用MCX314As默认的16MHz频率作为时钟信号。该时钟决定了每个轴的正/负方向的驱动脉冲时间周期。图2示出MCX314As的时钟电路[4]。
4.2控制卡系统的软件设计
控制卡系统的软件设计主要是板卡驱动程序设计、CPLD硬件语言描述程序和MCX314As功能驱动函数设计。本系统的驱动程序主要是围绕(2H365来实现该板卡与PC的接口功能,选用DriverStudio 2.6开发工具,快速有效地开发了在Windows环境下用户级的WDM设备驱动程序,向该板卡的运用程序提供I/O基址、中断号等。CPLD硬件语言描述程序是用VHDL编写的,主要实现M(2X314As的片选信号、4倍频电路、电子齿轮电路、速度倍率手轮译码等外围电路功能。MCX314As的功能驱动函数设计是用于MCX314As的初始化、速度和加速度设置、直线插补、圆弧插补、归零搜索(1IOME)、硬件限位、位插补、数字信号的输入/输出和中断信号处理等功能函数设计。限于篇幅,这里只给出位插补的程序流程,如图3所示。
总线 电子 电路 CPLD FPGA Altera 嵌入式 单片机 DSP 编码器 比较器 电阻 电动机 VHDL 步进电机 相关文章:
- 一种新型防伪读码器的设计(01-01)
- 基于ARM与DSP的嵌入式运动控制器设计(04-25)
- 基于ARM核的AT75C220及其在指纹识别系统中的应用(05-24)
- 基于nRF2401智能小区无线抄表系统集中器设计(04-30)
- 基于FPGA安全封装的身份认证模型研究(05-27)
- 高精度压力测控系统的试验研究(04-08)
