時間:2024-07-12 09:47:33來æºï¼šé›»å發燒å‹
  PLC作為工æ¥è‡ªå‹•化ä¸ä¸å¯æˆ–缺的é‡è¦çµ„æˆéƒ¨åˆ†ï¼Œåœ¨ç”Ÿç”¢éŽç¨‹ä¸ç™¼æ®è‘—é—œéµçš„作用。特別是Ladder Logic語言作為PLC編程的é‡è¦å·¥å…·ï¼Œç‚ºå·¥æ¥ç³»çµ±çš„æŽ§åˆ¶æä¾›äº†ç²¾æº–而å¯é 的支æŒã€‚ 本文詳細闡述了PLC編程的基本原ç†å’ŒåŠŸèƒ½ï¼Œæ·±å…¥ä»‹ç´¹äº†Ladder Logic語言的定義ã€ç‰¹é»žã€åŸºæœ¬èªžæ³•åŠå…¶åœ¨å¯¦éš›å·¥æ¥ç³»çµ±ä¸çš„æ‡‰ç”¨ã€‚æ¤å¤–,還探討了PLC特殊塊功能和用戶定義功能塊的概念åŠå…¶ä½œç”¨ã€‚
  ?在當今自動化產æ¥ä¸ï¼Œå¯ç·¨ç¨‹é‚輯控制器(PLC)扮演著至關é‡è¦çš„角色。而Ladder logic(梯形é‚輯)語言å¯ä»¥è¢«è¦–為基于è¦å‰‡è€ŒéžéŽç¨‹çš„語言,被廣泛用于編程PLCä¸ï¼Œç‰¹åˆ¥æ˜¯éœ€è¦é †åºæŽ§åˆ¶éŽç¨‹æˆ–復雜的自動化系統。
  本文講述關于PLC -Ladder logicèªžè¨€åŸºç¤Žï¼Œå¸Œæœ›èƒ½å¹«åŠ©ä½ æ›´å¥½çš„ç†è§£PLCçš„é‚輯。
  PLC是什么?
  PLC(Programmable Logic Controller),å³å¯ç·¨ç¨‹é‚輯控制器,是一種專為工æ¥ç’°å¢ƒè¨è¨ˆçš„æ•¸å—é‹ç®—æ“作電å系統。它使用å¯ç·¨ç¨‹å˜å„²å™¨å˜å„²åŸ·è¡Œå„種æ“作(如é‚輯é‹ç®—ã€é †åºæŽ§åˆ¶ã€å®šæ™‚ã€è¨ˆæ•¸å’Œç®—è¡“é‹ç®—)çš„æŒ‡ä»¤ï¼Œå¹¶é€šéŽæ•¸å—或模擬輸入輸出來控制å„類機械è¨å‚™æˆ–生產éŽç¨‹ã€‚
  
  圖 1 :這臺集æˆé¡¯ç¤ºå±çš„ Crouzet EM4 PLCæ£åœ¨é‹è¡Œç¶“典的 “Hello World!†計劃。
  PLC的基本功能是通éŽé‚輯將輸入信號轉æ›ç‚ºè¨å‚™è¼¸å‡ºã€‚這類似于éµç›¤è¼¸å…¥å—符åŽåœ¨å±å¹•上顯示輸出。在工æ¥ç’°å¢ƒä¸ï¼ŒPLC用于控制å„種è¨å‚™å’ŒéŽç¨‹ï¼Œä¾‹å¦‚æ ¹æ“šå‚³æ„Ÿå™¨ä¿¡è™Ÿä½¿æ©Ÿå™¨äººåŸ·è¡Œå¾©é›œå‹•ä½œã€‚
  什么是Ladder Logic語言?我們先來了解一下PLC編程語言的種類,æ ¹æ“šIEC61131-3定義。這包括:
  梯形é‚輯(LL,Ladderlogic)
  功能框圖(FBD,FunctionBlock Diagram)
ã€€ã€€é †åºæµç¨‹åœ–(SFC,SequentialFlow Chart)
ã€€ã€€çµæ§‹åŒ–文本(ST,StructuredText)
  指令列表(IL,InstructionList)
  其ä¸Ladder logic語言應用很廣,他å¯ä»¥å¿«é€Ÿç†æ¸…PLCçš„é‚輯è¦å‰‡ã€‚Ladder logic語言的排列方å¼é¡žä¼¼äºŽæ¢¯å
  舉例:如下圖所示的一個梯形圖。這個是 Modicon PLC 程åºç”¨äºŽå–®å€‹æŒ‰éˆ•控制éŽç¨‹ã€‚
  
  圖 2 :在Schneider Modicon PLC上實ç¾çš„æ¢¯å½¢é‚輯程åº
  創建一個新的梯形圖時,首先å¯ä»¥çœ‹åˆ°å…©æ¢è±Žç·š(å¦‚åœ–ä¸æ©™è‰²ç·š),我們就是在這兩æ¢è±Žç·šä¹‹é–“進行梯形圖的編寫程åºã€‚
  什么是Rung?
  如圖2梯形圖ä¸ï¼Œæ¯ä¸€æ¢æ°´å¹³ç·šè¢«ç¨±ç‚ºä¸€å€‹Rung。Ladder logicç¬¦è™Ÿå°±æ”¾ç½®åœ¨é€™äº›æ°´å¹³ç·šä¸Šã€‚æ¯æ¢Rung代表一æ¢è¦å‰‡ï¼Œæˆ‘們å¯ä»¥å¾žå·¦åˆ°å³ã€å¾žä¸Šåˆ°ä¸‹é–±è®€é€™äº›é‚輯和è¦å‰‡ã€‚
  Ladder logic語言基本語法
  在å°PLC進行編程之å‰ï¼Œè«‹å…ˆæŸ¥çœ‹ä»¥ä¸‹ç·¨ç¨‹çš„åŸºæœ¬ç¬¦è™Ÿã€‚ç¬¦è™Ÿé‚„é™„å¸¶åœ°å€æˆ–值,å¯ç”¨äºŽæŒ‡å®šè¼¸å…¥ã€è¼¸å‡ºã€å®šæ™‚器ã€è¨ˆæ•¸å™¨å’Œå…¶ä»–特定指令。
  Ladder logic符號
  Rung 輸入
  
  Rung輸出
  
  為了更好ç†è§£ï¼Œä½ å¯ä»¥æƒ³è±¡â€œRung è¼¸å…¥â€æ˜¯ä¸€å€‹æŒ‰éˆ•/開關,而“Rungè¼¸å‡ºâ€æ˜¯ä¸€å€‹ç‡ˆæ³¡/è² è¼‰ã€‚å…§éƒ¨çš„æ–œç·šè¡¨ç¤ºå¸¸é–‹/常閉狀態。
  é‚輯 “與â€(AND)
  
  上述實ç¾äº†åŠŸèƒ½ï¼šé›»æ©Ÿé–‹é–€= “開關 1 觸發“與 â€é–‹é—œ 2觸發“,å³ç•¶é–‹é—œ 1與開關 2åŒæ™‚觸發的時候,電機開門。
  å¯ä»¥æƒ³è±¡æˆï¼Œå…©å€‹å®‰ä¿äººå“¡ï¼Œå„æ‹¿ä¸€æŠŠéŠ€è¡Œé‡‘åº«çš„é‘°åŒ™ã€‚åªæœ‰å…©å€‹äººåŒæ™‚轉動鑰匙時,金庫門的電機é‹ä½œï¼ŒæŠŠé–€æ‰“開。
  é‚輯“與éžâ€(AND with NOT)
  
  上述實ç¾äº†åŠŸèƒ½ï¼šé›»æ©Ÿé–‹é–€= “開關觸發â€èˆ‡éžâ€œéšœç¤™ç‰©è§¸ç™¼â€ï¼Œå³ç•¶é–‹é—œè§¸ç™¼ï¼Œä½†æ˜¯éšœç¤™ç‰©æ²’有觸發的時候,電機開門。
  å¯ä»¥æƒ³è±¡æˆï¼Œå…©å€‹å®‰ä¿äººå“¡ï¼Œä¸€å€‹æœ‰éŠ€è¡Œé‡‘åº«çš„é‘°åŒ™ï¼Œä¸€å€‹å·¡é‚æ˜¯å¦æœ‰å£žäººã€‚åªæœ‰ç•¶æ™‚轉動鑰匙并且沒有壞人的時候,金庫門的電機é‹ä½œï¼ŒæŠŠé–€æ‰“開。當然,障礙物也å¯ä»¥æ˜¯æŸå€‹åœæ¢æŒ‰éˆ•沒有被按下。
  é‚輯“或â€(OR)
  
  上述實ç¾äº†åŠŸèƒ½ï¼šé›»æ©Ÿé–‹é–€= “開關1è§¸ç™¼â€æˆ–“開關2觸發â€ï¼Œå³ç•¶é–‹é—œ1和開關2åªè¦æœ‰ä¸€å€‹è§¸ç™¼çš„æ™‚候,電機開門。
  å¯ä»¥æƒ³è±¡æˆï¼Œå…©å€‹å®‰ä¿äººå“¡ï¼Œå…©å€‹äººéƒ½æœ‰éŠ€è¡Œé‡‘åº«çš„é‘°åŒ™ã€‚ä»»ä½•ä¸€å€‹äººè½‰å‹•é‘°åŒ™ï¼Œé‡‘åº«é–€çš„é›»æ©Ÿé‹ä½œï¼ŒæŠŠé–€æ‰“開。
  組åˆé‚輯
  
  上述實ç¾äº†åŠŸèƒ½ï¼šé›»æ©Ÿé–‹é–€= (“開關1è§¸ç™¼â€æˆ–“開關2觸發â€)與éžâ€œéšœç¤™ç‰©è§¸ç™¼â€ï¼Œå³ç•¶é–‹é—œ1和開關2åªè¦æœ‰ä¸€å€‹è§¸ç™¼çš„æ™‚候,并且障礙物沒有觸發的時候,電機開門。
  å¯ä»¥æƒ³è±¡æˆï¼Œä¸‰å€‹å®‰ä¿äººå“¡ï¼Œå…©å€‹äººæœ‰éŠ€è¡Œé‡‘åº«çš„é‘°åŒ™ï¼Œä¸€å€‹äººå·¡é‚æ˜¯å¦æœ‰å£žäººã€‚任何一個人轉動鑰匙并且沒有壞人的時候,金庫門的電機é‹ä½œï¼ŒæŠŠé–€æ‰“開。
  舉個實際應用:空調系統
  
  圖3:空調系統
  我們å¯ä»¥çœ‹åˆ°æœ‰å…©æ¢è¦å‰‡ï¼š
  Rung1:實ç¾åŠŸèƒ½ï¼šç©ºèª¿æ‰“é–‹ = “開關觸發†與 (“溫度傳感器觸發†或“濕度傳感器觸發“),å³ç•¶é–‹é—œè§¸ç™¼å¹¶ä¸”溫濕度傳感器åªè¦æœ‰ä¸€å€‹è§¸ç™¼çš„æ™‚候,空調打開。
  Rung2: 實ç¾åŠŸèƒ½ï¼šåˆ¶å†·æ‰“é–‹=“空調觸發â€èˆ‡éžâ€œåˆ¶ç†±è§¸ç™¼â€ï¼Œå³ç©ºèª¿æ‰“開并且沒有按下制熱按鈕的時候,執行制冷
  注æ„:在第二æ¢è¦å‰‡é‡Œï¼Œç©ºèª¿å¾žè¦å‰‡ä¸€é‡Œçš„執行器變æˆäº†è¦å‰‡äºŒé‡Œçš„一個檢查器。è¦å‰‡äºŒé‡Œçš„“制冷â€ï¼Œå¦‚果繼續寫下一æ¢è¦å‰‡çš„æ™‚候,也å¯ä»¥è®Šæˆä¸€å€‹æª¢æŸ¥å™¨ï¼Œé¥‹é€åˆ°å¦ä¸€å€‹è¼¸å‡ºè¨å‚™æ¯”如“壓縮機â€ã€‚這種系統å…許將éžå¸¸å¾©é›œçš„é‚輯è¨è¨ˆåˆ†è§£å’Œè©•估。
  PLC具有許多類型的特殊塊。它們包括定時器ã€ç®—è¡“é‹ç®—符和比較器ã€è¡¨æŸ¥æ‰¾ã€æ–‡æœ¬è™•ç†ã€PID控制和濾波ç‰åŠŸèƒ½ã€‚
  更強大的PLCå¯ä»¥åœ¨ä¸€çµ„內部å˜å„²ä½ç½®ä¸Šæ“作,并在一定地å€èŒƒåœå…§åŸ·è¡Œæ“作,例如模擬物ç†é †åºé¼“控制器或有é™ç‹€æ…‹æ©Ÿã€‚在æŸäº›æƒ…æ³ä¸‹ï¼Œç”¨æˆ¶å¯ä»¥å®šç¾©è‡ªå·±çš„特殊塊,這實際上是åç¨‹åºæˆ–å®ã€‚è±å¯Œçš„特殊塊庫以åŠé«˜é€ŸåŸ·è¡Œä½¿å¾—PLCèƒ½å¤ å¯¦ç¾éžå¸¸å¾©é›œçš„自動化系統。
  用戶定義功能塊(UDFB)
  用戶定義功能塊(UDFB)之于å¯ç·¨ç¨‹é‚輯控制器(PLC)å°±åƒåŠŸèƒ½ä¹‹äºŽå¾®æŽ§åˆ¶å™¨ä¸€æ¨£ã€‚å…©è€…éƒ½æ˜¯ç”¨äºŽç°¡åŒ–ä»£ç¢¼çš„çµæ§‹ï¼Œä½¿å…¶æ›´å®¹æ˜“編寫,故障排除和ç¶è·ã€‚它們也是å…許代碼在將來被é‡ç”¨çš„åŸºæœ¬çµæ§‹ã€‚
  UDFB實例:
  我們在Arduino Opta ä¸ä½¿ç”¨çš„ç°¡å–®UDFBçš„æ§‹é€ ã€‚è©²UDFB采用Arduino PLC集æˆé–‹ç™¼ç’°å¢ƒ (IDE) 1.0.3.0版本開發。
  
  圖 4 :UDFB實例
  如上圖,我們將構建如圖1ä¸çªå‡ºé¡¯ç¤ºçš„UDFB。這個塊被用作狀態機的一部分。它的作用是充當看門人。如果機器的uiState狀態變é‡ç‰äºŽ1,并且啟用了該塊,則執行該行的其余部分。從C編程的角度來看,這就åƒä¸€å€‹ä»¥uiState為索引的開關語å¥ã€‚請注æ„,å‰ç¶´ui是匈牙利語的無符號整數表示法。
ã€€ã€€é€™ç¨®ç‰¹æ®Šçš„æ§‹é€ å°Žè‡´äº†ä¸€å€‹ç›¸å°å¹²å‡ˆçš„æ¢¯å½¢é‚輯。Rung 3的英文æè¿°æ˜¯é€™æ¨£çš„:
  如果UDFBFBuiEqual被啟用并且機器狀態(uiState)繼續
  å¦å¤–,如果主開關是打開的
ã€€ã€€åŒæ¨£ï¼Œå¦‚æžœçž¬æ™‚é¸æ“‡é–‹é—œè™•于å‰é€²ä½ç½®ï¼Œå‰‡åˆ‡æ›åˆ°ç‹€æ…‹2
  å¦å‰‡ï¼Œå¦‚æžœçž¬é–“é¸æ“‡é–‹é—œè™•于åå‘ä½ç½®ï¼Œå‰‡åˆ‡æ›åˆ°ç‹€æ…‹4
  總çµ
  作為工æ¥è‡ªå‹•化ä¸å¯æˆ–缺的組æˆéƒ¨åˆ†ï¼ŒPLC在ç¾ä»£å·¥æ¥ä¸çš„æ‡‰ç”¨è¶Šä¾†è¶Šå»£æ³›ã€‚梯形é‚輯已經發展æˆç‚ºä¸€ç¨®ç·¨ç¨‹èªžè¨€ï¼Œäº†è§£Ladder logic語言,å¯ä»¥å¹«åŠ©ä½ æ›´å¿«ç†è§£PLCçš„é‚輯。
  å°ç·¨çš„話
  æ£å¦‚本文所介紹的,Ladder Logicèªžè¨€ä»¥å…¶ç›´è§€ã€æ˜“懂ã€éˆæ´»çš„特點在PLC編程ä¸å 據é‡è¦åœ°ä½ã€‚通éŽåœ–形化的表示方法,它簡化了復雜的控制é‚è¼¯ï¼Œä½¿å¾—å·¥ç¨‹æŠ€è¡“äººå“¡èƒ½å¤ æ›´å¿«é€Ÿåœ°ç†è§£å’Œç·¨å¯«PLC程åºã€‚å› æ¤ï¼ŒLadderLogic語言æˆç‚ºè¨±å¤šå·¥ç¨‹å¸«çš„首é¸ç·¨ç¨‹æ–¹å¼ã€‚您å°PLC編程語言的特性åŠå…¶æ‡‰ç”¨æœ‰å“ªäº›ç¶“驗或疑å•?
