完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
1、 上位机介绍
上位机是指可以直接发出操控命令的计算机,一般是PC,通常用于屏幕上显示各种信号变化(液压,水位,温度等),并将这些数据存储下来,供分析。 下位机是直接控制设备,获取设备状况的计算机,一般是PLC(Programmable Logic Controller)/单片机(考虑一块板子上单片机与传感器的关系)。 2、 与下位机交互 上位机发出的命令首先传给下位机,下位机再根据命令解释成相应时序信号直接控制相应设备。下位机不时通过读取设备状态数据(一般为模拟量),转换成数字信号反馈给上位机。 3、应用实例 下面举个上下位机应用的实例场景。我们现在有个房间,我们需要实时监测这个房间的环境状态,主要是监测房间的温度、湿度,让它们维持在一定的值左右,过高过低都不行。 传统情况下,我们会在房间里装上温湿度计,然后派个工作人员,定期的去查看房间内温湿度计的值,针对过高过低的情况,采取一些措施。那么这种情况,有些不足,一是需要人定时去看,很麻烦,二是实时性非常差,很有可能环境的状态已经异常了,这个时候工作人员不在场,导致不能及时地采取措施调整环境而引发意外。 若我们使用一套自动化的环境监测设备,那么我们可以在房间中,装上电子远传式的温湿度计(下位机),将温湿度计的状态实时远传到监测系统(上位机)。工作人员只需要坐在电脑前,查看远传而来房间状态,若出现异常,可以通过上位机控制室内处理异常的设备(如温度过高,远程开空调),就可以不到现场便能处理异常。甚至如果设备系统更加自动化,上位机本身便可以根据通过下位机发来的数据是否正常,而做出一些操作,都不需要人来操作。 当然,实际环境可能会有所差异,举这个土味的例子只是为了形象地介绍上、下位机。 4、两者关系 看到这边你会发现上位机的存在实际上是依赖下位机的(需要硬件支撑)。如果没有下位机,上位机就没有数据来源,没有任何作用。而没有上位机,对下位机来说没有太大影响,下位机可以在自身的程序中添加一定自动化的功能,很多时候不需要上位机也行。 但实际上大多数情况上下位机是相辅相成的,一个合理有效的上位机可以节省大量人力物力。甚至很多情况下,如恶劣的环境、复杂的环境监测、精密的设备控制,上位机是必不可少的。 总的来讲,上位机对下位机的操作大类上只有两种,读&写。改变下位机状态,操控下位机,都是写操作。获取设备数据便是读操作。两者的基本关联非常简单。因此,或许你会认为上位机是技术含量较低的程序。其实不然,凭我个人理解,下位机的代码逻辑通常较单一,但是下位机种类非常多变,每种设备上的外设都不大一样。而上位机,通常运行的环境是比较单一的,但是要与多种下位机通信,还会涉及到UI,存储,复杂点的还有数据分析,庞大的上位机程序代码逻辑还是挺复杂的,涉及的技术也广。一个优秀的上位机复用性非常强,对相近设备的操控,仅仅需要修改协议即可。 5、开发工具 上位机开发通常使用c++(Qt、mfc)、c#(.net)、vb。其中就目前的情况来看,Qt和.net应该是目前应用相对比较广的。vb和mfc都是比较老旧的工具,做的界面也比较有年代感。其中,新版本的Qt还支持用Python来编写,制作的上位机程序也是不错的。其他,一些组态软件是专门做上位机软件的,像组态王、力控,相当于是二次开发,门槛较低一些,操作也比较简单,但是拓展性差。 |
|
|
|
只有小组成员才能发言,加入小组>>
664浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-18 14:57 , Processed in 0.563757 second(s), Total 80, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191