C# 开发的环境监测上位机应用
前言
在工业和科研领域,环境监测系统的重要性日益凸显。上位机软件作为环境监测系统的关键组成部分,负责数据采集、处理和显示,对提高监测效率和准确性起着至关重要的作用。
本文将向大家介绍一款用 C# 开发的环境监测上位机软件。
软件介绍
本上位机软件为广西北海渔场监控项目定制的监控上位机软件。

开发环境
开发工具:Visual Studio 2019
开发框架:WinForms
使用控件:BeauGaugeInstrumentationSuitePro
主要语言:C#
主要功能
1、使用环境
- 在数据资料目录下先安装以下控件和软件
- 安装 BeauGaugeInstrumentationSuitePro 控件:
- 运行BeauGaugeInstrumentationSuitePro.msi 安装包进行安装。
- 安装上位机软件
- 运行北部湾深海网箱养殖水质环境监控系统.msi 安装包进行安装。
- 或者,您可以下载绿色版压缩文件,解压后直接双击运行recvdatasection.exe文件。
2、界面介绍
本上位机软件分为3个从监测节点和1个主监测节点:
- 从节点:温度、盐度、浊度、PH值、溶解氧
- 主节点:气温、风速、气压、俯仰角、横滚角、雨量、经纬度
同时,软件还隐藏了3个备用从节点,以备不时之需。

3、重启
软件菜单重启按钮:重新内部启动上位机软件
4. 设备管理
可以进行各种设备的管理。
点击打开和关闭则对应的相关设备进行通电和断电操作。

5、数据查看
对应监测点数据曲线图




历史曲线图需点击如下图箭头所示按钮,弹出当天的数据信息如下所示:




6、历史数据
可以进行各种历史数据操作,可以选择历史时间点并打开该天的数据图。
7、低信号模式
当下位机数据传输不稳定或者节点开启但无数据显示可打开低信号模式。
8、阈值设置
点击阈值设置按钮可展出阈值设置界面,再次点击隐藏,如下图:

初始化阈值设定:点击初始化阈值设定按钮打开初始阈值界面,可设定传感器数据监测范围,设定完后保存。点取消退出设定界面。初始阈值数据保存本地,即软件刚使用时设定完即可,一般不可更改。

重置:重置按钮即将初始化设定的阈值数据全部覆盖当前阈值范围数据,并关闭监测的作用。
一键开启:打开全部传感器监测数据。可手动单独开启,开启按钮提示为蓝色,关闭为白色。
若监测点数据异常在消息界面以黄色警告字体提示,同时阈值显示界面异常数据文本变红色,且每分钟自动播放2秒提示音。


项目地址
Gitee:https://gitee.com/tytokongjian /beihai-host-computer
总结
此为北海项目中的一部分。监控上位机模板项目,应用于实际生产环境,需要下位机传感器配合使用。
希望通过本文能为大家在上位机软件开发方面提供有价值的参考。欢迎在评论区留言交流,分享您的宝贵经验和建议。
最后
如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。
也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

