ADS通訊高級(jí)語(yǔ)言PPT教學(xué)課件_第1頁(yè)
ADS通訊高級(jí)語(yǔ)言PPT教學(xué)課件_第2頁(yè)
ADS通訊高級(jí)語(yǔ)言PPT教學(xué)課件_第3頁(yè)
ADS通訊高級(jí)語(yǔ)言PPT教學(xué)課件_第4頁(yè)
ADS通訊高級(jí)語(yǔ)言PPT教學(xué)課件_第5頁(yè)
已閱讀5頁(yè),還剩20頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、TwinCAT 硬件平臺(tái)性能BC系列BX系列CX系列costsTwinCAT 一個(gè)工具適用于所有平臺(tái)TwinCAT 介紹Beckhoff 控制器分4 個(gè)性能等級(jí) 工業(yè) PC高性能、高精度等級(jí)的自動(dòng)化設(shè)備第1頁(yè)/共25頁(yè)TwinCAT System ManagerTwinCAT 介紹系統(tǒng)硬件管理 掃描、配置系統(tǒng)軟件管理 起停、時(shí)基、 通訊系統(tǒng)調(diào)試診斷( Free run )4套PLC獨(dú)立運(yùn)行第2頁(yè)/共25頁(yè)TwinCAT System Manager IO映射IO輸入輸出IOIOTwinCAT 過程映像過程映像現(xiàn)場(chǎng)總線現(xiàn)場(chǎng)總線 1現(xiàn)場(chǎng)總線現(xiàn)場(chǎng)總線2現(xiàn)場(chǎng)總線現(xiàn)場(chǎng)總線3映射映射TwinCAT 結(jié)構(gòu)系

2、統(tǒng)IO映射 對(duì)所有主要現(xiàn)場(chǎng)總線開放 支持 PC 硬件接口 易于安裝和診斷 從邏輯映射到物理 I/OLIGHTBUSEthernet TCP/IP第3頁(yè)/共25頁(yè)TwinCAT PLC ControlTwinCAT 介紹每套PLC的Input區(qū)16,000字節(jié),甚至還可增加支持源代碼下載,上傳源代碼時(shí)所有注釋均可保留其他工具軟件示波器軟件:scope view設(shè)備仿真器(CE5/CE6) 最多4個(gè)Task 設(shè)定優(yōu)先級(jí) 任務(wù)最短50us 充分利用IPC的內(nèi)存、硬盤和CPU資源Task是分配CPU資源的唯一入口第4頁(yè)/共25頁(yè)TwinCAT PLC ControlTwinCAT 介紹 PLC可直接在

3、開發(fā)環(huán)境的機(jī)器上運(yùn)行。 類似高級(jí)語(yǔ)言的調(diào)試功能,支持?jǐn)帱c(diǎn)功能 獨(dú)立啟動(dòng)和停止PLC 模塊化結(jié)構(gòu) 組件:Visulization第5頁(yè)/共25頁(yè)TwinCAT PLC 功能庫(kù)TwinCAT 介紹第6頁(yè)/共25頁(yè)TwinCAT 通訊系統(tǒng)拓?fù)? R3IO是通過指針直接訪問IO內(nèi)存映射.本地操作(把它當(dāng)成高級(jí)語(yǔ)言編寫的PLC) ADS是網(wǎng)絡(luò)通訊,可以是遠(yuǎn)程訪問通訊周期: R3IO 通訊時(shí)間可以忽略,數(shù)據(jù)交換時(shí)間取決于定時(shí)器,CE試用BECKHOFF提供的TcTimer可以達(dá)到100微秒XP系統(tǒng)最小在1毫秒左右 ADS通訊時(shí)間在2-3毫秒左右.但是考慮到ADS Server的響應(yīng)時(shí)間,一個(gè)命令周期可能需

