1. 说明:
下面介绍的方法是关于如何在 GPRS 模式和 AT 指令模式之间,安全地切换 SINAUT MD720-3 调制解调器的工作模式。n
一个由 S7-200 CPU 和 SINAUT MD720-3 调制解调器组成的远程站,已经通过 GPRS 连接到中央站(如图1)。SINAUT MICRO SC 与已组态的远程站之间的通信已经建立。n
图1. 结构图n
2. WDC_CONTROL 块的基本功能:
SINAUT MICRO SC 指令库中的 WDC_CONTROL 块(如图2)用于修改 CPU 通信口(自由口或PPI)和调制解调器之间的通信模式。此功能块用于 GPRS、AT 指令和 Teleservice 之间的切换。本条目不具体介绍下列步骤。n
正常的步骤如下:n
- 如果 CPU 开始运行,连接调制解调器的 CPU 通信口会切换到自由口模式n
- 调制解调器建 GPRS连接n
- 如果成功建立连接,远程站会登录到中央站中n
- 如果用户程序要使用 AT 指令直接访问调制解调器(例如发送一条短消息),调制解调器必须被切换到 AT 指令模式。WDC_CONTROL 功能块的 ACT_AT_MODE 输入需要得到一个上升沿信号以激活模块的 AT 指令模式n
- 将工作模式切换回 GPRS 模式有两种方法:
- 送一个上升沿信号到 ACT_GPRS_MODE 输入点,经过 DELAY_TIME_GPRS 设定的延时时间后,工作模式切换回 GPRS 模式n
- 经过 MAX_TIME_AT 设定的延时时间后,模块状态自动切换回 GPRS 模
您可以通过 WDC_CONTROL 块的输出 Done、Aborted 和判断工作模式切换是否成功。 INI_MODE 会显示模块的当前工作模式。更多信息,请参考 SINAUT MICRO SC 系统手册,条目ID: 23119827
图2: WDC_CONTROLn
3. 切换到 AT 模式
如果您希望将模块的工作模式从 GPRS 切换到 AT 模式,设置 ACT_AT=“1”,触发如下过程:n
- WDC_CONTROL 块识别出上升沿变化,切换到改变工作模式状态 (INT_MODE = 0)n
- WDC_CONTROL 块发送更改请求到调制解调器n
- 调制解调器确认,返回 OKn
- WDC_CONTROL 块激活 AT 模式(INT_MODE = 3)
图3:切换到 AT 模式n
4.切换到AT模式过程中发生通信干扰:
用于连接调制解调器和 CPU 的 PC/PPI 电缆只能提供一种半双工通信。CPU 的数据接收设备拥有不同的优先级。在接收数据时进行向 AT 指令模式切换的过程中,会产生通信干扰。n
有如下两种特殊情况:
情况1:CPU 正在和调制解调器交换初始化数据
情况2:CPU 正在接收 GPRS 数据(例如实时时钟同步)n
如果在上述两种情况下切换调制解调器状态到 AT 指令模式,会造成通信干扰。 设置 ACT_AT = “1”后,会产生下列现象:n
- WDC_CONTROL 块识别出上升沿变化,切换到改变工作模式状态 (INT_MODE = 0)n
- WDC_CONTROL 块发送更改请求到调制解调器,于此同时,CPU 从调制解调器接收到数据n
- 向调制解调器发送的更改请求受到干扰n
- WDC_CONTROL 块没有受到 OK,并产生超时错误n
- WDC_CONTROL 块没有切换到 AT 模式 (INT_MODE = 0),产生一个错误信号 (ERROR = 1);模块不会再次试图切换调制解调器状态到 AT 指令模式
图5:干扰模式切换过程n
5. 工作环境:
只有在 CPU 没有接收数据的时候,模块才能够安全地从 GPRS 模式切换到 AT 模式。在模块初始化或者接收 GPRS 过程中,干扰非常有可能产生。为了防止在初始化过程中产生干扰,模块至少要在 GPRS 状态下工作 30 秒。否则,在切换到 AT 模式之前,您必须要做如下确认:n
- 在改变工作模式到 AT 模式之前,您必须确认 WDC_CONTROL 块的输出必须是 INT_MODE = “1” & DONE = “1” & BUSY = “0”n
- 输出 INT_MODE = “1”必须持续 30 秒以上
否则,如果 WDC_CONTROL 出现错误,您需要做下列操作:
编号 | 现象 | 说明 | 结果 |
1 | 如果 ERROR = “1”,再次送一个上升沿信号到 ACT_AT |
在将 ACT_AT 置 1 之前,您必须保证 WDC_CONTROL 已经在 ACT_AT = “0”的状态下至少运行了一个周期。 | WDC_CONTROL 或者将模块状态切换到AT模式,或者报错 |
2 | 如果再次遇到 ERROR = “1” ,再重复送两次上升沿信号到 ACT_AT | WDC_CONTROL 或者将模块状态切换到 AT 模式,或者报错 | |
3 | 尝试 3 次后,如果您还是得到报错信号送一个上升沿信号到ACT_GPRS 从而将模块状态切换回 GPRS 模式 | 在将 ACT_AT 置 1 之前,您必须保证 WDC_CONTROL 已经在 ACT_AT = “0”的状态下至少运行了一个周期。 | WDC_CONTROL 或者将模块状态切换到 GPRS 模式 |
4 | 按照上述过程再次尝试切换模块状态到 AT 模式 | WDC_CONTROL 或者将模块状态切换到 AT 模式,或者报错 |
说明:
您可以在下列关于 GPRS 和 SINAUT MICROSC 手册中获得更多信息:n
关键字:
通信,终端模式,OPC 模式,AT 模式,STEP 7-Micro/WIN
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc335727.html