裝置定義

若要變更裝置定義,請在 Overview 視圖中選取 Device definition。
在專案初次新增模組時,Device Definition 對話方塊僅顯示 Overview 視圖,Channel 0 預設設為 Disabled。 視您為參數 Channel 0 的選擇而定,您可能有更多參數。
如果將 Channel 0 設為 Modbus Master,您可以查看 Channel 0 – Modbus Master 視圖。 請參閱 Channel 0 – Modbus Master 視圖 以瞭解詳情。
如果您在 Overview 視圖中將 Channel 0 設定為 Modbus Slave,您會看到 Channel 0 – Modbus Slave 視圖。 請參閱 Channel 0 – Modbus Slave 視圖 以瞭解詳情。

Overview 視圖

使用 Device Definition 對話方塊中的 Overview 視圖來定義裝置或變更裝置定義。
Device Definition 對話方塊 – Overview 視圖
Overview 視圖包含以下參數:
Device Definition 對話方塊 – Overview 視圖參數
參數
定義
提供的選擇
Device Type
顯示裝置型號與類型。
裝置專屬
Name
輸入 IEC 61131 相容裝置名稱。
若在此欄位中輸入無效的字元,或名稱超過 40 個字元,則軟體會忽略該字元。
所有有效值
Description
輸入裝置描述。
所有有效值
Slot
指定裝置所在的插槽號碼。 視平台而定,只有 1 個與最大數目的 I/O 裝置間的插槽才有效。
建立裝置時,插槽號碼預設為第一個可用的插槽位置。
當控制器變更為支援較小之最大 I/O 計數的控制器時,目前的插槽值可能會失效。
1...32
Series
指定裝置的系列。
裝置專屬
Revision
指定裝置的主要和次要修訂版。 次要修訂版的有效範圍為 1...255。
裝置專屬
Electronic Keying
定義裝置使用的電子鍵控。 電子鍵控會將您專案中定義的裝置與安裝的裝置做比較。 如果鍵控失敗,則會發生錯誤。
如需電子鍵控的詳細資訊,請參閱 Electronic Keying in Logix 5000 Control Systems Application Technique(出版品 LOGIX-AT001)。
  • Exact Match
  • Compatible Module
  • Disable Keying
注意:
當使用 Disable Keying 時請特別謹慎;若未正確使用,此選項可能會造成人員傷亡、資產損壞或經濟損失。
強烈建議您不要使用 Disable Keying。
若您使用 Disable Keying,您有責任確實了解使用之模組是否可滿足應用的功能需求。
Connection
指定裝置與控制器之間傳輸的資料類型。
Data(預設值)
Channel 0
指定通道用於從序列裝置傳送與接收資料之通訊協定。
  • Disabled
  • Generic ASCII
  • Modbus Master
  • Modbus Slave
請參閱 表 2 以瞭解詳情。
通訊模式定義
通訊模式
定義
Disabled
該通道未使用,且控制器與序列模組間未啟用實體連線。
Generic ASCII
是序列通訊的一般模式,您可定義通訊中要使用或接收的任何使用者資料。
Modbus Master
該裝置會將傳送 Modbus 問題或寫入指令到相連的從屬裝置。
Modbus Slave
該裝置作為外部主物件的從屬,並等待 Master 的指令。

Channel 0 – Modbus Master 視圖

Modbus Master 視圖可讓您定義 Modbus Master 裝置。
Channel 0 – Modbus Master 視圖範例
Modbus Master 視圖包含以下參數:
Modbus Master 指令清單參數
參數
定義
提供的選擇
Command
顯示設定中的指令索引。
0...49
Communication Method
指定指令的通訊方法。
提示: 停用通訊方法時,無法使用參數。
  • Disabled(預設)
  • Continuous – Modbus 指令訊息會連續傳輸。
  • Conditional – 當消費 Modbus 指令資料變更時,會傳輸 Modbus 指令訊息。
    某些函數代碼選項不適用於 Conditional 通訊方法。
Data Type
指定指令的資料類型。
  • BOOL
  • INT(預設)
  • REAL
Function Code
指定指令的函數。
如需各函數代碼選項的描述,請參閱 表 4
指定指令的函數。 有效值視資料類型而定。
若資料類型為 BOOL:
  • Read Coils
  • Read Discrete Inputs
  • Write Single Coil
  • Write Multiple Coils
若資料類型為 INT:
  • Read Holding Registers
  • Read Input Registers
  • Write Single Register
  • Write Multiple Registers
若資料類型為 REAL:
  • Read Holding Registers
  • Read Input Registers
  • Write Multiple Registers
