树莓派嵌入式Web服务器在工业监控中的应用

嵌入式Web服务器应用在工业自动化中的应用

摘要

基于网络服务器的监控一直是工业领域的难题,因为它们使用基于PC的服务器,耗电量大且占用空间大。通过采用树莓派的嵌入式Web服务器替代现有的基于PC的服务器,可以克服这一限制。本文的主要目标是设计一种由Linux便携式ARM处理器控制并结合通用分组无线服务(GPRS)技术的远程数据采集系统和网络服务器应用程序。该系统不仅关注设备监控,还实现设备控制。监控与数据采集过程中配有短消息服务(SMS)和电子邮件警报功能,以便在发生关键事件前及时预警。该系统具备较强的抗断电能力,并能在断电后从故障点恢复运行。

1. 引言

网络服务器的起源源于客户端通过超文本传输协议(HTTP)访问数据的需求,以便网络服务器能够处理、存储并按客户端请求发送数据。尽管网络服务器的主要作用是提供数据,但在某些情况下它也可以接收来自客户端的数据。传统方法通常使用UNIX和Linux工作站,需要大型数据库存储系统,占用大面积且设置成本高。本文的唯一目的是克服面积和成本限制,降低这些开销,并使系统更加高效。嵌入式Web服务器能够在最少计算资源的情况下提供服务。近年来嵌入式产业几乎没有显著发展。

8位微控制器是该行业的基础,但如今越来越多的设备不仅日益普及,这些嵌入式系统也正变得越来越智能,能够连接到网络。嵌入式Web服务器应具有较小的尺寸,并能轻松集成到多种设备中,而树莓派正适合这一需求。尽管它们的硬件和存储容量有限,这些障碍几乎无关紧要,即使存在这些限制,它仍然足以执行关键任务。互联网正逐渐融入每个人的日常生活中,并已成为我们生活中不可或缺的一部分。全球用户,无论是家庭还是工业领域,都希望通过互联网技术远程访问他们的设备。嵌入式Web服务器所承载的期望是,它应能够替代个人计算机,并在所有参数上实现改进,从而提升系统的整体效率。这些相较于传统计算机具有优势的参数列于表1中。嵌入式Web服务器上的数据应当受到保护,即任何未经身份验证的人员均不得访问。模块提供的信息会被收集,这些数据可以在网页上显示。

这些网页主要存储在内存中。在此,可以理解使用树莓派相较于微控制器的优势:当用户在地址栏输入IP地址时,其目的是访问服务器收集的数据。客户端请求时,嵌入式服务器将提供动态数据。

参数 基于树莓派的嵌入式
网络服务器
传统基于PC的
网络服务器
1. 尺寸
2. 成本
3. 能耗
4. 便携性
5. 散热器
6. 性能
小型
性价比高(55美元)
5W
不需要
良好(使用700MHz ARM‐11 处理器)
大型
昂贵(约600美元)
>250W
必需
良好

2. 系统设计

2.1 嵌入式Web服务器

树莓派中的ARM处理器为数据采集、控制单元和嵌入式Web服务器提供了平台。图1简要描述了嵌入式Web服务器的工作原理。嵌入式Web服务器持续监控DS1820温度传感器的温度值,并将这些值上传至服务器。如果客户端也有相应需求,服务器端会同时执行控制操作。树莓派必须持续处理异步中断。系统设计为:当温度超过预设阈值时,控制设备将自动关闭,同时向用户发送电子邮件和短信。嵌入式网页采用超文本标记语言(HTML)编写和设计,界面友好,以避免客户端操作过于复杂。客户端可通过嵌入式Web服务器访问远程设备,只需使用有效的用户名和密码登录页面,几秒钟内即可访问所有数据。

示意图0

2.2 硬件设计

2.2.1 树莓派

树莓派是在英国开发的一种信用卡大小的计算机。它与普通计算机不同,不仅尺寸小巧,而且能够与电子元件集成,这在设计嵌入式Web服务器时至关重要。相比传统的微控制器,树莓派具有更大的内存容量和更强大的处理器,使其成为处理任务的理想选择嵌入式应用。使用树莓派作为嵌入式Web服务器的需求可以从以下事实理解:控制设备时,微控制器是不错的选择,但若需远程控制,则树莓派因其512兆比特的内存容量和能够提供700兆赫的时钟频率而脱颖而出。使用树莓派的方法多种多样,从控制LED到初步了解操作系统均可实现。这是试验开发板并理解其内部工作原理的最佳方式。它内置了多种语言的编译器,其中对Python语言的支持最佳,因为树莓派中的“pi”即代表Python。该模块还有一个显著优点,就是此平台价格低廉。与其他计算机一样,树莓派也需要操作系统,其所使用的操作系统为Raspbian。数字和模拟输出由HDMI端口提供。该处理器具有一些需要特殊设备驱动程序的功能,但这些驱动程序并未包含在其Linux发行版中。

