谈浙大的DCS(接口与协议
时间:2010-04-21 阅读:1392
写给我的兄弟姐妹们九
―谈浙大的DCS(接口与协议)
接口的区别主要是从电气特性和连接方式上区分的,以国产的DCS为列多是RS485和CAN的接口网络,但是使用的协议(通信的规则和约定)却有很多不同。
目前有主流的现场总线协议,如PROFIBUS、INTERBUS 、ETNERNET、DeviceNet、CANopen、 MODBUS、LonWorks、CC-Link等,以前人们直接用I/O口来控制外围电路,但是因为接口有限,只能满足单体或规模较小的控制领域,现场总线兴起后,我们可以在每个模块里加入微型控制器,然后让各个模块与主控制模块之间通过接口连接,通过协议来协调,从而方便可靠的实现组网及数据交换,我曾认真的分析过“浙大中志”的DCS,他的板卡上主控CPU是个双串口的51,添加SJA1000然后扩展了CAN接口,板卡之间进行以CAN接口为纽带的网络连接,通过串口和板卡上的16个小模块之间连接,这里的串口是不加MAX232或MAX485的UART口(UART口加上232或485芯片后就是232或485接口),通过光偶隔离,每两组模块之间有一个2路隔离的电源模块,而每个模块上的CPU是2051,通过2051扩展出4路DI或4路DO来,通过2051加积分电路扩展出AD,而DA是如何扩展成的我还没去研究,不过我是用PWM隔离做的DA(缺点是响应速度慢),目前尝试用595+电阻网络扩展DA;至于频率、转速采集模块,可以看成是“脉冲采集”,热电阻、热电偶的温度采集也可以认为是电路变送,至此一条清晰的下位机连接网络的骨骼比较清晰的展现出来。
因为是CAN作为主干通信网络,那么自然和计算机之间就可以通过CAN接口连接,在上位机计算机上加个CAN卡就可以轻松实现,CAN卡实际上可以看作是PCI转CAN的网关,至于他们之间的通信协议我还没去研究,我自己在做的时候用了自己设计了通信协议;这当然是满足小型网络,大型网络的时候可以多个计算机分别连接各自控制的网络然后通过TCP接口进行连接和数据交换;对于要求速度较高的场合,在下位机的板卡的内部用CAN来代替UART,速度大概能提高8倍左右,其他的不变;
至于上位机的组态及窗口显示,属于嵌入式软件范畴,简单的可以用C++、DELPHI等做出来,如果使用标准的接口,如OPC等那么就可以使用WINCC等做出来,这又属于数据处理的领域了。
说这些,其实是为了给想弄清楚系统硬件连接的朋友一点心得,也是为了给学习测控的朋友一种思路,怎么来设计单体控制终端,又如何由多个模块构造出小型、中型、乃至大型系统,当然我说的也只是自己的认识,肯定有其他的实现方法和思路,希望知道的朋友能贡献出来一起分享!