plc与plc和单片机的区别之间怎么通讯啊???

每个时代都有一群爱“玩”的人,比如瓦特玩出了蒸汽机,……
近年来,以智能手机、智能硬件为代表的电子产品技术飞速……
泰克今年已经成立70周年了,甚至比仙童半导体、英特尔等……
孩子是父母一生的牵挂,但是由于很多现实问题,父母和孩……
演讲人:郭文兵时间: 10:00:00
演讲人:谢亦峰时间: 10:00:00
演讲人:陈杰时间: 10:00:00
预算:¥1,000-¥3,000预算:¥3,000-¥5,000
基于Modbus协议实现单片机与PLC之间的通讯
[导读]本文以Modbus通讯协议为例,详细讨论了一个人机系统中,如何用C51实现单片机和PLC之间通讯的实例。
关键词:&可编程控制器&&&Modbus&&&通讯协议
<FONT color=#& 引言&&& HMI(人机界面)以其体积小,高性能,强实时等特点,越来越多的应用于工业自动化系统和设备中。它有字母、汉字、图形和图片等不同的显示,界面简单友好。配有长寿命的薄膜按钮键盘,操作简单。它一般采用具有集成度高、速度快、高可靠且价格低等优点的单片机[1]作为其核心控制器,以实现实时快速处理。 PLC和单片机结合不仅可以提PLC的数据处理能力,还可以给用户带来友好简洁的界面。本文以Modbus通讯协议为例,详细讨论了一个人机系统中,如何用C51实现单片机和PLC之间通讯的实例。
<FONT color=#& Modbus通讯协议[4]&&& Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络和其它设备之间可以通信。&&& Modbus协议提供了主―从原则,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。主设备查询的格式:设备地址(或广播,此时不需要回应)、功能代码、所有要发送的数据、和一错误检测域。从设备回应消息包括确认地址、功能码、任何要返回的数据、和一错误检测域。如果在消息接收过程中发生一错误,或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。&&& 控制器能设置为两种传输模式:ASCII和RTU,在同样的波特率下,RTU可比ASCII方式传送更多的数据,所以采用KTU模式。(1) 典型的RTU消息帧典型的RTU消息帧如表1所示。
&&& RTU消息帧的地址域包含8bit。可能的从设备地址是0...127(十进制)。其中地址0是用作广播地址,以使所有的从设备都能认识。主设备通过将要联络的从设备的地址放入消息中的地址域来选通从设备。当从设备发送回应消息时,它把自己的地址放入回应的地址域中,以便主设备知道是哪一个设备作出回应。&&& RTU消息帧中的功能代码域包含了8bits,当消息从主设备发往从设备时,功能代码域将告之从设备需要执行哪些行为;当从设备回应时,它使用功能代码域来指示是正常回应(无误)还是有某种错误发生(称作异议回应,一般是将功能码的最高位由0改为1)。&&& 从主设备发给从设备消息的数据域包含附加的信息:从设备必须用于进行执行由功能代码所定义的行为。这包括了像不连续的寄存器地址,要处理项的数目,域中实际数据字节数。如果没有错误发生,从从设备返回的数据域包含请求的数据。如果有错误发生,此域包含一异议代码,主设备应用程序可以用来判断采取下一步行动。&&& 当选用RTU模式作字符帧时,错误检测域包含一16Bits值(用两个8位的字符来实现)。错误检测域的内容是通过对消息内容进行循环冗长检测(CRC)方法得出的。CRC域附加在消息的最后,添加时先是低字节然后是高字节。(2) 所有的Modbus功能码Modbus的功能码定义如表2所示。
<FONT color=#& 常用功能通讯程序的设计[5]&&& 本文介绍了几个Modbus常用功能程序的设计。笔者采用单片机作为主机,在单片机上编写程序实现单片机与PLC之间的通讯。由单片机向PLC发出命令信息,PLC自动作出回应。PLC通过单片机的串行通讯口通讯,程序用C51实现。程序的子函数及其功能:(1) 串口初始化void ProtocolInit(void)函数功能:串口设置为异步通讯方式1(起始位1位,数据位8位,停止位1位);定时/计数器1设置为波特率发生器,通讯速率 9600开串行中断,并把串行中断设置为高优先级。(2) CRC简单函数unsigned char Crc16(unsigned char *puchMsg, unsigned char usDataLen) 函数功能:先调入一值是全“1”的16位寄存器,然后调用一过程将消息中连续的8位字节各当前寄存器中的值进行处理。每个8位字符都单独和寄存器内容相或 (OR),结果向最低有效位方向移动,最高有效位以0填充。LSB被提取出来检测,如果LSB为1,寄存器单独和预置的值或一下,如果LSB为0,则不进行。整个过程要重复8次。在最后一位(第8位)完成后,下一个8位字节又单独和寄存器的当前值相或。最终寄存器中的值,是消息中所有的字节都执行之后的 CRC值。(3) 初始化变量void Initvar(void)函数功能:初始化所有过程变量。(4) 串行中断服务程序void ProtocolSerialProcess(void) interrupt 4 using 2&&& 函数功能:发送中断发送主机形成的命令数组,发送完后置标志位;接收中断接收PLC返回的响应数组,存入接收数组,并置标志位,且假设响应正确,留待主机处理。(5) 读N个位变量(线圈)void ProtocolRead_bit(unsigned char DeviceAddr/* PLC局号*/, unsigned char RegType/*寄存器类型*/, unsigned int BitAddr/*起始地址*/, unsigned char SubAddr/*子地址*/, unsigned int BitNum/*位数*/)函数功能:根据函数参数,形成读N个位变量的命令数组,启动发送。等待发送完并接收完(如超时未接收完则重新发送)。分析接收数组:正确,保存读取的数据;错误,重新发送。(6) 写一个位变量void ProtocolSetBit(unsigned char DeviceAddr/* PLC局号*/, unsigned char RegType/*寄存器类型*/, unsigned int BitAddr/*地址*/, unsigned char SubAddr/*子地址*/, unsigned int ClrSet/*写值“1”或“0”*/)函数功能:根据函数参数,形成置某位变量为“1”或“0”的命令数组,启动发送。等待发送完并接收完(如超时未接收完则重新发送)。分析接收数组:正确,返回;错误,重新发送。&&&& (7) 读N个字节变量void ProtocolReadByte(unsigned char DeviceAddr/* PLC局号*/, unsigned char RegType/*寄存器类型*/, unsigned int RegAddr/*起始地址*/, unsigned char SubAddr/*子地址*/, unsigned int RegNum/*个数*/)函数功能:根据函数参数,形成读N个字节变量的命令数组,启动发送。等待发送完并接收完(如超时未接收完则重新发送)。分析接收数组:正确,保存读取的数据;错误,重新发送。(8) 写N个字节变量void ProtocolSetByte(unsigned char DeviceAddr/* PLC局号*/, unsigned char RegType/*寄存器类型*/, unsigned int RegAddr/*起始地址*/, unsigned char SubAddr/*子地址*/, unsigned int RegNum/*个数*/)函数功能:根据函数参数,形成写N个字变量的命令数组(要写的数从某参数数组中读取),启动发送。等待发送完并接收完(如超时未接收完则重新发送)。分析接收数组:正确,返回;错误,重新发送。
<FONT color=#& 结束语&&& 以上的程序已经通过实验,并应用于实际的人机系统中。依照类似的方法,可以编写其他不同功能的程序,实现对PLC的不同控制和操作。利用单片机和PLC进行优势互补,可以组成网络化、智能化的工业控制系统。另外整个单片机系统程序用C51语言编程,程序简洁,便于阅读与调试。单片机和人机界面结合可以实时的显示PLC的工作状况,实时的控制、设置、调整PLC工作情况,提高工业控制的自动化程度和实时性。
英特尔于日宣布了4004处理器及其芯片集,它是芯片巨人第一个完整的单片机和第一个商业微处理器。4004处理器有2300个晶体管,手指甲大小,计算性能与第一代电子计算机相当,但第一代计算机需要占据整间房......关键字:
这是第一个无需借助PC或其他系统,即可实现在PLC之间进行传播的蠕虫病毒。......关键字:
支撑“万物互联”场景的5G技术标准博弈仍在继续,而中国厂商正在以另一种方式谋取5G时代到来前的技术话语权。日前,中兴通讯(000063.SZ)与日本软银集团正式签订5G战略合作协议,双方以适用于TD-LTE系统的Pre5GMassiveMI......关键字:
最近中国在线视频行业的新闻还真不少,几天前百度才刚刚取得爱奇艺的大多数股权,今天我们又迎来了优酷土豆与 Sony Pictures 达成 5
年内容协议的消息。据悉未来优酷土豆将为付费用户提供大约 300 部 Sony Picture......关键字:
孟庆建市场普遍预计5G商用要等到2020年,但运营商已表现的迫不及待,欲提前摘取5G关键技术在空窗期商用。近日,华为、中兴双双与软银等运营商伙伴发布了“后4G”时代技术解决方案。7月13日,中兴通讯与日本软银正式签订5G战略合作协议,双方将......关键字:
除了发明电子邮件外,他还参与制定了许多网络协议,包括1974年为远景网络制定的TCP/IP协议。
......关键字:
我 要 评 论
热门关键词文档分类:
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,
下载前请先预览,预览内容跟原文是一样的,在线预览图片经过高度压缩,下载原文更清晰。
您的浏览器不支持进度条
淘豆网网友近日为您收集整理了关于S7-200PLC与单片机间ModBus主从通信方式-论文的文档,希望对您的工作和学习有所帮助。以下是文档介绍:2015年第 3期 工业仪表与自动化装置 &#183;19&#183; S7—200 PLC 与单片机间 ModBus 主从通信方式邹益民(南京铁道职业技术学院通信信号学院,南京 210031) 摘要:介绍一种基于 ModBus协议的 S7—200 PLC扩展方式,该系统可使用主站或从站方式, 与 MCS51单片机进行 ModBus数据通信,最终扩展 s7—200的数据计算、人机接口等应用功能。该文对 s7—200的 ModBus—RTU主站及从站通信指令,羊片机 ModBus通信编程以及 MCS51单片机基于 Preteus与 VSPD虚拟串口的仿真调试技术等进行了较详细的介绍。文中给出的系统设计方案可给 PLC的功能扩展应用提供借鉴。关键词:PLC;s7—200;单片机;ModBus协议;数据通信;功能扩展中图分类号:TP23;TP274
文献标志码:A
文章编号:(19—03 Research on m aster— m unications between S7 —200 PLC with SCM
based on M odBus protocol ZOU Yimin (School ofRailway munication,Nanjing Institute ofRailway Technology,Nanjing 210031,China) Abstract:A s7—200 PLC expansion mode based on ModBus protocol was introduced. In master or slave mode,PLC achieved ModBus munications with SCM ,and ultimately expanded PLC’S puting and puter interface application features.In this paper,detailed descriptions about the S7—munication instruction for ModBus— RTU.the munication programming of SCM and the debugging techniques of MCS5 1 based on Preteus and VSPD virtual serial port were also presented. The system design scheme could provide reference for the PLC function expansion. Key words:PLC;S7—200;SCM(Single Chip puter);ModBmuni-functional expansion 0
引言 PLC由于功能强、性价比高、可靠性高、扩展灵活、环境适应能力强及安装维护方便等突出优点而在自动控制系统中得到广泛应用。但在实际应用中,单独使用 PLC构建控制系统仍然存在某些不足:PLC的数据处理和管理能力较弱,也不能给用户提供良好的人机交互界面。故在某些特定应用场合,若能将 PLC与单片机系统相结合,构成功能灵收稿日期: 基金项目:江苏省轨道交通工程研发中心开放基金项目“基于计算机视觉及多信息融合的轨道交通异常客流实时监控系统”作者简介:邹益民(1963),男,2006年毕业于北京理工大学自动控制系,获得博士学位,教授,主要研究方向为控制理论与工程,导航与制导,图像处理,模式识别。活的扩展模块,可大大丰富 PLC的应用功能&#168;I2]。 ModBus协议是一种可靠而有效的工业控制系统通信协议,现已被众多的硬件厂商所支持并广泛应用, 通过 ModBus协议可以方便地完成现场控制网络的数据传输 J。该文以应用广泛的 SIEMENS公司 s7—200 PLC为例,介绍一种以 ModBus协议为纽带,借助单片机扩展其应用功能的系统方案。文中以 s7—200 的 ModBus主站及从站通信指令为例,介绍了 PLC 的 ModBus典型指令集;再以 MCS51系列单片机为例,介绍了 ModBus协议编程方法。 Proteus软件是英国 Lab Center Electronics公司开发的 EDA工具软件,可在硬件系统开发完成之前,以软件的方式快速实现对 MCS51单片机程序的仿真调试 。VSPD(Virtual Serial Port Driver)是德&#183;20 &#183;
工业仪表与自动化装置 2015年第 3期国 Ehima公司开发的一款虚拟串口软件,采用该软件可成对地虚拟出多个串口,以方便用户对串口收发应用程序的调试 。而 ModScan32及 ModSim32 则是两款用于 ModBus通信功能调试的工具软件, 可方便地实现 ModBus主站及从站的功能 J。该文同时介绍了基于上述软件的 MCS51仿真调试技术, 为用户快速实现 ModBus—RTU软件开发提供方便。 Modbus可方便地构建多机网络,故该方案若在联网模式下应用时,多个位于不同地理位置的 PLC 与单片机可相互选择。一个 PLC可控制多个单片机扩展模块;同理,一个扩展模块也可为多个 PLC 服务,从而形成一个灵活的功能扩展网络系统。笔者采用此方案实现了一个简单的单片机 LCD一键盘人机操作模块,应用效果良好。 1
S7—200系列 PLC的通信指令 1.1
S7-200系列 PLC支持的 ModBus—RTU通信功能码 s7—200系列 PLC仅支持 ModBus—RTU模式下 ModBus协议中定义的O1~06以及 15和 16功能码 J,其支持的功能码表如表 1所示。表 1
ModBusRTU从站功能码功能码 主站使用相应功能码作用于此从站的效用 0l
读取单个/多个输出线圈状态。 O2
读取单个/多个输入触点状态。。读取单 多个保持寄存器,返回 V存储区的内容“字”。 o4
读取单个/多个输入寄存器(模拟量输入值)。 05
写单个线圈为指定的值。 O6
写单个 V存储区中的保持寄存器。写多个输出线圈。输出点的地址必须以字节边, 界起始,并且输出点的数目必须是 8的整数倍(用户程序可以覆盖 ModBus通信请求写入的)值。 16
写多个 V存储区中的保持寄存器。 1.2 S7—200系列 PLC的主站通信指令 s7—200的主站指令库支持端口0~1,由 2条通信指令组成: 1)MBUS—CTRL指令用于组态 PLC为 ModBus—RTU主站,用户还可定义通信波特率、奇偶校验及主站等待从站响应的超时值等,详细格式如下: 宝∞ 奇 响 出波偶 应 错(,)
模 特 0 I 式 校 时 信室 c廿验 间 息 2)MBUS—MSG指令格式用于读写从机数据。用户可指定从设备地址、数据读/写方向、从站寄存器地址、待读写的从站数据元素(位或字)数目及主 PLC1播放器加载中,请稍候...
该用户其他文档
下载所得到的文件列表S7-200PLC与单片机间ModBus主从通信方式-论文.pdf
文档介绍:
2015年第 3期 工业仪表与自动化装置 &#183;19&#183; S7—200 PLC 与单片机间 ModBus 主从通信方式邹益民(南京铁道职业技术学院通信信号学院,南京 210031) 摘要:介绍一种基于 ModBus协议的 S7—200 PLC扩展方式,该系统可使用主站或从站方式, 与 MCS51单片机进行 ModBus数据通信,最终扩展 s7—200的数据计算、人机接口等应用功能。该文对 s7—200的 ModBus—RTU主站及从站通信指令,羊片机 ModBus通信编程以及 MCS51单片机基于 Preteus与 VSPD虚拟串口的仿真调试技术等进行了较详细的介绍。文中给出的系统设计方案可给 PLC的功能扩展应用提供借鉴。关键词:PLC;s7—200;单片机;ModBus协议;数据通信;功能扩展中图分类号:TP23;TP274
文献标志码:A
文章编号:(19—03 Research on m aster— m unications between S7 —200 PLC with SCM
based on M odBus protocol ZOU Yimin (School ofRailway munication,Nanjing Institute ofRailway Technology,Nanjing 210031,China) Abstract:A s7—200 PLC expansion mode based on ModBus protocol was introduced. In master or slave mode,PLC achieved ModBus munications with SCM ,and ultimately expanded PLC’S putin...
内容来自淘豆网转载请标明出处.您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
单片机与PLC之间的串行通信实现.pdf3页
本文档一共被下载:
次 ,您可免费全文在线阅读后下载本文档
文档加载中...广告还剩秒
需要金币:3 &&
你可能关注的文档:
··········
··········
化工自动化及仪表,):78―80
研究与应用
ControlandInstrumentsinChemical
单片机与PLC之间的串行通信实现
李生军1,李少蒙2
(1.天华化工机械及自动化研究设计院,兰州.中国科技大学信息工程学院,合肥230027)
摘要:在工业自动控制中,单片机与PLC的远距离通信是一个难点与热点问题。本文设计了$7-200PLC
平与差分信号之间的转换,使用RS-485端口和半双工模式进行通信。最后通过异或校验码对接收到的数据进行
核对,以进一步提高数据传输的可靠性。实验证明,该方法成功实现了单片机与PLC的远距离通信,并且具有开
发简单,抗干扰能力强的特,最,具有一定实用价值。
关键词:单片机;PLC;串行通信
中图分类号:TP393文献标识码:A文章编号:10)02-0078-03
RC7,如图1所示,当发送允许位TXEN被置1,就可以
随着微处理器、计算机和数字通信技术的飞速
把发送数据写入TXREG寄存器来完成发送旧1。
发展,计算机控制已经扩展到了几乎所有的工业领
2.2 87-200系列PLC
域。其中,PLC和单片机在小规模控制系统中获得
西门子公司的SIMATICS7-200系列PLC属于
了广泛的应用。
小型整体式PLC,由于其指令丰富,操作简便,运行
可靠和极强的通信功能而广泛应用于各种机械设备
PIE和单片机各有所长,PLC使用简单、运行可
靠、抗干扰能力强,并具有较强的负载驱动能力,适用
正在加载中,请稍后...二次元同好交流新大陆
扫码下载App
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(2666)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'单片机和PLC之间的通讯:关于485接口',
blogAbstract:'&
RS485接口由来
智能仪表是随着80年代初单片机技术的成熟而发展起来的,现在世界仪表市场基本被智能仪表所垄断。究其原因就是企业信息化的需要,企业在仪表选型时其中的 一个必要条件就是要具有联网通信接口。最初是数据模拟信号输出简单过程量,后来仪表接口是RS232接口,这种接口可以实现点对点的通信方式,但这种方式 不能实现联网功能,随后出现的RS485解决了这个问题。
RS485接口的电气特性
RS485采用差分信号(正?)逻辑,+2V~+6V表示“1”,- 6V~- 2V表示“0”, 该电平与',
blogTag:'单片机,plc,2530,串口485,232',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:6,
publishTime:4,
permalink:'blog/static/',
commentCount:0,
mainCommentCount:0,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}&&&&单片机与PLC的通讯
单片机与PLC的通讯
介绍单片机与PLC的通讯,讲述如何与PLC通讯。
嵌到我的页面
<input type="text" readonly="true" value="">
若举报审核通过,可奖励20下载分
被举报人:
shenfeikeji
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
开发技术下载排行

我要回帖

更多关于 plc和单片机的区别 的文章

 

随机推荐