基于Linux 以太网的远程数据采集系统

  我们生活在一个五彩缤纷的模拟世界,而在数字化快速地发展的今天,如何将模拟的信号 转化到数字领域显得尤其重要,这就需要数据采集技术。随网络技术的发展,以太网越来 越能够很好的满足工业应用的需要。现场总线的通信功能完全可由以太网较好地完成。最近几年, 交换式以太网技术的出现大大地提高了以太网的确定性,这同时也使以太网技术在工业领域 的使用更加广泛。

  本文以太网的数据采集系统的设计目标是系统能够采集 0~2.5V 的电压信号量,然后通 过USB 接口将处理了的采样信号传输到嵌入式平台,并能通过以太网传输到用户。 一个良好的高速数据采集系统受很多方面的制约,例如采样的频率、AD 的精度、传输 的速度和平台通用性等等,本系统主要是依靠采用高性能AD 和改变采集卡CPU 对采样的控 制方式和采样信号的解决方法来解决。设计中使用了CYPRESS 公司的EZ-USB FX2 系列芯 片CY7C68013。这款芯片有GPIF(General ProgrammableInterface)模式,能够给大家提供高速的数 字逻辑信号给外围设备(这里给AD),该模式不受CPU 控制,是独立于CPU 存在的。这就 克服了CPU 对于高速采样的瓶颈约束,提高了对采样频率的控制能力。对于高性能AD, 文中采用了Analog devices 公司的AD7492,该芯片采样能够达到1MSPS,是12 位并行的 持续逼近型高速模数转换芯片,系统总体框图如图1。

  该数据采集卡完成的不单单是一个数据采集的功能,而在于为以后的设计提供详细的设 计基础和平台,这些功能都可以方便的移植到以后的仪表设计中。数据采集卡的总体框图如 图2 所示,输入信号是0~2.5V 的电压信号量,需要经过限压、滤波等处理,然后直接输入 到ADC 的IN 引脚(板上的IN 引脚端子)。AD 转换的启停等控制由CPU 完成,转换时序由 GPIF 控制器控制。CPU 的GPIF 方式以查询的形式检测ADC 的BUSY 引脚,向GPIF 控制 器报告信号采集的状态。为了达到改变采样频率的目的,利用定时器按照采样频率要求控制 CPU 的IO 端口,进而控制GPIF 流程的启停。一次采集流程结束后会自动保存采集上来的 数据到寄存器中,然后CPU 处理寄存器中的数据并送到USB 输出缓冲区便可输出至USB 端口。

  该设计中使用了 AD7492 作为主采样器件,AD7492 很容易与微处理器或DSP 接口。输 入信号从CONVST 的下降沿开始被采样,转换也从此点启动。AD 的输入为0-2.5V 单极性 电压。REFOUT 引脚接有最小100nF 的电容,REFOUT 引脚接有最小100nF 的电容,以稳 定内部参考电压值。CPU 负责控制AD 的启动、停止和读取采集数据等工作。设计中使用 了GPIF 模式,由AD 的连接图能够准确的看出,68013 的CTL 引脚、RDY 引脚和AD 直接连接, 对AD 的时序来控制。CONVST 脚接到PA7 ( 68013 的IOA^7 )用于控制采样的启停,从 而能控制采样频率,CTL, RDY 引脚的行为由GPIF 控制,其电路图如图3 所示。

  CY7C68013 芯片本身不带ROM,所以扩展一片64Kbit 的I2C 串行E2PROM 存储程序 代码。该芯片为低功耗应用而开发,可以充分的利用FX2 的I2C 接口而不用占用其它IO 接口。 E2PROM 的连接决定了采集卡作为USB 设备上电枚举的过程。如果上电没检验测试到 E2PROM 的存在,则会采用默认PID, VID。枚举;上电如果检测到连接有E2PROM 时,loader: 读E2PROM 的第一个字节来决定如何枚举,电路图如图4 所示。

  由于 56 引脚的68013 只有PA, PB, PD 三组IO,对于12 位的AD,使用了PB, PD 的第 二功能,配置为FD(Fifo Data)。这样就只剩下PA 口8 个引脚可用,不足以完成键盘、显示、 测试预留等功能。所以采用了PCF8574 I2C 转I0 口的方式来进行扩展。这样也可以留出足够 的IO 口用于扩展和测试,连接如图5。

  软件设计主要涉及到三个方面:一是对用CY7C68013 做CPU 的数据采集卡的固件设计 和应用程序设计。CYPRESS 公司为其旗下的产品做了很好的技术上的支持,例如对该款芯片提 供了完善的固件架构。用户的应用只要在此固件基础上开发即可。二是针对数据采集卡设计 基于ARM-LINUX 的USB 设备驱动程序。三是基于ARM-LINUX 平台,为提供给用户可视 化界面设计应用程序及远程PC 上通过以太网采集的应用程序的设计。

  编写一个 USB 设备的驱动程序,第一步是要把驱动程序的对象注册到USB 子系统中,然后再使用厂商标识和设备标识来判断是不是已经安装了硬件。注册是在USB 驱动程序模块初

  USB 核心怎么来识别一个驱动适合该设备呢,就要靠usb_device id 结构体完成。struct usbse_device id 结构体提供了一列不一样的该驱动程序支持的USB 设备。USB 核心使用该列表来判断对于一个设备该使用哪一个驱动程序,热插拔脚本使用它来确定当一个特定的 设备插入到系统时该自动装载哪一个驱动程序。本例中实现了这样一个结构:

  USB_DEVICE ( vendor,product)这个宏仅和指定的制造商和产品ID 值相匹配,该宏常用于需要一个特定驱动程序的uss 设备。

  该函数传递bulk 数据到驱动中的缓冲区*data,如果传递完成之后再复制到用户区供用户使用。

  该函数允许驱动程序发送和接收USB 控制消息。例如本例中实现的采样频率的变换是通过该命令在用户和数据采集卡硬件之间传递的。

  下面以读设备数据 sample read 为例介绍驱动对硬件的操作的流程,流程如图6 所示。

  内核空间和用户空间不一样,驱动程序属于内核空间,普通的应用程序属于用户空间, 两个空间的数据不能直接互访,必须要借助copy_fromes users()、copy_to_user()两个函数在 两个空间中传递数据。

  PC 机客户端使用Delphi 开发。主要完成以下功能:作为Client 与服务器连接、请求并接 收Serve:发来的采集到的数据并在本地客户端上以波形形式显示出来。本设计中使用了两个 定时器完成这些功能,定时器1 负责向Serve:发送“请求数据”的请求,并将返回的数据放 入缓存。定时器2 负责将定时器1 接收来的数据以波形的形式显示出来,其中,用到了ActiveX 控件VtChart,客户端收到采集正弦波形如图7 所示。

  本文创新点:本文研究、设计了基于以太网技术、USB 技术、嵌入式技术的数据采集 系统,将先进的技术融合到工厂自动化的最前端,提高了采样的精度、速度和可靠性。该数 据采集卡完成的不单单是一个数据采集的功能,而在于为以后的设计提供详细的设计基础和 平台,这些功能都可以方便的移植到以后的仪表设计中,可当作二次开发的平台。

  编辑:什么鱼 引用地址:基于Linux 以太网的远程数据采集系统上一篇:漏电保护器检测系统的设计下一篇:基于ARM9内核的软硬件平台设计

  在嵌入式系统的发展历史中,Linux操作系统的源码公开,结构清晰,功能强大,可移植性强等特点使其在嵌入式领域应用愈来愈普遍。USB接口的热插拔,即插即用,数据传输可靠,扩展方便,成本低等优点使其慢慢的变成为嵌入式系统的必备接口之一。随着嵌入式系统应用领域的继续扩展,人们对其性能的要求逐步的提升,特别是USB设备的读写速度受到慢慢的变多的关注。然而。目前多数嵌入式系统仅支持基础的USB低速或全速外设,不能够满足人们对高速数据传输的要求。为此,基于AT91RM9200平成了高速USB的硬件设计和Linux操作系统下主机端驱动程序的开发。 1 高速USB硬件接口设计 目前的嵌入式系统模块设计中,USB接口的外扩主要是采用微处理

  嵌入式系统的ISA总线.DMA概述 DMA是外设与主存之间的一种数据传输机制。一般来说,外设与主存之间有两种数据传输方法:(1)Pragrammed I/O(PIO)方法,也即由CPU通过内存读写指令或I/O指令来持续地读写外设的内存单元(8位、16位或32位),直到整个数据传输过程完成。 (2)DMA,即由DMA控制器(DMA Controller,简称DMAC)来完成整个数据传输过程。在此期间,CPU可以并发地执行其他任务,当DMA结束后,DMAC通过中断通知CPU数 据传输已结束,然后由CPU执行相应的ISR进行后处理。 DMA技术产生时正是ISA总线在PC中流行的时侯。因此,ISA卡的DMA数据传输是通过ISA总

  推动高能效创新的安森美半导体,凭借一直增长的符合IEEE802.3bt标准的产品和技术阵容引领行业。以太网供电(PoE)使用新的IEEE802.3bt标准,可用于通过局域网(LAN)联接提供高达90 W的高速互联。安森美半导体的方案不仅支持新标准的功率限制,还将功率扩展到100 W用于电信和数字标识等系统。 新的IEEE802.3bt PoE标准有潜力变革物联网(IoT)所涉及的每个垂直市场,使更精密的端点可在更大的网络运行。IEEE802.3bt标准通过新的“Autoclass”特性优化能量管理,令受电设备(PD)将其特定的功率需求传递给供电设备(PSE)。这也令每个PSE仅向每个PD分配适当的功率量,从而最大化可用能量和带

  /*============================================================*/ 与硬件平台相关 /*============================================================*/ 1):arch/arm/plat-s3c24xx/time.c static void __init s3c2410_timer_init (void) { s3c2410_timer_setup(); setup_irq(IRQ_TIMER4, &s3c2410_timer_irq);

  工业以太网要一直提高速度和改善延迟性能以适应工厂自动化的新需求。工程师通过采用具有全双工功能的100 Mb/s以太网来达到这些条件。该设计可解锁点对点设备的连接,从而创建以太网解决方案来帮助管理自动化工业应用中的大量数据。 作为工业以太网的组成部分,以太网供电(PoE)将电力和数据的传输集成在电缆中。电缆无需调节交流电即可提供直流电,以此来实现集中控制。 PoE具有效率高以及部署简便等特点,但电压较低,随着标准持续不断的发展,具有更高的配电能力,从而将PoE扩展到更广泛的设备。 关于工业以太网 如果回顾一下以太网的历史,速率的发展轨迹大概为:10 Mb/s,100 Mb/s至1 Gb/s。 以太网由于容量有限,因此初

  摘要:网络处理器已经可能的未来的多核处理器会将慢慢的变多的应用在从家庭,企业到核心网络设备中,LinuxOS正在替代传统的RTOS运行在这些处理器的控制平面,定义和处理好数据平面和控制平面的接口,丰富的开源和商业应用软件和电信级别的高可能性要求是目前要解决的重要问题。 关键字:网络处理器,嵌入式Linux,多核处理器 引言:     在最近的24个月中,由于供应商组织面临经济情况不景气,加上IntelIXP和IBMPowerNP,Raza,Cavium,Xilinx等公司的网络处理器(多核处理器)的出现,使得Linux在基于这些处理器设备的控制和管理层面上有了更多的用武之地。 控制层面包括逻辑和物理接口,它们

  一,前言 s3c2440 lcd 驱动分析,涉及到的内容有,LCD图像显示原理、s3c2440的LCD控制器的操作、LCD驱动使用平台总线-设备-驱动模型的实例、LCD相关参数的设置、fb字符设备驱动实例、framebuffer的注册和管理、以及一次LCD显示的完整过程分析。 二,LCD原理和硬件分析 2.1 LCD原理解析 SDRAM:在SDRAM中申请了一块连续的内存作为LCD显示数据的存储,叫做显存(framebuffer)。 LCD控制器:LCD控制器通过硬件电路和LCD屏连接。 LCD屏:作为一个外设通过硬件电路和MCU(引脚配置为LCD引脚)连接。 图像在LCD屏上显示,可以看成是LCD控制器先从显存中取出一帧

  Linux以其功能强大、源代码开放、支持多种硬件平台、模块化设计的具体方案以及丰富的开发工具支持等特点大范围的应用在嵌入式系统领域。作为嵌入式产品的操作系统平台,具备比较好的实时性、系统可靠性、任务处理随机性是系统追求的目标,目前商业嵌入式操作系统实时性能能够完全满足嵌入式领域的需求,但由于其价格昂贵,应用受到了限制 。而嵌入式Linux以其非常低廉的价格,可以大幅度地减少相关成本,慢慢的变成为嵌入式操作系统的首选。但由于其在实时应用领域的技术障碍,要应用在嵌入式领域,还必须对Linux内核作必要的改进。本文以S3C2410+Linux作为移动机器人操作平台,为了更好的提高机器人任务处理的实时性,针对影响Linux OS实时性能的若干方面做研究,并利用

  内核源代码

  解锁【W5500-EVB-Pico】,探秘以太网底层,得捷电子Follow me第4期来袭!

  参赛冲击【万元大奖】啦|2023 DigiKey“智造万物,快乐不停”创意大赛

  【下载】LAT1317 STM32CubeProgrammer和STM32CubeIDE协同调试的方法

  【下载】LAT1334 基于MCSDK5.4.8电机库修改两电阻采样方法

  【直播】轻松使用STM32MP13x如MCU般在Cortex A 核上裸跑应用程序

  【新品】STM32H5-Arm® Cortex®-M33 内核,主频高达250MHz,提升性能与信息安全性

  【新品】STM32MP13X-支持Linux、RTOS和Bare Metal应用,新一代通用工业级MPU

  【新品】Arm® Cortex®-M33处理器内核,运行频率160 MHz,基于Armv8-M架构并带有TrustZone®

  【Matter】康普和意法半导体强强联手,让物联网设备Matter证书管理既安全又简便

  【方案】STM32WLE5 x 利尔达LoRa模组助力亚残会开幕式惊艳秀

  【新品】意法半导体发布远距离无线微控制器,提高智能计量、智能建筑和工业监控的连接能效

  2023年12月20日,中国 - 意法半导体新软件帮助工程师把STM32微控制器应用代码移植到性能更强大的STM32MP1微处理器上,将嵌入式系统模块设计性 ...

  瑞萨推出面向图形显示应用和语音/视觉多模态AI应用的 全新RA8 MCU产品群

  瑞萨基于Arm® Cortex®-M85处理器的产品在优化图形显示功能的同时,为楼宇自动化、智能家居、消费及医疗应用带来超高性能和领先的安全性2 ...

  Microchip推出PIC18-Q24 系列单片机 为增强代码安全性设置新标准

  该系列单片机新增电压电平转换功能,有助于提高灵活性并降低系统成本从手机、汽车到智能恒温器和家用电器,慢慢的变多日常设备与云端相连。随 ...

  今天就分享一个读者问到的关于中断处理的问题。 很多人都知道STM32CubeMX这套工具的一个目的:减少开发者对STM32底层驱动的开发时间,把重 ...

  在万利STM32学习板的USB摇杆例程中,摇杆的按键处理并没有消抖处理,因此重新修改了摇杆的驱动,顺便还增加了两个按键以及摇杆中键下压的驱 ...

  STM32F103+ESP8266接入机智云 实现小型IOT智能家居项目

  stm32mp1 Cortex M4开发篇2:通过GPIO点亮LED灯详解

  AVR单片机ARM单片机嵌入式系统汽车电子消费电子数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程词云:

其他人还喜欢