西门子PLC模块6ES7216-2AD23-0XB8现货
专业销售西门子S7-200/300/400/1200/1500PLC,ET200分布式I/O:ET200S、ET200M、ET200SP、ET200PRO、3RW系列软启动器(3RW30/3RW40/3RW44/3RW31)、3RK系列电机启动器、数控系统、变频器(MM420/MM430/MM440/S110/S120/G120/G120C/V10/V20/V60/V80/V90/G130/G150)、人机界面、触摸屏、伺服、电机、西门子通讯电缆、现场总线、DP接头、工控机,西门子低压电器,仪器仪表等,并可提供西门子维修服务,欢迎来电垂询。
作为****的工业自动化和数字化解决方案提供商,西门子PLC控制器在工业自动化领域具有广泛的应用。作为西门子PLC控制器的全国代理商,我们引入了西门子PLC模块总代理,提供*新的西门子PLC控制器和西门子PLC模块,我们致力于为客户提供*优质的西门子PLC控制器产品,同时也提供各种控制面板和自动化系统的设计、开发和集成服务,帮助客户提高生产效率和管理效益。
S7-200做客户机:S7-300侧不需要写程序,只要把硬件组态正确,以太网模块的IP设置与S7-200以太网向导中配置的保持一致,此外还要建立与S7-200数据传输大小相对应的DB块。用网线将路由器与CP343-1/CP243-1进行连接。【200、300程序的下载省略】
下面介绍PC与S7-300经过路由器无线连接的配置 【192.168.0.1为路由器的IP】
通信功能的实现
通信程序要实现S7-300向一个S7-200站发送7个字节的数据,然后接收并存储该S7-200返回的6个字节数据。S7-300发送的7个字节中,第1个字节是地址信息,第2、3、4字节是吸泥泵及刮泥桥控制数据信息,第5、6字节是1、2字节和3、4字节异或值,作为校验判断信息,第7位字节数据信息无意义,仅仅是为了触发一次S7-200的字符接收中断程序;S7-200向S7-300发送的6个字节中,第1个字节是S7-200的站地址信息,第2、3、4字节是吸泥泵及刮泥桥状态数据信息,第5、6字节为校验信息。
3.1 S7-300端通信程序
在自由口模式下,无论S7-200还是S7-300,通信协议由程序控制。CP340通过调用FB2 P_RCV来接收数据,调用FB3 P_SEND来发送数据。发送功能块FB3 P_SEND的参数REQ上升沿初始化发送请求,参数DB_NO发送数据块编号,参数DBB_NO是发送数据在参数DB_NO数据块中起始字节,LEN传输数据的字节长度;接收功能块FB2 P_RCV参数EN_R允许读数据,参数DB_NO接收数据块编号,参数DBB_NO是接收数据在参数DB_NO数据块中起始字节。
S7-300采用轮循方式与两S7-200通信,即第一秒内向1号站发送数据,然后接收1号站返回的数据(S7-200在接收到S7-300发送的数据后会立刻向S7-300发送数据);第二秒内向2号站发送数据,然后接收2号站返回的数据,不停地循环通信
调用接收指令,当M30.1为1时(允许读数据),即定时器第一秒内接收1号S7-200站回传的6字节数据,存入DB22数据块中,起始字节为DB22.DBB0;当M30.2为1时,即定时器第2秒内接收2号S7-200站回传的6字节数据,存入DB22数据块中,起始字节为DB22.DBB8
3.2 S7-200端通信程序
S7-200 PLC程序分为主程序、子程序和中断程序,主程序完成控制和子程序调用功能,子程序完成通信口初始化功能,中断程序完成数据的接收和发送功能。发送数据采用发送指令XMT,接收数据采用逐字节接收方法,通信口接收每个字节都会暂存到特殊存储器SMB2中,并且产生中断,利用中断程序控制数据的接收。由于S7-200CPU的通信是建立在RS-485半双工通信硬件的基础上,接收和发送不能同时进行。通信中断程序要做到:接收指令不结束,就不能执行发送指令。
反映S7-200CPU工作方式的模式开关当前位置的特殊存储器位为SM0.7,它控制自由端口模式的进入。当模式开关处于TERM位置时,SM0.7为0;当模式开关处于RUN位置时,SM0.7为1。SMB30是自由口模式控制字节,用来设定校验方式、通信协议、波特率等通信参数(其各个位含义参阅相关手册),中断事件号8为端口0接收字符中断,中断事件号9为端口0发送完成中断。
当SM0.7为1时,调用子程序SBR_0设置SMB30,允许进行自由口通信;SM0.7为0时,调用子程序SBR_1重新设置SMB30,停止自由口通信,恢复PPI通信,便于用Micro/WIN软件对CPU运行状态进行监视。
S7-200通信程序详细介绍(1号站)
主程序MAIN(只给出与通信有关程序)
LD SM0.1
MOVB 1, VB1
//设置站地址
LD SM0.7
EU
O SM0.1
CALL SBR_0
//运行或模式开关从TERM打到ON时定义通信口为自由口
LD SM0.7
ED
CALL SBR_1
//模式开关从ON拨到TERM时定义通信口为PPI从站
子程序SBR_0
LD SM0.0
MOVB 16#09, SMB30
ENI
ATCH INT_11, 8
//定义通信口0为自由口模式,9.6K波特率,无校验,8位数据位,连接接收字符中断为中断程序INT_11
子程序SBR_1
LD SM0.0
MOVB 16#C0, SMB30
DTCH 8
DTCH 9
//恢复普通PPI通信设置
中断程序INT_11
LD SM0.0
AB= SMB2, VB1
MOVW +5, VW200
MOVD &VB640, VD688
ATCH INT_12, 8
//若站地址正确,连接接收字符中断到中断程序INT_12,并使VW200=5来计数,在INT_12中连续接收五个字节;若站地址错误,则继续由INT_11接收字节数据,要在S7-300中程序中将其余六个字节的高位进行设计,避免出现为内容1或2地址信息的字节,即使传输过程中因外界干扰,其余六个字节出现为1或2的假地址情况,程序也会在接下来1~2个接收过程中,因INT_13中断程序中的校验指令作用,得到错误校验值,而恢复到正常接收状态。
中断程序INT_12
LD SM0.0
MOVB SMB2, *VD688
INCD VD688
DECW VW200
//接收5个字节
LD SM1.0
MOVB 1, VB639
MOVW VW639, VW700
XORW VW641, VW700
ATCH INT_13, 8
//通过异或指令进行数据校验,连接接收字符中断到中断程序INT_13,即由第七个字节触发中断程序INT_13
中断程序INT_13
LD SM0.0
DTCH 8
//中断分离
LDW= VW700, VW643
MOVD VD640, VD400 //校验正确,将控制信息数据存到VB400~VB402
MOVB 6, VB600
MOVB VB1, VB601
BMB VB100, VB602, 5
ATCH INT_14, 9
XMT VB600, 0
//校验正确,使能发送,发送6字节数据VB601~VB606,连接发送指令结束到中断程序INT_14
LDW<> VW700, VW643
ATCH INT_11, 8
//校验不正确,连接接收字符中断到中断程序INT_11,进行新一次接收
中断程序INT_14
LD SM0.0
DTCH 9
ATCH INT_11, 8
//发送结束则连接接收字符中断到中断程序INT_11,进行新一次接收
4 电台选型和故障判断
数传电台选择了深圳友讯达科技发展公司的FC-201/B,该数传电台以其价格合理、运行稳定在国内得到广泛应用。通过友讯达提供的电台软件pfc5对电台进行参数设置,在S7-200两个站处将电台参数设置为:发射频率453.00,接收频率465.00,空中速率1200bps,工作模式为透明模式,串口波特率9600bps,串口校验和设为无;在S7-300站处将电台的参数中发射频率设为465.00,接收频率设为453.00,与S7-200站处电台收发频率对应,其余参数一致。
西门子PLC模块6ES7216-2AD23-0XB8现货