4、要200毫秒上位用戶界面和BECKHOFF 產(chǎn)品通訊主要方式: 實(shí)時(shí)非遠(yuǎn)程:R3IO 非實(shí)時(shí)遠(yuǎn)程:ADS通訊 ,Modbus、OPC等TwinCAT 介紹第7頁(yè)/共25頁(yè)InternetADS 路由器ADS DllTwinCAT OPC 服務(wù)器VBC#,VB.NetDelphiC+XMLVB, C#Delphi/C+ASPOCX.Net第三方WrapperBeckhoff ADS 接口 開放、簡(jiǎn)單、 靈活、 文檔齊全 支持多家 Scada軟件標(biāo)準(zhǔn)OPC接口支持的規(guī)范:DA/AE/XMLExplorer第三方TwinCAT 通訊接口第三方TwinCAT 介紹第8頁(yè)/共25頁(yè)ADS簡(jiǎn)介在Beckh

5、off TwinCAT 系統(tǒng)中,各個(gè)軟件模塊(如TwinCAT PLC、TwinCAT NC、Windows 應(yīng)用程序等)的工作模式類似于硬件設(shè)備,它們能夠獨(dú)立工作。各個(gè)軟件模塊之間的信息交換通過TwinCAT ADS 而完成。ADS(Automation Device Specification)即自動(dòng)化設(shè)備規(guī)范,它為設(shè)備之間的通訊提供路由。在TwinCAT PC 和Beckhoff 的CX、BX、BC 系列控制器中都包含TwinCAT 信息路由器。因此各個(gè)ADS 設(shè)備之間都能夠交換數(shù)據(jù)和信息?;贏DS 的TwinCAT 系統(tǒng)構(gòu)架如下圖所示:第9頁(yè)/共25頁(yè)ADS 通訊協(xié)議概述 ADS協(xié)議

6、處于網(wǎng)絡(luò)通訊協(xié)議的應(yīng)用層。應(yīng)用層傳輸層Internet層網(wǎng)絡(luò)接口層TCP/IP模型模型OSI模型模型第10頁(yè)/共25頁(yè)TwinCAT ADS 設(shè)備標(biāo)識(shí)每臺(tái)TwinCAT ADS 設(shè)備都有各自不同的AdsAmsNetId 和AdsPort(端口號(hào)),以相互區(qū)別。AdsAmsNetId 是TCP/IP 地址的擴(kuò)展,是TwinCAT Message Router,存在于每臺(tái)TwinCAT PC 或Beckhoff CX、BX、BC 系列控制器中。例如:如果一臺(tái)PC 的IP 地址是“0”,那么它的AdsAmsNetId 就是“0.1.1”。當(dāng)然,也可以對(duì)Ad

7、sAmsNetId 進(jìn)行修改。每臺(tái)ADS 設(shè)備(ADS Server)的AdsPort 都各不相同,且固定不變。而ADS 客戶端(ADS Client)應(yīng)用程序的AdsPort 則是可變的。不同ADS 設(shè)備的AdsPort 如下圖所示: PC 控制器中的PLCRun-time system 1801Run-time system 2811Run-time system 3821Run-time system 4831自定義任務(wù)( Additional Task )Additional Task 1301Additional Task 2302BCxxxx 控制器中的PLC800NC500第11

8、頁(yè)/共25頁(yè)ADS 通訊方式ADS 設(shè)備之間的通訊有多種方式,不同方式有不同的特點(diǎn)。1. 一般的ADS 通訊(General ADS Services)- 異步方式(Asynchronous)ADS 客戶端向ADS 服務(wù)器發(fā)送ADS 請(qǐng)求,同時(shí)客戶端繼續(xù)自己的工作。ADS 服務(wù)器處理請(qǐng)求后,把響應(yīng)以Call-back 函數(shù)方式發(fā)給客戶端。- 通知方式(Notification)ADS 客戶端向ADS 服務(wù)器發(fā)送ADS 請(qǐng)求,ADS 服務(wù)器以Call-back 函數(shù)的方式不斷向客戶端發(fā)送響應(yīng),直到客戶端取消該請(qǐng)求。這兩種通訊方式的效率高,但需求復(fù)雜的客戶端程序。優(yōu)點(diǎn):不會(huì)造成系統(tǒng)堵塞缺點(diǎn):不能確