2.2.2 数字温度传感器

使用的传感器是DS1820数字温度计,可提供9位至12位的温度读数,且分辨率通常由用户控制。DS1820可在–55°C至+125°C范围内以0.5°C(分辨率)为增量进行温度测量。信息通过单线接口从DS1820传输,因此只需将一根导线连接到GPIO引脚,避免了不必要的布线。

2.3 软件设计

2.3.1 SQLite和Apache

SQLite是提供数据库管理系统的公共领域软件包之一。与其他平台在复杂性、管理等方面相比,SQLite具有轻量级的独特优势。SQLite的小型代码尺寸和保守的资源使用方式使其非常适合在资源有限的操作系统上运行的嵌入式系统。Apache HTTP服务器软件或程序在操作系统后台运行,为用户和其他连接到它的应用程序(如客户端Web浏览器)提供多任务处理和服务。Apache Web服务器提供了一整套网络服务器功能,包括通用网关接口、安全套接层和虚拟域名。

2.3.2 Cron作业表

软件工具Cron是一种在类UNIX操作系统中的基于时间的作业调度程序。它用于安排作业(命令或shell脚本)在固定的时间、日期或间隔周期性地运行。它具备在从断电中恢复后重新启动执行的能力。

3. 方法论

该系统应能够从远程区域采集数据并进行存储,且在另一端的客户端需要时能够重现这些数据。DS1820是用于采集温度的传感器。系统还提供了从客户端控制电子元件的功能,通过控制一个LED进行了演示。

方法论是这样的:在远程区域设有温度传感器和LED,它们连接到树莓派模块,该模块在此作为微型计算机使用。系统将连续监控传感器,并使用轻量级数据库管理系统SQL将数据存储到数据库中。由于数据以非常高的频率存储,大量不必要的数据会持续存入内存,导致内存空间被占满。为了避免这种不良情况,使用了Cron作业,它本质上是类UNIX操作系统中的作业调度器。这有助于按用户设定的固定时间间隔来安排和更新数据库中的数据。因此,每隔五分钟(由用户定义),Cron作业会自动执行程序,并将温度值存储到数据库中。

示意图1
示意图2

4. 实验结果

图4展示了树莓派模块在启动时连续采集的温度值,这些数据会在终端屏幕上以不同的时间间隔显示。这些数据将由SQLite管理,用于将数据存储在内存中,并定期清除不必要的数据,以防止内存溢出。

示意图3

图5显示了一个用于验证用户身份的登录页面。它会动态检查用户提供的凭据,以便向该用户授予访问网络服务器信息的权限。目前,已创建单个用户的登录名和密码信息。这可以根据系统的内存尺寸扩展到多个用户。

示意图4

图6展示了在客户端设计的控制开关,以便客户端可以从远程区域控制设备。控制操作可以是在客户端端控制LED或电机。

示意图5

5. 系统优点

5.1 现有工作

使用单芯片进行数据采集的方法在处理能力方面存在局限性,且在产生响应式输出方面也较为滞后。传统的网络服务器需要大量的内存和空间,这也会导致成本增加。现有系统与proposed系统之间的比较如表1所示。

5.2 提出的工作

尺寸、成本和功耗问题通过使用树莓派模块得以解决,因为树莓派模块在传统系统表现不佳的各个领域均表现出色。使用树莓派作为网络服务器,我们不仅能够从服务器接收数据,还能通过正确认证控制远程区域中的设备。

6. 结论

工业领域的快速发展要求高效地实施网络服务器。树莓派嵌入式Web服务器是一种有效的解决方案,可根据客户端需求获取数据,并以图表形式显示当前值和先前值,这在对比中尤为突出。与使用基于PC的Unix服务器的传统方法相比,该系统在降低成本和面积需求方面起着至关重要的作用。该模块具有一个优势,即在断电后无需人工干预即可继续运行。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值