首页> 中国专利> 实现开放式'软'串行实时通讯系统的硬件接口卡

实现开放式'软'串行实时通讯系统的硬件接口卡

摘要

本发明属于计算机数值控制技术领域,涉及实现开放式“软”串行实时通讯系统的硬件接口卡,包括ISA总线接口电路、SERCOS协议微处理器及其外围电路以及总线缓冲电路、控制逻辑电路部分;地址总线上的信号经过控制逻辑电路后,选通SERCOS协议专用微处理器;由选通的处理器系统软件程序发送的读取控制参数,并处理成SERCOS协议报文,通过其外围电路传送给控制驱动的对象;并读取驱动控制对象反馈的周期性数据报文,由控制逻辑电路通过周期性的中断信号通知NC读取总线缓冲电路中的反馈数据,进行处理,完成一个周期的伺服循环。本发明使“软”SERCOS系统具有较高的开放性,可扩展性、可移植性、可定制性及互操作性。

著录项

  • 公开/公告号CN1424659A

    专利类型发明专利

  • 公开/公告日2003-06-18

    原文格式PDF

  • 申请/专利权人 清华大学;

    申请/专利号CN02159977.7

  • 申请日2002-12-31

  • 分类号G06F13/14;G06F13/24;

  • 代理机构北京清亦华专利事务所;

  • 代理人廖元秋

  • 地址 100084 北京市海淀区清华园

  • 入库时间 2023-12-17 14:48:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2009-02-25

    专利权的终止(未缴年费专利权终止)

    专利权的终止(未缴年费专利权终止)

  • 2005-08-24

    授权

    授权

  • 2003-09-03

    实质审查的生效

    实质审查的生效

  • 2003-06-18

    公开

    公开

说明书

技术领域

本发明属于计算机数值控制技术领域,特别涉及串行实时通讯系统的改进技术。

背景技术

SERCOS是串行实时通讯系统(Serial Real Time Communication System)的简称。1990年由德国主要计算机数值控制(CNC)系统制造商、伺服系统制造商和研究机构共同发起成立了SERCOS协会,其目的是制定一个CNC系统与数字伺服系统之间统一的数据交换接口标准协议,提供产品的互换可能性。目前该协议已经被欧洲主要的CNC和伺服系统制造商所接受,引起了国际同行业重视,并被推荐作为新的德国标准(EN-61491)和国际标准(IEC-61491)。这种现场总线技术已经广泛应用于数控系统、机器人控制等实时控制领域。

从SERCOS标准的提出发展至今,先后出现了两代应用产品。在SERCOS发展初期,完全用硬件的方法来实现SERCOS标准的功能。在这个阶段出现的SERCOS产品通常称之为“硬”SERCOS产品。90年代后期,随着计算机硬件和软件技术的发展,为了克服“硬”SERCOS系统产品存在的接口复杂和成本较高的应用瓶颈问题,出现了“软”SERCOS技术。它是用运行在特定的实时操作系统上的软件来实现原来“硬”SERCOS系统的部分功能,而其它功能由简化的“软”SERCOS系统硬件接口卡来实现。下面分别介绍一下这两种典型SERCOS系统产品的特点。

一、“硬”SERCOS系统

传统的“硬”SERCOS系统主要由SERCOS硬件接口卡所组成。“硬”SERCOS系统产品中,SERCANS硬件接口卡是德国的Indramat公司开发的符合SERCOS接口标准的系列硬件接口卡。SERCANS硬件接口卡包括:SERCON410B ASIC(特定的集成电路)、光纤连接电路、微处理器μP、快速存储器(FLASH)和随机存储器(RAM)、双端口存储器(DPR)、串行调试接口(UART)、低速编码器(LSE)、诊断和错误指示电路(七段数码显示电路LED)、串行接口(RS-232)和工业标准结构(ISA)总线接口。SERCANS硬件接口卡各部分之间的连接关系如图1所示。

整个“硬”SERCOS系统硬件接口卡主要完成如下几个方面的功能:独立完成初始化、通讯和诊断、处理和传送一些最基本的控制参数(如:报文类型、电机数目、周期只需要一次加载)和同时驱动最多8个电机的功能。

“硬”SERCOS系统硬件接口卡中,微处理器μP通过SERCOS系统硬件接口卡内部的总线与DPR、可擦可编程只读存储器(EPROM)、RAM、UART和SERCON410B相互连接。在控制过程中,相关的控制参数由微处理器(μP)控制,通过DPR传送到ISA总线接口,而后再由ISA总线接口传送到数值控制器(NC)。相应地,同样由微处理器μP控制,SERCOS电机的控制参数则通过SERCON410芯片上的SERCOS总线接口进行读写。另外,在控制系统发现错误时,会由数值控制器NC控制,在七段数码显示器上将相应的错误代码显示出来。

μP是整个SERCOS系统硬件接口卡的中央处理单元。该微处理器运行固化在可擦可编程只读存储器(EPROM)或者快速可擦可编程只读存储器(FLASH-EPROM)中的程序,协调整个系统各个部件的正常工作,同时具有系统监测、故障诊断、出错处理、硬件重启等功能。

DPR是NC和μP之间交换数据的媒介。NC传送给电机的数据和命令放在DPR中,在适当的时候由μP将其放到SERCOS协议专用处理芯片SERCON410B中,由SERCON410B发送到光纤环路上。从电机反馈回来的数据由SERCON410B芯片进行处理。在反馈数据处理完成后。由μP放到DPR中去,供NC读取。

串行调试接口UART为用户利用SERCOS调试程序,通过串行通讯口对系统进行调试提供了可能。

EPROM中固化了硬件运行的程序、算法、一些固定的设置数据等。这些程序是出厂时固化在EPROM里的,不能随意更改。

RAM则是SERCOS硬件接口卡中的内存。

二、“软”SERCOS系统

现有的“软”SERCOS系统代表性产品是SoftSERCANS,名字源于“硬”SERCOS系统产品SERCANS的名字。原有的“硬”SERCOS系统产品SERCANS是在一块主动式的SERCOS系统硬件接口卡上集成了SERCOS标准接口的各项功能。而“软”SERCOS系统产品SoftSERCANS是SERCANS进一步发展的产物,NC和SERCOS系统控制环的接口上升到用软件来实现,这样减少了接口的复杂程度,简化了NC端软件的开发。它使用一块被动式的卡,被动式卡的硬件成本低于主动式卡。“软”SERCOS系统产品,克服了“硬”SERCOS系统产品在经济上和技术上的瓶颈问题。

目前SoftSERCANS所支持的SERCOS系统的标准硬件接口卡包括如下两类。基于ISA总线的接口卡和基于周边元件扩展接口(PCI)总线的接口卡。  

“软”SERCOS系统所定义的SERCOS标准接口具有清晰的结构和对伺服命令的精确描述。另外“软”SERCOS系统定义了数百个标准的参数。用户可以通过对这些接口和参数的访问,实现从软件的角度控制相关的SERCOS标准设备(如:电机等)。现有的“软”SERCOS系统在进行设计时,考虑到视窗(Windows)操作系统仍将是未来的主流操作系统。SoftSERCANS的运行环境选择了基于Windows的实时扩展系统。虽然这是一种实时高性能的操作系统,但无形中又提高系统的应用成本。

在“软”SERCOS系统软件部分主要提供了如下几个方面的功能函数:程序控制功能,A参数的读写功能,Y参数的读写功能,S/P参数读写功能、屏幕显示功能,周期控制功能,同步功能,故障诊断功能,通信阶段切换功能、实时数据交换功能和命令通道写功能。

尽管现有的“软”SERCOS技术可以用软件的方法来解决“硬”SERCOS系统中存在的技术上和经济上的瓶颈问题。但是该“软”SERCOS系统在用软件的方法来实现相关功能时,必须基于Windows的实时扩展系统RTX。由于Windows系统固有的封闭性和控制功能上的局限性,使现有的“软”SERCOS在开放性的实现上有了一定的限制。另外,该“软”SERCOS系统使用被动式硬件接口卡代替主动式硬件接口卡,降低了系统硬件的成本,但由于使用Windows实时扩展系统,又从软件方面增加了“软”SERCOS系统的使用成本。

