单片机与PLC之间的串行通信实现
PLC与单片机之间的串行通信及应用

PLC与单片机之间的串行通信及应用李 辉1 郑 宁2(1 天津职业技术师范学院 300222 2 天津中德职业技术学院 300191)摘 要 提出了可编程序控制器(PLC)与单片机之间实现串行通信的新概念,以松下电工FP1系列PLC和AT89C51单片机的通信为例,重点阐述了串行通信硬件接口电路的实现方法,介绍一种实用的操作、显示单元,实践证明,该应用具有很好的推广价值。
关键词 PLC 单片机 串行通信1 引言在PLC组成的工业控制设备中,用户多利用其并行接口进行功能的扩展,如键盘、显示等,这就要占用大量的I/O点资源。
其实,优秀的PLC 都配有高性能的串行接口单元(SIU),这个SIU 专门负责高速的串行通信任务,不需要或仅需少量的CPU干涉,它将CPU解放出来集中解决数据处理或实时控制问题。
PLC的RS 232C接口就是一个典型的串行通信接口,它除可以与计算机实现1 1的通信外,还可连接外围设备,如条码判读器、串行打印机等。
若通过单片机与PLC进行通信,对PLC各寄存器进行读写,就可充分利用单片机成本低、扩展方便的特点,使PLC应用更具灵活性。
下面就以松下电工FP1系列PLC与Atmel公司的AT89C51单片机的通信为例,阐述其通信接口的实现方法,介绍一种实用的操作、显示单元。
2 通信接口电路及设置2 1 接口电路设计PLC给出了标准的RS 232C接口,采用EIA 电平逻辑,AT89C51采用TTL/CM OS电平逻辑,这些电平互不兼容,必须将TT L/CMOS电平与E IA/T IA 232 E电平进行转换。
我们使用M AX232[2]串行通信芯片,它是单片集成双RS 232驱动/接收器。
采用单一+5V电源供电,外接四支电容便可构成标准的RS 232通信接口,从而完成TT L/CMOS电平和EIA电平的相互转换,这样,二者之间就可以通过RS 232接口进行数字信号传送。
图1是以FP1系列PLC的9针RS 232C通信接口为例,通过MAX232与AT89C51单片机进行硬件连接的线路图。
单片机和PLC的应用与串行通信

L 对 机 交 互 设 备 ,不 能 实 现 对 控 制 参 数 的 在 线 调 整 及 系统 运 动 状 态 的显 护都 很 困难 。从 P C与单 片机 系 统 的 选 用 上来 讲 , 单项 工 程 或 重 复 数 极 少 的项 目, 采用 P C方 案 是 明 智 、 捷 的途 径 , 功 率 高 , 靠 性 L 快 成 可 示。 但 采 基 于 以 原 因 , 于很 多控 制 任 务 , 果 能 够 将 两 者 很 好 的 结合 好 , 成 本 较 高 。 对 于量 大 的配 套 项 目 , 用 单 片机 系 统 具 有 成 本 低 、 对 如 起 来 . 自发 挥功 能 优 势 , 各 将会 产 生理 想 的 效 果 。要 实 现 以 上 功 能 , 关 效 益 高 的 优 点 ,但 这 要 有 相 当 的研 发 力 量 和 行 业 经 验 才 能 使 系 统 稳 可 L 这 键 要解 决 单 片 机 和 P C之 间 的 串行 通 信 ,所 以本 文 主要 论 述 了 单 片 定 、 靠 的 运 行 。最 好 的方 法 是 单 片 机 系 统 嵌 入 P C 的 功 能 . 样 可 L 性 效 机 和 P C应 用 的 区别 与联 系 , 以及 运 用 串 行 通 信 技 术 实 现单 片 机 和 大 大 简化 单 片 机 系 统 的研 制 时 间 , 能得 到 保 障 , 益也 就 有 保 证 。 L
【 摘 要】 本文论述单 片机和 P C的应用区别与联 系,L (j L P C -  ̄程控制器 ) 自由串行通讯 , . - 的 以及利用单片机 与 P C进行 通信 的方法。硬 L
件 以 A 8 C 1 片 机 为核 心 。 出信 号 通 过 R 一 8 T9 5 单 输 S 4 5总 线 与 S — 0 7 2 0系列 P C通 信 , 介 绍 了通 信 协 议 。 L 并
PLC与单片机之间的串行通信及应用

PLC 与单片机之间的串行通信及应用驱动现代工业自动化的关键,是由计算机、编程语言和控制器组成的自动化系统。
计算机负责数据处理和控制逻辑的编写,编程语言用于控制逻辑的编写,而控制器则负责接收数据和控制执行器,实现自动化控制。
PLC(可编程逻辑控制器)作为现代工业自动化控制的主控设备,拥有广泛的应用,而单片机则在很多控制领域都具有较好的应用性能,PLC 与单片机之间的串行通信及应用,成为当前自动化控制领域中的热点研究。
1.PLC 与单片机的异同点PLC 是先进的微处理器技术、数字信号处理技术、通讯技术和控制技术的综合应用,它集成了模拟量采集、数字信号采集、控制逻辑执行、数字信号处理、通讯和数据存储等多种功能。
PLC 的特点是:多点输入多点输出,高速运算,可编程,可扩充。
单片机是集成电路技术的一种,它将微处理器、存储单元和各种外设集成在一个芯片上。
单片机的特点是:小型化、低功耗、性能优良、易于编程和使用、成本低廉等。
PLC 与单片机最大的区别是应用场合和控制对象不同。
PLC 主要应用于制造业、化工行业、冶金行业等工业控制领域,而单片机主要应用于家电、电子产品、汽车电控等领域。
PLC 通常控制的是大规模的工程项目,而单片机控制的是小规模电子系统。
此外,PLC 具有高可靠性、高实时性、易于维护、技术成熟等优点,而单片机则具有开发成本低、灵活性高等优点。
2.PLC 与单片机之间的串行通信PLC 与单片机之间的串行通信,是指PLC 通过串行通信接口与单片机建立连接,实现数据的传输和控制命令的发送。
串行通信是指将数据字节一位一位地转换为电信号传输,数据传输的速度比并行通信慢,但数据传输的可靠性更高。
串行通信中,常用的协议有RS232、RS485、MODBUS 等。
RS232是一种串行通信标准,适用于PC 机与串行设备(如PLC)之间的连接。
RS485 是一种多点串行总线协议,可在多个设备之间进行通信,适用于数据采集、工业控制等领域。
PLC与单片机之间的串行通信实现方法探讨

