中企动力 > 商学院 > 数据采集与传输系统
  • ?

    “物联网”+第一部分—— 农业数据采集传输

    Wismar

    展开

    农业“物联网”+的技术支撑:

    全球定位系统GPSGPS是智能农业的基础。主要用于实时、快速地进行田间信息的炒菜机和田间操作的精确定位。地理信息系统GIS通过GIS 可快速检索各点的土壤、空气等农业状况。再据此采取措施,有针对性的运用精准农机进行操作。遥感系统RSRS农业遥感技术对各种物体如土地、河流水系、农作物等尽心观测,使人们快速获得相关农业信息,其准确性比热工预报大大提高

    设施大棚智能温室环境测控:

    本系统实施远程获取温室大棚内的环境出单数及视频图像,通过模型分析,远程或自动控制外围设备,保证温室大棚内的环境最适宜作物生长;同时,还可以通过手机、计算机等信息终端向农户推送实时监测信息、预警信息、农技知识等。实现温室大棚集约化、网络化远程管理。

  • ?

    工业有线与无线数据采集传输方式的对比分析,这篇文章值得一看!

    甄颜演

    展开

    作者:深圳信立科技时间:2017-09-04来源:itbsxl点击数:11

    在工业数据采集传输的方式上,可以分为有线和无线采集传输两种,采用有线通信方式的数据采集称为有线数据采集,而采用无线通信方式的数据采集称为无线数据采集。那么,了解有线和无线采集传输方式的各自优劣势,有助于在工业数据采集传输应用中选择更好的方式,减少建设成本,提供工作管理效率。

    一、有线数据采集传输方式

    1、安装布线十分不方便。需要架设电缆,或挖掘电缆沟,投入大量的人力和物力,大约75%的时间都消耗在安装和布线上;

    2、局限性太大。在遇到一些特殊的应用环境,比如遇到山地、湖泊、林区等特殊的地理环境或是移动物体等布线比较困难的应用环境的时候,将对有线网络的布线工程有着极强的制约力;

    3、扩展性比较差。在用户组建好一个通讯网络之后,常常因为系统的需要增加新的设备;如果采用有线的方式,需要重新的布线,施工比较麻烦;

    4、调试维护比较麻烦。如果是安装在高处或空间比较窄的设备,需要先拆卸下来才能进行连线调试。

    5、建设成本比较高。包括传感器通道和劳动力费用,造价相当高;

    6、稳定性比较好。信号传输的稳定性比较好,抗干扰能力较强。

    二、无线数据采集传输方式

    1、安装比较灵活方便。无需挖沟布线,即插即用,只要负责数据采集的部分和传感系统相连,通讯部分依靠无线实现;

    2、调试维护便捷。支持智能终端现场对工业级无线产品设备进行无线调试;工业级无线产品软硬件设备,包括XL90/91物联网智能网关、XL61无线温度传感器、XL61无线压力传感器、XL61无线气体传感器、XL51无线温湿度传感器、XL68智能环境监测装置RTU、XL60/65智能测控装置RTU、XL66智能转换器DTU、XL62环境监测传感器、XL.VIEW组态监控软件等。

    3、扩展性比较好。只需将新增设备与无线产品设备连接就可以实现系统的扩充;

    4、建设成本相对较低。无需布线或减少布线数量,节省了人力物力,节省了投资。

    5、支持多种无线通讯方式。如2.4G,433M,GPRS,NB-IOT等。根据现场环境和用户的实际要求选择具体的无线通讯方式;

    6、稳定性比较好。信号数据传输的稳定性、抗干扰能力不比有线系统差。

    通过对比分析,无线数据采集传输方式的稳定性和抗干扰能力与有线数据采集传输方式相比略逊一筹,但是无线数据采集传输方式有其使用方便、成本相对较低的突出优点,凭借这些优点,它在供排水管网监测系统、供暖管网监测系统、热力管网监测系统、智慧农业温室大棚环境监测系统、智慧养殖环境监测系统、危化品储罐仓库监测系统、仓储馆藏等环境监测系统、园区等环境监测系统、工厂生产用电能耗监测系统、工厂车间无线数据采集系统、以及智能抄表、智能照明、水池水塔水位液位监测系统、消防栓及井盖监测系统、发动机、变频器、泵站监测系统等领域得到广泛的应用。

    当前,无线数据采集传输方式是现代信息通信研究的重要组成部分,它与传感器网络、信息处理等作为现代数据监测控制的基本技术。深圳信立科技专业提供信号无线传输产品,及无线数据采集系统整体解决方案。随着各种技术的综合发展和应用,无线数据采集传输方式必将有更大的发展空间。

  • ?

    在科技论下远程数据采集与监测系统研究

    玩具

    展开

    为了解决远程数据传输问题,针对地理条件比较复杂的区域如山体滑坡监测区域,研究了通过无线方式传输信息的方法,从而实现远程数据采集与监测功能。以ARM处理器为核心,采用多种模块构建山体滑坡远程数据采集与监测系统。介绍了数据采集功能实现方法和驱动程序的设计思想,设计了加速度传感器与ARM处理器的连接电路以及传感器采集程序。试验验证表明,系统接收多点数据信息正确,能够及时反映数据采集实时值,并提供报警信息。关键词:ARM 远程数据采集监测线程GPRS驱动程序。

    山体滑坡是严重的地质灾害之一,它会毁坏工程设施,造成巨大的经济损失。为了防患于未然,需要及时、快速地监测山体的滑动情况,实现滑坡危害的预报。对山体滑坡进行监测的目的在于对滑坡的稳定性做出判断,并对可能发生的滑动做出预测。通过相对位置的变化判断各个监测点的滑动情况,滑坡监测对减灾防灾意义重大。在滑坡变形监测中,GPRs等先进技术将发挥积极作用,实现对监测区域的远程实时监测,并通过对采集数据的分析和处理,实现对山体滑坡的预警。

    1 远程数据采集与监测系统构成

    远程数据采集与监测系统由j轴加速度传感器、嵌入式处理器ARM、电源模块和GPRs模块等构成。系统监测采集加速度传感器的数据,与键盘设定的上限值进行比较,GPRs模块以短信方式发送监测信息和报警信息。当采集的加速度值超过一定上限时,蜂鸣器发声起到报警功能。远程数据采集与监测系统构成如图1所示。

    2数据采集与驱动程序设计

    2.1 ADC转换功能实现

    ARM处理器S3C2410内置1个8通道的10位模数转换器ADC。采用ADC控制器寄存器系统可以同时外接8位的模拟墩输入.最大转换速率可达500kS/s。S3C2410的引脚AlN[7]和AIN[5]用于连接触摸屏的模拟信号输入。ARM处理器S3C2410有ADc控制寄存器和ADc触摸屏控制器,其通过程序设计配置寄存器控制ADc的T作模式,并编写应用程序读取ADc转换值。ADC触摸屏控制寄存器ADCTSC配置成普通工作模式。对于S3C2410处理器,在使用触摸屏时,引脚AIN[7]和AIN[5]用于测量触摸屏x、Y的电平,引脚AIN[6]、AIN[4:0]用于一般的ADC输入。当有触摸屏驱动加载时,ADC转换器工作在触摸屏模式。因此,ADC转换和触摸屏驱动不能同时启用一“1。使用ADC的步骤如下。

    ①设置舡)C控制寄存器ADCCON,选择输入通道,设置ADc转换器的时钟,A/D时钟=PcUy(PRsCVL+1),其中,Ht5汇VL为ADc转换器预分频器数值。

    ②设置ADC触摸屏寄存器ADCTSC,对于普通ADC,设置ADCTSC位[2]为0。

    ③设置ADC控制寄存器ADCCON,启动A/D转换。如果设置ADCCON中的READ—START位为1,则读取ADC转换数据寄存器ADCDATA0时即启动下一次转换,也可以设置ADC控制寄存器ADCCON中的ENABLE—START位启动A/D转换。

    ④转换结束时,读取ADc转换数据寄存器ADCDATA0值。

    2.2驱动程序设计

    一个硬件的驱动程序,通常指一个驱动模块。对于一个硬件的驱动。Linux下可以有两种方式:一种是直接加载到内核代码中,启动内核时就会驱动此硬件设备;另一种是以模块方式编译生成一个独立文件,当应用程序需要时再加载到内核空间运行。加载驱动是正常运行设备的必要条件,缺少驱动程序,将无法进行正常操作。驱动程序包含有各种定义,如s3c2410管脚的定义、对应的地址映射等。GPRs驱动、A/D驱动和键盘驱动这3个驱动分别关系到通信、采集和参数设定3大方面,这3个驱动也可以理解为操作系统中的设备。设备驱动的角色就是将这些调用映射到作用于实际硬件和设备相关的操作上。驱动可以与内核的其他部分分开建立,需要的时候在运行时“插入”。

    3传感器模块设计

    在滑坡发生过程中,对象的加速度、速度和位移等矢量均发生变化。在山体监测区域安放大量的传感器,以测量山体位移和加速度值。本文采用加速度传感器MMA7260QT测量各个轴的加速度值,以便及时检测灾害。如果物体沿着某一个方向运动,或者受到重力作用,传感器输出值就会根据其运动方向和设定的传感器灵敏度而改变。系统采用ARM处理器的A/D转换器读取此输出信号。三轴加速度传感器测量时,量程可有以下4种形式:①在1.5g量程下,信号灵敏度为800mV/g;②在2g量程下,信号灵敏度为600mv/g;⑧在4g量程下,信号灵敏度为300mV/g;

    ④在6g量程下,信号灵敏度为200mV/g。加速度传感器与ARM处理器的硬件连接图如图2所示。

    图2加速度传感器与ARM处理器的连接

    g-select,引脚和gselec:引脚用来选择传感器的灵敏度,有4个灵敏度可供选择。g—select。引脚和g—selec:引脚在芯片的内部被下拉为低电平。图2中g—selectl引脚和g—selec:引脚悬空,芯片的工作灵敏度为800mV/g。当传感器工作在休眠模式时,SleepMode引脚可不接,将其悬空即可。x。。、Y。。和z。。分别为x轴、y轴、z轴方向的输出电压。当采集的加速度值超过一定上限时,蜂鸣器发声,同时通过手机发出报警信息,实现报警功能。加速度传感器采集程序如下所示。

    ①打开ADC设备文件

    fd=open(PATH,0一RDWR);

    if(fd<O)

    {pnd(”Failed

    to open

    ad-ddver/n”);

    exit(1);}

    ②设置A/D分频比和通道号

    adc-infor.pmscale=49;

    adc—infbr.channel=i;

    write(fd,(void)&adc-infor。sizeof(adc-iIr))==

    sizeof(stuct ADC—DEV);

    在此定义了一个结构体。该结构体包含的元素分别为A/D转换的通道号和分频比。其通过write函数写入设备文件。结构体如下所示。

    static stuct ADc—DEV

    {int channel;

    int prescale;

    }adc-infor;

    ③读取转换数据:read(fd,&data,size of (data))==

    Size of(data).read函数的参数分别为设备文件的标志符、数据被读入的地址和读取数据的长度。

    ④数据换算:d=((float)data*3.3)/1024.0. read读取的是lO位二进制数据,必须将其转换为对应的电压值。电压最大值为3.3V

    4 线程设计与GPl塔模块功能

    本文采用SIMCOM公司SIM300 GPRS模块,通过发送AT指令完成信息的传送。初始化GPRS模块后,需要设定发送短信的模式。GPRS模块功能函数需要两个入口参数,一个是发送短信的号码,另一个是短信的内容,实现将指定内容发送到指定号码上的功能。

    4.1通道监测线程设计

    通道监测线程分别将3个通道的数值动态更新于result全局数组中。开辟的3个监视线程可以分别动态监测,如通道0对result[0]中的数据进行动态监测。同时,利用WHILE循环实现循环监测,它的退出条件也就是系统的退出条件,保证了监测线程的全局性。同时,在这个循环中对通道的3种状态进行逐一分析。通道的3种状态分别为通道测量值超过预定的上限值、通道量值超过预定的下限值和通道测量值为正常值。如果超出报警限值,应发送提示信息。

    4.2采集数据发送线程设计

    开启一个线程,循环判断系统结束标志位和暂停标志位是否全部为l,如果是,则退出线程;如果不是,则按系统给定的时间发送当前3个通道的数据。采集数据发送线程流程图如图3所示。

    4.3键盘监测线程设计

    在监测系统现场,往往根据其不同条件,利用键盘进行参数修改。设计了更改A/D上、下限值和监测手机电话号码的功能。以“*”号键作为进入系统的中断键.为键盘开启一个实时监测甬数。当按下“*”号键时,A/D采集暂停,并进行更改系统相关参数的设定;待设定完毕后,恢复A/D的采集。

    5主函数的设计与分析

    ARM拥有更快的处理速度和更大的内存空间支持操作系统的移植,同时也引入了文件系统的概念,以支持进程、线程的调用。主函数流程图如图4所示。

    图4主函数流程图

    在主函数中,需要初始化GPRS驱动、A/D驱动和键盘驱动,将数据采集功能放入主函数中,利用循环实现实时监测。循环的退出条件也就是系统的退出条件。在“nux操作系统中,程序结束前必须回收所建立的线程,否则线程会一直占用系统资源,系统最终会因为各种死锁或内存溢出而崩溃。循环监测中的while循环实现参数修改时暂停数据采集的功能,以避免不必要的线程阻塞或死锁。

    6结束语

    通过无线方式传输信息,能够解决布设有线监测系统的缺陷,适用于偏远山区滑坡灾害监测。在山体的不同位置放置相应的传感器,利用无线传输技术,将采集到的多点数据和报警信息通过手机方式发送给控制中心,实现对环境和参数的远程监测。本文将嵌入式系统应用于滑坡灾害监测系统,基于ARM处理器、加速度传感器和CPRs模块设计了山体滑坡远程监测系统,实现了远程数据采集、监测与无线传输,对探索预防山体滑坡将起到积极作用。

  • ?

    数据采集接口网关

    孔鞯

    展开

    FC-Gateway数据采集接口网关是北京华恒信远专门为工业标准通讯接口OPC Server软件、数据采集接口软件配套定制开发的一款嵌入式硬件产品,内置两个标准RS-232串口(其中一个串口可以通过跳线设置成RS-485)和两个RJ45以太网口,型号为Gateway-227B, 此外,还有Gateway-240B、Gateway-230B等嵌入式工控机型号。 该设备操作系统有Windows、Linux两种,其功能与特点如下: 1、OPC服务器:可连接DCS、PLC等控制系统,读写实时数据,包装成OPC Server工业标准通讯接口,提供给实时数据库系统、先进控制系统和MES系统集成商; 2、安全隔离:当数据采集接口网关为实时数据库系统提供实时数据时,它一般位于自动化控制系统和实时数据库服务器之间,由于数据采集接口网关采用了内置单向数据传输技术,可达到自动化控制系统和实时数据库服务器之间的安全隔离目的。 3、该产品操作系统、数据采集程序等均固化,不可修改。一旦被修改,重新启动后,自动恢复到初始状态,可防止病毒以及黑客软件攻击。 4、结构先进、安装方便,该产品高度1U,可以直接安装在标准机柜中,独特的散热技术,1U机箱有多个磁悬浮风扇散热。 5、数据采集冗余设计:支持双机双网冗余通讯。 6、可作为InfoPlus.21、PI、PHD等实时数据库系统的数据采集终端,也可写数据至关系数据库,为MIS、ERP等管理信息系统提供生产实时数据。

  • ?

    供水管网 GPRS 数据采集与监控系统解决方案

    郜鹏煊

    展开

    一、GPRS 网络

    GPRS 是目前解决移动通信信息服务的一种较完美的业务,它是以数据流量计费、或大 数据的包月包年计费。覆盖范围广泛、数据传输速度更快。GPRS 的推出,为行业和企业用 户开展无线数据传输提供了基础设施平台,为推动移动办公的应用和发展创造了有利条件。 与有线网络相比,GPRS 网络具有租用费用低、移动办公,不受地域制约等优点。GPRS 的出 现为企业和行业用户开展无线办公提供了一种新的选择。

    GPRS 通信方式更适合于各类数据采集业务,目前城市供水管网系统与各采用有线交互传输或电台方式,甚至有些偏远井道要有线网络接入成了不可能。月租费太高,用电话线传送数据按时间计费,带来诸多不便,费用也不便宜。GPRS的网络优点,包括5个方面:

    1、覆盖范围

    构建城市供水管网系统要求数据通信覆盖范围广,扩容无限制,接入地点无限制,能满足城区、乡镇和跨地区的接入需求。由于管网检测点数量众多,分布在地 区的各个角落,而且地理位置分散。另外,还必须考虑今后系统扩充的可能,必须具有良 好的可扩展性。由于目前 GPRS 已覆盖省内绝大部分地区,能够满足城市供水管网系统对覆 盖范围的要求。

    2、数据传输速率高

    目前 GPRS 实际数据传输速率在 40Kbps 左右,完全能满足供水管 网系统数据传输速率的需求。

    3、系统的传输容量大

    城市供水管网系统要和每一个监测点实现实时连接。由于监测 点数量众多,系统要求能满足突发性数据传输的需要,而 GPRS 技术能很好地满足传输突发 性数据的需要。

    4、通信费用控制灵活

    采用传统的有线方式建立供水管网系统,必须租用专线或电话 线进行连接。由于管网监测点必须与中心随时保持连线状态,而每次数据发送的数据量很 小,线路资源利用率很低,平均每一个监测点每月的线路费用为 800~1200 元。而如果采 用 GPRS 通信方式,由于 GPRS 采用按数据流量计费的方式,资源利用率高,月通信费用将 在 200 元之内,如果数据量很大的情况下也可按包月或包年计费。

    5、良好的实时响应与处理能力

    与短消息服务比较,由于 GPRS 具有实时在线特性,系统无时延,可很好的满足系统对数据采集和传输实时性的要求。

    二、供水管网管理的概述

    随着我国经济的发展、城市规模的扩大和现代化程度的不断提高,城市的供水管网系统也越来越庞大,且许多供水管线的填埋情况复杂、资料不清,有些管线甚至仅凭当时施工工人的记忆去寻找,造成诸多设计上的失误和施工中的事故。

    采用人工方法,借助图纸、各类卡片来管理城市供水管网系统,已越来越难以满足 实际需要。所以实现对供水管网管理系统的需求是相当迫切的。业内众多有识之士已达成 共识:使用计算机,借助无线网络系统技术来进行供水管网的管理、管网设计及数据采集,已是势在必行。

    基于 GPRS 网络平台的无线数据传输技术自 2002 年在中国正式商用以来,以“实时在线、 按流量计费、覆盖率广”等优势在各行业取得广泛应用。随着信息化的发展,无线采集传输已经完全取代了以往的各种有线接入。而以往的有线连接必须依赖于网络布线、固定电话线路,对于发展移动性的服务、增设新的服务网点、增设临时性的窗口常会受到有线连接的困扰。 同时布线还需要昂贵的费用和铺设时间,对已有的网络也会有影响,所以有线连接已经严重限制了目前各种信息化应用的主要原因。

    三、供水管网数据采集与监控系统的概述

    深圳信立科技供水管网数据采集与监控系统,基于XL.SN无线传感器网络技术、传感器技术和计算机技术,通过无线传感器采集节点管网温度、压力数据,并以433M通讯方式上传至物联网智能网关,物联网智能网关将接收到数据以GPRS通讯方式实时传输到监控服务器,工作人员在电脑、手机端通过XL.VIEW组态软件解析监控服务器的管网压力、温度数据,实现对城市不同地方多点管网温度、压力的监控。

    管网数据采集与监控系统,包括三个工作层:

    1、数据采集层,负责采集节点数据。

    2、数据传输层,负责接收、传输节点数据。

    3、监控应用层,负责对节点数据的解析、查看、统计、分析、打印。

    四、供水管网数据采集与监控系统的工程界面

    1、登录界面

    2、数据报表

    3、历史曲线

    4、报警信息

    五、供水管网数据采集与监控系统的优点

    1、供水管网数据采集与监控系统建设过程中,无需布线,或减少布线数量,减少系统建设成本。

    2、系统所需的设备安装调试方便,设备支持手机调试,提高运营维护的效率。

    3、系统底层终端各种数据采集后统一传输到监控服务器,便于监控管理,提高供水管网管理效率。

    六、供水管网数据采集与监控系统的软硬件设备

    1、无线压力传感器

    集压力采集、无线传输等功能,自动保存或恢复补传数据,支持手机现场调试的XL61无线压力传感器,也叫智能压力传感器,无线压力采集器等,属于无线传感器网络产品。

    XL61无线压力传感器,具有防爆、低功耗、高精度、稳定性强、使用寿命长等特点,可选433MHZ,2.4GHZ,WI-FI等无线传输方式。XL61无线压力传感器,也叫智能压力传感器,无线压力采集器。它的应用范围广,无需布线,减少运维成本,安装便捷,即插即用,适用于供水管网、供气管网、供油管网、环境、制造业、化工、能源、仓储、办工场所等环境的温度实时采集、无线传输、现场或远程监测和预警。

    2、无线温度传感器

    集温度采集、无线传输等功能,自动保存或恢复补传数据,支持手机现场调试的XL61无线温度传感器(插入式),也叫智能温度传感器,无线湿度采集器,属于无线传感器网络产品。

    XL61无线温度传感器(插入式),具有防爆、低功耗、高精度、稳定性强、使用寿命长等特点,可选433MHZ,2.4GHZ,WI-FI等无线传输方式。

    XL61无线温度传感器(插入式)应用范围广,无需布线,减少运维成本,安装便捷,即插即用,适用于各种管网管道管沟、气象、农业大棚、养殖场、仓储馆藏、冷藏冰柜、实验室、机房、生产车间等环境的温度实时采集、无线传输、现场或远程监测和预警。

    3、物联网智能网关

    智能网关,也称为无线数据通讯网关、数据采集网关、物联网智能网关,具有高度集成化的特点,集数据接收、协议转换、无线通讯传输等功能,支持多种通讯协议和通讯方式,如可采用GPRS,433mhz,2.4G及以太网等多种通讯方式。

    XL90智能网关,集通讯管理、数据接收、协议转换、数据处理转发等功能,支持手机现场调试,可同时接收多个无线传感器数据,支持2路以太网口(Ethernet)、RS485和1路RS232串口、无线传输等上行方式, 可选GPRS,433MHZ,2.4GHZ等无线传输方式。适用于构建大容量的智能传感网络,广泛应用于机房、机站动力、环境监控系统,低压配电监控系统,电能数据监控系统,工厂机器设备、生产线运行状态监控系统,生产信息采集系统等无线监测与预警。

    4、XL.VIEW组态监控软件

    XL.view组态监控软件是基于SQLServer 数据库的系统控制中心,负责系统历史数据存贮,更高层级的数据计算、统计、分析,数据展示、发布、推送等,支持XLPS、MODBUS TCP、MODBUS RTU、OPC等通信协议,可按用户要求提供定制协议,支持Mssql、Mysql、Access等数据库接口,支持Active/Com/Dll,并通过Java Script调用,支持Windows、Android、iOS平台访问,适用于Window XP,Windows 7,Windows Server 2003/2008 操作系统。

    该组态软件,读取XL90、XL91智能网关,以及XL65、XL68通过GPRS上传的数据,生成历史数据库。对数据进行统计、分析,生成用户所需的各种报表、曲线、图形,技术指标;实时显示、发布各种环境参数数据等;自动推送通知、报警信息,提醒相关人员进行支援; PC、移动终端,依据访问权限,查询、浏览相关数据; 通过PC或移动智能终端,对现场设备进行控制; 支持百度地图和视频图像显示。

  • ?

    六大主流大数据采集平台架构分析

    乐荷

    展开

    随着大数据越来越被重视,数据采集的挑战变的尤为突出。今天为大家介绍几款数据采集平台:

    Apache Flume Fluentd Logstash Chukwa Scribe Splunk Forwarder

    大数据平台与数据采集

    任何完整的大数据平台,一般包括以下的几个过程:

    数据采集–>数据存储–>数据处理–>数据展现(可视化,报表和监控)

    其中,数据采集是所有数据系统必不可少的,随着大数据越来越被重视,数据采集的挑战也变的尤为突出。这其中包括:

    我们今天就来看看当前可用的六款数据采集的产品,重点关注它们是如何做到高可靠,高性能和高扩展。

    1、Apache Flume

    Flume 是Apache旗下的一款开源、高可靠、高扩展、容易管理、支持客户扩展的数据采集系统。 Flume使用JRuby来构建,所以依赖Java运行环境。

    Flume最初是由Cloudera的工程师设计用于合并日志数据的系统,后来逐渐发展用于处理流数据事件。

    Flume设计成一个分布式的管道架构,可以看作在数据源和目的地之间有一个Agent的网络,支持数据路由。

    每一个agent都由Source,Channel和Sink组成。

    Source

    Source负责接收输入数据,并将数据写入管道。Flume的Source支持HTTP,JMS,RPC,NetCat,Exec,Spooling Directory。其中Spooling支持监视一个目录或者文件,解析其中新生成的事件。

    Channel

    Channel 存储,缓存从source到Sink的中间数据。可使用不同的配置来做Channel,例如内存,文件,JDBC等。使用内存性能高但不持久,有可能丢数据。使用文件更可靠,但性能不如内存。

    Sink

    Sink负责从管道中读出数据并发给下一个Agent或者最终的目的地。Sink支持的不同目的地种类包括:HDFS,HBASE,Solr,ElasticSearch,File,Logger或者其它的Flume Agent。

    Flume在source和sink端都使用了transaction机制保证在数据传输中没有数据丢失。

    Source上的数据可以复制到不同的通道上。每一个Channel也可以连接不同数量的Sink。这样连接不同配置的Agent就可以组成一个复杂的数据收集网络。通过对agent的配置,可以组成一个路由复杂的数据传输网络。

    配置如上图所示的agent结构,Flume支持设置sink的Failover和Load Balance,这样就可以保证即使有一个agent失效的情况下,整个系统仍能正常收集数据。

    Flume中传输的内容定义为事件(Event),事件由Headers(包含元数据,Meta Data)和Payload组成。

    Flume提供SDK,可以支持用户定制开发:

    Flume客户端负责在事件产生的源头把事件发送给Flume的Agent。客户端通常和产生数据源的应用在同一个进程空间。常见的Flume 客户端有Avro,log4J,syslog和HTTP Post。另外ExecSource支持指定一个本地进程的输出作为Flume的输入。当然很有可能,以上的这些客户端都不能满足需求,用户可以定制的客户端,和已有的FLume的Source进行通信,或者定制实现一种新的Source类型。

    同时,用户可以使用Flume的SDK定制Source和Sink。似乎不支持定制的Channel。

    2、Fluentd

    Fluentd是另一个开源的数据收集框架。Fluentd使用C/Ruby开发,使用JSON文件来统一日志数据。它的可插拔架构,支持各种不同种类和格式的数据源和数据输出。最后它也同时提供了高可靠和很好的扩展性。Treasure Data, Inc 对该产品提供支持和维护。

    Fluentd的部署和Flume非常相似:

    Fluentd的架构设计和Flume如出一辙:

    Fluentd的Input/Buffer/Output非常类似于Flume的Source/Channel/Sink。

    Input

    Input负责接收数据或者主动抓取数据。支持syslog,http,file tail等。

    Buffer

    Buffer负责数据获取的性能和可靠性,也有文件或内存等不同类型的Buffer可以配置。

    Output

    Output负责输出数据到目的地例如文件,AWS S3或者其它的Fluentd。

    Fluentd的配置非常方便,如下图:

    Fluentd的技术栈如下图:

    FLuentd和其插件都是由Ruby开发,MessgaePack提供了JSON的序列化和异步的并行通信RPC机制。

    Cool.io是基于libev的事件驱动框架。

    FLuentd的扩展性非常好,客户可以自己定制(Ruby)Input/Buffer/Output。

    Fluentd从各方面看都很像Flume,区别是使用Ruby开发,Footprint会小一些,但是也带来了跨平台的问题,并不能支持Windows平台。另外采用JSON统一数据/日志格式是它的另一个特点。相对去Flumed,配置也相对简单一些。

    3、Logstash

    Logstash是著名的开源数据栈ELK (ElasticSearch, Logstash, Kibana)中的那个L。

    Logstash用JRuby开发,所有运行时依赖JVM。

    Logstash的部署架构如下图,当然这只是一种部署的选项。

    一个典型的Logstash的配置如下,包括了Input,filter的Output的设置。

    几乎在大部分的情况下ELK作为一个栈是被同时使用的。所有当你的数据系统使用ElasticSearch的情况下,logstash是首选。

    4、Chukwa

    官网:https://chukwa.apache.org/

    Apache Chukwa是apache旗下另一个开源的数据收集平台,它远没有其他几个有名。Chukwa基于Hadoop的HDFS和Map Reduce来构建(显而易见,他用Java来实现),提供扩展性和可靠性。Chukwa同时提供对数据的展示,分析和监视。很奇怪的是它的上一次 github的更新事7年前。可见该项目应该已经不活跃了。

    Chukwa的部署架构如下:

    Chukwa的主要单元有:Agent,Collector,DataSink,ArchiveBuilder,Demux等等,看上去相当复杂。由于该项目已经不活跃,我们就不细看了。

    5、Scribe

    代码托管:https://github/facebookarchive/scribe

    Scribe是Facebook开发的数据(日志)收集系统。已经多年不维护,同样的,就不多说了。

    6、Splunk Forwarder

    以上的所有系统都是开源的。在商业化的大数据平台产品中,Splunk提供完整的数据采金,数据存储,数据分析和处理,以及数据展现的能力。

    Splunk是一个分布式的机器数据平台,主要有三个角色:

    Search Head负责数据的搜索和处理,提供搜索时的信息抽取。

    Indexer负责数据的存储和索引 Forwarder,负责数据的收集,清洗,变形,并发送给Indexer

    Splunk内置了对Syslog,TCP/UDP,Spooling的支持,同时,用户可以通过开发 Input和Modular Input的方式来获取特定的数据。在Splunk提供的软件仓库里有很多成熟的数据采集应用,例如AWS,数据库(DBConnect)等等,可以方便的从云或者是数据库中获取数据进入Splunk的数据平台做分析。

    这里要注意的是,Search Head和Indexer都支持Cluster的配置,也就是高可用,高扩展的,但是Splunk现在还没有针对Farwarder的Cluster的功能。也就是说如果有一台Farwarder的机器出了故障,数据收集也会随之中断,并不能把正在运行的数据采集任务Failover到其它的 Farwarder上。

    总结

    我们简单讨论了几种流行的数据收集平台,它们大都提供高可靠和高扩展的数据收集。大多平台都抽象出了输入,输出和中间的缓冲的架构。利用分布式的网络连接,大多数平台都能实现一定程度的扩展性和高可靠性。

    其中Flume,Fluentd是两个被使用较多的产品。如果你用ElasticSearch,Logstash也许是首选,因为ELK栈提供了很好的集成。Chukwa和Scribe由于项目的不活跃,不推荐使用。

    Splunk作为一个优秀的商业产品,它的数据采集还存在一定的限制,相信Splunk很快会开发出更好的数据收集的解决方案。

  • ?

    干货丨大数据是如何被采集及应用的

    牟飞风

    展开

    尽管“大数据”一词近年来屡遭热捧

    但很多人都还不知道什么是大数据

    更不知道大数据有甚卵用

    这两年,发现“大数据”这个词出现的越来越频繁了

    不仅企业,连国家都在部署大数据战略

    一番百度了之后

    Oh~ emmmmmmmmm~ +_+

    还是没搞懂大数据到底是个什么玩意儿

    直到有一天

    我发现一个秘密

    不管我在网上搜索什么

    页面都会跳出我要搜索的相关产品或关联事物

    然后,我恍然大悟!

    所谓大数据,就是算法!

    它能够“算”出我们“心中所想”

    那么问题来了

    大数据技术是如何采集到我们的信息的呢?

    数据采集,又称数据获取,是利用一种装置,从系统外部采集数据并输入到系统内部的一个接口。在互联网行业快速发展的今天,数据采集已经被广泛应用于互联网及分布式领域,比如摄像头,麦克风,都是数据采集工具。

    数据采集系统整合了信号、传感器、激励器、信号调理、数据采集设备和应用软件。在数据大爆炸的互联网时代,数据的类型也是复杂多样的,包括结构化数据、半结构化数据、非结构化数据。结构化最常见,就是具有模式的数据。非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,包括所有格式的办公文档、文本、图片、XML, HTML、各类报表、图像和音频/视频信息等等。大数据采集,是大数据分析的入口,所以是相当重要的一个环节。

    我们首先来了解一下数据采集的三大要点:

    一、数据采集的三大要点

    (1)全面性

    数据量足够具有分析价值、数据面足够支撑分析需求。

    比如对于“查看商品详情”这一行为,需要采集用户触发时的环境信息、会话、以及背后的用户id,最后需要统计这一行为在某一时段触发的人数、次数、人均次数、活跃比等。

    (2)多维性

    数据更重要的是能满足分析需求。灵活、快速自定义数据的多种属性和不同类型,从而满足不同的分析目标。

    比如“查看商品详情”这一行为,通过埋点,我们才能知道用户查看的商品是什么、价格、类型、商品id等多个属性。从而知道用户看过哪些商品、什么类型的商品被查看的多、某一个商品被查看了多少次。而不仅仅是知道用户进入了商品详情页。

    (3)高效性

    高效性包含技术执行的高效性、团队内部成员协同的高效性以及数据分析需求和目标实现的高效性。也就是说采集数据一定要明确采集目的,带着问题搜集信息,使信息采集更高效、更有针对性。此外,还要考虑数据的及时性。

    不同应用领域的大数据其特点、数据量、用户群体均不相同。不同领域根据数据源的物理性质及数据分析的目标采取不同的数据采集方法。

    那么,接下来我们再来了解一下常用的数据采集的方法。

    常用的数据采集方法归结为以下三类:传感器、日志文件、网络爬虫。

    (1)传感器

    传感器通常用于测量物理变量,一般包括声音、温湿度、距离、电流等,将测量值转化为数字信号,传送到数据采集点,让物体有了触觉、味觉和嗅觉等感官,让物体慢慢变得活了起来。

    (2)系统日志采集方法

    日志文件数据一般由数据源系统产生,用于记录数据源的执行的各种操作活动,比如网络监控的流量管理、金融应用的股票记账和 web 服务器记录的用户访问行为。

    很多互联网企业都有自己的海量数据采集工具,多用于系统日志采集,如Hadoop的Chukwa,Cloudera的Flume,Facebook的Scribe等,这些工具均采用分布式架构,能满足每秒数百MB的日志数据采集和传输需求。

    (3)Web 爬虫

    网络爬虫是指为搜索引擎下载并存储网页的程序,它是搜索引擎和 web 缓存的主要的数据采集方式。通过网络爬虫或网站公开API等方式从网站上获取数据信息。该方法可以将非结构化数据从网页中抽取出来,将其存储为统一的本地数据文件,并以结构化的方式存储。它支持图片、音频、视频等文件或附件的采集,附件与正文可以自动关联。

    此外,对于企业生产经营数据上的客户数据,财务数据等保密性要求较高的数据,可以通过与数据技术服务商合作,使用特定系统接口等相关方式采集数据。比如八度云计算的数企BDSaaS,无论是数据采集技术、BI数据分析,还是数据的安全性和保密性,都做的很好。

    数据的采集是挖掘数据价值的第一步,当数据量越来越大时,可提取出来的有用数据必然也就更多。只要善用数据化处理平台,便能够保证数据分析结果的有效性,助力企业实现数据驱动。

  • ?

    航天测控和数据采集网

    解冷雪

    展开

    对航天器进行跟踪测量并控制其运动和功能的专用地面系统,由航天测控中心和若干航天测控站组成,简称测控网。测控网通过对航天器跟踪测量、监视、控制和接收航天器发送来的数据,检测和控制航天器的运动,检测和控制航天器上各种装置和系统的工作,接收来自航天器的专用信息,与载人航天器的乘员进行通信联络。

    任务 航天测控和数据采集网的主要任务是:①跟踪测量和监视人造地球卫星、载人飞船和空间探测器的飞行轨道及其各分系统的工作和环境状态,对获取的数据加以分析,判断航天器飞行轨道的正确性和航天器对空间环境的适应性,为改变航天器轨道、飞行程序和工作状态提供依据。②完成实时或程序控制,使航天器达到预定的轨道和保持正确的姿态。典型例子是静止卫星发射和定点。有的应用卫星是由卫星上存贮的理论轨道自动完成程序控制的。卫星入轨后,须由测控网测量和计算出实际轨道,将其注入卫星,依此修正卫星上的程序控制时间。航天器交会、机动、变轨和返回,都由航天测控网控制。③接收航天器的内部遥测数据、各种探测数据以及反映航天员生理状态的遥测信息、话音和电视信息等。将这些信息发送给航天测控中心,进行记录、显示、处理,供实时和事后分析使用。④对于各种要求高精度定位的应用卫星(如导航卫星、测地卫星、高分辨率对地观测卫星),由测控网向用户提供准确的卫星位置数据,作为应用数据处理的基准信息。

    网的组成 由航天测控中心和若干配有跟踪测量、遥控和数据采集设备的航天测控站(包括测量船和测量飞机)组成。测控站的数量、配备和分布取决于航天器的飞行轨道及其测控要求。航天测控中心与各测控站通过有线、无线通信与卫星通信构成一个通信和数据传输系统的综合体。

    为便于同各测控站交换信息,航天测控中心设在地点适中和通信便利的地方。测控站的分布宜广,以提高测轨精度和增加网的测控范围。在固定测控站的跟踪范围之外,还辅以测量船、活动测控站或测量飞机。测控站配有大功率无线电发射设备和高灵敏度接收设备,站址设在无线电干扰小、有较小的遮蔽角(即测控设备的最低可跟踪角)的地方。光学跟踪测量站还应考虑有好的气象条件。

    分类 航天测控和数据采集网依照测控功能大体上可以分为三类:①卫星测控网:为各种应用卫星和科学试验卫星服务。②载人飞船测控网:为载人飞船服务。载人飞船测控网除拥有一般测量、遥测和遥控设备外,还配备有与航天员通话和传递电视的设备。③深空网:为探测月球和深空行星的航天器服务。为了实现超远程的作用距离,深空网的地面设备有大口径天线和高灵敏度接收系统,所用设备采用距离变化率综合测量体制。由于深空目标距地球遥远,一个测控站可以对目标进行较长时间的观测。在全球均匀分布3个站,则任何时间至少有一个站能跟踪目标(见无线电跟踪测量系统、航天测控系统)。

  • ?

    携程用户数据采集与分析系统

    赖梦松

    展开

    一、携程实时用户数据采集系统设计实践

    随着移动互联网的兴起,特别是近年来,智能手机、pad等移动设备凭借便捷、高效的特点风靡全球,同时各类APP的快速发展进一步降低了移动互联网的接入门槛,越来越多的网民开始从传统PC转移至移动终端上。但传统的基于PC网站和访问日志的用户数据采集系统已经无法满足实时分析用户行为、实时统计流量属性和基于位置服务(LBS)等方面的需求。

    我们针对传统用户数据采集系统在实时性、吞吐量、终端覆盖率等方面的不足,分析了在移动互联网流量剧增的背景下,用户数据采集系统的需求,研究在多种访问终端和多种网络类型的场景下,用户数据实时、高效采集的方法,并在此基础上设计和实现实时、有序和健壮的用户数据采集系统。此系统基于Java NIO网络通信框架(Netty)和分布式消息队列(Kafka)存储框架实现,其具有实时性、高吞吐、通用性好等优点。

    1、技术选型和设计方案:

    一个典型的数据采集分析统计平台,对数据的处理,主要由如下五个步骤组成:

    图1、数据平台处理流程

    其中,数据采集步骤是最核心的问题,数据采集是否丰富、准确和实时,都直接影响整个数据分析平台的应用的效果。本论文关注的步骤主要在数据采集、数据传输和数据建模存储这三部分。

    为满足数据采集服务实时、高效性、高吞吐量和安全性等方面的要求,同时能借鉴互联网大数据行业一些优秀开源的解决方案,所以整个系统都将基于Java技术栈进行设计和实现。整个数据采集分析平台系统架构如下图所示:

    图2(数据采集分析平台系统架构)

    其中整个平台系统主要包括以上五部分:客户端数据采集SDK以Http(s)/Tcp/Udp协议根据不同的网络环境按一定策略将数据发送到Mechanic(UBT-Collector)服务器。服务器对采集的数据进行一系列处理之后将数据异步写入Hermes(Kafka)分布式消息队列系统。为了关联业务服务端用户业务操作埋点、日志,业务服务器需要获取由客户端SDK统一生成的用户标识(C-GUID),然后业务服务器将用户业务操作埋点、日志信息以异步方式写入Hermes(Kafka)队列。最后数据消费分析平台,都从Hermes(Kafka)中消费采集数据,进行数据实时或者离线分析。其中Mechanic(UBT-Collector)系统还包括对采集数据和自身系统的监控,这些监控信息先写入Hbase集群,然后通过Dashboard界面进行实时监控。

    (1)基于NIO的Netty网络框架方案

    要满足前面提到的高吞吐、高并发和多协议支持等方面的要求。我们调研了几种开源异步IO网络服务组件(如Netty、MINI、xSocket),用它们和NginxWeb服务器进行了性能对比,决定采用Netty作为采集服务网络组件。下面对它进行一些概要介绍:Netty是一个高性能、异步事件驱动的NIO框架,它提供了对TCP、UDP和文件传输的支持,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获得IO操作结果。

    图3(Netty框架内部组件逻辑结构)

    Netty的优点有:

    a、功能丰富,内置了多种数据编解码功能、支持多种网络协议。

    b、高性能,通过与其它主流NIO网络框架对比,它的综合性能最佳。

    c、可扩展性好,可通过它提供的ChannelHandler组件对网络通信方面进行灵活扩展。

    d、易用性,API使用简单。

    e、经过了许多商业应用的考验,在互联网、网络游戏、大数据、电信软件等众多行业得到成功商用。

    Netty采用了典型的三层网络架构进行设计,逻辑架构图如下:

    图4(Netty三层网络逻辑架构)

    第一层:Reactor通信调度层。该层的主要职责就是监听网络的连接和读写操作,负责将网络层的数据读取到内存缓冲区中,然后触发各种网络事件,例如连接创建、连接激活、读事件、写事件等,将这些事件触发到Pipeline中,再由Pipeline充当的职责链来进行后续的处理。

    第二层:职责链Pipeline层。负责事件在职责链中有序的向前(后)传播,同时负责动态的编排职责链。Pipeline可以选择监听和处理自己关心的事件。

    第三层:业务逻辑处理层,一般可分为两类:a. 纯粹的业务逻辑处理,例如日志、订单处理。b. 应用层协议管理,例如HTTP(S)协议、FTP协议等。

    我们都知道影响网络服务通信性能的主要因素有:网络I/O模型、线程(进程)调度模型和数据序列化方式。

    在网络I/O模型方面,Netty采用基于非阻塞I/O的实现,底层依赖的是JDKNIO框架的Selector。

    在线程调度模型方面,Netty采用Reactor线程模型。常用的Reactor线程模型有三种,分别是:

    a、Reactor单线程模型:Reactor单线程模型,指的是所有的I/O操作都在同一个NIO线程上面完成。对于一些小容量应用场景,可以使用单线程模型。

    b、Reactor多线程模型:Rector多线程模型与单线程模型最大的区别就是有一组NIO线程处理I/O操作。主要用于高并发、大业务量场景。

    c、主从Reactor多线程模型:主从Reactor线程模型的特点是服务端用于接收客户端连接的不再是一个单独的NIO线程,而是一个独立的NIO线程池。利用主从NIO线程模型,可以解决一个服务端监听线程无法有效处理所有客户端连接的性能不足问题。Netty线程模型并非固定不变的,它可以支持三种Reactor线程模型。

    在数据序列化方面,影响序列化性能的主要因素有:

    a、序列化后的码流大小(网络带宽占用)。

    b、序列化和反序列化操作的性能(CPU资源占用)。

    c、并发调用时的性能表现:稳定性、线性增长等。

    Netty默认提供了对GoogleProtobuf二进制序列化框架的支持,但通过扩展Netty的编解码接口,可以实现其它的高性能序列化框架,例如Avro、Thrift的压缩二进制编解码框架。

    通过对Netty网络框架的分析研究以及对比测试(见后面的可行性分析测试报告)可判断,基于Netty的数据采集方案能解决高数据吞吐量和数据实时收集的难点。

    》》点击阅读全文

  • ?

    扬尘在线监测系统的数据采集和传输系统

    Jia

    展开

    扬尘在线监测系统感知层,污染源在线监测仪,包括颗粒物浓度监测仪、气象五参数监测仪、噪声监测仪和视频监控摄像机,对颗粒物浓度、气象参数、噪声和现场视频进行连续自动在线监测;OSEN-YZ颗粒物监测仪就可以实现扬尘的实时监测,数据无线上报。传输层:采用有线、无线、3G/4G等方式传输各种监测数据。平台层:数据服务云平台,依托在建工地扬尘与噪声监测平台的数据,进行系统分析、提供跨区域、全时间、多层次的数据挖掘和对比,为科学治理雾霾提供数据支撑,应用层:面向不同环保局、建筑工地的客户端系统,实现基于Web的污染源实时数据在线监测、现场图像和视频的监控、污染源超标报警、以及面向不同管理层的各种管理与统计分析。

    扬尘在线监测系统由颗粒物在线监测仪、数据采集和传输系统、视频监控系统、后台数据处理系统及信息监控管理平台共四部分组成。系统集成了物联网、大数据和云计算技术,通过光散射在线监测仪、云台摄像头、气象五参数采集设备和采集传输等设备,实现了实时、远程、自动监控颗粒物浓度;数据通过采用3G/4G网络传输,可以在智能移动平台、桌面PC机等多终端访问;监控平台还具有多种统计和高浓度报警功能,可广泛应用在散货堆场和码头、混凝土搅拌站以及工厂企业无组织排放的实时监控。

    扬尘在线监测系统的功能与系统特点,人机交换界面,采样频率自主设定,高低上限报警,8路常开继电器,标准RS485 RS232数据提取 RJ45以太网接口,标准MODBUS RTU通讯协议。符合国家标准:GB3096-2008《声环境质量标准》和GB3095-2012《环境空气质量标准》采用在线式粉尘监测仪,性能稳定,数据准确。具有数据观察窗功能,以方便用户就地查看测量数据。具有扬尘预警、超标提醒、图像抓拍功能。全天候全自动24小时365天持续不间断工作,故障提示报警功能。气象参数扩展:可选配温湿度、风速风向、气压、降雨量、一体化摄像头等。工作环境:温度-20~80℃,相对温度不高于90%.

数据采集与传输系统

所有视频需要登录后,才能观看

请先登录您的帐号,即可完整播放,如果您尚未注册帐号,请先点击注册。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP