在MODBUS的應用環境中,我們可以由一臺主控計算機(master device)來控制多臺被控設備(slave device)。我們可以由主控計算機發出詢問封包給指定被控設備,當被指定設備收到封包后,會進行處理并回答封包給主控計算機,其他被控設備知道該詢問封包不是呼叫自己就忽略之不作處理。
從軟件的角度來看,MODBUS環境是一種問與答(Poll & Ack)的對話過程,只有一臺主控計算機可以問話,而其他所有被控設備要注意自己有否被指定來接受命令或回答需求。
從硬件的角度來看,MODBUS環境是一種半雙工的傳輸環境.一個時間點只會有一個人可以傳送資料,其他人只能接收資料。RS485界面是一種半雙工傳輸界面,所以最常使用在MODBUS環境。RS232界面是一種全雙工傳輸界面,所以無法直接使用在MODBUS環境,必須透過S232串口共享器來提供MODBUS環境所需要的半雙工功能。
現在出現一種需求是想在MODBUS環境中可以存在多臺主控計算機來同時使用被控設備。例如我們在一個被監控環境中?有多個溫度傳感器利用RS485線路與主控計算機連接。原本一臺主控計算機利用MODBUS格式軟件及RS485聯機可以監控全部的溫度傳感器?,F在基于某些理由?我們希望有三臺主控計算機可以同時來監控全部的溫度傳感器。由于MODBUS的對話特性及RS485聯機的半雙工特性,我們無法把這三臺主控計算機直接掛到同一個RS485線路上。因為如果兩臺主控計算機同時發出封包到RS485線路上?將產生沖突而無法正確傳送數據。

要克服這個困境就要采用IS004S智能型串口共享盒。首先它的地電位隔離特性?可以把各個RS485網絡隔開以避免地電位差問題?,F在我們把溫度傳感器的RS485網段與IS004S盒的主串口1連接,把三臺主控計算機各自與IS004S盒的從串口2、3、4連接。當任何一臺主控計算機發出詢問封包時,IS004S盒在從串口2、3、4接收后會轉發到主串口1給溫度傳感器RS485網段。此時由主串口1收到傳感器傳回的數據?我們會轉發給剛才發出詢問封包的主控計算機。
如果有兩個以上的主控計算機發出詢問封包,則IS004S盒會依據先到先用原則來處理,我們令一個主控計算機的詢問封包先轉發給傳感器RS485網段,其它主控計算機的詢問封包則緩存之。等傳感器回答封包被接收后,回傳給該問話主控計算機后?再換其它等待中的主控計算機繼續使用。則各個主控計算機以為自己監控所有傳感器而不知有其它主控計算機也在使用中。
以上我們采用IS004S盒可以解決傳統上MODBUS環境只能有一臺主控計算機的限制。但在現實應用環境中,使用者必須知道合理使用此結構。要避免出現主控計算機命令被控設備向左轉?而另一主控計算機卻命令向右轉的不合理情況。一般而言受控設備如果只是提供數據給主控計算機者,則不會出現上述現象。最怕主控計算機可以設定受控設備的參數(例如公制單位的重量與英制單位重量),則受控設備所提供的數值可能在不同主控計算機上產生錯誤處理。