发明内容

本发明的主要目的是为克服已有的“软”SERCOS系统的不足之处,提出一种实现开放式“软”串行实时通讯系统的硬件接口卡,使系统的中断选择更加灵活,使“软”SERCOS系统具有较高的开放性,可扩展性、可移植性、可定制性及互操作性;并可采用开放源码的共享免费实时操作系统RtLinux作为系统平台,实现了“软”SERCOS系统标准接口函数。最大限度地降低了系统的使用成本。

本发明提出的一种实现开放式“软”串行实时通讯(SERCOS)系统的硬件接口卡,主要包括ISA总线接口电路、用于SERCOS协议处理的微处理器及其外围电路以及分别连接在该ISA总线接口与微处理器之间的总线缓冲电路、控制逻辑电路部分;其特征在于:通过ISA总线接口使用地址总线选通所说的硬件接口卡;地址总线上的信号经过控制逻辑电路后,选通SERCOS协议专用微处理器;“软”SERCOS系统软件程序通过ISA总线接口发送的控制参数被存放在总线缓冲区中;由选通的SERCOS协议专用处理器读取总线缓冲电路中的控制参数,并处理和转化成SERCOS协议报文,通过其外围电路传送给控制驱动的对象;SERCOS协议专用微处理器通过光纤接口读取驱动控制对象反馈的周期性数据报文,并进行转换处理后,发送到总线缓冲电路中,由控制逻辑电路通过周期性的中断信号通过ISA总线接口通知NC,NC在接到中断信号后通过ISA总线接口读取总线缓冲电路中的反馈数据,进行处理,完成一个周期的伺服循环。

本发明具有如下四个方面的特性:

可扩展性:任何一个满足SERCOS标准的控制应用模块可以方便地扩充或替换开放式“软”SERCOS系统中的应用模块,同时不影响已有的控制模块。例如:可以根据应用的需要,在SERCOS标准的基础上扩充功能强大的驱动控制程序,例如:同时驱动控制多层和多个轴的系统。

可移植性:这种开放式“软”SERCOS系统软件未经或经过最小的修改后,可以运行于不同的基于SERCOS标准的“软”SERCOS系统硬件平台上。

可定制性:用户可以根据应用的需要定制“软”SERCOS系统软件的功能。可定制性就是针对应用的特点对于扩充后的控制器规模进行合理地裁减,达到合理的规模。

互操作性:保证已有或者已扩充的“软”SERCOS驱动软件与接口卡之间实现无缝连接的规范。

本发明的有益效果

本发明可实现基于SERCOS标准的基础上的开放式“软”SERCOS系统,该系统以本发明自主开发的“软”SERCOS系统硬件接口卡为控制驱动对象,以开放源代码的实时操作系统RtLinux为软件系统平台,可实现开放式的“软”SERCOS系统的驱动控制程序模块。

本发明可支持用户对于“软”SERCOS系统新的驱动模块和控制应用模块的扩充;基于开放源代码的实时操作系统RtLinux,可以有力地支持对于“软”SERCOS系统的定制要求;基于标准C语言的系统编制,可以使系统获得最大的可移植性;同时由于开放式“软”SERCOS系统在设计、开发与实现时均遵循了SERCOS协议标准,所以它具有与SERCOS标准设备良好的交互性。

附图说明

图1为已有的“硬”SERCOS系统硬件接口卡电路逻辑图。

图2为本发明的开放式“软”SERCOS系统硬件接口卡总体结构图。

图3为本实施例的ISA接口电路图。

图4为本实施例在ISA总线标准中16位存储器读写信号时序关系图。

图5为本实施例的总线缓冲电路图。

图6为本实施例的控制逻辑电路图。

图7为本实施例的SERCON816外围电路图。

图8为本实施例的“软”SERCOS系统初始化软件流程图。

具体的实施方式

本发明提出的实现开放式“软”串行实时通讯(SERCOS)系统的硬件接口卡结合附图及实施例详细说明如下:

