基于Raspberry Pi(树莓派)的MCC数据采集卡应用

编者按:工业上用的数据采集方案普遍基于 Windows 系统,而在Raspberry Pi(树莓派)被越来越多地应用到工业领域时,数据采集领域也终于出现了基于树莓派的产品和应用。我们之前有介绍过两款适用于树莓派的数据采集扩展板 MCC118 和 MCC152 大大降低了数据采集方案的应用成本。而下面要介绍的是如何给树莓派安装和使用 Windows 下通用的 MCC 数据采集卡,相信这会让数据采集又多了一个很不错的方案选项。

简介

树莓派是一种单板式计算机系统,可轻松连接鼠标、键盘、显示器等外设,并运行基于Linux®的操作系统,低于300人民币的成本,使树莓派尤其适用于注重性价比的数据采集应用。现在,Measurement Computing大部分USB、以太网和蓝牙数据采集设备已兼容树莓派。

目的

在树莓派上运行应用程序,控制MCC DAQ设备执行数据采集任务。本文详细介绍了以下关键步骤:

格式化SD卡

安装操作系统

配置树莓派

安装Linux设备驱动

安装MCC DAQ设备驱动,编译MCC提供的测试程序

运行MCC测试程序

适用人群

工作于树莓派(Linux)平台,熟悉MCC数据采集卡,并希望在此平台上实现数据采集功能。

必要条件

请预先准备以下内容:

树莓派硬件板卡 —— 本文使用model B,您可根据实际情况,使用任何型号

SD卡(8GB或更大容量)

PC 或 Mac®,可接入互联网

以太网电缆或无线适配器

显示器或电视机

供电电源

鼠标或轨迹球

键盘

MCC DAQ设备 —— 本文使用USB-1608FS

点击这里,了解支持Linux®和兼容树莓派的MCC数据采集卡

建议使用自供电USB Hub连接外设与树莓派。

下图展示了本文所用到的树莓派的配置:

鼠标和键盘通过USB Hub连接树莓派,并未在上图中显示。

安装操作系统

使用树莓派前必须安装操作系统。本文将安装Raspbian,基于Debian的开源操作系统,针对树莓派进行了大量优化,并通过NOOBS(New Out Of the Box Software)完成Raspbian的安装,NOOBS是树莓派官方发布的开源操作系统安装管理器。

借助SD卡拷贝NOOBS至树莓派,首先需要格式化SD卡,请参考以下详细步骤:

视频教程! Go to http://www.raspberrypi.org/help/noobs-setup/提供了详细的视频教程,包括格式化SD卡,下载NOOBS,安装Raspbian系统。

格式化SD卡

以下步骤将引领您下载NOOBS,并在树莓派上安装操作系统:

登陆www.sdcard.org,点击Download 下载页面底部的SD formatter for Windows or Mac 将SD卡插入PC或MAC,运行setup.exe,格式化SD卡

安装操作系统

以下步骤将引领您下载NOOBS,并在树莓派上安装操作系统:

登陆www.raspberrypi.org,点击Downloads.

点击NOOBS下的Download ZIP,保存至PC或MAC 解压zip文件,拷贝所有文件至SD卡 拔出SD卡,将其插入树莓派 连接显示器、鼠标、键盘和电源

上电后树莓派立即启动

首先会看到树莓派的Logo,后面是NOOBS主窗口,列出了全部可安装的操作系统 选中Raspbian复选框,点击Install,在Confirm对话框中选择Yes

安装进度将实时显示 选择OK,树莓派开始加载Raspbian

首次引导Raspbian,将弹出Setup Options菜单,通过键盘上的方向按键进行操作 根据需要配置相关选项,如语言、区域设置等 配置完成后,切换至并按下

命令行提示:pi@raspberrypi~$

恭喜您!至此已成功为树莓派安装了操作系统。

登陆信息

每次启动树莓派,都将提示以下登陆信息:

raspberrypi login: pi

password: raspberry

命令行提示:pi@raspberrypi~$

检查网络连接

在树莓派上下载MCC驱动程序前,请确认树莓派网络连接正确。可以通过以太网电缆或USB WiFi适配器连接网络,本文使用WiFi适配器。

双击桌面上WiFi Config图标,配置无线网络连接。Adapter:列出全部USB无线适配器(如wlan0); the Network:空 点击Scan,查看可用的无线网络 双击service set identifier (SSID)中待连接的无线网络 验证当前窗口中的Authentication 和 Encryption,在PSK (pre-shared key)中输入密码 点击Add

配置程序将自动连接至无线网络 重新启动树莓派,并输入上述登陆信息

登录之后,命令会立即显示pi@raspberrypi~$.

升级树莓派软件包

为确保您使用的是最新的树莓派软件包,输入以下命令

sudo apt-get update

下载 MCC的Linux驱动

MCC USB,蓝牙和以太网设备的Linux驱动程序保存在GitHub中。登录到Git库,下载最新的驱动软件包。

登录GitHub网页,获取Raspberry Pi的驱动:

https://github.com/wjasper/Linux_Drivers 点击下载按钮,选择下载压缩包 使用以下命令安装解压缩实用程序: sudo apt-get install unzip 在终端窗口中,找到到下载目录(使用cd命令),并将驱动程序文件解压缩到home / pi目录: unzip Linux_Drivers-master.zip -d ~pi