Slave
指定 Modbus Slave 裝置的節點位址。
特定 Modbus Slave 裝置的有效位址為 1...247。 針對廣播指令,將從屬設定為 0。廣播指令只能是寫入指令。
Register Start Address
指定讀取或寫入之暫存器的起始位址。
0...65,535
Data Count
指定讀取或寫入之資料類型的資料數量。
如果使用 REAL,每個資料使用 2 個暫存器。
讀/寫的連續暫存器數量如下:
  • 對於 BOOL:等於資料計數
  • 對於 INT:等於資料計數
  • 對於 REAL:等於(資料計數 * 2)
資料計數所造成的結束位址不可超過最大位址 65,535。 結束位址的計算方式為(暫存器開始位址 + 暫存器數量 - 1)。
有效的資料長度值依資料類型與函數代碼而定。
功能代碼
有效值
Read Coils
1...2000
Read Discrete Inputs
1...2000
Read Holding Registers
  • 對於 INT 資料類型,1...125
  • 對於 REAL 資料類型,1...62
Read Input Registers
  • 對於 INT 資料類型,1...125
  • 對於 REAL 資料類型,1...62
Write Single Coil
不適用
Write Single Register
不適用
Write Multiple Coils
1...1968
Write Multiple Registers
  • 對於 INT 資料類型,1...123
  • 對於 REAL 資料類型,1...61
Poll Interval
指定當指令處於連續模式時每次執行時的秒數。
例如,如果 Poll Interval 設定為 10,Modbus Master 會等待 10 秒再重新執行該指令。當 Poll Interval 設定為 0 時,Modbus Master 會盡快重複傳輸指令。
提示: 當通訊方法為 Conditional 時,此參數無法使用。
0...32,767
Swap Mode
指定每 4 個位元組從 Modbus Slave 接收或傳送到 Modbus Slave 的資料排列方式。
  • No Change (ABCD → ABCD)
  • Word Swap (ABCD → CDAB)
  • Byte Swap (ABCD → BADC)
  • Word and Byte Swap (ABCD → DCBA)
提示: A、B、C 和 D 代表接收/傳輸資料中的四個相鄰位元組。
Fault Enable
判斷當讀取指令失敗時是否要以故障值覆寫收到的資料。
選擇核取方塊可以故障值覆寫接收的資料。
提示: 當函數代碼為寫入指令時,無法使用此參數。
Fault Value
指定當讀取指令失敗時要取代接收資料的值。
Connection 1/Connection 2
指令通訊預設使用 Connection 1。
若指令資料大小超過 Connection 1 的剩餘可用資料量,則該指令會使用 Connection 2 代替。
Input
顯示該連線剩餘的讀取資料量。
Output
顯示該連線剩餘的寫入資料量。
函數代碼描述
Data Type
功能代碼
Description
BOOL
Read Coils(功能代碼 01)
讀取從屬裝置中 Coils 的 1...2000 連續狀態。
Read Discrete Inputs(功能代碼 02)
讀取從屬裝置中 Discrete Inputs 的 1...2000 連續狀態。
Write Single Coil(功能代碼 03)
在從屬裝置中將單一輸出寫入 ON 或 OFF。
Write Multiple Coils(功能代碼 15)
在從屬裝置中將 1...1968 個連續輸出寫入至 ON 或 OFF。
INT
Read Holding Registers(功能代碼 03)
在從屬裝置中讀取 INT 維持暫存器的 1...125 個連續區塊。
Read Input Registers(功能代碼 04)
在從屬裝置中讀取 INT 輸入暫存器的 1...125 個連續區塊。
Write Single Register(功能代碼 06)
在從屬裝置中寫入單一維持暫存器。
Write Multiple Registers(功能代碼 01)
在從屬裝置中寫入 INT 維持暫存器的 1...123 個連續區塊。
REAL
Read Holding Registers(功能代碼 03)
在從屬裝置中讀取 REAL 維持暫存器的 1...62 個連續區塊。
Read Input Registers(功能代碼 04)
在從屬裝置中讀取 REAL 輸入暫存器的 1...62 個連續區塊。
Write Multiple Registers(功能代碼 16)
在從屬裝置中寫入 REAL 維持暫存器的 1...61 個連續區塊。
主物件指令清單限制
主要指令清單限制為:
  • 最多可建立 50 個指令。 指令受限於可用的連線記憶。
  • 每個 Modbus Master 都可支援最多兩個資料連線。
  • Connection 1 支援最大 464 位元組的讀取資料和 476 位元組的寫入資料。
  • Connection 2 支援最大 472 位元組的讀取資料和 488 位元組的寫入資料。
  • 每個指令都可使用:
    • 每個被讀取的維持暫存器或輸入暫存器都有 2 位元組輸入資料。
    • 每 1…8 個被讀取的線圈或離散輸入都有 1 位元組輸入資料。
    • 每個被寫入的維持暫存器都有 2 位元組輸出資料。
    • 每 1…8 個被寫入的線圈都有 1 位元組輸出資料。
  • 超過連線記憶時,會出現錯誤訊息。
