基于VPC3的PROFIBUS-DP智能从站设计
ROFIBUS-DP作为-种国际标准现场总线,以其灵活性、可靠性等优点,在世界范围内得到了广泛的应用,是一种高性能的工业控制网络。但不是所有的控制设备都能接入到总线中,必须通过智能从站 接口装置实现,通过智能从站的拜发,可以把非总线的电子设备接入到总线网络中。目前,我国对于PROFIBUS-DP的应用和研究主要以国外大公司的成套设备为主,而自主研究开发通信接口的却比较少 。虽有公司针对PROIFBUSDP协议转换问题已开发出相应网关类产品,但价格昂贵,与实际应用有一定距离,因此深入研究该技术对该技术的国产化有非常现实的意义。
开发方案的选用
PROFIBUS-DP是开放的、 无知识产权倮护的标准。原则上,PROFIBUS DP协议在任何微处理器上都可以实现,在微处理器内部或外部安装异步串行通信接口(UART)即可完成。基于上述特点,目前在 拜发PROFIBUS-DP从站时有以下方案可供选择:(1)单片机+软件的解决方案;(2)单片机+PROFIBUS通信专用芯片的解决方案;(3)采用专用拜发工具。其中以方案2最为方便。
本文采用单片机加PROFIBUS-DP通信专用芯片的解决方案。其中微控制器的选取是实现智能从站开发的关键,因为DP智能从站的控制芯片需要有足够大的RAM来配置VPC3及实现数据交换,并且也需要较 高的运行速率。我们选取Cygnal公司推出的完全集成的混合信号系统级芯片C8051F020,其突出的优点是具有很高的运算速度,非常合适拜发PROFIBUS-DP从站。VPC3芯片是VIPA公司为优化的智能 PROFIBUSDP从站提供的专用芯片,集成了PROFIBUS-DP协议,可以替代西门子SPC3,同时具有工作电压低、RAM大等优点,具有很高的性价比。
硬件电路设计
硬件电路主要采用VIPA的PROFIBUS-DP协议芯片VPC3和CygnalC8051单片机。C805l器件是完全集成的混合信号系统级芯片,具有64个数字IJO引脚。兼容的CI-51内核,4352(4096+156)字节(B)的片内RAM,可寻址64k字节地址空间的外部数据存储器接口特别适合本设计使用。工作过程单片接口转换电路机自动识别不同的非总线设各,把数据交换到VPC3里,由VPC3负责协议的转换,把转换后的数据 传送到总线里。整个过程可是逆的。所有功能的实现由我们固化在单片机里的程序实现。同时实现自适应功能,即自动识别不同的非总线带通讯的控制设备。
VPC3是用于从站开发的智能通信芯片,它支持PROFIBUS-DP协议。VPC3内部集成4kB的双口RAM。内部锁存器/寄存器位于前2 1个地址单元,主要包括:方式寄存器l、0,中断控制寄存器,状态寄存器 以及输入、输出缓冲器和诊断缓冲器各自的状态寄存器。组织参数位于RAM中从16H开始的单元。整个缓冲器结构(属于DP-SAPS)就是基于这些参数来写的。此外,普通参数在这些单元设置数据(包括站 地址、地址允许改变、用户看门狗值和设备标识号等),状态显示存储在这些单元(通用控制命令等)。
PROFIBUS-DP智能转换接口的主要功能是利用VPC3协议芯片作为数据采集和发送单元实现与PROFIBUS-DP现场总线之间的通信,从而能使用户数据传送到主站并接收来自主站的数据。DP智能转换接口用C8051作为处理器单元管理通信事务,VPC3协议芯片则完成数据的转换和收发功能。扩展的数据存储器完成数据的存储和处理功能,C8051与VPC3之间通过双口RAM交换数据,VPC3的双口RAM在C8051地址 空间中统一分配地址,C8051将VPC3的双口RAM作为自己的外部RAM,通过P6和P7口与双口RAM连接,P6口作为数据线和低8位地址线,P7口作为高8位地址线。从站接口的总体设计方案,我们采用C8051作为 主控芯片,结合PROFIBUS-DP从站接口芯片VPC3以及ADM248*85接口芯片设计了整体的解决方案。
因为C8051和VPC3+均为3.31/供电,所以可以直接连接。对于C8051来说VPC3就是它的一个外置RAM。SPC3有内部地址解码电路,所以ABS~AB10接地。此时DB7~DB0是数据地址复用总线,可以产生低8位的数据和地址,高4位地址由AB0~AB3产生,AB4~AB7严生SPC3的片选信号,只有AB4~AB7同时为0时才选中SPC3。单片机P7口的P7.0 ~P70.7接VPC3的DB0~DB7端,既作为VPC3的数据线,也作为VPC3地址总线的低8位。P7口作为数据线和低8位地址线,P6口作为高8位地址线C8051。P6口的P6.0~P6.2接VPC3的AB0~AB2端, 作为VPC3地 址总线的高3位,同时要使VPC3的高5位AB7…3=00000。在软件程序的设计中,VPC3的数据存储器的地址区被强制在1000H~15FFH,这要求P7.7~7.4=0001, 要想AB4仍为0,必须将P6.0通过一个非门MM74HC接VPC3的AB4端。在实际电路中,VPC3的AB8~1