MCC驱动程序将持续保持更新,以支持更多设备。

单击下面的设备类型以转到安装驱动程序的过程:

安装MCC USB设备的Linux驱动,编译测试程序

在变异USB驱动之前,您必须安装与USB设备通讯所需的软件包

1、下载并安装libusb和libudev开发软件包

libusb为USB设备提供了通用C语言库

sudo apt-get install libusb-1.0-0 libusb-1.0-0-dev

2、拷贝USB规则文件到如下路径/etc/udev/rules.d,将它重命名为99-mcc.rules (避免了树莓派上标准命名问题):

sudo cp 61-mcc.rules /etc/udev/rules.d/99-mcc.rules

3、将hidapi GIT存储库克隆到home / pi目录中

HIDAPI需要与人机接口设备(HID)连接。

git clone git://github.com/signal11/hidapi.git

4、按照hidapi README.txt中的说明安装hidapi库:

a. 安装autotools,这是一套编程工具,旨在帮助将源代码包移植到类Unix系统。

autotools包是构建hidapi库所必需的。

sudo apt-get install libudev-dev libfox-1.6-dev autotools-dev autoconf automake libtool

b. 编译hidapi库:

cd ~pi/hidapi ./bootstrap ./configure make sudo make install

5、重启树莓派,根据提示输入登录信息

6、安装Linux驱动。

输入以下代码,安装USB驱动并编译测试应用程序:

cd ~pi/usb/mcc-libusb make sudo make install sudo ldconfig

安装MCC USB设备的Linux驱动,编译测试程序

执行以下步骤下载蓝牙库并编译蓝牙驱动程序。

在执行此过程之前,请确保您已经使用“下载第三方MCC Linux驱动程序”程序下载了蓝牙驱动程序.

1、安装蓝牙库

要编译蓝牙库,您需要添加bluez-libs-devel软件包。

sudo apt-get install libbluetooth-dev bluez-tools

2、编译蓝牙驱动

cd ~pi/Bluetooth make sudo make install

键入ls以列出所有文件。

3、使用MCC蓝牙DAQ设备运行示例测试应用程序

a. 插入MCC蓝牙设备。

b. Enter the name of a test program exactly as it is written, for example:

./test-bth1208LS

测试应用程序将显示您可以执行的测试列表。

c. 输入要执行的命令的字母。

安装以太网Linux驱动程序并编译测试程序

执行以下步骤编译以太网驱动程序。

在执行此过程之前,请确保您已使用“下载第三方MCC Linux驱动程序”过程下载了以太网驱动程序。

1、编译驱动

cd ~pi/Ethernet make sudo make install

键入ls以列出所有文件。 MCC以太网设备需要通过网络路由器进行连接。

2、使用MCC以太网DAQ设备运行示例测试应用程序。

a. 插入您的以太网设备

b. 输入完整的测试程序名称,例如:

cd ~pi/usb ./test-E-1608

测试应用程序将显示您可以执行的测试列表。

c. 输入要执行的命令的字母。

MCC测试程序

为Linux而开发的测试程序支持大部分MCC USB设备。程序将执行模拟通道、计数器通道和数字通道的数据采集,同时测试设备功能以及显示设备信息。

测试程序详见https://github.com/wjasper/Linux_Drivers上的USB/Mcc-libusb,Bluetooth,Ethernet文件夹,程序命名涵盖对应的设备型号,若设备从属于某系列,则此程序支持该系列全部设备,运行程序时,务必按照所列设备名称,正确键入设备名。

例如,使用USB-1608GX-2AO时,请运行程序”test-usb1608G”。

在树莓派上运行MCC DAQ设备测试程序

前往mcc-libhid目录,在命令提示符(pi@raspberrypi~)后输入以下命令,运行USB-1608FS测试程序:

cd ~pi/mcc-libusb ./test-usb1608FS

测试程序首先检测设备,并创建一张包含设备模拟输入校准参数(斜率和偏移)的表格。

表格建立完毕后,将显示全部可执行的设备测试功能

每项测试功能都有对应的热键,敲击键盘即可执行测试任务,程序有可能提示您输入更多信息,如通道数或频率大小,程序执行结果将打印在显示器上。

更多信息

任何关于Raspberry Pi的数据采集问题,请联系Measurement Computing Corporation:

更多Raspberry Pi相关信息,请参考www.raspberrypi.org.

Measurement Computing Corporation 和 Measurement Computing logo是属于Measurement Computing公司的商标或注册商标

Raspberry Pi是属于Raspberry Pi基金会的商标

Linux®是Linus Torvalds在美国和其他国家的注册商标

其他商标全部属于其持有者

鸣谢

特别感谢北卡罗来纳州立大学(North Carolina State University)的Warren Jasper博士(PE,教授,Textile Engineering Program Director)。Jasper博士长期以来一直帮助并支持Measurement Computing的USB、PCI数据采集卡的Linux设备驱动程序开发工作。我们对Jasper博士为Linux社区做出的不懈努力和奉献表示尊敬和感谢,没有他辛勤的工作和一如既往的支持,本文和本文提到的工程应用将无法实现。

其他技术文章请浏览MCC的数据采集技术文章页面

转自 http://china.mccdaq.com/TechTips/TechTip-9.aspx