一种步进电机细分控制系统的制作方法

文档序号:11147856阅读:459来源:国知局
一种步进电机细分控制系统的制造方法与工艺

本发明属于电机控制系统领域,具体涉及一种步进电机细分控制系统。



背景技术:

从近代开始,电机控制的技术得到了迅猛的发展。电机控制技术极大的提高了劳动生产率和产品质量,推动了现代工业农业的巨大进步。例如数控机床,打印机,绘图机,机器人控制,无人驾驶飞机等场合都有应用。但是目前许多电机由于受本身结构的限制,如步进电机,步距角不可能做的很小,因而在低频控制时容易产生震荡、而在高频时候易发生丢失步现象,而且电机噪声明显。于是电机细分技术应运而生,采用恒流与细分驱动技术可以大大提高步进电机的步距分辨率,减小转矩波动,避免低频共振及降低运行噪声,提高电机运行平稳,增加控制的灵活性。正是因电机细分技术的引入步进电机的性能得到大幅提升,使得步进电机替代了传统的电机,电机细分技术的推动使得步进电动机推广应用到其他领域,测量仪器、光学和医疗仪器以及包装机械等其他运用到机械运动的领域。

步进电机作为电磁机械装置,其分辨率取决于细分驱动技术。与传统的单片机控制相比,DSP进行软件细分驱动,编程更灵活、通用、算法的优化简易,具有更强运算能力的DSP能够满足电流环实控制的要求,使得步进细分驱动的成本降低、效率提高、可靠性增强、要修改方案也易办到,被称为最佳的电机控制方案。同时,还可解决步进电机在低速时易出现的低频振动和运行中的噪声等。但单一的软件细分驱动在精度与速度兼顾上会有矛盾,细分的步数越多,精度越高,但步进电机的转动速度却降低;要提高转动速度,细分的步数就得减少。为此,设计一种多级细分驱动的系统,通过不同的细分档位设定,实现不同步数的细分,使用总线控制多种不同电机,同时保证不同的转动速度的细分方式的电机系统的研究具有非常重要的意义。

以工业局域网技术为基础的工厂自动化工程技术在最近十年得到了长足的发展,并显示良好的发展势头。受这一发展趋势影响,新的步进电机细分控制系统都配置了标准串行通信接口或现场总线通讯方式。CAN总线作为一种技术先进可靠性高、灵活性好、功能完善且成本合理的远程网络控制方式在工业控制领域中的应用非常广泛。但就目前的市场上大多数的现场智能仪器仪表,电机控制装置,通常采用了Modbus串行接口通信协议。由于Modbus 协议实现了OSI参考模型中应用层的定义,通常作为仪表设备网络通信。

但Modbus协议与CANopen总线协议是互不兼容的。因此电机细分控制系统能将总线相互兼容尤为重要。



技术实现要素:

本发明克服了上述技术问题的缺点,提供了一种步进电机细分控制系统,本发明的步进电机细分控制系统支持Modbus和CAN两种不同的总线协议方式进行通信,能实现步距精确细分。

为了解决上述技术问题,本发明提供了如下技术方案:包括DSP控制器,所述DSP控制器上设有PWM发生模块、总线编码模块和串口模块;所述控制系统还包括串口转换模块、总线线路模块、光电隔离模块、电机驱动模块和步进电机;所述PWM发生模块的输出端连接所述总线编码模块的输入端;所述总线编码模块的输出端连接所述串口模块的输入端;所述串口模块的输出端连接所述串口转换模块的一端;所述串口转换模块的另一端连接所述总线线路模块的输入端;并将串口转换模块输出的Modbus总线协议或CAN协议数据发送给所述总线线路模块;所述总线线路模块的输出端连接所述光电隔离电路的输入端;所述光电隔离电路接收所述协议数据,并将所述协议数据内的控制信号放大;所述光电隔离电路的输出端连接所述电机驱动模块;所述电机驱动模块连接所述步进电机。

进一步的,所述步进电机细分控制系统还包括保护电路,所述电机驱动模块通过所述保护电路连接所述DSP控制器内嵌的中断口。

进一步的,步进电机细分控制系统还包括显示模块,所述显示模块通过所述DSP控制器内嵌的I/O口与所述DSP控制模块连接。

进一步的,步进电机细分控制系统还包括稳压电源模块,所述稳压电源模块连接所述电机驱动模块。

进一步的,所述DSP控制器内嵌的RAM中设有Modbus数据缓冲区和CAN数据缓存区;所述总线线路模块包括Modbus总线线路和CAN总线线路;所述DSP控制器与Modbus总线线路的通信数据存入所述Modbus数据缓冲区;所述DSP控制器与所述CAN总线线路的通信数据存入所述CAN数据缓存区。