PLC与单片机之间的串行通信实现方法探讨随着工业自动化的不断发展,PLC(Programmable Logic Controller,可编程逻辑控制器)和单片机作为常用的控制设备,扮演着越来越重要的角色。
在实际的工业生产中,PLC和单片机往往需要进行数据的交互和通信,以实现对工艺过程的控制和监测。
而在这种通信中,串行通信被广泛应用。
本文将探讨PLC和单片机之间的串行通信实现方法,以期为实际应用提供一些参考。
一、串行通信概述串行通信是指在数据传输中,比特按照一定的顺序进行传送,也就是每次只传送一个比特位。
与之相对应的是并行通信,其数据在传输时多个比特同时传送。
在实际工业控制系统中,串行通信由于线缆布置简单、传输距离远和干扰小等特点而得到了广泛的应用。
串行通信包含同步和异步两种方式。
在同步串行通信中,发送和接收设备通过一个时钟信号实现同步传输。
而在异步串行通信中,传输的数据通过起始位和停止位的表示来进行同步。
在工业控制系统中,由于同步通信受到时钟信号的限制,一般采用异步串行通信的方式。
二、PLC与单片机之间的串行通信现在让我们来讨论PLC与单片机之间的串行通信。
PLC作为工业控制中的核心设备,通常负责控制和监测生产过程。
而单片机则常用于硬件控制和数据的采集。
在工业控制系统中,PLC和单片机之间需要进行数据的交互和通信,以实现工艺过程的控制和监测。
在实际的应用中,PLC与单片机之间的串行通信一般采用RS-232、RS-485、Modbus等通信协议。
RS-232是一种传统的串行通信标准,其传输距离较短,一般在15米左右。
RS-485则是一种适用于远距离传输的串行通信标准,其传输距离可以达到1200米。
而Modbus是一种通信协议,广泛应用于工业控制系统中,其采用主从架构,支持点对点和多点通信。
1、使用串口通信模块在实际应用中,我们可以在PLC和单片机上分别搭载串口通信模块,通过串口通信模块实现两者之间的数据交互。
探讨PLC与单片机之间的串行通信实现

探讨PLC与单片机之间的串行通信实现PLC (可编程逻辑控制器) 和单片机是现代自动化控制系统中常用的两种设备。
PLC 主要用于工业自动化控制,而单片机则常用于嵌入式系统和小型控制器中。
在某些应用中,PLC 和单片机之间的数据交换是必要的。
这可以通过串行通信实现。
串行通信是一种在两个设备之间传输数据的方式,通过一根线路逐位地传输数据。
常见的串行通信协议包括 RS232、RS485、Modbus 等。
需要确定 PLC 和单片机之间的物理接口。
通常情况下,PLC 和单片机使用 RS485 接口进行通信。
RS485 是一种高速、远距离传输的串行通信协议,适用于工业环境。
PLC 和单片机分别连接到一个 RS485 转换器,将信号转换为串行通信所需的电平和协议。
在 PLC 端,需要编写一个通信模块,用于接收和发送数据。
该模块可以通过 PLC 的编程软件进行开发。
通常,PLC 支持多种编程语言,如 Ladder Diagram (梯形图),Structured Text (结构化文本)等。
在通信模块中,需要使用特定的指令来配置和控制串行通信。
在单片机端,也需要编写一个串行通信的程序。
通常情况下,单片机可以使用 C 语言来开发。
程序包括设置串行通信的参数,如波特率、数据位、停止位等,以及接收和发送数据的函数。
在数据传输过程中,需要协商好数据格式和通信协议。
数据格式指定了数据的组织形式,如字节顺序、数据类型等。
通信协议则定义了数据的传输方式和规则。
常见的通信协议包括 Modbus、Profibus、CAN 等。
在 PLC 和单片机之间,需要约定好使用的通信协议,并编写相应的程序来实现数据的传输和解析。
除了硬件和软件的设置外,还需要注意一些通信过程中的问题。
PLC 和单片机之间的通信速度应该相匹配,以避免数据丢失或溢出。
需要确保通信连接的稳定性和可靠性,例如使用合适的电缆连接、地线和屏蔽等。
PLC 和单片机之间的串行通信是现代自动化控制系统中常见的需求之一。
PLC与单片机串口通信的实现探讨

PLC与单片机串口通信的实现探讨要实现PLC与单片机串口通信,需要有完善的硬件和软件支持。
本文将介绍如何使用PLC的串口和单片机的串口进行通信,并介绍常见的通信方式和协议。
1. 硬件准备首先我们需要准备好PLC和单片机。
对于PLC,我们需要选择带有串口接口的PLC。
对于单片机,我们可以选择带有串口接口的单片机或者使用外接的串口芯片。
接下来,我们需要使用串口线连接PLC和单片机。
2. 通信方式通信方式分为两种:点对点通信和多点通信。
点对点通信是指单片机与PLC之间建立一条直接连接进行通信,适用于直接控制PLC的场景。
多点通信是指多个单片机与PLC建立连接进行通信,适用于需要多个单片机同时控制PLC的场景。
在本文中,我们将讨论点对点通信方式。
3. 通信协议通信协议是通信双方遵循的规定,包括通信的数据格式、命令、指令等。
下面介绍两种常见的通信协议。
(1)Modbus协议Modbus协议是一种应用于串行通信网络的协议,通信双方需要遵循规定的通信协议。
PLC的串口可以支持Modbus协议。
单片机需要编写程序实现与PLC的通信。
在单片机发送数据时,需要按照Modbus协议的格式将数据打包,发送到PLC。
在PLC接收到数据后,需要按照协议格式进行解码,并根据协议规定的指令进行执行。
(2)ASCII码协议4. 编写程序要实现PLC与单片机的串口通信,需要编写程序。
下面简单介绍使用C语言编写串口通信程序的步骤。
(1)打开串口在单片机上,我们需要使用C语言调用串口接口库函数打开串口。
在PLC上,需要配置串口参数。
(2)发送数据(3)接收数据在单片机上,我们可以使用C语言调用串口接口库函数,接收PLC发送回来的数据。
在PLC上,需要编写程序读取串口接收缓冲区中的数据,并进行解码和指令执行。
5. 总结通过对PLC与单片机串口通信的实现探讨,我们可以简单了解PLC与单片机的串口通信原理,以及常见的通信方式和协议。
在实际应用中,我们需要根据实际需求选择合适的通信方式和协议,并编写程序实现通信。
PLC与单片机之间的串行通信实现方法探讨

