基于RS-232串行总线的多轴运动控制卡
技术领域
本发明涉及有线传输系统,尤其涉及一种基于RS-232串行总线的多轴运动控制卡。
背景技术
随着制造业的发展,中小批量生产的趋势日益增强,对数控机床的柔性和通用性提出了更高的要求,希望市场能提供不同加工需求,迅速高效、低成本地构筑面向用户的控制系统,并大幅度地降低维护和培训的成本,同时还要求新一代数控系统具有方便的网络功能,以适应未来车间面向任务和定单的生产组织和管理模式。为此,近10年来,随着计算机技术的飞速发展,各种不同层次的开放式数控系统应运而生,发展很快。但是现在“NC嵌入PC”结构的开放式数控系统普遍存在一个问题,即开放体系结构运动控制卡。例如,在使用步进电机的场合里,大多数都是采用台湾某公司生产的运动控制卡,可是在实际的开发中发现很多用户提出的要求板卡无法满足,加减速的性能不是很好,而且成本较高。
发明内容
本发明的目的是提供一种基于RS-232串行总线的多轴运动控制卡,无需配设计算机插卡便可控制电机运转的基于RS-232串行总线的多轴运动控制卡。
本发明是这样实现的:本发明包括控制单元、开关量输入单元和信号输出单元;其中:
1)控制单元:它包括RS-232通信接口、石英晶体多谐振荡器、电源监测电路;RS-232通信接口一端与单片机CPU通过串行总线相连,一端与上位PC机相连,石英晶体多谐振荡器发生脉冲信号与可编程计数/定时器8254相连,电源监控电路通过总线与单片机CPU相连;
2)开关量输入单元:它包括开关量采集模块、开关信号隔离整形模块;开关量采集模块通过限位开关和光电开关采集外部X、Y、Z回零、限位开关、对刀信号量,开关信号隔离整形模块通过滤波电路和TPL光耦隔离电路实现开关量输入信号和单片机CPU之间的电平转换;
3)信号输出单元:它包括三个脉冲信号输出电路、电压信号输出电路、电流信号输出电路、正反转信号输出电路;其中三个脉冲信号输出电路的一端分别与单片机CPU相连,三个脉冲信号输出电路的另一端分别与X、Y和Z轴驱动器相连;电压信号输出电路分别通过各自的输出端分别与单片机CPU、电流信号输出电路和电主轴驱动器的一端相连;电流信号输出电路的另一端与电主轴驱动器的另一端相连;正反转信号输出电路的一端与单片机CPU相连,正反转信号输出电路的另一端与各轴驱动器相连。
本发明的特点是:运动控制卡采用89C52单片机、MAX232和可编程计数/定时器等电路相结合的具体方案,具有外围器件少、硬件结构简单、柔性度高等特点。在本发明控制卡总线的设计上采用了串行总线方式,具有连接引脚数量少、连接简单、成本较低和系统可靠性高的特点,同时不需要编写驱动程序。在可编程计数/定时器电路设计上,选用了型号为8254的可编程计数/定时器电路作为脉冲控制电路,8254的计数频率更高且多了一个读回命令(写入至控制字寄存器)。在EEPROM的芯片选择上采用了X5045,具有低VCC检测上电和掉电保护功能,保证了本运动控制卡的运行稳定性。
附图说明
下面结合附图和实施例对本发明作进一步说明。
图1是控制卡系统总体结构原理框图;
图2是脉冲控制电路;
图3是通信接口电路;
图4是D/A转换电路;
图5是V/I转换电路原理图。
具体实施方式
如图1所示,本发明包括控制单元1、开关量输入单元2和信号输出单元3;其中:
1)控制单元1:它包括RS-232通信接口1.1、石英晶体多谐振荡器、电源监测电路;RS-232通信接口1.1一端与单片机CPU通过串行总线相连,一端与上位PC机相连,石英晶体多谐振荡器发生脉冲信号与可编程计数/定时器8254相连,电源监控电路通过总线与单片机CPU相连;
2)开关量输入单元2:它包括开关量采集模块、开关信号隔离整形模块;开关量采集模块通过限位开关和光电开关采集外部X、Y、Z回零、限位开关、对刀信号量,开关信号隔离整形模块通过滤波电路和TPL光耦隔离电路实现开关量输入信号和单片机CPU之间的电平转换;
3)信号输出单元3:它包括三个脉冲信号输出电路3.1、电压信号输出电路3.2、电流信号输出电路3.3、正反转信号输出电路。其中三个脉冲信号输出电路3.1的一端分别与单片机CPU相连,三个脉冲信号输出电路3.1的另一端分别与X、Y和Z轴驱动器相连;电压信号输出电路3.2分别通过各自的输出端分别与单片机CPU、电流信号输出电路3.3和电主轴驱动器的一端相连;电流信号输出电路3.3的另一端与电主轴驱动器的另一端相连;正反转信号输出电路的一端与单片机CPU相连,正反转信号输出电路的另一端与各轴驱动器相连。
如图1、3所示,控制单元1中RS-232通信接口1.1为MAX232通信接口芯片,MAX232通信接口芯片引脚T1IN、T2IN、R1OUT、R2OUT接TTL/CMOS电平输入引脚,引脚T1OUT、T2OUT、R1IN、R2IN接RS-232C电平输出引脚,MAX232通信接口芯片外围接4个电解电容C1、C2、C3、C4和去耦电容C44;电源监测电路由X5045组成,其中X5045包括上电复位、低电压监测、看门狗定时器和串行EEPROM存储器;石英晶体多谐振荡器产生脉冲信号发生源。
如图1、2所示,信号输出单元3中脉冲信号输出电路3.1的三个可编程计数/定时器8254的数据线D0~D7分别与单片机的数据线AD0~AD7相连,片选信号CS与单片机的地址线A10相连,读选通信号RD和写选通信号WR信号线与单片机的读选通信号RD和写选通信WR信号线相连,地址输入线A0和A1选择相应计数器,时钟输入端CLK0与石英晶体多谐振荡器相连,门控输入端GATE0和GATE2接+5V电源,输出端OUT0的输出作为时钟输入端CLK1的输入,输出端OUT1的输出一方面作为时钟输入端CLK2的输入,另一方面作为脉冲的输出,输出端OUT2的输出作为门控输入端GATE1的输入;如图1.4所示,电压信号输出电路3.2的数模转换芯片DAC0832的数据输入线DI1~DI6、msbDI7和lsbDI0与单片机的数据输入线AD0~AD7相连,片选信号CS和数据传送信号Xfer与单片机的地址线A14相连,输出电流Iout1和Iout2与运算放大器U8相连产生0~5V的电压输出Vout;如图1.5所示,电流信号输出电路3.3的V/I转换电路由输入宽带高速双运算放大器LF353JFET和外围电路组成,把0~5V的电压输出Vout转换为4~20mA的电流输出Iout。输入宽带高速双运算放大器LF353JFET由U21A、U21B组成,外围电路由电阻R33、R34、R35、R36、R37、R38、R39、R40、R41、R42、R43,可调电阻VR2、VR3、VR4,二极管D2、D3,三极管T1和稳压二极管Z10组成;正反转方向信号由8位锁存器74HC377和驱动管INA2003产生。
如图1所示,开关量采集模块通过限位开关信号处理和光电开关信号处理采集外部回零、限位开关、对刀等信号量,开关信号隔离整形模块通过滤波电路和TPL光耦隔离电路实现光电开关、限位开关和控制器之间的电平转换;脉冲信号输出单元3.1由3片可编程计数/定时器8254与单片机CPU相连,3片8254产生的脉冲频率和脉冲数目与X、Y、Z轴驱动器相连,控制3轴步进电机的运转;电压信号输出单元3.2通过D/A转换电路给电主轴驱动器,电路信号单元3.3通过V/I转换电路给电主轴驱动器,控制主轴的运转;方向信号输出单元通过锁存器芯片产生正反转信号提供给各轴驱动器,控制各轴电机的正反转;RS-232通信接口1.1为运动控制卡提供RS-232标准总线通信接口,RS-232通信接口一端与单片机CPU通过串行总线相连,一端与上位PC机相连;石英晶体多谐振荡器为脉冲信号输出模块提供脉冲源;电源监测电路X5045组成,为系统电源电压进行实时检测,当发现电压不稳或掉电时,电源监控模块向CPU发出中断,请求实施掉电保护操作。
如图2所示,本发明脉冲信号输出电路由3片8254可编程计数/定时器组成,产生X、Y、Z三个轴的驱动脉冲信号。鉴于Y、Z轴的电路与X轴相同,采用3.1表示X轴脉冲信号输出电路原理图。8254属于可编程芯片,内部有3个独立的16位计数器,每个计数器有6种工作方式,可由程序设定。在该运动控制卡上,8254的计数器0和计数器1用来控制输出脉冲的频率,它们工作于方式3(方波速率发生器);计数器2用来控制输出脉冲的数目,它工作于方式0(记完最后1个数时中断),8254与单片机CPU相连。8254与外设的连接如下:8254中3个计数器各有3个引脚:1个时钟脉冲输入端(CLK),一个门控输入端(GATE)和一个输出端(OUT)。如图2所示,在计数器0的脉冲输入端接石英晶体多谐振荡器.计数器0的门控(GATE0)和计数器2的门控(GATE2)接十5V电源。计数器0的输出(OUT0)作为计数器1的脉冲输入(CLK1),计数器1的输出(OUT1)一方面作为计数器2的脉冲输入(CLK2),另一方面经过光耦隔离电路输入到步进电机驱动器,控制步进电机的运转。计数器2的输出一方面输入至CPU的输入端口查询脉冲信号是否处理完,另一方面和CPU的控制信号经与门送入计数器1的门控端(GATE1)。脉冲控制电路的工作原理为:在对各计数器送计数值前,先把来自CPU的控制线信号CTL变低,由于输出脉冲的频率由振荡电路的振荡频率经过计数器0和计数器1两次分频得到,因此在设置计数器0和计数器1的分频系数时应考虑两个计数器数值的合理分配,送入计数器2的计数值为输出脉冲的数目。当设置完各计数器的方式字和计数值后,再使来自CPU的控制线信号CTL变高,从OUT1引脚输出所需频率的脉冲。当查询到OUT2的电平变为高电平时,经反向器U26A变为低电平,经与门U27A使GATE1引脚电平变低,禁止计数器1计数,从而实现了脉冲频率和脉冲数目的控制。本发明的通信接口电路1.1采用MAX232作为系统的通信接口芯片。MAX232引脚T1IN、T2IN、R1OUT、R2OUT接TTL/CMOS电平输入引脚,引脚T1OUT、T2OUT、R1IN、R2IN接RS-232C电平输出引脚。在本发明中T1IN、T2IN引脚接单片机CPU的串行发送引脚TXD,R1OUT、R2OUT接单片机CPU的串行接收引脚RXD;与之对应的RS-232C电平的T1OUT、T2OUT接上位PC机的接收端,R1IN、R2IN接上位PC机的发送端。本发明的D/A转换电路3.2由数/模转换芯片DAC0832实现。在本发明D/A转换器采用了单缓冲输入方式,输出0~5V电压提供给电主轴驱动单元。DAC0832的数据输入线DI1~DI6、msbDI7和1sbDI0与单片机的数据输入线AD0~AD7相连,片选信号CS和数据传送信号Xfer与单片机CPU的地址线A14相连,输出电流Iout1和Iout2与运算放大器U8相连产生0~5V的电压输出Vout;本发明的V/I转换电路33主要采用了输入宽带高速双运算放大器LF353JFET及外围电路,实现了0~5V的电压输出Vout到0~20mA的电流输出Iout转换,其中输入宽带高速双运算放大器LF353JFET由U21A、U21B组成,外围电路由电阻R33、R34、R35、R36、R37、R38、R39、R40、R41、R42、R43;可调电阻VR2、VR3、VR4;二极管D2、D3;三极管T1和稳压二极管Z10组成。