一種基于sopc技術的plc協同控制裝置的制造方法
【技術領域】
[0001 ] 本發明涉及一種工控可編程邏輯嵌入式軟核PLC裝置,尤其涉及一種基于SOPC技術的協同PLC實現工業自動化控制的裝置。
【背景技術】
[0002]由于傳統硬件PLC技術對外封閉,各個生產廠商的PLC硬件平臺各不相同,支持的PLC語言也不相同,而且相互之間通信的協議和總線也完全不同。因此,隨著計算機技術的發展,人們已經逐漸認識到硬件PLC的通用性、兼容性和拓展性不好正在制約著PLC的快速發展。同時,隨著卷煙工業新一輪的技改,大量新型煙草制絲設備從德國HAUN1、意大利Garbu1等國外煙機設備公司引進,設備廠家對于關鍵設備的PLC程序采取了技術封鎖甚至加密等手段。因此,對于煙機功能改進,需要尋求一種新的解決方案來突破傳統PLC內部程序封鎖以及外部通用性、兼容性差等問題。
[0003]過去,邏輯控制器系統的開發多基于ASIC設計的硬件平臺,而近年來出現的可編程片上系統(SOPC)解決方案得到了業界廣泛的重視并迅速發展。SOPC不僅僅使PCB設計更為簡單,而且設計更靈活,開發更高效。它的特點在于其可編程性,即利用現場可編程門陣列(FPGA)器件的可編程性進行SOC (system on chip)設計。SOPC Builder為每一個元件提供一個向導,利用該向導很容易定制元件功能,且通過該向導能夠非常方便地在一個設計中加入N1s II軟核處理器、外設接口等。為了將微處理器核、外圍設備、存儲器和其它IP核相互連接起來,SOPC Builder能夠自動生成片上總線和總線仲裁器等所需的邏輯。SOPC Builder在一個工具中實現了嵌入式系統各個方面的開發,包括軟件的設計和驗證,因此運用SOPC技術可以在FPGA上便捷、快速定制各種復雜邏輯控制,并將傳統PLC中邏輯移植或轉移到FPGA器件上實現。
【發明內容】
[0004]本發明的目的在于提供一種基于SOPC技術的PLC協同控制裝置。將基于SOPC技術的FPGA作為虛擬PLC來協助傳統硬件PLC完成自動化控制,解決傳統PLC單一控制的缺點,通過SOPC定制各種功能與傳統PLC實時通訊達到雙核協同時控制同一設備的目的。
[0005]為了實現上述的目的,本發明采用了以下的技術方案:
基于SOPC技術的PLC協同控制裝置,該裝置包括硬件系統和軟件系統兩部分;所述的硬件系統包括上位機和下位機,所述的上位機運行在PC機上,完成編寫PLC程序以及編譯成目標代碼以及代碼傳輸工作;所述的下位機使用Altera FPGA(EP2c35F672c6)N1s II嵌入式軟處理器為硬件平臺,與上位機之間通過RS232協議進行通信;所述的下位機由N1sII軟核處理器模塊、存儲器模塊和外圍模塊組成,其中N1s II軟核處理器模塊由CPU模塊、TIMERO模塊、TIMERl模塊、UART模塊和JTAG模塊組成,對FPGA配置時,通過SOPCBuilder系統綜合軟件設定N1s II軟核參數,并設置HMERO模塊、TIMERl模塊、UART模塊和JTAG模塊相關參數,自動分配各模塊基地址和指定N1s II處理器的復位地址與異常中斷地址,生成相應的N1s II系統,UART模塊通過使用RS232協議可實現上位機與FPGA的傳輸以及PLC梯圖文件的串口通信,JTAG模塊通過轉換電路將RS232協議轉換成RS485協議,再通過CP341卡實現與PLC通訊;
所述的軟件系統包括嵌入式uC/OS-1I實時操作系統、上位機軟件、下位機軟件和虛擬軟核PLC ;
所述的嵌入式uC/OS-1I實時操作系統在硬件系統創建完成之后,開展一個基于N1sII處理器的MicroC/OS-1I軟件設計過程,并使用IDE對所有的RTOS模塊進行配置;所述的上位機軟件在PC機上執行,主要負責編譯PLC梯形圖并傳輸梯形圖文件;所述的下位機軟件通過設計N1s II IDE完成,下載硬件設計中Quartus II最終生成配置文件到FPGA中,而后可以在N1s II IDE下建立工程,編輯調試下位機程序,在新建的工程中,N1s II IDE會根據SOPC Builder對應系統配置自動生成一個定制的硬件抽象層(hardware abstract1n layer,HAL)系統庫,為程序和底層硬件的通信提供接口驅動程序,同時還提供一個可移植的uC/OS-1I的實時操作系統環境;
所述的虛擬軟核PLC完成PLC程序代碼解釋、執行機制的核心部分,負責接受上位機發送的類PLC邏輯程序命令,控制任務解釋器的執行,由于虛擬軟核PLC運行在uC/OS-1I占先式內核實時系統中,任務解釋器在PLC虛擬機中循環取得代碼指令并執行相應的操作,實現PLC程序對外部設備的控制功能。
[0006]作為優選,所述的CPU模塊選用基于RISC技術的32位嵌入式處理器N1s II模塊。
[0007]作為優選,所述的存儲器模塊選用掉電數據不丟失的FLASH存儲器來存儲應用程序及要保存的數據參數;選用讀寫速度較高的SDRAM存儲器來給uC/OS-1I操作系統和應用程序提供運行空間并緩存中間處理數據。
[0008]作為優選,所述的外圍模塊包括一個IXD字符型液晶顯示屏、4個LED燈、兩個開關。IXD用來顯示PLC虛擬機的運行狀態,而LED與兩個開關則用來實現PLC的功能。
[0009]作為優選,所述的嵌入式uC/OS-1I實時操作系統是一種基于優先級的可搶先硬實時內核。
[0010]本發明由于選用N1s II軟核處理器模塊為核心并利用SOPC技術進行構建,具有很強的可修改性和可移植性;由于添加了 uC/OS-1I實時操作系統保證了系統運行的實時性,并且能夠根據特定的需要編寫自定義IP核,自由添加所需要的特定功能,同時方便的增加或減少1/0端口的數量,使系統更具可拓展和維護性;又由于FPGA具有較高的密度,能夠集成很大的系統,因此又增加了系統的可靠性。
【附圖說明】
[0011]圖1為本發明的結構示意圖。
[0012]圖2為本發明協同PLC控制示意圖。
[0013]圖3為本發明系統結構示意圖。
[0014]圖4為本發明硬件組成示意圖。
[0015]圖5為本發明軟件組成示意圖。
[0016]圖6為本發明虛擬軟核PLC任務調度示意圖。
[0017]圖7為本發明虛擬軟核PLC運行時序圖。
【具體實施方式】
[0018]下面結合附圖對本發明的【具體實施方式】做一個詳細的說明。
[0019]如圖1,基于SOPC技術的PLC協同控制裝置包括硬件系統I和軟件系統2兩部分;所述的硬件系統I包括上位機3和下位機4 ;所述的下位機4由N1s II軟核處理器模塊5、存儲器模塊6和外圍模塊7組成,其中N1s II軟核處理器模塊5由CPU模塊8、HMER0模塊9、TIMERl模塊10、UART模塊11、JTAG模塊12組成;所述的軟件系統2包括嵌入式uC/OS-1I實時操作系統13、上位機軟件14、下位機軟件15、虛擬軟核PLC 16。
[0020]如圖2,所述的基于SOPC技術的PLC協同控制裝置就是在不改變原有PLC程序、硬件接線前提下,通過現場總線訪問PLC內部資源,并將自身控制邏輯運算結果再次通過現場總線傳回PLC,最終實現雙核協同控制。
[0021 ] 如圖3,所述的上位機3運行在PC機上,完成編寫PLC程序以及編譯成目標代碼以及代碼傳輸等工作。
[0022]所述的下位機4使用Altera FPGA(EP2c35F672c6)N1s II嵌入式軟處理器為硬件平臺,與上位機3之間通過RS232協議進行通信。
[0023]如圖4,所述的CPU模塊8選用基于RISC技術的32位嵌入式處理器N1s II模塊5。對FPGA配置時,通過SOPC Builder系統綜合軟件設定N1s II軟核參數,在常用外圍設備及接口組件中選擇HMERO (計時器)模塊9、TIMERl (定時器)模塊10、UART模塊IUJTAG模塊12以及UART(RS-232)等模塊,并設置相關參數,自動分配各模塊基地址和指定N1s II處理器的復位地址與異常中斷地址,生成相應的N1s II系統。UART接口通過使用RS232協議可實現PC機與FPGA的傳輸以及PLC梯圖文件的串口通信等功能。JTAG 12接口通過轉換電路將RS232協議轉換成RS485協議,再通過CP341卡實現與PLC通訊。基于SOPC技術的優勢將很多資源集中在FPGA中,使系統的擴展與升級更加容易,只需在FPGA中添加相應功能的模塊即可。對于自定義外設,可以通過VHDL硬件語言編寫IP核,在SOPCBuilder中添加這個自定義組件,并通過標準Avalon總線連接。
[0024]所述的存儲器模塊6選用掉電數據不丟失的FLASH存儲器來存儲應用程序及要保存的數據參數;選用讀寫速度較高的SDRAM存儲器來給uC/OS-1I操作系統和應用程序提供運行空間并緩存中間處理數據。
[0025]所述的外圍模塊7包括一個IXD字符型液晶顯示屏、4個LED燈、兩個開關。IXD用來顯示PLC虛擬機的運行狀態,而LED與兩個開關則用來實現PLC的功能。
[0026]如圖5,所述的嵌入式uC/OS-1I實時操作系統是一種基于優