Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8768|回复: 69

C#上位机源码串口调试助手

  [复制链接]

该用户从未签到

4

主题

166

帖子

334

积分

普通会员

Rank: 2

积分
334
发表于 2022-7-19 10:27:01 | 显示全部楼层 |阅读模式
是杰杰之前做的
- X# B- ?' \; Q% A3 G+ ~+ k4 K5 f* c一个参赛小作品
* A4 \  o6 ~; I' z6 i# I8 S! w+ |- n$ o, K3 E2 l; m9 n/ _0 c
其实在做这个恒温控制系统项目的时候,师弟就问我,什么是上位机。。。。。可能很多师弟师妹都没一个大概的概念。
& R: F: e% O2 U6 n. l; T* \, a
0 U9 v1 e* m8 c现在,就来看下什么是上位机:! j+ S& I6 ?' u0 x

. h: i: }5 j+ C: k! Q4 T     上位机是指可以直接发出操控命令的计算机,一般是PC/host computer/master computer/upper computer,屏幕上显示各种信号变化(液压,水位,温度等)。下位机是直接控制设备获取设备状况的计算机,一般是PLC/单片机single chip microcomputer/slave computer/lower computer之类的。上位机发出的命令首先给下位机,下位机再根据此命令解释成相应时序信号直接控制相应设备。下位机不时读取设备状态数据(一般为模拟量),转换成数字信号反馈给上位机。简言之如此,实际情况千差万别,但万变不离其宗:上下位机都需要编程,都有专门的开发系统。9 S7 j5 p/ s0 y7 `1 y. W0 q
# d, s5 s( ~6 [
在概念上,控制者和提供服务者是上位机,被控制者和被服务者是下位机,也可以理解为主机和从机的关系,但上位机和下位机是可以转换的。
; g+ O' T* {  J1 n  W5 U, q6 h; F$ W+ D( i

+ i  F; M3 L8 I* L) g) P6 ^. Y  p3 J( }1 O4 R/ K8 `, N
工作原理
% a3 `$ a; y3 Y
2 L- U0 o% K  b9 a; ]; @) N* Q) E    两机如何通讯,一般取决于下位机,TCP/IP一般是支持的,但是下位机一般具有更可靠的独有通讯协议。通常上位机和下位机通讯可以采用不同通讯协议,可以有RS232的串口通讯或者采用RS485串行通讯。采用封装好的程序开发工具就可以实现下位机和上位机的通讯,当然可以自己编写驱动类的接口协议控制上位机和下位机的通讯。. T3 n. A1 A4 n4 y8 G$ `

