基于LPC2103的三相电信号数据采集系统的设计方案
24 Hz,在这样的采样频率下,8 通道1 s采集的数据量:1 024 × 8 × 2 B = 16 KB ,考虑到长时间采集下的较大数据量和数据存储时的高传输率,数据的存储使用SD卡完成。
SD卡与微控制器之间的通信有SD和SPI两种接口模式[4],由于LPC2103内部拥有串行外设SPI总线,且使用SPI总线时能够节省主控制器的I/O 资源,因此本设计采用SPI接口方式实现SD卡与主控制器的通信,接口电路如图5所示。
将LPC2103 配置为主机,SD 卡为从机,在SPI模式下完成数据传输。控制器的GPIO 端口P0.9连接SD 卡片选线SD_CS;主控制器时钟信号线SCK0 连接SD 卡SCK 引脚,保证主从设备间的时钟同步;控制器的主机输出从机输入线MOSI连接SD卡的数据输入;控制器的主机输入从机输出线MISO 连接SD 卡的数据输出信号线。
2 系统软件开发
用户通过按键选择数据采集系统运行模式。运行模式1,系统采集三相电信号,并将实时数据通过串口发送至上位机;运行模式2,系统采集三相电信号,并将实时数据保存至SD 卡,不与上位机进行通信。主程序流程图如图6所示。
程序的初始化主要包括:GPIO端口、定时器模块、A/D 模块、SPI接口单元、UART接口单元、SD卡等6大模块。对SD卡的操作按照其数据手册,通过主控制器发送给SD 卡相应的命令来完成。SPI模式下,SD卡的指令由6 B组成,主控制器向SD卡发送指令时,高位字节在前,低位字节在后。操作流程如图7所示。
本设计使用了文件系统为FAT16 类型的SD 卡。FAT16 文件系统的系统分区由引导扇区、FAT 表、FDT表和文件数据区四大部分组成,数据的读/写均以扇区为单位。由于SD 卡系统分区的前三部分是十分重要的,一般不能将数据写入这三部分所在的扇区内,否则会使得SD卡无法被电脑识别,因此在向SD卡写入数据前,首先需找到引导扇区的位置,并根据其中的内容计算FAT、FDT 以及数据簇的起始地址和大小。为节省LPC2103 的内存,设置SD 卡写数据为单块写模式。写SD同样要遵循SD卡写块时序。
3 测试结果
本设计的上位机数据测试软件在LabVIEW 环境下开发,针对串口发送的数据和保存在SD 卡中的实时数据进行不同的开发,其数据结果如图8所示。数据测试软件将串口发送的数据转换至[-5 V,5 V]之间进行显示。图中,通过标定换算,数据采集的结果是准确有效的。
因此,方案所设计的三相电信号 号数据采集系统能够为进行基于电机拖动的液压动力系统运行状态监测研究奠定良好的数据平台。
4 结论
本文提出了基于LPC2103 的三相电信号数据采集系统的设计方案。方案以LPC2103为核心设计的三相电信号数据采集系统,采用霍尔传感器准确、安全的获取电压电流信号,数据的存储采用SD卡存储方式和串口发送数据至上位机存储模式两种法相结合,增加了数据采集系统的应用灵活性,并给出了详细的软、硬件开发过程。通过测试软件的标定换算,数据采集的结果是准确并有效的,从而验证了方案中所设计的三相电信号数据采集系统能够为进行基于电机拖动的液压动力系统运行状态监测研究奠定良好的数据平台。
- 完整的5V单电源8通道多路复用数据采集系统(08-03)
- 电源设计小贴士 1:为您的电源选择正确的工作频率(12-25)
- 用于电压或电流调节的新调节器架构(07-19)
- 超低静态电流电源管理IC延长便携应用工作时间(04-14)
- 电源设计小贴士 2:驾驭噪声电源(01-01)
- 负载点降压稳压器及其稳定性检查方法(07-19)