主物件指令記憶體用量
下列為主要指令記憶體用量的範例:
  • 暫存器的最高單一連線組態:
    • 223 個字 * 2 個位元組 / 字讀取 = 446 輸入位元組
    • 241 個字 * 2 個位元組 / 字寫入 = 482 輸出位元組
  • 線圈的最高單一連線組態:
    • 3576 位元 / 8 位元 / 位元組讀取 = 447 輸入位元組
    • 3856 位元 / 8 位元 / 寫入的位元組 = 482 輸出位元組

Channel 0 – Modbus Slave 視圖

Modbus Slave 視圖可讓您定義 Modbus Slave 裝置。
Channel 0 – Modbus Slave 視圖範例
Modbus Master 視圖包含以下參數:
Modbus Slave 資料映射參數
參數
定義
提供的選擇
Register Mapping Number
顯示暫存器對應編號。
0...29
Register Type
指定暫存器的類型。
提示: 當暫存器類型停用時,無法使用參數。
  • Disabled(預設)
  • Coils
  • Discrete inputs
  • Input registers
  • Holding registers
Data Type
指定暫存器的資料類型。
可用選項視您選擇的暫存器類型而定。
對於線圈與離散輸入,可用的選項為:
  • BOOL
對於維持暫存器和輸入暫存器,可用的選項為:
  • INT
  • REAL
Register Start Address
指定暫存器的起始位址。
0...65,535
Data Count
指定資料類型的資料數量。
有效值視資料類型而定:
  • BOOL:1...128
  • INT:1...100
  • REAL:1...50
讀/寫的連續暫存器數量如下:
  • 對於 BOOL:等於資料計數
  • 對於 INT:等於資料計數
  • 對於 REAL:等於(資料計數 * 2)
對於任何兩個具有相同暫存器類型的對應,其暫存器範圍不得重疊。 每個對應的暫存器範圍從暫存器起始位址到對應的結束位址。 結束位址的計算方式為(暫存器開始位址 + 暫存器數量 - 1)。
每個對應的結束位址不得超過最大位址 65,535。
Buffer Index
指定輸入及/或輸出標籤中的暫存器緩衝區的緩衝區索引。 這些標籤為 HoldingRegister[y]、Coil[z]、InputRegister[y] 與 DiscreteInput[z],其中「y」與「z」是緩衝區索引。
  • 0...15 用於線圈/離散輸入
  • 0...99 用於維持/輸入暫存器
此暫存器對應所用的連續緩衝器數量如下:
  • 對於 BOOL:等於(資料計數/8)的四捨五入
  • 對於 INT:等於資料計數
  • 對於 REAL:等於(資料計數 * 2)
對於相同暫存器類型的任兩個暫存器對應,其緩衝區範圍不得重疊。 緩衝區範圍從緩衝區索引括展到資料計數所造成的結束緩衝區索引。 結束緩衝區索引的計算方式為(緩衝區索引 + 緩衝區數目 - 1)。
每個對應的結束緩衝區索引不得超過上述定義的緩衝索引有效範圍。
緩衝區索引錯誤範例
Modbus Slave 位置表限制
根據可用記憶體,最多可以在模組從屬位址表中建立 30 個資料點範圍:
  • 維持暫存器最多 200 個位元組(最多 100 個 INT 或 50 個 REAL)
  • 輸入暫存器最多 200 個位元組(最多 100 個 INT 或 50 個 REAL)
  • 最多 128 個 Coil(在 8 位元邊界處,Data Index 0…15)
  • 最多 128 個 Discrete 輸入(在 8 位元邊界處,Data Index 0…15)
Modbus Slave 資料映射範例
Modbus Slave 資料映射範例
圖 5 中顯示的資料可從模組標籤中解讀如下:
  • v:2:O1.Slave.HoldingRegister[0…2] = 400003…400005
  • v:2:O1.Slave.HoldingRegister[3…9] = 432000…432006
  • v:2:O1.Slave.HoldingRegister[10…99] = 400999…410088
  • v:2:O1.Slave.Coil[0].0…0.7 = 000000…000007
  • v:2:O1.Slave.Coil[0].0…0.7 = 000000…000007
  • v:2:O1.Slave.Coil[2].0…[4].0 = 0320000…032016
  • v:2:O1.Slave.Coil[5].0…[15].7 = 000999…001086
意見提供
關於這份文件有任何問題? 請提供您的意見
Normal