PLC与单片机之间的串行通信实现方法探讨PLC(可编程逻辑控制器)和单片机是工业自动化领域中常用的控制设备。
它们通常需要进行数据交换和通信,以实现更复杂的控制功能。
本文将探讨PLC与单片机之间的串行通信实现方法。
1. 基于RS485的串行通信RS485是一种常用的串行通信协议,具有传输距离远、抗干扰能力强等特点。
在PLC和单片机之间建立RS485通信可以实现可靠的数据传输。
需要在PLC和单片机之间建立RS485物理连接。
一般使用双线制,其中一条线为发送线(A)、另一条线为接收线(B),同时需要接地线(GND)。
在硬件层面上,PLC和单片机需要通过485转232转换器实现电平转换。
PLC的UART串口通过485转232转换器连接到单片机的串口,以实现数据的传输。
在软件层面上,PLC和单片机需要定义一套通信协议,以规定数据的传输方式、格式和顺序。
通常可以使用Modbus协议来实现PLC与单片机之间的串行通信。
PLC作为Modbus 从站,单片机作为Modbus主站,通过读写寄存器的方式进行数据的读取和写入。
2. 基于CAN总线的串行通信CAN(Controller Area Network)总线是一种高可靠性、高带宽、多节点、实时性强的串行通信协议,广泛应用于汽车电子和工业控制领域。
通过CAN总线实现PLC和单片机之间的串行通信,可以实现多节点的数据交换和实时的控制。
在软件层面上,PLC和单片机需要使用CAN通信协议,如CANOpen或者DeviceNet协议,来实现数据的传输和控制。
在硬件层面上,PLC和单片机需要具备以太网接口,并通过以太网交换机或者路由器连接到同一个局域网中。
在软件层面上,PLC和单片机可以使用TCP/IP协议来实现数据的传输和控制。
PLC作为服务器,单片机则可以作为客户端,通过建立TCP连接来进行数据的读写操作。
PLC与单片机之间的串行通信可以通过不同的通信协议实现,如RS485、CAN总线和以太网。
CPM2AH PLC与STC89C52单片机之间的串行通信设计及其应用

该 通 信 方 式 经 济且 可 靠 ,在 实 际 工 程 应 用 中 有 一 定 意 义 。
关 键 词 : 串行 通 信 ;P C;单 片 机 L
中 图 分 类 号 :T 9 50 N 1 .4 文献 标 识 码 :A 文 章 编 号 : 1 0 — 4 2 (0 0 9 0 3 — 2 0 9 9 9 2 1 )0 — 0 5 0
需 要 或 仅 需 少 量 的 C U 干 涉 ,它 将 C U 解 放 出 来 集 中解 P P 决 数 据 处 理 或 实 时控 制 问 题 。P C 的 R 一 2 2 L S 3 C接 口就 是
一
的 是 T I’ I L电 平 , 即 逻 辑 “ ” 3 + V, 逻 辑 … : < 1 :+ V~ 5 0’
2通 信 接 口电 路 及 其 参 数 设 置
21通 信 接 口 电路 设 计 .
现 代 P C大 多 具 有 标 准 的 R 一 3 L S 22 接 口 ,可 以 与 P 机 、其 它 P C、可 编 C L
收 稿 日期 :2r 8 C5 L C 9 2单 片机 通 信 硬 件 连 接
221 L .. P C串行 通 信 接 口设 置
3通 信 协 议
上 位 机 链 接 通 信 协 议 采 用 0 R N H s Ln 协 议 , M 0 ot ik 在保 证 P C与 单 片 机 间 通 信 参 数 设 景 一致 后 ,单 片 机 编 写 L 相 应控 制命 令 的 发 送 和 接 收 程 序 ,P C接 收 来 自上 位 机 发 L
PLC与单片机之间的串行通信实现方法探讨

PLC与单片机之间的串行通信实现方法探讨PLC(可编程逻辑控制器)和单片机是现代工业自动化中常见的控制设备,它们通常被用于监控和控制工厂中的设备和生产线。
在实际应用中,很多情况下需要PLC和单片机之间进行通信,以便实现数据传输和控制指令的交互。
本文将探讨PLC与单片机之间的串行通信实现方法,为工程师在实际应用中提供一些参考。
一、PLC与单片机之间的通信方式PLC与单片机之间的通信方式主要包括串行通信和网络通信。
在工业控制系统中,串行通信是最常用的一种通信方式,它可以简单地通过串口连接实现设备之间的数据传输。
PLC和单片机都支持串行通信,因此在实际应用中可以选择串行通信方式进行通讯。
二、串行通信的基本原理串行通信是将数据一位一位地按照一定的时间间隔发送出去,接收端再按照相同的时间间隔接收数据。
串行通信有两种方式:同步串行通信和异步串行通信。
在工业控制系统中,异步串行通信方式更常见,因此本文将重点介绍异步串行通信的实现方法。
异步串行通信是将数据分为帧进行传输,每一帧包括起始位、数据位、校验位和停止位。
起始位和停止位用来标识一帧数据的开始和结束,数据位用来传输实际的数据,校验位用来检测数据传输过程中是否发生错误。
在实际应用中,可以通过串口模块来实现异步串行通信。
1. 使用串口模块在实际应用中,可以在PLC和单片机上分别连接串口模块,通过串口模块来实现两者之间的串行通信。
串口模块可以实现串口转换和数据传输,它能够将串行数据转换为并行数据,方便单片机和PLC进行数据交换。
2. 使用Modbus协议Modbus是一种常用的工业通信协议,它可以在串行通信中实现设备之间的数据传输。
在实际应用中,可以使用Modbus协议来实现PLC和单片机之间的通信。
单片机可以通过Modbus协议向PLC发送控制指令,PLC可以通过Modbus协议向单片机发送传感器数据,从而实现数据交换和控制指令的传输。
3. 使用RS485通信以一个简单的例子来说明PLC与单片机之间的串行通信实现方法。
浙大中控DCS与PLC和单片机串行通讯的实现

