资源描述
第二章第二章 工业控制计算机工业控制计算机n计算机控制系统在工业生产过程中应用广泛,控制计算机计算机控制系统在工业生产过程中应用广泛,控制计算机是计算机控制系统的主要组成部分,因而如何依据不同的是计算机控制系统的主要组成部分,因而如何依据不同的需求选择合适的控制计算机是实现计算机控制的基础。本需求选择合适的控制计算机是实现计算机控制的基础。本章主要从以下四部分介绍工业控制计算机的结构、特点、章主要从以下四部分介绍工业控制计算机的结构、特点、选择和有关的总线技术:选择和有关的总线技术:n 2.1、控制计算机的主要类型;、控制计算机的主要类型;n 2.2、IPC工控机的组成与特点;工控机的组成与特点;n 2.3、IPC总线结构;总线结构;n 2.4、MODBUS通信协议。通信协议。2.1 控制计算机的主要类型控制计算机的主要类型控制器控制器(计算机控制系统的主要部分)(计算机控制系统的主要部分)的种类主要有:的种类主要有:1.1.可编程控制器可编程控制器2.2.可编程调节器可编程调节器3.3.总线式工控机总线式工控机4.4.单片微型计算机单片微型计算机5.5.嵌入式处理器嵌入式处理器6.6.嵌入式微控制器嵌入式微控制器7.7.数字信号处理器数字信号处理器DSPDSP8.ARM8.ARM处理器处理器1.可编程控制器(可编程控制器(PLC)n是计算机技术与继电逻辑控制结合的产物:是计算机技术与继电逻辑控制结合的产物:低端为常规继电逻辑控制的替代装置,低端为常规继电逻辑控制的替代装置,高端为一种高性能的工业控制计算机。高端为一种高性能的工业控制计算机。n组成:组成:CPU、存储器、输入组件、输出组件、电源及编程、存储器、输入组件、输出组件、电源及编程器等组成。器等组成。1.可编程控制器(可编程控制器(PLC)n特点:数字运算操作的电子系统特点:数字运算操作的电子系统,专为工业环境下应用而设定;专为工业环境下应用而设定;可可编程序的存储器,编程序的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数在其内部存储执行逻辑运算、顺序控制、定时、计数和算术操作的指令,并通过数字式、模拟式的输入和输出;和算术操作的指令,并通过数字式、模拟式的输入和输出;n应用广泛,应用广泛,在顺序程序控制领域中具有优势,而且在运动控制、过程控制、在顺序程序控制领域中具有优势,而且在运动控制、过程控制、网络通信领域方面也毫不逊色;网络通信领域方面也毫不逊色;n系统构成灵活,系统构成灵活,扩展容易,编程简单,调试容易,抗干扰能力强。扩展容易,编程简单,调试容易,抗干扰能力强。n外观如图外观如图2-1所示。所示。图2-1 可编程控制器2.可编程调节器可编程调节器 可编程调节器又称单回路调节器、智能调节器、数字调节可编程调节器又称单回路调节器、智能调节器、数字调节器,主要由微处理单元、过程器,主要由微处理单元、过程IO(输入(输入/输出)输出)单元、面板单元、面板单元、通信单元、硬手操单元和编程单元等组成。外观如图单元、通信单元、硬手操单元和编程单元等组成。外观如图2-2所示。所示。图2-2 可编程调节器3.总线式工控机总线式工控机 总线式工控机,是基于总线技术和模块化结构的一种专用于工总线式工控机,是基于总线技术和模块化结构的一种专用于工业控制的通用性计算机,一般称为工业控制计算机,简称为工业业控制的通用性计算机,一般称为工业控制计算机,简称为工业控制机或工控机控制机或工控机IPC(Industrial Personal Computer)。)。总线式工控机设计特点:总线式工控机设计特点:小型化、模板化、组合化、标准化小型化、模板化、组合化、标准化 能满足不同层次、不同控制对象的需要,能满足不同层次、不同控制对象的需要,又能在恶劣的工业环境中可靠地运行。又能在恶劣的工业环境中可靠地运行。应用广泛:广泛应用于各种控制场合,应用广泛:广泛应用于各种控制场合,尤其是十几到几十个回路的中等规模的尤其是十几到几十个回路的中等规模的控制系统中。控制系统中。图图2-3 总线式工控机总线式工控机 单片微型计算机单片微型计算机(Single Chip Microcomputer)简称单片简称单片机,它是将机,它是将CPU、存储器、串并行、存储器、串并行I/O口、定时口、定时/计数器、甚计数器、甚至至A/D转换器、脉宽调制器、图形控制器等功能部件全都集转换器、脉宽调制器、图形控制器等功能部件全都集成在一块大规模集成电路芯片上,构成了一个完整的具有成在一块大规模集成电路芯片上,构成了一个完整的具有相当控制功能的微控制器相当控制功能的微控制器。具有较完善的接口,集成度高具有较完善的接口,集成度高(见嵌入式微控制器)。(见嵌入式微控制器)。4.单片微型计算机单片微型计算机5.嵌入式处理器嵌入式处理器n嵌入式系统是将专用微型计算机嵌入被控设备中的专用计嵌入式系统是将专用微型计算机嵌入被控设备中的专用计算机系统,适用于应用系统对体积、功能、可靠性、成本、算机系统,适用于应用系统对体积、功能、可靠性、成本、功耗等综合性能要求严格的场合。功耗等综合性能要求严格的场合。n具有以下特点:具有以下特点:1)对实时和多任务有很强的支持能力,能完成多任务并且)对实时和多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部代码和实时操作系统有较短的中断响应时间,从而使内部代码和实时操作系统的执行时间减少到最低限度。的执行时间减少到最低限度。2)具有功能很强的存储区保护功能。)具有功能很强的存储区保护功能。3)可扩展的处理器结构。)可扩展的处理器结构。4)嵌入式微处理器的功耗很低。)嵌入式微处理器的功耗很低。6.嵌入式微控制器嵌入式微控制器 嵌入式微控制器(嵌入式微控制器(Micro-controller Unit,简称,简称MCU)一)一般以某种微处理器内核为核心,根据某些典型的应用,在般以某种微处理器内核为核心,根据某些典型的应用,在芯片内部集成了芯片内部集成了ROM/EPROM、RAM、总线、总线逻辑、总线、总线逻辑、定时定时/计数器、看门狗、计数器、看门狗、I/O口、串行口、脉宽调制输出、口、串行口、脉宽调制输出、A/D、D/A、FLASH RAM、EEPROM等各种必要功能部等各种必要功能部件和外设。件和外设。具有较完善的接口,集成度高。具有较完善的接口,集成度高。7.数字信号处理器数字信号处理器DSP数字信号处理技术是当今的一个热门领域,世界上各大半导数字信号处理技术是当今的一个热门领域,世界上各大半导体公司纷纷推出适用于不同场合的体公司纷纷推出适用于不同场合的DSP芯片。在控制领域,芯片。在控制领域,比较有代表性的是比较有代表性的是TI公司的公司的 TMS320F240 x系列。系列。具有运算功能强大、速度快的特点。具有运算功能强大、速度快的特点。8.ARM处理器处理器ARM(Advanced RISC Machines),既可以认为是一个),既可以认为是一个公司的名称,也可以认为是对一类微处理器的通称,还可公司的名称,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名词。以认为是一种技术的名词。具有界面设计灵活的特点具有界面设计灵活的特点2.2 IPC工控机的组成与特点工控机的组成与特点 工业控制计算机工业控制计算机,简称工控机简称工控机,也称为工业计算机也称为工业计算机IPC。(Industrial Personal Computer)。它主要用于工业过程)。它主要用于工业过程测量、控制、数据采集等工作。以工控机为核心的测量和测量、控制、数据采集等工作。以工控机为核心的测量和控制系统,处理来自工业系统的输入信号,再根据控制要控制系统,处理来自工业系统的输入信号,再根据控制要求将处理结果输出到执行机构,去控制生产过程,同时对求将处理结果输出到执行机构,去控制生产过程,同时对生产进行监督和管理。生产进行监督和管理。主要内容有以下四部分主要内容有以下四部分:1.工控机硬件组成工控机硬件组成 2.工控机的软件组成工控机的软件组成 3.工控机的特点工控机的特点 4.IPC工控机的发展方向工控机的发展方向2.2.1 IPC工控机硬件组成工控机硬件组成主机板(主机板(CPU、内存储器)、内存储器)系统总线系统总线过程输入输出通道过程输入输出通道人机接口人机接口通信设备通信设备系统支持板系统支持板磁盘系统。磁盘系统。2.2.1 IPC工控机硬件组成工控机硬件组成图图2-4 工控机硬件组成结构图工控机硬件组成结构图1.主机板主机板 是工业控制机的核心,由中央处理器(是工业控制机的核心,由中央处理器(CPU)、存储器)、存储器(RAM、ROM)和)和I/O接口等部件组成。主机板的作用是将采接口等部件组成。主机板的作用是将采集到的实时信息按照预定程序进行必要的数值计算、逻辑判断、集到的实时信息按照预定程序进行必要的数值计算、逻辑判断、数据处理,及时选择控制策略并将结果输出到工业过程数据处理,及时选择控制策略并将结果输出到工业过程。2.系统总线系统总线 系统总线可分为内部总线和外部总线。内部总线是工控机内部系统总线可分为内部总线和外部总线。内部总线是工控机内部各组成部分之间进行信息传送的公共通道,是一组信号线的集合。各组成部分之间进行信息传送的公共通道,是一组信号线的集合。常用的内部总线有常用的内部总线有IBM PC总线和总线和STD总线。外部总线是工控机与总线。外部总线是工控机与其它计算机和智能设备进行信息传送的公共通道,常用外部总线其它计算机和智能设备进行信息传送的公共通道,常用外部总线有有RS-232C、RS485和和IEEE-488通信总线。通信总线。3.人人-机接口机接口 人人-机接口包括显示器、键盘、打印机以及专用操作显示台等。机接口包括显示器、键盘、打印机以及专用操作显示台等。通过人通过人-机接口设备,操作员与计算机之间可以进行信息交换。机接口设备,操作员与计算机之间可以进行信息交换。5.输入输入/输出模板输出模板 输入输入/输出模板是工控机和生产过程之间进行信号传递和变换输出模板是工控机和生产过程之间进行信号传递和变换的连接通道。包括模拟量输入通道(的连接通道。包括模拟量输入通道(AI)、模拟量输出通道)、模拟量输出通道(AO)、数字量(开关量)输入通道()、数字量(开关量)输入通道(DI)、数字量(开关)、数字量(开关量)输出通道(量)输出通道(DO)。)。6.系统支持系统支持系统支持功能主要包括:系统支持功能主要包括:监控定时器:俗称监控定时器:俗称“看门狗看门狗”(Watchdog)。)。电源掉电监测:电源掉电监测:后备存储器:后备存储器:实时日历时钟实时日历时钟7.磁盘系统磁盘系统半导体虚拟磁盘,软盘半导体虚拟磁盘,软盘,硬盘或硬盘或USB磁盘。磁盘。通信接口是工业控制机与其它计算机和智能设备进行信息传通信接口是工业控制机与其它计算机和智能设备进行信息传送的通道。送的通道。4.通信接口通信接口2.2.2 IPC工控机的软件组成工控机的软件组成 软件是工业控制机的程序系统,可分为系统软件、支持软件、软件是工业控制机的程序系统,可分为系统软件、支持软件、应用软件三部分。应用软件三部分。1.系统软件系统软件:系统软件用来管理系统软件用来管理IPC的资源,并以简便的形式向用户提供的资源,并以简便的形式向用户提供服务。服务。2.工具软件工具软件:工具软件是技术人员从事软件开发工作的辅助软件,包括汇工具软件是技术人员从事软件开发工作的辅助软件,包括汇编语言、高级语言、编译编语言、高级语言、编译 程序、编辑程序、调试程序、诊断程序、编辑程序、调试程序、诊断程序等。程序等。3.应用软件应用软件:应用软件是系统设计人员针对某个生产过程而编制的控制和应用软件是系统设计人员针对某个生产过程而编制的控制和管理程序。通常包括过程输入输出程序、过程控制程序、人管理程序。通常包括过程输入输出程序、过程控制程序、人-机机接口程序、打印显示程序和公共子程序等。接口程序、打印显示程序和公共子程序等。2.2.3 IPC工控机的特工控机的特点点IPC工控机主要有以下六个特点:工控机主要有以下六个特点:1.可靠性高可靠性高 2.丰富的输入输出模板丰富的输入输出模板 3.实时性好实时性好 4.开放性好开放性好 5.连续工作时间长连续工作时间长 6.便于安装便于安装2.3 IPC总线结构总线结构2.3.1 总线概述总线概述1.总线标准实际上是一种接口信号的标准和协议。总线标准实际上是一种接口信号的标准和协议。2.总线定义与分类总线定义与分类:总线是一组信号线的集合,它定义了引线的信号、电气、机总线是一组信号线的集合,它定义了引线的信号、电气、机械特性,是微机系统内部各组成部分之间、不同的计算机之间械特性,是微机系统内部各组成部分之间、不同的计算机之间建立信号联系,进行信息传送的通道。建立信号联系,进行信息传送的通道。总线总线:内部总线(系统总线)和外部总线(通信总线)。内部总线(系统总线)和外部总线(通信总线)。3.总线按功能或信号类型划分,主要有三类总线:数据总线、总线按功能或信号类型划分,主要有三类总线:数据总线、地址总地址总 线、控制总线。线、控制总线。4.总线主要有数据传输、中断、多主设备支持、错误处理等功总线主要有数据传输、中断、多主设备支持、错误处理等功能能。2.3.2 内部总线内部总线 内部总线是指微机内部各功能模块间进行通信的总线,也内部总线是指微机内部各功能模块间进行通信的总线,也称为系统总线。它是构成完整微机系统的内部信息枢纽。称为系统总线。它是构成完整微机系统的内部信息枢纽。常用的内部总线主要有常用的内部总线主要有STD总线、总线、VME总线、总线、ISA总线和总线和PCI总线。总线。1STD总线总线 1)、总线标准)、总线标准 STD总线即总线即Standard Bus,是一种规模最小,面向工业控制,是一种规模最小,面向工业控制,设计周密的设计周密的8位系统总线。位系统总线。2VME总线总线(1)VME总线,总线,Versamodel Eurocard由由Motorola公司公司1981年推年推出的第一代出的第一代32位工业开放标准总线,其主要特点是位工业开放标准总线,其主要特点是VME总线的信总线的信号线模仿号线模仿Motorola公司生产的公司生产的 68000系列单片机信号线,由于其系列单片机信号线,由于其应用的广泛性被应用的广泛性被IEEE收为标准,即收为标准,即IEEE1014-1987,其标准文件为其标准文件为VMEbus specification Rev C.1。(2)VME总线的插板一般有两种尺寸,一种是总线的插板一般有两种尺寸,一种是3U高度的带一个高度的带一个总线接口总线接口J1,高高长为长为100mm*160mm,另一种是,另一种是6U高度的带高度的带2个个总线接口总线接口J1、J2,高,高长为长为233mm 160mm。(3)一般每块)一般每块VME总线的插板上的接口总线的插板上的接口J1、J2都有都有96针,每一针,每一个接口都是个接口都是3排,按排,按A、B、C排列,每排排列,每排32针,针,J1一般用于直接一般用于直接与与VME总线相连,总线相连,J2的中间列的中间列 用于扩展地址总线或数据总线,用于扩展地址总线或数据总线,另外两列可由用户定义及另外两列可由用户定义及I/O、磁盘驱动及其他外设等。因此、磁盘驱动及其他外设等。因此VME总线已对未来的应用扩展预留了信号针,这也是总线已对未来的应用扩展预留了信号针,这也是VME总线总线将来可以灵活升级的原因。将来可以灵活升级的原因。3ISA总线总线 ISA总线总线(Industrial Standard Architecture)即即AT总线,它总线,它是在是在8位的位的XT总线基础上扩展而成的总线基础上扩展而成的16位的总线体系结构。位的总线体系结构。后来,在大多数后来,在大多数Pentium系列的系列的PC机主板上仍保留机主板上仍保留34个个ISA总线扩充槽,即可以插入总线扩充槽,即可以插入8位位ISA卡,又可以插入卡,又可以插入16位位ISA卡。卡。ISA总线插槽有一长一短两总线插槽有一长一短两个插口,长插口有个插口,长插口有62个引脚,个引脚,以以A31A1和和B31B1表示,表示,分别列于插槽的两面;短插口分别列于插槽的两面;短插口有有36个引脚,以个引脚,以C18C1和和D18D1表示,也分别列于插表示,也分别列于插槽的两面。槽的两面。ISA总线插槽如图总线插槽如图所示。所示。ISA总线插槽总线插槽4PCI总线总线 PCI总线(总线(Peripheral Component Interconnect,外围部件互,外围部件互连总线)具有先进的结构特性及其优异的性能,是现代微机系统连总线)具有先进的结构特性及其优异的性能,是现代微机系统总线结构中的佼佼者,并被多数现代高性能微机系统所广泛采用。总线结构中的佼佼者,并被多数现代高性能微机系统所广泛采用。(1)PCI总线的主要特点:总线的主要特点:1)传输率高;)传输率高;2)采用数据线和地址线复用结构,减少了总线引脚数;)采用数据线和地址线复用结构,减少了总线引脚数;3)总线支持无限猝发读写方式和并行工作方式;)总线支持无限猝发读写方式和并行工作方式;4)总线宽度为)总线宽度为32位(位(5V),可升级为),可升级为64位(位(3.3V););5)PCI总线与总线与CPU异步工作:异步工作:PCI总线的工作频率固定为总线的工作频率固定为33 MHz,与,与CPU的工作的工作 频率无关,使频率无关,使PCI总线不受处理器的限制;总线不受处理器的限制;6)提供了即插即用功能,允许)提供了即插即用功能,允许PCI局部总线扩展卡和元件进局部总线扩展卡和元件进行自动配置。行自动配置。(2)PCI总线的功能特性总线的功能特性:连接到连接到PCI总线上的设备分为两类:主控设备(总线上的设备分为两类:主控设备(Master)和)和目标设备(目标设备(Target)。)。PCI支持多主控设备,主控设备可以控制支持多主控设备,主控设备可以控制总线、驱动地址、数据及控制信号;目标设备不能启动总线操总线、驱动地址、数据及控制信号;目标设备不能启动总线操作,只能依赖于主控设备向它进行传递或从中读取数据作,只能依赖于主控设备向它进行传递或从中读取数据(3)PCI总线引脚信号定义,如图总线引脚信号定义,如图2-9所示。所示。图图2-9 PCI总线引脚总线引脚 2.3.3 外部总线外部总线 外部总线是指用于计算机与计算机之间或计算机与其它智能外部总线是指用于计算机与计算机之间或计算机与其它智能外设之间的通信线路。常用的外部总线有外设之间的通信线路。常用的外部总线有IEEE-488并行总线、并行总线、RS-232C串行总线和串行总线和RS485通信总线。通信总线。1IEEE-488并行通信总线并行通信总线 图图2-10 IEEE-488并行通信总线并行通信总线 RS-232C串行通信总线串行通信总线 目前目前RS-232C是是PC机与通信工业中应用最广泛的一种串行机与通信工业中应用最广泛的一种串行接口,在接口,在IBM PC机上的机上的COM1、COM2接口就是接口就是RS-232C接口。接口。利用利用RS-232C串行通信接口可实现两台个人计算机的点对点的串行通信接口可实现两台个人计算机的点对点的通信;通过通信;通过RS-232C口可与其他外设(如打印机、智能调节仪、口可与其他外设(如打印机、智能调节仪、PLC等)近距离串行连接;通过等)近距离串行连接;通过RS-232C口连接调制解调器可口连接调制解调器可远距离地与其他计算机通信;将远距离地与其他计算机通信;将RS-232C接口转换为接口转换为RS-422或或485接口,可实现一台个人计算机与多台现场设备之间的通信。接口,可实现一台个人计算机与多台现场设备之间的通信。图图2-11 DB9串口连接器串口连接器(1)RS-232C接口连接器接口连接器 RS-232标准定义了主、辅两个通信信道,辅助信道的传输速度标准定义了主、辅两个通信信道,辅助信道的传输速度比主信道低,其他功能与主信道相同。在实际应用中,通常只使用比主信道低,其他功能与主信道相同。在实际应用中,通常只使用一个主通信信道,因此就产生了简化的。一个主通信信道,因此就产生了简化的。RS-232的的9针针D型插头,型插头,如图如图2-11所示。所示。RS-232C的连接插头早期用的连接插头早期用25针针EIA连接插头座,连接插头座,现在用现在用9针的针的EIA连接插头座,其主要端子分配如表如表连接插头座,其主要端子分配如表如表2-1所示:所示:包括数据线、状态线、联络线。包括数据线、状态线、联络线。端脚端脚方向方向符号符号功能功能25针针9针针23输出输出TXD发送数据发送数据32输入输入RXD接收数据接收数据47输出输出RTS请求发送请求发送58输入输入CTS为发送清零为发送清零66输入输入DSR数据设备数据设备准备好准备好75GND信号地信号地81输入输入DCD数据信号数据信号检测检测204输出输出DTR229输入输入RI表表2-1 RS-232C串行口的针脚功能串行口的针脚功能(2)RS-232C接口电气特性接口电气特性 RS-232C采用负逻辑电平,发送数据时,发送端输出的逻辑采用负逻辑电平,发送数据时,发送端输出的逻辑“0”表示正电平(表示正电平(+5V15V),输出的逻辑),输出的逻辑“1”表示负电表示负电平(平(-5V-15V)。接收数据时,接收端接收)。接收数据时,接收端接收+5V+15V高电平高电平表示逻辑表示逻辑“0”,-5V-15V低电平表示逻辑低电平表示逻辑“1”。RS-232C的噪声容限是的噪声容限是2V(因发送电平和接收电平的差为因发送电平和接收电平的差为2V),共模抑制能力较差。可见,电路可以有效地检查出传输电平的,共模抑制能力较差。可见,电路可以有效地检查出传输电平的绝对值大于绝对值大于3V的信号,而介于的信号,而介于-3+3V之间的电压信号和低于之间的电压信号和低于-15V或高于或高于+15V的电压信号认为无意义。因此,实际工作时,应的电压信号认为无意义。因此,实际工作时,应保证电平的绝对值在保证电平的绝对值在(315)V之间。之间。表表2-2 RS-232C接口电气特性接口电气特性状态状态-15VV15V+5VV1+15V逻辑状态逻辑状态10信号条件(数据线信号条件(数据线上)上)传号传号(MARK)空号空号(SPACE)功能(控制线上)功能(控制线上)OFFON(3)RS-232C与与TTL的电平转换的电平转换 RS-232C是用正负电压来表示逻辑状态,与是用正负电压来表示逻辑状态,与TTL以高低电以高低电平表示逻辑状态的规定不同,因此,为了能够同计算机接口平表示逻辑状态的规定不同,因此,为了能够同计算机接口或终端的或终端的TTL器件连接,必须在器件连接,必须在RS-232C与与TTL电路之间进行电路之间进行电平和逻辑关系的变换,实现这种变换的方法可用分立元件,电平和逻辑关系的变换,实现这种变换的方法可用分立元件,也可用集成电路芯片,如图也可用集成电路芯片,如图2-12所示。所示。图图2-12 RS-232C与与TTL的电平转换的电平转换(4)RS-232C的不足的不足1)接口信号电平值较高,易损坏接口电路芯片,且与)接口信号电平值较高,易损坏接口电路芯片,且与TTL电平电平不兼容,需使用电平转换电路才能与不兼容,需使用电平转换电路才能与TTL电路连接。电路连接。2)采用单端驱动、单端接收的单端双极性电路标准,一条线路)采用单端驱动、单端接收的单端双极性电路标准,一条线路传输一种信号。发送传输一种信号。发送 器和接收器之间具有公共信号地,共模信器和接收器之间具有公共信号地,共模信号会耦合到信号系统。对于多条信号线号会耦合到信号系统。对于多条信号线 来说,这种共地传输方来说,这种共地传输方式抗共模干扰能力很差,尤其传输距离较长时会在传输电缆上式抗共模干扰能力很差,尤其传输距离较长时会在传输电缆上产生较大压降损耗,压缩了有用信号范围,在干扰较大时通信产生较大压降损耗,压缩了有用信号范围,在干扰较大时通信可能无法进可能无法进 行,故通信速度和距离不可能较高。行,故通信速度和距离不可能较高。3)传输速率较低,在异步传输时,波特率最大为)传输速率较低,在异步传输时,波特率最大为19200bps。4)传输距离有限,最大传输距离只有)传输距离有限,最大传输距离只有15米左右。米左右。RS-485的工作方式为半双的工作方式为半双工,在某一时刻,一个发送另工,在某一时刻,一个发送另一个接收。一个接收。RS-485的一个发的一个发送器可驱动送器可驱动32个接收器,总个接收器,总线上可连接多至线上可连接多至32个驱动器个驱动器和接收器,并且可采用二线。和接收器,并且可采用二线。采用二线工作方式时可有多个采用二线工作方式时可有多个驱动器和接收器连接至单总线,驱动器和接收器连接至单总线,并且其中任何一个均可发送或并且其中任何一个均可发送或接收数据。接收数据。RS-485的二线工的二线工作方式连线简单,成本低,因作方式连线简单,成本低,因此在工业控制及通信联络系统此在工业控制及通信联络系统中使用普遍。表中使用普遍。表2-3是是RS-485 与与RS-232C的比较。的比较。3RS-485标准总线标准总线表2-3RS-485 与RS-232C的比较接口接口RS-232CRS-485工作模式工作模式单端发,单端单端发,单端收收双端发,双端收双端发,双端收连接台数连接台数1台驱动器,台驱动器,1台接收器台接收器32台驱动器,台驱动器,32台台接收器接收器传输距离与速传输距离与速率率15m,20kbps12m,10Mbps;120m,1Mbps;1200m,100kbps驱动器输出驱动器输出(最大电压值)(最大电压值)25V-7V+12V驱动器输出驱动器输出(信号电平)(信号电平)5V(带负载)(带负载)15V(未带负(未带负载)载)1.5V(带负载)(带负载)5V(未带负载)(未带负载)驱动器负载阻驱动器负载阻抗抗37k54示意图示意图2.4 MODBUS通信协议通信协议 MODBUS协议是应用于协议是应用于PLC或其他控制器上的一种通用语言。或其他控制器上的一种通用语言。通过此协议,控制器之间、控制器通过网络(如以太网)和其通过此协议,控制器之间、控制器通过网络(如以太网)和其他设备之间可以实现串行通信。该协议已经成为通用工业标准。他设备之间可以实现串行通信。该协议已经成为通用工业标准。采用采用MODBUS协议,不同厂商生产的控制设备可以互连成工业协议,不同厂商生产的控制设备可以互连成工业网络,实现集中监控。网络,实现集中监控。2.4.1 概述概述1MODBUS网络上传输网络上传输 标准的标准的MODBUS接口使用接口使用RS-232C和和RS-485串行接口,它串行接口,它定义了连接器的引脚、电缆、信号位、传输波特率、奇偶校定义了连接器的引脚、电缆、信号位、传输波特率、奇偶校验。控制器能直接或通过调制解调器组网。验。控制器能直接或通过调制解调器组网。2其他类型网络上传输其他类型网络上传输 在其他网络上,控制器使用在其他网络上,控制器使用“对等对等”技术通信,任何控技术通信,任何控制器都能初始化和其他控制器的通信。这样在单独的通信过制器都能初始化和其他控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。提供的多个程中,控制器既可作为主设备也可作为从设备。提供的多个内部通道可允许同时发生的传输进程。内部通道可允许同时发生的传输进程。2.4.2 两种传输方式两种传输方式 控制器能设置为两种传输模式(控制器能设置为两种传输模式(ASCII或或RTU)中的任何)中的任何一种在标准的一种在标准的MODBUS网络通信。用户选择想要的模式,包网络通信。用户选择想要的模式,包括串口通信参数(波特率、校验方式等),在配置每个控制器括串口通信参数(波特率、校验方式等),在配置每个控制器的时候,在一个的时候,在一个MODBUS网络上的所有设备都必须选择相同网络上的所有设备都必须选择相同的传输模式和串口参数。的传输模式和串口参数。RTU模式如表模式如表2-4所示。所示。表表2-4 RTU模式模式地址地址功能代功能代码码数据长数据长度度数据数据1数据数据nCRC高高字节字节CRC低低字节字节2.4.3 MODBUS消息帧消息帧 两种传输模式中(两种传输模式中(ASCII或或RTU),传输设备可以将),传输设备可以将MODBUS消息转为有起点和终点的帧,这就允许接收的设备在消息转为有起点和终点的帧,这就允许接收的设备在消息起始处开始工作,读地址分配信息,判断哪一个设备被选中消息起始处开始工作,读地址分配信息,判断哪一个设备被选中(广播方式则传给所有设备),判知何时信息已完成。(广播方式则传给所有设备),判知何时信息已完成。使用使用RTU模式,消息发送至少要以模式,消息发送至少要以3.5个字符时间的停顿间个字符时间的停顿间隔开始。在最后一个传输字符之后,一个至少隔开始。在最后一个传输字符之后,一个至少3.5个字符时间的个字符时间的停顿标注了消息的结束,一个新的消息可在此停顿后开始。一个停顿标注了消息的结束,一个新的消息可在此停顿后开始。一个典型的消息帧如表典型的消息帧如表2-5所示。所示。表表2-5 RTU消息帧消息帧起始位起始位设备地址设备地址功能代码功能代码数据数据CRC校验校验结束符结束符T1-T2-T3-T48bit8bitN个个8bit16bitT1-T2-T3-T42.4.4 错误检测方法错误检测方法 标准的标准的MODBUS串行网络采用两种错误检测方法。奇偶校串行网络采用两种错误检测方法。奇偶校验对每个字符都可用,帧检测(验对每个字符都可用,帧检测(LRC或或CRC)应用于整个消息。)应用于整个消息。它们都是在消息发送前由主设备产生的,从设备在接收过程中它们都是在消息发送前由主设备产生的,从设备在接收过程中检测每个字符和整个消息帧。检测每个字符和整个消息帧。2.4.5 MODBUS的编程方法的编程方法 由由RTU模式消息帧格式可以看出,在完整的一帧消息开始模式消息帧格式可以看出,在完整的一帧消息开始传输时,必须和上一帧消息之间至少有传输时,必须和上一帧消息之间至少有3.5个字符时间的间隔,个字符时间的间隔,这样接收方在接收时才能将该帧作为一个新的数据帧接收。另这样接收方在接收时才能将该帧作为一个新的数据帧接收。另外,在本数据帧进行传输时,帧中传输的每个字符之间必须不外,在本数据帧进行传输时,帧中传输的每个字符之间必须不能超过能超过1.5个字符时间的间隔,否则,本帧将被视为无效帧,但个字符时间的间隔,否则,本帧将被视为无效帧,但接收方将继续等待和判断下一次接收方将继续等待和判断下一次3.5个字符的时间间隔之后出现个字符的时间间隔之后出现的新一帧并进行相应的处理。因此,在编程时首先要考虑的新一帧并进行相应的处理。因此,在编程时首先要考虑1.5个个字符时间和字符时间和3.5个字符时间的设定和判断。个字符时间的设定和判断。1字符时间的设定字符时间的设定 在在RTU模式中,模式中,1个字符时间是指按照用户设定的波特率个字符时间是指按照用户设定的波特率传输一个字节所需要的时间。例如,当传输波特率为传输一个字节所需要的时间。例如,当传输波特率为2400bps时,时,1个字符时间为个字符时间为:111/2400=4583s同样,可得出同样,可得出1.5个字符时间和个字符时间和3.5个字符时间分别为:个字符时间分别为:111.5/2400=6875s113.5/2400=16041s 为了节省定时器,在设定这两个时间段时可以使用同一个为了节省定时器,在设定这两个时间段时可以使用同一个定时器,定时时间取为定时器,定时时间取为1.5个字符时间和个字符时间和3.5个字符时间的最大个字符时间的最大公约数即公约数即0.5个字符时间,同时设定两个计数器变量为个字符时间,同时设定两个计数器变量为m和和n,用户可以在需要开始启动时间判断时将用户可以在需要开始启动时间判断时将m和和n清零。清零。而在定时器的中断服务程序中,只需要对而在定时器的中断服务程序中,只需要对m和和n分别做加一运分别做加一运算,并判断是否累加到算,并判断是否累加到3和和7。当。当m=3时,说明时,说明1.5个字符时间已个字符时间已到,此时可以将到,此时可以将1.5个字符时间已到标志个字符时间已到标志T15FLG置成置成01H,并,并将将m重新清零;当重新清零;当n=7时,说明时,说明3.5个字符时间已到,此时将个字符时间已到,此时将3.5个字符时间已到标志个字符时间已到标志T35FLG置成置成01H,并将,并将n重新清零。重新清零。波特率从波特率从1200bps至至19200bps,定时器定时时间均采用此方,定时器定时时间均采用此方法计算而得。法计算而得。当波特率为当波特率为38400bps时,时,MODBUS通信协议推荐此时通信协议推荐此时1个字个字符时间为符时间为500s,即定时器定时时间为,即定时器定时时间为250s。2数据帧接收的编程方法数据帧接收的编程方法 在实现在实现MODBUS通信时,设每个字节的一帧信息需要通信时,设每个字节的一帧信息需要11位,其中位,其中1位起始位、位起始位、8位数据位、位数据位、2位停止位、无校验位。位停止位、无校验位。通过串行口的中断接收数据,中断服务程序每次只接收并处通过串行口的中断接收数据,中断服务程序每次只接收并处理一字节数据,并启动定时器实现时序判断。理一字节数据,并启动定时器实现时序判断。在接收新一帧数据时,接收完第一个字节之后,置一帧在接收新一帧数据时,接收完第一个字节之后,置一帧标志标志FLAG为为0AAH,表明当前存在一有效帧正在接收,在,表明当前存在一有效帧正在接收,在接收该帧的过程中,一旦出现时序不对,则将帧标志接收该帧的过程中,一旦出现时序不对,则将帧标志FLAG置成置成55H,表明当前存在的帧为无效帧。其后,接收到本帧,表明当前存在的帧为无效帧。其后,接收到本帧的剩余字节仍然放入接收缓冲区,但标志的剩余字节仍然放入接收缓冲区,但标志FLAG不再改变,不再改变,直至接收到直至接收到3.5字符时间间隔后的新一帧数据的第一个字节,字符时间间隔后的新一帧数据的第一个字节,主程序即可根据主程序即可根据FLAG标志判断当前是否有有效帧需要处理。标志判断当前是否有有效帧需要处理。图图2-13 MODBUS数据串行口接收中断服务程序结构框图数据串行口接收中断服务程序结构框图
展开阅读全文