树莓派如何使用第三方库_使用MCC DAQ与第三方Linux驱动的树莓派数据采集

发布于:2021-11-27 12:24:47

简介


Raspberry Pi?是一种单板式计算机,可连接键盘、显示器,并运行基于Linux?的操作系统。低于人民币300元的树莓派提供了一种注重性价比的数据采集方案。


MCC以三种不同的方式支持树莓派:


树莓派 HATs(Hardware Attached on Top)


UL for Linux? - MCC支持开源Linux驱动,库函数支持C/C++? 和Python?


第三方Linux支持 ? 由Warren Jasper博士维护C/C++的开源驱动


本文重点介绍如何使用Warren Jasper博士的开源驱动,它允许用户从多数MCC USB,以太网和蓝牙的DAQ设备中采集数据。了解更多关于使用UL for Linux的信息,请参考技术指南-UL for Linux树莓派数据采集。


目的


在树莓派上运行应用程序,控制MCC DAQ设备执行数据采集任务。


本文将就如何完成下列任务进行阐述:SD卡格式化


在树莓派中安装操作系统


为树莓派配置选项


安装Linux设备驱动


安装MCC DAQ第三方驱动,编译MCC Linux测试程序


运行MCC Linux测试程序


适用人群


本文档适用于有兴趣在树莓派中Linux*台上获取数据并熟悉MCC DAQ设备的应用程序开发人员。


设备任务的完成需要用到以下设备:


树莓派单板计算机 --- 笔者使用树莓派model B,但您可以使用任意一种树莓派


SD卡(8GB或更大存储空间)


可连接至网络的PC 或 Mac?


以太网线或无线适配器


显示器或电视与HDMI线


电源供应


鼠标或轨迹球


键盘


MCC DAQ设备 --- 笔者目前通过USB-1608FS来完成数据采集


点击查看Linux?支持的且与树莓派兼容的MCC DAQ设备


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


下图展示了用于完成上述任务的树莓派配置:



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


安装操作系统


您必须先将操作系统安装到树莓派上,然后才能使用它。笔者安装的是Raspbian,一种基于Debian的免费操作系统,针对树莓派硬件进行了优化。通过NOOBS(New Out Of the Box Software)完成Raspbian的安装,NOOBS是树莓派操作系统的安装管理器。


使用SD卡将NOOBS传输到树莓派中。SD卡必须被格式化以移除先前的信息。以下过程将向您展示如何完成这些步骤。


观看视频!前往http://www.raspberrypi.org/help/noobs-setup/,观看视频,查看如何格式化SD卡,下载NOOBS,以及安装Raspbian操作系统至树莓派中。


SD卡格式化


完成下列步骤以格式化SD卡:


至页面底部,选择SD formatter for Windows or Mac,将下载保存至电脑上。


3.将SD卡安装至您的PC或Mac,运行setup.exeSD formatter executable。


安装操作系统至树莓派中


完成下列步骤以下载NOOBS并安装操作系统至树莓派中:


前往www.raspberrypi.org,点击Downloads.


在NOOBS模块下点击Download ZIP,然后将文件保存至PC或Mac中。


解压zip文件,并将所有文件都保存至SD卡。


将SD卡从您的PC或Mac中移除,然后将其安装至树莓派中。


连接显示器、键盘、鼠标与电源。


树莓派与电源相连之后会启动。


树莓派的标志将显示,然后显示NOOBS对话框,其中显示安装操作系统列表。


选中Raspbian复选框,点击Install,然后在Confirm对话框中选择 Yes 以安装Raspbian。


安装完成之后,将出现一个对话框。


点击OK;树莓派开始加载Raspbian。


如果这是您第一次启动树莓派,Setup Options菜单将会出现。可使用键盘上的箭头键来导航菜单。


对配置选项进行设定,例如设置语言与地区以使其与您的地理位置相符。


选项设定完成之后,点击 ,按键 。


命令提示符将会显示:


登陆信息


每次启动树莓派时,都会出现以下的登录信息提示:


raspberrypi login: pi


password: raspberry


命令提示符将会显示:


验证网络连接


下载树莓派的MCC驱动之前,需确认树莓派是否连接网络。您可以通过以太网线或USB无线适配器连接无线网络。笔者使用无线适配器。


双击位于桌面的WiFi Config 图标以启动无线配置程序。The Adapter: 字段列出了USB无线适配器的名称(例如 wlan0); the Network: 字段为空。


点击 Scan,可获取的无线网络将被列出。


双击想连接的服务集标识符(SSID)的网络名称。


验证连接窗口上的Authentication与Encryption字段,输入PSK (pre-shared key) 字段的密码。


点击Add。


配置程序将自动连接至最新的配置网络。


再次连接电源以*羰鬏桑⑹淙肷鲜龅锹夹畔ⅰ


登录之后,命令提示符将会显示


更新树莓派的软件包清单


为了确保您安装的每个树莓派软件包的版本都是最新的,请输入下列代码。


sudo apt-get update


下载第三方MCC Linux驱动


对于使用USB,蓝牙和以太网的设备,第三方的MCC Linux驱动是可获取的,且都保存在GitHub中。登录到GitHub库,下载最新的驱动软件包。


点击下载按钮,选择下载压缩包


使用以下命令安装解压缩实用程序:


sudo apt-get install unzip


在终端窗口中,找到到下载目录(使用cd命令),并将驱动程序文件解压缩到home / pi目录:


unzip Linux_Drivers-master.zip -d ~pi


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


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


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


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


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


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


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


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


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


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


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


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


按照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


*羰鬏桑萏崾臼淙氲锹夹畔ⅰ


安装Linux驱动。


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


cd ~pi/usb/mcc-libusb


make


sudo make install


sudo ldconfig


安装MCC蓝牙设备的Linux驱动并编译测试程序


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


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


安装蓝牙库。


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


sudo apt-get install libbluetooth-dev bluez-tools


编译蓝牙驱动。


cd ~pi/Bluetooth


make


sudo make install


键入ls以列出所有文件。


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


a. 插入MCC蓝牙设备。


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


./test-bth1208LS


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


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


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


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


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


编译驱动


cd ~pi/Ethernet


make


sudo make install


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


使用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 USB DAQ设备与树莓派运行测试程序


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


cd ~pi/mcc-libusb


./test-usb1608FS


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



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



每项测试功能都有对应的字母,敲击键盘即可执行测试任务,程序有可能提示您输入更多信息,如通道数或频率值。这些示例程序运行之后,结果将出现在显示器上。


更多信息


关于使用树莓派采集数据,如果您有任何疑问,请联系Measurement Computing Corporation:


Measurement Computing Corporation与Measurement Computing标志均为Measurement Computing Corporation的商标或注册商标。


Raspberry Pi 为树莓派基金会商标。


Linux?是Linus Torvalds在美国和其它国家的注册商标。


其它所有注册商标均为其各自所有者的财产。


鸣谢


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


更多技术指南可在我们的数据采集技术文章网页上获取。







相关资源:树莓底层驱动WiringPi代码

相关推荐

最新更新

猜你喜欢