C# 开发的环境监测上位机应用的更多相关文章
- (原创)使用C#开发高性能PLC上位机监控系统服务器应用程序
PLC服务器监控系统的特点: 1·使用微软C#面向对象开发语言开发应用程序.2·使用了健壮性与性能良好的SUPER SOCKET服务器通信框架,实现自定义应用层通信协议,支持多台PC客户端访问服务器, ...
- C#上位机开发(一)—— 了解上位机
在单片机项目开发中,上位机也是一个很重要的部分,主要用于数据显示(波形.温度等).用户控制(LED,继电器等),下位机(单片机)与 上位机之间要进行数据通信的两种方式都是基于串口的: USB转串口 — ...
- Winform 快速开发框架,上位机开发,工控机程序开发,CS程序开发
1.当客户让你做个CS程序时,当你手上一穷二白,所有都要重复造轮,你是不是很烦. 2.但如果有一个通用的,快速开发框架,就可以把你从这些基础的工作解救出来,你专注做业务就好了. 3.本人其中一个项目的 ...
- [自娱自乐] 4、超声波测距模块DIY笔记(四)——终结篇·基于C#上位机软件开发
前言 上一节我们已经基本上把超声波硬件的发射和接收模块全部做好了,接下来我们着手开发一个软硬结合的基于C#的平面定位软件! 目录 一.整体思路 二.效果提前展示 2-1.软件部分展示 2-2.硬件部分 ...
- MFC开发上位机到底用Dialog结构还是文档结构?
最近要跟着导师一起开发一款大型上位机.MFC新人在考虑用对话框结构还是文档结构. 虽然说书上说大型结构的软件都需要文档结构,但是目前来看,对话框可以实现功能,并且对话框的程序更小一些,节省资源加载速度 ...
- vc++MFC开发上位机程序
用vc++MFC开发过不少跟单片机通讯的上位机程序了.搞懂了MFC架构,开发还是很快的,与底层单片机程序通讯,可以用串口.usb.网络.短信形式.串口现在用的越来越少了,一般电脑跟单片机在一块,使用串 ...
- 【专题教程第8期】基于emWin模拟器的USB BULK上位机开发,仅需C即可,简单易实现
说明:1.如果你会emWin话的,就可以轻松制作上位机.做些通信和控制类上位机,比使用C#之类的方便程度一点不差,而且你仅会C语言就可以.2.并且成功将emWin人性化,可以做些Windows系统上的 ...
- 1-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(来看一下怎么样监听网络数据,监听电脑上位机软件的数据)
首先安装网络监听软件 运行这个软件 这个软件安装到电脑上,默认是监听咱电脑上的网络通信 咱们先监听电脑的软件的网络通信数据,然后再说怎么监听Wi-Fi和APP的软件的网络通信数据 咱就监听咱基础篇的 ...
- CY7C68013 USB接口相机开发记录 - 第四天:上位机编写1
前面学习了USB相机硬件固件.设备驱动,可以实现USB设备识别.数据发送的功能.然后,非常重要的一部分,USB设备发出的数据,我要怎么接受,怎么查看发送的数据是否是正确的.网上百度了下,大部分人都使用 ...
- 基于uFUN开发板的心率计(三)Qt上位机的实现
前言 上两周利用周末的时间,分别写了基于uFUN开发板的心率计(一)DMA方式获取传感器数据和基于uFUN开发板的心率计(二)动态阈值算法获取心率值,介绍了AD采集传感器数据和数据的滤波处理获取心率值 ...
随机推荐
- 【漏洞分析】OSN 代币攻击事件:一笔资金伪造多个分红大户
背景 OSN 是一种 fee on transfer 代币,会根据用户分红账户的余额对用户发放分红.攻击者利用漏洞增发分红账户的余额,随后触发分红机制完成获利. OSN:https://bscscan ...
- 怎样防止浏览器自动将http网址转变为https
Chrome 浏览器 地址栏中输入 chrome://net-internals/#hsts 在 Delete domain security policies 中输入项目的域名,并 Delete 删 ...
- docker network macvlan
ref: Docker 网络模型之 macvlan 详解,图解,实验完整 网卡也能虚拟化?网卡虚拟化技术 macvlan 详解 docker和macvlan与host互通
- node: /lib64/libm.so.6: version `GLIBC_2.27‘ not found问题解决方案
场景 centos7服务器使用nvm安装的node之后,只要使用npm或者node,均会出现以下问题. npm -v node: /lib64/libm.so.6: version `GLIBC_2. ...
- Python网页应用开发神器Dash 2.18.1稳定版本来啦
本文示例代码已上传至我的Github仓库:https://github.com/CNFeffery/dash-master Gitee同步仓库地址:https://gitee.com/cnfeffer ...
- angular cli, vs code liveserver, vs 2019 iis express 10, vs code kestrel 使用 https + ip
更新: 2022-03-20 修订版: Vs Code, Visual Studio 2022, Angular and Live Server Running Through Https and I ...
- OData – Query to Expression
前言 EF Core 可以把 expression 转换成 string, 但没办法转回来. 想把 string 转成 expression, 目前最合适的工具是 OData. 虽然 Dynamic ...
- JDBC——案例
创建一个商品表 drop table if exists tb_brand; -- 创建tb_brand表 create table tb_brand( id int primary key auto ...
- Qt表格入门
摘要 表格作为数据展示的界面,会在很多场景下使用.Qt为我们提供了使用简单方便和扩展性强的表格视图,这里做一个简单的入门整理. 个人能力有限,有错误欢迎留言指正,如果你有更好的方法,也 ...
- 《Vue.js 设计与实现》读书笔记(1-3章)
第 1 章.权衡的艺术 命令式 or 声明式 命令式:关注过程 声明式:关注结果 声明式直接声明想要的结果,框架帮用户封装好命令式的代码,所以在封装的过程中要做一些其他的事情来(生成要做的事情/找出差 ...
