軟體程式是如何讓硬體工作的?鍋小鵬2020-12-30 08:48:01

有,只是你沒看到而已,電訊號驅動“開關管”(你就理解成電子開關)工作的,如果是大負載還有繼電器

這東西算電子原理東西,隔行如隔山

軟體程式是如何讓硬體工作的?Patrick Zhang2020-12-30 09:35:23

首先要弄懂幾個概念。

電燈,它所在的線路屬於能量傳遞的電路,我們把它叫做主電路。主電路上有各種電器,例如執行負載分合、過載和短路保護的斷路器,例如合分負載的接觸器等等,都是主電路元件。

主電路又叫做主迴路,或者一次迴路。

對主迴路元器件實施控制、訊號採集、調節的電路叫做輔助迴路,又叫做控制迴路或者二次迴路。

二次迴路中利用各種繼電器和控制邏輯實現主迴路所需求的各種控制方式。

明白這個道理後,我們就可以解釋題主的問題了。題主的問題說明是:“

開燈,我將開關按開,使兩線相連,關燈,我將開關關閉,使兩線斷開,這是有物理行為的(我用手操作了開關)。如果用軟體進行開燈關燈操作,是怎麼實現的?有實際物理行為發生麼?

”。

在這裡,人手執行了操控邏輯和操控行為。如果期望由電路自身來實現操控,我們必須要有引數採集迴路,要有邏輯判斷迴路,還要有執行操控迴路。這裡的邏輯判斷迴路,既可以用各種繼電器來構建,也可以用軟體來實現。

對於微控制器或者PLC,我們把引數採集的迴路通道叫做前向通道,把執行操控的迴路通道叫做後向通道。

那麼微控制器與PLC是等同的嗎?答案是否定的。我們知道一次迴路中存在許多電器的通斷操作,存在電弧和強烈的電磁騷擾。在國家標準中,把電磁騷擾叫做EMC,並把EMC電磁騷擾分成四級,一級是居家和辦公室的電磁騷擾環境,三級是工業環境,四級則是特強的電磁騷擾環境。

一般的微控制器系統,例如大學生們在畢業設計或者課程設計中製作的微控制器系統,在三級電磁騷擾環境下,立刻就會發生故障,嚴重時會爆炸起火。所以,凡是用於工業環境下的微控制器系統,不管是電力儀表也好,是繼電保護裝置也好,是PLC也好,必須透過三級電磁騷擾的測試。測試是在國家專門指定的測試中心測試,通過了測試的產品才可以上市。

可見,微控制器系統與PLC不是一回事。

以下我們用PLC來探討題主的問題。

我們看下圖,圖中是ABB的某款PLC的模擬量輸入介面模組和開關量輸入介面模組:

軟體程式是如何讓硬體工作的?

圖1:PLC的模擬量輸入模組

軟體程式是如何讓硬體工作的?

圖2:PLC的開關量輸入模組

圖1和圖2的模組屬於前向通道。

有意思的是,前向通道的硬體結構中,一般都配套光電耦合器,以實現干擾訊號的隔離。

資料採集後,不能直接用於軟體程式控制,必須加以處理。例如模擬量訊號需要線性化,使得訊號與外部環境參量一致。例如水位的高低、流量的大小,還有壓強、溫度、位置等等,都需要配套線性化變換,以便讓軟體邏輯控制系統知道當前的資料屬於哪個區段。

線性化工作也可以透過軟體來執行。

開關量也必須配套消抖程式和狀態判斷程式,讓邏輯控制部分知曉當前的開關量位置變化屬於哪個狀態參量。

處理完畢後的狀態量和模擬量就可以輸入給PLC的主控程式了。

我們看下圖:

軟體程式是如何讓硬體工作的?

圖3:用於判斷電壓是否正常的PLC程式段

圖3中的AND是邏輯與程式模組,TON是延遲邏輯程式模組。

再看下圖:

軟體程式是如何讓硬體工作的?

圖4:用於執行備用電源互投的邏輯操控程式

在圖4中,OR是邏輯或程式模組。

當邏輯判斷和處理完成得到結果後,PLC就通過後向的出口繼電器通道執行操控輸出。

我們看下圖:

軟體程式是如何讓硬體工作的?

圖5:自動操控方式的程式段

圖5就是自動操控程式段。我們看到,程式的主要構成還是以AND和OR來構建。

在很多要求高的場合,為了提高可靠性,我們還要配套冗餘控制。系統中採用主PLC和備用PLC來作為操控備份,並實現無縫切換。一旦主機損壞,從機立刻無縫切入併發出告警資訊。

看下圖:

軟體程式是如何讓硬體工作的?

圖6:PLC的冗餘操控

在實際工控中,還需要配套資料交換。下圖是RS485/MODBUS通訊資料交換程式:

軟體程式是如何讓硬體工作的?

圖7:資料交換程式

有的時候,還需要配套事件記錄,其程式如下:

軟體程式是如何讓硬體工作的?

圖8:SOE事件記錄程式

這裡的UHR模組完成位元組參量拆分成數字量的工作,事件記錄就在位元組的各個位中。

===================

看到這裡,題主肯定已經迷糊了。我給題主總結一下吧:

第一:控制系統由前向通道、CPU資料處理和邏輯判斷,以及後向通道等三個基本部分構成。

第二:軟體程式的主體就在CPU資料處理部分。

第三:軟體程式離開硬體裝置,是無法工作的。反過來,硬體脫離了軟體支援,也沒法工作。可見,硬體和軟體是統一體。

至於題主的開燈和關燈,應當屬於居家智慧化的一部分。

最後,我把我帶的某位學生的畢設影片發給題主觀看,他設計的是用微控制器完成居家配電智慧化,其中包括窗簾開啟和關閉,還有火災報警控制等等。如下:

軟體程式是如何讓硬體工作的?

居家智慧控制的微控制器系統

https://www。zhihu。com/video/1327547896561025024

試問:這裡的軟體部分在哪裡?

軟體程式是如何讓硬體工作的?知乎使用者2020-12-30 09:45:15

軟體程式是如何讓硬體工作的?

題主可以看看這本書,這本書就是從一個開關控制一個燈泡開始,一步步深入到計算機原理。

軟體程式是如何讓硬體工作的?孫連城2020-12-30 15:39:05

程式是有物理提現的,它就體現在晶片裡面半導體三極體的狀態的變化上。根據邏輯的不同,儲存程式的三極體就有不同的狀態,那麼訊號從這個儲存區跑出來就有不同的結果。這個結果會被放大器或者物理器件執行。

軟體程式是如何讓硬體工作的?oxox2020-12-31 15:15:07

並不是軟體讓硬體工作的,

硬體自己能工作,只是不知道做啥工作,

它去記憶體裡找工作手冊,然後照著搬運