4000_通讯_ADS通讯-高级语言

上传人:紫*** 文档编号:133013474 上传时间:2020-05-23 格式:PPT 页数:26 大小:3.18MB
返回 下载 相关 举报
4000_通讯_ADS通讯-高级语言_第1页
第1页 / 共26页
4000_通讯_ADS通讯-高级语言_第2页
第2页 / 共26页
4000_通讯_ADS通讯-高级语言_第3页
第3页 / 共26页
4000_通讯_ADS通讯-高级语言_第4页
第4页 / 共26页
4000_通讯_ADS通讯-高级语言_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《4000_通讯_ADS通讯-高级语言》由会员分享,可在线阅读,更多相关《4000_通讯_ADS通讯-高级语言(26页珍藏版)》请在金锄头文库上搜索。

1、1 ADS通讯 高级语言 TheWindowsControlandAutomationTechnology 李小宁 TwinCAT23 05 20202 TwinCAT介绍 TwinCAT介绍 TwinCAT TheWindowsControlandAutomationTechnology特点 不改变Windows无需PC外的其他硬件将标准Windows变成实时操作系统循环时间可短至50微秒 强制优先排序完全支持浮点单元 FPU 硬件平台PC 高性能 高精度的控制任务CX 适用于中大型复杂控制任务BX 适用于中等规模控制任务BC 适用于小规模控制任务软件平台XP XPE CE等通讯可通过OCX

2、 Dll访问Windows用户界面可通过TCP IP OPC等实现远程访问 TwinCAT23 05 20203 TwinCAT硬件平台 性能 BC系列 BX系列 CX系列 costs TwinCAT 一个工具适用于所有平台 TwinCAT介绍 Beckhoff控制器分4个性能等级 工业PC高性能 高精度等级的自动化设备 TwinCAT23 05 20204 TwinCATSystemManager TwinCAT介绍 系统硬件管理扫描 配置系统软件管理起停 时基 通讯系统调试诊断 Freerun 4套PLC独立运行 TwinCAT23 05 20205 TwinCATSystemManage

3、rIO映射 TwinCAT过程映像 现场总线1 现场总线2 现场总线3 映射 TwinCAT结构 系统IO映射对所有主要现场总线开放支持PC硬件接口易于安装和诊断从逻辑映射到物理I O LIGHTBUS EthernetTCP IP RS232RS485 TwinCAT23 05 20206 TwinCATPLCControl TwinCAT介绍 每套PLC的Input区16 000字节 甚至还可增加 支持源代码下载 上传源代码时所有注释均可保留 其他工具软件示波器软件 scopeview设备仿真器 CE5 CE6 最多4个Task设定优先级任务最短50us充分利用IPC的内存 硬盘和CPU资

4、源 Task是分配CPU资源的唯一入口 TwinCAT23 05 20207 TwinCATPLCControl TwinCAT介绍 PLC可直接在开发环境的机器上运行 类似高级语言的调试功能 支持断点功能独立启动和停止PLC模块化结构组件 Visulization TwinCAT23 05 20208 TwinCATPLC功能库 TwinCAT介绍 TwinCAT通讯 系统拓扑 R3IO是通过指针直接访问IO内存映射 本地操作 把它当成高级语言编写的PLC ADS是网络通讯 可以是远程访问通讯周期 R3IO通讯时间可以忽略 数据交换时间取决于定时器 CE试用BECKHOFF提供的TcTime

5、r可以达到100微秒XP系统最小在1毫秒左右ADS通讯时间在2 3毫秒左右 但是考虑到ADSServer的响应时间 一个命令周期可能需要200毫秒上位用户界面和BECKHOFF产品通讯主要方式 实时非远程 R3IO非实时远程 ADS通讯 Modbus OPC等 9 TwinCAT介绍 TwinCAT23 05 202010 Internet ADS路由器 ADSDll TwinCATOPC服务器 VB C VB Net DelphiC XML VB C Delphi C ASP OCX Net 第三方 Wrapper BeckhoffADS接口开放 简单 灵活 文档齐全支持多家Scada软件标

6、准OPC接口支持的规范 DA AE XML Explorer第三方 TwinCAT通讯接口 第三方 TwinCAT介绍 11 ADS简介 在BeckhoffTwinCAT系统中 各个软件模块 如TwinCATPLC TwinCATNC Windows应用程序等 的工作模式类似于硬件设备 它们能够独立工作 各个软件模块之间的信息交换通过TwinCATADS而完成 ADS AutomationDeviceSpecification 即自动化设备规范 它为设备之间的通讯提供路由 在TwinCATPC和Beckhoff的CX BX BC系列控制器中都包含TwinCAT信息路由器 因此各个ADS设备之间

7、都能够交换数据和信息 基于ADS的TwinCAT系统构架如下图所示 12 ADS通讯协议概述 ADS协议处于网络通讯协议的应用层 应用层 传输层 Internet层 网络接口层 TCP IP模型 OSI模型 13 TwinCATADS设备标识 每台TwinCATADS设备都有各自不同的AdsAmsNetId和AdsPort 端口号 以相互区别 AdsAmsNetId是TCP IP地址的扩展 是TwinCATMessageRouter 存在于每台TwinCATPC或BeckhoffCX BX BC系列控制器中 例如 如果一台PC的IP地址是 192 168 2 10 那么它的AdsAmsNetI

8、d就是 192 168 2 10 1 1 当然 也可以对AdsAmsNetId进行修改 每台ADS设备 ADSServer 的AdsPort都各不相同 且固定不变 而ADS客户端 ADSClient 应用程序的AdsPort则是可变的 不同ADS设备的AdsPort如下图所示 14 ADS通讯方式 ADS设备之间的通讯有多种方式 不同方式有不同的特点 一般的ADS通讯 GeneralADSServices 异步方式 Asynchronous ADS客户端向ADS服务器发送ADS请求 同时客户端继续自己的工作 ADS服务器处理请求后 把响应以Call back函数方式发给客户端 通知方式 Not

