基于EASY嵌入式PLC芯片構建現(xiàn)場總線ETS系統(tǒng)
針對以上情況,我公司選用科威公司的ESAY嵌入式PLC芯片構建了ETS系統(tǒng)的核心控制模塊,通過CAN現(xiàn)場總線與我公司的現(xiàn)場總線TSI系統(tǒng)實現(xiàn)有機融合,相當完美地解決了當前ETS系統(tǒng)存在的諸多問題。
本文引用地址:http://www.ex-cimer.com/article/201612/325000.htm一、總體設計
EASY 嵌入式PLC 芯片有兩個uart串口和一個CAN接口以及32個IO引腳。該芯片的CAN接口已經(jīng)加載科威公司的CAN應用層協(xié)議,這是一個主從式的協(xié)議,通訊速率 160K。我公司的TSI系統(tǒng)使用的MVCAN-2 CAN應用層協(xié)議是一個多主結構的協(xié)議,通訊速率可以是10K、125K、250K和500K。由于協(xié)議不同,TSI系統(tǒng)并不能直接使用EASY 嵌入式PLC 芯片的CAN接口與其通訊。為解決這個問題,將ETS控制模塊設計成雙CPU結構。使用8位MCU P89V51RD2和獨立CAN控制器SJA1000擴展出另一個CAN通訊口,在該通訊口加載MVCAN-2協(xié)議,實現(xiàn)與TSI系統(tǒng)的連接。 P89V51RD2和EASY 嵌入式PLC 芯片之間通過兩片IDT7202交換數(shù)據(jù)。IDT7202是一種雙端口的FIFO(先入先出)緩沖器,內部有1024×9位FIFO RAM。
二、硬件實現(xiàn)
以下是主要硬件設計框圖:
P89V51RD2通過地址、數(shù)據(jù)和寫信號線連接到其中一片IDT7202的寫入端口,并通過地址、數(shù)據(jù)和讀信號線連接到另一片IDT7202的讀出端口;嵌入式PLC 芯片只有通用IO引腳,沒有地址、數(shù)據(jù)和讀寫信號線,只能用通用IO來模擬讀寫操作。具體做法是將嵌入式PLC 芯片的P1口當作1個8位數(shù)據(jù)端口分別與兩個IDT7202的另一組讀取和寫入端口連接,P3.0、P3.1、P3.2用作讀、寫、使能信號,P4.0、 P4.1、P4.2用作狀態(tài)判斷信號。用嵌入式PLC 芯片的P2口擴展了8個繼電器輸出,嵌入式PLC 芯片的其它接口和特性均按典型應用進行設計。將P89V51RD2的uart串口設計為rs232標準串口,該串口在設置時用于下載TSI系統(tǒng)的配置文件,運行時加載MODBUS協(xié)議用于與上位機或其它設備通信。最后完成的ETS控制器具有以下功能:八路繼電器輸出,1個CAN接口與TSI系統(tǒng)互聯(lián),另一個CAN接口可用于IO擴展和ETS控制器間互聯(lián),COM1串口用于梯形圖下載和PLC監(jiān)控,COM2用于CAN組態(tài)和PLC通訊,COM3(由 P89V51RD2擴展)用于TSI配置下載和TSI數(shù)據(jù)監(jiān)控。
三、軟件實現(xiàn)
軟件由兩部分組成。一部分是運行于P89V51RD2中的軟件,另一部分是嵌入到嵌入式PLC芯片中的軟件。
運行于P89V51RD2中的軟件使用C語言編寫。軟件被設計為兩種工作模式:設置模式和工作模式。在設置模式下,用戶使用PC通過串口將TSI系統(tǒng)的配置文件傳遞給P89V51RD2,P89V51RD2將文件存儲于內部FLASH中;在工作模式下,P89V51RD2按照配置文件解析由SJA1000接收到的TSI系統(tǒng)數(shù)據(jù),并將數(shù)據(jù)按照一定格式通過IDT7202傳輸給嵌入式PLC。同時,由嵌入式PLC通過IDT7202發(fā)來的數(shù)據(jù)經(jīng)解析后通過SJA1000發(fā)送到TSI系統(tǒng)。
評論