一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于数控系统的通信方法和系统与流程

2022-06-29 15:05:21 来源:中国专利 TAG:


1.本发明涉及数控系统领域,更具体地涉及一种用于数控系统的通信方法和系统。


背景技术:

2.数控系统是数控机床的大脑,控制着机床的各个关节,这些关节主要分成两类,一类是电机的控制、一类i/o口的控制,i/o口包含输入和输出两种,输出装置有继电器、电磁阀、指示灯等,输入i/o有按键、霍尔单元传感器、脉冲发生器等,数控系统自带有软plc(可编程逻辑控制器)功能,用来控制机床的输入输出i/o口。软plc以梯形图、指令表为编程方式。
3.图1是现有技术的发那科公司数控系统的梯形图窗口,图中x表示机床侧输入信号、x0003.0表示外部输入常开开关;sub表示集成功能模块、f表示nc侧输入开关信号;r梯形图定义的内部继存器;g表示软plc到nc侧的开关信号,y表示机床侧输出信号。图1中不同的数字代表系统中的变化。
4.数控系统软plc可控制上千个i/o(输入/输出)口,在plc梯形图的编辑过程中,又会产生成千上万个中间变量,这些变量以寄存器的方式保存。梯形图在数控系统中按固定的周期运行一次,扫描对应的输入信号,按照梯形图的逻辑执行后,改变了相应的输出状态,根据输出状态,改变相应的电平状态,最终传输到继电器、指示灯等终端元件。
5.在plc工程人员设计中,由于中间信号各个交叉,相互影响,很难保证一次性设计的逻辑满足控制要求,常常会产生毛刺、错误逻辑现象。需要建立分析手段,开发出相应的软件、硬件来对输入输出及中间变量进行分析。一般对i/o信号及变量进行分析的软件称之为逻辑分析器。在数控系统中,由于成本、实时性的要求,逻辑分析器不会放到数控系统内部,而是在pc端开发逻辑分析器,pc机与数控系统进行实时通信,实时通信的方式多数以工业以太网进行通信。如can、ethercat等现场总线。那么问题来了,由于软plc中包含了大量的数据,而现场总线使用中,带宽是有限的,无法把所有的数据上传到pc端,而住住需要分析的数据分散在不连续的地址空间内。i/o信号占位1bit,而其地址是16bit,当要采集100个i/o信号时,需要的地址是1600bit,超出了现场总线的带宽,且数据量过大,会影响数控系统的性能。pc端如何得到有效的数据,是通信协议中需要考虑的关键。
6.因此,现有技术需要一种用于和数控系统进行有效通信的方案。
7.上述在背景部分公开的信息仅用于对本发明的背景做进一步的理解,因此它可以包含对于本领域普通技术人员已知的不构成现有技术的信息。


技术实现要素:

8.本发明提供了一种用于数控系统的通信方法和系统。本发明的方案能够解决数控系统和pc端数据通信中数据有效性的问题,并且能够通过实时通信硬件架构和连接方式,保证了pc端逻辑分析的实时性要求。
9.本发明的第一方面提供了一种用于数控系统的通信方法,包括:建立包含用户配
置的数控系统数据的用户配置表和包含数控系统的当前运行的状态数据的当前运行表;扫描所述用户配置表,并按照所述用户配置表的地址空间将所述用户配置表与所述当前运行表进行比较,如果在当前地址空间中所述用户配置表与当前运行表相同,则继续扫描地址空间中的下一地址空间;如果在当前地址空间中所述用户配置表与当前运行表不同,则发送命令码、传输位置数据给所述数控系统;确定是否收到所述数控系统在该传输位置发送的脉冲信号,如果收到脉冲信号,开始接收数控系统在该传输位置地址空间上的数据。
10.根据本发明的一个实施例,还包括如果未接收到所述脉冲信号,则进行通信异常报警。
11.根据本发明的一个实施例,其中所述命令码包括信号增加、信号减少或空闲代表的码字。
12.根据本发明的一个实施例,其中所述用户配置表和所述当前运行表为在地址空间上包含“0”和“1”数据的表,其中其中所述用户配置表和所述当前运行表为在地址空间上包含“0”和“1”数据的表,所述用户配置表中的“0”表示用户没有选择数据,所述用户配置表中的“1”则表示用户选择数据;所述当前运行表中的“0”表示通信过程中未传输数据,所述当前运行表中的“1”则表示通信过程中正在传输数据。
13.根据本发明的一个实施例,所述方法还包括:当接收到数控系统在该传输位置地址空间上的数据后,在逻辑分析设备上显示该数据的信号,并进行下一地址空间的扫描。
14.根据本发明的一个实施例,当所述数控系统收到信号增加的命令码后,发送指定宽度的脉冲,然后把对应地址空间的数据放置到相应的传输位置,并进行实时发送;当所述数控系统收到信号减少的命令码时,发送指定宽度的脉冲,取消对应地址空间的数据信号的发送;所述数控系统收到接收到空闲信号的命令码时,则不做动作。
15.本发明的第二方面提供了一种用于数控系统的通信系统,包括:数控系统、外部设备和与所述数控系统和外部设备连接的协议转换设备,其中在所述外部设备上运行上述的通信方法。
16.根据本发明的一个实施例,其中所述协议转换设备,包括:第一通信模块,用于通过第一通信协议使得所述协议转换设备与所述数控系统进行通信;第二通信模块,用于通第二通信协议使得所述协议转换设备与外部设备进行通信;控制器,用于:对来自第一通信模块或第二通信模块的数据进行解析以获得有效数据,并对所述有效数据进行处理后传送至所述外部设备或所述数控系统。
17.根据本发明的一个实施例,其中所述第一协议为ethercat协议,所述第二协议为udp协议。
18.根据本发明的一个实施例,其中,所述控制器包括:数据解析模块,用于对来自第一通信模块或第二通信模块的数据进行解析以获得有效数据;数据封装模块,基于所述第一通信协议或第二通信协议将所述有效数据进行封包,分别传送至所述外部设备或所述数控系统。
19.根据本发明的一个实施例,其中所述控制器还包括:数据传导模块,用于:对所述解析模块解析后的来自第一通信模块的有效数据进行累积,当来自第一通信模块的有效数据进行累积到预定数据量时,将该预定数据量的数据发送至所述数据封装模块,其中所述数据封装模块使用第二通信协议对该预定数据量的数据进行封装并传输至所述外部设备;
并且所述数据传导模块还用于:对所述解析模块解析后的来自第二通信模块的有效数据发送至所述数据封装模块,其中所述数据封装模块使用第一通信协议将该有效数据发送所述数控系统。
20.本发明提出了一种pc端与数控系统软plc之间的通信流程,不用过多占用现场总线的通信带宽,减少对数控系统的影响,解决了其数据交互的有效性;本发明提出了一种实时通信硬件架构和连接方式,采用fpga来实现千兆网,fpga为纯逻辑电路,延时为ns级,保证了pc端逻辑分析的实时性要求;本发明的方案通过循环扫描的方式,使调试员不需重启软件,直接操作用户配置表即可以实现i/o信号的传输,提高调试效率。
附图说明
21.为了更清楚地说明本发明的技术方案,下面将对实施例描述中所需要使用的附图进行简单介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
22.图1是根据现有技术的发那科数控系统梯形图。
23.图2是根据本发明的示例性实施例的用于数控系统的通信系统的框图。
24.图3是根据本发明的示例性的实施例的用于数控系统的通信系统的硬件连接框图。
25.图4是根据本发明的示例性的实施例的用于数控系统的通信系统的实施框图。
26.图5是根据本发明的示例性的实施例的用户配置表和当前运行表的示意图。
27.图6是根据本发明的示例性的用于数控系统的通信方法的流程图。
28.图7是根据本发明的示例性的分离式逻辑分线器的信号显示示意图。
具体实施例
29.如在本文中所使用的,词语“第一”、“第二”等可以用于描述本发明的示例性实施例中的元件。这些词语只用于区分一个元件与另一元件,并且对应元件的固有特征或顺序等不受该词语的限制。除非另有定义,本文中使用的所有术语(包括技术或科学术语)具有与本发明所属技术领域的普通技术人员通常理解的含意相同的含意。如在常用词典中定义的那些术语被解释为具有与相关技术领域中的上下文含意相同的含意,而不被解释为具有理想或过于正式的含意,除非在本发明中被明确定义为具有这样的含意。
30.本领域的技术人员将理解的是,本文中描述的且在附图中说明的本发明的装置和方法是非限制性的示例性实施例,并且本发明的范围仅由权利要求书限定。结合一个示例性实施例所说明或描述的特征可与其他实施例的特征组合。这种修改和变化包括在本发明的范围内。
31.下文中,将参考附图详细描述本发明的示例性实施例。在附图中,省略相关已知功能或配置的详细描述,以避免不必要地遮蔽本发明的技术要点。另外,通篇描述中,相同的附图标记始终指代相同的电路、模块或单元,并且为了简洁,省略对相同电路、模块或单元的重复描述。
32.此外,应当理解一个或多个以下方法或其方面可以通过至少一个控制单元或控制器执行。术语“控制单元”,“控制器”,“控制模块”或者“主控模块”可以指代包括存储器和处
理器的硬件设备。存储器或者计算机可读存储介质配置成存储程序指令,而处理器具体配置成执行程序指令以执行将在以下进一步描述的一个或更多进程。而且,应当理解,正如本领域普通技术人员将意识到的,以下方法可以通过包括处理器并结合一个或多个其他部件来执行。
33.在数控系统与外部设备(例如pc机)通信中,数控系统现场总线的主机,pc端属于从机,由于一般的pc机上不带有现场总线的硬件,中间需要连接一个协议转换板,把现场总线协议转换成pc机带有的通信协议,本发明采用了ethercat现场总线通信协议,数控系统为ethercat(以太网控制自动化技术)主站,协议转换板为ethercat从站,协议转换板与pc机之间采用了udp通信协议,相比较tcp协议,udp实时性更高,协议转换板的任务就是完成ethercat协议与udp协议之间的转换,同时要保证实时性要求。
34.图2是根据本发明的示例性实施例的用于数控系统的通信系统的框图。
35.如图2所示,通信系统包括数控系统和pc机(外部设备),以及连接两者的协议转换设备(或协议转换板),其中数控系统和协议转换设备之间采用ethercat协议进行通信,协议转换设备(或协议转换板)和pc机之间采用udp协议进行通信。
36.图3是根据本发明的示例性的实施例的用于数控系统的通信系统的硬件连接框图。
37.如图3所示,为了保证协议转换板的实时要求,协议转换设备(协议转换板)的控制器的主处理器采用fpga,fpga为逻辑器件,实时性高。同时两端分为连接ethercat通信芯片lan9252及udp通信芯片88e1111,芯片lan9252及88e1111纯网络连接层,无需编程,在fpga中完成协议转换过程。
38.图4是根据本发明的示例性的实施例的用于数控系统的通信系统的实施框图。
39.如图4所示,协议转换设备,包括:第一通信模块,用于通过第一通信协议使得所述协议转换设备与所述数控系统进行通信;第二通信模块,用于通第二通信协议使得所述协议转换设备与外部设备进行通信;控制器,用于:对来自第一通信模块或第二通信模块的数据进行解析以获得有效数据,并对所述有效数据进行处理后传送至所述外部设备或所述数控系统。其中所述第一协议为ethercat协议,所述第二协议为udp协议。
40.根据本发明的一个或多个实施例,所述控制器包括:数据解析模块,用于对来自第一通信模块或第二通信模块的数据进行解析以获得有效数据;数据封装模块,基于所述第一通信协议或第二通信协议将所述有效数据进行封包,分别传送至所述外部设备或所述数控系统。
41.根据本发明的一个或多个实施例,其中所述控制器还包括:数据传导模块,用于:对所述解析模块解析后的来自第一通信模块的有效数据进行累积,当来自第一通信模块的有效数据进行累积到预定数据量时,将该预定数据量的数据发送至所述数据封装模块,其中所述数据封装模块使用第二通信协议对该预定数据量的数据进行封装并传输至所述外部设备;并且所述数据传导模块还用于:对所述解析模块解析后的来自第二通信模块的有效数据发送至所述数据封装模块,其中所述数据封装模块使用第一通信协议将该有效数据发送所述数控系统。
42.具体地,如图4所示,需要完成网络芯片的配置,ethercat协议解析、ethercat数据发送,ethercat数据接收到,数据传导,udp协议解析器、udp数据接收到、udp数据发送。fpga
得电后,可以并行对芯片lan9252及88e1111完成初始化配置,让芯片安照指示的要求开始工作。由于ethercat及udp都为双通道通信模式。一方面,当ethercat接收器接到数据后,把相应的数据传输给ethercat协议解析模块,协议解析后把有效的数据传输给数据传导模块,协议解析即:去掉包头、包尾、校验部分,并把有效的部分按照指定的数据格式进行转换。由于ethercat现场总线与udp通信具有不同的带宽,udp带宽高于ethercat现场总线,在数据传导模块中,把ethercat数据积累到指定的数据量后,再把数据传输给udp协议封包模块,封包好后进行数据发送,传输给88e1111芯片。另一方面,udp数据收接模块接收到数据后,对udp协议进行解析,解析完后把有效数据发送给数据传导模块,数据传导模块把数据传给ethercat协议封包模块,然后通过数据发送,把数据传输给数控系统。两端的rj45端口用于lan9252和88e1111进行通信。
43.根据本发明的一个或多个实施例,假设ethercat每1ms传输出一次数据,每次数据64byte,而udp的一次传输数据是1472byte,即最大积累到1472byte,即1472/64=23;ethercat传输即23次,也是23ms,udp才传输了1次。当然,在协议转换设备的设计中可以设置更小的次数。
44.图5是根据本发明的示例性的实施例的用户配置表和当前运行表的示意图。图6是根据本发明的示例性的用于数控系统的通信方法的流程图。
45.如图5所示,通信流程主要位于pc机与数控系统之间,为了得到有效的数据,pc端的软件启动后,先建立二个配置表,一个用户配置表,一个当前运行表。用户配置表给调试人员进行配置,如配置表中标“1”的地址就是需要采集的i/o数据,而当前运行表中“1”的地址就是目前正在传输的数据。其中,配置表是用户配置好的数据,运行表是正当前的状态数据,有不同的数据,即表示运行数据要更新,要把相应的配置数据通过通信发送到数控系统。其中所述用户配置表和所述当前运行表为在地址空间上包含“0”和“1”数据的表,所述用户配置表中的“0”表示用户没有选择数据,所述用户配置表中的“1”则表示用户选择数据;所述当前运行表中的“0”表示通信过程中未传输数据,所述当前运行表中的“1”则表示通信过程中正在传输数据。其中用户配置表和当前运行表分别表示用户的需求和数据的状态。用户配置表和当前运行表并不同步,先是用户选择设置,配置好了,通过协议通信,数据系统响应后才能反馈对应的地址的数据。
46.如图6所示,pc端的通信流程如下:
47.建立包含用户配置的数控系统数据的用户配置表和包含数控系统的当前运行的状态数据的当前运行表;
48.扫描所述用户配置表,并按照所述用户配置表的地址空间将所述用户配置表与所述当前运行表进行比较,
49.如果在当前地址空间中所述用户配置表与当前运行表相同,则继续扫描地址空间中的下一地址空间;
50.如果在当前地址空间中所述用户配置表与当前运行表不同,则发送命令码、当前地址空间(或传输位置数据)给所述数控系统,其中,当前地址空间和传输位置数据在实际的数控系统中通常是相同的,发送时取其一即可;
51.确定是否收到所述数控系统在该传输位置发送的脉冲信号,如果收到脉冲信号,开始接收数控系统在该传输位置地址空间上的数据。
52.根据本发的一个或多个实施例,采用周期扫描的方式,对用户配置表进行扫描,然后与当前运行表进行对照,分析是否具有对照表。然后定时中断触发扫描,从开始地址依次进行对照,判断用户配置的设置是否与当前运行表一样,如果一样,继续判断下一地址,直到所有地址判断完成。如果不一样,pc机发送命令码、i/o地址码、传输位置数据给数控系统,命令码包含信号增加、信号减少、或空闲等。然后待数控系统在该传输位置发送一个脉冲信号,如果超过未接收到信号,通信异常报警,如果按时收到脉冲信号,则开始接收到该位置地址的数据,并在逻辑分析器上显示该信号,并进行下一地址的扫描。其中,用户的配置表和当前运行的配置表不同时,当把当前的配置表发送给数控系统后,数控系统响应才能够建立需要的地址数据,并按需要的地址数据进行通信,配置表和运行表就会相同。
53.根据本发明的一个或多个实施例,命令码是根据配置表和运行表内数据不同,得到不同的命令码。比如配置表内的“1”,而运行表内对应地址是“0”,表示“信号减少”命令,反之则表示“信号增加”命令,“空闲”命令就是不增不减,保存现有的数据状态。因为通信是连续的,当没有改变的时候,发“空闲”命令吗。例如,根据图5用户配置表中,表中的标

处,数据从“1”变到“0”,表示要减去这个地址的数据,就发送

减命令’,对应的行地址是“4”,对应的列地址也为“4”。假设用数字“2”来表示“信号减少”对应的码字,需要发送的数据是“2-4-4”。
54.根据本发明的一个或多个实施例,在数控系统端,当收到信号增加命令码后,发脉指定宽度的脉冲,然后把对应的i/o信号放置到ethercat相应的传输位置,并进行实时发送。当收到信号减少命令码时,发脉指定宽度的脉冲(该指定宽度的脉冲与信号增加时指定宽度脉冲相同),取消i/o信号的发送。接收到空闲信号命令码则不动作。发送指定宽度的脉冲是为了告诉上位机,已经准备好。其中i/o逻辑分析器包含有混合式、分离式,本专利采用了分离式逻辑分析仪。
55.图7是根据本发明的示例性的分离式逻辑分析其器的信号显示示意图。由图7所示,在位于pc机处的分离式逻辑分析器能够显示出数控系统的有效数据信号,并且数据信号并无交叉和相互影响。
56.根据本发明的一个或多个实施例,本发明的方法中的控制逻辑可以使用存储在非暂时性计算机和/或机器可读介质(例如硬盘驱动器、闪存、只读存储器、光盘、数字多功能磁盘、高速缓存、随机存取存储器和/或任何其他存储设备或存储磁盘)上的编码的指令(例如,计算机和/或机器可读指令)来实现如本发明以上方法的流程的处理,在非暂时性计算机和/或机器可读介质中存储任何时间期间(例如,延长的时间段、永久的、短暂的实例、临时缓存和/或信息高速缓存)的信息。如本文所使用的,术语“非暂时性计算机可读介质”被明确定义为包括任何类型的计算机可读存储设备和/或存储盘,并且排除传播信号并排除传输介质。
57.根据本发明的一个或多个实施例,本发明的方法可以使用控制电路、(控制逻辑、主控系统或控制模块)来实现,其可以包含一个或多个处理器,也可以在内部包含有非暂时性计算机可读介质。具体地,主控系统或控制模块可以包括微控制器mcu。用于实现本发明方法的处理的处理器可以诸如但不限于一个或多个单核或多核处理器。(一个或多个)处理器可包括通用处理器和专用处理器(例如,图形处理器、应用处理器等)的任何组合。处理器可与其耦接和/或可包括计存储器/存储装置,并且可被配置为执行存储在存储器/存储装
置中的指令,以实现在本发明中控制器上运行的各种应用和/或操作系统。
58.作为本发明示例的上文涉及的附图和本发明的详细描述,用于解释本发明,但不限制权利要求中描述的本发明的含义或范围。因此,本领域技术人员可以很容易地从上面的描述中实现修改。此外,本领域技术人员可以删除一些本文描述的组成元件而不使性能劣化,或者可以添加其它的组成元件以提高性能。此外,本领域技术人员可以根据工艺或设备的环境来改变本文描述的方法的步骤的顺序。因此,本发明的范围不应该由上文描述的实施例来确定,而是由权利要求及其等同形式来确定。
59.尽管本发明结合目前被认为是可实现的实施例已经进行了描述,但是应当理解本发明并不限于所公开的实施例,而相反的,意在覆盖包括在所附权利要求的精神和范围内的各种修改和等同配置。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献