Profibus-dp主站通信设备及其微处理器和asic芯片共享数据的方法

文档序号:6323605阅读:452来源:国知局
专利名称:Profibus-dp主站通信设备及其微处理器和asic芯片共享数据的方法
技术领域
本发明属于自动控制技术领域,具体涉及一种基于嵌入式微处理器和ASIC芯片的PR0FIBUS-DP主站通信设备。
背景技术
PR0FIBUS是一种国际化、开放式、不依赖于设备生产商的现场总线标准,广泛应用于制造业自动化、流程工业自动化和楼宇、交通、电力等领域,其中PR0FIBUS-DP是一种高速低成本通信标准,多用于设备级控制系统分散式I/O的通信。目前在国内PR0FIBUS-DP总线技术的应用与开发已经比较广泛,PR0FIBUS虽然协议公开,但技术封闭,核心技术被西门子等少数几家国外公司控制。因此导致国内基于DP 总线的智能设备发展比较缓慢,而且存在从站产品多,主站产品少;二次开发多,掌握核心技术少等问题。由于PR0FIBUS-DP网络中必须要有一个主站进行通信控制,国内厂家开发设计的DP智能设备一般是挂接在西门子等国外厂商的DP主站下方能工作运行。目前,开发PR0FIBUS-DP主站设备主要有以下几种可行的方案(1)软件PR0FIBUS-DP主站。该方案由软件来实现PR0FIBUS-DP物理层以上的所有协议,在微处理器中运行完整的协议栈。由于目前大多数CPU都带有UART 口,只需外加一个RS485收发器即可实现DP协议的物理层,在此基础上实现DP协议的数据链路层、用户接口层等。该方案虽然硬件简单、成本低廉,但软件设计的任务非常繁复,可靠性难以保证, 且达不到较高的通信速率,一般处理器片上UART的理论极限速率在1. 5Mbps左右,加上数据链路层及用户接口层的功能,实际的极限速率预计只有达到几百Kbps,与DP协议支持的 12Mbps速率相差甚远,降低了通信的性能,限制了设备的应用场合。和利时公司基于这种方案实现了 PR0FIBUS-DP主站,但受到通信速率的限制,应用一直难以推广。(2)基于嵌入式主站模块二次开发。该方案是开发PR0FIBUS-DP主站采用最多的一种。嵌入式主站模块内部已经集成ASIC芯片和固化程序。开发者购买嵌入式模块并在其基础上作二次开发。该方案开发难度和开发风险都大大减少,开发周期缩减,但是目前市场上已有的嵌入式主站模块基本上被西门子等国外公司垄断,采用这种方案需要购买它们的嵌入式模块,开发成本大且在技术上受制于人,并没有真正掌握PR0FIBUS-DP主站的核心技术。国内大多数厂商的DP主站产品都是基于这种方案,产品成本居高不下。(3) ASIC芯片外加扩展固件程序。该方案由ASIC芯片实现PR0FIBUS-DP协议数据链路层的介质访问控制功能,数据链路层的其他功能和用户接口层的功能由微处理器运行其扩展固件程序实现。该方案的硬件方案比第一种方案复杂,由于ASIC芯片的使用,该方案可以达到较高的通信速率(最高12Mbps),能够充分发挥PR0FIBUS-DP总线的速度优势, 性能稳定可靠,且剔除了使用国外技术的额外成本,产品成本相对低廉。目前,国外的芯片供货商限制了芯片配套固件程序的开放,不出售固件,因此采用这种方案要由开发人员自行设计硬件接口电路并编写固件程序及上层软件,需要开发者对芯片及DP协议都非常熟悉,开发难度极大。目前市场上尚无国内厂商基于此方案开发成功的性能稳定可靠的主站产品。