进一步的,所述DSP控制器采用的型号为TMS320F2812DSP控制器。

进一步的,所述电机驱动模块采用的型号为THB6064AH的电机驱动模块。

进一步的,所述步进电机细分控制系统还包括单片机模块,所述单片机模块连接所述总线编码模块,所述单片机模块采用的型号为AT89S52单片机。

采用以上设计后,本发明与现有技术相比较具有以下有益效果:

本发明的步进电机细分控制系统,与传统的步进电机细分控制系统相比具有更好的通用性,系统能将支持Modbus的设备或CANopen的设备接入系统,并实现步进电机细分控制,系统的总线转换传输使得设备有更多的选择进行通信传输,让设备能在Modbus的传输距离可靠性和CAN总线的高速传输之间选择,进一步加快了各设备之间的通讯速率与可靠性,符合当今控制器网络化的发展需求,迎合了市场的需要。

附图说明

图1是本发明一种步进电机细分控制系统的组成框图;

图2是本发明一种步进电机细分控制系统的Modbus总线线路原理图;

图3是本发明一种步进电机细分控制系统的CAN总线线路原理图;

图4本发明电机驱动模块采用的THB6064AH芯片的原理图;

图5是本发明根据电压正弦PWM的DSP控制算法,利用Excel绘制的SPWM计算值曲线图;

图6是本发明CAN总线协议与Modbus总线协议间的转换流程图;

图7是本发明一种步进电机细分控制系统的总流程图。

具体实施方式

下面结合附图与实施例对本发明作进一步说明。

请参阅图1,本发明一种步进电机细分控制系统,包括一DSP控制器,所述DSP控制器上设有一PWM发生模块、一总线编码模块和一串口模块;所述控制系统还包括一串口转换模块、一总线线路模块、一光电隔离模块、一电机驱动模块和一步进电机;所述PWM发生模块的输出端连接所述总线编码模块的输入端;所述总线编码模块的输出端连接所述串口模块的输入端;所述串口模块的输出端连接所述串口转换模块的一端;所述串口转换模块的另一端连接所述总线线路模块的输入端;并将串口转换模块输出的Modbus总线协议或CAN协议数据发送给所述总线线路模块;所述总线线路模块的输出端连接所述光电隔离电路的输入端;所述光电隔离电路接收所述协议数据,并将所述协议数据内的控制信号放大;所述光电隔离电路的输出端连接所述电机驱动模块;所述电机驱动模块连接所述步进电机。

本发明的步进电机细分控制系统能将支持Modbus的设备或CANopen的设备接入系统。其中,本发明的串口转换电路即为网卡转换电路,其功能是实现RS485总线协议与CAN总线协议的相互通信。本发明中应用的Modbus总线线路与CAN总线线路是分别依附于RS485线路网络与CAN总线网络的,因此物理层中两种传输方式的转换也是相互通信的重点。所述DSP控制器上拥有CAN总线与RS485的接口芯片,当需要将步进电机细分控制系统接入相应网络时,直接选择接入相应接口。相应的总线线路原理图请参阅图2和图3所示。

请参阅图2,所述Modbus总线线路包括Max485收发器和RS485总线,Max485收发器包括引脚A和引脚B,所述RS485总线线路包括引脚1和引脚2;所述引脚1连接所述引脚B,所述引脚2连接所述引脚A。所述Max485收发器采用单一电源+5V工作,额定电流为300μA,采用半双工通讯方式。它完成将TTL电平转换为RS485电平的功能。MAX485收发器的芯片的结构和引脚都非常简单,MAX485收发器内部含有一个驱动器和接收器。RO和DI端分别为接收器的输出和驱动器的输入端,与DSP控制器连接时只需分别与DSP控制器的RXD和TXD相连即可;和DE端分别为接收和发送的使能端,当为逻辑0时,MAX485收发器处于接收状态;当DE为逻辑1时,MAX485收发器处于发送状态,因为MAX485收发器工作在半双工状态,所以只需用DSP控制器的一个管脚控制这两个引脚即可;A端和B端分别为接收和发送的差分信号端,当A引脚的电平高于B时,代表发送的数据为1;当A的电平低于B端时,代表发送的数据为0。在与DSP控制器连接时接线非常简单。只需要一个信号控制MAX485的接收和发送即可。同时将A和B端之间加120Ω的匹配电阻,增大负载,减小回波反射,使信号到达传输线末端后不反射。

请参阅图3,所述CAN总线线路包括SN65HVD230收发器和CAN总线;所述SN65HVD230收发器包括引脚CANH和引脚CANL,所述CAN总线线路包括引脚1和引脚2,所述引脚1连接所述引脚CANH,所述引脚2连接所述引脚CANL。SN65HVD230收发器可用于较高干扰环境下,其信号传输速率最高可达1Mb/s。SN65HVD230收发器具有高速、斜率和等待3种不同的工作模式。其工作模式控制可通过RS控制引脚来实现。CAN控制器的输出引脚TX接到SN65HVD230收发器的数据输入端D,可将此CAN节点发送的数据传输到CAN总线中;而CAN控制器的输出引脚RX和SN65HVD230收发器的数据输出端R相连,用于接收数据。SN65HVD230收发器方式选择端口RS通过跳线和一端接地的斜率电阻器连接,通过硬件方式可实现3种工作模式的选择。其中,本发明所使用的斜率电阻器为10kΩ,同时将A和B端之间加120Ω的终端电阻,以提高数字通信的抗干扰性和可靠性。

进一步的,所述步进电机细分控制系统还包括保护电路,所述电机驱动模块通过所述保护电路连接所述DSP控制器内嵌的中断口。

进一步的,步进电机细分控制系统还包括稳压电源模块,所述稳压电源模块连接所述电机驱动模块并为其供电。

进一步的,所述DSP控制器内嵌的RAM中设有Modbus数据缓冲区和CAN数据缓存区;所述总线线路模块包括Modbus总线线路和CAN总线线路;所述DSP控制器与Modbus总线线路的通信数据存入所述Modbus数据缓冲区;所述DSP控制器与所述CAN总线线路的通信数据存入所述CAN数据缓存区。

进一步的,所述电机驱动模块采用的型号为THB6064AH的电机驱动模块。THB6064AH是一款整合逻辑模块和功率模块于一体的高性能两相混合式步进电机驱动芯片。配合简单的外围电路即可实现高性能、多细分、大电流的步进电机驱动,采用脉宽调制,有多达8种细分可选(1/2、1/8、1/10、1/16、1/20、1/32、1/40、1/64、)具有驱动噪音低、震动小、性能可靠、性价比高的特点。THB6064AH的原理图如图4所示,在制作成实际工业板时,为了提高其抗干扰能力,在各种电源和地线之间均匀放置多个0.1uf的去耦电容,以提高电源抗干扰能力。对信号输出接口OUT1A和OUT2A用拨码开关来控制,留出了测量测试的引脚,避免测量贴片元件。

进一步的,所述DSP控制器采用的型号为TMS320F2812DSP控制器。TMS320F2812DSP控制器的主频高达150MHz,片内具有高达128K字的编程FLASH,集成了PWM发生模块,带有CAP捕获模块的事件管理器(EV)模块,32位定时器,12位AD采样模块,多个复用输人输出可自定义的I/O端口。所述显示模块通过所述DSP控制器内嵌的I/O口与所述DSP控制模块连接。本实施例使用的步进电机一周为200步,若要实现128细分就需要至少拥有200*128个分级,因此至少需要拥有25600个采样点才能还原所需近的近似正弦波。

因DSP控制器上TMS320F2812的晶振为30MHz,内部5倍频后,系统时钟为150MHz,TMS320F2812提供了事件管理器EVA,事件管理器EVA包括PWM产生电路,事件管理器EVA2分频后定时器,所以最佳计数周期为13.33ns即TC=13.33ns,载波频率为f=20khz,k为奇偶采样点共25600个,M倍数取1。确定设定值后,利用Excel将公式和数值导入计算,部分计算值如表1。电压正弦PWM的DSP控制算法,利用Excel将所得正弦值绘图得附图5。

表1 SPWM值计算结果

在TMS320F2812内开辟数组缓存,把所得的值放入保存,再用DSP控制器的PWM1~3引脚输出近似正弦波的波形,再经过简单处理,就可以输出一个高准确度的三相SPWM波形,就可以实现DSP对细分驱动的控制。

进一步的,所述步进电机细分控制系统还包括单片机模块,所述单片机模块连接所述总线编码模块,所述单片机模块采用的型号为AT89S52的单片机。所述AT89S52单片机作为从机通过Modbus总线线路接入设备进行接收数据。

标准的Modbus协议有两种传输方式分别是ASCII(American Standard Code for Information Interchange)模式和RTU(Remote Terminal Unit),本发明采用在相同波特率时可以传输更多字符的RTU方式。典型的RTU消息帧的读格式,包括主机请求以及从机应答格式,为了达成通信必须定义标准协议的数据帧,它们分别如表1和表2所示的格式进行定义传输。其中,所述DSP控制器为主机,所述AT89S52单片机为从机。

表1主机向从机发送的请求消息帧格式

表2从机得到请求后向主机发送的响应消息帧格式

根据表1和表2RTU模式的消息帧结构,查询消息中的功能代码告之被选中的从设备要执行何种功能。本发明自定义的功能代码如表3所示。

表3本发明DSP控制器的电机细分控制系统功能表