≤ 一 时刻 一 个发 送 另一 个接 收 ,当用 于 多 连时 , 可节省信 号线 , 便于高速 远距离传 许 多智能 仪器设 备均配有 RS . 4 8 5总线接
RS 4 8 5 口相 连 。通 信 电缆 要 求 能 够 满 足 阻抗 小 于等于 1 2 0 D。 如 图 l 。
3 . 3软 件
近 ;这 些外界的高次谐波会 由屏蔽网隔离 ,从
而减少干扰 。 ( 2 )消 除通信 线 自身分布 电容 , 长 距 离 的 ,极 高 的 频 率 , 平 行 的双 导 线 不 是 最 佳 选 择 ,
! 了通 讯 。 实 现 了通 过 D CS集 中 对 两 套 独 元进行监视和控制 。
S - 4 8 5 方 式 构 成 的 多机 通 信 原理
R S 一 4 8 5是 RS 一 4 2 2 的 变 形 。RS . 4 2 2 为 全 : , 可 同时 发 送 与 接 收 ; R S 一 4 8 5则 为 半 双 工 ,
r e a d i n p u t … ‘ f o r c e s i n g l e c o i l ” 两个函数对数据 此 程序 采用 波特 率 9 6 0 0,无 奇偶 校验 ,
有 延 时 的 设 置 。 因 为 采 , 能 够 更 好 的保 证 数 据 传 输 的准 确 。 所 以变 量 K在 程 序 中就 是 起 到 分 周 期 的作 用 。 当K = 0时 ,读 取 反 渗 透 的 数 据 ,在 K= I 时候 ,
能插在 任意机笼 的任 意 I / O 槽位 ,支持 RS 2 3 2
和 RS 4 8 5协 议 ,从 下 列 引脚 引 出 :
4通信线 的选择和 安装处理
( 1 ) 抗 干 扰 能 力 强 。 虽 然 总 线 末 端 接 一 个 匹配 电 阻 , 吸 收 总 线 上 的 反 射 信 号 , 保 证 正 常传 输 信 号 干 净 ; 从 而 增 加 了总 线 抗 干 扰 的能
单片机与PLC之间的串行通信实现

单片机与PLC之间的串行通信实现单片机和PLC是现代工业生产、家用电器等广泛使用的两种技术,通过它们之间的串行通信,可以形成一种小型的控制系统,并发挥一定的数据传输能力,从而在各种各样的机械设备控制技术起到了作用,PLC与单片机串行通信是两者结合的关键。
标签:单片机;PLC;串行通信单片机和PLC是现代社会工业生产、家用电器等各方面广泛应用的两种技术,通过两者的串行通信,能够组建一个小型控制系统,并发挥一定的数据传输能力,从而在多种机械设备的控制技术中发挥作用,PLC与单片机的串行通信是两者结合使用的关键。
1单片机与PLC单片机是借助于超大规模的集成电路技术,组建一个微型计算机控制系统以整合各种有数据处理功能的机械设备,这些设备包括中央处理器、I/O接口、数据存储器、中断系统以及定时器等。
PLC是可编程逻辑控制器,是一种有编程功能、内部有存储程序的存储器,可通过数字模式、模拟式等对用户发出的运算、控制、保存、定时等指令进行输入或输出,从而对机械设备或工业生产进行控制。
2 PLC和单片机之间串行通信設置的相关细节分析2.1 PLC单片机之间数据发送的相关初始分析在初始设置中,单片机的波特率是必须和PLC保持高度一致的。
在高速波特率的选择上,我们可以根据公式:SPBRG=F/(16×波特率)-1来计算。
在这个公式中F所代表的量是单片机时钟的频率大小,在整个公式的取值中,要求SPBRG值为整数值。
所以,单片机波特率和PLC之间是必然存在着误差的。
而且根据整个工作流程来看,数据的发送方和接收方在频率上都存在着比较细微的差异,但是这种差异是非常细微的,在整个的分析过程中,并不会因为这种细小的误差而产生收发错位的现象。
但是需要我们特别注意的是,单片机在发送数据初始设置时,其数据位、校验位、停止位要和PLC保持较为高度的一致,以避免大的误差的出现。
2.2 PLC接受数据相关功能的设置在一般情况下,PLC接受数据往往有着比较高的要求,如果选择了自由端口的模式,那么必须要求在CPU和RUN模式的运行下才能这样选择。
基于单片机与PLC通讯系统的设计和实现