9、保每次請(qǐng)求都有返回第12頁(yè)/共25頁(yè)ADS 通訊方式2.特殊的ADS 通訊(Specific ADS Services)TwinCAT ADS 設(shè)備和Windows 應(yīng)用程序(例如VB、VC 應(yīng)用程序等)之間的通訊除了可以采用一般的ADS 通訊方式外,還可以采用特殊的通訊方式,即同步通訊方式。- 同步方式(Synchronous)ADS 客戶端向ADS 服務(wù)器發(fā)送ADS 請(qǐng)求,在通訊過程中客戶端程序停止執(zhí)行,直到獲得ADS 服務(wù)器返回的響應(yīng)。這種通訊方式不需求復(fù)雜的客戶端程序,但其輪循的通訊方式給系統(tǒng)帶來比較大的負(fù)載,因此通訊效率較低。優(yōu)點(diǎn):能即時(shí)返回結(jié)果缺點(diǎn):如果通訊故障會(huì)造成系統(tǒng)堵塞第13

10、頁(yè)/共25頁(yè)ADS API為方便各種計(jì)算機(jī)高級(jí)語(yǔ)言及其環(huán)境使用ADS通訊,Beckhoff TwinCAT提供相如下組件:ADS .NET Component 適用.NET平臺(tái),VB.NET,C#等 ADS-OCX (ActiveX COM控件)適用于Visual Basic, Visual C+, Delphi等. ADS-DLL適用于Visual C+等. ADS-Script-DLL適用于 VBScript, Jscript等腳本,創(chuàng)建B/S架構(gòu)的應(yīng)用.JAVA DLL 適用于JAVA語(yǔ)言。 “PlcSystem.lib” PLC 庫(kù)ADS設(shè)備可以通過據(jù)此和其他ADS設(shè)備以及Window

11、s進(jìn)行通訊。第14頁(yè)/共25頁(yè)ADS 訪問變量方式TwinCAT ADS訪問變量有兩種方式:1.地址方式一個(gè)PLC變量的地址由兩部分組成:GroupIndex和OffsetIndex:GroupIndex一般用于區(qū)別寄存器類型,在TwinCAT ADS設(shè)備中為常量,具體內(nèi)容可以參考Information System(后附常用的GroupIndex值)。OffsetIndex為變量的偏移地址,在PLC中為該變量的地址。2.變量名方式在TwinCAT ADS設(shè)備中每個(gè)變量都有一個(gè)句柄(Handle)。適用變量名訪問變量首先需要得到該變量的句柄。(不同的高級(jí)語(yǔ)言方式略有不同)第15頁(yè)/共25頁(yè)常用

12、的GroupIndexGroupIndex值描述0 x00004020M寄存器(用M聲明)0 x00004021MX寄存器(用MX聲明)0 x0000F020I寄存器(用I聲明)0 x0000F021 IX寄存器(用IX聲明)0 x0000F030Q寄存器(用Q聲明)0 x0000F031QX寄存器(用QX聲明)0 x0000F003 取變量的句柄0 x0000F005 通過變量句柄訪問變量值0 x0000F006 釋放句柄1.對(duì)于MX,IX,QX寄存器的偏移地址的單位是“位”,而不是字節(jié),計(jì)算地址需要注意2.M寄存器偏移地址最大值為0 x0000FFFF,而MX,I,IX,Q,QX偏移地址最

