使用虚拟串列现场总线埠的现场总线闸道器及其资料传递方法

文档序号:7750446阅读:122来源:国知局

专利名称::使用虚拟串列现场总线埠的现场总线闸道器及其资料传递方法
技术领域
:本发明涉及一种现场总线闸道器及其资料传递方法,特别系指一种使用虚拟串列现场总线埠的现场总线间道器及其资料传递方法。
背景技术
:在现场总线(Fieldbus)的发展过程中,由于应用在工业乙太网络(IndustrialEthernet-based)的现场总线协定,如ProfiNet,ModbusTCP,Ethernet/IP等,被提出的时间较应用在串列传输(serial-based)的现场总线协定,如Profibus,ModbusRTU/ASCII等,来的晚,再加上工业乙太网络现场总线协定架构较为复杂,因此目前仍存在许多数据采集与监视控制系统(SCADA)或人机界面(HumanMachineInterface,HMI)仅支援串列传输的现场总线而不支援乙太网络的现场总线,或需以额外付费的方式才可以获得工业乙太网络现场总线的支援,这使得数据采集与监视控制系统以及人机界面的使用者仅能通过串列的现场总线埠(serialFieldbusport)与受控装置进行通讯。然而,在目前的工厂自动化架构下,为了要提供远端的中控中心及工厂的操作员同时对受控装置进行控制,往往需要受控装置可同时接受一个远端的数据采集与监视控制系统以及近端的人机界面的控制。由于串列现场总线埠的物理线路特性无法进行长距离的传输,因此需要以增加中继器(repeater)的方式来延长传输的距离,如此将造成布线成本的提升。为了解决布线成本提升的问题,有些工厂改为改在远端及近端各使用一个现场总线闸道器(Fieldbusgateway),两个现场总线闸道器间以乙太网络进行通讯,如此可省下长距离的布线成本,但仍需购置至少两个现场总线闸道器。为减少闸道器的购置数目,对利用RS-232/RS-422/RS-485的串列现场总线协定,也有些工厂会改为使用设备服务器(deviceserver),即COMportredirection的技术来替代,如图1所示,远端的数据采集与监视控制系统IOla可以利用COMportredirection驱动程序来产生映射COMport(MappedCOMport),借以将被产生的映射COMport映射到近端的设备服务器700上的实体串列埠,也就是说,在数据采集与监视控制系统上对被产生的映射COMport的所有操作会通过网络同步映射至设备服务器700的实体串列埠上进行相同的操作,例如,数据采集与监视控制系统IOla设定映射COMport的RTS脚位(pin)上输出active讯号,则设备服务器700的实体串列埠上的RTS脚位也会同步的输出active讯号,即与设备服务器700的实体串列埠连接的可程序逻辑控制器301a(受控装置)的实体串列埠的CTS脚位也会同步接收到active讯号,反之,若可程序逻辑控制器301a通过其的实体串列埠送出资料至设备服务器700的实体串列埠,则设备服务器700也会将其实体连接埠所收到的资料通过网络转送至数据采集与监视控制系统IOla的映射COMport,使得数据采集与监视控制系统IOla可以同步接收到可程序逻辑控制器301a(受控装置)所传来的资料,通过串列通道的技术,可以使得近端的设备服务器700的实体串列埠如同远端数据采集与监视控制系统IOla的实体串列埠,借以与可程序逻辑控制器301a进行连接。虽然COMportredirection的技术可以仅需要增加一台设备服务器即可以延伸了串列通讯的距离,但由于COMportredirection会在设备服务器700的实体串列埠与数据采集与监视控制系统IOla的映射COMport之间建立了一条专用的通道,因此,在使用COMportredirection的技术时,设备服务器700的实体串列埠将被建立的通道独占,如此,设备服务器的实体串列埠在同一时间只能提供一台数据采集与监视控制系统101a(映射COMport)与可程序逻辑控制器301a进行通讯及/或控制的行为,这在提供多人控制可程序逻辑控制器301a的作业环境中非常的不方便。综上所述,可知现有技术中长期以来一直存在无法同时提供两台以上远端装置控制同一受控装置的问题,因此有必要提出改进的技术手段,来解决此一问题。
发明内容有鉴于现有技术存在无法同时提供两台以上远端装置控制同一受控装置的问题,本发明遂公开一种使用虚拟串列现场总线埠的现场总线闸道器及其资料传递方法,其中本发明所公开的使用虚拟串列现场总线埠的现场总线闸道器,至少包含至少一第一现场总线埠,与各来源装置连接,各第一现场总线埠为网络现场总线埠、虚拟串列或实体串列现场总线埠其中之一;至少一第二现场总线埠,分别与各目的装置连接,各第二现场总线埠为网络现场总线埠、虚拟串列现场总线埠或实体串列现场总线埠其中之一,且第一现场总线埠及第二现场总线埠至少其中之一为虚拟串列现场总线埠;至少一第一资料处理模块,负责处理对应于第一现场总线埠的现场总线协定,借以通过第一现场总线埠接收来源装置所传送的封包;路径选择模块,用以依据封包选择现场总线协定及相对应的第二现场总线埠;封包格式转换模块,用以于第一现场总线埠与第二现场总线埠所使用的现场总线协定不同时,转换封包为第二现场总线埠所使用的现场总线封包格式;至少一第二资料处理模块,用以处理对应各第二现场总线埠的现场总线协定,并通过各第二现场总线埠传送封包至各目的装置。本发明所公开的另一种使用虚拟串列现场总线埠的现场总线闸道器,至少包含储存模块;至少一第一现场总线埠,与各第二装置/各第一装置连接;至少一第二现场总线埠,与各第一装置/各第二装置连接,各第一现场总线埠及各第二现场种线埠至少其中之一为虚拟串列现场总线埠;至少一第三资料处理模块,用以周期性的通过各第一现场总线埠接收目标资料;存取控制模块,用以将各第三资料处理模块所接收的目标资料储存于储存模块中与各第一装置/各第二装置对应的指定位置,及用以至指定位置读取目标资料;至少一第四资料处理模块,用以周期性的通过各第二现场总线埠传送存取控制模块所读出的目标资料。本发明所公开的使用虚拟串列现场总线埠的资料传递方法,其步骤至少包括以各第一现场总线埠连接来源装置与现场总线闸道器;以各该第二现场总线埠连接现场总线闸道器与目的装置;来源装置通过第一现场总线埠传送包含目标资料的封包至现场总线闸道器;现场总线间道器依据封包选择第二现场总线协定及相对应的第二现场总线埠;现场总线闸道器判断第二现场总线埠与第一现场总线埠所使用的现场总线协定不同后,转换封包为第二现场总线埠所使用的现场总线封包格式;现场总线闸道器通过各该第二现场总线埠传送封包至目的装置。6本发明所公开的装置与方法如上,与现有技术之间的差异在于本发明通过现场总线闸道器以一个虚拟现场总线埠以及任一现场总线埠连接来源装置与目的装置后,在来源装置与目的装置之间转送封包,或是将目的装置上的资料与自身同步,并提供来源装置存取储存于自身的资料,借以解决现有技术所存在的问题,即提供远端来源装置或目的装置利用虚拟串列现场总线埠,来达到使用串列现场总线协定进行长距离通讯,并可以达成让来源装置/目的装置使用单一虚拟串列现场总线埠即可与多个目的装置/来源装置同时通讯的技术功效。图1为公知的串列通道的系统架构图。图2为本发明所提的使用虚拟串列现场总线埠的资料传递系统的系统架构图。图3A为本发明所提的使用虚拟串列现场总线埠的现场总线闸道器的元件示意图。图;3B为本发明所提的虚拟串列现场总线埠的元件示意图。图4为本发明实施例所提的路径选择表示意图。图5A为本发明所提的使用虚拟串列现场总线埠的资料传递方法的方法流程图。图5B为本发明所提的可附加的封包检查方法流程图。图5C为本发明所提的可附加的目的位址检查方法流程图。图5D为本发明所提的传送封包的详细方法流程图。图6为本发明实施例所提的现场总线闸道器的元件示意图。图7A为本发明所提的另一种使用虚拟串列现场总线埠的资料传递系统的系统架构图。图7B为本发明实施例所提的另一种使用虚拟串列现场总线埠的现场总线闸道器的元件示意图。主要元件符号说明101第一网络装置IOla数据采集与监视控制系统102第二网络装置200a现场总线闸道器200b现场总线闸道器200c现场总线闸道器200d现场总线闸道器200f现场总线闸道器210第一现场总线埠210a第一虚拟串列现场总线埠211网络界面212虚拟串列现场总线传输模块212a第一虚拟串列现场总线传输模块212b第二虚拟串列现场总线传输模块2121应用程序命令处理单元2122现场总线资料链接层模拟单元2123现场总线资料与物理讯号模拟单元2124现场总线传输模拟单元221第一资料处理模块221a第一虚拟串列现场总线资料处理模块221b第二虚拟串列现场总线资料处理模块222第二资料处理模块222a第一串列现场总线资料处理模块222b第二串列现场总线资料处理模块240第二现场总线埠MOa第一串列现场总线埠MOb第二串列现场总线埠250路径选择模块260封包格式转换模块271第三资料处理模块272第四资料处理模块280储存模块290存取控制模块301第一串列现场总线装置301a可程序逻辑控制器302第二串列现场总线装置303第三串列现场总线装置400网络600路径选择表610目标位址栏位620协定类型栏位630目的地栏位700设备服务器具体实施例方式以下将配合图式及实施例来详细说明本发明的特征与实施方式,内容足以使任何本领域技术人员能够轻易地充分理解本发明解决技术问题所应用的技术手段并据以实施,借此实现本发明可达成的功效。本发明系应用在如图2的系统架构中,其中,第一网络装置101系通过网络400与现场总线闸道器(Fieldbusgateway)200a的虚拟串列现场总线埠(virtualserialFieldbusport)连接,第一串列现场总线装置301则是以串列现场总线连接线直接与现场总线闸道器200a的实体串列现场总线埠连接,但本发明所提的系统架构并不以此为限,也就是说,本发明的系统架构并不一定只限于一台网络装置以及一台串列现场总线装置,也可以由一台第一网络装置101、一台现场总线闸道器200a以及多台串列现场总线装置所组成,或是多台网络装置以及一台现场总线闸道器200a与一台第一串列现场总线装置301所组成,甚至由多台网络装置、多台串列现场总线装置以及一台现场总线闸道器200a所组成等,本发明并不以此为限。需要注意的是,本发明的系统架构仅会包含一台现场总线闸道器200a,其中,第一网络装置101也可以使用虚拟现场总线埠经由现场总线闸道器200a与其他网络装置(如第二网络装置102)进行通讯,并不仅限于与串列现场总线装置(301、302、303)通讯,另外,现场总线闸道器200a与第二网络装置102间可以利用虚拟现场总线埠或网络现场总线埠来连接。在本发明中,将把资料传送到现场总线闸道器200a的装置称为“来源装置”,并将接收由现场总线闸道器200a所传送的资料的装置称为“目的装置”。例如,在现场总线中的主站(master)装置与从站(slave)装置通讯时,当主站装置发出的命令经过现场总线闸道器200a传送至从站装置时,主站装置为“来源装置”而从站装置为“目的装置”,而当从站装置发出此命令的回应经过现场总线闸道器200a传回主站装置时,则从站装置为“来源装置”而主站装置为“目的装置”。另外,若以图2来看,第一网络装置101/第一串列现场总线装置301并不一定是来源装置/目的装置,若第一串列现场总线装置301通过现场总线闸道器200a转送资料至第一网络装置101,则第一串列现场总线装置301即为来源装置,而第一网络装置101为目的装置。在图2中,由于第一网络装置101与现场总线闸道器200a系通过网络400连接,为了要通过网络400传送串列现场总线的资料或讯号,因此,第一网络装置101会执行虚拟串列现场总线埠驱动程序(driver)或中间层软件(middleware),借以产生使用网络400传送串列讯号的虚拟串列现场总线埠,现场总线闸道器200a也会执行虚拟串列现场总线埠驱动程序或中间层软件来产生虚拟串列现场总线埠。在图2中,第一网络装置101可以使用第一网络装置101的虚拟串列现场总线埠传送目标资料给现场总线间道器200a,现场总线间道器200a可以使用现场总线间道器200a的虚拟串列现场总线埠接收第一网络装置101所传送的目标资料,并通过实体串列现场总线埠将所接收到的目标资料转送到第一串列现场总线装置301,同时,第一串列现场总线装置301可以通过实体串列现场总线传送目标资料给现场总线闸道器200a,现场总线闸道器200a同样会使用现场总线闸道器200a的虚拟串列现场总线埠将第一串列现场总线装置301所传送的目标资料转送给第一网络装置101,第一网络装置101也可以使用第一网络装置101的虚拟串列现场总线埠接收现场总线闸道器200a所转送的目标资料,使得第一网络装置101可以使用第一网络装置101的虚拟串列现场总线埠进行与直接使用实体串列现场总线埠相同的通讯行为。第一网络装置101传送目标资料所使用的封包中,通常会包含目的位址及/或来源位址,现场总线闸道器200a可以依据封包中的目的位址及/或来源位址,将目标资料转送给相对应的串列现场总线装置,如此,当本发明的系统架构包含多台串列现场总线装置时,现场总线闸道器200a还是可以将第一网络装置101所传送的目标资料转送给正确的目的装置。另外,现场总线闸道器200a也可以产生多个虚拟串列现场总线埠,借以分别提供多台网络装置使用虚拟串列现场总线埠建立连线。需要注意的是,本发明所提的网络装置仅需要虚拟出一个虚拟串列现场总线埠即可以与多台串列现场总线装置通讯,并不需要为欲通讯的不同串列现场总线装置分别建立不同的虚拟串列现场总线埠。以下将以图3A本发明所提的使用虚拟串列现场总线埠的现场总线闸道器的元件示意图来说明本发明的第一种实施态样的运作过程。如图3A所示,本发明所提的现场总线闸道器200b含有第一现场总线埠210、第一资料处理模块221、第二资料处理模块222、第二现场总线埠对0、路径选择模块250以及封包格式转换模块沈0。值得一提的是,现场总线闸道器200b可以包含一个或多个第一现场总线埠210以及一个或多个第二现场总线埠对0,一般而言,现场总线闸道器200b会同时包含一个网络现场总线埠、多个虚拟串列现场总线埠以及多个实体的串列现场总线埠等现场总线埠,但本发明所提的现场总线闸道器并不以此为限。其中,各种现场总线埠会使用相对应的现场总线传递资料,例如,网络现场总线埠对应网络现场总线、虚拟串列现场总线埠及实体串列现场总线埠都对应串列现场总线等,而本发明所提的串列现场总线包含但不限于具特殊串列界面的实体层(physicallayer)的现场总线,如Profibus、CANBus、FoundationFieldbus、ModbusPlus等,或是运用RS-232/RS-422/RS-485等基本串列界面为实体层的现场总线,如ModbusRTU/ASCII、DFl、CC-Link等。第一现场总线埠210以及第二现场总线埠240为网络现场总线埠或实体串列现场总线埠时,第一现场总线埠210/第二现场总线埠240负责通过相对应的现场总线界面接收/传送封包,例如,当第一现场总线埠210/第二现场总线埠240为网络现场总线埠时,第一现场总线埠210/第二现场总线埠240实作上可为TCP/IP协定堆迭(protocolstack)以及网络界面驱动程序,并由网络界面中接收/传送封包;而当第一现场总线埠210/第二现场总线埠240为实体串列现场总线埠时,第一现场总线埠210/第二现场总线埠240实作上可为实体串列现场总线界面的驱动程序,并由实体串列现场总线界面中接收/传送封包,而上述实作的例子仅为举例,本发明不以此为限。而当第一现场总线埠210/第二现场总线埠240为虚拟串列现场总线埠时,第一现场总线埠210/第二现场总线埠240可以模拟实体串列现场总线,并通过网络400进行通讯,包含通过网络400传送资料讯号、物理讯号以及模拟资料链接层(datalinklayer)等行为。当第一现场总线埠210或第二现场总线埠240为虚拟串列现场总线埠时,第一现场总线埠210或第二现场总线埠240将如图;3B所示,包含虚拟串列现场总线传输模块212以及至少一网络界面211。网络界面211通过网络400与来源装置/目的装置连接,负责接收/传递虚拟串列现场总线的封包。网络界面211可为乙太网络(ethernet)、无线网络(wireless)、卫星通讯、红外线等界面,但本发明并不以此为限。虚拟串列现场总线传输模块212可实做为虚拟串列现场总线驱动程序或中间层软件,其中至少包含应用程序命令处理单元2121、现场总线资料链接层模拟单元2122、现场总线资料与物理讯号模拟单元2123、以及现场总线传输模拟单元21M。应用程序命令处理单元2121,负责接受执行于现场总线闸道器200a中的应用程序的命令,并根据所执行的命令,对现场总线资料与物理讯号模拟单元2123或现场总线资料链接层模拟单元2122进行资料的读取与写入、物理讯号的控制与设定、传输状态的读取以及物理讯号的状态的读取等。现场总线资料链接层模拟单元2122,负责模拟实体现场总线控制器(Fieldbuscontroller)所提供的资料链接层的处理机制,如CANBus的控制器的messagearbitration功能,S卩CANBus的上两个节点(node)同时分别发出位元“0”(dominant)以及位元“1”(recessive)时,汇流排(bus)上出现的资料将为位元“0”,而当节点上的控制器发现汇流排上的资料和所发出的资料不相同时,会停止发送资料并等待进行下次重送,因此具较高优先权的讯息(message)才会顺利被发出。也就是说,如以CANBus的虚拟串列现场总线埠而言,现场总线资料链接层模拟单元2122会逐一比对同时收到的讯息的每个位元,且仅保留高优先权的讯息,并传回发送失败的状态值(status)给发出被舍弃的讯息的来源装置,借以模拟实体CANBus控制器。另外,如ft~0fibus、CANBus、DFl等虚拟串列现场总线埠的现场总线资料链接层模拟单元2122也可以像所模拟的实体现场总线控制器一样,在成功收到讯息后,自动传回确认讯息(ACKmessage)给发出讯息的来源装置。现场总线资料链接层模拟单元2122也负责将应用程序命令处理单元2121所传来的资料封装成所模拟的现场总线封包(Fieldbusframe)后,传送给现场总线资料与物理讯号模拟单元2123。现场总线资料链接层模拟单元2122也可以判断所收到的现场总线封包是否为合法的封包等,若现场总线资料链接层模拟单元2122判断封包无效,则会丢弃封包。现场总线资料链接层模拟单元2122还可以处理现场总线的协定所规范的资料链接层行为,如ModbusRTU/ASCII、Profibus、DFl、CANBus等现场总线的协定,均具有来源装置所发出的命令/资料封包须在一定时间内收到目的装置的回应封包,否则来源装置须重送此命令/资料封包或放弃此命令/资料封包而直接传送下一个命令/资料封包的规范,以及来源装置必须等待上一个命令/资料封包被成功回应或逾时(timeout)被放弃后才可再发送新的命令/资料封包的机制。而如ftOfibus、ModbusPlus等现场总线协定更需在接收到权杖(token)后,才可发送命令/资料封包亦或者其权杖的接收与传递行为的规范,亦属现场总线资料链接层模拟单元2122所需模拟的现场总线控制器的行为。现场总线资料链接层模拟单元2122,还可以将命令/资料封包的发送成功/失败状态以及接收到的封包进行储存,借以供应用程序命令处理单元2121读取。上述的现场总线资料链接层模拟单元2122可执行的功能仅为举例但不以此为限,举凡实体现场总线控制器所提供的资料链接层处理机制均可为本发明所提的现场总线资料链接层模拟单元2122所提供的功能。现场总线资料与物理讯号模拟单元2123,负责模拟现场总线实体层的行为,如虚拟实体界面(virtualphysicalinterface)的选择以及设定等,当现场总线资料与物理讯号模拟单元2123选择并设定虚拟实体界面为点对点(peer-to-peer)的实体界面,如RS-232时,现场总线资料与物理讯号模拟单元2123会通过现场总线传输模拟单元21与单一的目的装置进行一对一的网络通讯。另外,当现场总线资料与物理讯号模拟单元2123选择并设定虚拟实体界面为多点连接(multi-drop)的实体界面时,例如CANBus、Profibus、ModbusPlus、RS-422、RS485等实体界面,现场总线资料与物理讯号模拟单元2123会通过现场总线传输模拟单元21M与单一或多个目的装置进行一对一或一对多的网络通讯,值得注意的是,上述虚拟实体界面的选择以及目的装置的网络位置均可由读取使用者设定档或由使用者预先设定来获得。现场总线资料与物理讯号模拟单元2123可以提供应用程序命令处理单元2121以11及现场总线资料链接层模拟单元2122设定/读取虚拟实体界面的界面参数,如界面种类、物理讯号的状态、传输速率(baudrate)、以及字元编码等,但本发明并不以此为限,其中,字元编码包含但不限于起始位元(startbits)、结束位元(stopbits)、资料位元(databits)、同位位元(paritybits)等。同样地,上述现场总线资料与物理讯号模拟单元2123的功能仅为举例但不以此为限,举凡实体现场总线的实体层行为均可由现场总线资料与物理讯号模拟单元2123进行模拟。现场总线资料与物理讯号模拟单元2123也可以利用特定的资料来模拟实体物理讯号的传递,现场总线资料与物理讯号模拟单元2123可以将资料通过现场总线传输模拟单元21M传送至网络上的目的装置,或是接收网络上的来源装置所传送的表示该来源装置的物理讯号的资料,借以设定现场总线资料与物理讯号模拟单元2123本身所模拟的物理线路讯号状态,如现场总线资料与物理讯号模拟单元2123欲将输出脚位(outputpin),如RTS脚位,设为active时,会先改变内部RTS的储存值(如设为1),而后,再将表示RTSactive的资料通过现场总线传输模拟单元21M传送至网络上的目的装置,借以通知目的装置来源装置内部模拟的输出脚位RTS发生改变,而针对输入脚位(inputpin),如CTS脚位,物理讯号的变化则通过接收网络上的来源装置所传送的表示物理讯号的资料来改变,例如收到表示网络上的来源装置的RTS脚位为inactive的资料后,即改变内部CTS的储存值(如设为0),至于内部模拟的输入脚位与来源装置输出脚位的配对连接关系,如内部CTS连接来源装置的RTS脚位,则同样可由读取使用者设定档或由使用者预先设定来获得。现场总线资料与物理讯号模拟单元2123还可以将应用程序命令处理单元2121所传来的资料以及现场总线资料链接层模拟单元2122所传来的命令、资料或状态值,通过现场总线传输模拟单元21以及网络界面211传送至网络上的目的装置,同时,亦可以将网络上的来源装置传送来的资料或状态值存在内部,借以供应用程序命令处理单元2121以及现场总线资料链接层模拟单元2122进行读取。现场总线资料与物理讯号模拟单元2123更可以处理串列现场总线通讯中的软件或硬件流量控制(flowcontrol)的机制,如设定为由硬件RTS/CTS进行流量控制时,现场总线资料与物理讯号模拟单元2123在收到表示RTS脚位为inactive的资料后,会改变内部CTS的储存值(如设为0),并将应用程序命令处理单元2121以及现场总线资料链接层模拟单元2122所传来的资料暂存在内部,并等待再次收到表示RTS脚位为active的资料后,才将暂存的资料通过现场总线传输模拟单元21M传送至网络上的目的装置。现场总线传输模拟单元2124,负责根据现场总线资料与物理讯号模拟单元2123对虚拟实体界面的设定,建立与目的装置间的网络连线,例如,在现场总线资料与物理讯号模拟单元2123设定虚拟实体界面为点对点传输时,模拟点对点传输建立与单一的目的装置的网络连线,或是在现场总线资料与物理讯号模拟单元2123设定虚拟实体界面为多点传输时,模拟多点传输来与多个目的装置建立网络连线。现场总线传输模拟单元21也可以接受网络上的来源装置建立连线的需求,而连线的建立可使用如TCP/IP、UDP/IP、PPP等协定,但本发明并不以此为限。现场总线传输模拟单元21还可以将现场总线资料与物理讯号模拟单元2123所传来的资料封包、命令封包、物理讯号或状态值通过网络界面211传至单一的目的装置(点对点传输)或同时传至多个目的装置(多点传输),亦可以将由网络界面211所收到的来源装置的资料封包、命令封包、物理讯号或状态值传给现场总线资料与物理讯号模拟单元2123进行后续处理。此外,值得特别注意的是,虚拟串列现场总线埠在实作上亦可以不包含现场总线资料链接层模拟单元2122,如此,资料链接层的行为将全交由应用程序来处理,如ModbusRTU/ASCII、DFUCC-Link等运用基本RS-232/RS-422/RS-485为实体层的现场总线即常使用此方式来实作虚拟串列现场总线埠。以下将继续说明图3A中的各模块。第一资料处理模块221,负责处理如ProfiNet、Ethernet/IP、ModbusTCP/UDP、Profibus、CANBus、FoundationFieldbus、ModbusPlus、ModbusRTU/ASCII、DFl等现场总线协定的规范行为,也就是未被第一现场总线埠210所含括的现场总线各层的协定行为,如实作网络现场总线协定”Khernet/IP”的资料处理模块,即需处理协定所规范的Khernet/IP以及CIP等所有应用层(applicationlayer)的行为,而应用层以下的TCP/IP以及实体层等则由第一现场总线埠210来处理。又如实作串列现场总线协定"Profibus”的资料处理模块时,第一现场总线埠210为虚拟串列现场总线埠,即虚拟ibus埠,则所实作的ftOfibus资料处理模块负责处理资料链接层以上由ftOfibus所规范的行为,资料链接层以及实体层则由虚拟I^rofibus埠(第一现场总线埠210)来进行处理,又如实作串列现场总线协定“ModbusRTU/ASCII”的资料处理模块时,搭配使用的第一现场总线埠210为不包含现场总线资料连结层模拟单元2122的虚拟串列现场总线埠,即虚拟Modbus埠时,则所实作的ModbusRTU/ASCII资料处理模块需处理ModbusRTU/ASCII所规范的应用层及虚拟Modbus埠(第一现场总线埠210)未处理的资料链接层的行为,而资料链接层中的传输速率、流量控制、字元编码以及实体层则由虚拟Modbus埠来处理,而上述所有的实作例子仅为举例,本发明不以此为限。第一资料处理模块221,还可以通过与第一现场总线埠210对应的应用程序界面取得第一现场总线埠210所接收到的封包,并由取得的封包中撷取出该封包所包含的目标资料的目的位址及/或来源位址(如果有)。事实上,第一资料处理模块221更可以判断第一现场总线埠210所接收到的封包是否有效。一般而言,第一资料处理模块221系以依据封包的格式判断封包是否有效,例如,第一资料处理模块221也可以依据封包中的检查码判断封包是否有效等。但第一资料处理模块221判断封包是否有效的方式并不以此为限。另外,第一资料处理模块221也可以在路径选择模块250将封包传回时,丢弃路径选择模块250所传回的封包。第二资料处理模块222与第一资料处理模块221相似,同样负责处理网络现场总线协定或串列现场总线协定的规范行为,即指未被相对应的第二现场总线埠240所含括的现场总线各层的协定行为。第二资料处理模块222也负责使用与第二现场总线埠240对应的应用程序界面,将路径选择模块250所提供的封包交给第二现场总线埠M0,使得封包通过第二现场总线埠240传送到目的装置。第二资料处理模块222更可以与第二现场总线埠240对应的应用程序界面判断目的装置当前是否可以接收封包,若第二资料处理模块222判断当前无法传送封包给目的装置,例如,与目的装置连接的第二现场总线埠240的CTS脚位被active时,或是目的装置正处于忙碌(busy)状态而没有传回确认讯息时,第二资料处理模块222可以于间隔特定时间后再次尝试通过第二现场总线埠240传送封包至目的装置,也就是再次使用与第二现场总线埠240对应的应用程序界面判断目的装置当前是否可以接收封包,若可以,则第二资料处理模块222会通过第二现场总线埠240传送封包,若不可以,则第二资料处理模块222会在间隔特定时间后继续通过第二现场总线埠240进行传送封包的尝试。路径选择模块250负责依据第一资料处理模块221由封包中所撷取出的目的位址、来源位址或来源及目的位址选择相对应的第二资料处理模块222,并将包含目标资料的封包提供给被路径选择模块250所选择的第二资料处理模块222,使得被选择的第二资料模块222通过第二现场总线埠240将封包传送到目的装置。如以目的位址为判断的依据而言,路径选择模块250可以使用如图4所示的路径选择表(routingtable)600选择第二资料处理模块222,例如,当第一资料处理模块221所撷取出的目的位址为“21”时,路径选择模块250可以在路径选择表600中的目标位址栏位610中找到“21”,并由相对应的协定类型栏位620以及目的地栏位630的内容选择与类型“ModbusRTU”以及目的地“第一虚拟串列现场总线埠(虚拟ModbusRTU埠)”对应的第二资料处理模块222,并将包含目标资料的封包提供给被选出的第二资料处理模块222,使得被选出的第二资料处理模块222通过与第一虚拟串列现场总线埠(第二现场总线埠M0)对应的应用程序界面,将包含目标资料的封包交由第一虚拟串列现场总线埠传送给目的装置。其中,若第二资料处理模块222可以通过多个第二现场总线埠240传送封包,则路径选择模块250还可以在将包含目标资料的封包提供第二资料处理模块222时,一并将传送封包的第二现场总线埠240的资讯提供给第二资料处理模块222,使得第二资料处理模块222可以得知需通过所指定的第二现场总线埠240将包含目标资料的封包传送到目的装置。路径选择模块250也可以判断第一资料处理模块221由封包中所撷取出的目的位址是否错误,若有错误,则会将封包退回给第一资料处理模块221,使得第一资料处理模块221丢弃目的位址错误的封包。例如,当第一资料处理模块221所撷取出的目的位址为“61”时,路径选择模块250无法在路径选择表600中的目标位址栏位610中找到“61”的资料,因此路径选择模块25会判断目的位址错误,但路径选择模块250判断目的位址是否错误的方式并不以此为限。路径选择模块250还可以判断第一资料处理模块221与第二资料处理模块222所使用的现场总线协定是否相同,当现场总线协定不同时,路径选择模块250还可以将接收封包的第一资料处理模块221所使用的现场总线协定的类型以及传送封包的第二处理模块222所使用的现场总线协定的类型提供给封包格式转换模块沈0。例如,第一资料处理模块221所使用的现场总线协定的类型为“ModbusTCP”、第二资料处理模块222所使用的现场总线协定的类型为“ModbusRTU",路径选择模块250可以将封包当前的类型“ModbusTCP”以及封包转换后的类型“ModbusRTU”提供给封包格式转换模块沈0。封包格式转换模块260负责将路径选择模块250所提供的封包的格式转换为传送封包的第二资料处理模块222所使用的封包格式,即第二资料处理模块222所应用现场总线的封包格式。接着以一个实施例来解说本发明的运作装置与方法,并请参照图5A本发明所提的使用虚拟串列现场总线埠的资料传递方法流程图。在本实施例中,假设来源装置为第一网络装置101,目的装置为第一串列现场总线装置301,如图2的系统架构所示。其中,第一网络装置101系数据采集与监视控制系统(SCADA),第一串列现场总线装置301为可程序逻辑控制器(ProgrammabIeLogicController,PLC),但本发明并不以此为限。另外,假设现场总线闸道器200c如图6所示,包含一个网络界面211以及两个串列现场总线界面,且网络现场总线传输模块、第一虚拟串列现场总线传输模块21、第二虚拟串列现场总线传输模块212b共用网络界面211来收送资料,第一串列现场总线传输模块与第二串列现场总线传输模块分别使用第一串列现场总线界面与第二串列现场总线界面传送资料,且第一串列现场总线传输模块/第二串列现场总线传输模块分别与第一串列现场总线界面/第二串列现场总线界面组合为第一串列现场总线埠240a/第二串列现场总线埠,另外,第一虚拟串列现场总线传输模块21以及第二虚拟串列现场总线传输模块212b分别与网络界面211组合为第一虚拟串列现场总线埠210a以及第二虚拟串列现场总线埠。但本发明所提的现场总线闸道器并不以图6为限。当使用者欲使用数据采集与监视控制系统(第一网络装置101)操作可程序逻辑控制器(第一串列现场总线装置301)时,首先,现场总线闸道器200c需分别与数据采集与监视控制系统以及可程序逻辑控制器建立连线(步骤501)。由于在本实施例中,现场总线闸道器200c包含两个串列现场总线埠,现场总线闸道器200c系以第一串列现场总线埠240a与可程序逻辑控制器连接、现场总线闸道器200c与数据采集与监视控制系统系以网络400(图2、连接,且数据采集与监视控制系统与现场总线间道器200c之间,会通过网络400建立数据采集与监视控制系统的第三虚拟串列现场总线埠与现场总线闸道器200c的第一虚拟串列现场总线埠210a间的虚拟串列现场总线通讯,但本发明并不以此为限。当使用者操作数据采集与监视控制系统后,数据采集与监视控制系统会通过第三虚拟串列现场总线埠将欲传送给可程序逻辑控制器的目标资料送至现场总线间道器200c的第一虚拟串列现场总线埠210a(第一现场总线埠210)(步骤510)。在本实施例中,假设数据采集与监视控制系统所传送的目标资料为一般的操作命令,但本发明并不以此为限。其中,当数据采集与监视控制系统将操作命令(目标资料)被传送至现场总线闸道器200c时,现场总线闸道器200c的网络界面211,会接收到数据采集与监视控制系统所传送的包含操作命令的封包。接着,现场总线闸道器200c的第一虚拟串列现场总线传输模块21会通过相对应的应用程序界面将网络界面211接收到的封包提供给现场总线间道器200c的第一虚拟串列现场总线资料处理模块221a(在图3A中也就是第一资料处理模块221),第一虚拟串列现场总线资料处理模块221a会由包含操作命令的封包中撷取出操作命令的目的位址及/或来源位址(步骤530)。在本实施例中,假设第一虚拟串列现场总线资料处理模块221a仅需由包含操作命令的封包中撷取出目的位址,被撷取出的目的位址例如“42”,但本发明所提的目的位址并不以此为限。在实务上,在第一虚拟串列现场总线资料处理模块221a由包含操作命令的封包中撷取出操作命令的目的位址及/或来源位址(步骤530)前,第一虚拟串列现场总线资料处理模块221a更如图5B的流程所示,可以先判断封包是否无效(步骤520),若无效则第一虚拟串列现场总线资料处理模块221a需要丢弃封包(步骤590)。在本实施例中,假设第一15虚拟串列现场总线资料处理模块221a会以封包格式是否正确来判断封包是否无效,若封包格式正确,则第一虚拟串列现场总线资料处理模块221a会判断封包有效,反之,若封包格式不正确,则第一虚拟串列现场总线资料处理模块221a会判断封包无效,但第一虚拟串列现场总线资料处理模块221a判断封包是否无效的方式并不以此为限。在给现场总线闸道器200c的第一虚拟串列现场总线资料处理模块221a由封包中撷取出目的位址及/或来源位址(步骤530)后,路径选择模块250会依据第一虚拟串列现场总线资料处理模块221a所撷取出的目的位址及/或来源位址选择现场总线协定以及相对应的现场总线埠(步骤560),借以进行后续传送目标资料的工作。在本实施例中,由于第一虚拟串列现场总线资料处理模块221a只需要撷取出目的位址“42”,若路径选择模块250使用如图4所示的路径选择表600选择现场总线协定以及相对应的现场总线埠,则路径选择模块250所选择出的与目的位址“42”对应的现场总线协定(第二现场总线协定)以及对应的现场总线埠(第二现场总线埠)分别为“ModbusASCII”与“第一串列现场总线埠(240a)”。实务上,在路径选择模块250选择现场总线协定以及相对应的现场总线埠(步骤560)前,路径选择模块250更如“图5C的流程所示,可以先判断目的位址/来源位址/来源及目的位址是否错误(步骤550),若路径选择模块250判断出目的位址/来源位址/来源及目的位址错误,则路径选择模块250会将封包传回第一虚拟串列现场总线资料处理模块221a,第一虚拟串列现场总线资料处理模块221a在接收到路径选择模块250传回的封包后,会丢弃由路径选择模块250所传回的封包(步骤590)。在本实施例中,假设路径选择模块250会以目的位址与来源位址是否存在于路径选择表600中判断来源及目的位址是否错误,由于第一虚拟串列现场总线资料处理模块221a没有撷取出来源位址,因此路径选择模块250只会对目的位址进行错误判断,若目的位址存在于路径选择表600中,则路径选择模块250会判断目的位址正确,反之,若目的位址不存在路径选择表600中,则路径选择模块250会判断目的位址错误,但路径选择模块250判断目的位址或来源位址是否错误的方式并不以是否存在于路径选择表600中的判断方式为限。在路径选择模块250选择现场总线协定以及相对应的现场总线埠(步骤560)后,若路径选择模块250会依据如图4所示的路径选择表600中的协定类型栏位620中,第一虚拟串列现场总线埠210a接收目标资料所应用的现场总线协定的类型“ModbusRTU”以及第一串列现场总线埠MOa传送目标资料所应用的现场总线协定的类型“ModbusASCII”而判断出第一虚拟串列现场总线埠210a(第一现场总线埠)与第一串列现场总线埠240a(第二现场总线埠)所应用的现场总线协定不同(步骤57,因此,封包格式转换模块260会将包含操作命令的封包格式由第一虚拟串列现场总线埠210的封包格式转换成第一串列现场总线埠MOa所应用的封包格式(步骤576)。也就是说,在本实施例中,封包格式转换模块260会将封包由现场总线协定的类型为“ModbusRTU”的封包格式转换为“ModbusASCII”的封包格式,但本发明并不以此为限。在封包格式转换模块260将封包转换成第一串列现场总线埠MOa(第二现场总线埠)所使用的封包格式(步骤576)后,路径选择模块250会将封包格式转换模块260进行封包格式转换后的封包提供给第一串列现场总线资料处理模块22(在图3A中即为第二资料处理模块22。另外,若路径选择模块250判断出接收目标资料的第一现场总线埠与16第二现场总线埠所使用的封包格式相同(步骤57,则路径选择模块250会直接将未经转换封包格式的封包提供给第二资料处理模块222。在路径选择模块250将封包提供给第一串列现场总线资料处理模块22(第二资料处理模块22后,第一串列现场总线资料处理模块22会通过第一串列现场总线埠240a(第二现场总线埠)将包含操作命令的封包传递到可程序逻辑控制器的实体串列现场总线埠(步骤580),也就是使用与第一串列现场总线传输模块对应的应用程序界面(串列应用程序界面),将经过转换的封包提供给第一串列现场总线埠MOa中的第一串列现场总线传输模块,第一串列现场总线传输模块会通过第一串列现场总线埠MOa中的第一串列现场总线界面将包含操作命令的封包传递到可程序逻辑控制器的实体串列现场总线埠,使得可程序逻辑控制器依据操作命令进行动作。事实上,在第一串列现场总线资料处理模块22通过第一串列现场总线埠MOa将包含操作命令的封包传递给可程序逻辑控制器(步骤580)时,第一串列现场总线资料处理模块22可以如图5D的流程所示,先通过与第一串列现场总线埠MOa对应的应用程序界面判断当前是否可以传送封包至可程序逻辑控制器(步骤581)。在本实施例中,假设第一串列现场总线资料处理模块22会依据第一串列现场总线埠MOa中第一串列现场总线传输模块所记录的CTS讯号是否为inactive来判断当前是否可以传送封包至可程序逻辑控制器,若第一串列现场总线资料处理模块22通过应用程序界面所取得的第一串列现场总线传输模块所记录的CTS讯号为inactive,则表示可程序逻辑控制器的暂存存储器已满,暂时无法接收封包,故第一串列现场总线资料处理模块22会判断出当前无法传送封包,因此第一串列现场总线资料处理模块22会等待特定时间(步骤589)后,再次通过与第一串列现场总线传输模块对应的应用程序界面判断当前是否可以传送封包至可程序逻辑控制器(步骤581),若第一串列现场总线资料处理模块22通过应用程序界面所取得的第一串列现场总线传输模块所记录的CTS讯号为active,则表示可程序逻辑控制器可以接收封包,因此第一串列现场总线资料处理模块22会通过第一串列现场总线埠MOa将封包传送给可程序逻辑控制器(步骤585)。依照上述,数据采集与监视控制系统可以同样的过程传送控制命令给第二串列现场总线装置302及/或第三串列现场总线装置303等。另外,当第二网络装置102(假设为电脑,但本发明并不以此为限)使用第四虚拟串列现场总线埠通过网络400与现场总线闸道器200c的第二虚拟串列现场总线埠连线后,同样可以在数据采集与监视控制系统与可程序逻辑控制器(第一串列现场总线装置301)互动的过程中以相同的过程对可程序逻辑控制器传送控制命令。例如,当现场总线闸道器200c的第二虚拟串列现场总线传输模块212b在网络界面211上接收到读取资料的控制命令后,第二虚拟串列现场总线资料处理模块221b会由包含控制命令的封包中撷取出目的位址为“48”(步骤530),路径选择模块250会依据目的位址由如图4所示的路径选择表600中选择传送控制命令的现场总线协定的类型为"‘ModbusASCII”以及传送控制命令的现场总线埠为”“第一串列现场总线埠MOa”(步骤560),由于路径选择模块250会判断出第二虚拟串列现场总线埠所应用的现场总线协定“ModbusRTU”与第一串列现场总线埠MOa所应用的现场总线协定“ModbusASCII”的封包格式不同(步骤57,因此封包格式转换模块260会将封包格式转换为第一串列现场总线埠MOa所17应用的现场总线协定的封包格式(步骤576),而后,第一串列现场总线资料处理模块22会通过应用程序界面将封包提供给第一串列现场总线埠MOa中的第一串列现场总线传输模块,使得第一串列现场总线埠MOa将包含控制命令的封包传送给可程序逻辑控制器(步骤580),如此,可程序逻辑控制器除了接收到第一网络装置101所传送的控制命令外,也可以接收到第二网络装置102所传送的读取资料的控制命令。在可程序逻辑控制器收到读取资料的控制命令后,会依据控制命令将目标资料读取出来,并使用实体串列现场总线埠通过串列现场总线连接线,将包含目标资料的回应封包传回现场总线闸道器200c(步骤510)。在此情况下,由于可程序逻辑控制器为资料传送端,因此可程序逻辑控制器成为本发明所提的来源装置,而回应封包的接收端,也就是第二网络装置102则成为本发明所提的目的装置。在现场总线闸道器200c的第一串列现场总线埠MOa在接收到可程序逻辑控制器所传送的包含目标资料的回应封包(步骤510)后,第一串列现场总线埠MOa中的第一串列现场总线传输模块会通过应用程序界面,将可程序逻辑控制器所传回的目标资料提供给第一串列现场总线资料处理模块22(在图3A中为第一资料处理模块221),第一串列现场总线资料处理模块22在判断出第一串列现场总线埠MOa所接收到的目标资料为现有所传送的控制命令的回应(response)后,一般会由回应封包中撷取出目的位址(步骤530),但由于所使用的现场总线协定的类型为“ModbusRTU”或“ModbusASCII”的回应封包中仅有包含来源位址而无目的位址,因此,在本实施例中,第一串列现场总线埠MOa所接收的回应封包中将仅包含来源位址而无目的位址,所以,路径选择模块250在现有将包含控制命令的封包提供给第一串列现场总线资料处理模块22传送到可程序逻辑控制器时,会为包含控制命令的封包产生与第一虚拟串列现场总线埠210a对应的虚拟位址,借以做为该封包的来源位址,假设为“22”,并将该封包、目地位址“48”以及来源位址“22”传给第一串列现场总线资料处理模块22,第一串列现场总线资料处理模块22在通过第一串列现场总线埠MOa传送到可程序逻辑控制器之前或之后,会将该封包的目地位址“48”以及来源位址“22”暂存于内部,当第一串列现场总线资料处理模块22判断所收到的封包为现有包含控制命令的封包的回应封包后,会撷取出回应封包的来源位址“48”,并与暂存于内部的目地位址进行比对,借以在找出暂存的目地位址与回应封包的来源位址相同的封包的来源位址后,以所找出的来源位址“22”做为该回应封包的目的位址,并将所找出的回应封包以及回应封包的目的位址“22”传给路径选择模块250。封包在第一串列现场总线资料处理模块22将回应封包的目的位址提供给路径选择模块250后,路径选择模块250会依据目的位址查找路径选择表600,选择传送回应封包的现场总线协定的类型为“ModbusRTU",并选择传送回应封包的现场总线埠为与类型"ModbusRTU”对应的第一虚拟串列现场总线埠210a(步骤560)后,路径选择模块250会判断出第一串列现场总线埠MOa与第一虚拟串列现场总线埠210a所应用的现场总线协定的类型的封包格式不同(步骤57,因此封包格式转换模块260会将包含目标资料的回应封包的格式由第一串列现场总线埠MOa所应用的封包格式转换为第一虚拟串列现场总线埠210a所应用的封包格式(步骤576),再来,路径选择模块250会将经过格式转换后的回应封包提供给第一虚拟串列现场总线资料处理模块221a,第一虚拟串列现场总线资料处理模块221a会使用与第一虚拟串列现场总线传输模块21对应的应用程序界面,将经过封包格式转换后的封包提供给第一虚拟串列现场总线传输模块21,使得第一虚拟串列现场总线埠210a将包含目标资料的封包传送给与第一虚拟串列现场总线串列埠210a进行虚拟串列现场总线通讯的第一网络装置101(步骤580)。综上所述,可知本发明与现有技术之间的差异在于现场总线闸道器由与来源装置连接的虚拟串列现场总线埠接收封包后,依据封包判断传送封包需使用的现场总线协定以及第二现场总线埠并转换封包为第二现场总线埠所使用的现场总线封包格式,再使用第二现场总线埠传送封包至目的装置的技术手段,借由此一技术手段可以解决现有技术所存在无法同时提供两台远端装置利用串列现场总线协定来控制同一受控装置的问题,提供远端来源装置/目的装置利用虚拟串列现场总线埠,来达到使用串列现场总线协定进行长距离通讯,进而达成让来源装置/目的装置使用单一虚拟串列现场总线埠即与多个目的装置/来源装置同时通讯的技术功效。以下继续以图7A本发明所提的依据目的控制存取记忆空间的装置的元件示意图来说明本发明的第二种实施态样的运作过程。如图7A所示,本发明的现场总线闸道器200d含有第一现场总线埠210、第二现场总线埠M0、第三资料处理模块271、第四资料处理模块272、储存模块观0以及存取控制模块四0。其中,第一现场总线埠210以及第二现场总线埠240分别与图3A中的第一现场总线埠210以及第二现场总线埠240相同,故不再赘述。第三资料处理模块271及第四资料处理模块272均与第一资料处理模块221、第二资料处理模块222相似,同样负责处理网络现场总线协定或串列现场总线协定的规范行为,此部分亦与前述相同,故不再赘述。与第一资料处理模块221不同的是,第三资料处理模块271/第四资料处理模块272亦负责接收存取控制模块280所发出的请求资料输入指令,第三资料处理模块271/第四资料处理模块272所接收的请求资料输入指令包含读取命令、读取位址、读取长度等项目,但本发明所提的请求资料输入指令并不以此为限。第三资料处理模块271/第四资料处理模块272也负责接收存取控制模块290所发出的资料输出指令,第三资料处理模块271/第四资料处理模块272所接收的资料输出指令包含写入命令、写入位址、写入长度及写入内容等项目,但本发明所提的资料输出指令并不以此为限。第三资料处理模块271/第四资料处理模块272也可以依据所接收的资料输出指令与来源位址及/或目的位址建立符合所使用现场总线协定规范的资料写入的命令封包,并通过与第一现场总线埠210/第二现场总线埠MO中的现场总线资料处理模块对应的应用程序界面提供资料写入的命令封包给第一现场总线埠210/第二现场总线埠M0,使第一现场总线埠210/第二现场总线埠240将资料写入的命令封包传送至来源装置/目的装置。第三资料处理模块271/第四资料处理模块272还可以依据所接收的请求资料输入指令与来源位址及/或目的位址建立符合所使用现场总线协定规范的资料读取的命令封包,并通过第一现场总线埠210/第二现场总线埠240的现场总线资料处理模块对应的应用程序界面提供资料读取的命令封包给第一现场总线埠210/第二现场总线埠M0,使第一现场总线埠210/第二现场总线埠240将资料读取的命令封包传送至来源装置/目的装置。第三资料处理模块271/第四资料处理模块272还负责通过与第一现场总线埠210/第二现场总线埠240的现场总线资料处理模块对应的应用程序界面取得来源装置/目的装置回应资料读取命令封包所传送的包含目标资料的回应封包,并在由回应封包中取得目标资料后,将目标资料传回给存取控制模块四0。第三资料处理模块271/第四资料处理模块272还负责通过与第一现场总线埠210/第二现场总线埠240的现场总线资料处理模块对应的应用程序界面取得来源装置/目的装置回应资料写入命令封包所传送的包含资料写入结果为成功或失败的状态值的回应封包,并在由回应封包中取得状态值后,将状态值传回给存取控制模块四0。第三资料处理模块271/第四资料处理模块272也负责通过与第一现场总线埠210/第二现场总线埠240的现场总线资料处理模块对应的应用程序界面取得来源装置/目的装置所传送的符合所使用现场总线协定规范的资料读取的命令封包,并由资料读取命令封包中读取出资料读取命令。第三资料处理模块271/第四资料处理模块272所读出的资料读取命令包含存取位址、资料长度、读取命令等项目,但本发明所提的资料读取命令并不以此为限。第三资料处理模块271/第四资料处理模块272还负责根据所接收到的资料读取命令对存取控制模块290发出请求资料输出指令,及接收存取控制模块290所传送的请求资料输出的回应资料,并依此回应资料与来源位址及/或目的位址建立符合所使用现场总线协定规范的资料读取命令的回应封包,并通过与第一现场总线埠210/第二现场总线埠MO的现场总线资料处理模块对应的应用程序界面提供此回应封包给第一现场总线埠210/第二现场总线埠M0,使第一现场总线埠210/第二现场总线埠240将此回应封包传送至来源装置/目的装置。第三资料处理模块271/第四资料处理模块272亦负责通过与第一现场总线埠210/第二现场总线埠240的现场总线资料处理模块对应的应用程序界面取得来源装置/目的装置所传送的符合所使用现场总线协定规范的资料写入的命令封包,并由资料写入命令封包中读取出资料写入命令。第三资料处理模块271/第四资料处理模块272所读出的资料写入命令包含存取位址、资料长度、写入命令、写入资料内容等项目,但本发明所提的资料写入命令并不以此为限。第三资料处理模块271/第四资料处理模块272还负责根据所接收到的资料写入命令对存取控制模块290发出资料输入指令,及接收存取控制模块290所传送的资料输入结果为成功或失败的状态值,并根据此状态值与来源位址及/或目的位址建立符合所使用现场总线协定规范的资料写入命令的回应封包,并通过与第一现场总线埠210/第二现场总线埠MO的现场总线资料处理模块对应的应用程序界面提供此回应封包给第一现场总线埠210/第二现场总线埠M0,使第一现场总线埠210/第二现场总线埠240将此回应封包传送至来源装置/目的装置。第三资料处理模块271/第四资料处理模块272更负责判断所收到的回应封包、资料写入命令封包或资料读取命令封包是否有效,若无效则会丢弃回应封包、资料写入命令封包或资料读取命令封包。一般而言,第三资料处理模块271/第四资料处理模块272会依据回应封包、资料写入命令封包或资料读取命令封包的格式是否正确来判断回应封包、资料写入命令封包或资料读取命令封包包是否有效,但第三资料处理模块271/第四资料处理模块272判断回应封包、资料写入命令封包或资料读取命令封包是否有效的方式并不以此为限。储存模块280负责同步储存来源装置/目的装置的目标资料,并提供存取控制模Ife290存取。存取控制模块290负责发出请求资料输入指令至第三资料处理模块271/第四资料处理模块272,并将第三资料处理模块271/第四资料处理模块272依据请求资料输入指令所读取的与请求资料输入指令对应的目标资料储存到储存模块观0中。存取控制模块290会定义每个装置中的储存位址与储存模块观0中的储存位址的对应关系,如此,存取控制模块290便可以在来源装置或目的装置欲存取某一储存位址的目标资料时,存取该储存位址对应到储存模块观0中的储存位址,在本发明中,储存模块观0中的储存位址称为“指定位置”。一般而言,存取控制模块290会周期性的发出请求资料输入指令至第三资料处理模块271/第四资料处理模块272,借以让储存模块280所储存的目标资料与来源装置/目的装置中的目标资料同步。存取控制模块290负责发出资料输出指令至第三资料处理模块271/第四资料处理模块272,借以通过第三资料处理模块271/第四资料处理模块272将转换成资料写入命令封包传给来源装置/目的装置,在资料输出指令中可以包含资料写入命令、写入长度、写入内容以及与写入位址对应的来源装置/目的装置的指定位置。一般而言,存取控制模块290会周期性的发出资料输出指令至第三资料处理模块271/第四资料处理模块272,借以让储存模块280所储存的目标资料与来源装置/目的装置中的目标资料同步。存取控制模块290亦负责依据第三资料处理模块271/第四资料处理模块272所取得的资料写入命令、写入位址、写入长度及写入内容,将目标资料储存到储存模块观0中与来源装置/目的装置对应的指定位置。一般而言,来源装置/目的装置会周期性的发出资料写入命令封包至第三资料处理模块271/第四资料处理模块272,借以让储存模块280所储存的目标资料与来源装置/目的装置中的目标资料同步。存取控制模块290也负责依据第三资料处理模块271/第四资料处理模块272所取得的资料读取命令、资料长度以及目的位址,至储存模块280中与来源装置/目的装置对应的指定位置中读取目标资料,并将读取出的目标资料传回第三资料处理模块271/第四资料处理模块272。综上所述,来源装置与目的装置的目标资料交换可通过下列方式进行1.现场总线闸道器200d周期性的发送资料读取命令至目的装置/来源装置,借以读取目标资料并储存于现场总线闸道器200d的储存模块观0中,同时,来源装置/目的装置周期性的发送资料读取命令至现场总线闸道器200d,借以读取储存在储存模块观0中的目标资料。2.目的装置/来源装置周期性的发送资料写入命令至现场总线闸道器200d,借以将目标资料储存在储存模块280中,同时,来源装置/目的装置周期性的发送资料读取命令至现场总线闸道器200d,借以读取储存在储存模块观0中的目标资料。3.来源装置/目的装置周期性的发送资料写入命令至现场总线闸道器200d,借以将目标资料储存在储存模块观0中,同时,现场总线闸道器200d周期性的发送资料写入命令至目的装置/来源装置,借以将储存模块280所储存的目标资料传给目的装置/来源装置。4.现场总线闸道器200d周期性的发送资料读取命令至目的装置/来源装置,借以读取目标资料并储存于储存模块观0中,同时,现场总线闸道器200d周期性的发送资料写入命令至来源装置/目的装置,借以将储存模块280所储存的目标资料传给来源装置/目的装置。接着再以一个上述第一种方式的实施例来解说本发明的运作装置与方法。本实施例以第二网络装置102通过现场总线闸道器200f读取储存第二串列现场总线装置302中的目标资料为例,但本发明并不以此为限。其中,现场总线闸道器200f的元件示意如图7B所示。在实务上,上述的其他方式与本实施例都大同小异,差别在于来源装置/目的装置与现场总线闸道器200d传送资料时的主被动关系以及被传送的资料的内容。首先,现场总线闸道器200f的存取控制模块290会储存预先定义的装置存储器位址对应表,假设在装置存储器位址对应表中,记录储存模块观0的位址0x3200至0x4000储存第一网络装置101的位址0x0000至OxOEOO的资料,而储存模块280的位址0x3001至0x4000储存第二串列现场总线装置302的位址0x0001至0x1000的资料,但本发明并不以此为限。存取控制模块290会周期性的向第二串列现场总线资料处理模块222b(第四资料处理模块27发出读取第二串列现场总线装置302的目标资料的请求资料输入指令。假设存取控制模块290所发出的请求资料输入指令包含“读取资料”的命令种类、欲读取的目标资料的起始存储器位址“0x0410”、欲读取的目标资料的资料长度“观位元组(bytes)”。在第二串列现场总线资料处理模块222b接收到现场总线闸道器200f所传送的请求资料输入指令后,第二串列现场总线资料处理模块222b会依据请求资料输入指令以及第二串列现场总线装置302的目的位址建立资料读取命令封包,并使用与第二串列现场总线埠MOb中的第二串列现场总线传输模块对应的应用程序界面,将资料读取命令封包提供给第二串列现场总线埠MOb,使得第二串列现场总线埠MOb传送资料读取命令封包到第二串列现场总线装置302的实体串列现场总线埠。第二串列现场总线装置302在收到读取目标资料的资料读取命令封包后,会由存储器中的0x0410处开始读取出目标资料,并将读取到的目标资料组成与资料读取命令封包对应的回应封包后,以与现场总线闸道器200f连接的实体串列现场总线埠将回应封包传回现场总线闸道器200f。在现场总线闸道器200f的第二串列现场总线埠MOb接收到回应封包后,第二串列现场总线埠MOb中的第二串列现场总线传输模块会通过相对应的应用程序界面将回应封包提供给第二串列现场总线资料处理模块222b。接着,第二串列现场总线资料处理模块222b会将目标资料传回存取控制模块四0,存取控制模块290在接收到目标资料后,会将目标资料写入储存模块观0中与第二串列现场总线装置302对应的指定位置,由于存取控制模块290定义储存模块观0中,位址0x3001至0x4000储存第二串列现场总线装置302的位址0x0001至0x1000的资料,因此,在本实施例中,目标资料会被储存在0x3410至0x342B的位置上。在本实施例中,由于存取控制模块290会周期性的对第二串列现场总线资料处理模块222b发出至第二串列现场总线装置302读取目标资料的资料读取命令,因此,第二串列现场总线资料处理模块222b会不断的至第二串列现场总线装置302读取目标资料,并通过存取控制模块290更新被储存在0x3410至0x342B的位置上的目标资料,如此,储存模块280中所储存的目标资料将会与第二串列现场总线装置302同步。22当第一网络装置101使用其所产生的第五虚拟串列现场总线埠与现场总线闸道器200f上的第一虚拟串列现场总线埠210a进行虚拟串列现场总线通讯时,若第一网络装置101欲读取第二串列现场总线装置302中由0x0410开始的kbytes的目标资料写入由0x0210开始的kbytes中,则第一网络装置101会通过第五虚拟串列现场总线埠,将包含读取目标资料的资料读取命令的资料读取命令封包传送到现场总线闸道器200f的第一虚拟串列现场总线埠210a。在现场总线闸道器200f从网络界面211接收到包含资料读取命令的资料读取命令封包后,现场总线闸道器200f的第一虚拟串列现场总线传输模块会通过相对应的应用程序界面,将传送包含资料读取命令的资料读取命令封包给第一虚拟串列现场总线资料处理模块221a(在图7A中,即为第三资料处理模块271)。而后,第一虚拟串列现场总线资料处理模块221a会由资料读取命令封包中撷取出资料读取命令,并发出请求资料输出指令将资料读取命令、资料长度以及所需求资料的目的位址传送给存取控制模块四0。假设在本实施例中,资料读取命令包含目标资料的储存起始位址“0x0210”、资料长度“观位元组”,但本发明所提的资料读取命令并不以此为限。存取控制模块290会依据请求资料输出指令中,第一虚拟串列现场总线资料处理模块221a所传来的目标资料的起始储存位址”0x0210”以及目标资料的资料长度“观位元组”,由于存取控制模块290定义储存模块观0中,位址0x3200至0x4000对应至第一网络装置101的位址0x0000至OxOEOO,因此,存取控制模块290会由与起始储存位址”0x0210”对应的位址0x3410的指定位置开始读取28位元组的目标资料,如此,存取控制模块290便可以读出目标资料并传送目标资料给第一虚拟串列现场总线资料处理模块221a。第一虚拟串列现场总线资料处理模块221a会依据存取控制模块290所传来的目标资料建立回应封包,并通过与第一虚拟串列现场总线埠210a中的第一虚拟串列现场总线传输模块对应的应用程序界面,提供回应封包给第一虚拟串列现场总线埠210a,使得第一虚拟串列现场总线埠210a将回应封包传回第一网络装置101,如此,第一网络装置101便可以通过现场总线闸道器200f取得第二串列现场总线装置302所记录的目标资料。综上所述,可知本发明与现有技术之间的差异在于现场总线闸道器由与来源装置或目的装置连接的虚拟串列现场总线埠接收目标资料后,依据命令封包判断传送目标资料需使用的现场总线协定以及现场总线埠后,以判断出的该现场总线埠传送包含资料的封包至目的装置或来源装置的技术手段,借由此一技术手段可以解决现有技术所存在无法同时提供两台远端装置利用串列现场总线协定来控制同一受控装置的问题,提供远端来源装置/目的装置利用虚拟串列现场总线埠,来达到使用串列现场总线协定进行长距离通讯,进而达成让来源装置/目的装置使用单一虚拟串列现场总线埠即与多个目的装置/来源装置同时通讯的技术功效。再者,本发明的使用虚拟串列现场总线埠的资料传递方法,可实现于硬件、软件或硬件与软件的组合中。虽然本发明所公开的实施方式如上,惟所述的内容并非用以直接限定本发明的专利保护范围。任何本发明所属
技术领域
中普通技术人员,在不脱离本发明所公开的精神和范围的前提下,对本发明的实施的形式上及细节上作些许的更动润饰,均属于本发明的专利保护范围。本发明的专利保护范围,仍须以所附的权利要求书所界定者为准。权利要求1.一种使用虚拟串列现场总线埠的资料传递方法,系应用于一现场总线闸道器(Fieldbusgateway),该现场总线闸道器包含至少一第一现场总线埠及至少一第二现场总线埠,该第一现场总线埠及第二现场总线埠至少有一为虚拟串列现场总线埠(virtualserialFieldbusport),其特征在于,该方法至少包含下列步骤以该第一现场总线埠连接至少一来源装置与该现场总线闸道器;以各该第二现场总线埠连接该现场总线闸道器与至少一目的装置;该来源装置通过该第一现场总线埠传送包含一目标资料的一封包至该现场总线闸道器;该现场总线闸道器依据该封包选择至少一第二现场总线协定及相对应的至少一该第二现场总线埠;该现场总线闸道器判断该第二现场总线埠与该第一现场总线埠所使用的现场总线协定不同后,转换该封包为各该第二现场总线埠所使用的现场总线封包格式;及该现场总线间道器通过各该第二现场总线埠传送该封包至各该目的装置。2.如权利要求1所述的使用虚拟串列现场总线埠的资料传递方法,其特征在于,该方法于该现场总线闸道器依据该封包选择各该第二现场总线埠的步骤系该现场总线闸道器由该封包中撷取一目的位址及/或一来源位址,并依据该目的位址及/或该来源位址选择各该第二现场总线埠的步骤。3.如权利要求2所述的使用虚拟串列现场总线埠的资料传递方法,其特征在于,该方法于该现场总线闸道器由该封包中撷取该目的位址及/或该来源位址的步骤前,或于该现场总线间道器依据该目的位址及/或该来源位址选择各该第二现场总线埠的步骤前,更包含该现场总线间道器判断该封包无效后,丢弃该封包的步骤。4.一种使用虚拟串列现场总线埠的现场总线闸道器,系将一目标资料由至少一来源装置转送至至少一目的装置,其特征在于,该现场总线闸道器至少包含至少一第一现场总线埠,与各该来源装置连接,各该第一现场总线埠为网络现场总线埠、虚拟串列现场总线埠或实体串列现场总线埠的其中之一;至少一第二现场总线埠,分别与各该目的装置连接,各该第二现场总线埠为网络现场总线埠、虚拟串列现场总线埠及实体串列现场总线埠的其中之一,且该第一现场总线埠及该第二现场总线埠至少其中之一为虚拟串列现场总线埠;至少一第一资料处理模块,用以处理相对应的现场总线协定,借以通过相对应的各该第一现场总线埠接收各该来源装置所传送的一封包;一路径选择模块,用以依据该封包选择至少一第二现场总线协定及至少一该第二现场总线埠;一封包格式转换模块,用以于该第一现场总线埠与各该第二现场总线埠所使用的现场总线协定不同时,转换该封包为各该第二现场总线埠所使用的现场总线封包格式;及至少一第二资料处理模块,用以处理相对应的现场总线协定,并通过各该第二现场总线埠传送该封包至各该目的装置。5.如权利要求4所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,第一现场总线掉或第二现场总线埠更包含一网络界面,用以与该来源装置或该目的装置连接;一现场总线传输模拟单元,用以通过该网络界面接收或传送该目标资料;一现场总线资料与物理讯号模拟单元,用以通过该现场总线传输模拟单元接收或传送该目标资料;及一应用程序命令处理单元,用以读取该现场总线资料与物理讯号模拟单元接收的该目标资料或输出该目标资料至现场总线资料与物理讯号模拟单元。6.如权利要求5所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该现场总线资料与物理讯号模拟单元更用以设定一虚拟实体界面,并提供该虚拟实体界面的界面参数的设定与读取,及用以产生并处理一物理讯号及一状态值,借以模拟现场总线实体层,该现场总线传输模拟单元更用以依据该虚拟实体界面建立及控管与该来源装置或该目的装置的连线,并接收或传送该物理讯号及该状态值,借以模拟实体现场总线传输的传输行为,该应用程序命令处理单元更用以通过该现场总线资料与物理讯号模拟单元设定或读取该界面参数及该状态值。7.如权利要求5所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该第一现场总线埠或该第二现场总线埠更包含现场总线资料链接层模拟单元,用以将该应用程序命令处理单元读取的该目标资料封装为一现场总线封包及模拟实体现场总线控制器所提供的资料链接层的处理机制。8.如权利要求4所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该第一资料处理模块更用以判断该封包是否有效,若该第一资料处理模块判断该封包无效,则丢弃该封包。9.如权利要求4所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该路径选择模块更用以判断该目的位址及/或该来源位址是否错误,该第一资料处理模块更用以于该路径选择模块判断该目的位址及/或该来源位址错误时,丢弃该封包。10.一种使用虚拟串列现场总线埠的现场总线闸道器,系提供至少一第一装置读取/写入一目标资料,该目标资料与至少一第二装置同步,其特征在于,该现场总线闸道器至少包含一储存模块;至少一第一现场总线埠,与各该第二装置/各该第一装置连接;至少一第二现场总线埠,与各该第一装置/各该第二装置连接,各该第一现场总线埠及各该第二现场种线埠至少其中之一为虚拟串列现场总线埠;至少一第三资料处理模块,用以周期性的通过各该第一现场总线埠接收该目标资料;一存取控制模块,用以将各该第三资料处理模块所接收的该目标资料储存于该储存模块中与各该第一装置/各该第二装置对应的一指定位置,及用以至该指定位置读取该目标资料;及至少一第四资料处理模块,用以周期性的通过各该第二现场总线埠传送该存取控制模块所读出的该目标资料。11.如权利要求10所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该第三资料处理模块通过该第一现场总线埠接收的该目标资料系包含于一资料写入封包中,该第四资料处理模块通过该第二现场总线埠传送的该目标资料系包含于一资料读取回应封包中。12.如权利要求10所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该存取控制模块更用以周期性的发出一请求资料输入指令,该第三资料处理模块更用以通过该第一现场总线埠传送包含该请求资料输入指令之一资料读取封包至该第一装置或该第二装置,并接收该第一装置或该第二装置所传回的该目标资料。13.如权利要求10所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该存取控制模块更用以周期性的发出传送该目标资料之一资料输出指令,该第四资料处理模块更用以通过该第二现场总线埠传送包含该资料输出指令及该目标资料之一资料写入封包至该第一装置或该第二装置。14.如权利要求10所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,第一现场总线埠或第二现场总线埠更包含一网络界面,用以与该第一装置或该第二装置连接;一现场总线传输模拟单元,用以通过该网络界面接收/传送该目标资料;一现场总线资料与物理讯号模拟单元,用以通过该现场总线传输模拟单元接收或传送该目标资料;及一应用程序命令处理单元,用以依据该存取控制模块产生的指令读取该现场总线资料与物理讯号模拟单元接收的该目标资料或输出该目标资料至现场总线资料与物理讯号模拟单元。15.如权利要求14所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该现场总线资料与物理讯号模拟单元更用以设定一虚拟实体界面,并提供该虚拟实体界面的界面参数的设定与读取,及用以产生并处理一物理讯号及一状态值,借以模拟现场总线实体层,该现场总线传输模拟单元更用以依据该虚拟实体界面建立及控管与该来源装置或该目的装置的连线,并接收或传送该物理讯号及该状态值,借以模拟实体现场总线传输的传输行为,该应用程序命令处理单元更用以通过该现场总线资料与物理讯号模拟单元设定或读取该界面参数及该状态值。16.如权利要求14所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该第一现场总线埠或该第二现场总线埠更包含现场总线资料链接层模拟单元,用以将该应用程序命令处理单元读取的该目标资料封装为一现场总线封包及模拟实体现场总线控制器所提供的资料链接层的处理机制。17.如权利要求10所述的使用虚拟串列现场总线埠的现场总线闸道器,其特征在于,该第四资料处理模块更用以通过该第二现场总线埠判断当前是否可传送该目标资料至该第一装置或该第二装置,若该第四资料处理模块判断当前无法传送该目标资料,则将于一特定时间后再次通过该第二现场总线埠传送该目标资料。全文摘要本发明公开了一种使用虚拟串列现场总线埠的现场总线闸道器及其资料传递方法,其通过现场总线闸道器使用与来源装置或目的装置连接的虚拟串列现场总线埠(第一现场总线埠)接收包含目标资料的封包后,使用第二现场总线埠传送包含目标资料的封包至目的装置或来源装置的技术手段,可以同时提供两台远端装置控制同一受控装置,并达成让来源装置/目的装置使用单一虚拟埠即可与多个目的装置/来源装置同时通讯的技术功效。文档编号H04L29/06GK102255784SQ201010189419公开日2011年11月23日申请日期2010年5月21日优先权日2010年5月21日发明者庄峻富,魏伯而申请人:四零四科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1