上一篇:零點C系列分布å¼IO在食å“çŒè£...
下一篇:機械壓力控制器使用與調整方法
ä¸åœ‹å‚³å‹•網版權與å…è²¬è²æ˜Žï¼šå‡¡æœ¬ç¶²æ³¨æ˜Ž[來æºï¼šä¸åœ‹å‚³å‹•ç¶²]的所有文å—ã€åœ–片ã€éŸ³è¦–å’Œè¦–é »æ–‡ä»¶ï¼Œç‰ˆæ¬Šå‡ç‚ºä¸åœ‹å‚³å‹•ç¶²(www.hysjfh.com)ç¨å®¶æ‰€æœ‰ã€‚如需轉載請與0755-82949061è¯ç³»ã€‚任何媒體ã€ç¶²ç«™æˆ–å€‹äººè½‰è¼‰ä½¿ç”¨æ™‚é ˆæ³¨æ˜Žä¾†æºâ€œä¸åœ‹å‚³å‹•ç¶²â€ï¼Œé•å者本網將追究其法律責任。
本網轉載并注明其他來æºçš„稿件,å‡ä¾†è‡ªäº’è¯ç¶²æˆ–æ¥å…§æŠ•稿人士,版權屬于原版權人。轉載請ä¿ç•™ç¨¿ä»¶ä¾†æºåŠä½œè€…ï¼Œç¦æ¢æ“…自篡改,é•è€…è‡ªè² ç‰ˆæ¬Šæ³•å¾‹è²¬ä»»ã€‚
相關資訊