ADS通讯高级语言课件.ppt

上传人(卖家):晟晟文业 文档编号:3710743 上传时间:2022-10-06 格式:PPT 页数:26 大小:2.29MB
下载 相关 举报
ADS通讯高级语言课件.ppt_第1页
第1页 / 共26页
ADS通讯高级语言课件.ppt_第2页
第2页 / 共26页
ADS通讯高级语言课件.ppt_第3页
第3页 / 共26页
ADS通讯高级语言课件.ppt_第4页
第4页 / 共26页
ADS通讯高级语言课件.ppt_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、 1ADSADS通讯高级语言通讯高级语言The Windows Control and Automation Technology李小宁TwinCAT 9/26/2022 2TwinCAT 介绍介绍TwinCAT 介绍TwinCAT =The Windows Control and Automation Technologyu特点:特点:不改变 Windows 无需PC外的其他硬件 将标准Windows变成实时操作系统 循环时间可短至50微秒、强制优先排序 完全支持浮点单元(FPU)u 硬件硬件平台平台PC 高性能、高精度的控制任务CX 适用于中大型复杂控制任务BX 适用于中等规模控制任务BC

2、 适用于小规模控制任务u软件平台软件平台XP/XPE/CE等u通讯通讯可通过OCX,Dll 访问 Windows用户界面 可通过TCP/IP OPC等实现远程访问TwinCAT 9/26/2022 3TwinCAT 硬件平台硬件平台性能BC系列BX系列CX系列costsTwinCAT 一个工具适用于所有平台TwinCAT 介绍Beckhoff 控制控制器分器分4 个性能等级个性能等级 工业 PC高性能、高精度等级的自动化设备TwinCAT 9/26/2022 4TwinCAT System ManagerTwinCAT 介绍系统硬件管理系统硬件管理 扫描、配置系统软件管理系统软件管理 起停、时

3、基、通讯系统调试诊断系统调试诊断(Free run)4套PLC独立运行TwinCAT 9/26/2022 5TwinCAT System Manager IO映射映射IO输入输入输出输出IOIOTwinCAT 过程映像过程映像现场总线现场总线 1现场总线现场总线2现场总线现场总线3映射映射TwinCAT 结构系统系统IO映射映射 对所有主要现场总线开放 支持 PC 硬件接口 易于安装和诊断 从逻辑映射到物理 I/OLIGHTBUSEthernet TCP/IPTwinCAT 9/26/2022 6TwinCAT PLC ControlTwinCAT 介绍每套每套PLC的的Input区区16,0

4、00字节,字节,甚至还可增加甚至还可增加支持源代码下载支持源代码下载,上传源代码时所上传源代码时所有注释均可保留有注释均可保留其他工具软件示波器软件:scope view设备仿真器(CE5/CE6)最多4个Task 设定优先级 任务最短50us 充分利用IPC的内存、硬盘和CPU资源Task是分配是分配CPU资源的唯一入口资源的唯一入口TwinCAT 9/26/2022 7TwinCAT PLC ControlTwinCAT 介绍 PLC可直接在开发环境的机器上运行。类似高级语言的调试功能,支持断点功能 独立启动和停止PLC 模块化结构 组件:VisulizationTwinCAT 9/26/

5、2022 8TwinCAT PLC 功能库功能库TwinCAT 介绍TwinCAT 通讯通讯系统拓扑:R3IO是通过指针直接访问IO内存映射.本地操作(把它当成高级语言编写的PLC)ADS是网络通讯,可以是远程访问通讯周期:R3IO 通讯时间可以忽略,数据交换时间取决于定时器,CE试用BECKHOFF提供的TcTimer可以达到100微秒XP系统最小在1毫秒左右 ADS通讯时间在2-3毫秒左右.但是考虑到ADS Server的响应时间,一个命令周期可能需要200毫秒上位用户界面和BECKHOFF 产品通讯主要方式:实时非远程:R3IO 非实时远程:ADS通讯,Modbus、OPC等 9Twin