发明内容
本发明要解决的技术问题是提供一种可以实现PR0FIBUS-DP协议栈中1类主站功能的PR0FIBUS-DP主站通信设备。为达到上述目的,本发明采用的技术方案是一种PR0FIBUS-DP主站通信设备,包括嵌入式微处理器及其包括非易失存储器在内的外围电路、ASIC芯片、双口 RAM静态存储器,ASIC芯片通过RS485接口电路连接PR0FIBUS-DP总线,其特征在于所述嵌入式微处理器及其外围电路、双口 RAM连接在3. 3V总线,双口 RAM —端接口与微处理器及其外围电路连接,另一端接口供用户使用;ASIC芯片和静态存储器连接在5V总线;3. 3V总线与5V总线之间设置复杂可编程逻辑器件实现电平转换以及微处理器、ASIC芯片两者共享静态存储器数据。所述ASIC芯片与RS485接口电路之间设置有光耦隔离芯片。所述嵌入式微处理器外围电路还包括通过微处理器的通用异步串行接口转接 RS232 串 Π。所述嵌入式微处理器外围电路还包括通过微处理器的I/O连接LED。所述嵌入式微处理器外围电路还包括通过微处理器的I/O连接看门狗芯片。以上所述嵌入式微处理器是嵌入式ARM微处理器。以上所述ASIC芯片是ASPC2芯片。上述PR0FIBUS-DP主站通信设备,其微处理器和ASIC芯片共享静态存储器数据的方法包括以下步骤(1)微处理器初始化ASIC芯片内寄存器;(2)微处理器初始化静态存储器;(3)微处理器启动ASIC芯片;(4)微处理器将要发送的总线数据按格式写入静态存储器;(5) ASIC芯片得知有要发送的数据后向微处理器请求外部总线,使HOLD信号有效;(6)微处理器进入高优先级中断,使HOLDA信号有效,并让出外部总线;(7)ASIC芯片取出静态存储器中的数据并发送总线数据;(S)ASIC芯片完成发送后让出总线,使HOLD信号无效;(9)微处理器退出中断,使HOLDA信号无效;(IO)ASIC芯片接收到数据后,向微处理器请求外部总线,使HOLD信号有效;(11)微处理器进入高优先级中断,使HOLDA信号有效,并让出外部总线;(12)ASIC芯片完成接收后,将接收到的总线数据写入静态存储器;(13) ASIC芯片完成接收后让出总线,使HOLD信号无效;(14)微处理器退出中断,使HOLDA无效;(15)ASIC芯片以中断方式通知微处理器接收到数据;(16)判断是否进行下一次报文循环,若是则重复步骤(4) (15),若否则结束。
本发明使用ASIC芯片连接PR0FIBUS-DP总线可实现PR0FIBUS-DP主站高速率及可靠性能,同时使用嵌入式微处理器可实现PR0FIBUS-DP主站的数据链路层功能,并在此基础上实现完整的DP主站协议栈。其中用户接口层和DDLM层按照PR0FIBUS-DP标准提供的状态机描述开发,ASPC2芯片驱动程序根据西门子提供的ASPC2芯片手册结合 PR0FIBUS-DP标准进行开发,即可实现ASPC2原配套固件程序的功能。本发明的优点在于采用ASIC芯片保证PR0FIBUS-DP总线的通信速率,工作稳定可靠;采用32位微处理器,相比国外同类产品采用16位单片机运行速度高30%以上;并利用复杂可编程逻辑器使微处理器与ASIC芯片之间共享数据,降低了开发成本,解决了对国外厂商的依赖,具备高性能、低成本、工作稳定可靠的特点。


