PA数控系统与外部器件之间的通信方法和装置
【技术领域】
本发明涉及工业控制领域,特别涉及一种PA数控系统与外部器件之间的通信方法和装置。
【背景技术】
目前PA(Power Automation)数控系统与外部器件通讯使用的是硬线通讯的方法,该方法中PA数控系统在与外部器件通讯时需要使用大量的接线,非常不方便,查错繁琐。特别是在组建大规模生产线时,需要进行通讯的数据量大、通讯距离远且通讯可靠性要求高,而硬线通讯的方法很难实现这些要求。
【发明内容】
基于此,有必要提供一种实现大数据量、远距离、高可靠性的数据通信的PA数控系统与外部器件之间的通信方法。
一种PA数控系统与外部器件之间的通信方法,包括以下步骤:
PA通信模块获取PA数控系统的输出数据并将PA数控系统的输出数据传送给通讯接口模块,通讯接口模块读取PA数控系统的输出数据并将PA数控系统的输出数据发送给总线驱动模块,总线驱动模块将PA数控系统的输出数据通过总线发送到外部器件;
总线驱动模块将从总线接收到的输入数据传送给通讯接口模块,通讯接口模块读取从总线接收到的输入数据并将该输入数据发送给PA通信模块,PA通信模块将该输入数据传送给PA数控系统;
所述PA数控系统、PA通信模块、通讯接口模块和总线驱动模块安装于同一PA工控机,所述PA工控机的PCI接口上安装了总线卡,该总线卡与外部器件之间通过所述总线连接。
在其中一个实施例中,在启动PA数控系统之前,所述方法还包括以下步骤:
在所述PA工控机的操作系统上安装所述PA数控系统和PA通信模块;
在所述PA工控机的操作系统上安装所述通讯接口模块;
在所述PA工控机的PCI接口安装所述总线卡;
在所述PA工控机的操作系统上安装所述总线驱动模块;
将外部器件与所述总线卡通过所述总线连接。
在其中一个实施例中,所述方法还包括步骤:
固件程序写入模块向所述总线卡上的芯片写入固件程序,该固件程序包含总线协议栈,总线协议栈用于实现通讯协议;
所述总线卡与所述外部器件之间采用所述通讯协议进行通信。
在其中一个实施例中,所述PA数控系统为PA8000数控系统;
所述总线卡与所述外部器件之间通信采用的所述通讯协议为Profinet、Profibus、DeviceNet、CANopen和EtherCAT中的一种。
在其中一个实施例中,所述方法还包括步骤:通信接口模块根据预先设置的配置信息初始化总线卡的相应参数。
此外,还有必要提供一种实现大数据量、远距离、高可靠性的数据通信的PA数控系统与外部器件之间的通信装置。
一种PA数控系统与外部器件之间的通信装置,包括:
PA通信模块,用于获取PA数控系统的输出数据并将PA数控系统的输出数据传送给通讯接口模块;
通讯接口模块,用于读取PA数控系统的输出数据并将PA数控系统的输出数据发送给总线驱动模块;
总线驱动模块,用于将PA数控系统的输出数据通过总线发送到外部器件;
总线驱动模块还用于将从总线接收到的输入数据传送给通讯接口模块;
通讯接口模块还用于读取从总线接收到的输入数据并将该输入数据发送给PA通信模块;
PA通信模块还用于将该输入数据传送给PA数控系统;
所述PA数控系统、PA通信模块、通讯接口模块和总线驱动模块安装于同一PA工控机,所述PA工控机的PCI接口上安装了总线卡,该总线卡与外部器件之间通过所述总线连接。
在其中一个实施例中,所述装置还包括固件程序写入模块,用于向所述总线卡上的芯片写入固件程序,该固件程序包含总线协议栈,总线协议栈用于实现通讯协议;
所述总线卡与所述外部器件之间采用所述通讯协议进行通信。
在其中一个实施例中,所述PA数控系统为PA8000数控系统;
所述总线卡与所述外部器件之间通信采用的所述通讯协议为Profinet、Profibus、DeviceNet、CANopen和EtherCAT中的一种。
在其中一个实施例中,通信接口模块还用于根据预先设置的配置信息初始化总线卡的相应参数。
上述PA数控系统与外部器件之间的通信方法和装置,PA数控系统与外部器件之间通过总线进行通信,可方便地实现大数据量、远距离、高可靠性的数据通信,并且可方便地扩展外部器件的数量。
【附图说明】
图1为一个实施例中的PA数控系统与外部器件之间的通信方法的流程示意图;
图2为一个实施例中的PA数控系统与外部器件之间的通信装置的结构示意图;
图3为一个实施例中PA数控系统与外部器件之间的通信装置与PA数控系统以及外部器件的连接示意图。
【具体实施方式】
如图1所示,一种PA数控系统与外部器件之间的通信方法,包括以下步骤:
步骤S101,PA通信模块获取PA数控系统的输出数据并将PA数控系统的输出数据传送给通讯接口模块,通讯接口模块读取PA数控系统的输出数据并将PA数控系统的输出数据发送给总线驱动模块,总线驱动模块将PA数控系统的输出数据通过总线发送到外部器件。
步骤S102,总线驱动模块将从总线接收到的输入数据传送给通讯接口模块,通讯接口模块读取从总线接收到的输入数据并将该输入数据发送给PA通信模块,PA通信模块将该输入数据传送给PA数控系统。
上述PA数控系统、PA通信模块、通讯接口模块和总线驱动模块安装于同一PA工控机,PA工控机的PCI接口上安装了总线卡,该总线卡与外部器件之间通过所述总线连接。
在步骤S101之前,启动检测模块检测PA数控系统是否启动,若是,则连接PA通信模块,并进入步骤S101,若否,则重复检测PA数控系统是否启动。在PA数控系统启动后,进一步的,启动检测模块还可以启动定时器,并定时判断PA数控系统是否退出,若是,则执行上述检测PA数控系统是否启动的步骤。
在步骤S101之前,上述方法还包括以下步骤:
在PA工控机的操作系统上安装PA数控系统和PA通信模块;
在PA工控机的操作系统上安装通讯接口模块;
在PA工控机的PCI接口安装总线卡;
在PA工控机的操作系统上安装总线驱动模块;
将外部器件与总线卡通过总线连接。
进一步的,在PA工控机的PCI接口安装总线卡之后,上述方法还包括步骤:
固件程序写入模块向总线卡上的芯片写入固件程序,该固件程序包含总线协议栈,总线协议栈用于实现通讯协议;总线卡与外部器件之间采用该通讯协议进行通信。
在一个实施例中,上述PA数控系统为PA8000数控系统;总线卡与外部器件之间通信采用的通讯协议为Profinet、Profibus、DeviceNet、CANopen和EtherCAT中的一种。
在步骤S101之前,通信接口模块根据预先设置的配置信息初始化总线卡的相应参数。具体的,预先设置的配置信息包括总线的数据读写字节数和PLC的变量名等。
如图2所示,一种PA数控系统与外部器件之间的通信装置,包括PA通信模块10、通讯接口模块20和总线驱动模块30,其中:
PA通信模块10,用于获取PA数控系统的输出数据并将PA数控系统的输出数据传送给通讯接口模块20;
通讯接口模块20,用于读取PA数控系统的输出数据并将PA数控系统的输出数据发送给总线驱动模块30;
总线驱动模块30,用于将PA数控系统的输出数据通过总线发送到外部器件;
总线驱动模块30还用于将从总线接收到的输入数据传送给通讯接口模块20;
通讯接口模块20还用于读取从总线接收到的输入数据并将该输入数据发送给PA通信模块10;
PA通信模块10还用于将该输入数据传送给PA数控系统;
在一个实施例中,PA数控系统、PA通信模块10、通讯接口模块20和总线驱动模块30安装于同一PA工控机,PA工控机的PCI接口上安装了总线卡,该总线卡与外部器件之间通过总线连接。
在一个实施例中,上述装置还包括启动检测模块,用于在PA通信模块10获取PA数控系统的输出数据之前,检测PA数控系统是否启动,若是,则连接PA通信模块10,若否,则重复检测PA数控系统是否启动。在PA数控系统启动后,进一步的,启动检测模块还可以启动定时器,并定时判断PA数控系统是否退出,若是,则重复检测PA数控系统是否启动。
上述装置还包括固件程序写入模块,用于向总线卡上的芯片写入固件程序,该固件程序包含总线协议栈,总线协议栈用于实现通讯协议;总线卡与外部器件之间采用该通讯协议进行通信。
在一个实施例中,上述PA数控系统为PA8000数控系统;总线卡与外部器件之间通信采用的所述通讯协议为Profinet、Profibus、DeviceNet、CANopen和EtherCAT中的一种。
通信接口模块还用于根据预先设置的配置信息初始化总线卡的相应参数。具体的,预先设置的配置信息包括总线的数据读写字节数和PLC的变量名等。
图3为一个实施例中PA数控系统与外部器件之间的通信装置与PA数控系统以及外部器件的连接示意图。其中,PA数控系统40、PA通信模块10、通讯接口模块20和总线驱动模块30安装于同一PA工控机100。PA工控机100上安装了Windows操作系统,且PA工控机100的PCI接口上安装了总线卡50,该总线卡50与外部器件60之间通过总线连接。外部器件60包括工控机、机器人、通用IO板和PLC等。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。