本发明的实现开放式“软”串行实时通讯(SERCOS)系统的硬件接口卡总体结构如图2所示,主要包括ISA总线接口电路、用于SERCOS协议处理的微处理器及其外围电路以及分别连接在该ISA总线接口与微处理器之间的总线缓冲电路、控制逻辑电路等部分。其工作原理为:首先由运行在NC上的“软”SERCOS系统初始化程序,通过ISA总线接口使用地址总线选通本发明的“软”SERCOS系统硬件接口卡。地址总线上的信号经过控制逻辑电路后,选通SERCOS协议专用微处理器。其次,“软”SERCOS系统软件程序也将通过ISA总线接口发送控制参数。控制参数进入ISA总线接口后,被存放在总线缓冲区中。而后,由选通的SERCOS协议专用处理器读取总线缓冲电路中的控制参数,并处理和转化成SERCOS协议报文,通过其外围电路的光纤接口传送给控制驱动的对象。而针对驱动控制对象所反馈的数据报文,首先由SERCOS协议专用微处理器通过光纤接口读取其反馈的周期性数据报文,并进行转换处理后,发送到总线缓冲电路中。而后由控制逻辑电路通过周期性的中断信号通过ISA总线接口通知NC数据已经准备好。NC在接到中断信号后,将通过ISA总线接口读取总线缓冲电路中的反馈数据,进行处理。这样就完成了一个周期的伺服循环。

上述各个组成部分的电路实施例分别详细说明如下:

1、ISA总线接口电路

ISA总线接口电路的连接关系如图3所示。该电路包括两片微型计算机总线边缘连接器芯片(PC Bus Edge Connector):P1(CON AT62B)和P2(CON AT36B),两片中断选择芯片(INTERUPTSELECT)S2、S3。中断选择的芯片的中断选择输出信号分别与计算机总线边缘连接器芯片中断的输入端相连,ISA总线标准的16位存储器刷新信号将输入到CON AT62B中,而ISA总线标准的16位存储器模式信号将输入到CON AT36B中。相应地,上述芯片的输出按照ISA总线标准连接到ISA总线接口上。

ISA总线接口的地址线SA0,..,SA11、SD0,..,SD15、RSTDRV、-BHEN、-MEMR、-MEMW信号通过总线缓冲电路进行电路隔离,SA0,..,SA11、SD0,..,SD15、-BHEN缓冲后连接到SERCON816。RSTDRV、-MEMR、-MEMW则送入控制逻辑电路,RSTDRV反向后经过电平提拉供给SERCON816作为其加电初始化信号;-MEMR、-MEMW则分别与控制逻辑电路产生的选通信号-PC201CS或,形成选通信号-RDN和-WRN。

ISA接口的地址线SA12,..,SA23、BALE、AEN、-REFSH信号送入逻辑控制电路,产生片选信号-PC201CS、-MEM16信号。

在ISA总线接口电路连接部分中的信号含义如下:

高位总线使能信号(-SBHE):在16位数据传输时有效,表示数据线SD8-SD15正在传输高8位数据。

地址使能信号(AEN):当DMAC对总线控制时有效,当AEN有效时,DMA控制器对存储器和输入输出(I/O)读写命令线有控制权。

地址锁存使能信号(BALE):在该信号的上升沿,地址总线信号被锁存,在BALE的下降沿到总线周期结束时间段,地址信号有效。在DMA周期内,该信号被强制为高电平。

地址锁存线信号(Laxx):与低位的地址线一起形成24位寻址地址,可以达到16MB的寻址空间。

ISA总线标准的16位存储器模式信号(-MEMCS16):低电平有效,表示当前数据传输处于1个等待状态、16位数据存储器信号的周期。

低电平有效信号(-MEMR):在存储器读周期有效。

低电平有效信号(-MEMW):在存储器写周期有效。

存储器刷新信号(-REFRESH):指示存储器刷新周期。

系统加电信号(RESET):机器加电时变成低电平。

ISA总线标准的16位存储器读写信号周期时序图如图4所示。在BALE的上升沿,LA17,..,LA23被锁存,在BALE下降沿到总线周期结束,SA0,..,SA19有效。此时,控制逻辑电路产生-MEMCS16信号,表示系统处于一个等待状态、16位存储器读写周期,在下一个时钟周期,可以读数据。