图1是本发明的硬件设计框图;图2是ASPC2与ARM处理器接口电路设计图;图3是微处理器和ASIC芯片共享静态存储器数据的工作流程框图。
具体实施例方式下面结合附图和具体实施例对本发明作进一步说明。本实施例采用的硬件芯片型号如下嵌入式微处理器=Atmel公司的ARM7嵌入式处理器AT91R40008 (CPU);ASIC芯片西门子公司的PR0FIBUS主站协议芯片ASPC2 ;双口RAM :IDT 公司的 IDT70V05 (8KX 8bit);非易失存储器(NorFlash) :SST 公司的 SST39VF1601 (1MX 16bit);复杂可编程逻辑器件(CPLD) =Xilinx公司的XC95144XL ;静态存储器(SRAM):Cypress 公司的 CY7C1041lU256KX16bit);光耦隔离芯片HCPL7721及 HCPL0601 ;RS485 接口芯片SN75176BD ;RS232 接口 芯片MAX3232 ;看门狗芯片X25043。图1是本发明的硬件设计框图。如图1所示,一种PR0FIBUS-DP主站通信设备,包括嵌入式微处理器及其包括非易失存储器在内的外围电路、ASIC芯片、双口 RAM和静态存储器,ASIC芯片通过RS485接口电路连接PR0FIBUS-DP总线,其特征在于所述嵌入式微处理器及其外围电路、双口 RAM连接在3. 3V总线,双口 RAM —端接口与微处理器及其外围电路连接,另一端接口供用户使用;ASIC芯片、静态存储器连接在5V总线;3. 3V总线与5V总线之间设置复杂可编程逻辑器件实现电平转换以及微处理器、ASIC芯片两者共享静态存储器数据。为了避免DP 口通讯电路和ASPC2等数字电路相互间发生干扰,ASIC芯片与RS485 接口电路之间设置有光耦隔离芯片。嵌入式微处理器外围电路还包括通过微处理器的UART转接RS232串口。嵌入式微处理器外围电路还包括通过微处理器的I/O连接LED。
嵌入式微处理器外围电路还包括通过微处理器的I/O连接看门狗芯片。AT91R40008ARM处理器作为硬件设计中的核心CPU,在其上编写并运行相应的固件程序控制ASPC2实现PR0FIBUS-DP主站协议栈中的FDL层功能。ASPC2上CMOS电平的串行接口通过电平转换芯片SN75176BD转换为符合PR0FIBUS-DP协议物理层规范的RS485电平。ARM处理器片上的通用异步串行接口(UART)通过芯片MAX3232转换为RS232电平,可与普通PC机上的串口进行通信,用于进行组态下载。另外,3. 3V总线上挂接一片IDT07V05 双口 RAM,作为用户操作接口,主要用于二次开发。4个LED灯直接与ARM的I/O 口相连,分别用于指示DP主站通信设备的工作状态、组态状态,网络状态及令牌状态等四种信息。硬件方案中的非易失存储器(Nor Flash)用于实现程序固化及组态文件存储等功能。采用一片静态存储器(SRAM)实现ARM处理器和ASPC2的数据交互,ARM处理器和 ASPC2通过CPLD实现总线仲裁分时占用SRAM数据、地址总线,实现对SRAM数据的共享访问。ASPC2与AT91R40008处理器之间通过SRAM交换数据,这三者之间连接在一条系统总线上。AT91R40008可以访问SRAM和ASPC2内部寄存器,ASPC2也可以访问SRAM。这部分电路设计主要考虑两个部分一部分是AT91R40008与ASPC2和存储器之间的电平转换,另一部分是AT91R40008,ASPC2和SRAM三者之间的连接方式。AT91R40008是3. 3V供电,ASPC2和SRAM都是5V供电,两者之间需要通过电平转换电路转接。ASPC2和AT91R40008之间通过共享存储器方式连接。这种方式下AT91R40008负责总线仲裁。ASPC2拥有一组总线请求信号HOLD和H0LDA。由于AT91R40008的扩展总线接口没有总线仲裁机制,使用这种连接方式必须借助辅助电路实现总线仲裁。图2是ASPC2与ARM处理器接口电路设计图。如图2所示,上述的电平转换和总线仲裁功能由一片复杂可编程逻辑器件(CPLD)即可实现。AT91R40008通过CPLD电路和SRAM与ASPC2以共享存储器连接方式连接。ASPC2的 HOLD信号作为AT91R40008的IRQ中断输入信号。ASPC2在需要访问SRAM时激活HOLD信号, AT91R40008随即进入中断服务子程序,关闭CPLD总线输出并给出HOLDA信号。AT91R40008 外部总线处于高阻状态,这相当于AT91R40008释放了系统总线。ASPC2完成SRAM的访问后解除HOLD信号的激活,AT91R40008退出中断服务子程序,开启所有CPLD的输出并停止给出HOLDA信号。这相当于AT91R40008又获得了系统总线的控制权。AT91R40008和ASPC2 共享SRAM数据的工作流程如图3所示。基于图2所述硬件设计并结合图3所述软件流程,可以设计出ASPC2驱动程序,即可实现ASPC2原配套固件程序的主要功能。本发明实现PR0FIBUS-DP协议栈中1类主站功能。物理层由RS485硬件接口电路实现。数据链路层分为FDL服务,FMA1/2服务和媒介访问控制三部分,媒介访问控制部分功能由ASPC2实现,即ASPC2是媒介访问控制器,ASPC2驱动程序负责实现对ASPC2的管理和控制,数据链路层中的FDL服务,FMA1/2服务则基于ASPC2驱动程序实现。用户层分为用户,用户接口(User Interface)和 DDLM(Direct Data Linker Map)三个部分,DDLM 及用户接口层由运行于ARM处理器上的软件实现。PR0FIBUS-DP主站通信设备的所有软件均运行于ARM处理器上。包括用户接口层, DDLM层,FDL层,FMA1/2层和ASPC2驱动层,其中用户层的用户部分由主站用户完成。用户接口层,DDLM层按照PR0FIBUS-DP标准提供的状态机描述开发,FDL层,FMA1/2层按照 PR0FIBUS-DP标准提供的服务描述开发,ASPC2驱动软件根据西门子提供的ASPC2芯片手册结合PR0FIBUS-DP标准进行开发,其所涉及的关键技术方法为本发明中叙述的微处理器和 ASIC芯片共享静态存储器数据的方法,即可实现ASPC2原配套固件程序的功能。
权利要求
1.一种PR0FIBUS-DP主站通信设备,包括嵌入式微处理器及其包括非易失存储器在内的外围电路、ASIC芯片、双口 RAM和静态存储器,ASIC芯片通过RS485接口电路连接 PR0FIBUS-DP总线,其特征在于所述嵌入式微处理器及其外围电路、双口 RAM连接在3. 3V 总线,双口 RAM —端接口与微处理器及其外围电路连接,另一端接口供用户使用;ASIC芯片和静态存储器连接在5V总线;3. 3V总线与5V总线之间设置复杂可编程逻辑器件实现电平转换以及微处理器、ASIC芯片两者共享静态存储器数据。
2.根据权利要求1所述的PR0FIBUS-DP主站通信设备,其特征在于所述ASIC芯片与 RS485接口电路之间设置有光耦隔离芯片。
3.根据权利要求1所述的PR0FIBUS-DP主站通信设备,其特征在于所述嵌入式微处理器外围电路还包括通过微处理器的通用异步串行接口转接RS232串口。
4.根据权利要求1所述的PROFIBUSDP主站通信设备,其特征在于所述嵌入式微处理器外围电路还包括通过微处理器的I/O连接LED。
5.根据权利要求1所述的PR0FIBUS-DP现场总线主站通信设备,其特征在于所述嵌入式微处理器外围电路还包括通过微处理器的I/O连接看门狗芯片。
6.根据权利要求1所述的PR0FIBUS-DP主站通信设备,其特征在于所述嵌入式微处理器是嵌入式ARM微处理器。
7.根据权利要求1所述的PR0FIBUS-DP主站通信设备,其特征在于所述ASIC芯片是 ASPC2芯片。
8.根据权利要求1所述的PR0FIBUS-DP主站通信设备,其微处理器和ASIC芯片共享静态存储器数据的方法包括以下步骤(1)微处理器初始化ASIC芯片内寄存器;(2)微处理器初始化静态存储器;(3)微处理器启动ASIC芯片;(4)微处理器将要发送的总线数据按格式写入静态存储器;(5)ASIC芯片得知有要发送的数据后向微处理器请求外部总线,使HOLD信号有效;(6)微处理器进入高优先级中断,使HOLDA信号有效,并让出外部总线;(7)ASIC芯片取出静态存储器中的数据并发送总线数据;(S)ASIC芯片完成发送后让出总线,使HOLD信号无效;(9)微处理器退出中断,使HOLDA信号无效;(10)ASIC芯片接收到数据后,向微处理器请求外部总线,使HOLD信号有效;(11)微处理器进入高优先级中断,使HOLDA信号有效,并让出外部总线;(12)ASIC芯片完成接收后,将接收到的总线数据写入静态存储器;(13)ASIC芯片完成接收后让出总线,使HOLD信号无效;(14)微处理器退出中断,使HOLDA无效;(15)ASIC芯片以中断方式通知微处理器接收到数据;(16)判断是否进行下一次报文循环,若是则重复步骤(4) (15),若否则结束。
全文摘要
本发明涉及自动控制领域,公开了一种PROFIBUS-DP 1类主站通信设备及其微处理器与ASIC芯片共享数据的方法,该主站通信设备包括嵌入式微处理器及其包括非易失存储器在内的外围电路、ASIC芯片ASPC2、双口RAM和静态存储器,ASIC芯片ASPC2通过RS485接口电路连接PROFIBUS-DP总线,复杂可编程逻辑器件连接微处理器、ASIC芯片和静态存储器,实现微处理器与ASIC芯片共享静态存储器数据。本发明采用ASIC芯片保证了通信速率,利用CPLD使微处理器与ASIC芯片共享数据,降低了开发成本,具备高性能、低成本、工作稳定可靠的特点。
文档编号G05B19/418GK102163054SQ20101061913
公开日2011年8月24日 申请日期2010年12月30日 优先权日2010年12月30日
发明者包伟华, 费鹏, 赵勇, 邬昌茂 申请人:上海自动化仪表股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1