SIEMENS湖北省西門子中國授權代理商-西門子變頻器-西門子技術服務-西門子PLC模塊
| 更新時間 2024-12-27 09:10:00 價格 請來電詢價 變頻器 西門子代理商 觸摸屏 西門子一級代理 伺服電機 西門子一級總代理 聯系電話 18126392341 聯系手機 15267534595 聯系人 梁濤 立即詢價 |
PLC因為穩定可靠、結構緊湊、簡單易學、功能強大和使用方便已經成為應用面泛的通用工業控制裝置,成為現代工業自動化控制的主要支柱之一[1]。而單片機因為成本低廉,使用靈活,功能多樣,在自動化領域應用及其廣泛,往往在一個控制系統中可能會出現單片機和PLC共存的情況,如果使二者互相聯系,互相通信,具有非常重要的現實意義。
2 硬件以及通訊原理分析
西門子S7-200系列PLC擁有RS-485串行口,所以要使MCS51單片機與S7-PLC進行通訊,可以采用幾種通訊方式。其中之一就是可以通過MCS-51的串行口與MAX485芯片相接,然后與S7-200 PLC的RS-485口進行通訊,其硬件連接如圖1所示。
S7-200 PLC是串行通訊方式Zui為豐富的小型PLC,支持多種通信協議,如點對點接口協議(PPI協議)、多點接口協議(MPI協議)和PROFIBUS協議以及自由通信協議等。其中自由通信協議又叫用戶定義協議,利用自由端口模式,可以實現用戶定義的通信協議,連接多種智能設備,使用起來非常方便,在第三方工程接入中取得了巨大的成功。
在自由端口模式下,PLC的串行通信接口由用戶來控制,通過梯形圖程序以及和單片機的匯編語言進行配合,來使用完成中斷、字符接收中斷、發送完成中斷等,通信協議由用戶控制。這時單片機處于主機狀態,由單片機主動發送握手信號,PLC接到信號后被動反饋信息即可。
圖1 MCS-51單片機與S7-200的硬件接線圖
3 通信系統設計
3.1 通信協議設計
定義根據經驗和有關參考資料,定義協議結構和參數。
(1)通信波特率為9.6kbps,無校驗,8個數據位,1個可編程位,1位起始位,1位停止位。
(2)定義通信協議的數據流結構的格式為起始碼、命令碼、元件首址、字節數、數據塊、BCC校驗碼和結束碼。
● 起始碼:表示單片機與PLC開始發送數據,是數據流第一個字符,告訴PLC開始進行通信了,可以用00H表示
● 命令碼:表示單片機對PLC的各種操作:
40H:讀取目標元件 I、Q、V、M、SM、L、T、C等的數據或狀態;
41H:修改目標元件 I、Q、V、M、SM、L、T、C等的數據或狀態;
42H:強制目標單元為ON;
43H:強制目標單元為OFF;
● 元件首址:表示PLC內部的元件類型以及寄存器的地址(但不能表示一個位地址)。前兩個字節表示寄存器類型,后兩個字節表示寄存器號。00 00(H):I寄存器區 01 00(H):Q寄存器區。02 00(H):M寄存器區 08 00(H):V寄存器區;
● 字節數:從元件首地址起,讀取或寫入PLC元件的數據個數數據塊:準備讀取或者寫入PLC的數據或狀態;
● BCC校驗碼:在傳輸過程中,指令有可能受到任何的干擾而使原來的數據信號發生扭曲,此時的指令當然是錯誤的,為了偵測指令在傳輸過程中發生的錯誤,接收方必須對指令作進一步的確認工作,以防止錯誤的指令被執行,的方法就是使用校驗碼。BCC校驗碼的方法就是將要傳送的字符串的ASCII碼以字節為單位作異或和,并將此異或和作為指令的一部分傳送出去;同樣地,接收方在接到指令后,以相同的方式對接收到的字符串作異或和,并與傳送方所送過來的值作對比,若其值相等,則代表接收到的指令是正確的,反之則是錯誤的
● 結束碼:結束字符標志著指令的結束,在本例中被定義為FFH,不同的PLC從站可以定義不同的結束字符以接收針對該PLC的指令。
3.2 通信程序的實現
(1)單片機端程序的實現。單片機在主程序中初始化,采用串行口工作方式3[2],波特率為9.6kbps,采用單片機作為主機,向PLC進行呼叫,定期讀取數據或者寫入數據,其程序流程圖參見圖2。
圖2 單片機端通訊程序流程圖
(2)PLC端程序流程圖的實現。PLC端作為從機,采用梯形圖或者STL編程,主要是先設置通訊協議,然后按照協議把采集到的數據進行處理,再發送給主機單片機,其具體的程序流程圖如圖3所示。
圖3 PLC端通訊程序流程圖
4 結束語
本文利用單片機與PLC的串行通信方法,成功的應用于多個項目中,實際表明該方法簡單可靠,成本低,而且易于擴充經濟實用的其它功能,如A/D、D/A等功能,取得了較好的社會效益和經濟效益
可編程控制器CPU所需的工作電源一般都是5V直流電源,一般的編程器接口和通信模塊還需要5V和24V直流電源。這些電源都由可編程控制器plc本身的電源模塊供給,所以在實際應用中要注意電源模塊的選擇。在選擇電源模塊時一般應考慮以下幾點:
1.電源模塊的輸入電壓。可編程控制器電源模塊可以包括多種輸入電壓,有220V交流、110V交流和24V直流。注意,在實際應用中要根據具體情況選擇,確定了輸入電壓后,也就確定了系統供電電源的輸出電壓。
2.電源模塊的輸出功率。在選擇電源模塊時,其額定輸出功率必須大于CPU模塊、所有I/O模塊、各種智能模塊的總消耗功率之和,并且要留有30%左右的余量。當同一電源模塊既要為主機單元,又要為擴展單元供電時,從主機單元到Zui遠一個擴展單元的線路壓降必須小于0.25V。
3.擴展單元中的電源模塊。有的系統由于擴展單元中安裝有智能模塊及一些特殊模塊,就要求為擴展單元安裝相應的電源模塊。這時相應的電源模塊輸出功率可按各自的供電范圍計算。
4.電源模塊接線。選定了電源模塊后,還要確定電源模塊的接線端子和連接方式,以便正確進行系統供電電路的設計。一般的電源模塊其輸入電壓是通過接線端子與供電電源相連的,而輸出電壓則通過總線插座與可編程控制器CPU的總線相連。
典型的動力部分、PLC供電及I/O電源應分別配電
聯系方式
- 電 話:18126392341
- 聯系人:梁濤
- 手 機:15267534595
- 微 信:15267534595