上位机与下位机通信的设计初步-PLC技术网(www.plcjs.com)-可编程控制器技术门户


上位机与下位机通信的设计初步

 (点击题目可以在互联网中搜索该题目的相关内容)
日期:2006-5-4 23:28:22     来源:本文摘自《PLC&FA》   作者: 点击:
点击【  大  中   小 】,可以选择字体的大小,以便你阅读.

1  引言

现代化集中管理需要对现场数据进行统计、分析、制表、打印、绘图、报警等,同时,又要求对现场装置进行实时控制,完成各种规定操作,达到集中管理的目的。加之单片机的计算能力有限,难以进行复杂的数据处理。因此在功能比较复杂的控制系统中,通常以PC机为上位机,单片机为下位机,由单片机完成数据的采集及对装置的控制,而由上位机完成各种复杂的数据处理及对单片机的控制。

2  PC机与单片机8051之间的通信特点

在工业控制系统中,各种数据的采集和执行机构的控制都是由下位机或探测站来完成。由于单片机具有体积小、价格低廉、可应用于恶劣工业环境的特点,在分布式控制系统中大多采用单片机作为下位机来进行数据采集和现场控制。在这些应用中,单片机只是直接面向被控对象底层。而对采集到的数据进行进一步分析和处理的工作是由功能强大的主控PC机来完成的。因此,PC机和单片机之间就有着大量的数据交换。

3  PC机与单片机8051通信的硬件设计

通常PC机和单片机之间的通信是通过串行总线RS-232实现的。因此采用一种以MAX232为核心的通信接口电路。该接口电路适用于由一台PC机与多个8051单片机串行通信的设计,其原理和方法同样适用于PC机与其它单片机之间的串行数据通信。其原理框图见图1:


图1   单片机与PC机通信原理框图


该框图中,起着重要作用的是RS-232C通信接口电路。它是上位机和下位机之间信息传递的枢纽,一切数据的传输必需由它完成,上位机直接利用它的RS-232串行口,为此,采用了RS-232串行通信来接收或上传数据和指令。但RS-232信号的电平和单片机串口信号的电平不一致,必须进行二者之间的电平转换。在此电路中,采用MAX232实现TTL逻辑电平和RS-232电平之间的相互转换。 MAX232由单一的+5V电源供电,只需配接5个高精度10μF/50V的钽电容即可完成电平转换。因此,避免了用1488和1489时必需两路电源的麻烦。转换后的串行信号TXD、RXD直接与PC机的串行口连接。如此设计,既可发挥出PC机强大的计算和显示功能,又可以体现出单片机灵活的控制功能,有利于对现场信号的实时采集、处理和监控。

3.1  8051与PC机之间的通信协议
在许多场合的测控系统中,约定PC机和8051单片机的通信协议为:
Number+Command+Length+Data+Check
Number:下位机的机号,若设计中有3台下位机,即Number 取01H,02H,03H,分别代表:#1,#2,#3号下位机;
Command:本次命令的代码;Length:本次发送数据段的字节数;
Data:要发送的数据段;
Check:1字节的校验码。
本设计只考虑一个8051单片机,故可对上述通信协议进行简化。

3.2  8051和PC机之间通信的软件设计
VB提供了串行端口控件Mscomm方便应用程序实现串行通讯,该控件屏蔽了通信过程中的底层操作,程序员应用时只需设置、监视Mscomm控件的属性和事件即可完成对串行口的初始化和数据的输入、输出工作。汇编语言是一种执行效率高、可读性强的语言。为实现通讯正常,PC机与单片机约定如下:
波特率:2400bps;
信息格式:1个起始位,8位数据位,1个停止位,无奇偶校验位;
串行口操作模式:标准异步串行通信,串行口模式1;
传送方式:PC机采用查询方式接收数据,8051单片机采用中断方式接收信息。
(1) 总体功能设计
通过综合分析,本系统至少应具备如下功能:
l PC机与单片机8051都可发送和接收数据,进行可以异步串行通信;
l PC机键盘输入发送给单片机8051,单片机接收PC机发来的数据并送LED显示;
l 单片机8051键盘的每次输入以BCD码送给单片机的LED显示,单片机发送的数据由四次按键的BCD码组成,发送时作为一个队列发送,PC机接收单片机发送来的数据并送窗口显示;
l 上位机程序即PC端程序采用VB6.0制作,人机界面友好,界面简洁,功能完善,下位机程序即单片机端采用汇编语言进行开发。

本新闻共2页,当前在第11 2  

上一篇: 组态王与西门子S7-200的几种通信方式
下一: 异类现场总线协议转换与集成方法探讨