6、CAT 介绍TwinCAT 9/26/2022 10InternetADS 路由器ADS DllTwinCAT OPC 服务器VBC#,VB.NetDelphiC+XMLVB,C#Delphi/C+ASPOCX.Net第三方WrapperBeckhoff ADS 接口 开放、简单、灵活、文档齐全 支持多家 Scada软件标准OPC接口支持的规范:DA/AE/XMLExplorer第三方TwinCAT 通讯通讯接口接口第三方TwinCAT 介绍 11ADS简介简介在Beckhoff TwinCAT 系统中,各个软件模块(如TwinCAT PLC、TwinCAT NC、Windows 应用程序等)

7、的工作模式类似于硬件设备,它们能够独立工作。各个软件模块之间的信息交换通过TwinCAT ADS 而完成。ADS(Automation Device Specification)即自动化设备规范,它为设备之间的通讯提供路由。在TwinCAT PC 和Beckhoff 的CX、BX、BC 系列控制器中都包含TwinCAT 信息路由器。因此各个ADS 设备之间都能够交换数据和信息。基于ADS 的TwinCAT 系统构架如下图所示:12ADS 通讯协议概述通讯协议概述 ADS协议处于网络通讯协议的应用层。应用层传输层Internet层网络接口层TCP/IP模型模型OSI模型模型 13TwinCAT

8、ADS 设备标识每台TwinCAT ADS 设备都有各自不同的AdsAmsNetId 和AdsPort(端口号),以相互区别。AdsAmsNetId 是TCP/IP 地址的扩展,是TwinCAT Message Router,存在于每台TwinCAT PC 或Beckhoff CX、BX、BC 系列控制器中。例如:如果一台PC 的IP 地址是“192.168.2.10”,那么它的AdsAmsNetId 就是“192.168.2.10.1.1”。当然,也可以对AdsAmsNetId 进行修改。每台ADS 设备(ADS Server)的AdsPort 都各不相同,且固定不变。而ADS 客户端(AD

9、S Client)应用程序的AdsPort 则是可变的。不同ADS 设备的AdsPort 如下图所示:PC 控制器中的PLCRun-time system 1801Run-time system 2811Run-time system 3821Run-time system 4831自定义任务(Additional Task)Additional Task 1301Additional Task 2302BCxxxx 控制器中的PLC800NC500 14ADS 通讯方式通讯方式ADS 设备之间的通讯有多种方式,不同方式有不同的特点。1.一般的ADS 通讯(General ADS Servic

10、es)-异步方式(Asynchronous)ADS 客户端向ADS 服务器发送ADS 请求,同时客户端继续自己的工作。ADS 服务器处理请求后,把响应以Call-back 函数方式发给客户端。-通知方式(Notification)ADS 客户端向ADS 服务器发送ADS 请求,ADS 服务器以Call-back 函数的方式不断向客户端发送响应,直到客户端取消该请求。这两种通讯方式的效率高,但需求复杂的客户端程序。优点:不会造成系统堵塞缺点:不能确保每次请求都有返回 15ADS 通讯方式通讯方式2.特殊的ADS 通讯(Specific ADS Services)TwinCAT ADS 设备和Wi

11、ndows 应用程序(例如VB、VC 应用程序等)之间的通讯除了可以采用一般的ADS 通讯方式外,还可以采用特殊的通讯方式,即同步通讯方式。-同步方式(Synchronous)ADS 客户端向ADS 服务器发送ADS 请求,在通讯过程中客户端程序停止执行,直到获得ADS 服务器返回的响应。这种通讯方式不需求复杂的客户端程序,但其轮循的通讯方式给系统带来比较大的负载,因此通讯效率较低。优点:能即时返回结果缺点:如果通讯故障会造成系统堵塞 16ADS API为方便各种计算机高级语言及其环境使用ADS通讯,Beckhoff TwinCAT提供相如下组件:ADS.NET Component 适用.NE

12、T平台,VB.NET,C#等 ADS-OCX(ActiveX COM控件)适用于Visual Basic,Visual C+,Delphi等.ADS-DLL适用于Visual C+等.ADS-Script-DLL适用于 VBScript,Jscript等脚本,创建B/S架构的应用.JAVA DLL 适用于JAVA语言。“PlcSystem.lib”PLC 库ADS设备可以通过据此和其他ADS设备以及Windows进行通讯。17ADS 访问变量方式访问变量方式TwinCAT ADS访问变量有两种方式:1.地址方式地址方式一个PLC变量的地址由两部分组成:GroupIndex和OffsetInde