2、总线缓冲电路

本实施例的总线缓冲电路的连接关系如图5所示。总线缓冲电路采用2片74HCT245芯片和2片74LS245芯片。其中2片74HCT245芯片U1、U2用于数据总线的驱动;另外2片74LS245芯片U3、U4用于地址总线的驱动。

数据总线信号SD0,..,SD15通过2片74HCT245芯片驱动,选通信号为-PC201CS,选通方向信号为-RDN,当-RDN为高电平时,表示写入,-RDN为低电平时,表示读出。

地址总线信号SA0,..,SA11、RSTDRV、-SBHE、-MEMR、-MEMW通过2片74LS245芯片驱动,选通信号接地,选通方向信号接高电平。

3、控制逻辑电路

本实施例的控制逻辑电路如图6所示,由译码电路和中断信号缓冲电路所组成,分别完成地址译码和中断选择及缓冲的功能;

其中,控制逻辑电路的译码电路由基地址选择电路、提拉电阻RP1、3片74LS688芯片U5、U7和U8组成、1片74LS373芯片U6、1片74LS125芯片U13、1片74LS32芯片U16组成。译码电路的主要作用是产生选通信号-PC201CS、读信号-RDN、写信号-WRN、16位存储器信号-MEM16和加电初始化信号RSTN。

基地址选择电路由1个8位开关SW DIP-8、8个10kΩ电阻组成,当开关导通时,表示低电平,该地址位值为0,不导通时,表示高电平,该地址位值为1。当AEN为低电平时,SA12,..,SA23与基地址选择电路产生的电平值比较,如果在该卡的地址范围内,则MEM16为低电平,表示进行16位存储器读写,该部分电路由2片74LS688和基地址选择电路组成。

当BALE为高电平时,LA17,..,LA23有效,LA17,..,LA23通过1片74LS373进行锁存,在REFSH为高电平时(非刷新周期)与基地址选择值比较,比较的结果与MEM16产生电路的比较结果相与,产生选通信号-PC201CS。-PC201CS与-MEMR相与,产生读信号-RDN;-PC201CS与-MEMW相与,产生写信号-WRN。

另外,RSTN信号是由SYSRST经过反向器74LS04后而产生的。

由于SERCON816是TTL电平,控制逻辑电路产生的也是TTL电平,所以SERCON816芯片的信号都需要加10kΩ的提拉电阻。

控制逻辑电路的中断信号缓冲电路由1片74LS125芯片U13所组成。这部分电路的功能是对周期性和非周期性的中断信号进行缓冲。

中断信号有两种:周期中断和非周期中断。周期中断在数据传输的每一个周期里都产生一次,典型的时间周期是2ms,非周期中断则主要用作SERCON816芯片和微型计算机(PC)之间的命令控制、诊断和出错处理。该部分的周期中断信号CYCINT和非周期中断信号NCYCINT通过74LS125进行缓冲。该部分电路用到了1片74LS125,未用输入引脚接低电平。

4、SERCON816及其外围电路

SERCON816及其外围电路如图7所示。该部分电路主要由1片SERCOS协议专用微处理器芯片SERCON816,外围电路由中断选择开关SW DIP-3、提拉电阻和出错指示电路HI-BR-1602和HI-BR-2602、时钟电路所组成。  

