耦合

耦合

電子學電信領域,耦合ǒu hé(英語:coupling)是指能量從一個介質(例如一個金屬線、光導纖維)傳播到另一種介質的過程。

在電子學中,耦合指從一個電路部分到另一個電路部分的能量傳遞。例如,通過電導性耦合( Conductive coupling),能量從一個電壓源傳播到負載上。利用電容器允許通過交流成分、阻擋直流成分的性質,可以將電路的交流部分和直流部分耦合起來。變壓器也可以充當耦合介質,通過在兩端配置適當的阻抗,可以達到適當的阻抗匹配。

基本介紹

  • 中文名:耦合(ouhe)
  • 外文名:Coupling
  • 涉及部件:電路元件或電網路
  • 常用通信工程軟體工程機械工程
  • 實質:傳輸能量的現象
  • 相關領域:軟體工程中
主要分類,多場耦合,能量耦合,數據耦合,標記耦合,控制耦合,外部耦合,公共耦合,內容耦合,非直接耦合,另類情況,相關領域,軟體工程中,振動模式耦合,相關標準,

主要分類

耦合主要分為以下幾種:

多場耦合

現實工程中,物理場是許多的,溫度場引力場濕度場等等均屬於物理場,而我們要解決的許多問題是這些物理場的疊加問題,因為這些物理場直接是相互影響的。比如煉鋼的時候溫度高低對於應力分布就有影響。這種多個物理場相互疊加的問題就叫做多場耦合問題,也是一種耦合。
耦合

能量耦合

如變壓器的初級與次級之間的能量耦合。

數據耦合

一個模組訪問另一個模組時,彼此之間是通過簡單數據參數(不是控制參數、公共數據結構或外部變數) 來交換輸入、輸出信息的。

標記耦合

一組模組通過參數表傳遞記錄信息,就是標記耦合。這個記錄是某一數據結構的子結構,而不是簡單變數。其實傳遞的是這個數據結構的地址;

控制耦合

如果一個模組通過傳送開關、標誌、名字等控制信息,明顯地控制選擇另一模組的功能,就是控制耦合

外部耦合

一組模組都訪問同一全局簡單變數而不是同一全局數據結構,而且不是通過參數表傳遞該全局變數的信息,則稱之為外部耦合

公共耦合

若一組模組都訪問同一個公共數據環境,則它們之間的耦合就稱為公共耦合。公共的數據環境可以是全局數據結構、共享的通信區、記憶體的公共覆蓋區等。

內容耦合

當一個模組直接修改或操作另一個模組的數據,或者直接轉入另一個模組時,就發生了內容耦合。此時,被修改的模組完全依賴於修改它的模組。如果發生下列情形,兩個模組之間就發生了內容耦合
(1) 一個模組直接訪問另一個模組的內部數據;
(2) 一個模組不通過正常入口轉到另一模組內部;
(3) 兩個模組有一部分程式代碼重疊(只可能出現在彙編語言中);
(4) 一個模組有多個入口。

非直接耦合

兩個模組之間沒有直接關係,它們之間的聯繫完全是通過主模組的控制和調用來實現的。

另類情況

如果發生下列情形,兩個模組之間就發生了內容耦合
(1)一個模組直接訪問另一個模組的內部數據;
(2)一個模組不通過正常入口轉到另一模組內部;
(3)兩個模組有一部分程式代碼重疊(只可能出現在彙編語言中);
(4)一個模組有多個入口。耦合強度,依賴於以下幾個因素:
(1)一個模組對另一個模組的調用;
(2)一個模組向另一個模組傳遞的數據量;
(3)一個模組施加到另一個模組的控制的多少;
(4)模組之間接口的複雜程度。
耦合按從強到弱的順序可分為以下幾種類型:
(1)內容耦合。當一個模組直接修改或操作另一個模組的數據,或者直接轉入另一個模組時,就發生了內容耦合。此時,被修改的模組完全依賴於修改它的模組。
(2)公共耦合。兩個以上的模組共同引用一個全局數據項就稱為公共耦合。
(3)外部耦合。若一組模組都訪問同一全局數據項,則稱為外部耦合。
(4)控制耦合。一個模組在界面上傳遞一個信號(如開關值、標誌量等)控制另一個模組,接收信號的模組的動作根據信號值進行調整,稱為控制耦合。
(5)標記耦合。模組間通過參數傳遞複雜的內部數據結構,稱為標記耦合。此數據結構的變化將使相關的模組發生變化。
(6)數據耦合。模組間通過參數傳遞基本類型的數據,稱為數據耦合。
(7)非直接耦合。模組間沒有信息傳遞時,屬於非直接耦合。
如果模組間必須存在耦合,就儘量使用數據耦合,少用控制耦合,限制公共耦合的範圍,堅決避免使用內容耦合。