基于单片机与PLC通讯系统的设计和实现文章设计了单片机和PLC实现串行通信的硬件连接和软件变成的方法,借助于RS232转RS485电路,将PLC与单片机开发板进行连接,上位机就是单片机,数据通过单片机传送给PLC,从而准确的控制PLC上三相异步电机的正转和反转,PLC可以对所接收到的数据进行审核,充分的提升了所接收到数据的可靠性,之后便会将这些数据反馈给单片机,从而实现单片机和PLC相结合对电机的有效控制。
标签:单片机;PLC;通讯系统的实现1 基于单片机与PLC通讯系统软件的设计1.1 通讯协议要想实现基于单片机和PLC的通讯系统,主要是借助于单片机向PLC接收数据和下达命令的功能,通讯协议则应采用命令和响应的模式,一帧就是一次通信发送的一组数据,33个字符组成一帧,在这里应注意以下几点内容:(1)起始字符应用g表示,并且其也占用一个字符;(2)指令主要分为读和写两种类型,文章所采用的为写指令,其也占用一个字符;(3)采用十六进制的ASCII码来表示目标PLC的站地址,在PLC程序中应先将其设定好,并且应与单片机保持一致,应占用两个字符;(4)同样的应用十六进制的ASCII码来表示目标寄存器的地址,在PLC的内部应用4个字节来表示寄存器,这四个字节分别表示寄存器的类型和号码,共占用4个字符;(5)十六进制的ASCII码也可以表示要写入的数据,虽然它有16个字节,但最多只可写入8个字节,同时应将数据区填满;(6)BCC校验码的作用为检查传输的数据中是否存在错误,保证传输的准确性,其占用两个字符;(7)结束字符应用G表示,其与起始字符一样,占用一个字符。
在单片机接收到PLC的反馈信息后,无论是立即执行开始命令还是结束命令,它们的字符分别为g和G,此时电动机的状态信息就是状态信息。
文章所采用的PLC的类型为S7-200,其支持多种通讯协议,比如说点对点接口协议、多点接口协议、PROFIBUS协议以及自由通信协议等,其都是支持的,在自由口的通信模式下,S7-200的串行通讯口就会受到相应应用程序的控制,如果其是出于RUN的方式下,在选择了自由口这一通信模式后,用户的程序就会通过接收中断和传送中断来接收指令和发送指令,此时就实现了用户程序对通信口操作的有效控制。
单片机与PLC串行通信数据传输模式实现

Newo k1 t r
1 本次试验中所使用的通信协议简介 - 3 本项目中由于 PC 6 87单片机只是发送数据,L I 1F 7 P C单纯接收数据, 所 以采用单工串 行通信。 L P C采用自由端口 模式协议, 协议由 语句表编程实现; 单片机使用 U A T模块的异步发送模式 ,协议用汇编语言编程实现。由 SR PC1F 7 单片机的发送缓冲结构可知,一次只能连续发送两个字节的数 I 687 据 , P C采用字符接收完成中断比较方便。 口标准采用与 P C侧一致的 故 L 接 L R - 5 接头采用 9针 D形连接器 , S48 , - 传输线采用屏蔽双绞线 , 单片机侧的发 送数据需经转换后再发送。 字符信息格式为 :位起始位 ,位数据位, l 8 无校验位, 位停止位。 l 数据位的发 I序为低位在前, 页 高位在后。 异步通信的传输速率即波特率选择为 34 0 Ws 80 b 。为提高数据传输的可 靠性, 采用异或校验, 报文采用定长发送, 前四个字节参加异或校验 , 报文的 最后—个字节为校验码。 I 6 8 7 PC1F 7 单片机的模数转换精度为 1 0位, 故温度 值采用双字节保存。
而 薄丽 r
民营 科技
信ቤተ መጻሕፍቲ ባይዱ息科 学
单片机与 P C串行通信数据传输模 式实现 L
武 德庆
( 苏省 盐城 生物 工程 高等 职 业技 术学 校 电子 工 程 系, 苏 盐城 2 4 5 ) 江 江 20 1
摘 要 : 工业 自动控 制中, 在 单片机与 P C的远距离通信是一个难点与热点 问题。这里设计 了 s — 0 P C与 PC 6 8 7单片机 实现远距离 串 L 720L I 1 F7 行通信 的硬件连接和软件实现方法。采用 了MA 4 5 X 8E芯片进行 m电平与差分信号之 间的转换 , 用 R 一 8 使 S 4 5端 口和半Q_模式进行通信 。最后通 Y - 过异或校验码对接收到的数据进行核对 , 以进一步提 高数据传输的可靠性 。实验证 明, 该方法成功 实现 了单片机与 P C的远距 离通信 , L 并且具有开 发 简单 , 干扰 能 力强 的特 点 , 有 一 定 实用 价值 。 抗 具 关 键 词 : 片机 ; L 串行 通 信 单 P C; 1 单片机与 P C技术简介 L P C是一种专门为在工业环境下应用而设计的数字运算操作的电子装 L 置。 通过执行各种运算指令, 最终起到控制机械或生产过程的作用。 广泛应用 于工 业 、 通运输 、 保及文化娱 乐等行 业 。P C使用 简单 , 交 环 L 性价 比也较 高。 P C和单 片机各 有所长 , 际应用 中 , 往需要 把二者 结合起来 , 挥 L 在实 往 发 各自的长处,L P C和单片机通过通信交换信息, 共同组成控制系统。 下面结合 实例就 P C和单片机的通信实现做一下介绍。 L 1 本 次试验 中硬 件简介 . 1 PC 6 7 I 17 单片机、西门子公司的 sMA Is-0 系列 P C、 口标准 、 I Tc 7 2¨ 0 L 接 专用通信 M X 8 E A 4 5 芯片,O脚为数据输出 , R 脚 它接收 R - 8 的 S4 5 差模信号 V B, A 并转换为 TL电平 由 R r O输 出,E脚为 R R O的使能端, 低电平时选通 R 输出有效。D 脚为数据输入端 , O, I 它将 r L电平的数据转换为差模信号 l T V B 并 由 A、 A, B两脚输 送 出去 , E是 D 使 能端 , 电平选 通 D , 入有 效 。 D I 高 I 输 故 A、 B两脚既是 R - 8 S 45信号输入端, 同时也是该信号的输出端 , 关键是由 使能端 R 、E的电平来决定。 ED
基于MODBUS协议的单片机与S7—200PLC串行通信的实现

( 鞍 山师范学院 物理科 学与技 术学院 , i T . 宁 鞍山 1 1 4 0 0 7 ) 摘 要: 采 用 MO D B U S通信 协议 , 以A T ME G A1 6单 片 机 为主 机 , s 7 . 2 0 0 P L C为从 机 , 设计 了两 者之 间的
括两个 4位 1 6进制字符 , 相对于 A S C I I 模式 , R T U模式表达相同的信息需要较少的位数 , 且在相同通信 速率下具有更大的数据流量. s 7 — 2 0 0 P L C支持 M O D B U S通信协议的 R T U模式.
M O D B U S 通信格式如表 1 所示 , M O D B U S 工作方式采用主从问答式 , 通信命令由主机发送至从机 , 符合相应地址码的从机就会响应命令 , 根据约定的通信协议读取信息并进行数据校验 , 如传送的通信命 令正确则进行相应的功能操作 , 同时从 机向主机返 回响应 消息 , 如图 l 所示. 本文以单 片机侧为主机 , P L C侧为从机 , 按照 M O D B U S R T U模式进行通信.
1 MO D B U S通 信 协 议 [ 1 , 2 3
MO D B U S通 信协 议是 M o d i c o n公 司推 出 的一 个 开放 性 通 信协 议 , 通 过 此协 议 , 控 制器 相 互 之 间 、 控
制器经由网络和其它设备之间可以通信 , 它已经成为一通用工业标准. M O D B U S 通信协议有 R T U模式和 A S C I I 模式两种传输模式, 其中R T u模式信息帧中的8 位数据包
( 1 ) 主机单 片 机侧 采用 R S 2 3 2串行 通 信接 口, 从机 s 7 。 2 0 0 P L C的串行通信接 E I 为D B - 9 针R S 4 8 5接 口, 这里采用 C P U
PLC与单片机之间的串行通信实现方法探讨

PLC与单片机之间的串行通信实现方法探讨PLC与单片机是现代工业控制系统中常见的两种控制设备。
它们可以协同工作,以实现更加高效、智能、可靠的工业自动化控制。
在PLC和单片机之间进行通信是实现这种协作的基础,因此我们需要深入探讨PLC与单片机之间的串行通信实现方法。
1. 串行通信介绍串行通信是一种常见的数据通信方式,它将数据一个接一个地传输,而不是同时传输多个数据位。
串行通信与并行通信相对,总线长度可以更长,数据传输的速度也可以更快。
在串行通信中,可以通过51单片机的USART模块实现与PLC的串行通信。
2. 串口通信基础在进行PLC与单片机之间的串行通信之前,有必要了解两者的串口通信基础。
串口通信是数据传输的一种方式,在单片机或PLC中通过串口芯片来实现。
51单片机中内置串口,我们可以利用串口函数库将其轻松地应用到实际开发中。
3. 串口通信参数设置在进行串口通信之前,需要对串口通信参数进行设置,如波特率、数据位、停止位等。
对于单片机,我们可以通过代码来设置:```cvoid init_uart () {SCON = 0x50; // 8位异步模式,可变波特率AUXR |= 0x04; // baude rate toggle modeAUXR |= 0x01; // select the baud rate from IAPROMTMOD |= 0x20; // timer 1 auto reload modeTL1 = 0xfd; // set the baud rateTH1 = 0xfd; // set the baud rateTR1 = 1; // start timer1}```对于PLC,不同品牌和型号设置方法可能不同,例如SIMATIC S7-300 PLC可以通过SDB接口,在PLC编程软件中进行串口参数的设置。
4. 半双工通信实现对于单片机与PLC之间的串口通信,一般是采用半双工通信的方式。
谈PLC与单片机串口通信的实现

谈PLC与单片机串口通信的实现提纲:1. PLC与单片机串口通信的概述2. 串口通信协议的选择和实现3. 建筑自控系统PLC与单片机串口通信实现的具体过程4. 使用PLC与单片机串口通信的应用案例5. 未来发展趋势及建议提纲1:PLC与单片机串口通信的概述PLC与单片机串口通信是建筑自控系统中常用的控制方式之一。
PLC和单片机都是控制器,在许多场合中需要它们之间进行通信和配合。
通过串口通信方式,让PLC和单片机相互传递信息,使建筑自控系统实现更加高效、合理、自动化的控制。
本文将通过分析串口通信协议的选择和实现、建筑自控系统PLC与单片机串口通信实现的具体过程、使用PLC与单片机串口通信的应用案例、未来发展趋势及建议等方面,来详细阐述PLC与单片机串口通信的实现。
提纲2:串口通信协议的选择和实现串口通信协议是PLC与单片机串口通信的核心部分。
在选择串口通信协议的时候,需要考虑通信内容、通信速率、通信距离、通信稳定等方面。
目前较为常用的通信协议有Modbus协议、Profibus协议、Can协议等。
在实现串口通信的过程中,需要在两个控制器中分别编写对应的程序,并通过串口将信息传递出去。
通信的程序需要考虑精度、稳定性、错误处理等方面,以确保信息的准确性和稳定性。
提纲3:建筑自控系统PLC与单片机串口通信实现的具体过程建筑自控系统PLC与单片机串口通信是建筑中常见的自控方式。
实现这种控制方式的具体过程是,通过相应的硬件电路连接PLC与单片机,编写PLC和单片机的控制程序,并通过串口通信协议进行信息传递和控制。
在这过程中,需要考虑通信协议的选择、程序的编写以及控制的稳定性等因素,以确保实现高效、自动化的建筑自控系统。
提纲4:使用PLC与单片机串口通信的应用案例PLC与单片机串口通信在建筑自控方面具有广泛应用。
在智能楼宇系统、厂房自动化系统、暖通空调系统等多个场合中,均有着重要的应用。
例如,在智能楼宇系统中,通过PLC与单片机的串口通信可以实现对楼宇内部各部件的控制和监控;在厂房自动化系统中,可以通过这种方式实现对生产线上各种设备的控制和监测;在暖通空调系统中,可以通过这种方式实现对温度、湿度等各项参数的自动控制和调节。
PLC与单片机串口通信的实现探讨

PLC与单片机串口通信的实现探讨
PLC与单片机之间的串口通信是工业自动化过程中常见的一种通信方式。
具体的实现
方法有很多,下面将对其中一种常见的实现方式进行探讨。
PLC与单片机之间的串口通信需要确定使用的串口通信协议。
常见的串口通信协议包
括RS232、RS485、Modbus等。
在确定使用的协议之后,需要进行硬件连接,即将PLC和单片机的串口接口相连。
RS232协议需要使用串口线连接PLC的RS232口和单片机的UART口,而RS485协议则需要使用RS485转TTL模块进行连接。
接下来,需要在单片机中实现与PLC之间的串口通信。
一般来说,可以使用单片机的UART模块进行通信。
通过配置波特率、数据位、停止位、校验位等参数,可以使单片机的UART能够与PLC的串口进行数据交互。
在单片机程序中,通过读写串口的数据寄存器,可以实现数据的接收和发送。
在实际应用中,需要根据具体的通信需求来选择合适的通信方式和协议。
对于简单的
数据传输,可以使用透明传输方式,将单片机的数据直接通过串口发送到PLC,或者将PLC 的数据直接通过串口发送到单片机。
而对于复杂的通信需求,可以使用现成的通信协议,
如Modbus协议,通过读写寄存器的方式进行通信。
PLC与单片机之间的串口通信是一种常见且重要的通信方式。
在实现过程中,需要确
定通信协议、进行硬件连接,同时在单片机和PLC的程序中分别完成相应的配置和数据交互。
通过合理的选择和配置,可以实现可靠、高效的PLC与单片机之间的串口通信。
探讨PLC与单片机之间的串行通信实现

探讨PLC与单片机之间的串行通信实现PLC(可编程逻辑控制器)与单片机(微型计算机)之间的串行通信实现是工业控制领域中的一个重要问题。
在许多工控系统中,PLC和单片机都担任着重要的控制角色,而两者之间的通信却是不可避免的。
在串行通信中,数据是逐位发送的,通常使用RS232、RS485、Modbus等协议,通信速度取决于通信协议和硬件设备。
PLC和单片机之间的串行通信可以通过以下几种方式实现:1. RS232串口通信RS232串口通信是一种最为基本的串行通信方式,它使用的是同步传输方式,通常用于短距离通信。
PLC和单片机都支持RS232串口通信,可以通过串口线连接并进行数据传输。
在通信过程中,需要注意通信协议的制定、数据格式的统一以及波特率的设定。
RS485串口通信是一种双向的、差分信号的串行通信方式,通常用于长距离通信和异地通信。
PLC和单片机都支持RS485串口通信,可以通过RS485转接板或者直接连接实现数据传输。
RS485通信协议相对简单,但需要注意地址编码、数据加工和防干扰等问题。
3. Modbus协议通信Modbus协议是一种串口通信协议,可用于PLC与单片机之间的数据传输。
Modbus协议支持RS232和RS485通信模式,其通信速度较快,可用于实时控制应用。
在Modbus通信中,需要设定起始地址、数据长度、读写模式等参数,以确保数据传输的正确性。
综上所述,PLC与单片机之间的串行通信实现有多种方式,大多数情况下,选择通信方式要根据具体应用场景及硬件设备考虑。
在通信过程中,需要注意通信协议的制定、数据格式的统一、波特率的设定以及防干扰等细节问题,以确保通信正常、可靠。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第37卷
5通信程序 5.1 PICl6F877单片机发送数据通信程序
报文采用定长发送,每一帧报文由五个字节组 成,每一温度值都经数字滤波后再发送。由于温度 值变化缓慢,对通信的实时性要求较低,在发送数据 通信程序中加入了较多的延时程序。由于波特率时 钟依赖于系统时基振荡器,所以单片机进入睡眠状 态时不能进行异步通信。单片机发送Ⅳ个测温点 温度数据通信程序流程图如图3所示。
宁符接收完成 中断连接1N.r—l
≠符计数器清零
异域校-聆码清J零
指针指向接收 缓冲K酋地址
图3单片机程序流程图
网4 INT一0程序流程图
(!型!:!堑堕)
...数...掘..存...人.jI:...一
接收缓冲Ⅸ
二二】=二
二二】二 字符计数器+1
◇——指—针‘T+—1 一 ±!
二二]二 凋J}tSBR一0
表1报文帧格式
墅壁 !
兰
!
兰
!
功能荤薯娑釜骤嚣曩囊
4初始设置 4.1 PICl6F877单片机发送数据初始设置
PICl6F877单片机内部集成的USART模块使 用的波特率应该和S7-200PLC相同,当采用高速波 特率时,波特率寄存器SPBRG由下式计算:
式中:卜单片机时钟频率。 SPBRG=∥(16×波特率)一1
s7.200系列PLC通信端口采用异步串行通信 方式,通信端口标准采用平衡驱动、差分接受的RS- 485接口标准,可以组成半双工串行通信网络,构成 分布式系统,系统中最多可以有32个站。¥7-200支 持多种串行通信协议,利用自由端口模式,可以通过 语句表或梯形图编程,实现用户定义的通信协议,很 方便地连接不同厂家的智能设备。在自由端口模式 下,可以连续地发送或接收255个字节以内的数据, 这在大块数据通信时是很方便的。也可以用字符接 收中断而不是用接受指令来控制接收数据,这样比 较灵活但编程比较麻烦H。。 2.3 MAX485E芯片
关键词:单片机;PLC;串行通信 中图分类号:TP393文献标识码:A文章编号:1000-3932(2010)02-0078-03
1引言 随着微处理器、计算机和数字通信技术的飞速
发展,计算机控制已经扩展到了几乎所有的工业领 域。其中,PLC和单片机在小规模控制系统中获得 了广泛的应用。
PIE和单片机各有所长,PLC使用简单、运行可 靠、抗干扰能力强,并具有较强的负载驱动能力,适用 于环境条件较差的工业现场,用作机械设备的主控器 件;单片机体积小、价格低、使用灵活,适用于家用电 器、办公设备、仪器仪表及传感器内部的核心器件。 在实际应用中,往往需要把二者结合起来,发挥各自 的长处,PLC和单片机通过通信交换信息,共同组成 控制系统。以前也有文章介绍过类似的应用,选用 8052单片机和FX系列PLC…。由于采用了RS-232 接口标准,其电平与TTL电平不兼容,需要电平转 换旧1;而且抗干扰能力差,最大传输距离为15 m。
5.2 s7-200PLC接收数据通信程序 PLC采用字符接收完成中断接收数据,通过起
始字节判断接收数据帧的开始,由数据长度决定接 收数据帧的结束,采用异或校验提高接收数据的可 靠性,ST-200PLC在接收完一帧数据后计算出接收 到数据的异或校验码,并与单片机传送过来的校验 码比较,如果不同就舍弃,不要求重发。本应用中传 送数据为温度值,舍弃后接收下一个数据即可。 PLC接收数据通信程序流程图如图4一图6所示。
Microchip公司的PICl6F877单片机采用哈佛总 线结构和精简指令集技术,具有功耗低、运行速度高、 驱动能力强和外接电路简洁的特点。PICl6F877单片 机内部集成了串行通信模块即通用同步/异步收发器 USART模块,主要应用目标是系统之间的远距离串 行通信。USART模块所需的两条引脚是RC6和
RC7,如图1所示,当发送允许位TXEN被置1,就可以 把发送数据写入TXREG寄存器来完成发送旧1。 2.2 87-200系列PLC
西门子公司的SIMATIC S7-200系列PLC属于 小型整体式PLC,由于其指令丰富,操作简便,运行 可靠和极强的通信功能而广泛应用于各种机械设备 和生产过程的自动控制中。
SPBRG的值要取整数,这样单片机的实际波特
率和PLC会有微小的误差。异步通信时通过检测字
符起始位的下降沿来实现同步,由于一个字符包含的
位数不多,即使发送方和接收方的收发频率略有不
同,一般也不会因累积误差而导致收发错位p1。
单片机的数据位、校验位、停止位要和PLC统一。
PICl6F877单片机最多只能连续发送两个字节
2.Departmetn of Computer Science and Technology,Unive巧ity of Science&Technology of China, Hefei 230027.China)
Abstract:In industfial automation.10ng—distance communication between the SCM and PLC is a difficult issue.The hardware and software implementations of long—distance serial communication between the S7-200 PLC and the PICl6F877 MCU were focused.MAX485E wag used to realize conversion between rIfrL level and difierential signal
如果使用通信端口O通信,将通过特殊存储器
SMB30进行初始设置。使用字符接收中断来接收
数据时,初始设置比较简单,只需将中断事件8与接
收数据的中断程序相连接,并设置波特率、数据位、
校验位、停止位即可”1。
用语句表编程的初始设置程序如下:
Networkl
LD
SM0.7
//若为RUN模式
EU
//上升沿
O
SM0.1
缓冲结构可知,一次只能连续发送两个字节的数据,
故PLC采用字符接收完成中断比较方便。接口标
准采用与PLC侧一致的RS-485,接头采用9针D形
连接器,传输线采用屏蔽双绞线,单片机侧的发送数
据需经转换后再发送。
字符信息格式为:1位起始位,8位数据位,无校
验位,1位停止位。
异步通信的字符信息格式如图2所示。
的数据。其初始设置汇编语言程序如下:
uST P=16F'877A;伪指令 INCLUDE”P16F877A.INC“ ;伪指令 ..-…………一一体1设置子程序 T1 BCF STATUS,RPI ;
BSF STATUS,RPO ;体l MOVLW D’ 5’ ;38 400 bit/s MOVWF SPBRG ; MOVLW B’00100100’;异步,发送使能 MOVWF TXSTA;高速,8化数据 MOVLW B’11101lll’;RC6,RC7, NOVWF TRISC;RCA通信 CLRF INTCON;禁止中断 RETURN ;子程序返同 ;……………~一体0设置子程序………………-
——F 字符接收完成
中断连接IN‘r一0
r瓢赢覆n
图5 INT_l程序流程图
网6 SBR一0程序流程网
6结论 由PICl6F877单片机和S7-200PLC组成的串行
通信系统,采用平衡驱动、差分接收的RS-485接口 标准,与TTL电平兼容,具有开发简单、成本低的优 点,经过试用证明性能稳定、运行可靠、抗干扰能力 强。如果需要,也可以进行半双工通信或略作改动 组成多机通信网络。
停]止压位 )口XⅨD互匹珏停酊止位匝
起始位
起始化
图2字符信息格式
数据位的发送顺序为低位在前,高位在后。 异步通信的传输速率即波特率选择为38 400 bit/s。 为提高数据传输的可靠性,采用异或校验,报文 采用定长发送,前四个字节参加异或校验,报文的最 后一个字节为校验码。PICl6F877单片机的模数转 换精度为10位,故温度值采用双字节保存。报文帧 格式如表l所示。
研究与应用
化工自动化及仪表,2010,37(2):78—80
Control and Instruments in Chemical Industry
单片机与PLC之间的串行通信实现
李生军1,李少蒙2
(1.天华化工机械及自动化研究设计院,兰州730060;2.中国科技大学信息工程学院,合肥230027)
参考文献:
[1]李晓辉.单片机与PLC通信的研究与应用[J].水力采煤与 管道运输,2006,(2):28—29.
[2] 张红涛,王三五,鲁力,等.5l单片机和PC机串行通信系 统设计[J].化工自动化及仪表,2005,32(4):39—41.
[3]李学海.PIC单片机实用教程一提高篇[M].北京:北京航 空航天大学出版社,2002.
t'/或首次扫描
MOVB
16轷,01,SMB30//38 400 bit/s,8,N,1
ATCH
INT O,8//中断与int O连接
ENI
//允许中断
Network2
LDN
SMO.7
EU
//上升沿
//若非RUN模式
R
SM30.0,1
//设置为PPI协议
DTCH
8 //禁止中断
万方数据
·80·
化工自动化及仪表
摘要:在工业自动控制中,单片机与PLC的远距离通信是一个难点与热点问题。本文设计了¥7-200PLC 与PICl6F877单片机实现远距离串行通信的硬件连接和软件实现方法。本文采用了MAX485E芯片进行,ITrL电 平与差分信号之间的转换,使用RS-485端口和半双工模式进行通信。最后通过异或校验码对接收到的数据进行 核对,以进一步提高数据传输的可靠性。实验证明,该方法成功实现了单片机与PLC的远距离通信,并且具有开 发简单,抗干扰能力强的特,最,具有一定实用价值。