3。2。1 Modbus协议介绍 14
3。2。2 Modbus主从站协议原理 15
3。2。3 RTU传输模式 15
3。2。4 Modbus功能代码 16
3。2。5 Modbus协议举例 17
3。3本章小结 17
第四章 串口通信数据采集程序设计 19
4。1自由口通信数据采集程序设计 19
4。1。1硬件组态 19
4。1。2编写主程序 22
4。2 Modbus协议实现串口通信数据采集 24
4。2。1硬件连接 24
4。2。2硬件组态 25
4。2。3编写主程序 27
4。2。4调试 31
4。3本章小结 33
结语 34
致谢 35
参考文献 36
第一章 绪论
1。1 课题的研究目的和意义
近年来,随着科技的发展,在工业生产中,需要访问各控制器、HMI、仪表等设备的实时数据,需要进而建立集中的网监系统。同时,由于工业生产环境比较恶劣,设备间距离较远,要求设备间的通信具有高速性、高度的稳定性和很强的抗干扰能力。
异步串行通信使用两根数据线,一根用来发送数据,一根用来接受数据,每一位占据一个固定的时间长度,将数据按位依次传输,极大的简化了设备间数据传输所用线缆的数量,同时其具有传输距离远,抗干扰能力强的特点,解决了工业生产过程中的繁杂线路问题和可靠性问题,因此,特别适合用于工业控制网络。
在选用PLC系列方面,由于西门子的S7-1200系列比S7-200功能更强大,价格又比S7-400系列低,性价比很高。故此课题选用S7-1200系列PLC通过RS485总线搭配自由口通信协议和Modbus通信协议实现PC对S7-1200串口数据采集工作,原理可应用于工业生产中,实现对各个控制器及仪表设备等的实时数据的访问,进而建立集中的网监系统,实时总监工业网络当前的运行工况并分析其变化趋势,方便我们做出整体规划,指导设备运行实现自动控制。
1。2 课题研究现状及问题
1。3 本课题的主要工作内容和结构安排
1。3。1 本课题的主要工作
本课题主要是基于RS485串口通信,通过两种协议实现PC端与S7-1200之间的串行数据通信。
(1)基于自由口通信协议,通过组态RS485和PLC,编写串口通信程序,实现点对点通信,即PC与PLC之间的数据访问。
(2)基于Modbus通信协议,通过组态RS485和PLC,编写主从站通信协议,实现PC与PLC之间的通信功能。
1。3。2 本课题的结构安排
本论文共由五部分组成,其内容组织如下所示:
第一章绪论。简单概括性的介绍了此课题研究的背景、意义和目的、以及主要研究内容。
第二章主要是对硬件部分的介绍,其在通信网络中的应用非常广泛。本章对西门子的S7-1200的CPU结构和扩展模块进行了简单的介绍,其次介绍了CM 1241 RS485模块。最后是对编程软件STEP 7 V13的介绍,这一强大的编程软件提供了集成化、可视化的操作界面。为用户组态接口和编写程序提供了高效的途径。