本实施例的SERCOS协议专用微处理器采用SERCON816芯片,它是整个硬件接口卡的核心。其工作原理为:SERCOS协议的信息流处理完毕后,SERCON816芯片会把处理结果放到一个SERCON816芯片内部的双端口存取器(DPR)中。SERCON816还提供了40个字的控制寄存器,NC可以通过读写这些控制寄存器,获得想要设置的传输速率、中断源、诊断信息等。对DPR的读写可以采用内存映射读写和存储器直接访问(DMA)两种方式,本实施例中采用了内存映射读写方式。ISA总线接口的地址选择信号传送到基地址选择电路,进行选择后,将相关的选择结果传送给SERCON816微处理器。基地址选择电路可以使SERCON816上的DPR映射到NC的内存地址为0x0C000-0x0FFFF的地址空间,SERCON816上的控制寄存器的起始地址空间为DPR起始地址空间加上0x00800,一经映射以后,NC就可以方便的像控制普通的物理内存一样对“软”SERCOS接口卡进行控制了。相关的控制参数报文则通过总线缓冲电路与ISA总线接口相互传送。相应地,SERCON816微处理器控制命令报文则会通过控制逻辑电路与ISA总线接口相互传送。而在总体结构中,报文收发电路直接与SERCON816微处理器相连,它主要用于数据和命令报文的相关处理。错误显示电路则将系统伺服控制过程中,出现的错误代码进行相关的显示。而与SERCON816微处理器直接相连的时钟电路则主要用于产生64MHz的振荡波形,提供给SERCON816。

SERCON816产生的中断信号INT0、INT1、CYCINT、NCYCINT通过控制逻辑电路进行缓冲,产生周期中断信号PCCYCINT和非周期中断信号PCNCYCINT,提供给ISA接口。

在图8中,INT0和INT1的输出经过选择开关SW DIP-3,可以灵活的选择所需的中断。在本实施例中,选择CON CLK作为INT0。

本实施例的SERCON816芯片与外围电路一起实现了如下几个方面的功能:总线接口(16位的地址总线、8/16位的数据总线,支持Intel和Motorola总线)、双端口存取器(DPR)2048个字(2k*16bit)、报文处理、时间控制、中断信号产生、串行收发数据、时钟输入输出,输入收发信号时钟和处理器时钟,也可以输出这些时钟的分频时钟。

在本实施例中使用了SERCON816芯片,这是因为SERCON816芯片最大可以达到16Mbit/s的全双工传输速率,在通信周期内能自动的进行同步数据报文和Service通道数据传输,SERCON816芯片还可以做到和前一代产品SERCON410B控制芯片兼容。

为了测试SERCON816芯片及其外围电路在控制过程中是否存在错误,本实施例中设计了出错指示电路。在VCC和L-ERRN之间加LED和560Ω电阻,当光纤环未闭合或光信号扭曲时LED亮,指示出错。该部分电路功能还可以通过软件的方法来判断系统出错的原因。在本实施例中相应的出错情况对照信息如表1所示。

表1:出错情况表

LMODE1(addr.2H.15)LMODE0(addr.2H.1  L_ERRN变成0的情      0      0      1      1      0      1      0      1    FIBBR和RDIST    RDIST    FIBBR    不激活

本发明的硬件接口卡通过软件程序的驱动和控制即可实现开放式“软”串行实时通讯系统。举例说明如下;

采用本发明的开放式“软”SERCOS系统从系统加电到系统正常运行,需要经历两个主要的阶段。它们分别是初始化阶段和正常运行阶段。初始化阶段主要完成对于系统的控制寄存器参数设置、设置缓冲区初始值、向控制对象发送初始化参数、检查和校验通讯结果等准备性工作,为即将开始的下一阶段的正常控制作好准备。正常运行阶段,当系统的初始化工作完成以后,系统将进入正常的运行阶段。在正常运行阶段中系统将根据用户的应用程序来进行SERCOS系统接口卡的参数设置,从而达到完成对控制对象的操作目的。

由于正常操作阶段中,具体的实现与用户操作和应用密切相关。所以仅仅介绍采用本发明的开放式“软”SERCOS系统的初始化软件模块的一个实施例。

采用本发明的开放式“软”SERCOS系统初始化软件模块的实施例流程如图8所示。在相关的系统软件进行复位后,初始化阶段可以分成以下八个步骤,分别详细说明如下:

步骤1:主要按照SERCOS标准,设置SERCON816芯片的控制寄存器的各个控制位。其中包括:设置寄存器模式(REGMODE)控制位为1,同时设置位流的传输速率、收发极性、传输能量、延时判断条件和清除中断。

步骤2:计算在初始化阶段1和阶段2中所需要的控制寄存器的初始化参数。这些初始化参数包括SERCON816芯片的内部补偿参数、报文的时间窗参数、报文接收和发送的延迟范围参数。它们的计算方法如下。

计算SERCON816内部处理补偿参数(TCNTST和MCLKST)  为了控制时间,SERCON816内部设置了一个计数器(TCNT),在每一个报文(MST)结尾的TCNT设置为一个初始值,TCNT每隔lus加1,其当前值用于:1)检测通讯周期的长度;2)决定报文传输的时刻;3)检测接收报文的时间;4)生成中断信号和控制时钟信号(CON CLK和DIV CLK)。由于波特率和处理速度不同,在接收到MST和开始处理之间有延迟,以及接收到报文和处理报文之间有延迟,设置TCNTST和MCLKST,以补偿延迟。按照SERCOS标准和SERCON816芯片的内部实现计算上述补偿参数。

