GithubHelp home page GithubHelp logo

daqkafka's Introduction

简介:

此模块用于LinuxCNC系统的数据采集,通过引脚输出数据采集卡模拟输入通道的电压值,包含两部分: (1)HAL模块部分,由源文件“daq.c”构成; (2)数据采集模块部分,由源文件“usb_4711a.c”构成,可以根据数据采集卡型号添加新的源文件。

HAL模块介绍:

1、引脚 (1)daq.analog-in.%d float类型,输出引脚,以电压的方式输出第%d个模拟输入通道的采集值,在加载HAL模块时设置采集的模拟输入通道数。 (2)daq.analog-in-val.%d float类型,输出引脚,以物理量的方式输出第%d个模拟输入通道的采集值,analog-in-val=analog-in×scale-in。 2、参数 (1)daq.gain-in.%d s32类型,第%d个模拟输入通道的输入电压范围,参数与输入电压范围的对应关系与数据采集卡型号有关,见数据采集模块介绍。 (2)daq.type.%d s32类型,第%d个模拟输入通道所在数据采集卡的型号,目前支持型号及其对应参数如下:

参数      数据采集卡型号

0        研华USB-4711A

(3)daq.channel.%d s32类型,第%d个模拟输入通道在数据采集卡上的通道号。 (4)daq.read-mode.%d s32类型,第%d个模拟输入通道的信号读取模式,参数与读取模式的对应关系与数据采集卡型号有关,见数据采集模块介绍。 (5)daq.scale-in.%d float类型,第%d个模拟输入通道的信号放大比例,需根据该通道的电压与实际物理量数值关系设置,例如1V电压对应100N,就将这个值设置为100。 3、函数 (1)read.analog-in.all 读取全部模拟输入通道的信号。 (2)read.analog-in.%d 读取第%d个模拟输入通道的信号。

数据采集模块介绍:

数据采集功能的具体实现,每种型号的数据采集卡对应一个数据采集模块源文件。 目前支持的数据采集卡型号如下: 1、研华USB-4711A (1)double usb_4711a_read_a_chan(int channel, int gain, int read_mode) 读取数据采集卡一个模拟通道的信号,以电压值的形式返回,输入参数说明如下:

输入参数     说明

channel     数据采集卡模拟通道号

gain        数据采集卡模拟通道的输入电压范围
            0 表示-10~10V
            1 表示0~10V
            2 表示-5~5V
            3 表示0~5V

read_mode   数据采集卡模拟通道信号读取模式
            0 表示普通模式
            1 表示差分模式

使用说明:

1、编译方法 复制"linuxcnc-xxx/src/Makefile.modinc"到此模块源代码目录,编译:

make install 编译生成的模块自动加入"linuxcnc-xxx/rtlib/daq.so"。 清理编译时产生的中间文件: make clean 2、加载和使用 “run_daq.hal”为测试运行时使用的HAL文件,集成到系统中还需要修改数控系统的“.hal”文件。 (1)在“.hal”文件中加载此模块,指令如下: loadrt daq num_a_chans=n (n为需要采集的模拟通道数) (2)在“.hal”文件中用setp设置采集参数。 (3)在“.hal”文件中用addf将函数加入线程中,只采集某些通道用函数“read.analog-in.%d”,采集所有通道用函数“read.analog-in.all”。 (4)在“*.hal”文件中将输出引脚“daq.analog-in.%d”连接到需要数据的模块引脚上。

daqkafka's People

Contributors

jiangnanshan97 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.