相關領域

軟體工程中

簡單地說,軟體工程中對象之間的耦合度就是對象之間的依賴性。指導使用和維護對象的主要問題是對象之間的多重依賴性。對象之間的耦合越高,維護成本越高。因此對象的設計應使類和構件之間的耦合最小。
有軟硬體之間的耦合,還有軟體各模組之間的耦合。
耦合性是程式結構中各個模組之間相互關聯的度量。它取決於各個模組之間的接口的複雜程度、調用模組的方式以及哪些信息通過接口。
耦合可以分為以下幾種,它們之間的耦合度由高到低排列如下:
(1) 內容耦合。當一個模組直接修改或操作另一個模組的數據時,或一個模組不通過正常入口而轉入另一個模組時,這樣的耦合被稱為內容耦合。內容耦合是最高程度的耦合,應該避免使用之。
(2) 公共耦合。兩個或兩個以上的模組共同引用一個全局數據項,這種耦合被稱為公共耦合。在具有大量公共耦合的結構中,確定究竟是哪個模組給全局變數賦了一個特定的值是十分困難的。
(3) 外部耦合 。一組模組都訪問同一全局簡單變數而不是同一全局數據結構,而且不是通過參數表傳遞該全局變數的信息,則稱之為外部耦合。
(4) 控制耦合 。一個模組通過接口向另一個模組傳遞一個控制信號,接受信號的模組根據信號值而進行適當的動作,這種耦合被稱為控制耦合。
(5) 標記耦合 。若一個模組A通過接口向兩個模組B和C傳遞一個公共參數,那么稱模組B和C之間存在一個標記耦合。
(6) 數據耦合。模組之間通過參數來傳遞數據,那么被稱為數據耦合。數據耦合是最低的一種耦合形式,系統中一般都存在這種類型的耦合,因為為了完成一些有意義的功能,往往需要將某些模組的輸出數據作為另一些模組的輸入數據。
(7) 非直接耦合 。兩個模組之間沒有直接關係,它們之間的聯繫完全是通過主模組的控制和調用來實現的。
總結:耦合是影響軟體複雜程度和設計質量的一個重要因素,在設計上我們應採用以下原則:如果模組間必須存在耦合,就儘量使用數據耦合,少用控制耦合,限制公共耦合的範圍,儘量避免使用內容耦合。
內聚與耦合
內聚標誌一個模組內各個元素彼此結合的緊密程度,它是信息隱蔽和局部化概念的自然擴展。內聚是從功能角度來度量模組內的聯繫,一個好的內聚模組應當恰好做一件事。它描述的是模組內的功能聯繫。耦合是軟體結構中各模組之間相互連線的一種度量,耦合強弱取決於模組間接口的複雜程度、進入或訪問一個模組的點以及通過接口的數據。 程式講究的是低耦合,高內聚。就是同一個模組內的各個元素之間要高度緊密,但是各個模組之間的相互依存度卻要不那么緊密。
內聚和耦合是密切相關的,同其他模組存在高耦合的模組意味著低內聚,而高內聚的模組意味著該模組同其他模組之間是低耦合。在進行軟體設計時,應力爭做到高內聚,低耦合。

振動模式耦合

振動模式的耦合是指兩個振動模態在某一振動模態下(或在某一廣義坐標方向上)的振動輸入,導致另一振動模態下(或另一廣義坐標方向上)的回響。
使耦合分離稱為解耦。解耦的目的是使各個自由度上(即各振動模態)的振動相對獨立或分離,這樣可對隔振效果不佳的自由度獨立採取措施而不影響其他自由度方向上的有關性能。當各自由度獨立後,可能產生共振的頻率比存在耦合時要小,特別在激振能量大的方向上要保證解耦。

相關標準

耦合強度,依賴於以下幾個因素:
(1)一個模組對另一個模組的調用;
(2)一個模組向另一個模組傳遞的數據量;
(3)一個模組施加到另一個模組的控制的多少;
(4)模組之間接口的複雜程度。

相關詞條

熱門詞條

聯絡我們