The application discloses an implementation method and system of PROFIBUS-DP master station protocol, the implementation system includes controller CPU, FPGA soft core and FPGA hard core, wherein: FPGA soft core is connected between the controller CPU and the FPGA hard core to realize the user layer communication protocol of PROFIBUS-DP; FPGA hard core is provided with a shared data buffer connected with FPGA soft core, and through profi The bus is connected with each slave station to realize the physical layer and data link layer communication protocol of PROFIBUS \u2011 DP. By using FPGA for software architecture design, the application optimizes the allocation of protocol stack function modules, improves the protocol processing performance and greatly improves the system closed-loop control performance. It can easily achieve the highest transmission rate specified by PROFIBUS \u2011 DP communication protocol, and maintain the flexibility of application interface.
【技术实现步骤摘要】
一种Profibus-DP主站协议的实现方法及系统
本专利技术涉及但不限于工业自动化
,尤其涉及一种Profibus-DP主站协议的实现方法及系统。
技术介绍
程序总线网络(PROcessFIeldBUS,Profibus)是一种国际化、开放式、不依赖于设备生产商的现场总线标准,广泛适用于制造业自动化、流程工业自动化和楼宇、交通电力等其他领域自动化。Profibus标准包括三个部分,即Profibus-DP(DecentralizedPeriphery,分布式外设)、Profibus-PA(ProcessAutomation,过程自动化)、Profibus-FMS(FieldbusMessageSpecification,现场总线信息规范)。目前,Profibus-DP通信协议的实现方式主要包括以下几种:方案一:使用高级精简指令集机器(AdvancedRISCMachines,ARM)实现。这种解决方案成本低,但是波特率无法达到Profibus-DP通信协议的最高传输速率(12Mbps);方案二:使用通信协议芯片+中央处理器(CentralProcessingUnit,CPU)或复杂可编程逻辑器件(ComplexProgrammableLogicDevice,CPLD)。这种解决方案实现功能完整,性能良好,但开发包昂贵,成本高;方案三:使用现场可编程逻辑门阵列(FieldProgrammableGateArray,FPGA)+微控制单元(MicrocontrollerUnit,M ...
【技术保护点】
1.一种Profibus-DP主站协议的实现系统,其特征在于,包括控制器CPU、FPGA软核和FPGA硬核,其中:/n所述FPGA软核,连接在所述控制器CPU与所述FPGA硬核之间,用于实现Profibus-DP的用户层通信协议;/n所述FPGA硬核,设置有与所述FPGA软核相连接的共享数据缓冲区,并通过Profibus总线与各个从站相连接,用于实现Profibus-DP的物理层及数据链路层通信协议。/n
【技术特征摘要】
1.一种Profibus-DP主站协议的实现系统,其特征在于,包括控制器CPU、FPGA软核和FPGA硬核,其中:
所述FPGA软核,连接在所述控制器CPU与所述FPGA硬核之间,用于实现Profibus-DP的用户层通信协议;
所述FPGA硬核,设置有与所述FPGA软核相连接的共享数据缓冲区,并通过Profibus总线与各个从站相连接,用于实现Profibus-DP的物理层及数据链路层通信协议。
2.根据权利要求1所述的实现系统,其特征在于,所述共享数据缓冲区包括周期数据缓冲区、非周期数据缓冲区及从站信息列表缓冲区。
3.根据权利要求2所述的实现系统,其特征在于,所述FPGA软核具体用于:
接收所述控制器CPU发送的总线参数和从站信息并解析,将解析出的总线参数和从站信息分别存储至非周期数据缓冲区及从站信息列表缓冲区,启动协议栈运行;查询所述控制器CPU是否有非周期通信任务,如果有,则将所述非周期通信任务填充至非周期数据缓冲区;并查询非周期数据缓冲区是否有非周期应答消息,如果有非周期应答消息,则将非周期应答消息发送至所述控制器CPU。
4.根据权利要求3所述的实现系统,其特征在于,所述FPGA软核还用于:接收所述FPGA硬核的中断信号,执行中断处理,所述中断处理为控制所述FPGA硬核将各个从站的周期应答消息拷贝至周期数据缓冲区。
5.根据权利要求2所述的实现系统,其特征在于,所述FPGA硬核具体用于:获取总线参数和从站信息,启动与各个从站之间的周期数据通信;接收各个从站的周期应答消息并维护从站状态;查询非周期数据缓冲区是否有非周期通信任务,如果有非周期通信任务,则根据非周期通信任务发送非周期消息至所述各个从站;接收所述从站的非周期应答消息,并填充至非周期数据缓冲区。
6.根据权利要求5所述的实现系统,其特征在于,所述FPGA硬核还用于:完成与所述各个从站之间的周期数据通信后,产生中断信号并发送至所述FPGA软核。
7.根据权利要求2所述的实现系统,其特征在于,所述从站信息列表中的从站信息包括:从站站号、从站的输入输出数据在共享数据缓冲区的指针、输入输出数据长度、从站的通信状态机、从站是否处于被组态激活状态、有无诊断数据标志、诊断数据在共享数据缓冲区的指针和长度、参数配置数据在共享数据缓冲区中的指针及长度。
8.根据权利要求1所述的实现系统,其特征在于,所述FPGA软核包括应用命令解析执行器、配置解析器、中断处理器、非周期消息队列和非周期任务处理器,其中:
所述应用命令解析执行器,用于接收所述控制器CPU发送的数据集,所述数据集包括总线参数、从站信息和非周期通信任务,将非周期通信任务填充至非周期消息队列;
所述配置解析器,用于对接收到的总线参数及从站信息进行解析,并将解析到的内容填充至共享数据缓冲区和从站信息列表中;
所述中断处理器,用于控制所述控制器CPU与所述FPGA硬核之间的周期应答消息的拷贝;
非周期消息队列,用于执行非周期通信任务的缓存及读写操作;
非周期任务处理器,...
【专利技术属性】
技术研发人员:李丽娜,李蒙,
申请(专利权)人:北京和利时系统工程有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。