李漫天,黃海東
(廣西大學(xué) 機(jī)械工程學(xué)院,廣西 南寧 530004)
在20世紀(jì)60年代,美國開始首次將計(jì)算機(jī)技術(shù)應(yīng)用到倉庫上,創(chuàng)建了第一座計(jì)算機(jī)控制的立體倉庫[1]。將計(jì)算機(jī)技術(shù)運(yùn)用到物流一體化倉庫中,從物流的進(jìn)入到流出,采用自動(dòng)化技術(shù),可以取代人工操作的弊端,大大提高了堆垛效率。目前,國內(nèi)大多數(shù)使用半自動(dòng)或者人工操作的方式去實(shí)現(xiàn)堆垛。隨著工業(yè)4.0時(shí)代的到來,機(jī)械行業(yè)和互聯(lián)網(wǎng)技術(shù)緊密聯(lián)合,運(yùn)用機(jī)電一體化設(shè)計(jì)堆垛機(jī)成為了一種趨勢。在MCD平臺(tái)中,通過PLC控制MCD仿真模型。PLC編程是一種可用來控制設(shè)備的一個(gè)存儲(chǔ)器,可在內(nèi)部執(zhí)行指令來完成對設(shè)備的控制[2]??梢詫?shí)現(xiàn)物理仿真,電氣仿真以及軟件的控制,能夠很好地提升機(jī)電一體化的設(shè)計(jì)水平[3]。本文采用西門子公司推出的NX設(shè)計(jì)平臺(tái)及其MCD模塊,開發(fā)設(shè)計(jì)自動(dòng)化程度較高的圓鋼堆垛機(jī),以提高倉庫堆垛效率。
基于MCD仿真模型的機(jī)電產(chǎn)品開發(fā)設(shè)計(jì)方法如圖1所示,說明如下:
圖1 MCD模型開發(fā)方法
(1)根據(jù)裝備的功能,利用NX UG建立裝備的機(jī)械3D模型。
(2)使用NX MCD模塊,確定各個(gè)機(jī)構(gòu)的運(yùn)動(dòng)關(guān)系,進(jìn)行各運(yùn)動(dòng)副設(shè)計(jì)、零件的屬性(如碰撞體,剛體)設(shè)定、速度/位置的設(shè)定,使得各機(jī)構(gòu)可實(shí)現(xiàn)所要求的運(yùn)動(dòng);設(shè)置相應(yīng)的傳感器,通過傳感器來作為觸發(fā)物體運(yùn)動(dòng)的條件,用于事件觸發(fā)動(dòng)作。
(3)根據(jù)所需的動(dòng)作以及動(dòng)作時(shí)間順序或者事件觸發(fā)順序,設(shè)計(jì)基于時(shí)間或基于事件的仿真序列;設(shè)置所需的運(yùn)動(dòng)傳感器,信號接收器等關(guān)鍵零件,對應(yīng)至裝備的仿真序列,初步完成MCD仿真動(dòng)作。
(4)通過TIA Portal和虛擬仿真器組成一個(gè)虛擬的調(diào)試環(huán)境,并通過搜索外部信號,建立MCD中信號與PLC外部接口變量的映射關(guān)系。
(5)在TIA Portal中編寫PLC梯形圖程序,并下載到PLC仿真器。
(6)進(jìn)行PLC程序與MCD模型的聯(lián)合調(diào)試,對裝備功能進(jìn)行評估與優(yōu)化。
圓鋼堆垛機(jī)可分為六大裝置:送料裝置、取料裝置、運(yùn)料裝置、抬升阻擋裝置、堆垛裝置和送垛裝置。其圓鋼堆垛機(jī)各部件的位置關(guān)系如圖2所示。
圖2 堆垛機(jī)各機(jī)構(gòu)位置關(guān)系
工作流程是進(jìn)行MCD仿真中不可或缺的一個(gè)環(huán)節(jié),明確了工作流程才能有效地進(jìn)行傳感器的設(shè)計(jì)、速度控制、位置控制還有傳輸面等基于時(shí)序的操作,同時(shí)也能為設(shè)計(jì)各機(jī)構(gòu)的執(zhí)行部件的屬性進(jìn)行明確。本文圓鋼堆垛機(jī)的工作流程如圖3所示。該流程圖說明了各機(jī)構(gòu)以及傳感器在工作中如何起作用,為圓鋼堆垛機(jī)MCD模型的虛擬仿真的設(shè)計(jì)奠定了基礎(chǔ)。
圖3 堆垛機(jī)工作流程
在構(gòu)建堆垛機(jī)的三維模型后,需要通過MCD模塊對各部件進(jìn)行設(shè)置,以建立運(yùn)動(dòng)仿真模型。
在MCD仿真模型中,零件屬性要設(shè)置為剛體或碰撞體。只有這樣的零件才能進(jìn)行運(yùn)動(dòng)副的添加。要注意的是,在MCD中,碰撞體設(shè)置的類型也會(huì)影響運(yùn)動(dòng)的穩(wěn)定性:
(1)碰撞體的形狀越高越穩(wěn)定,在進(jìn)行MCD仿真時(shí)盡量選用盡可能簡單的碰撞類型。
(2)要合理利用碰撞體,避免碰撞體之間的干擾以及傳感器的干擾。
(3)如果碰撞體過多可以通過設(shè)置去檢查重點(diǎn)。
圓鋼堆垛機(jī)的運(yùn)動(dòng)關(guān)系的建立,需要設(shè)置MCD中的運(yùn)動(dòng)副。運(yùn)動(dòng)副是指兩個(gè)物體相互接觸之后產(chǎn)生相對接觸的運(yùn)動(dòng)鏈接,在一般機(jī)械運(yùn)動(dòng)中可按照接觸方式分為低副和高副。本文各部件之間的運(yùn)動(dòng)關(guān)系,主要是鉸鏈副、固定副、滑動(dòng)副等運(yùn)動(dòng)副。
前面我們已經(jīng)確定了執(zhí)行機(jī)構(gòu),以及各機(jī)構(gòu)的運(yùn)動(dòng)副,但還要確定動(dòng)作發(fā)生的先后順序,確定機(jī)構(gòu)的速度控制、位移控制以及傳輸面等參數(shù)等。位置控制是指位置控制驅(qū)動(dòng)運(yùn)動(dòng)副的軸以一設(shè)定的恒定速度運(yùn)動(dòng)到某一位置,并且限制其運(yùn)動(dòng)副的自由度。速度控制是指添加在運(yùn)動(dòng)副上用來驅(qū)動(dòng)剛體,添加的可以是速度、加速度等。
(1)送料機(jī)構(gòu):由于送料機(jī)構(gòu)是由棍子旋轉(zhuǎn)帶動(dòng)圓鋼移動(dòng),各棍子的參數(shù)一樣,設(shè)置為速度控制。
(2)取料機(jī)構(gòu):設(shè)置為速度控制。
(3)運(yùn)料機(jī)構(gòu):運(yùn)料機(jī)構(gòu)的工作方式主要是設(shè)置傳輸面和擋板帶動(dòng)圓鋼運(yùn)動(dòng)。設(shè)置的主要是帶式運(yùn)輸機(jī)的傳輸面速度。
(4)抬升機(jī)構(gòu):改抬升機(jī)構(gòu)主要設(shè)置了凸輪平臺(tái)的一個(gè)位置控制,用于提升凸輪平臺(tái)的傳輸面;
(5)堆垛機(jī)構(gòu):本次的堆垛主要有豎直的滾珠絲桿運(yùn)動(dòng),以及水平的滾珠絲桿運(yùn)動(dòng),故設(shè)置為位置控制。
(6)送垛機(jī)構(gòu):該送料機(jī)構(gòu)主要是由速度控制棍子帶動(dòng)物料前行,故設(shè)置為速度控制。
要使所建立的MCD模型產(chǎn)生所設(shè)計(jì)的動(dòng)作,需要進(jìn)行仿真序列的控制。MCD的仿真序列一般有2種方式:一種是基于時(shí)間發(fā)生的序列,另一種是基于事件發(fā)生的時(shí)序,本文對于兩種都有涉及。
第1類是基于時(shí)間發(fā)生的,以送料和抬升為例,同時(shí)有以下2個(gè)動(dòng)作:
第1個(gè)動(dòng)作是棍子運(yùn)輸機(jī)要把棍子運(yùn)輸過來,要設(shè)置運(yùn)動(dòng)的速度和運(yùn)動(dòng)時(shí)間,把圓鋼設(shè)置成碰撞體,然后把平面設(shè)置成傳輸面、速度控制、給定速度值,第一階段運(yùn)輸就完成了。
與此同時(shí),第2個(gè)動(dòng)作要把此時(shí)凸輪平臺(tái)上的圓鋼吸附起來堆垛到最后的送垛機(jī)構(gòu)。為了實(shí)現(xiàn)這個(gè)功能,設(shè)置滾珠絲桿的水平以及豎直的滑動(dòng)副。另外,還要進(jìn)行位置控制,只需要給這個(gè)凸輪平臺(tái)的滑動(dòng)副一個(gè)向上的數(shù)值,之后豎直滾珠絲桿下落再上升,橫向絲桿再移動(dòng)到送垛機(jī)構(gòu),放開圓鋼。將以上的仿真序列再連接起來給各運(yùn)動(dòng)副設(shè)定各自的參數(shù)之后,就能按照所設(shè)定的動(dòng)作運(yùn)動(dòng)。
其他的基于時(shí)間發(fā)生序列的設(shè)計(jì),如運(yùn)料機(jī)構(gòu)的設(shè)定,還有帶式運(yùn)輸機(jī)的設(shè)置,方法是一樣的,在此不再敘述。
第2類是基于事件的仿真序列,與上面不同的是,此類仿真序列還得添加一個(gè)觸發(fā)條件,這樣才能讓它運(yùn)動(dòng)起來。
以取料機(jī)構(gòu)為例,當(dāng)棍子運(yùn)輸機(jī)把圓鋼運(yùn)過來之后,要等到棍子觸發(fā)碰撞傳感器,此時(shí)運(yùn)料機(jī)構(gòu)停止,取料機(jī)構(gòu),即板式運(yùn)輸機(jī)才開始啟動(dòng)。設(shè)定好運(yùn)動(dòng)條件之后,當(dāng)滿足所需的條件時(shí),就會(huì)產(chǎn)生預(yù)先設(shè)置的速度和位置關(guān)系,從而達(dá)到所需的運(yùn)動(dòng)效果。圓鋼堆垛機(jī)的各個(gè)仿真序列完成后,可通過其在MCD中進(jìn)行了初步的動(dòng)作仿真。
雖然通過MCD的仿真序列可檢驗(yàn)各機(jī)構(gòu)實(shí)現(xiàn)動(dòng)作的可行性,但實(shí)際工程中都要求控制器對裝備進(jìn)行控制。因此,采用博途軟件(TIA PORTAL),實(shí)現(xiàn)對該圓鋼堆垛機(jī)MCD模型的PLC控制,能檢驗(yàn)PLC程序的實(shí)際控制效果。
要實(shí)現(xiàn)MCD模型與PLC程序的連接,首先要完成兩者的信號映射。以送料機(jī)構(gòu)的運(yùn)輸為例,進(jìn)行說明。首先在MCD中,我們要添加所運(yùn)行機(jī)構(gòu)的信號,如圖4所示,運(yùn)輸棍子的傳送面設(shè)置成了傳送帶,此時(shí)的速度要清零,不然后面編寫程序時(shí)會(huì)定義不清楚,容易出錯(cuò)。定義IO類型為輸入,雙精度型。像這樣設(shè)置好三個(gè)傳送帶,此時(shí)我們需要一個(gè)反饋裝置,所以本次設(shè)置了一個(gè)擋板碰撞傳感器用來反饋信號,如圖5所示,IO為輸出,數(shù)據(jù)類型為布爾型,這樣就可以起到一個(gè)檢測棍子運(yùn)動(dòng)的作用。
圖4 信號設(shè)計(jì)
圖5 反饋信號設(shè)計(jì)
MCD設(shè)置好要控制的信號之后,就開始創(chuàng)建一個(gè)虛擬調(diào)試所需的高級仿真器plc advance,通過設(shè)置地址,掩碼等一系列操作之后建立一個(gè)虛擬的plc,完成此信號的映射。
在博圖中添加組件,添加程序塊,編寫程序,得到如圖6所示,將該程序下載到PLC advance中,即可控制該棍子的運(yùn)行。
圖6 控制運(yùn)輸運(yùn)動(dòng)的PLC梯形
該程序是賦予傳送帶每秒500 mm的速度,當(dāng)棍子到達(dá)指定位置時(shí),碰撞傳感器收到信號反饋回來,導(dǎo)致傳送帶停止。設(shè)置對應(yīng)的映射信號,通過設(shè)計(jì)程序塊達(dá)到控制的一個(gè)目的。通過建立信號接受器反饋回來的信號傳給數(shù)據(jù)處理器,當(dāng)滿足每一個(gè)堆垛根數(shù)的信號時(shí),該信號即控制滾珠絲桿等運(yùn)動(dòng)。
其他功能的實(shí)現(xiàn)類似,先進(jìn)行信號映射,再進(jìn)行PLC梯形圖程序的開發(fā),最后進(jìn)行MCD模型與PLC程序的聯(lián)合調(diào)試,測試設(shè)計(jì)效果。
本文結(jié)合MCD模塊和圓鋼堆垛機(jī)介紹了NX機(jī)電產(chǎn)品設(shè)計(jì)開發(fā)方法,建立了堆垛機(jī)3D模型、MCD仿真模型,并將其信號與PLC外部接口變量進(jìn)行了映射,從而實(shí)現(xiàn)了PLC與MCD模型的聯(lián)合測試,提高了開發(fā)效率,降低了開發(fā)成本,對拓寬機(jī)電產(chǎn)品設(shè)計(jì)開發(fā)方法具有一定的參考意義。