13、大值為0 xFFFFFFFF。3.上表后三個(gè)主要用于C語(yǔ)言,其他高級(jí)語(yǔ)言已經(jīng)封裝成專有方法,不需直接調(diào)用。第16頁(yè)/共25頁(yè)ADS組件庫(kù)文件組成簡(jiǎn)介ADS組件庫(kù)集成在TwinCAT軟件中,安裝任何版本的TwinCAT軟件都包含ADS通訊組件,如果用戶希望在沒有安裝TwinCAT軟件的計(jì)算機(jī)適用ADS通訊組件可以安裝Supplement中的TwinCAT_ADS_Communication_Library此為免費(fèi)產(chǎn)品。除需要復(fù)制到Windows/System32目錄外絕大部分相關(guān)文件可以在TwinCAT安裝目錄找到。假設(shè)TwinCAT安裝路徑為C:TwinCAT文件描述C:TwinCATADS

14、ApiTcAdsDllADS DLL C:TwinCATADS Api.NET.NET組件(支持三個(gè)版本的Framework)C:TwinCATADS ApiAdsToJavaADS JAVA DLLC:TwinCATADS ApiCompactFramework.NET Compact Framework組件C:TwinCATADS ApiLib VS 97LibC:TwinCATADS ApiTcAdsWebServiceWebService組件C:WINDOWSsystem32AdsOcx.ocxADS OCXC:TwinCATTcScript.dllADS-Script-DLL第17頁(yè)

15、/共25頁(yè)Ads 組件調(diào)用過程簡(jiǎn)介 .NET調(diào)用流程新建工程添加引用TwinCAT.Ads.dll定義TcAdsClient對(duì)象 private TcAdsClient adsClient;初始化TcAdsClient對(duì)象adsClient = new TcAdsClient(); adsClient.Connect(801); 通過變量名取得變量的句柄注冊(cè)DeviceNotification事件用于讀寫變量AddDeviceNotification 讀寫變量接受處理返回結(jié)果釋放資源第18頁(yè)/共25頁(yè)Ads 組件調(diào)用過程簡(jiǎn)介C+在 Visual C+ 中進(jìn)行鏈接和程序開發(fā)時(shí)所需要的文件: Tc

16、AdsDll.dll 動(dòng)態(tài)鏈接庫(kù) TcAdsDll.lib 使用 TcAdsDll.dll 的函數(shù)庫(kù) TcAdsApi.h 聲明 ADS 功能的頭文件 TcAdsDef.h 聲明結(jié)構(gòu)和常數(shù)的頭文件主要接口:AdsPortOpen:建立 TwinCAT 信息路由器連接 (通訊口)。AdsPortClose:關(guān)閉 TwinCAT 信息路由器的連接(通訊口)。AdsGetLocalAddress:返回本地 NetId 和端口號(hào)AdsSyncWriteReq:同步寫數(shù)據(jù)到一個(gè) ADS 設(shè)備AdsSyncReadReq:從 ADS 服務(wù)器中同步讀數(shù)據(jù)。AdsSyncReadWriteReq:同步寫入數(shù)據(jù)

17、到 ADS 服務(wù)器中并從 ADS 設(shè)備接收返回的數(shù)據(jù)。AdsSyncReadStateReq:從 ADS 服務(wù)器中讀 ADS 狀態(tài)和設(shè)備狀態(tài)。AdsSyncAddDeviceNotificationReq:通知在 ADS 服務(wù)器中進(jìn)行定義 (如 PLC)。當(dāng)某個(gè)事件發(fā)生時(shí),該功能 (回調(diào)功能) 在ADS 客戶端進(jìn)行調(diào)用 (C 程序)。AdsSyncDelDeviceNotificationReq:從 ADS 服務(wù)器中刪除以前定義的通知。第19頁(yè)/共25頁(yè)輔助工具TwinCAT ADS Monitor TwinCAT ADS Monitor可以抓取ADS通訊數(shù)據(jù)包ADS數(shù)據(jù)結(jié)構(gòu)幀數(shù)據(jù)通訊數(shù)據(jù)幀記

