实验十 自由口通信实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验十自由口编程实验
一、实验目的
了解PLC通信功能;初步掌握PLC自由口通信编程方法。
二、实验设备
1、THSMS-A型实验装置二台
2、安装了STEP7-Micro/WIN4.0编程软件的计算机一台
3、PC/PPI编程电缆,网络连接器。
4、锁紧导线若干
三、实验内容与步骤
(1)输入以下程序,通过串口调试软件(可从网上下载,下图为某一款软件主界面)或windows超级终端(使用方法附后,如果你的计算机中没有,请找老师或者从网上下载)观察现象。
Network 1 // 网络标题
// 传送:“S7-200你好”到VW100开始的五个字(十个字节)
LD SM0.1
MOVB 16#09, SMB30 //9600,8,N,1
MOVW 16#5337, VW100 //“S”和“7”的ASCII码
MOVW 16#2D32, VW102 //“-”和“2”的ASCII码
MOVW 16#3030, VW104 //两个“0”的ASCII码
MOVW 16#C4E3, VW106 //“你”字的汉字机内码,产生办法:找到汉字区位码,将区码和位码分别变为16进制,再分别加上A0即得
MOVW 16#BAC3, VW108 //“好”的机内码
MOVB 10, VB99 //缓冲区有10个字节(即“S7-200你好”),缓冲区格式见教材P145图7-22
Network 2
LD SM0.5 //秒脉冲,占空比50%
EU
XMT VB99, 0 //上升沿发送VB99中写明的字节数,从端口0发送
(2)输入以下程序,通过串口调试软件(可从网上下载,下图为某一款软件主界面)或windows超级终端(使用方法附后,如果你的计算机中没有,请找老师或者从网上下载)观察现象。
主程序:
Network 1 // 网络标题
// 网络注释
LD SM0.1
MOVB 9, SMB30
MOVB 1, VB100
MOVB 'A', VB101
Network 2
LD SM0.1
ATCH INT0, 8
ENI
Network 3
LD I0.1
EU
XMT VB100, 0
中断程序:
TITLE=中断程序注释
Network 1 // 网络标题
//SMB2中包含自由端口通信过程中从端口0 或端口1 收到的每个字符
LDB= SMB2, 'A'
= Q0.1
程序所用符号表:
拨动PLC开关进入运行状态,此时关闭STEP7软件,启动超级终端,在终端窗口分别输入CHINA123和chinAa123,观察PLC的Q0.1端子的灯亮来灭情况。记录现象,分析原因。(3)输入以下程序,通过串口调试软件(可从网上下载,下图为某一款软件主界面)或windows超级终端(使用方法附后,如果你的计算机中没有,请找老师或者从网上下载)观察现象。
主程序
网络一
LD SM0.7//SM0.7表示:PLC进入RUN状态时=1,进入TERM状态时=0
EU//上升沿表示刚进入RUN状态时触发调用子程序SBR_0
O SM0.1//并联SM0.1表示在第一个扫描周期时也要调用子程序SBR_0
CALL SBR_0:SBR0//调用语句(无参调用)
网络二:功能是在退出RUN状态时调用子程序SBR_1
LD SM0.7
ED
CALL SBR_1:SBR1
子程序0:
LD SM0.0//SM0.0为常通
MOVB 16#09, SMB30//设置自由口通信协议:波特率9600bps,8位数据位,1位停止位,无奇偶校验,无数据流控制
MOVB 250, SMB34//设置定时中断时间间隔为250ms
MOVB 14, VB100
ATCH INT_0:INT0, 10//中断连接:将10号事件(定时中断0)与中断程序INT_0连接
ENI//全局开中断
子程序1:
LD SM0.0
MOVB 16#08, SMB30///设置PPI通信协议从站模式:波特率9600bps,8位数据位,1位停止位,无奇偶校验,无数据流控制
中断程序0:
LD SM0.0
+D 1, VD200//VD200加1
DTA VD200, VB101, 0//将VD200中存储的双字转换为12个ASCII字符存储到VB101开始的12个字节中(见PLC手册“PLC功能指令”节)
XMT VB100, 0//发送VB100开始的缓冲区内容(缓冲区结构见教材P145图7-22,注意缓冲区的第一个字符不会发送出去!)
本程序所用数据块设置情况:
VB100 14 // 每次发送14个字节(12+回车+换行)
VD200 0 //初始化寄存器
VB113 16#0D //超级终端的结束和换行的ACSII
VB114 16#0A
拨动PLC开关进入运行状态,此时关闭STEP7软件,启动超级终端,在终端窗口中观看PLC 发送过来的信息,记录现象,分析原因。
四、练习与思考
1、分析教材例7-3和例7-4实现的功能。
2、盘点与端口0发送及接收中断相关的事件,归纳出PLC自由口通信编程要点,写在实验报告后面。
3、S7-200PLC支持哪些通信协议?请重点说出一两种通信协议。S7-200通信模块有哪些?
4、概述SMB30、86、87、88-94的作用(重点是SMB30、86、87、90)。使用自由口协议应使PLC在什么状态情况下有效?简述发送和接收缓冲区的结构。
5、完成教材习题P181之1、2、3、5、
6、7(选做2题)
五、报告要求
按规范要求整理出实验报告,写出过程中碰到的问题及处理方法,完成思考与练习题,写出心得体会。
补充知识:超级终端
提醒:在调试单片机系统时,我们常用widows自带的超级终端来做为显示。