CAN总线在电机控制中的应用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

工业控制网络

CAN总线在电机控制中的应用

学号:

姓名:

班号:

CAN总线在电机控制中的应用

摘要:介绍了CAN总线的特点,并讨论了CAN总线在伺服电机通信控制和一种分布式电机控制系统中的应用。

关键词:CAN总线;伺服电机控制;分布式电机控制

1.引言

CAN 是Controller Area Network 的缩写,是ISO国际标准化的串行通信协议。CAN 的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。

随着计算机硬件、软件技术及集成电路技术的迅速发展,工业控制系统已成为计算机技术应用领域中最具活力的一个分支,并取得了巨大进步。由于对系统可靠性和灵活性的高要求,工业控制系统的发展主要表现为:控制面向多元化,系统面向分散化,即负载分散、功能分散、危险分散和地域分散。

分散式工业控制系统就是为适应这种需要而发展起来的。这类系统是以微型机为核心,将5C技术—COMPUTER(计算机技术)、CONTROL(自动控制技术)、COMMUNICATION(通信技术)、CRT(显示技术)和CHANGE (转换技术)紧密结合的产物。它在适应范围、可扩展性、可维护性以及抗故障能力等方面,较之分散型仪表控制系统和集中型计算机控制系统都具有明显的优越性。

CAN属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络。作为专门应用于工业自动化领域的网络,CAN总线具有以下优点:

(1)使用简单方便。许多CAN控制器芯片如SJA1000T、Philips 82C250等实现了CAN物理层及数据链路层的大部分,在使用时用户需要做的只是两件事:对CAN控制器进行初始化,对CAN总线上的数据进行收发操作。

(2)高效可靠。CAN采用短帧结构,数据帧中的数据字段长度最多为8B,所以传输的速度快(最大通信速率可达1Mbps),受干扰的概率低。同时,CAN 总线作为多主节点,各节点通过总线仲裁获得总线控制权,并拥有完善的错误处理机制,保证了各种干扰环境下数据传输的安全可靠。

(3)系统可扩充性好。CAN总线是面向消息的编码,而不是面向设备的编码,故增添或删减CAN上的节点非常方便和灵活,易于系统的扩充。

2.基于CAN总线的伺服电机通信控制

伺服电机具有结构紧凑、控制容易、运行稳定、响应速度快等优异特性,已越来越成为现代工业自动化系统中的一个重要执行元件。在自动化程度高、需精确控制速度、位置、力矩等的场合,如印刷机械、造纸机械、纺织机械、工业机器人、高速电梯、数控机床等重要行业中,得到了普遍的应用。

德国伦茨公司生产的伺服电机由于提供了CAN总线接口,使其很容易挂接到CAN总线上,通过CAN总线进行数据传输与控制,拓展了伺服电机的功能与应用范围,使伺服电机能更好更灵活地应用于现代工业控制系统中。

(1)伺服电机接入CAN网

伦茨伺服电机的伺服控制器由于提供了专门的CAN总线接口X4,可以像其他的CAN节点一样,用普通双绞线作为通信介质,很方便地连接到基于CAN 总线的工业控制系统上,如图1所示。

伦茨的伺服控制器与伺服电机之间采用旋转变压器或光电编码器建立反馈,形成高精度的伺服控制系统,伺服电机实时地将其运行状态与运行信息上传给伺服控制器。作为CAN总线上的节点,伺服控制器不仅可以与上位主机进行通信,通过CAN总线接收上位机的各种操作、控制和参数设定命令;同时伺服控制器之间亦可以进行快速的数据交换,相互间建立一定的协调或控制关系。

(2)CAN的通信协议

作为实时性要求比较高的工业控制底层网络,CAN协议只分为3层:物理层、数据链入层和应用层。CAN通信协议有4种不同的帧格式:数据帧、远程帧、错误帧和超载帧。

由于CAN通信协议给出的只是共性要求,在实际应用中需要将协议具体化,建立适用的协议规则。根据伺服电机伺服控制器的特点,并遵循CAN通信协议标准,制定了伺服控制器的通信协议规则。伺服控制器的每个信息帧分为2部分:帧头和数据域。帧头占2B,其前11位为标识符,然后是一位RTR位,最后是4位的数据长度位DLC(即所发数据的实际长度,以字节为单位)。数据域占用8B。11位的信息标识符反应了节点的优先级别,总线仲裁就是通过它来实现的,信息帧的标识符越小,信息帧就具有越高的优先权。除总线状态等特殊信息外,伺服控制器对所传输信息的标识符有一定的计算公式:

信息标识符=基准标识符+设定的控制器的节点地址

伺服控制器的节点地址可以在参数代码表中设定。而对信息的基准标识符,伺服控制器有统一的规定,如:同步触发信号的基准标识符为128,来自控制器CAN-OUT1通道的信息的基准标识符为384,而发送到控制器CAN-IN1通道的信息的基准标识符为512,通过参数通道1发送到控制器的信息基准标识符为1536,通过参数通道1接收的信息基准标识符则为1408。

(3)上位主机的软件设计

通过CAN总线进行通信与控制的伺服电机,在针对实际的应用要求配置好伺服控制器的内部控制信号流,以及基于CAN的接口功能模块和数据通道后,剩下需要解决的是上位主机的软件设计问题。

由于上位主机所接插的CAN通讯适配卡一般都提供CAN的驱动函数,所

以在上位机软件的编制过程中,实现与CAN总线的通信部分可以直接调用相应的函数,如上位主机与CAN通信的主要任务:对CAN适配卡的初始化、CAN

信息包的发送、CAN信息包的接收等,都有现成的函数可以使用,为用户使用CAN进行通信提供了方便。对CAN通讯适配卡的初始化主要是初始化适配卡的各个寄存器,设置中断向量、通信卡的波特率以及中断屏蔽字等必要的参数,为正常通信作准备。实现CAN信息包的发送,首先要确定信息包的11位信息标

识符,填入帧头,并在数据域中填入需要发送的数据信息,通过发送函数发送给所有CAN节点或特定的CAN节点上。而对于使用接收函数所接收的CAN信息包,亦通过其11位信息标识符,判断其来源,对数据域的数据进行处理,取得有效的信息,进行显示或存储,并按照控制需要发送控制指令。其软件控制流程图,如图2所示。

上位主机正是通过对CAN驱动函数的不断调用,发送控制命令或参数设定命令给各伺服电机的伺服控制器,驱动伺服电机的启停运转;同时接收来自伺服控制器的伺服电机的速度、相位、转动方向、转矩等各种数据信息及状态信息,并进行分析处理,然后按照系统的实际控制需要再给伺服控制器发送相应的命令,去驱动电机,使伺服电机的运行始终按用户的要求进行变化,从而实现对伺服电机的管理与控制。

3.一种基于CAN总线的分布式电机控制系统

相关文档
最新文档