计算MST时间窗参数JTSCYC1、JTSCYC2为了保证报文传输时间不出现偏差,SERCON816芯片为MST设定了时间窗,监视MST的时间窗。按照SERCOS标准,计算上述时间窗上下限值。如果MST偏离了该时间窗,则产生MST出错中断。

设置报文发送宿主端(Master)接收和发送延迟范围参数JTRDEL1、JTRDEL2在Master端,发送MST和接收MST之间有一个延迟,该值保存到控制寄存器11H(TCYCDEL)中,如果TCYCDEL不在设置范围内,表示光纤环未闭合,1次出错产生中断信号(INT_MSTLATE),2次出错产生中断信号(INT_MSTMISS)。

步骤3:主要完成初始化双端口存储器(DPR)的数据结构的功能。主要包括设置接收缓存区、设置发送缓存区、将DPR数据结构链接到收发链表上和对服务(Service)通道数据结构的头信息进行初始化。

具体设置信息包括:设定报文(AT)的开始时间为100us、设定报文(MDT)开始时间为600us、设定为单缓存模式、设定AT的长度为2个字、设定MDT长度为2个字和根据应用需要设定要检验接收时间。

步骤4:主要是从初始化阶段0提升到阶段1。其功能是检查SERCOS硬件接口卡的光纤环是否闭合。如果闭合,则设定进入阶段1、开始发送数据(即除了传输报文MST外,还要传输数据报文AT和MDT)。

步骤5:是从初始化阶段1提升到阶段2。其功能是依次给光纤环中所有电机发送相应的地址,并接收应答信号。初始化程序根据用户设定好的地址(报文MDT中的地址位Addr)依次发送相应的地址给电机,如果在规定的时间内收到电机的应答,则表示该电机在光纤环中。如果所有的电机都已经找到,进入阶段2。

步骤6:从初始化阶段2提升到阶段3。其功能是读取电机数据报文中的IDN参数,检查控制电机是否支持报文类型,读取和计算电机通信参数。首先,检验用户要求的报文(AT和MDT)中的控制参数(IDN)是否是电机支持的,这通过读取IDN00187(电机所支持的AT中的IDN列表)和IDN00188(电机支持的MDT中的IDN列表)来实现,如果正确,则传递用户要求的AT和MDT中的IDN列表给电机,这主要是通过写IDN00016(用户要求的AT中的IDN列表)和IDN00024(用户要求的MDT中的IDN列表)。其次,读取电机通信参数,读取IDN为3、4、5、88、90的设定值。最后,计算通信参数,如果无错,写IDN为1、2、6、89、9、10、7、8、15的计算值到电机。

步骤7:从初始化阶段3提升到阶段4。它主要完成了如下两个功能:首先,设置用户要修改的IDN值;其次,进行传输参数校验,执行命令IDN00128。如果正确,提升到初始化阶段4。

步骤8:进入正常的伺服循环控制阶段。使电机处于准备接收数据阶段。

上述整个采用本发明的开放式“软”SERCOS系统的初始化软件模块是开放源码的实时操作系统RtLinux上用标准C语言来完成的。在开发实现时,采用了最大限度地使用标准C语言库函数的策略,而尽量少使用RtLinux的系统调用,以尽量保证整个系统的可移植性。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号