13、x:GroupIndex一般用于区别寄存器类型,在TwinCAT ADS设备中为常量,具体内容可以参考Information System(后附常用的GroupIndex值)。OffsetIndex为变量的偏移地址,在PLC中为该变量的地址。2.变量名方式变量名方式在TwinCAT ADS设备中每个变量都有一个句柄(Handle)。适用变量名访问变量首先需要得到该变量的句柄。(不同的高级语言方式略有不同)18常用的常用的GroupIndexGroupIndex值描述0 x00004020M寄存器(用M声明)0 x00004021MX寄存器(用MX声明)0 x0000F020I寄存器(用I声明)

14、0 x0000F021 IX寄存器(用IX声明)0 x0000F030Q寄存器(用Q声明)0 x0000F031QX寄存器(用QX声明)0 x0000F003 取变量的句柄0 x0000F005 通过变量句柄访问变量值0 x0000F006 释放句柄1.对于MX,IX,QX寄存器的偏移地址的单位是“位”,而不是字节,计算地址需要注意2.M寄存器偏移地址最大值为0 x0000FFFF,而MX,I,IX,Q,QX偏移地址最大值为0 xFFFFFFFF。3.上表后三个主要用于C语言,其他高级语言已经封装成专有方法,不需直接调用。19ADS组件库文件组成简介组件库文件组成简介ADS组件库集成在Twin

15、CAT软件中,安装任何版本的TwinCAT软件都包含ADS通讯组件,如果用户希望在没有安装TwinCAT软件的计算机适用ADS通讯组件可以安装Supplement中的TwinCAT_ADS_Communication_Library此为免费产品。除需要复制到Windows/System32目录外绝大部分相关文件可以在TwinCAT安装目录找到。假设TwinCAT安装路径为C:TwinCAT文件描述C:TwinCATADS ApiTcAdsDllADS DLL C:TwinCATADS Api.NET.NET组件(支持三个版本的Framework)C:TwinCATADS ApiAdsToJav

16、aADS JAVA DLLC:TwinCATADS ApiCompactFramework.NET Compact Framework组件C:TwinCATADS ApiLib VS 97LibC:TwinCATADS ApiTcAdsWebServiceWebService组件C:WINDOWSsystem32AdsOcx.ocxADS OCXC:TwinCATTcScript.dllADS-Script-DLL 20Ads 组件调用过程简介组件调用过程简介.NET调用流程新建工程新建工程添加引用TwinCAT.Ads.dll定义TcAdsClient对象 private TcAdsClie

17、nt adsClient;初始化TcAdsClient对象adsClient=new TcAdsClient();adsClient.Connect(801);通过变量名取得变量的句柄注册DeviceNotification事件用于读写变量AddDeviceNotification 读写变量接受处理返回结果释放资源 21Ads 组件调用过程简介组件调用过程简介 C+在 Visual C+中进行链接和程序开发时所需要的文件:TcAdsDll.dll 动态链接库 TcAdsDll.lib 使用 TcAdsDll.dll 的函数库 TcAdsApi.h 声明 ADS 功能的头文件 TcAdsDef.

18、h 声明结构和常数的头文件主要接口:AdsPortOpen:建立 TwinCAT 信息路由器连接(通讯口)。AdsPortClose:关闭 TwinCAT 信息路由器的连接(通讯口)。AdsGetLocalAddress:返回本地 NetId 和端口号AdsSyncWriteReq:同步写数据到一个 ADS 设备AdsSyncReadReq:从 ADS 服务器中同步读数据。AdsSyncReadWriteReq:同步写入数据到 ADS 服务器中并从 ADS 设备接收返回的数据。AdsSyncReadStateReq:从 ADS 服务器中读 ADS 状态和设备状态。AdsSyncAddDevic