本发明还实现Modbus总线协议与CAN总线协议的转换。因为CAN总线协议中没有定义数据帧中数据的应用功能,而Modbus协议却有应用层的定义。因此,转换协议时要按Modbus协议中的报文数据的含义对CAN总线报文数据场中的各数据定义功能。DSP控制器从设备接收到命令报文数据存放在CAN输出数据区中。由于CAN总线传输的数据长度最大为8个字节,而Modbus协议需要传输的数据长度大于8个字节。为了配合CAN总线的传输方式,对Modbus传输到的数据在CAN总线上采用分次传输,在CAN总线报文中数据缓冲区的首段定义一个变量用于标记Modbus数据分段,变量用于表示报文是第几次发送的报文。0代表Modbus协议命令字节一次传输完毕,1代表Modbus协议命令字节需要两次传输完毕。DSP控制器在接收数据时,首先要检测该变量数值,然后再根据值来判断发送的数据类型,再读取数据存入CAN数据缓存区中。

为了预防传输时出错,本发明中采用了一种简易的纠错机制对数据进行校验纠错。

系统在完成一次完整的Modbus报文接收后,所述DSP控制器就进行CAN数据缓冲区和Modbus数据缓冲区的数据交换。同时计算该帧报文的CRC校验码,然后写入到Modbus数据缓冲区。在Modbus数据缓冲区内是一个完整的、标准的Modbus RTU模式的报文内容。

在完成以上响应并在CAN数据缓冲区交换数据后,让所述DSP控制器从Modbus数据缓冲区取出Modbus报文,并将报文数据通过所述DSP控制器的串口模块发送到指定的Modbus总线线路中。然后DSP控制器等待接收Modbus总线线路的回答报文。并对Modbus总线线路设计一个约400ms的应答时间。

传输指令发出后超过设计应答时间若无响应,则需要重新发送。连续三次都没接收到应答报文,则认为Modbus总线线路出现通信故障或设备损坏。将通信故障的标志和缓冲程序写入到Modbus数据缓冲区。如果有应答响应报文,则当接收完毕应答报文后,要对回答报文进行CRC校验,如果CRC校验错误或Modbus总线线路返回了错误应答报文,将错误标志数据和错误应答报文传进转换设备。如果是读功能,则将成功标志数据和回答报文中数据域内容写入到Modbus数据缓冲区。如果是写功能。则只将成功标志数据写入到Modbus数据缓冲区。在所述DSP控制器完成一次Modbus通信后,要对Modbus与CAN数据缓冲区进行一次数据交换。所述DSP控制器将CAN数据缓冲区的数据发回到CAN总线线路,CAN总线线路要对错误信息进行相应的处理,这样就完成了CAN协议到Modbus协议的转换,并能实现错误纠错。

请参阅图6,CAN总线协议与Modbus总线协议间的转换流程图。协议转换的程序编写重点是在CAN与Modbus数据间的交换。首先系统对串口模块进行初始化,对CAN数据缓冲区与Modbus数据缓冲区清空;然后判断串口转换模块是否有数据输入,若检测到有数据输入,则对所述串口转换模块的接口进行扫描检测是CAN总线接口还是Modbus总线接口被接入网络,确定后开始接收数据,并对数据进行错误校验,检验数据是否完整;当多次传输数据,确认数据完整后将数据存入相应的CAN数据缓冲区或Modbus数据缓冲区中,并与另标志位一种总线方式的数据进行交换,转存至另一个数据缓冲区中;然后将数据转发送到另一端的设备上并发送确认报文,从设备上接收并回答报文,若报文回答正确再向DSP控制器发送数据并回传至系统,转换完成,若报文无回答,则检测数据是否已经发送3次,若已发送3次则重置错误标志位,若没有发送有3次,则返回继续发送确认报文;另外,报文回答若不正确,也需要重置错误标志位。

请参阅图7,本发明一种步进电机细分控制系统的控制过程,首先由DSP控制器对各模块进行初始化,对DSP控制器内部中断提供使能,对事件管理器EVA初始化,对串口模块和CAN总线线路初始化,清空Modbus数据缓冲区与CAN数据缓冲区,对步进电机经行使能初始化,参数定义与功能模块单元的参数初始化,设置Modbus中断响应、电机细分算法计算部分等。程序初始化各模块后,确认串口转换模块所接入的总线方式,从单片机模块中读取设备编号发送报文确认设备,然后通过DSP控制器设定所要输出的电流、细分度、旋转方向以及速度。当设定完成后启动系统向所述电机驱动模块输出输出控制信号,驱动所述步进电机进行相应的运动。

上述说明是针对本发明较佳可行实施例的详细说明,但实施例并非用以限定本发明的专利申请范围,凡本发明所提示的技术精神下所完成的同等变化或修饰变更,均应属于本发明所涵盖专利范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1