18、錄第20頁(yè)/共25頁(yè)輔助工具仿真器1.下載文件:以下路徑為FTp路徑(ftp:/)/Software/embPC-Control/CE/Solutions/CX_Emulator/ emulator.zip (CE仿真器英文)/Software/embPC-Control/CE/Solutions/SDK/Beckhoff HMI 500 V1.3 SDK.msi/Software/embPC-Control/CE/Solutions/VS_NET2005/CE5_DbgHlp.zip 2.仿真器安裝:a.安裝Microsoft Windows CE 5.0 Emulator.msi需要連接互

19、聯(lián)網(wǎng)(一定注意)b.安裝完仿真器,再安裝虛擬網(wǎng)卡驅(qū)動(dòng)netsvwrap.msi3.配置:a.安裝后修改StartEmulator_DE.bat 文件,將參數(shù)中的/Ethernet 的MAC改為本地網(wǎng)卡的實(shí)際MAC地址b.參數(shù)vmid 后的GUID值做為保存映像是的文件夾名稱。4.設(shè)置仿真器和VS.net集成環(huán)境:Windows CE 5 的模擬器是基于x86的,VS 2005 的 Device Emulator 是基于ARM的,VS2005開發(fā)環(huán)境無法和Win CE模擬器進(jìn)行集成進(jìn)行遠(yuǎn)程調(diào)試。(CE6不需要,只需安裝虛擬機(jī)程序,配置好地址。)但是可以通過下面的方式實(shí)現(xiàn)集成:1).將CE5_Db

20、gHlp.zip壓縮包文件解壓復(fù)制仿真器的 hard disksystem 路徑下(實(shí)際的控制器新版本系統(tǒng)中這些文件已經(jīng)存在)(修改IP地址與本機(jī)在同網(wǎng)段)第21頁(yè)/共25頁(yè)輔助工具仿真器(續(xù))2).運(yùn)行Conmanclient2.exe3).配置VS2005開發(fā)環(huán)境:a.轉(zhuǎn)到“Tools-options-device tools-devices”b.選擇Windows CE 5.0設(shè)備,點(diǎn)擊“屬性(properties)”按鈕c.在Windows CE 5.0設(shè)備屬性對(duì)話框點(diǎn)擊“配置(configure)”按鈕d.在TCP/IP配置對(duì)話框選定“使用特定的IP(use

21、 specific IP address)”,輸入仿真器的IP地址。e.在Windows環(huán)境下,建立利用VS2005 .net環(huán)境新建WinCE工程,(新建-項(xiàng)目-Visual C# -智能設(shè)備-Windows CE5.0 即可完成新建項(xiàng)目。右鍵選擇工程-部署,完成項(xiàng)目部署,就可以啟動(dòng)仿真器(保證仿真器處于啟動(dòng)狀態(tài)))下面就可以Debug CE應(yīng)用程序,選擇部署到Windows CE5.0。如果部署仍然失敗,運(yùn)行仿真器hard disksystem 路徑下的cMaccept.exe文件。測(cè)試正常后保存仿真器的設(shè)置,載關(guān)閉時(shí)選擇Save Sate而不是True Off,這樣下次啟動(dòng)仿真器就不需要重新設(shè)置仿真器。如果想刪除保存的文件,轉(zhuǎn)到“我的文檔My Virtual Machines下,將上文提到的在 StartEmulator_DE.bat 設(shè)置的vmid 值為名稱的文件夾刪除即可。如果在具體操作用什么問題,您可以隨時(shí)和我們聯(lián)系。vs2008注意事項(xiàng):用如下文件代替CE5_DbgHlp.zip 內(nèi)的文件C:Program FilesCommon FilesMicrosoft SharedCoreCon1.0Targetwce400 x86第22頁(yè)/共25頁(yè)Twi

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論