怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间?

n

描述
使用 S7-1200 控制器可以接收依据 NMEA 0183 标准 RMC 数据类型的 GPS 报文帧。GPS 报文帧通过连接在 S7-1200 通讯模块 CM1241 RS 232 接口的 GPS 接收器读取。
附件库中提供的的“gps_rcv”功能块,将提供给您当前位置的经度和纬度以及 UTC 时间日期格式的 DTL 数据变量,并且更新系统时间。“ gps_rcv” 功能块需要按照表 02 中的参数预先在硬件组态中设置。S7-1200 CM1241 RS 232 通讯模块不需要其他附加的端口组态。
“gps_rcv” 功能块在 CPU 一个循环周期被执行。当前位置值和日期时间信息会在若干周期后可用。变量的更多细节可参考表 06。n

使用说明
推荐的 NMEA-0183标准最小数据记录 C (RMC) 用于评估地理位置和 UTC 时间。数据结构如下。n

信息 内容 注释
数据记录的识别 $GPRMC 数据记录的开始
UTC时间 “hhmmss” or “hhmmss.sss” – 用于同步的数据连接
状态 “A” for OK or “V” for warning – 用于评估数据的有效性
纬度 “ddmm.mmmm” – 用于小数格式的纬度计算
方向 “N” for North or “S” for South
经度 “dddmm.mmmm” – 用于小数格式的经度计算
方向 “E” for East or “W” for West
速度 – 不适应
路线
日期 “ddmmyy” – 用于同步的 UTC 时间连接
偏离 – 不适应
标记
信号完整性 仅适应于 NMEA 0183 版本 V2.3
校验和 “*hh” 数据记录的结束

表01

n

单独的信息块以逗号分隔 (“,”)。n

注意

Microsoft Windows 自带的超级终端也可用于检测数据记录的读取。n

通讯参数
“gps_rcv” 功能块用于配置接收 NMEA 0183 标准的 GPS 接收器。规格如下:n

参数

设定
奇偶 校验
数据 位每个字符 8 个数据位
停止 位1
流量 控制

表 02

n

硬件构成
“gps_rcv” 功能块在下面列出的 GPS 接收机上测试成功。n

  • NAVILOCK NL-403P (额外的电源供电:5 V 直流电源 LOGO! POWER 5V DC/3A)n
  • GARMIN GPS18x PC (额外的电源供电:通过 S7-1200 CPU 供电,8-30 V直流 )

怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间?
图 01n

S7-1200 PLC 硬件组态

No. S7-1200 PLC 硬件组态
1. 连接 GPS 接收器到 S7-1200 PLC。 n

按照如下步骤:n

  1. 为 S7-1200 PLC 添加一块 CM 1241 RS 232 通讯模块。n
  2. 连接 GPS 接收器到这个通讯模块。

注意
您的 GPS 接收器需要连接以上描述的外部电源(电压电平和极性)

2.

“设备组态” 中添加通讯模块

按照如下步骤:n

  1. 浏览“项目树”点击“设备组态”n
  2. 选择“设备视图”n
  3. 从硬件目录拖动“通信模块” > “RS232” 并放置到设备视图。

怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间?
图02

表 03

n

评估位置值和同步 S7-1200 PLC 系统时间和日期
请参考项目附件中的“gps_rcv_proj.zip” 压缩文件中的例子。

No. 同步 S7-1200 PLC 的系统时间和日期
1. 下载并打开 S7-1200 全局库“gps_rcv”。 n

按照如下步骤:n

  1. 下载,解压缩并且打开 S7-1200 全局库“gps_rcv.zip” 。n
  2. 点击“打开全局库”按钮来打开库文件。

怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间?
图03

2.调用“gps_rcv” 功能块 n

按照如下步骤:n

  1. 拖放“gps_rcv”功能块到一个循环调用的网络。n
  2. 按照表 05 对“gps_rcv”输入参数赋值。

怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间?
图04

表 04

n

“gps_rcv”功能块输入参数

连 接

数据类型

注释
cmd_get_
time_n_date
BOOLRMC-GPS 消息的评估是上升沿触发的。
示例程序中使用时钟存储器位作为周期触发信号。 n

  1. S7-1200 PLC “设备组态”中打开“属性”选项卡,选择“系统和时间存储器”条目。n
  2. 激活选项框,使能时钟标志字节。n
  3. 输入时钟标志字节地址。在这个例子中,0.5 Hz 的标志位地址为 M10.7 。

怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间?图05

cmd_hw_idPORT

在这里,输入通信模块的硬件标识符。硬件标识符在“设备组态” > “CM 1241 属性” > “RS 232 接口” > “硬件标识符”中显示。n

怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间?

图06

cmd_baudUIntRS 232端口的波特率: n

  • 1: 300 baudn
  • 2: 600 baudn
  • 3: 1200 baudn
  • 4: 2400 baudn
  • 5: 4800 baud (标准设置)n
  • 6: 9600 baudn
  • 7: 19200 baudn
  • 8: 38400 baudn
  • 9: 57600 baudn
  • 10: 76800 baudn
  • 11: 115200 baud
cmd_restart BOOL 可选:这个变量的上升沿时可以修改 RS 232 接口的波特率。

表 05

n

“gps_rcv”功能块输出参数

变 量 数 据类型 注释
“gps_rcv_DB.gps_latitude_Real” Real 此变量包含小数格式(32 位浮点数)的当前纬度位置。结合“return_done” 评估该变量。
“gps_rcv_DB.gps_latitude_LReal” LReal 此变量包含小数格式(64 位浮点数)的当前纬度位置。结合“return_done” 评估该变量。
“gps_rcv_DB.gps_longitude_Real” Real 此变量包含小数格式(32 位浮点数)的当前经度位置。结合“return_done” 评估该变量。
“gps_rcv_DB.gps_longitude_LReal” LReal 此变量包含小数格式(64 位浮点数)的当前经度位置。结合“return_done” 评估该变量。
“gps_rcv_DB.return_done” BOOL 当 GPS 数据帧被成功接收和 CPU 系统时间更新成功时,在这个扫描周期该变量被置位为 “true” 。
“gps_rcv_DB.return_aborted” BOOL 当 GPS 数据帧或 CPU 系统时间同步失败时,在这个扫描周期该变量被置位为 “true” 。
“gps_rcv_DB.gps_time_n_date” DTL 该变量包含接收 GPS 数据的当前 UTC 时间。“return_done” 为 “true” 时,CPU 系统时间被同步为该变量。

表 06

下载
下载包含程序库和测试项目。
复制所需的文件到一个单独的目录,然后双击打开文件。
按照表 04 步骤解压装载程序库。解压项目后,您可以使用 STEP7 V11.0 SP2 打开和编辑该项目。

程 序库 测试 项目
怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间? gps_rcv_V11d2.zip ( 954 KB ) 怎样使用在市场上可买到的 GPS 接收器确定位置坐标和同步 S7-1200 PLC 的系统时间? gps_rcv_proj_V11d2.zip ( 2043 KB )

Table 06

附加说明
SIMATIC S7-1200 “点对点操作”的详细信息请参考条目36932465 或者 STEP 7 V11.0 SP2 的帮助。

创建环境
此 FAQ 相关的图片和下载使用 STEP 7 V11.0 SP2 Update 5 创建。该条目对于 CPU 固件版本 V2.2 或更高版本有效。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc329157.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论