19、eNotificationReq:通知在 ADS 服务器中进行定义(如 PLC)。当某个事件发生时,该功能(回调功能)在ADS 客户端进行调用(C 程序)。AdsSyncDelDeviceNotificationReq:从 ADS 服务器中删除以前定义的通知。22辅助工具辅助工具TwinCAT ADS Monitor TwinCAT ADS Monitor可以抓取ADS通讯数据包ADS数据结构帧数据通讯数据帧记录 23辅助工具仿真器辅助工具仿真器1.下载文件:以下路径为FTp路径(ftp:/ftp.beckhoff)/Software/embPC-Control/CE/Solutions/CX

20、_Emulator/emulator.zip(CE仿真器英文)/Software/embPC-Control/CE/Solutions/SDK/Beckhoff HMI 500 V1.3 SDK.msi/Software/embPC-Control/CE/Solutions/VS_NET2019/CE5_DbgHlp.zip 2.仿真器安装:a.安装Microsoft Windows CE 5.0 Emulator.msi需要连接互联网(一定注意)b.安装完仿真器,再安装虚拟网卡驱动netsvwrap.msi3.配置:a.安装后修改StartEmulator_DE.bat 文件,将参数中的/E

21、thernet 的MAC改为本地网卡的实际MAC地址b.参数vmid 后的GUID值做为保存映像是的文件夹名称。4.设置仿真器和VS集成环境:Windows CE 5 的模拟器是基于x86的,VS 2019 的 Device Emulator 是基于ARM的,VS2019开发环境无法和Win CE模拟器进行集成进行远程调试。(CE6不需要,只需安装虚拟机程序,配置好地址。)但是可以通过下面的方式实现集成:1).将CE5_DbgHlp.zip压缩包文件解压复制仿真器的 hard disksystem 路径下(实际的控制器新版本系统中这些文件已经存在)(修改IP地址与本机在同网段255.255.2

22、55.0)24辅助工具仿真器辅助工具仿真器(续续)2).运行Conmanclient2.exe3).配置VS2019开发环境:a.转到“Tools-options-device tools-devices”b.选择Windows CE 5.0设备,点击“属性(properties)”按钮c.在Windows CE 5.0设备属性对话框点击“配置(configure)”按钮d.在TCP/IP配置对话框选定“使用特定的IP(use specific IP address)”,输入仿真器的IP地址。e.在Windows环境下,建立利用VS2019 环境新建WinCE工程,(新建-项目-Visual

23、C#-智能设备-Windows CE5.0 即可完成新建项目。右键选择工程-部署,完成项目部署,就可以启动仿真器(保证仿真器处于启动状态))下面就可以Debug CE应用程序,选择部署到Windows CE5.0。如果部署仍然失败,运行仿真器hard disksystem 路径下的cMaccept.exe文件。测试正常后保存仿真器的设置,载关闭时选择Save Sate而不是True Off,这样下次启动仿真器就不需要重新设置仿真器。如果想删除保存的文件,转到“我的文档My Virtual Machines下,将上文提到的在 StartEmulator_DE.bat 设置的vmid 值为名称的文

24、件夹删除即可。如果在具体操作用什么问题,您可以随时和我们联系。vs2019注意事项:用如下文件代替CE5_DbgHlp.zip 内的文件C:Program FilesCommon FilesMicrosoft SharedCoreCon1.0Targetwce400 x86TwinCAT3 PLC ControlTwinCAT 9/26/2022 25TwinCAT3 介绍TwinCAT 3 集成了集成了 PLC and C/C+编程 系统配置,设定与诊断 Module generation(C/C+or Matlab/Simulink)Debugging PLC,C/C+,Matlab/Si

25、mulinkTwinCAT 3 RuntimeTwinCAT 3 Engineering Environment(based on the MS Visual Studio 2019)System-Manager:IO PLC Motion Control C/C+Safety othersprogramming environment IEC61131Object oriented extensionsMatlab/SimulinkRealtime WorkshopThird party C programming toolTwinCAT Transport Layer-ADSC/C+C#/.NETreal timeNon real timeIEC CompilerMicrosoft C CompilerTwinCAT 9/26/2022 26TwinCAT3 I/O Integrated System ManagerTwinCAT 介绍System configurationMotion control configurationPLC configurationSafety PLC configurationC+module configurationI/O configuration

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(ADS通讯高级语言课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|