基于ARM处理器的数据记录分析仪的设计
扫描二维码
随时随地手机看文章
摘要:为集中监控工业现场的大量自动化仪表,提高工业生产中的自动化水平,现以S3C2410A为主控芯片,以液晶屏为显示设备,以触摸屏为输入设备,以SD卡为存储设备,设计一种电力设备数据记录分析仪。记录仪支持CAN通信与485通信2种总线方式采集采样模块的数据,具有大屏幕显示输出,简单易行的触摸屏输入,利用以太网上传数据,大容量的存储空间,功能齐全,用途广泛。
随着科学技术的发展和我国工业自动化程度的提高,大量的自动化设备和仪表已经广泛应用于各大厂矿的工业现场。这些设备和仪表大多具有数据采集,传送,联网的能力,然而在现场应用中,往往需要对各个设备的相关数据进行实时记录与及时分析。本文所设计的系统就是为了满足这样的需求。本系统以S3C2410为核心,采用linux实时操作系统,结合嵌入式设备与网络技术的优点,有可连接设备数量多,速度快,功能多及可扩展性强等优点,可完成大量电力设备的集中监控,显着提高用户自动化系统的可靠性,节约大量的人力物力。
1 系统的总体结构
系统的组成部分和主要功能如下:
1)上位机部分,主要负责远程的信息配置与数据采集,记录,与处理。
2)数据记录分析仪部分:主要负责现场的信息配置和数据记录与处理。
3)单片机系统:主要负责环境信息的采集,监控,处理。
2 系统的硬件设计
记录仪的硬件系统由核心板与主板2部分构成。其中核心板主要负责CPU与RAM存储器,Flash存储器等的搭建。
主板包括整个系统的电源部分,以太网通信部分,CAN通信部分,485通信部分,串行通信部分,显示部分,数据存储部分,CPLD部分等。核心板与主板通过双排插针的结构连接。
硬件设计的的结构图如图1所示。
图1 记录仪结构图
2.1 核心板的设计
核心板主要由CPU S3C2410、内存SDRAM、闪存NANDFlash、晶振电路、启动配置电路等几部分构成。
CPU S3C2410A的内部仅仅集成了4k大小的SRAM,用作系统程序的引导程序空间,所以需要扩展一定容量的RAM,用来用作主程序的运行空间,数据及堆栈区。当系统启动时,CPU首先从复位地址0x0处读启动代码,完成系统初始化后,程序代码一般都调入SDRAM中运行,以提高系统的运行速度,同时,系统及用户堆栈,运行数据也都放在SDRAM中。SRAM中的引导程序完成以后,会将操作系统镜像加载到SDRAM中。本系统的SDRAM由2片HY57V561620T构建成1个32位的SDRAM存储结构。
HY57V561620T是1个268 435 456位的CMOS SDRAM芯片,能够很好地满足大容量高宽度的存储需求。
本系统中使用的Flash为三星公司的K9F1208.,容量为64MB,采用块页式存储管理,8个I/O引脚充当数据,地址,命令的复用端口。
2.2 主板的设计
如上所述,主板负责整个系统的电源部分,以太网通信部分,CAN通信部分,485通信部分,串行通信部分,显示部分,数据存储部分,CPLD部分等。
2.2.1 电源模块的设计
CPUS3C2410A芯片的各个模块采取独立供电,其中,内核在200MHz工作时,工作电压是1.8V,在266MHz工作时,工作电压是2V,存储器和I/O的工作电压是3.3V,所以本系统采用一个+5V的开关电源模块,然后再分别将+5V电压处理成3.3V电压和1.8V电压。其中3.3V电压是用低压差线性电压源通过+5V调整得到的。直流5V电压经外部接入,经过电源的滤波,输出平稳的,5V可用的电压,通过LM1117T的调整可以得到可用的3.3V电压。最后在输出端接入一个100μF的钽电容,来改善其瞬态响应和稳定性。
原理图如图2所示。
图2 3.3V电压的实现
系统中的1.8V,是用线性电压调节器MIC5207根据3.3V转换而成的,其原理图如图3所示。输出电压用于向CPU的内核供电。在上图中,MIC5207的3脚接到CPU的PWREN管脚,通过PWREN给MIC5207一个电平,可以控制MIC5207的开关,从而可以将CPU内核的电源关闭,使其进入掉电状态。MIC5207的4脚接入1个470pF的旁路电容,其作用在于进一步降低噪音。其输出接入1个470pF的滤波电容,进一步使输出更加平稳。
图3 1.8V电压的实现
2.2.2 通信模块的设计
本系统作为一个多功能的数据记录显示仪器,提供485通信与CAN通信与下位机采样模块连接。485通信与CAN通信是工业现场比较常用的2种模块。另外,系统还配置了以太网通信模块,便于将数据传送到上位机进行集中监控和管理。下面,就分别进行简单说明。
1)485通信模块的设计
485通信模块原理图如图4所示。
图4 485通信模块原理图
常规的485通信模块由电源隔离,光耦电气隔离,RS-485总线收发器与保护器构成。由于地回路的存在,通信回路与地之间存在电势差,在环境恶劣的场合尤为突出。电势差会在通信线之间形成共模电压。由于通信线之间对地阻抗不平衡,共模电压就会在通信线之间产生干扰电压,使通信的可靠性降低,严重情况下还会毁坏通信节点。电源隔离和光耦隔离的作用在于防止此情况发生,但是加入太多的隔离模块会使电路复杂化。在本系统中,采用集成的隔离485收发器模块RSM485CHT,它集成了电源隔离,光耦电气隔离,总线收发器与总线保护器。这样降低了系统的复杂程度,又能有效地提高电路的抗干扰能力,传输速度和可靠性。还有效地减小了PCB板的面积以及布线的复杂程度。
由于RSM485CHT芯片的TXD,RXD,CON的接口匹配电平是+5V电平,而CPU的管脚电平是3.3V,所以需要接入1个总线电平转化器74LV4245A, 用来给3V器件和5V器件提供接口。也可以选择与3.3V电平匹配的隔离模块RSM3485CHT。
2)CAN通信模块的设计
CAN总线由BOSCH公司开发,最先应用于汽车工业,为解决现代汽车中庞大的电子控制装置之间的通讯,减少不断增加的信号线。它是一种多主方式的串行通信总线,有高的位速率,高的抗电磁干扰性,成本低,传输效率高,传输效率远,有可靠的错误处理和检错机制。因为CAN总线有很好的实时性能,所以在汽车工业,航空工业,工业控制,安全防护能领域得到了广泛的应用。
CAN总线发明以来,出现了许许多多的CAN控制芯片,它们各有优势。本文所采用的控制芯片,是PHILIPS公司的SJA1000T。SJA1000是一种独立控制器,它增加了一种新的模式,可以支持CAN2.0B协议。它是82C200的替代品,相比于后者,它各方面的性能都有很大的提高,标识符由原来的11位扩展到29位,滤波方式由原来的单一方式改为单滤波和双滤波2种方式,并且在出错处理,超载能力,以及接受滤波等方面有了很大的改进。
与485通信模块相同,CAN通信模块的设计仍然采用隔离模块CTM1050。CTM1050作为物理总线与CAN控制器之间的接口,用于提高总线的差动发送能力与CAN总线的差动接受能力。CTM1050则采用了全灌封工艺,内部集成了CAN总线所必需的所有收发电路,完全电器隔离电路,隔离电压。很好地实现了系统的模块化设计,简化了电路的连接与维护。
CAN总线模块的原理图如图5所示。
图5 CAN通信模块原理图
如上图所示,CAN总线通信模块由CAN控制器SJA1000T与集成收发控制器CTM1050构成。CAN收发器连接到CAN总线,负责控制从CAN控制器到总线物理层或相反的逻辑电平信号,CAN收发器的上一层是CAN控制器,负责执行CAN规范的中完整的协议,通常用于报文缓冲和验收滤波。CAN控制器的上一层是CPU。
SJA1000支持2种CPU类型:80C51 和68**,这一功能是通过配置MODE引脚实现的,在本系统中,采用80C51的INTEL模式,另外,采用独立的外接晶振,来改善CAN节点的EMC性能。
3)以太网通信模块的设计
监控器中的以太网接口设计是为了通过组态软件与上位机通信,从而提高整个系统的自动化程度,增加可操作性。
以太网接口控制器主要包括MAC和PHY 2部分,其中MAC层控制作为逻辑控制比较容易承载处理器内部。没有集成MAC控制器的嵌入式处理器,更通用的方法是采用集成了MAC控制器与PHY的以太网控制器,本系统就是采取这种方法,以Host Bus接口的控制器有很多,本系统采用的是Cirrus Logic公司的CS8900[5]。
CS8900A是一个真正的单片,全双工的以太网控制器,它把所有需要的模拟电路和数字电路集成为一个完整的以太网电路,有以下几个模块组成:直接的ISA-bus接口、接口缓冲内存、串行的EEPROM接口、带有10ASE-T端口和AUI端口的完整的模拟滤波器。
CS8900可以设置为测试模式和休眠模式,低电平有效,正常模式下把nTEXT和nSLEEP位置高位。CS8900A-CQ3是一个3.3V电平的芯片,可以与S3C2410直接连通。在本系统中,在地址总线和CPU之间与数据总线与CPU之间都接入一个三态门,这样可以对总线进行有效的控制。另外,用CPLD模块代替了普通常用的与非门电路,节省了CPU的管脚,同时减小了电路板的体积。电路原理图如图6所示。
图6 以太网模块原理图
系统的显示模块采用800×600的液晶屏,电阻式触摸屏,结构比较简单,由于篇幅所限在此不再赘述。
3 结论
基于S3C2410的电力设备记录仪采用了功能强大的ARM920T内核的芯片作为CPU,支持485,CAN,以太网3种通信方式,采用液晶显示与触摸屏,大容量SD卡存储单元。
能将分散在各个工作现场的设备数据集中起来,能自己完成数据的集中显示,分析,对各单元设备的操作控制,还可以作为数据传输的中间站,将数据传输于上位机进行集中的检测与控制。在工业现场的网络中,能起到很关键的作用。另外,该系统通用性强,搭配不同的软件定义,可以应用于许多场合。