本發明涉及直流電機驅動控制系統,尤其是涉及基于CPLD的多路直流電機驅動控制系統。
背景技術:
目前,傳統的直流電機驅動控制,多采用單片機與分立元件嵌入式硬件組合及嵌入式程序進行傳感器檢測、電機運轉、電機運轉限位控制。單片機與分立元件組合實現的直流電機驅動控制,由于限位傳感器信號需要經過單片機識別、響應等程序處理,因此時效性差;并且分立元件較多,可靠性低;外圍電路復雜也使得電路板面積大,可擴展性低。CPLD(英文Complex Programmable Logic Device的縮寫,復雜可編程邏輯控制器件)控制單元具有編程靈活、集成度高、設計開發周期短、適用范圍寬、開發工具先進、設計制造成本低、對設計者的硬件經驗要求低、標準產品無需測試、保密性強、價格低廉等特點,如何利用CPLD對多路直流電機進行驅動控制,是本領域科研人員研究的課題。
技術實現要素:
本發明目的在于提供一種基于CPLD的多路直流電機驅動控制系統。
為實現上述目的,本發明采取下述技術方案:
本發明所述基于CPLD的多路直流電機驅動控制系統,包括多個被控的直流電機,每個所述的直流電機均設置有用于限制正向旋轉和/或反向旋轉的第一限位傳感器和第二限位傳感器;每個直流電機的正向旋轉和/或反向旋轉分別由一路驅動電路控制,每個直流電機的所述驅動電路結構均相同,由直流電機驅動器、光電隔離裝置、CPLD控制單元和單片機組成;所述CPLD控制單元的通信接口與所述單片機通信連接,單片機與上位控制計算機通信連接;所述直流電機驅動器輸入控制端與所述光電隔離裝置輸出控制端連接,光電隔離裝置輸入控制端與CPLD控制單元輸出端連接;所述第一限位傳感器、第二限位傳感器的信號輸出端分別通過第一光電耦合器、第二光電耦合器與CPLD控制單元的信號輸入端連接;CPLD控制單元由傳感器信號處理單元和電機信號處理單元組成,所述傳感器信號處理單元的信號輸出端與所述電機信號處理單元的信號輸入端連接。
所述傳感器信號處理單元由與第一與門A1、第二與門A2、第一緩沖器B1、第二緩沖器B2、第一觸發器D1、第二觸發器D2、或非門NOR1組成;所述第一、第二緩沖器B1、B2的輸入端分別與對應的所述第一、第二光電耦合器輸出端連接,第一、第二緩沖器B1、B2的輸出端分別與對應的所述第一、第二觸發器D1、D2的時鐘脈沖端CP連接,所述第一、第二與門A1、A2的兩個輸入端分別與所述單片機的電機選擇信號輸出端DC1和復位信號輸出端RST連接,第一、第二與門A1、A2的輸出端分別與對應的第一、第二觸發器D1、D2的清零端CLR連接,第一、第二觸發器D1、D2的數據端D分別接高電平,第一、第二觸發器D1、D2的次態輸出端Q分別與所述或非門NOR1對應的的一個輸入端連接;
所述電機信號處理單元由第三與門A3、第四與門A4、第三觸發器D3、第四觸發器D4、第一非門N1、第二非門N2、第五與門A5、第六與門A6組成;所述第三、第四與門A3、A4的兩個輸入端分別與所述單片機的復位信號輸出端RST和所述或非門NOR1的輸出端連接,第三、第四與門A3、A4的輸出端分別與對應的第三、第四觸發器D3、D4的清零端CLR連接,第三觸發器D3的數據端D和時鐘脈沖端CP與所述單片機的電機方向信號輸出端DC1-D1和電機選擇信號輸出端DC1連接,第四觸發器D4的數據端D和時鐘脈沖端CP分別與所述單片機的電機方向信號輸出端DC1-D2和電機選擇信號輸出端DC2連接,第三、第四觸發器D3、D4的次態輸出端Q分別與對應的所述第一非門N1、第二非門N2輸入端連接,第一非門N1、第二非門N2的輸出端分別與對應的所述第五與門A5、第六與門A6的一個輸入端連接,第五與門A5、第六與門A6的另一個輸入端與單片機的復位信號輸出端RST連接,第五、第六與門A5、A6的輸出端與所述光電隔離裝置的輸入端連接。
為確保驅動電壓無損耗提供給負載,每個被控的所述直流電機電源輸入端均接有西門子3RT系列的浪涌電流抑制器。
所述被控的直流電機個數為16。
本發明優點在于每個所述被控直流電機的運動控制完全由所述CPLD控制單元實現,大大方便了多路直流電機驅動控制系統的擴展,根據應用負載需要靈活配置第一限位傳感器和第二限位傳感器的數量,時效性強;相對于常規的嵌入式硬件及程序控制,本傳感器信號處理單元及電機信號處理單元不涉及嵌入式編程,可靠性高。同時,本CPLD控制單元具有編程靈活、集成度高、設計開發周期短、適用范圍寬、開發工具先進、設計制造成本低、對設計者的硬件經驗要求低、標準產品無需測試、保密性強、價格低廉等特點。
附圖說明
圖1是本發明所述控制系統的結構框圖。
圖2是本發明所述CPLD控制單元的邏輯電路原理圖。
具體實施方式
如圖1、2所示,本發明所述基于CPLD的多路直流電機驅動控制系統,包括16個被控的直流電機M,每個所述的直流電機M均設置有用于限制正向旋轉和/或反向旋轉的第一限位傳感器和第二限位傳感器;每個直流電機的正向旋轉和/或反向旋轉分別由一路驅動電路控制,每個直流電機的所述驅動電路結構均相同,由直流電機驅動器(全橋直流電機驅動IC TB6643KQ)、光電隔離裝置、CPLD控制單元1和單片機(STM32F10系列)組成;所述CPLD控制單元的通信接口與所述單片機通信連接,單片機與上位控制計算機2通信連接;所述直流電機驅動器輸入控制端與所述光電隔離裝置輸出控制端連接,光電隔離裝置輸入控制端與CPLD控制單元1輸出端連接;所述第一限位傳感器、第二限位傳感器的信號輸出端分別通過第一光電耦合器、第二光電耦合器與CPLD控制單元1的信號輸入端連接;CPLD控制單元1由傳感器信號處理單元3和電機信號處理單元4組成,所述傳感器信號處理單元3的信號輸出端與所述電機信號處理單元4的信號輸入端連接。
所述傳感器信號處理單元3由與第一與門A1、第二與門A2、第一緩沖器B1、第二緩沖器B2、第一觸發器D1、第二觸發器D2、或非門NOR1組成;所述第一、第二緩沖器B1、B2的輸入端分別與對應的所述第一、第二光電耦合器輸出端連接,第一、第二緩沖器B1、B2的輸出端分別與對應的所述第一、第二觸發器D1、D2的時鐘脈沖端CP連接,所述第一、第二與門A1、A2的兩個輸入端分別與所述單片機的電機選擇信號輸出端DC1和復位信號輸出端RST連接,第一、第二與門A1、A2的輸出端分別與對應的第一、第二觸發器D1、D2的清零端CLR連接,第一、第二觸發器D1、D2的數據端D分別接高電平,第一、第二觸發器D1、D2的次態輸出端Q分別與所述或非門NOR1對應的的一個輸入端連接;
所述電機信號處理單元4由第三與門A3、第四與門A4、第三觸發器D3、第四觸發器D4、第一非門N1、第二非門N2、第五與門A5、第六與門A6組成;所述第三、第四與門A3、A4的兩個輸入端分別與所述單片機的復位信號輸出端RST和所述或非門NOR1的輸出端連接,第三、第四與門A3、A4的輸出端分別與對應的第三、第四觸發器D3、D4的清零端CLR連接,第三觸發器D3的數據端D和時鐘脈沖端CP與所述單片機的電機方向信號輸出端DC1-D1和電機選擇信號輸出端DC1連接,第四觸發器D4的數據端D和時鐘脈沖端CP分別與所述單片機的電機方向信號輸出端DC1-D2和電機選擇信號輸出端DC2連接,第三、第四觸發器D3、D4的次態輸出端Q分別與對應的所述第一非門N1、第二非門N2輸入端連接,第一非門N1、第二非門N2的輸出端分別與對應的所述第五與門A5、第六與門A6的一個輸入端連接,第五與門A5、第六與門A6的另一個輸入端與單片機的復位信號輸出端RST連接,第五、第六與門A5、A6的輸出端與所述光電隔離裝置的輸入端連接。
為確保驅動電壓無損耗提供給負載,16個被控的所述直流電機M電源輸入端均接有西門子3RT系列的浪涌電流抑制器。
本發明工作原理,現以一路驅動電路控制一個直流電機的正向旋轉和/或反向旋轉為例作一簡述:
如圖1所示,單片機接收上位控制計算機發出的指令或讀取如開關、觸摸屏關于負載動作指令,進行通信協議解析后輸出預動作電機編碼、預動作電機控制信號及讀取第一、第二限位傳感器及直流電機M狀態指令,由CPLD控制單元1進行直流電機M運動控制、第一、第二限位傳感器觸發信號處理、讀取第一、第二限位傳感器及直流電機M狀態數據
如圖2所示,當第一限位傳感器和第二限位傳感器未動作時,第一緩沖器B1、第二緩沖器B2的輸入端DC1-S1、DC1-S2均未觸發信號,此時或非門NOR1輸出 “1”(高電平),一旦電機選擇信號DC1有效,產生邊沿觸發,第三、第四觸發器D3、D4翻轉輸出電機動作方向信號,第五與門A5的輸出端DC1-OUT1/第六與門A6的輸出端DC1-OUT2=單片機的電機方向信號輸出端DC1-D1/單片機的電機方向信號輸出端DC1-D2=1/0或0/1或0/0,對應的被控直流電機M正向旋轉、反向旋轉或停止動作;而被控直流電機M對應的第一限位傳感器和第二限位傳感器任一個動作時,觸發產生上升沿,第一觸發器D1或第二觸發器D2翻轉,經或非門NOR1輸出清零信號至第三、第四觸發器D3、D4的清零端CLR,第五與門A5、第六與門A6的輸出端DC1-OUT1、DC1-OUT2均歸零,被控直流電機M停止動作,達到限位傳感器觸發對直流電機M限位的目的。