文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.180998
中文引用格式: 林浩,韓慶敏,宋棟,等. 基于實時工業以太網的脈沖發生器[J].電子技術應用,2018,44(10):64-67,72.
英文引用格式: Lin Hao,Han Qingmin,Song Dong,et al. Pulse generator with real-time industrial ethernet[J]. Application of Electronic Technique,2018,44(10):64-67,72.
0 引言
脈沖發生器是電力電子、工業控制、機器人等領域廣泛應用的一種儀器設備[1-3]。脈沖發生器通常采用模擬電路、微處理器等進行設計,文獻[2]基于運放、三極管等分立模擬器件設計了一種PWM隔離調光電路及LED調光驅動電源,文獻[4]提出了基于HCS12單片機增強型定時器復用I/O輸出頻率和占空比可控PWM信號的開發方案,解決了由于硬件限制導致PWM輸出通道不足的問題。文獻[5]基于嵌入式SoC設計了一種通用死區可配置的PWM信號發生器,實現了靈活的控制策略配置。采用分立模擬器件搭建的電路產生PWM信號,元器件較多,電路較為復雜,調試困難。微處理器或SoC等產生PWM信號,當信號通道較少時微處理器能滿足要求,當PWM信號多于4路時,由于處理器指令順序執行,會產生較大延遲,從而使PWM信號波形不穩[3]。因此,可采用FPGA進行PWM信號發生器的設計,FPGA指令是并行執行,信號通道的增多不會影響脈沖信號的速度和穩定性,從而實現高精度的控制[6],文獻[3]和[7]利用FPGA設計了能同時輸出多路PWM信號的設備,分別應用在不同的場合。上述脈沖信號發生器均只能獨立單機運行,不能通過總線網絡連接到現場控制系統實現靈活快速的配置,因此文獻[8]設計了一種基于CAN的脈沖信號輸出方法及裝置,通過CAN報文更新PWM輸出頻率和占空比,但是CAN總線通信速率通信較慢,難以應用在高速控制需求的場合。
隨著工業4.0和智能制造的推進和開展,網絡化、智能化、數字化的工業互聯網系統逐漸廣泛應用[9],對基礎控制設備提出了新的應用要求。傳統的單機脈沖發生器或基于總線的脈沖發生器不能滿足工業互聯網的高速通信和快速響應需求,針對該問題,本文設計了一種基于高速實時工業以太網的脈沖信號發生器,采用EtherCAT實現設備與外部控制系統的通信,從而實現高速數據交換和穩定的控制。
1 系統設計
脈沖發生器用于為工控現場側設備提供脈沖控制信號,其結構框圖如圖1所示。由于工控設備對實時性要求較高,本文選用實時以太網EtherCAT進行通信,EtherCAT是以以太網為基礎的開放架構的現場總線系統,具有實時性強、拓撲靈活、同步精度高、線纜冗余、具備功能安全協議功能等特點。脈沖發生器包括微處理器最小系統、EtherCAT通信控制器、EtherCAT通信接口、光耦合器(以下簡稱光耦)、固態功率繼電器以及現場信號接口。其中,EtherCAT通信控制器通過EtherCAT通信接口接收指令信號,并對指令信號進行解析,生成解析信號;微處理器根據解析信號配置脈沖信號的輸出模式并輸出對應模式下的脈沖信號,脈沖信號經光耦進行電氣隔離后輸出到固態功率繼電器;固態功率繼電器用于提高脈沖信號的帶負載能力,輸出的脈沖信號經現場信號接口輸出到現場側設備。
脈沖發生器采用EtherCAT總線通過EtherCAT通信控制器與主機通信,EtherCAT通信控制器用于實現EtherCAT通信的介質訪問控制功能,負責處理EtherCAT數據幀,實現EtherCAT主站與從站應用的數據交換。微處理器用于實現脈沖輸出卡的邏輯計算、協調控制等功能。
脈沖發生器的EtherCAT通信控制器與通信接口包括兩種方式:MII接口和EBUS接口。當采用MII接口時,EtherCAT通信控制器通過MII接口連接PHY芯片,并通過RJ45接口與外部進行通信。當采用EBUS接口時,EtherCAT通信控制器直接采用EBUS總線與外部通信。
固態功率繼電器可實現輸出電路的保護功能,包括過熱保護、短路保護等,并輸出診斷信號給微處理器,診斷信號經光耦進行電氣隔離后輸入微處理器,從而實現輸出電路的診斷功能,提高脈沖發生器的工作可靠性。固態功率繼電器輸出的脈沖信號經過輸出防護電路后通過現場信號接口發送至現場側設備。
2 硬件設計
2.1 CPU最小系統
基于設備自主可控的因素,脈沖信號發生器選用龍芯處理器LS1C0300A,LS1C是基于GS232處理器核,提供豐富的外設接口。采用LS1C的最小系統電路框圖如圖2所示,包括電源、調試口JTAG、串口UART、存儲器SDRAM、Nand Flash、SPI Flash、串行通信SPI接口、復位電路以及通用的GPIO接口等部分。其中SPI接口連接至EtherCAT從站控制器ET1100;GPIO連接至脈沖輸出電路和診斷電路,并控制報警電路,當出現故障時,實現報警功能。LS1C內部集成RTC功能,因此在RTC_Clk管腳連接外部時鐘源32.768 kHz晶振,并提供RTC電池,保持掉電狀況下的精確計時。SDRAM通過并行總線連接至LS1C,用于存儲處理器運行過程中的數據和加載的程序等。LS1C具備多種啟動方式,配置對應管腳選擇啟動方式,本設計中Nand_D4與Nand_D5引腳分別連接至高電平和低電平,設置LS1C從SPI Flash啟動,加載PMON引導系統。
2.2 EtherCAT通信電路
EtherCAT通信電路實現EtherCAT信號的收發功能,如圖3所示,包括ET1100、PHY、EEPROM、時鐘、網絡變壓器、RJ45接口等部分。ET1100是實現EtherCAT數據鏈路層協議的專用芯片,處理EtherCAT數據幀,并為從站控制裝置提供數據接口。ET1100通過PHY_0接收EtherCAT報文,從報文中提取發送給自己的命令數據并將其存儲在內部存儲區,并將本地數據從內部存儲區寫到相應的子報文中,實現外部命令與從站本地數據的數據交換,然后ET1100通過PHY_1將EtherCAT報文發送給下一設備。
EEPROM存儲器與EtherCAT通信控制器通過IIC總線連接。ET1100通過IIC接口與EEPROM連接通信,EEPROM存儲ET1100的設備配置信息。ET1100連接兩個MII接口,并輸出時鐘信號PHY_Clk、復位信號Reset給PHY器件。由于ET1100為降低處理和轉發延遲,對MII接口進行了優化設計,對PHY芯片的選擇提出了約束條件[10],本設計中選用MICREL公司的KSZ8051MLL。ET1100的配置引腳與MII引腳復用,為了清晰說明本電路的工作模式,在圖3中單獨展示關鍵配置引腳,分別將P_MODE[0]和P_MODE[1]引腳連接至地,選擇使用ET1100的端口0和端口1,并將P_CONF(0)和P_CONF(1)引腳連接至地,設置端口0和端口1使用MII接口,實現與PHY芯片的通信。
2.3 輸出驅動電路
脈沖輸出電路包括光耦、驅動電路和保護電路,如圖4所示。光耦實現現場側設備與內部電路的電氣隔離。驅動電路實現脈沖信號的功率放大功能,選用ST公司的小封裝高效能工業智能固態功率繼電器VNI2140J,可實現每路的輸出電流1 A,滿足工業使用要求。VNI2140J內置負載斷路保護功能,為每路輸出提供獨立的主動限流功能,防止負載失效導致的系統電源電壓降低,提供地線失效保護和診斷功能,當負載過大或出現短路時,功率繼電器輸出診斷信號,并通過光耦反饋到CPU芯片實現故障診斷功能。
3 軟件設計
脈沖信號發生器的工作流程如圖5所示,系統上電后,首先對系統進行初始化,包括UART、SPI、通用定時器、GPIO、ET1100、Flash、SDRAM等外設。然后通過ET1100接收設備的配置參數,包括工作模式、時基、周期等參數;處理器根據配置參數對設備進行設置,接收EtherCAT主站的控制數據,包括占空比、周期、延遲等,對其進行解析、計算,并輸出對應的脈沖信號。在輸出信號的同時,設備采集故障信息,如果有故障,設備進行報警處理,并將報警數據寫入寄存器和EtherCAT報文。
主站設置的參數包括工作模式、占空比、時基、延時、周期等參數。占空比說明輸出的脈沖信號的高電平持續時間占脈沖周期的比例;周期說明輸出脈沖信號的頻率;時基說明脈沖信號的最小時間分辨率;延時說明在信號使能后脈沖信號經過延遲時間后再輸出。
工作模式確定設備的脈沖信號輸出模式,包括4種工作模式:脈沖輸出模式、脈寬調制(PWM)模式、脈沖串模式以及延時模式。脈沖輸出模式為脈沖發生器輸出一個指定幅值和高電平持續時間的脈沖,其余時間均為低電平。脈寬調制模式為脈沖發生器持續輸出脈沖信號,其中脈沖幅值和周期固定,脈沖的高電平持續時間根據接收到的EtherCAT信號可自動調節。脈沖串模式為脈沖發生器輸出指定個數的脈沖,其中脈沖幅值、周期和高電平持續時間均在收到的EtherCAT信號中指定。延時模式為當脈沖發生器接收的數字量輸入信號變化時(包括上升沿或下降沿),延時指定的時間再輸出相應的脈沖信號,其中數字量輸入信號變化方式、延時時間、輸出的脈沖信號類型通過脈沖發生器接收到的EtherCAT報文數據決定。通過上述4種工作模式,脈沖發生器能夠滿足不同現場設備的工作需求。
4 網絡拓撲
脈沖信號發生器具有兩個EtherCAT通信接口,通過EtherCAT通信接口可將多個脈沖發生器組網構成一個系統,實現脈沖信號輸出通道的擴展功能,其中每個脈沖發生器為一個EtherCAT從站。組網方式包括菊花鏈形和環形,分別如圖6和圖7所示。
多個脈沖發生器組成環形網絡時,網絡中任何一個設備發生故障或者鏈路斷開時,EtherCAT主站可通過環網的兩端分別訪問其余脈沖信號發生器,從而提高系統的可靠性。
5 試驗
本文基于實時工業以太網EtherCAT設計了脈沖信號發生器,具備4種工作模式,分別對其進行試驗,結果如圖8所示,其中,圖(a)展示脈沖輸出模式試驗結果,輸出1 s高電平信號,其他時間均為低電平;圖(b)展示脈寬調制(PWM)模式試驗結果,輸出周期為1 s,占空比60%的脈沖信號;圖(c)展示脈沖串模式試驗結果,輸出3個脈沖,周期為1 s,占空比為60%;圖(d)展示延時模式試驗結果,通道2采集高電平信號,通道1采集脈沖信號,可看出,在高電平1 s后,脈沖信號發生器產生周期為1 s、占空比為50%的3個脈沖信號。試驗結果表明,所設計的脈沖信號發生器能夠根據主站的配置產生4種模式的脈沖信號。
6 結論
本文針對傳統脈沖信號發生器通信能力弱的問題,基于實時工業以太網EtherCAT和龍芯LS1C處理器設計了一種具備高速通信能力的脈沖信號發生器。設計的脈沖發生器具備4種工作模式,可應用于機器人運動控制、車輛控制、電力電子以及工業控制等多種應用場合。
參考文獻
[1] 齊悅,楊耕,竇曰軒,等.PWM控制下多電平混合逆變電路的脈寬調制及拓撲分析[J].電工技術學報,2003,18(2):13-17,26.
[2] 鐘少強.PWM隔離調光電路及LED調光驅動電源:中國,201610819177.3[P].2016-09-12.
[3] 范啟富,張文鋒,溫超.基于FPGA的多功能多路舵機控制器的實現[J].控制工程,2008,15(6):696-698.
[4] 馮道寧,劉昭度,葉陽.3種基于HCS12定時器的PWM波形發生器的設計[J].武漢理工大學學報,2012,34(2):140-143.
[5] 張躍玲,汪健,趙忠惠,等.一種嵌入式SOC系統中通用死區可配置PWM波生成電路,中國,201610842367.7[P].2016-09-22.
[6] POORANI S,URMILAPRIYA T,KUMAR K,et al.FPGA base fuzzy logic controller for electric vehicle[J].The Institution of Engineers,2005,45(5):1-14.
[7] 楊曉峰,李要乾,鄭瓊林,等.基于DSP-FPGA的模塊化多電平換流器PWM脈沖方案對比[J].北京交通大學學報,2015,39(5):61-68.
[8] 何丹丹,紀立君,張進明,等.一種信號輸出方法及裝置,中國,201710134107.9[P].2017-03-08.
[9] 工業互聯網產業聯盟.工業互聯網體系架構[R].2016.
[10] Beckhoff,EtherCAT slave controller ET1100 hardware data sheet[Z].2010.
作者信息:
林 浩,韓慶敏,宋 棟,陳 海
(中國電子信息產業集團有限公司第六研究所,北京100083)