: L  t3 L0 Y& X4 e1 H5 S通常工控机,工作站,触摸屏作为上位机,通信控制PLC,单片机等作为下位机,从而控制相关设备元件和驱动装置。: F" r! L5 i, m: z7 u
5 e& u; q1 m$ h3 @+ [/ P4 w
" u; V% ]# k' o+ X. G" p4 w) |9 {

( m9 r- }$ ~) ?既然差不多知道什么是上位机与下位机,那么,我们做到小喇叭的要求:就得写个上位机,我自己也是学了下C#,用来开发上位机还是可以的,开发环境用visual studio 2015,微软的软件真的是很简单,之前看到有人问为什么微软的软件是最多人用的,答:因为那是傻瓜式操作。。。。。我不得不认同。。。  
& X( {$ Q; g% S1 O" H9 B
1 s  A: ^  i# F5 `* J6 Q1 ~% L; J

8 I8 S  ^8 z  ]; y0 l回归正题:先看看我们的上位机有什么功能:+ C$ H& {, }" w/ n
/ g5 s9 R0 S5 ^" Y# E: X
1)能够实现与下位机的正常通讯。这必须得有,不然算哪门子上位机啊。
3 C; w/ }, x& R! z0 Q9 Z
6 S+ E: a0 x' Z9 K$ @2 H2)能够控制我们的恒温系统,通过电脑控制恒温系统的温度。这种应用场景很正常,我在机房就能控制我某一个地方的温度,简单方便。3 q# l0 B% ~: i1 y4 A: J
, {: E+ c" O" E! X  c
3)能够实时显示温度与波形。这种应用的场景也是非常常见,实时显示温度我们可以知道温度是否正常,而波形我们能快速看出恒温系统空间温度是否出现异常。
+ K& x4 P. s* [( S9 S" y6 j. M4 {0 }1 a& m5 ^" l! T8 u
4)数据保存功能,自动将实时的温度保存下来,加入 日期与时间,方便以后排查问题的时候用于检测某段时间的温度是否正常,这也是很使用的功能。  h; I" C' @4 }, @! F, d
  o4 U' D9 f1 k- t. q9 m1 C0 [4 i
( R5 b% Q0 |' m

5 B! H" i( X. @      说了那么多,看看我们的上位机。由于我以前用的别人的上位机都是色调比较单一的,而我,又是那种比较活泼开朗的人,觉得单一的灰色调比较死沉,我不喜欢,当然那是别人做的上位机,即使再不喜欢,要用还是要用,没办法,
" X* Z, @$ X; ]8 G: X
" ]' t& W8 Z, C4 x: d现在我自己做的就不一样了,得给他做个五颜六色出来。亮瞎眼。。。。。
6 Z$ _( U& B+ g. ^0 Q, Q4 |- C6 ?  u' b9 z( w4 B
1.png* e) e! W3 W1 D, F* {
$ D2 X( Z7 n$ l
2.jpg/ y  T6 N  x3 j( ?0 ~; a# @
9 f/ V# d' E1 O* ~0 f0 I6 W
3.jpg
3 D& I- e5 A" d+ z8 F- ~8 u# C: ]' A& K, n$ u
当我们的温度达到目标温度的时候,下位机就会控制自己的温度,以保持温度恒定,同时在上位机显示看到温度为一条曲线,由于我设置的温度为整数,没有小数,但是我们通过下位机可以看到实时的温度,精确在0.4范围左右。% V0 k# i2 {5 P4 G/ _9 C
2 x5 l  \' [9 `+ L# K* F
4.jpg
  j( {  ~6 L( O  y# N! X, T; G  w: `/ ]
当我们把上位机与下位机通讯协议切断,可以看到上位机接受不到数据(在软件右下角粉红色的窗口,没有显示接收到的数据),上位机的波形就会回到默认值(0°),就是上图的样子
+ r4 q! A) M% I& ?: W& V
% B6 Z  |4 ^6 b5.jpg- V# @0 f' b( k& [- v
$ ]$ M4 R' R% W. Y6 D
6.jpg0 p1 V" t  n7 Q; w

& ~# b. v1 s$ P8 S; M: }6 j6 H当我们需要后期的检测与排除故障的时候,我们可以从我们保存的温度来做简单的排查,上位机自动保存的温度数据,精确到某天某时某分某秒,简单方便。也是一个很实用的功能当没什么故障的时候,我们只需要隔一段时间吧数据清一下就OK了。
* G  \( m9 g( i) j* m2 ]) E4 s% T$ `. U5 H7 d- j  I8 }  N. q9 w

6 _- s" s6 f7 [1 B% }: d1 [" X6 @3 E; N- ^' w& T' U
附上作品视频:http://v.youku.com/v_show/id_XMz ... amp;from=s1.8-1-1.2
9 @) J3 @" F) P7 D
2 k$ C& n$ B1 P! L$ I本次上位机介绍到此结束, z. A2 C$ C- E( a  I( C8 ~3 v: T4 m

5 i: h4 ?% C! M; d6 ]) c2 p
8 Q) E; K# S# u  c
) u& X9 G* Y1 Y) e- h5 e源码文件会可以关注关注获得。
. u  n/ c. T5 w* k5 G8 w/ e9 }0 m$ v2 j1 M0 l: a$ W. S$ m  }) @8 u
或者CSDN下载连接:9 x& A- w: S9 y! p5 n5 j
7 i3 J9 Z) h/ F! D! U, e. O

/ s- j% S- [: ^$ i" `# x
, @2 r. Y  [/ X本上位机仅为杰杰个人娱乐,不做商业用途。# h: k! C  O+ r% Z
! y$ Z+ C: p( l$ z3 ^# v! K! |
如需转载请说明出处。
7 ]! L; }0 h7 ~1 r/ N% J
1 a5 |! r# h0 a' `1 B# R欢迎关注“创客飞梦空间”7 y2 Z$ [( d" t. O/ G

# K% s: ^( d! y干货不间断
: W3 n5 u/ w0 `' w* d: a. Y; @- E# N' k! [  q( U
在未来的日子里* D0 w: D# R" t! q

$ t, l( t3 V4 f/ \创客飞梦空间与你们同在,放飞我们的梦想
/ V1 X* W2 B/ O8 e! I5 b
9 Y3 Z  u8 {3 y. s/ v# s资源下载地址和密码(百度云盘):
游客,如果您要查看本帖隐藏内容请回复
[/hide] 百度网盘信息回帖可见
' \0 N4 O) D9 y& \% [! p7 e$ r' z" i8 Q- z8 A
  ?4 }5 B' e) I2 [& ?! N6 W2 e
; q% _8 X- o) a, i
本资源由Java自学网收集整理【www.javazx.com】
回复

使用道具 举报

该用户从未签到

5

主题

159

帖子

317

积分

普通会员

Rank: 2

积分
317
发表于 2022-7-19 09:38:57 | 显示全部楼层
看看这个感谢楼主分享谢谢了
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

124

帖子

252

积分

普通会员

Rank: 2

积分
252
发表于 2022-7-19 09:43:27 | 显示全部楼层
谢谢分享 学习下
回复 支持 反对

使用道具 举报

该用户从未签到

8

主题

158

帖子

298

积分

普通会员

Rank: 2

积分
298
发表于 2022-7-19 09:50:31 | 显示全部楼层
C#上位机源码串口调试助手
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

180

帖子

344

积分

普通会员

Rank: 2

积分
344
发表于 2022-7-19 09:56:26 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

138

帖子

264

积分

普通会员

Rank: 2

积分
264
发表于 2022-7-19 10:01:27 | 显示全部楼层
谢谢分享!
回复 支持 反对

使用道具 举报

该用户从未签到

10

主题

178

帖子

364

积分

普通会员

Rank: 2

积分
364
发表于 2022-7-19 10:13:10 | 显示全部楼层
谢谢楼主分享!!
回复 支持 反对

使用道具 举报

该用户从未签到

4

主题

174

帖子

330

积分

普通会员

Rank: 2

积分
330
发表于 2022-7-19 10:19:34 | 显示全部楼层
谢谢楼主分享 下来看看
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

168

帖子

342

积分

普通会员

Rank: 2

积分
342
发表于 2022-7-19 10:23:14 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

138

帖子

0

积分

普通会员

Rank: 2

积分
0
发表于 2022-7-19 10:33:30 | 显示全部楼层
写的不错,强烈支持。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|Java自学网

GMT+8, 2025-2-22 16:32 , Processed in 0.666232 second(s), 26 queries .

Powered by Javazx

Copyright © 2012-2022, Javazx Cloud.

快速回复 返回顶部 返回列表