9、ification ADS客户端向ADS服务器发送ADS请求 ADS服务器以Call back函数的方式不断向客户端发送响应 直到客户端取消该请求 这两种通讯方式的效率高 但需求复杂的客户端程序 优点 不会造成系统堵塞缺点 不能确保每次请求都有返回 15 ADS通讯方式 特殊的ADS通讯 SpecificADSServices TwinCATADS设备和Windows应用程序 例如VB VC应用程序等 之间的通讯除了可以采用一般的ADS通讯方式外 还可以采用特殊的通讯方式 即同步通讯方式 同步方式 Synchronous ADS客户端向ADS服务器发送ADS请求 在通讯过程中客户端程序停止执行

10、 直到获得ADS服务器返回的响应 这种通讯方式不需求复杂的客户端程序 但其轮循的通讯方式给系统带来比较大的负载 因此通讯效率较低 优点 能即时返回结果缺点 如果通讯故障会造成系统堵塞 16 ADSAPI 为方便各种计算机高级语言及其环境使用ADS通讯 BeckhoffTwinCAT提供相如下组件 ADS NETComponent适用 NET平台 VB NET C 等 ADS OCX ActiveXCOM控件 适用于VisualBasic VisualC Delphi等 ADS DLL适用于VisualC 等 ADS Script DLL适用于VBScript Jscript等脚本 创建B S架

11、构的应用 JAVADLL适用于JAVA语言 PlcSystem lib PLC库ADS设备可以通过据此和其他ADS设备以及Windows进行通讯 17 ADS访问变量方式 TwinCATADS访问变量有两种方式 1 地址方式一个PLC变量的地址由两部分组成 GroupIndex和OffsetIndex GroupIndex一般用于区别寄存器类型 在TwinCATADS设备中为常量 具体内容可以参考InformationSystem 后附常用的GroupIndex值 OffsetIndex为变量的偏移地址 在PLC中为该变量的地址 2 变量名方式在TwinCATADS设备中每个变量都有一个句柄

12、Handle 适用变量名访问变量首先需要得到该变量的句柄 不同的高级语言方式略有不同 18 常用的GroupIndex 1 对于MX IX QX寄存器的偏移地址的单位是 位 而不是字节 计算地址需要注意2 M寄存器偏移地址最大值为0 x0000FFFF 而MX I IX Q QX偏移地址最大值为0 xFFFFFFFF 3 上表后三个主要用于C 语言 其他高级语言已经封装成专有方法 不需直接调用 19 ADS组件库文件组成简介 ADS组件库集成在TwinCAT软件中 安装任何版本的TwinCAT软件都包含ADS通讯组件 如果用户希望在没有安装TwinCAT软件的计算机适用ADS通讯组件可以安装S

13、upplement中的TwinCAT ADS Communication Library此为免费产品 除需要复制到Windows System32目录外绝大部分相关文件可以在TwinCAT安装目录找到 假设TwinCAT安装路径为C TwinCAT 20 Ads组件调用过程简介 NET调用流程 新建工程 添加引用TwinCAT Ads dll 定义TcAdsClient对象 privateTcAdsClientadsClient 初始化TcAdsClient对象 adsClient newTcAdsClient adsClient Connect 801 通过变量名取得变量的句柄 注册Devi

14、ceNotification事件 用于读写变量 AddDeviceNotification 读写变量 接受处理返回结果 释放资源 21 Ads组件调用过程简介 C 在VisualC 中进行链接和程序开发时所需要的文件 TcAdsDll dll 动态链接库 TcAdsDll lib 使用TcAdsDll dll的函数库 TcAdsApi h 声明ADS功能的头文件 TcAdsDef h 声明结构和常数的头文件主要接口 AdsPortOpen 建立TwinCAT信息路由器连接 通讯口 AdsPortClose 关闭TwinCAT信息路由器的连接 通讯口 AdsGetLocalAddress 返回本

15、地NetId和端口号AdsSyncWriteReq 同步写数据到一个ADS设备AdsSyncReadReq 从ADS服务器中同步读数据 AdsSyncReadWriteReq 同步写入数据到ADS服务器中并从ADS设备接收返回的数据 AdsSyncReadStateReq 从ADS服务器中读ADS状态和设备状态 AdsSyncAddDeviceNotificationReq 通知在ADS服务器中进行定义 如PLC 当某个事件发生时 该功能 回调功能 在ADS客户端进行调用 C程序 AdsSyncDelDeviceNotificationReq 从ADS服务器中删除以前定义的通知 22 辅助工具

16、 TwinCATADSMonitor TwinCATADSMonitor可以抓取ADS通讯数据包 ADS数据结构 帧数据 通讯数据帧记录 23 辅助工具 仿真器 1 下载文件 以下路径为FTp路径 ftp Software embPC Control CE Solutions CX Emulator emulator zip CE仿真器英文 Software embPC Control CE Solutions SDK BeckhoffHMI500V1 3SDK msi Software embPC Control CE Solutions VS NET2005 CE5 DbgHlp zip2 仿真器安装 a 安装MicrosoftWindowsCE5 0Emulator msi需要连接互联网 一定注意 b 安装完仿真器 再安装虚拟网卡驱动netsvwrap msi3 配置 a 安装后修改StartEmulator DE bat文件 将参数中的 Ethernet的MAC改为本地网卡的实际MAC地址b 参数vmid后的GUID值做为保存映像是的文件夹名称 4 设置仿真器和VS net集成

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 电气安装工程

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号