欢迎来到天天文库
浏览记录
ID:46257386
大小:97.51 KB
页数:6页
时间:2019-11-22
《浅谈51内核单片机与FX系列PLC通信设想》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、浅谈51内核单片机与FX系列PLC通信设想摘要分析了51内核单片机(AT89C51)和FX系列PLC串行通信接口的工作特性,介绍了FX系列PLC的通信协议及其与单片机通讯的设计思想,提出了两者之间实现串行通信的新概念,重点阐述了串行通信硬件接口电路的实现方法,设计力求结构简单,成本低,具有良好的可靠性,有望在将来推广应用于实际工程项目中。关键词51内核单片机FX系列PLC串行通信接口电路1引言可编程程序控制器(简称PLC)以其可靠性高、抗干扰强、开发周期短,已经成为一种较为普及的、适应多种应用环境的工业控制器。FX系列PL
2、C是日本MITSUBISHI公司推出的超小型可编程控制器,采用模块化结构,配有丰富的功能模块,具有体积小、配置灵活、应用广泛、性能价格比高等优点,在我国已大量应用于工业控制领域。AT89C51系列单片机是ATMEL公司推出的一种八位的高性能CMOS单片机,具有丰富的I/O功能,带有RAM、FPEROM和可编程串行通道等,适合工业环境使用,具有控制方式灵活,可靠性高。本文主要介绍AT89C51系列单片机与FX系列PLC之间的通信设计思想,阐述其通信接口的实现方法,介绍一种实用的操作、显示单元。在PLC组成的工业控制设备中,用
3、户多利用其并行接口进行功能的扩展,如键盘、显示等,这必然要占用大量的I/O点资源。其实,性能优良的PLC都应该配有高性能的串行接口单元(SIU),用以专门负责高速的串行通信任务,不需要或仅需少量的CPU干涉。这样,可以将CPU解放出来集中解决数据处理或实时控制问题。三菱公司的FX系列PLC目前采用RS-422A通信口。这是一种典型的全双工串行通信方式,它除可以与计算机实现1:1的通信外,还可连接外围设备,如条码判读器、串行打印机等。若通过单片机与PLC进行通信,对PLC各寄存器进行读写,就可充分利用单片机成本低、扩展方便的
4、特点,使PLC应用更具灵活性。2接口电路设计FX系列PLC基本单元模块提供了一个RS-422异步全双工串行通讯口,该通讯口具有双重功能,较常用的一类功能是采用简易编程器、MEDOC软件包等编程软件对PLC的软件进行下载、对PLC的内部状态和数据进行监控;另一类功能是与上位机进行数据通讯。由于AT89C51单片机的SCI口电平为TTL电平,与RS-422A标准不兼容,因此单片机的SCI口与PLC的串行口连接时需要增加一个电平转换电路,用于实现RS-232C与RS-422之间的相互转换。如图1所示。RS422图1接口电路设计图
5、上图所示常用的RS-422总线驱动芯片为SN75174.SN75175.SN75174是发送器,SN75175是接收器,亦可用SN75176,它是集接收器和发送器于一身的。给RS422A通信接口加装光电隔离电路(即光耦),可进一步提高PLC的抗干扰水平。3通信机制分析三菱FX系列PLC在其内部有一个特殊功能寄存器D8120,可以根据其中的内容,按照一定的协议实现与单片机之间的通信•但必须事先对PLC编程写入D8120.三菱FX系列的PLC控制器,采用的是422电气接口,与单片机通信时采用的格式通常要满足:(1)异步全双工串
6、行通信模式;(2)波特率9600bps;(3)偶校验;(4)帧校验:累加方式(和校验);(5)字符形式:ASCII码。每个ASCII码的最高位在发送时被用作该字符的奇偶校验位,即在被发送的一个字节中,只有b0-b6表示实际发送的数据,而b7是奇偶校验位.发送一个字节的格式如图2所示:起始位bob2b3b4b6奇偶位停止位图2发送字节格式起始位1位、数据位7位、偶校验位1位、停止位1位单片机与PLC按主从方式进行通讯,单片机可向PLC发通讯请求信号ENQ,在收到PLC发回的响应信号后,开始数据通讯•通讯时,若干个字符组成一个
7、字符信息帧,其帧格式如图三所示:sn(M)字符1••••衬2字符N■m校验和馳校锹位8、ON“8”(38H)强制单个目标元件状态(Y,M,S,T,C)为OFF清零命令若无校验错误时,PLC对ENQ的应答信号为ACK,对应ASCII码为06H;若检测到错误时,PLC对ENQ的应答信号为NAK,对应ASCII码为15H。开始通信时,发送帧中的每个字符都要进行偶校验,从CMD开始到ETX结束的所
8、ON“8”(38H)强制单个目标元件状态(Y,M,S,T,C)为OFF清零命令若无校验错误时,PLC对ENQ的应答信号为ACK,对应ASCII码为06H;若检测到错误时,PLC对ENQ的应答信号为NAK,对应ASCII码为15H。开始通信时,发送帧中的每个字符都要进行偶校验,从CMD开始到ETX结束的所
此文档下载收益归作者所有