[分享] 开源一个温度控制的上位机
13654 查看
174 回复
 楼主 | 发布于 2017-11-20 | 只看楼主
分享到:

     大家好,我是杰杰。

    其实在做这个恒温控制系统项目的时候,师弟就问我,什么是上位机。。。。。可能很多师弟师妹都没一个大概的概念。

现在,就来看下什么是上位机:
     上位机是指可以直接发出操控命令的计算机,一般是PC/host computer/master computer/upper computer,屏幕上显示各种信号变化(液压,水位,温度等)。下位机是直接控制设备获取设备状况的计算机,一般是PLC/单片机single chip microcomputer/slave computer/lower computer之类的。上位机发出的命令首先给下位机,下位机再根据此命令解释成相应时序信号直接控制相应设备。下位机不时读取设备状态数据(一般为模拟量),转换成数字信号反馈给上位机。简言之如此,实际情况千差万别,但万变不离其宗:上下位机都需要编程,都有专门的开发系统。
在概念上,控制者和提供服务者是上位机,被控制者和被服务者是下位机,也可以理解为主机和从机的关系,但上位机和下位机是可以转换的。

工作原理
    两机如何通讯,一般取决于下位机,TCP/IP一般是支持的,但是下位机一般具有更可靠的独有通讯协议。通常上位机和下位机通讯可以采用不同通讯协议,可以有RS232的串口通讯或者采用RS485串行通讯。采用封装好的程序开发工具就可以实现下位机和上位机的通讯,当然可以自己编写驱动类的接口协议控制上位机和下位机的通讯。
通常工控机,工作站,触摸屏作为上位机,通信控制PLC,单片机等作为下位机,从而控制相关设备元件和驱动装置。

回归正题:先看看我们的上位机有什么功能:
1)能够实现与下位机的正常通讯。这必须得有,不然算哪门子上位机啊。
2)能够控制我们的恒温系统,通过电脑控制恒温系统的温度。这种应用场景很正常,我在机房就能控制我某一个地方的温度,简单方便。
3)能够实时显示温度与波形。这种应用的场景也是非常常见,实时显示温度我们可以知道温度是否正常,而波形我们能快速看出恒温系统空间温度是否出现异常。
4)我添加的功能,自动将实时的温度保存下来,加入 日期与时间,方便以后排查问题的时候用于检测某段时间的温度是否正常,这也是很使用的功能。

      说了那么多,看看我们的上位机。由于我以前用的别人的上位机都是色调比较单一的,而我,又是那种比较活泼开朗的人,觉得单一的灰色调比较死沉,我不喜欢,当然那是别做的上位机,即使再不喜欢,还是要用,没办法,现在我自己做的就不一样了,得给他做个五颜六色出来。

     上面两张图片,我们可以很直观看出,温度在不断上升,在调试信息窗口,我们可以看到当前的温度。
在波形控制台,我们可以很清晰看出温度波形曲线是呈上升状态的,因为还没到我们设定的温度。在调试窗口的最下面
我们可以设置恒温控制系统空间的温度。然后下位机就能根据我们设定的温度去达到温度的恒定。


当我们的温度达到目标温度的时候,下位机就会控制自己的温度,以保持温度恒定,同时在上位机显示看到温度为一条曲线,由于我设置的温度为整数,没有小数,但是我们通过下位机可以看到实时的温度,精确在0.4范围左右。

当我们把上位机与下位机通讯协议切断,可以看到上位机接受不到数据(在软件右下角粉红色的窗口,没有显示接收到的数据),上位机的波形就会回到默认值(0°),就是上图的样子


当我们需要后期的检测与排除故障的时候,我们可以从我们保存的温度来做简单的排查,上位机自动保存的温度数据,精确到某天某时某分某秒,简单方便。也是一个很实用的功能当没什么故障的时候,我们只需要隔一段时间吧数据清一下就OK了。




源码文件会在附件中。本上位机仅为杰杰个人娱乐,不做商业用途。源码改自开发快-小白哥的上位机


注意:波形显示的协议还要根据自己的来改写的,我是字符传输的

开发平台: visual studio 2015

语言:c#


欢迎大家关注杰杰个人公众号:创客飞梦空间



本帖有更多资源,需 登录 才可以下载,没有帐号?立即 注册

(0 ) (4 )
回复 举报

回复于 2017-12-26 71#

感谢分享
(0 )
评论 (0) 举报

回复于 2017-12-26 72#

来学习下
(0 )
评论 (0) 举报

回复于 2018-01-03 73#

分享下

(0 )
评论 (0) 举报

回复于 2018-01-12 74#

感谢楼主分享资源
(0 )
评论 (0) 举报

回复于 2018-01-25 75#

谢谢分享
(0 )
评论 (0) 举报

回复于 2018-02-01 76#

感谢分享
(0 )
评论 (0) 举报

回复于 2018-02-08 77#

看看,谢谢了
(0 )
评论 (0) 举报

回复于 2018-02-09 78#

好。
(0 )
评论 (0) 举报

楼主 | 回复于 2018-02-09 79#

自己顶下
(0 )
评论 (0) 举报

回复于 2018-02-10 80#

下来看看
(0 )
评论 (0) 举报
发表回复
0/3000





举报

请选择举报类别

  • 广告垃圾
  • 违规内容
  • 恶意灌水
  • 重复发帖

全部板块

返回顶部