CN103346943B - 数据传输方法及*** - Google Patents

数据传输方法及*** Download PDF

Info

Publication number
CN103346943B
CN103346943B CN201310308529.5A CN201310308529A CN103346943B CN 103346943 B CN103346943 B CN 103346943B CN 201310308529 A CN201310308529 A CN 201310308529A CN 103346943 B CN103346943 B CN 103346943B
Authority
CN
China
Prior art keywords
profibus
data
slave station
module
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310308529.5A
Other languages
English (en)
Other versions
CN103346943A (zh
Inventor
武江涛
梁志超
曹亚猛
秦悦明
李小卿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hollysys Automation Co Ltd
Hollysys Automation Technologies Ltd
Original Assignee
Hangzhou Hollysys Automation Co Ltd
Hollysys Automation Technologies Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Hollysys Automation Co Ltd, Hollysys Automation Technologies Ltd filed Critical Hangzhou Hollysys Automation Co Ltd
Priority to CN201310308529.5A priority Critical patent/CN103346943B/zh
Publication of CN103346943A publication Critical patent/CN103346943A/zh
Application granted granted Critical
Publication of CN103346943B publication Critical patent/CN103346943B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Communication Control (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种数据传输方法及***,该方法应用于数据传输***,该***包括主控模块、转换模块和至少一个单模块且每个单模块内部包括预设数量的profibus-dp从站,设预设数量为N,即一个单模块内包含N个profibus-dp从站,主控模块分别与N个profibus-dp从站进行数据传输,最多能够传输244×N字节,因此主控模块与单模块之间能够进行244×N字节大数据量的传输。本发明还提供了一种数据传输方法,在数据传输***中采用本发明提供的数据传输方法,从而实现单模块与主控模块之间进行大数据量传输的目的,进而满足主控模块与单模块之间进行大数据量profibus-dp协议数据交互的需求。

Description

数据传输方法及***
技术领域
本发明涉及自动化控制领域,具体涉及一种数据传输方法及***。
背景技术
profibus是一种国际化、开放式、不依赖于设备生产商的现场总线标准,主要用于工厂自动化车间级监控和现场设备层数据通信与控制的现场总线技术,广泛适用于制造业自动化、流程工业自动化和楼宇、交通电力等其他领域自动化。它由profibus-dp(decentralizedperiphery)、profibus-pa(processautomation)、profibus-fms(fieldbusmessagespecification)三个兼容部分组成。
其中profibus-dp是一种高速低成本通讯标准,多用于设备控制***分散式I/O的通讯,设备控制***主要包括主控模块和单模块,主控模块与单模块之间主要使用主-从方式进行通讯,主控模块通常周期性地与单模块进行数据交互。在实际应用中,一个主控模块连接若干个单模块,而profibus-dp的协议在进行数据交换时的原则为:在一个周期内,主控模块依次与单模块1、单模块2……到最后一个单模块N进行数据交互,然后进入下一周期继续依次与各个单模块进行数据交互。
单模块中包含profibus-dp从站,主控模块依据profibus-dp协议与单模块进行数据交互时,实际上为主控模块与单模块中的profibus-dp从站进行数据交互,根据profibus-dp协议的规定,主控模块与每个profibus-dp从站进行一次数据交互时,能够传输数据量的最大值为244字节,由于现有的单模块多为西门子等外国公司提供的,其每个单模块中只有一个profibus-dp从站,因此主控模块与单模块进行一次数据交互时,能够传输的数据量的最大值为244字节。
但随着现场应用环境的复杂变化及现有技术的不断进步,主控模块与单模块之间需要进行大数据量的传输,244字节的数据量已经远远不能满足要求,但限于profibus-dp协议的规定和单模块本身结构,主控模块在一个周期内仅能够与单模块进行244字节的传输,因此主控模块与单模块需要在多个周期多次进行数据交互,这导致单模块与主控模块之间实现一次完全的数据交互需要的时间则会很长,这严重影响了主控模块与单模块之间数据的传输时间和数据后续的使用过程。
因此现在急需自主研发一种单模块,使单模块能够与主控之间进行大数据量的传输,又能满足profibus-dp协议标准,从而满足现有技术中主控模块与单模块之间进行大数据量数据交互的需求。
发明内容
本发明提供了一种数据传输方法及***,在数据传输***使用该数据传输方法后,能够实现单模块能够与主控之间进行大数据量的传输的目的,从而满足现有技术中主控模块与单模块之间进行大数据量profibus-dp协议数据交互的需求。
为了实现上述目的,本发明提供了以下技术手段:
一种数据传输方法,应用于数据传输***,所述数据传输***包括:主控模块、与所述主控模块相连的转换模块和与所述转换模块相连的至少一个单模块,每个单模块内部包括预设数量的profibus-dp从站,所述profibus-dp从站包括UART模块、接收模块、发送模块、控制模块、存储模块和总线交互接口模块,包括:
在所述至少一个单模块中选取一个单模块作为目标单模块;
在内存中查找与所述目标单模块进行数据传输的目标数据和所述目标数据的数据量,并获取所述目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址;
根据所述目标数据、所述目标数据的数据量和所述profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据;
将包含第一从站地址和与所述第一从站地址对应的第一从站数据的第一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块;
在接收所述目标单模块反馈的第一应答数据后,将包含下一从站地址和与所述下一从站地址对应的下一从站数据的下一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,依次类推直到遍历所述目标单模块内的每个profibus-dp从站。
一种数据传输方法,应用于数据传输***,所述数据传输***包括:主控模块、与所述主控模块相连的转换模块和与所述转换模块相连的至少一个单模块,每个单模块内部包括预设数量的profibus-dp从站,所述profibus-dp从站包括UART模块、接收模块、发送模块、控制模块、存储模块和总线交互接口模块,包括:
每个profibus-dp从站的所述UART模块确定主控模块发送所述访问数据的波特率后,锁定所述波特率接收访问数据,并在校验正确后发送至本profibus-dp从站中的所述接收模块;
每个profibus-dp从站的所述接收模块依据profibus-dp协议对所述访问数据进行协议解析获取所述访问数据中的目标从站地址,若一profibus-dp从站的从站地址与所述目标从站地址一致,则确定该profibus-dp从站为目标profibus-dp从站,所述目标profibus-dp从站根据profibus-dp协议继续对所述访问数据进行协议解析得到目标从站数据;
所述目标profibus-dp从站中的所述控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内;
所述目标profibus-dp从站中的总线交互接口模块依据所述目标从站数据与外界人机接口进行数据交互获得应答数据,并将所述应答数据反馈至所述目标profibus-dp从站中的UART模块;
所述目标profibus-dp从站中的UART模块将所述应答数据发送至所述目标profibus-dp从站中的发送模块,由发送模块反馈所述应答数据至所述主控模块;
重新执行上述步骤,直到遍历所述目标单模块内的每个profibus-dp从站。
一种数据传输***,包括:
主控模块,用于在所述至少一个单模块中选取一个单模块作为目标单模块,在内存中查找与所述目标单模块进行数据传输的目标数据和所述目标数据的数据量,并获取所述目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址,根据所述目标数据、所述目标数据的数据量和所述profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据,将包含第一从站地址和与所述第一从站地址对应的第一从站数据的第一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,在接收所述目标单模块反馈的第一应答数据后,将包含下一从站地址和与所述下一从站地址对应的下一从站数据的下一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,依次类推直到遍历所述目标单模块内的每个profibus-dp从站;
与所述主控模块相连的转换模块;
至少一个单模块,每个单模块内部包括预设数量的profibus-dp从站,所述profibus-dp从站包括UART模块、接收模块、发送模块、控制模块、存储模块和总线交互接口模块,所述至少一个单模块,用于每个profibus-dp从站的所述UART模块确定主控模块发送所述访问数据的波特率后,锁定所述波特率接收访问数据,并在校验正确后发送至本profibus-dp从站中的所述接收模块,每个profibus-dp从站的所述接收模块依据profibus-dp协议对所述访问数据进行协议解析获取所述访问数据中的目标从站地址,若一profibus-dp从站的从站地址与所述目标从站地址一致,则该profibus-dp从站为目标profibus-dp从站,所述目标profibus-dp从站根据profibus-dp协议继续对所述访问数据进行协议解析得到目标从站数据,所述目标profibus-dp从站中的所述控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内,所述目标profibus-dp从站中的总线交互接口模块依据所述目标从站数据与外界人机接口进行数据交互获得应答数据,并将所述应答数据反馈至所述目标profibus-dp从站中的UART模块,所述目标profibus-dp从站中的UART模块将所述应答数据发送至所述目标profibus-dp从站中的发送模块,由发送模块反馈所述应答数据至所述主控模块,重新执行上述步骤,直到遍历所述目标单模块内的每个profibus-dp从站。
本发明公开了一种数据传输方法,该方法应用于数据传输***,该***中包括主控模块、转换模块和至少一个单模块且每个单模块内部包括预设数量的profibus-dp从站,设预设数量为N。
本发明中主控模块与单模块之间进行数据传输时,还是按照profibus-dp协议与profibus-dp从站依次进行数据传输,由背景技术可知,一个profibus-dp从站与主控模块进行一次数据交互能够传输的最大数据量为244字节,但本发明中一个单模块内包含N个profibus-dp从站,主控模块分别与N个profibus-dp从站进行数据传输,最多能够传输244×N字节,由于N个profibus-dp从站都属于单模块,因此主控模块与单模块之间能够进行244×N字节大数据量的传输。
本发明中数据传输***中的单模块内profibus-dp从站的预设数量N可以设定,预设数量N越大,能够传输的数据量越大,从而实现单模块与主控模块之间进行大数据量的传输的目的。
因现有技术中并没有主控模块与包含多个profibus-dp从站的单模块进行数据交互的方法,因此本发明还提供了一种数据传输方法,在数据传输***中采用本发明提供的数据传输方法,从而实现单模块与主控模块之间进行大数据量的传输的目的,进而满足主控模块与单模块之间进行大数据量profibus-dp协议数据交互的需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例公开的数据传输***的结构示意图;
图2为本发明实施例公开的数据传输***中单模块内的profibus-dp从站的预设数量的确定方法的流程图;
图3为本发明实施例公开的数据传输方法的流程图;
图4为本发明实施例公开的又一数据传输方法的流程图;
图5为本发明实施例公开的数据传输***中存储模块的结构示意图;
图6为本发明实施例公开的存储模块中RAM区的结构示意图;
图7为本发明实施例公开的数据传输方法中目标从站数据存储至RAM区的流程图;
图8为本发明实施例公开的又一数据传输***的结构示意图;
图9为本发明实施例公开的又一数据传输方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明提供了一种数据传输***,所述数据传输***包括:
主控模块100、与所述主控模块100相连的转换模块200和与所述转换模块200相连的至少一个单模块300;为了清楚描述各个单模块与转换模块的关系,本实施例在图1展示的单模块的数量为M,M为自然数,且1<M<127。
每个单模块300内部包括预设数量的profibus-dp从站400,所述profibus-dp从站包括通用异步收发传输器(UniversalAsynchronousReceiver/Transmitter,UART)模块401、接收模块402、发送模块403、控制模块404、存储模块405和总线交互接口模块406。为了在图1中清楚的显示profibus-dp从站,本实施例中预设数量采用N表示,N为自然数且N>1。
其中主控模块用于在所述至少一个单模块中选取一个单模块作为目标单模块,在内存中查找与所述目标单模块进行数据传输的目标数据和所述目标数据的数据量,并获取所述目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址,根据所述目标数据、所述目标数据的数据量和所述profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据,将包含第一从站地址和与所述第一从站地址对应的第一从站数据的第一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,在接收所述目标单模块反馈的第一应答数据后,将包含下一从站地址和与所述下一从站地址对应的下一从站数据的下一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,依次类推直到遍历所述目标单模块内的每个profibus-dp从站;
至少一个单模块,用于每个profibus-dp从站的所述UART模块确定主控模块发送所述访问数据的波特率后,锁定所述波特率接收访问数据,并在校验正确后发送至本profibus-dp从站中的所述接收模块,每个profibus-dp从站的所述接收模块依据profibus-dp协议对所述访问数据进行协议解析获取所述访问数据中的目标从站地址,若一profibus-dp从站的从站地址与所述目标从站地址一致,则确定该profibus-dp从站为目标profibus-dp从站,所述目标profibus-dp从站根据profibus-dp协议继续对所述访问数据进行协议解析得到目标从站数据,所述目标profibus-dp从站中的所述控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内,所述目标profibus-dp从站中的总线交互接口模块依据所述目标从站数据与外界人机接口进行数据交互获得应答数据,并将所述应答数据反馈至所述目标profibus-dp从站中的UART模块,所述目标profibus-dp从站中的UART模块将所述应答数据发送至所述目标profibus-dp从站中的发送模块,由发送模块反馈所述应答数据至所述主控模块,重新执行上述步骤,直到遍历所述目标单模块内的每个profibus-dp从站。
下面对数据传输***各个组成部分进行详细表述,该***中包括主控模块100,用于在所述至少一个单模块中选取一个单模块作为目标单模块,在内存中查找与所述目标单模块进行数据传输的目标数据和所述目标数据的数据量,并获取所述目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址,根据所述目标数据、所述目标数据的数据量和所述profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据,将包含第一从站地址和与所述第一从站地址对应的第一从站数据的第一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,在接收所述目标单模块反馈的第一应答数据后,将包含下一从站地址和与所述下一从站地址对应的下一从站数据的下一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,依次类推直到遍历所述目标单模块内的每个profibus-dp从站;单模块结构改变后主控模块100内部的应用程序也随之改变,后续实施例中将对主控模块100进行详细表述。
与主控模块100通过DP接口相连的转换模块200;
转换模块200包括MAX485电平转换芯片,用于将主控模块100发送的差分信号转换为单端信号发送至单模块,或将单模块发送的单端信号转换为差分信号发送至主控模块,因为主控模块向单模块传输访问数据时,为了增强抗干扰性采用差分电平传输的,本发明中的单模块仅能接收单端信号,所以访问数据信号在进入单模块之前需要将其转换为单端信号,以便单模块能够接收。
本发明公开了一种单模块300,现有技术中的单模块多为标准的profibus-dp从站芯片,例如:西门子的SPC3,标准的profibus-dp从站芯片内部仅有一个profibus-dp从站,无法满足与主控模块之间进行大数据量传输的需求,且标准的profibus-dp从站芯片内部的技术封闭,他人无法进行获得其内部的技术。
因此本发明的发明人采用现场可编程门阵列芯片(FieldProgrammableGateArray,FPGA)根据公开的profibus-dp协议采用软件程序编程的方式研发出一种单模块300,该单模块300内部包括预设数量的profibus-dp从站400,预设数量的大小可以根据主控模块与单模块需要传输的数据量而定,具体的,如图2所示,预设数量的确定过程包括:
步骤S101:获取主控模块与一单模块进行数据传输的最大数据量;
主控模块与单模块周期性的进行数据交互,每个周期中主控模块与单模块需要进行一定数据量的数据交互,各个周期中需要进行数据交互的数据量不等,为使每个周期中的目标数据都能够在一个周期内传输完成,因此在选取多个周期中进行数据交互的最大数据量确定profibus-dp从站的预设数量。
步骤S102:将最大数据量的字节数与244字节相除,得到商值和余数;
根据profibus-dp协议在一个周期内,每个profibus-dp从站与主控模块之间最多能够传输244字节的数据量,将上述步骤中得到的最大数据量与244字节作商得到商值和余数,根据商值和余数得到需要的profibus-dp从站的数量。
步骤S103:根据商值和余数得到profibus-dp从站的数量,包括:若所述余数为零则单模块中预设数量的数值至少为商值,若所述余数不为零则单模块中预设数量的数值至少为商值加一后的和值;
步骤S104:按步骤S101-S103遍历所述数据传输***中的每个单模块。
上述步骤中给出了单模块中profibus-dp从站预设数据量的范围最低限度,每个模块中profibus-dp从站的预设数量在本实施例中的最高限度是依据FPGA芯片的资源而定的,FPGA芯片资源越大,能够构建的profibus-dp从站的数量越大。
当然若余数为零时,profibus-dp从站的预设数量等于商值,若余数不为零,profibus-dp从站的预设数量等于商值加一的和值,这样最符合工业需要,既不浪费资源、增加***的负担,又能满足在一个周期内传输完成目标数据。
按上述步骤遍历数据传输***的每个单模块从而获得各个单模块内的profibus-dp从站的预设数量,以便工程师根据预设数量,在FPGA芯片构建的单模块内采用软件编程的方式得到预设的profibus-dp从站。各个从站之间相互独立,且各个profibus-dp从站完全按照profibus-dp协议进行构建,与主控模块之间的数据传输完全按照profibus-dp协议进行。每个profibus-dp从站包括UART模块401、接收模块402、发送模块403、控制模块404、存储模块405和总线交互接口模块406,各个模块之间的连接关系为数据上的连接,下述实施例中会对profibus-dp从站内包括的模块进行详细描述,在此不在赘述。
本发明公开了一种数据传输***,该***中包括主控模块、转换模块和至少一个单模块且每个单模块内部包括预设数量的profibus-dp从站,设预设数量为N。
本发明中主控模块与单模块之间进行数据传输时,还是按照profibus-dp协议与profibus-dp从站依次进行数据传输,由背景技术可知,一个profibus-dp从站与主控模块进行一次数据交互能够传输的最大数据量为244字节,但本发明中一个单模块内包含N个profibus-dp从站,主控模块分别与N个profibus-dp从站进行数据传输,最多能够传输244×N字节,由于N个profibus-dp从站都属于单模块,因此主控模块与单模块之间能够进行244×N字节大数据量的传输,本发明中数据传输***中的单模块内profibus-dp从站的预设数量N可以设定,预设数量N越大,能够传输的数据量越大,从而实现单模块与主控模块之间进行大数据量profibus-dp协议数据传输的目的。
如图3所示,本发明实施例提供了一种数据传输方法,应用于数据传输***,包括:
步骤S201:在至少一个单模块中选取一个单模块作为目标单模块;
数据传输***中包括至少一个单模块最多为128个,在执行本方法之前,主控模块需要在内存中预先存储与每个单模块进行数据传输的目标数据和所述目标数据的数据量,以及所述每个单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址。
预先存储的目标数据和目标数据的数据量是工程师根据实际情况而定的,工程师预先准备主控模块与每个单模块在多个周期内需要传输的多个目标数据及多个目标数据的数据量,并将多个周期的目标数据和目标数据的数据量一一对应的存储至内存中。工程师根据数据传输***中的单模块内部的结构,获得每个单模块内profibus-dp从站的预设数量,并通过外部微处理器对每个单模块内profibus-dp从站设定从站地址,并将每个单模块内profibus-dp从站的从站地址一一对应的存储至主控模块的内存中。
步骤S202:获得与目标单模块有关的内容,包括:在内存中查找与所述目标单模块进行数据传输的目标数据和所述目标数据的数据量,并获取所述目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址;
在该周期中,根据上述步骤中选取的目标单模块,在内存中根据预先存储的内容,查找与目标单模块对应的目标数据、目标数据的数据量和所述目标单模块内profibus-dp从站的数量,以及每个从站的地址,以便主控模块与目标单模块内的各个profibus-dp从站进行数据交互。
步骤S203:确定与目标单模块内每个profibus-dp从站进行数据传输的从站数据,根据所述目标数据、所述目标数据的数据量和所述profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据;
根据步骤S101-S103中有关预设数量的确定过程可知,profibus-dp从站的预设数量是依据多个周期中主控模块与单模块进行数据传输的最大数据量而定的,在本周期内进行数据传输的数据量不一定是最大数据量,因此需要计算主控模块与每个profibus-dp从站之间进行数据传输的从站数据。
设目标单模块内profibus-dp从站的预设数量为A,在该周期中目标数据的数据量为B字节,将B字节与244字节相除,得到商值C和余数D,若余数D为零,则目标数据依次分为C份从站数据,每份244字节,若余数D不为零,则目标数据依次分为(C+1)份从站数据,前C份每份244字节,最后一份D字节,将C份从站数据或(C+1)份从站数据依次与目标单模块内的A个pofibus-dp从站相对应,若预设数量A大于C或预设数量A大于(C+1),则剩余的pofibus-dp从站对应的从站数据为空。主控模块不需要与其进行数据交互。
步骤S204:向目标单模块发送访问数据;
步骤S205:接收应答数据后判断是否发送完成,若否则获取下一访问数据,转至步骤S204,若是则退出。
具体的包括:将包含第一从站地址和与所述第一从站地址对应的第一从站数据的第一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块;在接收所述目标单模块反馈的第一应答数据后,将包含下一从站地址和与所述下一从站地址对应的下一从站数据的下一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,依次类推直到遍历所述目标单模块内的每个profibus-dp从站。
其中,访问数据为依据步骤S202获得的各个从站地址和步骤S203中得到的与各个从站地址对应的从站数据组成的,具体的,将第一从站地址和与第一从站地址对应的第一从站数据组成第一访问数据,将第二从站地址和与第二从站地址对应的第二从站数据组成第二访问数据,依次类推直到组建完成各个从站的访问数据。以第一访问数据为例,将第一访问数据通过转换模块转换为单端信号后,发送至与第一从站地址对应的第一profibus-dp从站,第一profibus-dp从站中的总线交互接口模块根据第一访问数据与外界的人机交互接口进行数据交互后形成第一应答数据,并将第一应答数据反馈至主控模块,具体的步骤在下述实施例将详细描述,在此不再赘述。
主控模块收到第一从站发送的第一应答数据后,证明在该周期中主控模块与第一从站之间的数据交互完成,下面将与第二从站的进行数据交互,首先根据第二从站的第二从站地址得到与第二从站地址对应的第二访问数据,并将第二访问数据经转换模块发送至第二profibus-dp从站,然后由第二profibus-dp从站的总线交互接口模块与外界的人机交互接口进行数据交互得到第二应答数据,并将第二应答数据反馈至主控模块,主控接收后再次向第三profibus-dp从站发送第三访问数据,依次类推直到遍历目标单模块内的所有profibus-dp从站,当传输到最后profibus-dp从站,从站数据为空时,主控模块可以跳过该从站,继续与下一个从站进行数据交互。
本实施例详细表述了在数据传输***中主控模块内部的主要执行的过程,在本数据传输***的基础上通过主控模块循环向目标单模块内的从站发送访问数据的过程,下面将详细描述目标单模块对于主控模块发送的访问数据的处理过程。
如图4所示,本发明提供了一种数据传输方法,应用于数据传输***,包括:
步骤301:每个profibus-dp从站接收访问数据,并发送至接收模块,具体的:每个profibus-dp从站的所述UART模块确定主控模块发送所述访问数据的波特率后,锁定所述波特率接收访问数据,并在校验正确后发送至本profibus-dp从站的接收模块;
在主控模块向目标单模块发送访问数据后,目标单模块内的所有从站的述UART模块都侦听波特率,具体的:每个UART模块用12M、6M、3M、1.5M、500K、187.5K、45.45K、19200和9600几个波特率(单位都是bps)依次与访问数据的波特率进行对比,一般侦测波特率从12M开始依次递减循环往复,直到锁定波特率,从高波特率开始是因为高波特率侦测时所需要的时间较短,这样侦测速率较快。在确定波特率后锁定波特率接收访问数据,然后对接收的访问数据进行偶校验,判断是否正确,若正确的话则将访问数据发送至本profibus-dp从站的接收模块。
步骤302:确定目标profibus-dp从站,并获得目标访问数据,具体的每个profibus-dp从站的接收模块依据profibus-dp协议对所述访问数据进行协议解析获取所述访问数据中的目标从站地址,若一profibus-dp从站的从站地址与所述目标从站地址一致,则该profibus-dp从站为目标profibus-dp从站,所述目标profibus-dp从站根据profibus-dp协议继续对所述访问数据进行协议解析得到目标从站数据;
其余profibus-dp从站的从站地址与目标从站地址不一致则停止解析,等待下一次访问数据的到来,若所有profibus-dp从站的从站地址都与目标从站地址不一致,则证明该目标从站地址不为目标单模块内的profibus-dp从站,则跳转至下一个单模块进行目标从站地址的判断。
各个从站中的接收模块依据profibus-dp协议对访问数据进行解析,首先得到访问数据中的目标从站地址,各个profibus-dp从站对目标从站地址进行对比,判断目标从站地址与本profibus-dp从站地址是否一致,若一致本profibus-dp从站是目标profibus-dp从站,需要与主控模块进行数据交互的profibus-dp从站,目标profibus-dp从站继续对访问数据进行数据解析得到目标从站数据。
步骤303:目标profibus-dp从站存储访问数据,具体的,所述目标profibus-dp从站中的控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内;
如图5所示,每个profibus-dp从站400内的存储模块405包括:
寄存器区501和RAM区502;
RAM区包括:第一RAM区5021、第二RAM区5022、第三RAM区5023。
RAM区还分为接收区和发送区,接收区用于存储主控模块下发至单模块的访问数据,发送区用于存储单模块反馈至主控模块的应答数据。
如图6所示,为RAM区的结构具体实施例。
RAM区就FPGA内部用于数据存储的部分,以单模块内包含2个profibus-dp从站为例,每个从站的RAM区分为发送区和接收区,按照地址将其划分为3个区域,各自的起始地址分别是0x0000,0x1000和0x2000,每个profibus-dp从站都有3个RAM区,第一RAM区、第二RAM区、第三RAM区的地址都是在基地址的基础上进行偏移,因每个profibus-dp从站最多传输244字节,因此定义为每个RAM区的数据域为256字节即FF。
那么第一profibus-dp从站的接收区的3个RAM区的地址分别是第一RAM区:0x0000-0x00FF,第二RAM区:0x1000-0x10FF,第三RAM区:0x2000-0x20FF,第一profibus-dp从站的发送区地址分别分:第一RAM区:0x0100-0x01FF,第二RAM区:0x1100-0x11FF,第三RAM区:0x2100-0x21FF;第二profibus-dp从站的接收区的3个RAM区的地址分别是第一RAM区:0x0200-0x02FF,第二RAM区:0x1200-0x12FF,第三RAM区:0x2200-0x22FF,第一profibus-dp从站的发送区地址分别分:第一RAM区:0x0300-0x03FF,第二RAM区:0x1300-0x13FF,第三RAM区:0x2300-0x23FF。
本发明中的存储区域分为寄存器区和RAM区,寄存器区主要存储从站数据中的各个参数,RAM区存放输入输出数据,将profibus-dp从站数据进行分类,方便了后续对从站数据中的输入输出数据的使用,另外,本发明中主控模块需要发送访问数据至单模块内的存储模块,单模块需要与外界人机交互接口进行数据交互,然后将应答数据通过存储模块反馈至主控模块,因为两者的操作是异步的,因此将RAM区分为发送区和接收区并且分为三部分,以便避免单模块和主控模块对同一从站的RAM区进行的操作时起冲突,并且本RAM区能够满足将最新的数据尽快的传输到使用端,具体的使用过程详见下述的步骤中的描述。
如图7所示,所述目标profibus-dp从站中的控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内,具体的包括:
步骤S401:判断目标从站数据的数据类型,具体的:目标profibus-dp从站中的控制模块判断目标从站数据中数据域中字节数据的类型,若为参数类型则跳转至S402,若为输入输出数据类型则跳转至S403;
从站数据分为包头、数据域和校验位等部分,本步骤主要关注的为从站数据中的数据域部分的内容。
步骤S402:若为参数类型则将字节数据存储至寄存器区;
步骤S403:若为输入输出数据类型则将字节数据存储至与第一RAM区中;
步骤S404:判断是否接收完成,若是则跳转至步骤S405,若否,则进入下一字节数据跳转至步骤S401。
步骤S405:生成接收成功标的识信号,并将第一RAM区中的字节数据转存至第二RAM区。
按上述步骤将目标从站数据完全存储至存储模块后,生成接收成功标的识信号,并将第一RAM区中的字节数据转存至第二RAM区,本发明RAM区的转换为直接变换RAM区的首地址,方便快捷。
步骤304:目标profibus-dp从站获得应答数据,具体的:总线交互接口模块依据所述目标从站数据与外界人机接口进行数据交互获得应答数据,并将所述应答数据反馈至所述UART模块;
总线交互接口模块需要获取RAM区中的目标从站数据,如图7所示,接上述步骤S405之后,获取数据的步骤包括:
步骤S406:发送读取RAM区的标识信号,具体的:目标profibus-dp从站中的总线交互接口模块向所述存储模块发送读取RAM区的标识信号;
步骤S407:RAM区将将第二RAM区的字节数据发送至第三RAM区,具体的:目标profibus-dp从站中的存储模块依据读取RAM区的标识信号,将第二RAM区的字节数据发送至第三RAM区供总线接口模块调用。
总线交互接口模块从第三RAM区获取从站数据,并将从站数据与外界人机接口进行数据交互,得到应答数据,并将应答数据发送至第三RAM区,发送完成后产生发送完成标识信号,然后将第三RAM区的应答数据发送至第二RAM区,当目标单模块需要向主控模块反馈应答数据时,将第二RAM区内的应答数据发送至第一RAM区,并由第一RAM区发送至UART模块。
步骤S305:目标profibus-dp从站将应答数据反馈至主控模块,具体的:所述目标profibus-dp从站中的UART模块将所述应答数据发送至所述目标profibus-dp从站中的发送模块,由发送模块反馈所述应答数据至所述主控模块;
步骤S306:重新执行步骤S301-S305,直到遍历所述目标单模块内的每个profibus-dp从站。
上述步骤S301-S305为主控模块与目标单模块内一个目标profibus-dp从站之间的数据交互,主控模块按上述步骤遍历目标单模块内的所有从站,其中若从站对应的从站数据为空时,则直接跳过该从站,主控与目标单模块内的其他profibus-dp从站进行数据交互的过程与上述步骤一致,在此不再赘述。
本实施例为目标单模块在数据传输***中进行数据传输的详细内容,该实施例详细说明了目标单模块与主控模块进行数据传输的过程。
以上提供了一种数据传输***,该***中包括主控模块、转换模块和至少一个单模块,且每个单模块内部包括预设数量的profibus-dp从站,设预设数量为N。本发明中数据传输***中的单模块内profibus-dp从站的预设数量N可以设定,预设数量N越大,能够传输的数据量越大,从而实现单模块与主控模块之间进行大数据量的传输的目的。为此本发明还提供了一种数据传输方法,包括主控模块内部执行过程和单模块内部的执行过程,在数据传输***基础上采用本发明提供的数据传输方法,从而实现单模块与主控模块之间进行大数据量的传输的目的,进而满足主控模块与单模块之间进行大数据量数据交互的需求。
如图8所示,本发明实施例又提供一种数据传输***包括:主控模块100、与所述主控模块相连的转换模块200和与所述转换模块相连的至少一个单模块600,每个单模块600内部包括UART模块601、接收模块602、发送模块603、控制模块604、预设数量的profibus-dp存储模块605和总线交互接口模块606。其中单模块内的profibus-dp从站的预设数量,在由PFGA构建单模块时已经由工程师编写的程序确定,每个单模块内预设数据量的大小由上述步骤S101-S103确定。
如图8所示,每个从站中还包括共用的一端与UART模块相连,另一端以接收模块相连的AB网冗余切换模块607,单模块内每个从站都是AB网双冗余模式,可用性强,单模块中的接收管脚有两个,这两个管脚同时接收主控模块发送的同一信号或者冗余链路的信号(相同信号),然后在单模块里有两个UART模块都进行此接收信号的波特率侦测及偶校验,然后通过AB网冗余模块进行选定,首先默认选择A网,当A网出现问题时,AB网冗余模块控制数据接收切换到B网,继续进行数据收发,这样能够增加链路的可用性。当A/B网都故障后,才认为链路故障。因此AB网冗余切换模块就主要控制两个接收端口信号进行冗余备份切换。
如图8所示,每个profibus-dp从站中还包括共用的看门狗复位功能块608,用于在数据接收的过程中进行监控,保证在异常情况时,profibus-dp从站能够及时跳回到初始状态,从新接收数据。
由于主控模块100每个时刻只能与单模块内的一个从站进行数据交互,各个profibus-dp从站与主控模块之间类似分时复用,为了节省FPGA内部的应用空间,本数据传输***将各个profibus-dp从站的UART模块、接收模块、发送模块、控制模块、AB网冗余切换模块、看门狗复位功能块和总线交互接口模块进行共用,存储模块相当于单独的profibus-dp从站,每个profibus-dp从站有与之单独对应的存储模块。
因为本发明采用FPGA芯片构建单模块,FPGA内部的存储空间有限,因此本实施例的***将各个模块共用,可以节省PGGA的空间,以便预留资源提供给其他的设计需求,原始的profibus-dp芯片功能单一,本发明提供的单模块不仅可以实现profibus-dp从站的功能,在单模块的基础上进行大数量的传输,而且还能够实现其他的设计需求和逻辑设计,集成度高功能强大。
在该***支持下,如图9所示,本发明提供又一种数据传输方法,包括:
步骤S501:预先对主控模块和各个单模块进行准备工作。
在上述数据传输***中,每个单模块内profibus-dp从站数量已经确定,但每个单模块内profibus-dp从站没有与之对应的标识信息,因此采用从站地址作为各个profibus-dp从站的标识信息,以便后续过程中进行处理,以目标单模块为例,工程师采用外部处理器设定目标单模块中每个profibus-dp从站的从站地址,以便每个从站都有单独的从站地址,并将各个profibus-dp从站的从站地址存储在目标单模块的内存中,工程师对其他单模块也进行同样的操作。
工程师根据将每个单模块内profibus-dp从站的预设数量和每个单模块内各个profibus-dp从站的从站地址,以单模块为单位存储至主控模块的内存中。另外,工程师还需要将主控模块与每个单模块进行数据传输的目标数据和目标数据的数据量以单模块为单位存储至主控模块的内存中。
步骤S502:选取一个单模块作为目标单模块;
在真实的数据传输中为主控模块按照单模块顺序,依次与单模块进行数据传输,为了表示本发明的任意性中的单模块的任意性,将各个单模块中的一个单模块作为目标单模块,以目标单模块作为例子,其余单模块与主控之间的数据传输过程是类似一致的。
步骤S503:主控模块在内存中获得所需数据;
在内存中查找与目标单模块进行数据传输的目标数据和目标数据的数据量,并获取目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址;
步骤S504:主控模块确定与每个profibus-dp从站进行数据传输的从站数据;
主控模块根据目标数据、目标数据的数据量和profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据;
步骤S505:主控模块向目标单模块发送访问数据,
主控模块将包含一个从站地址和与该从站地址对应的从站数据的访问数据发送至目标单模块;
步骤506:目标单模块中的UART模块锁定波特率并接收访问数据;
目标单模块内的UART模块确定主控模块发送访问数据的波特率后,锁定所述波特率接收访问数据,并在校验正确后发送至所述接收模块;
步骤507:目标单模块中的接收模块解析访问数据并获取目标从站数据。
依据profibus-dp协议对所述访问数据进行协议解析获取所述访问数据中的目标从站地址,若所述目标从站地址为目标单模块内的profibus-dp从站,则根据profibus-dp协议继续对所述访问数据进行协议解析得到目标从站数据;
步骤S508:目标单模块中的控制模块将目标从站数据存储至存储模块内;
步骤S509:目标单模块中的总线交互接口模块获得应答数据,并反馈至UART模块;
总线交互接口模块依据目标从站数据与外界人机接口进行数据交互获得应答数据,并将应答数据反馈至UART模块;
步骤S510:目标单模块中的UART模块反馈应答数据至主控模块;
UART模块将应答数据发送至发送模块,由发送模块反馈应答数据至主控模块;
步骤S511:主控模块接收目标单模块反馈的应答数据后,转至下一个从站地址,跳转至步骤S505。
重新执行上述步骤,直到遍历所述目标单模块内的每个profibus-dp从站。
本发明又公开了一种数据传输***,该***中包括主控模块、转换模块和至少一个单模块,本发明中单模块内各个profibus-dp从站的UART模块601、接收模块602、发送模块603、控制模块604、AB网冗余切换模块、看门狗复位功能块和总线交互接口模块606进行共用,存储模块相当于单独的profibus-dp从站,本发明提供的单模块不仅可以实现profibus-dp从站的功能,在单模块的基础上进行大数量的传输,而且还能够实现其他的设计需求和逻辑设计,集成度高功能强大。
本发明中一个单模块内包含N个profibus-dp从站,主控模块分别与N个profibus-dp从站进行数据传输,最多能够传输244×N字节,由于N个profibus-dp从站都属于单模块,因此主控模块与单模块之间能够进行244×N字节大数据量的传输。本发明中数据传输***中的单模块内profibus-dp从站的预设数量N可以设定,预设数量N越大,能够传输的数据量越大,从而实现单模块与主控模块之间进行大数据量profibus-dp协议数据传输的目的。
为此本发明又提供了一种数据传输方法,在数据传输***中采用本发明提供的数据传输方法,从而实现单模块与主控模块之间进行大数据量的传输的目的,进而满足主控模块与单模块之间进行大数据量profibus-dp协议数据交互的需求。
本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本发明实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种数据传输方法,其特征在于,应用于数据传输***,所述数据传输***包括:主控模块、与所述主控模块相连的转换模块和与所述转换模块相连的至少一个单模块,每个单模块内部包括预设数量的profibus-dp从站,其中,所述profibus-dp从站采用软件编程方式实现;所述profibus-dp从站包括UART模块、接收模块、发送模块、控制模块、存储模块和总线交互接口模块;所述方法包括:
在所述至少一个单模块中选取一个单模块作为目标单模块;
在内存中查找与所述目标单模块进行数据传输的目标数据和所述目标数据的数据量,并获取所述目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址;
根据所述目标数据、所述目标数据的数据量和所述profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据;
将包含第一从站地址和与所述第一从站地址对应的第一从站数据的第一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块;
在接收所述目标单模块反馈的第一应答数据后,将包含下一从站地址和与所述下一从站地址对应的下一从站数据的下一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,依次类推直到遍历所述目标单模块内的每个profibus-dp从站。
2.如权利要求1所述的方法,其特征在于,所述每个单模块内部包括预设数量的profibus-dp从站中预设数量的确定过程包括:
获取所述主控模块与一单模块进行数据传输的最大数据量;
将所述最大数据量的字节数与244字节相除,得到商值和余数;
若所述余数为零则单模块中预设数量的数值至少为商值,若所述余数不为零则单模块中预设数量的数值至少为商值加一后的和值;
按上述步骤遍历所述数据传输***中的每个单模块。
3.如权利要求1所述的方法,其特征在于,还包括:
预先存储所述主控模块与所述每个单模块进行数据传输的目标数据和所述目标数据的数据量,所述每个单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址。
4.一种数据传输方法,其特征在于,应用于数据传输***,所述数据传输***包括:主控模块、与所述主控模块相连的转换模块和与所述转换模块相连的至少一个单模块,每个单模块内部包括预设数量的profibus-dp从站,其中,所述profibus-dp从站采用软件编程方式实现;所述profibus-dp从站包括UART模块、接收模块、发送模块、控制模块、存储模块和总线交互接口模块;所述方法包括:
每个profibus-dp从站的所述UART模块确定主控模块发送访问数据的波特率后,锁定所述波特率接收访问数据,并在校验正确后发送至本profibus-dp从站中的所述接收模块;
每个profibus-dp从站的所述接收模块依据profibus-dp协议对所述访问数据进行协议解析获取所述访问数据中的目标从站地址,若一profibus-dp从站的从站地址与所述目标从站地址一致,则确定该profibus-dp从站为目标profibus-dp从站,所述目标profibus-dp从站根据profibus-dp协议继续对所述访问数据进行协议解析得到目标从站数据;
所述目标profibus-dp从站中的所述控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内;
所述目标profibus-dp从站中的总线交互接口模块依据所述目标从站数据与外界人机接口进行数据交互获得应答数据,并将所述应答数据反馈至所述目标profibus-dp从站中的UART模块;
所述目标profibus-dp从站中的UART模块将所述应答数据发送至所述目标profibus-dp从站中的发送模块,由发送模块反馈所述应答数据至所述主控模块;
重新执行上述步骤,直到遍历所述目标单模块内的每个profibus-dp从站。
5.如权利要求4所述的方法,其特征在于,所述存储模块包括:
寄存器区和RAM区;
所述RAM区包括:第一RAM区、第二RAM区、第三RAM区。
6.如权利要求5所述的方法,其特征在于,所述目标profibus-dp从站中的所述控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内包括:
所述目标profibus-dp从站中的控制模块判断所述目标从站数据中数据域中每个字节数据的类型;
若为参数类型则将字节数据存储至所述目标profibus-dp从站中的寄存器区;
若为输入输出数据类型则存储至所述目标profibus-dp从站中的第一RAM区中;
按上述步骤将目标从站数据完全存储至所述目标profibus-dp从站中的存储模块后生成接收成功的标识信号,并将第一RAM区中的字节数据转存至第二RAM区。
7.如权利要求6所述的方法,其特征在于,当所述目标profibus-dp从站中的总线交互接口模块依据所述目标从站数据与外界人机接口进行数据交互获得应答数据时包括:
所述目标profibus-dp从站中的总线交互接口模块向所述目标profibus-dp从站中的存储模块发送读取RAM区的标识信号;
所述目标profibus-dp从站中的存储模块依据读取RAM区的标识信号,将第二RAM区的字节数据发送至第三RAM区供总线接口模块调用。
8.如权利要求4所述的方法,其特征在于,每个单模块内部预设数量的profibus-dp从站为AB网冗余模式。
9.如权利要求4所述的方法,其特征在于,每个单模块内部预设数量的profibus-dp从站共用UART模块、接收模块、发送模块、控制模块和总线交互接口模块。
10.一种数据传输***,其特征在于,包括:
主控模块,用于在至少一个单模块中选取一个单模块作为目标单模块,在内存中查找与所述目标单模块进行数据传输的目标数据和所述目标数据的数据量,并获取所述目标单模块内profibus-dp从站的预设数量和每个profibus-dp从站的从站地址,根据所述目标数据、所述目标数据的数据量和所述profibus-dp从站的预设数量,确定与所述目标单模块内每个profibus-dp从站进行数据传输的从站数据,将包含第一从站地址和与所述第一从站地址对应的第一从站数据的第一访问数据,通过转换模块采用profibus-dp协议发送至所述目标单模块,在接收所述目标单模块反馈的第一应答数据后,将包含下一从站地址和与所述下一从站地址对应的下一从站数据的下一访问数据,通过所述转换模块采用profibus-dp协议发送至所述目标单模块,依次类推直到遍历所述目标单模块内的每个profibus-dp从站;
与所述主控模块相连的转换模块;
至少一个单模块,每个单模块内部包括预设数量的profibus-dp从站,其中,所述profibus-dp从站采用软件编程方式实现;所述profibus-dp从站包括UART模块、接收模块、发送模块、控制模块、存储模块和总线交互接口模块,所述至少一个单模块,用于每个profibus-dp从站的所述UART模块确定主控模块发送所述访问数据的波特率后,锁定所述波特率接收访问数据,并在校验正确后发送至本profibus-dp从站中的所述接收模块,每个profibus-dp从站的所述接收模块依据profibus-dp协议对所述访问数据进行协议解析获取所述访问数据中的目标从站地址,若一profibus-dp从站的从站地址与所述目标从站地址一致,则该profibus-dp从站为目标profibus-dp从站,所述目标profibus-dp从站根据profibus-dp协议继续对所述访问数据进行协议解析得到目标从站数据,所述目标profibus-dp从站中的所述控制模块将所述目标从站数据存储至所述目标profibus-dp从站中的存储模块内,所述目标profibus-dp从站中的总线交互接口模块依据所述目标从站数据与外界人机接口进行数据交互获得应答数据,并将所述应答数据反馈至所述目标profibus-dp从站中的UART模块,所述目标profibus-dp从站中的UART模块将所述应答数据发送至所述目标profibus-dp从站中的发送模块,由发送模块反馈所述应答数据至所述主控模块,重新执行上述步骤,直到遍历所述目标单模块内的每个profibus-dp从站。
CN201310308529.5A 2013-07-18 2013-07-18 数据传输方法及*** Active CN103346943B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310308529.5A CN103346943B (zh) 2013-07-18 2013-07-18 数据传输方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310308529.5A CN103346943B (zh) 2013-07-18 2013-07-18 数据传输方法及***

Publications (2)

Publication Number Publication Date
CN103346943A CN103346943A (zh) 2013-10-09
CN103346943B true CN103346943B (zh) 2016-06-15

Family

ID=49281719

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310308529.5A Active CN103346943B (zh) 2013-07-18 2013-07-18 数据传输方法及***

Country Status (1)

Country Link
CN (1) CN103346943B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105259853A (zh) * 2015-11-09 2016-01-20 无锡华东电站自动化仪表厂 一种冗余现场总线i/o控制装置
CN110687854B (zh) * 2019-11-05 2021-07-30 杭州和利时自动化有限公司 一种pa总线控制器以及一种pa总线控制***
CN110941179B (zh) * 2019-12-09 2023-03-31 杭州和利时自动化有限公司 一种无扰下装方法、装置、设备及可读存储介质
CN111464419B (zh) * 2020-04-13 2021-08-27 中国人民解放军国防科技大学 一种基于总线网络通信的数据传输控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101221438A (zh) * 2008-01-11 2008-07-16 四川航空工业川西机器厂 大型等静压机电气控制工作站
CN101454731A (zh) * 2006-06-01 2009-06-10 索尤若驱动有限及两合公司 用于寻址的设备和方法以及转换器
CN201673398U (zh) * 2010-05-14 2010-12-15 盛云科技有限公司 一种现场总线集群烤房集中控制***
CN202362658U (zh) * 2011-11-28 2012-08-01 苏州普思自动化科技有限公司 基于光纤的高速现场总线控制***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101454731A (zh) * 2006-06-01 2009-06-10 索尤若驱动有限及两合公司 用于寻址的设备和方法以及转换器
CN101221438A (zh) * 2008-01-11 2008-07-16 四川航空工业川西机器厂 大型等静压机电气控制工作站
CN201673398U (zh) * 2010-05-14 2010-12-15 盛云科技有限公司 一种现场总线集群烤房集中控制***
CN202362658U (zh) * 2011-11-28 2012-08-01 苏州普思自动化科技有限公司 基于光纤的高速现场总线控制***

Also Published As

Publication number Publication date
CN103346943A (zh) 2013-10-09

Similar Documents

Publication Publication Date Title
CN109218352B (zh) 一种区块链网络中交易信息的共识确认方法及装置
CN103346943B (zh) 数据传输方法及***
CN101374093B (zh) 一种现场总线的通信接口及通信数据的实时传输方法
CN100524122C (zh) 专用于全数字环形总线数控***的总线控制器
CN201957057U (zh) 一种分布式远程i/o单元
CN100504688C (zh) 在环形总线数控***中实现总线控制器功能的专用芯片
CN105224362A (zh) 上位机对下位机进行程序升级的方法及***
CN106878131B (zh) 一种profibus耦合器及profibus的数据传输方法
CN103279371A (zh) 一种分布式控制***多从机程序在线同步升级的方法
CN101145052B (zh) 设备间实时信息交互***和设备间实时信息交互方法
US9709963B2 (en) Control device for controlling safety-critical processes in an automated plant and method for parameterizing the control device
CN101013315A (zh) 基于全数字环形总线式通用型数控***
CN104767665A (zh) 一种环形通信网络主站冗余的方法、装置及***
CN102809957A (zh) 用于标识基金会现场总线链接装置的***和方法
US8793417B2 (en) Integration of field devices in a distributed system
CN117076344A (zh) 数据共享方法、装置、***以及可读存储介质
JP5792866B2 (ja) プロフィバスdpのマスタ装置
US10268611B2 (en) Input/output (I/O) binding with automatic international electromechanical commission (IEC) address generation in remote terminal unit (RTU) configuration
CN101013314A (zh) 基于全数字环形总线式集成型数控***
JP5285461B2 (ja) 無線ネットワーク構造
CN200997073Y (zh) 基于全数字环形总线式通用型数控***
CN105511815B (zh) 一种基于段表的plc可运行文件存储解析方法及存储***
CN204463106U (zh) Um-bus总线通道故障检测控制器
US8554966B2 (en) Method for data exchange
CN1798113A (zh) 一种Profibus总线-以太网网桥

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant