基于Beckhoff嵌入式PC控制器的步進(jìn)電機(jī)群控系統(tǒng)設(shè)計(jì)
1.2.1 系統(tǒng)硬件配置本文引用地址:http://m.butianyuan.cn/article/162093.htm
系統(tǒng)硬件配置如下:
(1)CPU(CX1020):內(nèi)部采用時(shí)鐘頻率為1 GHz的奔騰MMX處理器,內(nèi)存可以擴(kuò)展到4 GB閃存/1 024 MB RAM,最多可實(shí)現(xiàn)255個(gè)總線端子連接到CX1020控制器上,再加上Microsoft Windows CE.NET或Microsoft嵌入式Windows XP操作系統(tǒng)便成為功能強(qiáng)大的PLC和運(yùn)動(dòng)控制系統(tǒng),通過網(wǎng)線插在CPU模塊的以太網(wǎng)接口上,可實(shí)現(xiàn)與主控制系統(tǒng)的連接。也可通過以太網(wǎng)和計(jì)算機(jī)連接實(shí)現(xiàn)程序的下載和硬件組態(tài)。
(2)電機(jī)驅(qū)動(dòng)模塊(KL2531/KL2541): KL2531最大驅(qū)動(dòng)電流為1.5 A,KL2541最大驅(qū)動(dòng)電流為5 A。兩者都通過背板總線K-Bus、EtherCAT網(wǎng)絡(luò)接口模塊與控制器相連接。可通過程序設(shè)定實(shí)現(xiàn)步進(jìn)電機(jī)的不同細(xì)分,通過K-Bus總線通訊,其配置、診斷和維護(hù)非常方便,包括檢測軟件配置錯(cuò)誤、模塊溫度報(bào)警、欠壓及電機(jī)A、B相斷路、短路等。實(shí)現(xiàn)對電機(jī)運(yùn)行過程中的故障診斷。可提高系統(tǒng)運(yùn)行的可靠性以及錯(cuò)誤排查的方便性。
(3)數(shù)字量輸入模塊(BL1002/BL1408):BL1002和BL1408分別為2路和8路的數(shù)字量輸入模塊,主要用來配合光電開關(guān)或微動(dòng)開關(guān)信號的檢測,判斷設(shè)備是否已送入指定位置。
(4)終端端子模塊(BK1009):放置在每路模塊的終端,主要起電阻匹配的作用。
(5)EtherCAT網(wǎng)絡(luò)模塊(BK1120/EK1110):符合IEC規(guī)范——IEC/PAS *07的超高速工業(yè)以太網(wǎng)模塊,主要用于控制器的擴(kuò)展連接。
(6)繼電器模塊(KL2622):主要用于控制系統(tǒng)的通斷電控制,使得系統(tǒng)在工作時(shí)加電,停止時(shí)斷電,最大限度地減小系統(tǒng)的功率損耗。
(7)電源模塊(CX1100):為CPU及其他模塊提供24 V工作電源。
1.2.2 方案設(shè)計(jì)
采用1臺CX1020 CPU帶若干個(gè)電機(jī)控制模塊的控制方案,每個(gè)CPU模塊最多可帶255個(gè)終端模塊,滿足控制區(qū)域內(nèi)所需最多控制器的需求。為了更加合理化布局,采用BK1120/EK1110模塊將控制系統(tǒng)分為3排,控制器與上層分系統(tǒng)控制臺或總控管理/束組控制臺之間通過工業(yè)以太網(wǎng)(Ethernet)相連接,控制系統(tǒng)塊與塊之間則通過超高速工業(yè)以太網(wǎng)EtherCAT進(jìn)行連接,而每一控制模塊內(nèi)部每個(gè)電機(jī)驅(qū)動(dòng)端子模塊之間則通過自身背板總線上的K-Bus總線進(jìn)行連接。由于EtherCAT網(wǎng)絡(luò)通信的高速性,保證了從控制臺下達(dá)的指令被控制系統(tǒng)接收后,運(yùn)動(dòng)控制命令能迅速下達(dá)到每個(gè)電機(jī)驅(qū)動(dòng)模塊,充分確保實(shí)時(shí)性的要求。電機(jī)收到運(yùn)動(dòng)指令后,按照要求的方向運(yùn)行至指定的位置。在指定位置的設(shè)備上安裝光電開關(guān)或微動(dòng)開關(guān),信號將導(dǎo)入輸入模塊BL1002/BL1408用以確定最終位置是否準(zhǔn)確,以及是否需要修正。
2、 控制系統(tǒng)軟件設(shè)計(jì)
2.1 系統(tǒng)軟件配置
系統(tǒng)以Beckhoff公司的TwinCAT為軟件開發(fā)測試平臺。軟件編程過程分為控制用軟件的編寫過程和硬件組態(tài)過程。首先通過PLC CONTROL完成控制程序的編寫,然后再將程序加載到SystemManager中的PLC Configuration,完成程序中的參數(shù)和硬件端子的連接,再通過以太網(wǎng)(網(wǎng)絡(luò)或者傳輸電纜)與CX1020相連,將硬件組態(tài)和控制程序分別下載到目標(biāo)設(shè)備即可完成下位機(jī)程序的編寫過程。由于軟件的開放性,在分系統(tǒng)控制臺或總控管理/束組控制臺可通過Visual C++語言或其他高級語言編寫的上位機(jī)程序調(diào)用TwinCAT中的DLL實(shí)現(xiàn)與上位機(jī)的控制對接。TwinCAT提供的編程語言包含IEC61131-3的全部語言:IL、FBD、LD、SFC和ST。用戶可以通過選用以上語言的任一種進(jìn)行PLC編程。此外,用戶還可以通過TwinCAT所提供的運(yùn)動(dòng)控制(MC)程序塊進(jìn)行編程,大大簡化了編程難度,提高了控制的可靠性。TwinCAT也有在運(yùn)動(dòng)控制方面的擴(kuò)展功能,例如,實(shí)現(xiàn)控制電子齒輪、飛行前饋、凸輪碟等較為復(fù)雜的運(yùn)動(dòng)控制系統(tǒng)。本系統(tǒng)主要采用TwinCAT NC進(jìn)行編程。
2.2 通信及組態(tài)連接(編程建立)
本控制方案選用TwinCAT NC軸下的MC(Motion CONTROL)功能塊進(jìn)行編程。只需要在程序中調(diào)用其中的各個(gè)功能塊,例如軸使能、運(yùn)動(dòng)或者停止模塊,類似調(diào)用普通PLC程序*能塊一樣,只需要對相應(yīng)功能塊的輸入輸出變量進(jìn)行不同的賦值,便可實(shí)現(xiàn)相應(yīng)的控制。變量可根據(jù)其所對應(yīng)的類型指定地址,也可由程序自動(dòng)分配其地址空間。
軟件編程結(jié)束后,便可進(jìn)行硬件的組態(tài)和連接,其過程如下:
(1)通過網(wǎng)線將控制器與計(jì)算機(jī)相連接,第1次連接后應(yīng)進(jìn)行硬件掃描,確保系統(tǒng)上所有的硬件模塊連接正確。
(2)在NC Configuration中添加要控制軸的個(gè)數(shù),即所需要控制的電機(jī)的數(shù)目,然后將所建立的軸與硬件掃描后使該軸的控制器相對應(yīng),添加建立所需要的軸和軸與控制器對應(yīng)后的結(jié)果如圖2所示。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論