<em id="nk5kx"><ins id="nk5kx"></ins></em>

<dl id="nk5kx"></dl><em id="nk5kx"><menu id="nk5kx"></menu></em><sup id="nk5kx"><menu id="nk5kx"><form id="nk5kx"></form></menu></sup>
    <sup id="nk5kx"></sup>

    <sup id="nk5kx"><meter id="nk5kx"></meter></sup>

      <dl id="nk5kx"><ins id="nk5kx"></ins></dl>
              <delect id="nk5kx"><address id="nk5kx"></address></delect>
              <em id="nk5kx"></em>

                <sup id="nk5kx"><address id="nk5kx"><rt id="nk5kx"></rt></address></sup><dl id="nk5kx"></dl>
                <em id="nk5kx"><ins id="nk5kx"></ins></em>
                  <dl id="nk5kx"><ins id="nk5kx"></ins></dl><dl id="nk5kx"></dl>
                  <em id="nk5kx"></em>

                  <sup id="nk5kx"><menu id="nk5kx"><video id="nk5kx"></video></menu></sup>

                  <sup id="nk5kx"></sup>
                  您當前的位置:主頁 > 新聞中心 > 公司新聞 >
                  新聞分類
                  新聞詳情

                  LIMS與西門子PLC通訊常用代碼

                  來源:http://www.pitzips.com/gsxw/132.html │ 發表時間:2020-07-25 

                  1.0  通訊組件概述

                       通訊組件用于PC與可編程控制器(PLC)、智能儀表等進行數據通訊,適用于基于PC高級語言的工業自動化控制系統。組件采用動態鏈接庫文件(*.DLL)的形式,在PC系統的項目工程里引用該組件,調用相應的屬性與方法函數,即可快速實現PC與PLC的高效數據交換。

                       DLL通訊組件無須安裝,直接復制到工程文件目錄,方便打包安裝部署;無須任何配置,直接調用函數,與應用開發無縫銜接;多年工程經驗的軟件團隊開發測試,經過本公司及客戶的海量實際工程應用檢驗,穩定可靠;采用穩定高效的內部協議,無須編寫PLC內部程序配合,直接訪問PLC的內存,通訊響應快速;內建動態管理的多獨立線程連接,同時支持外部應用的多線程結構調用;兼容WINDOWS系統下的所有開發環境,包括各種版本的VB.NET、C#、VC++,以及DEIPHI 、VB、LabView等;支持幾乎所有PLC的CPU自帶通訊口、通訊擴展模塊。

                   

                  2.0  通訊組件名稱

                       

                   

                  3.0  數據類型

                       通訊組件能對PLC的輸入、輸出端口,以及內部中間繼電器存儲區域、內部數據存儲區域,以及擴展存儲區域進行讀寫操作,支持以下數據類型:

                       0  BOOL1:    1位布爾型數據;

                       1  INT16:    16位有符號整數;

                       2  UINT16:   16位無符號整數;

                       3  DINT32:   32位有符號整數;  

                       4  HEX32:    32位16進制字符;

                       5  REAL32:   32位單精度浮點數據;

                       6  BIN16:    16位二進制字符串;

                       7  CHAR8:    8位單個字符(ASCII)

                       8  BYTE8:    8位單字節數據;

                       9  STRING:   多個字符或數字組成的字符串(ASCII)

                   

                  4.0  函數與參數

                  4.1  函數參數 

                  [EntLink]        設置PC、PLC的通訊參數,建立與PLC的以太網連接;  

                  參數:   pcIP,String,本地地址,即PC端的IP地址

                           pcPort , Uint16, 本地端口,即PC端的網絡端口,默認為0

                           plcIP , String ,遠程地址,即PLC的IP地址

                           plcPort ,Uint16,  遠程端口,即PLC的通訊端口

                           Rack ,Uint16,  PLC的機架號碼

                           Slot ,Uint16, PLC的CPU的插槽號碼

                           Handle, Integer ,DLL組件返回網絡中PLC的連接句柄 *1

                           SN , String,調用序列號碼,可聯系本公司獲

                           OverTime,Uint16, 通訊超時時間限制,毫秒單位,默認1000

                  返回值: Int16,函數執行結果,見4.3詳細說明。

                   

                  [ComLink]   設置PC、PLC的通訊參數,建立與PLC的串口連接; 

                  參數:   CommPort,Uint16,聯接PLC的PC通訊端口

                  CommRate,Int32,與PLC通訊的速率

                  DataBit, Uint16, 通訊數據位數

                  StopBit,Uint16, 數據的停止位數

                  Parity,PrtType, 數據校驗方式

                  Station, Uint16, PLC的站號碼

                  OverTime,Uint16, 通訊超時時間限制,毫秒單位

                  SN , String,調用序列號碼,通過聯系本公司獲取

                  返回值:Int16,函數執行結果,見4.3詳細說明

                   

                  [DeLink]    斷開與PLC的連接;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  返回值: Int16,函數執行結果,見4.3詳細說明

                   

                  [CmdRead]   批量讀取PLC的數據;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  Memory ,PlcMemory, PLC數據區域枚舉,見4.2詳細說明

                  ValType, DataType, 數據類型枚舉,見4.2詳細說明

                  Block ,Uint16, DB塊的號碼,非DB數據為0

                  Address ,Uint16, 要讀取的存儲區域起始地址

                  Count ,Uint16, 要讀取的數量,以ValType對應的數據類型為單位

                  ReData() ,Object/String,讀取到的數據(傳地址方式的形式參數)

                  返回值: Int16,函數執行結果,見4.3詳細說明

                   

                  [CmdWrite]    批量寫入數據到PLC;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  Memory ,PlcMemory, PLC數據區域枚舉,見4.2詳細說明

                  ValType, DataType, 數據類型枚舉,見4.2詳細說明

                  Block ,Uint16, DB塊的號碼,非DB數據為0

                  Address ,Uint16, 要寫入的存儲區域起始地址

                  Count ,Uint16, 要寫入的數量,以ValType對應的數據類型為單位

                  Data() ,Object/String,要寫入PLC的數據(傳地址方式的形式參數)

                  返回值: Int16,函數執行結果,見4.3詳細說明

                   

                  [Bit_Test]   以Bit(位)的方式讀取一個位的狀態;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  Memory ,PlcMemory, PLC數據區域枚舉,見4.2詳細說明

                  Block ,Uint16, DB塊的號碼,非DB數據為0

                  Address ,Uint16, 要讀取的位所在的字或字節地址

                  Bit,Uint16, 要讀取的位在Address中的位號碼

                  State ,Boolean,讀取到的位的狀態(傳地址方式的形式參數)

                  返回值: Int16,函數執行結果,見4.3詳細說明

                   

                  [Bit_Set]    以Bit(位)的方式設置其狀態為ON;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  Memory ,PlcMemory, PLC數據區域枚舉,見4.2詳細說明

                  Block ,Uint16, DB塊的號碼,非DB數據為0

                  Address ,Uint16, 要設置的位所在的字或字節地址

                  Bit,Uint16, 要設置的位在Address中的位號碼

                  返回值: Int16,函數執行結果,見4.3詳細說明

                   

                  [Bit_Reset]   以Bit(位)的方式復位其狀態為OFF;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  Memory ,PlcMemory, PLC數據區域枚舉,見4.2詳細說明

                  Block ,Uint16, DB塊的號碼,非DB數據為0

                  Address ,Uint16, 要復位的位所在的字或字節地址

                  Bit,Uint16, 要復位的位在Address中的位號碼

                  返回值: Int16,函數執行結果,見4.3詳細說明

                   

                  [CmdReadString]   讀取PLC中的字符串;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  Memory ,PlcMemory, PLC數據區域枚舉,見4.2詳細說明

                  Block ,Uint16, DB塊的號碼,非DB數據為0

                  Address ,Uint16, 要讀取的存儲區域起始地址

                  PlcDataSize ,Uint16, PLC內定義的存放字符的最大字符數

                  返回值: String,正常時為讀到的字符串,異常時為空

                   

                  [CmdWriteString]   寫入字符串到PLC;

                  參數:   Handle, Integer , 通過EntLink函數獲取的網絡中PLC的句柄 *1

                  Memory ,PlcMemory, PLC數據區域枚舉,見4.2詳細說明

                  Block ,Uint16, DB塊的號碼,非DB數據為0

                  Address ,Uint16, 要寫入的存儲區域起始地址

                  PlcDataSize ,Uint16, PLC內定義的存放字符的最大字符數

                           Data ,String, 要寫入到PLC的符數,長度應≤PlcDataSize

                  返回值: String,正常時為讀到的字符串,異常時為空

                   

                  [DataConvert]   數據類型轉換函數; 

                  參數:   SourType,DataType, 數據類型枚舉,見4.2詳細說明

                  SourData , Object,需要轉換的源數據

                  DestType ,DataType, 數據類型枚舉,見4.2詳細說

                  DestData ,Object,轉換后的目標數據(傳地址方式的形式參數)

                  StartByte ,Int16,目標數據從源數據取數的起始字節(可選參數)

                  返回值: Int16,函數執行結果,見5.3詳細說明。

                   

                       *1: Handle參數說明

                       為方便同一應用程序連接多臺PLC而設置的參數,在通訊組件外部調用時,定義一個全局變量,DLL在與PLC網絡連接成功以后,自動分配PLC句柄數據,外部程序通過該句柄區分操作不同的PLC;變量為輸入輸出型參數,即傳地址方式的形式參數,外部賦值無效。

                   

                  4.2  枚舉結構體參數說明:

                  --PlcMemory   要操作的PLC的內存區域類型:

                       DI:   數字輸入端口;

                       DQ:   數字輸出端口;

                       MR:   內部中間繼電器區域;

                       DR:   內部數據寄存器V/DB區域;

                  --PrtType  串口通訊的校驗方式

                       None: 無校驗

                       Odd:奇校驗

                       Even:偶檢驗

                   

                  4.3  返回值說明:

                       0 執行成功;

                  -1  IP地址或端口參數錯誤;

                  -2  網絡連接錯錯誤;

                  -3  連接參數錯誤導致連接失敗(如Rack>7 、Slot>15等);

                  -4  PLC握手連接異常;

                  -5  PLC握手無響應;

                  -6  PLC握手響應錯誤;

                  -10 讀數據超過最大數據量限制;

                  -11 讀數據時數據發送異常;

                  -12 讀數據時PLC響應超時;

                  -13 讀數據PLC返回格式錯誤;

                  -14 讀數據PLC返回數據錯誤;

                  -15 讀數據PLC返回數據校驗錯誤;

                  -18 PLC的網絡句柄解析錯誤;

                  -19 PLC的網絡句柄數據錯誤;

                  -20 寫數據超過最大數據量限制;

                  -21 寫數據時數據發送異常;

                  -22 寫數據PLC響應超時;

                  -23 寫數據PLC返回格式錯誤;

                  -24 寫數據PLC返回數據錯誤;

                  -25 寫數據PLC返回數據校驗錯誤;

                  -28 PLC的網絡句柄解析錯誤;

                  -29 PLC的網絡句柄數據錯誤;

                  -31 數據轉換時源數據處理錯誤;

                  -32 數據轉換時目標數據處理錯誤;

                  -41 位操作函數的參數錯誤;

                  -70 PLC內存區域的功能受限制;

                  -80 PC系統中無網卡;

                  -81 PC的IP地址格式錯誤;

                  -82 PLC的IP地址格式錯誤;

                  -83 PING命令返回錯誤;

                  -99 連接序列號錯誤或測試次數超過試用限制;

                   

                  5.0  組件使用步驟

                  5.1 基本步驟

                  a. 復制DLL、OCX文件到需要用到該組件的工程項目目錄下;

                  b. 注冊DLL、OCX文件(VS.NET平臺的DLL程序集組件不用注冊);

                  c. 在項目開發環境里引用DLL文件,不同的開發環境引用方式有區別,具體參見所用語言的幫助文檔;

                  d.  參照例程定義、實例化通訊組件,編寫相關通訊代碼;

                   

                  5.2  DLL注冊方法

                  VS.NET平臺的DLL程序集組件不用注冊,ActiveX的COM組件(*.dll/*.ocx)須要在系統下注冊才能正常使用,注冊的方法主要有兩種:

                  a. 代碼注冊:用Windows提供的Shell命令,Shell “regsvr32 \s ” + 組件的完整路徑及文件名稱;

                  b. 手動注冊:同時按下 “Win”鍵 +“R”建,在彈出的運行對話框中輸入: 

                  “Regsvr32 ” + 空格 + 組件的完整路徑及文件名稱,然后點“確認”按鈕;

                  Windows7 及以上的系統下注冊,建議對用戶賬戶作以下設置:

                  控制面板->用戶賬號和家庭安全->用戶賬戶->更改用戶賬戶控制設置,把滑竿拖到最下面,即“從不通知”。

                  Windows7 及以上系統64位注冊方法:

                  a. 在C:\Windows\SysWOW64\下新建目錄(以 regdll 為例),復制需要注冊的dll到這個目錄下(以WinTcpS7.dll為例);

                  b. 點擊開始,在“搜索程序和文件”里鍵入cmd,然后在搜索出來的cmd菜單上右鍵,以管理員的權限運行;

                  c. 此時cmd提示符為C:\Windows\System32,鍵入: Regsvr32 C:\Windows\System32\regdll\WinTcpS7.dll

                  d. 按回車鍵,然后提示注冊成功(注意此時使用的是syswow64目錄下的regsvr32.exe,而不是system32下的regsvr32.exe)。

                  相關標簽:
                  上一篇:KINGPOLIMS與西門子PLC通訊數據讀取
                  下一篇:LIMS系統導入過程中電子版原始記錄與以往紙質記錄對接
                  廣東精邦軟件科技有限公司        

                  <em id="nk5kx"><ins id="nk5kx"></ins></em>

                  <dl id="nk5kx"></dl><em id="nk5kx"><menu id="nk5kx"></menu></em><sup id="nk5kx"><menu id="nk5kx"><form id="nk5kx"></form></menu></sup>
                    <sup id="nk5kx"></sup>

                    <sup id="nk5kx"><meter id="nk5kx"></meter></sup>

                      <dl id="nk5kx"><ins id="nk5kx"></ins></dl>
                              <delect id="nk5kx"><address id="nk5kx"></address></delect>
                              <em id="nk5kx"></em>

                                <sup id="nk5kx"><address id="nk5kx"><rt id="nk5kx"></rt></address></sup><dl id="nk5kx"></dl>
                                <em id="nk5kx"><ins id="nk5kx"></ins></em>
                                  <dl id="nk5kx"><ins id="nk5kx"></ins></dl><dl id="nk5kx"></dl>
                                  <em id="nk5kx"></em>

                                  <sup id="nk5kx"><menu id="nk5kx"><video id="nk5kx"></video></menu></sup>

                                  <sup id="nk5kx"></sup>
                                  茄子视频人app在线观看_poronodrome重口另类_护土与老板在办公室bd中文版_CHINESE叫床VIDEOS