使用树莓派控制PicoScope示波器和PicoLog数据记录仪
众所周知,Pico的示波器和数据记录仪产品以体积小巧著称。不过,在现场应用中,测试设备的摆放空间可谓寸土寸金,不少用户唯恐体积不能再小一点,更小一点。因此,对于Pico设备必须搭配一台笔记本或工控机板来工作,体积大大增加了,我们常感美中不足。
现在,这个问题因Pico完美支持树莓派而变得不复存在。我们可以通过树莓派来控制PicoScope和PicoLog产品,对于PicoScope,通过运行用户自定义的程序,进行示波器设置并捕获原始波形,树莓派可以直接处理数据,或者通过以太网转发给PC处理,从而实现PicoScope的远程操控。而对于PicoLog,则更加方便,用户可以运行与PC版本相同的官方软件,来操控Pico的示波器和数据记录仪产品。
1. 什么是树莓派
树莓派,一言以蔽之,是一款超迷你计算机。它的尺寸只有一张信用卡大小,但五脏俱全和普通PC无异。电脑能做的大部分事情,在树莓派上都能做,而树莓派以其低能耗、移动便携性、GPIO等特性,很多在普通电脑上难以做好的事情,用树莓派却是很适合的。本文实例中用到的树莓派3B+基于ARM Cortex A5芯片,集成Broadcom的GPU形成SOC,软件则运行基于Debian的Raspbian Linux操作系统,外围接口丰富,功能齐全。通过扩展,树莓派甚至支持PoE即以太网供电,更加便于现场小尺寸集成。
2.PicoScope开发环境
树莓派的图形操作界面Raspbian Stretch基于Debian Linux发行版,因此大多数软件组件可经由apt-get命令安装。
首先,添加Pico Technology的源到apt-get安装库。然后,通过apt-get安装PicoSDK开发库,以PicoScope2000系列为例,其他型号以此类推。
安装完成后,开发所用到的头文件和动态链接库都在/opt/picoscope目录下,以C/C++为例,Raspbian Stretch自带GCC编译环境,用户程序只需要在代码中配置好头文件,并通过编译命令即可生成可执行程序。其他语言如C#或Python与之类似,Raspbian Stretch均有成熟的编译环境可通过apt-get直接安装相应开发环境即可。
从Github中可获取到PC环境下的C语言编程范例:https://github.com/picotech/picosdk-c-examples
找到ps2000a/ps2000aCon.c对其略微修改(主要是包含头文件的路径,对应到/opt/picoscope/include/libps2000a目录下)就可以直接在Raspbian环境下编译运行。
3. PicoScope程序范例以及与PC运行速度的对比
在PicoScope2408B上运行一个通道的数据采集过程,基于C语言编译生成测试程序。采样率固定为250MS/s,对不同数据量分别统计PC和树莓派平台的耗时情况。
从结果可以看到在数据量小于1KS时,树莓派的表现与PC几乎无异,甚至表现得更加稳定,这应该与其运行的其他进程较少,示波器控制进程更少被调度有关。当数据量超过1MS时,树莓派的波形捕获和数据拷贝耗时比PC多一倍左右,但仍在同一个数量级。
同时,当我们真正应用树莓派进行示波器控制时,一定还伴随外部网络通信和数据处理等等运算,此时针对程序中的代码和使用的数据块大小进一步优化,可得到不同的结果。这就需要结合实际的场景精细调节了。如遇具体问题,欢迎咨询Pico公司中国技术支持。
4. PicoLog程序安装和运行结果
与PicoScope相比,PicoLog软件在树莓派上的支持更加完整和简便。通PicoLog软件不但可以控制Pico全部的数据记录仪产品,也可以连接大部分PicoScope示波器产品。树莓派上的PicoLog软件与PC上的功能,界面别无二致,可直接使用。
通过apt-get 安装PicoLog软件,之后在Raspbian Stretch 的开始菜单中即可找到程序图标。
版权声明:本资料属于北京海洋兴业科技股份有限公司所有,如需转载,请注明出处!