西門(mén)子代理電線電纜經(jīng)銷(xiāo)商PLC,英文全稱是 Programmable logicController,中文名字是可編程邏輯控制器,一種數(shù)字運(yùn)算操作的電子系統(tǒng),一種基于邏輯的控制器,采用一類(lèi)可編程的存儲(chǔ)器,用于存儲(chǔ)程序、執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)與算術(shù)操作等面向用戶的指令,并通過(guò)數(shù)字或模擬式輸入輸出,控制各種類(lèi)型的機(jī)械或生產(chǎn)過(guò)程,通常分為電源、中央處理單元CPU、存儲(chǔ)器、輸入以及輸出單元等幾個(gè)部分。
可以理解為程序員設(shè)置好運(yùn)動(dòng)邏輯,通過(guò)這個(gè)控制器控制設(shè)備的運(yùn)動(dòng)方式PLC是什么意思?相信很多人處于大概知道是什么,但是又無(wú)法準(zhǔn)確說(shuō)出的階段,作為專(zhuān)注于為企業(yè)提供數(shù)據(jù)采集和設(shè)備控制解決方案的眾誠(chéng)工業(yè),今天和大家探討一下。
而眾誠(chéng)工業(yè)還能根據(jù)用戶需求,設(shè)計(jì)PLC控制程序,為客戶提供PLC編程和上位機(jī)軟件的定制化開(kāi)發(fā)技術(shù)服務(wù),滿足用戶的多種需求,比如,自主研發(fā)的潔凈空調(diào)智能控制系統(tǒng)和通風(fēng)排風(fēng)智能控制系統(tǒng)就配置PLC,不僅具有報(bào)警和定時(shí)控制功能,還兼具可擴(kuò)展性和兼容性,系統(tǒng)能被第三方系統(tǒng)集成。
以上PLC的基本介紹,相信大家對(duì)PLC也有一個(gè)初步的了解。
PLC的型號(hào)、品牌不同,對(duì)應(yīng)著其結(jié)構(gòu)形式、性能、編程方式等等都有所差異,價(jià)格也各不相同,在挑選時(shí)候,建議先要明確自己的應(yīng)用需求,比如具體的應(yīng)用場(chǎng)景,希望實(shí)現(xiàn)的運(yùn)動(dòng)和控制功能,已經(jīng)特殊的控制要求,這些將決定了PLC的選型和搭配組合。
簡(jiǎn)單地說(shuō),PLC就是一種小型的計(jì)算機(jī),和我們常用的計(jì)算機(jī)不同的是,PLC是設(shè)備之間通過(guò)數(shù)字信號(hào)進(jìn)行互動(dòng),而我們常用的計(jì)算機(jī),是人和計(jì)算機(jī)的互動(dòng)。
如果調(diào)用指令期間發(fā)生錯(cuò)誤或在工藝模塊中出現(xiàn)錯(cuò)誤,則會(huì)設(shè)置 Error 輸出參數(shù)。
可以在 輸出參數(shù) ErrorID中讀取更多詳細(xì)錯(cuò)誤信息。
消除錯(cuò)誤原因并通過(guò)設(shè)置輸入?yún)?shù) ErrorAck 確認(rèn)錯(cuò)誤消息。
如果沒(méi)有更多的未決錯(cuò)誤,工藝對(duì)象將復(fù)位輸出參數(shù) Error 。
在確認(rèn)上一個(gè)錯(cuò)誤之前不會(huì)再報(bào)告新錯(cuò)誤。
改變計(jì)數(shù)方向 僅當(dāng)將“脈沖(A)”組態(tài)為信號(hào)類(lèi)型時(shí),才能通過(guò)用戶程序更改計(jì)數(shù)方向。
除此之外,計(jì)數(shù) 方向取決于工藝模塊的輸入信號(hào)。
計(jì)數(shù)方向由靜態(tài)變量NewDirection 控制: ? +1:向上計(jì)數(shù)方向 ? -1:向下計(jì)數(shù)方向 要執(zhí)行更改命令,需要設(shè)置靜態(tài)變量SetNewDirection = TRUE。
High_Speed_Counter 輸入?yún)?shù) 參數(shù) 聲明 數(shù)據(jù)類(lèi) 型 默認(rèn)值 說(shuō)明SwGate INPUT BOOL FALSE 控制軟件門(mén): ? 上升沿:軟件門(mén)打開(kāi) ? 下降沿:軟件門(mén)關(guān)閉 SwGate與硬件門(mén)一起啟用內(nèi)部門(mén)。
CaptureEnable INPUT BOOL FALSE 啟用 Capture 功能啟用后,會(huì)在相關(guān)數(shù)字量輸入的下一個(gè)組態(tài)沿處發(fā)生 Capture 事件。
將在 CaptureEnable 的下降沿復(fù)位輸出參 數(shù)CaptureStatus。
即使未發(fā)生 Capture 事件,也會(huì)在 CaptureEnable 的下降沿復(fù)位啟用功能。
無(wú)論CaptureEnable 為何值,在出現(xiàn)下一個(gè) Capture 事 件之前,上一個(gè)值都將保留在輸出參數(shù) CapturedValue中。
SyncEnable INPUT BOOL FALSE 啟用同步 同步方向在靜態(tài)變量 SyncUpDirection 和SyncDownDirection 中指示。
將在 SyncEnable 的下降沿 復(fù)位輸出參數(shù) SyncStatus 。
ErrorAck INPUT BOOL FALSE 截至 V3.0 的 High_Speed_Counter:在上升沿確認(rèn)報(bào)告的狀態(tài)。
自 V3.1 起的 High_Speed_Counter: 由上層確認(rèn)報(bào)告的錯(cuò)誤狀態(tài)。
EventAckINPUT BOOL FALSE 在上升沿復(fù)位以下輸出參數(shù): ? CompResult0 ? CompResult1 ?ZeroStatus ? PosOverflow ? NegOverflow SetCountValue INOUT BOOLFALSE 在上升沿開(kāi)始將靜態(tài)變量 NewCountValue 中的新計(jì)數(shù)器值傳送到工藝模塊。
完成傳送后計(jì)數(shù)器值立即生效High_Speed_Counter 輸出參數(shù) 參數(shù) 聲明 數(shù)據(jù)類(lèi) 型 默認(rèn)值 說(shuō)明StatusHW OUTPUT BOOL FALSE 工藝模塊狀態(tài)位:模塊已組態(tài)并準(zhǔn)備好運(yùn)行。
模塊數(shù)據(jù) 有效。
StatusGateOUTPUT BOOL FALSE 狀態(tài)位:如果設(shè)置該參數(shù),將釋放內(nèi)部門(mén) StatusUp OUTPUT BOOL FALSE狀態(tài)位:上個(gè)計(jì)數(shù)脈沖已使計(jì)數(shù)器遞增,并且是在不超 過(guò) 0.5 s 的時(shí)間內(nèi)完成的 StatusDown OUTPUT BOOLFALSE 狀態(tài)位:上個(gè)計(jì)數(shù)脈沖已使計(jì)數(shù)器遞減,并且是在不超 過(guò) 0.5 s 的時(shí)間內(nèi)完成的 CompResult0 OUTPUTBOOL FALSE 狀態(tài)位:基于所選比較條件,比較發(fā)生的 DQ0 事件(狀 態(tài)變化)。
如果在工作模式“將計(jì)數(shù)值作為參考”下將計(jì)數(shù)器值設(shè)為起 始值,則不會(huì)置位 CompResult0。
可使用輸入?yún)?shù) EventAck的上升沿復(fù)位 CompResult0 。
CompResult1 OUTPUT BOOL FALSE狀態(tài)位:根據(jù)所選比較條件,比較發(fā)生的 DQ1 事件(狀 態(tài)變化)。
如果在工作模式“將計(jì)數(shù)值作為參考”下將計(jì)數(shù)器值設(shè)為起始值,則不會(huì)置位 CompResult1。
可使用輸入?yún)?shù) EventAck 的上升沿復(fù)位 CompResult1 。
SyncStatus OUTPUT BOOL FALSE 狀態(tài)位:發(fā)生了同步事件 如果輸入?yún)?shù) SyncEnable置位,則在相應(yīng)數(shù)字量輸入處 出現(xiàn)組態(tài)的信號(hào)沿時(shí)會(huì)將狀態(tài)位 SyncStatus 置位。
SyncStatus 在以下部分的下降沿復(fù)位? SyncEnable(輸入?yún)?shù))或 說(shuō)明CaptureStatus OUTPUT BOOL FALSE 狀態(tài)位:發(fā)生 Capture 事件后,輸出參數(shù)CapturedValue 將具備一個(gè)有效的 Capture 值 如果已設(shè)置輸入?yún)?shù) CaptureEnable,在相應(yīng)數(shù)字量輸入上出現(xiàn)組態(tài)的沿時(shí)設(shè)置狀態(tài)位 CaptureStatus.。
可在輸入?yún)?shù) CaptureEnable 的下降沿復(fù)位CaptureStatus 。
ZeroStatus OUTPUT BOOL FALSE狀態(tài)位:無(wú)論計(jì)數(shù)方向?yàn)楹?,CountValue 均已達(dá)到值“0” 在輸入?yún)?shù) EventAck 的上升沿復(fù)位 ZeroStatus。
PosOverflow OUTPUT BOOL FALSE 狀態(tài)位:CountValue 在正方向上超過(guò)了計(jì)數(shù)上限 在輸入?yún)?shù)EventAck 的上升沿復(fù)位 PosOverflow。
NegOverflow OUTPUT BOOL FALSE狀態(tài)位:CountValue 在負(fù)方向上低于計(jì)數(shù)下限 在輸入?yún)?shù) EventAck 的上升沿復(fù)位 NegOverflow。
ErrorOUTPUT BOOL FALSE 發(fā)生錯(cuò)誤。
有關(guān)出錯(cuò)的原因,請(qǐng)參考輸出參數(shù) ErrorID。
ErrorID OUTPUT WORD0 ErrorID (頁(yè) 147) 參數(shù)顯示錯(cuò)誤消息的編號(hào)。
ErrorID = 0000H:沒(méi)有任何錯(cuò)誤。
CountValueOUTPUT DINT 0 當(dāng)前計(jì)數(shù)器值 CapturedValue OUTPUT DINT 0 *后采集的 Capture值。
無(wú)論輸入?yún)?shù) CaptureEnable 為何值,在出現(xiàn)下一個(gè) Capture 事件之前,該值都會(huì)保 留。
如果發(fā)生了新的Capture 事件,CaptureStatus 將置位, 可在輸入?yún)?shù) CaptureEnable 的下降沿對(duì)其進(jìn)行復(fù)位。
MeasuredValue OUTPUT REAL 0.0 頻率、周期或速度(具體取決于組態(tài))的當(dāng)前測(cè)量值CompareMeasuredValue1 OUTPUT BOOL FALSE 狀態(tài)位: FALSE:工作模式“將計(jì)數(shù)值作為參考”;比較功能與計(jì)數(shù) 器值配合使用 TRUE: 工作模式“將測(cè)量值作為參考”;比較功能與測(cè)量值配合使用High_Speed_Counter 靜態(tài)變量 變量 數(shù)據(jù)類(lèi)型 默認(rèn)值 訪問(wèn) 說(shuō)明 NewCountValue DINTL#0 寫(xiě)入 新計(jì)數(shù)器值 NewReference
value0 DINT L#0 寫(xiě)入 操作模式下新比較值 0“將計(jì)數(shù)值用作參 考”NewReference
value1 DINT L#10 寫(xiě)入 操作模式下新比較值 1“將計(jì)數(shù)值用作參 考”NewReference
value0 _M1 REAL L#0.0 寫(xiě)入 操作模式下新比較值 0“將測(cè)量值用作參 考”NewReference
value1 _M1 REAL L#10.0 寫(xiě)入 操作模式下新比較值 1“將測(cè)量值用作參 考”NewUpperLimit DINT L#寫(xiě)入 新計(jì)數(shù)上限 NewLowerLimit DINTL#-寫(xiě)入 新計(jì)數(shù)下限 NewStartValue DINT L#0 寫(xiě)入 新啟動(dòng)值 NewDirectio
nINT 0 寫(xiě)入 新計(jì)數(shù)方向: +1:向上計(jì)數(shù)方向 -1:向下計(jì)數(shù)方向 CurReference
value0 DINT L#0 讀取操作模式下當(dāng)前比較值 0“將計(jì)數(shù)值用作參 考” CurReference
value1 DINT L#10 讀取 操作模式下當(dāng)前比較值1“將計(jì)數(shù)值用作參 考” CurReference
value0 _M1 REAL L#0.0 讀取 操作模式下當(dāng)前比較值0“將比較值用作參 考” CurReference
value1 _M1 REAL L#10.0 讀取 操作模式下當(dāng)前比較值1“將比較值用作參 考” CurUpperLimit DINT L#讀取 當(dāng)前計(jì)數(shù)上限 新計(jì)數(shù)器值不滿足以下條件:? 計(jì)數(shù)下限