Raspberry pi4B具有较强的处理能力,具有丰富的硬件外设接口,非常适合作为服务端布署,搭建WebApp的解决方案。本文章结合实际应用案例介绍如何使用LabVIEW_2020与LabVIEW_NXG搭建WebAPP。

LabVIEW_2020社区版本携带LINX工具包发布,LINX工具包是将LabVIEW引擎植入嵌入式设备,比如Raspberry pi 4B,前面文章有介绍如何搭建环境,有读者不清楚可以翻阅前面文章。

<1. 基于LabVIEW_2020开发复杂功能程序>

新建一个工程,然后右击工程-->>New-->>Targets and Devices

4dc406f904868dbd43a62969ba7d1024.png

点击“Raspberrypi 2 B”此时在工程栏会增加一个终端。

9d67207f277a553afe610e6d6932b2ec.png

右击,选择“Properties”,填写Raspberry端的IP地址,比如192.168.1.30,点击OK!

c908b472d39c436a3362cb7c4bd6b26a.png

此时完成终端工程建立,在终端下面开发LabVIEW代码,这些终端下面的代码是要布署在终端设备的。

d6e94803ecf9ceaeef15ac8f5643d06d.png

<2. 采用WebSockect进行数据通信>

WebSockect使得浏览器具有双向通信能力,使用TCP通信协议,并复用HTTP的握手通道。LabVIEW_NXG web模块自带WebSockect函数。布署Raspberry pi 4B的代码同样需要进行WebSockect通信,英国有个小哥开发基于LabVIEW TCP协议的WebSockect通信API,我们可以直接下载使用https://github.com/MediaMongrels-Ltd/LabVIEW-WebSockets-API。

启动VI框架:

3359f02fef37f1b8fb0ab16a0adbedf5.png

程序启动后,动态加载数据采集循环和WebSockect侦听循环。

侦听线程:

45cafcacf64d02cf4cb4eb37cf660a3a.png

侦听到访问者就动态加载一个通讯线程,这样使程序具有并行通信能力,也就具有了支持多客户端访问的能力了。

<3. 建立开机自启的程序>

要建立开机自启程序,我们首先想到的是采用WebService技术进行部署,不仅可以具有开机自启功能,也可以通过建立公共文件夹搭建网站,在windows下面基本是这样部署的。但是在Raspberry pi 4B终端,可以进行调试,但是真正部署的时候会报错,没法真正的部署。

 右击“BuildSpecifications”选择Real-Time Application,和我们普通的打包可执行程序类似,打包完成后,右击My Real-Time Application选择run as startup,这样就会部署到Raspberry pi 4B终端,并支持开机自启。

c421579f9c44dc19f269e8c8cf7190f8.png

<4. LabVIEW_NXG开发WebAPP>

2cb1c765bbf0d33f1c81b649619052ec.png

使用WebApplication Project进行Web App开发。

66e6950a694cc002b1686b590a562504.png

开发过程与LabVIEW开发类似。我们使用WebSockect实时显示Raspberry pi 4B采集的数据。

5efff92969a1d3915c100f977fe52d05.png

开发完成后,打包生成JavaScript与HTML。

487822775d51b0b98a0c3f96d85e50d9.png

<5. 在Raspberrypi 4B终端部署WebApp>

在LabVIEW环境下,我们通常是通过WebService进行布署,但是Raspberry pi 4B在真正布署时会出现错误,最终采用Apache2进行托管。

我们采用apt-get在线源安装方式,所以我们建议把树莓派的源信息进行更新,这样可以安装最新版的APACHE服务版本。其中更新源信息命令如下;sudo apt-get updatesudo apt-get dist-upgrade完成树莓派安装源信息的更新后就可以使用命令来在线安装APACHE了,安装命令如下;sudo apt-get install apache2完成APACHE的在线安装我们可以尝试采用默认配置来启动下APACHE服务,以便查看是否安装正常。重启APACH服务的命令如下;启动:sudo /etc/init.d/apache2 start重启:sudo /etc/init.d/apache2restart关闭:sudo /etc/init.d/apache2 stop通过上面的更新和安装APACHE服务就基本安装完成了。

将LabVIEW_NXG生成的网站文件,复制到/var/www/下面,采用命令的方式复制(手动复制会受限制)sudo cp -r/home/pi/原始路径 目标路径。

完成复制后,我们可以通过浏览器输入Http://192.168.1.30直接访问,此时完成WebAPP的布署。

1)采用LabVIEW_2020社区版本进行Raspberry pi 4B终端采集、处理、分析、存储、通信等核心功能开发,并布署为开机自启程序。

2)使用LabVIEW_NXG进行WebAPP开发,并使用Apache2进行托管布署。

f75057ff9e79b61b4d4204a18f682d0b.png

=========================

有任何问题欢迎交流:

846950491ddc7f194be55b1a33545e08.png

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