柔性車削中心系統(tǒng)中獨(dú)立型PLC模塊的研究設(shè)計(jì)及應(yīng)用
點(diǎn)擊:1869
A+ A-
所屬頻道:新聞中心
0 引言
近年來汽車行業(yè)發(fā)展迅猛,制動(dòng)器作為汽車、摩托車制動(dòng)系統(tǒng)中的主要執(zhí)行器件,有著巨大的市場(chǎng)需求。制動(dòng)盤是盤式制動(dòng)器的關(guān)鍵部件,其產(chǎn)品質(zhì)量直接影響盤式制動(dòng)器的性能發(fā)揮。目前大多數(shù)汽車、摩托車均采用特定規(guī)格的制動(dòng)盤,故尺寸規(guī)格、材料種類較多,且生產(chǎn)工藝要求不同。為滿足制動(dòng)盤的多品種大批量生產(chǎn),需研發(fā)適用于盤類零件的柔性生產(chǎn)設(shè)備。STAR.08T柔性車削中心數(shù)控系統(tǒng)的研發(fā)正是著眼于解決制動(dòng)盤的高效柔性生產(chǎn)而進(jìn)行的。該柔性車削中心采用兩工位兩主軸雙刀架立式車床機(jī)構(gòu),并帶上下料機(jī)構(gòu)實(shí)現(xiàn)工件的自動(dòng)安裝和堆垛。該機(jī)床共二十軸,兩個(gè)主軸控制,八個(gè)進(jìn)給軸控制,兩組上下料機(jī)構(gòu)控制,共十個(gè)調(diào)整軸。該車削中心的主軸具有無級(jí)調(diào)速控制,考慮到自動(dòng)上下料主軸控制必須具有準(zhǔn)停功能,為此采用獨(dú)立型PLC實(shí)現(xiàn)柔性車削中心主軸調(diào)速、準(zhǔn)停和速度實(shí)時(shí)監(jiān)控,上下料機(jī)構(gòu)控制和監(jiān)控,采用獨(dú)立型PLC的作用就是在數(shù)控系統(tǒng)集成中可以充分利用獨(dú)立型PLC的硬件資源,如要實(shí)現(xiàn)上述功能需要高速輸入輸出功能和模擬量輸入輸出功能,為了達(dá)到較高的控制要求需要較高的模擬量輸入輸出分辨率,采用獨(dú)立型PLC完全可以解決這些問題,如果采用專用的控制卡則需要較高的硬件資源,提高了數(shù)控系統(tǒng)集成成本。為此在STAR.08T數(shù)控系統(tǒng)中開發(fā)了獨(dú)立型PLC模塊。
1 獨(dú)立型PLC軟件設(shè)計(jì)
獨(dú)立型PLC實(shí)現(xiàn)柔性車削中心主軸調(diào)速、主軸準(zhǔn)停、速度實(shí)時(shí)監(jiān)控,上下料機(jī)構(gòu)中兩個(gè)步進(jìn)電機(jī)位置和速度控制,雙刀架控制,主軸速度監(jiān)控以及主軸和步進(jìn)電機(jī)當(dāng)前位置監(jiān)控。為了到達(dá)該功能采用“緩沖池”的軟件結(jié)構(gòu),如圖1。“緩沖池”執(zhí)行程序的過程分為三個(gè)階段,即輸入采樣階段、程序執(zhí)行階段、輸出刷新階段。在輸入采樣階段,PLC接收來自上位機(jī)通信數(shù)據(jù),并存入“緩沖池”的寄存器中,此時(shí)寄存器被刷新。接著進(jìn)入程序處理階段,在程序執(zhí)行階段或其它階段,即使上位機(jī)的通信數(shù)據(jù)更改不會(huì)使“緩沖池”的寄存器狀態(tài)發(fā)生變化,“緩沖池”的寄存器狀態(tài)的變化只有在下一個(gè)掃描周期的輸入處理階段才能被更新。在程序執(zhí)行階段,PLC對(duì)程序按順序進(jìn)行“緩沖池”掃描執(zhí)行。若程序用梯形圖來表示,則總是按先上后下,先左后右的順序進(jìn)行。當(dāng)指令中從輸入“緩沖池”中讀出,根據(jù)用戶程序進(jìn)行運(yùn)算,運(yùn)算的結(jié)果再存入元件映象寄存器中。對(duì)于元件映象寄存器來說,其內(nèi)容會(huì)隨程序執(zhí)行的過程而變化。當(dāng)所有程序執(zhí)行完畢后,進(jìn)入輸出處理階段。在這一階段里,PLC將輸出映象寄存器中與輸出有關(guān)的狀態(tài)轉(zhuǎn)存到輸出鎖存器中,并通過一定方式輸出,驅(qū)動(dòng)外部負(fù)載。對(duì)于“緩沖池”中的監(jiān)控緩沖區(qū),在PLC一次掃描過程中進(jìn)行一次更新,根據(jù)通信的要求進(jìn)行發(fā)送數(shù)據(jù)到上位機(jī)。而“緩沖池”的程序執(zhí)行采用時(shí)間片輪轉(zhuǎn)思想,系統(tǒng)將所有的就緒進(jìn)程按先來先服務(wù)算法的原則,排成一個(gè)隊(duì)列,每次調(diào)度時(shí),系統(tǒng)把處理機(jī)分配給隊(duì)列首進(jìn)程,并讓其執(zhí)行一個(gè)時(shí)間片。當(dāng)執(zhí)行的時(shí)間片用完時(shí),由一個(gè)計(jì)時(shí)器發(fā)出時(shí)鐘中斷請(qǐng)求,調(diào)度程序根據(jù)這個(gè)請(qǐng)求停止該進(jìn)程的運(yùn)行,將它送到就緒隊(duì)列的末尾,再把處理機(jī)分給就緒隊(duì)列中新的隊(duì)首進(jìn)程,同時(shí)讓它也執(zhí)行一個(gè)時(shí)間片。
圖1獨(dú)立型PLC模塊原理圖
2 上位機(jī)軟件模塊設(shè)計(jì)
上位機(jī)軟件模塊設(shè)計(jì)采用控制字驅(qū)動(dòng)方案,控制字的設(shè)計(jì)如圖2所示。上位機(jī)軟件設(shè)計(jì)采用循環(huán)掃描的方式進(jìn)行工作,程序流程如圖3所示控制CPU時(shí)刻通過人機(jī)界面和自動(dòng)控制模式的G代碼、M代碼或FST代碼的編譯結(jié)果來獲得控制請(qǐng)求。
圖2上位機(jī)軟件模塊控制字
通過不同的請(qǐng)求來修改控制字的不同位,在獲得控制請(qǐng)求的時(shí)候可能有多個(gè)控制請(qǐng)求,設(shè)計(jì)軟件把所有的請(qǐng)求分為了三個(gè)等級(jí),主軸控制
為最高級(jí)別,電機(jī)控制和換刀控制為中等級(jí)別,讀取各個(gè)狀態(tài)為最低級(jí)別,每檔級(jí)別中還有不同事件,采用先來先服務(wù)(即FIFS:first input firstservice)的原則。為了保證軟件設(shè)計(jì)的健壯性和系統(tǒng)的穩(wěn)定型,在通信成功之后要復(fù)位控制字的相關(guān)位,在通信過程中可能由于某種原因?qū)е碌耐ㄐ胖袛嗪屯ㄐ佩e(cuò)誤,采用雙機(jī)制程序設(shè)計(jì):如果通信不成功再次進(jìn)行通信,如果三次通信失敗進(jìn)行系統(tǒng)報(bào)警處理,同時(shí)進(jìn)行通信軟件診斷。通信模塊是指上位機(jī)與PLC的通信模塊,它包括:通信硬件接口的初始化、數(shù)據(jù)接收發(fā)送、通信協(xié)議的制定、數(shù)據(jù)打包和解包、數(shù)據(jù)的效驗(yàn)等待。
WM:工作模式設(shè)置位,獨(dú)立型PLC模塊共有自動(dòng)、點(diǎn)動(dòng)、單步和回零四種工作模式。
WS:主軸速度設(shè)定位;
WW:1靜電機(jī)目標(biāo)位置設(shè)定位;
WW1:錯(cuò)電機(jī)目標(biāo)位置設(shè)定位:
WF:1#電機(jī)最高速度設(shè)定位;
WF1:2#電機(jī)最高速度設(shè)定位;
WT:1#刀架目標(biāo)刀位設(shè)定位;
WT1:2#刀架目標(biāo)刀位設(shè)定位;
WC:主軸準(zhǔn)停位置設(shè)定位;
XX:備用;
RS:讀取主軸速度設(shè)定位;
RC:讀取主軸當(dāng)前位置設(shè)定位;
RW:讀取1#電機(jī)當(dāng)前位置設(shè)定位;
RWl:讀取2#電機(jī)當(dāng)前位置設(shè)定位;
RT:讀取1#溫度值設(shè)定位:
RTl:讀取2#溫度值設(shè)定位:
3 上下位機(jī)通信軟件模塊設(shè)計(jì)
上下位機(jī)(即PC機(jī)和PLC)采用RS485通訊方式。RS485接口是異步串行半雙工傳輸接口。默認(rèn)通訊協(xié)議方式采用ASCII方式。數(shù)據(jù)格式為:1位起始位,7位數(shù)據(jù)位,1位停止位。波特率為115200bps。
3.1 通訊協(xié)議格式
傳輸設(shè)備將消息轉(zhuǎn)為有起點(diǎn)和終點(diǎn)的幀,這就允許接收的設(shè)備在消息起始處開始工作,讀地址分配信息,判斷哪一個(gè)設(shè)備被選中,判知何時(shí)信息已完成。錯(cuò)誤消息也能偵測(cè)到并能返回結(jié)果。消息發(fā)送至少要以10ms時(shí)間的停頓間隔開始。傳輸?shù)牡谝粋€(gè)域是設(shè)備地址。網(wǎng)絡(luò)設(shè)備不斷偵測(cè)網(wǎng)絡(luò)總線,包括停頓間隔時(shí)間內(nèi)。當(dāng)?shù)谝粋€(gè)域(地址域)接收到,每個(gè)設(shè)備都進(jìn)行解碼以判斷是否發(fā)往自己的。在最后一個(gè)傳輸字符之后,一個(gè)至少10ms時(shí)間的停頓標(biāo)定了消息的結(jié)束。一個(gè)新的消息可在此停頓后開始。整個(gè)消息幀必須作為一連續(xù)的流轉(zhuǎn)輸。如果在幀完成之前有超過5ms時(shí)間的停頓時(shí)間,接收設(shè)備將刷新不完整的消息并假定下一字節(jié)是一個(gè)新消息的地址域。同樣地,如果一個(gè)新消息在小于5ms的時(shí)間內(nèi)接著前個(gè)消息開始,接收的設(shè)備將認(rèn)為它是前一消息的延續(xù)。這將導(dǎo)致一個(gè)錯(cuò)誤,因?yàn)樵谧詈蟮男r?yàn)域的值不可能是正確的。一典型的消息幀如圖4,其包括:起始、設(shè)備地址、功能代碼、數(shù)據(jù)數(shù)量及數(shù)據(jù)、校驗(yàn)和結(jié)束。
圖3上位機(jī)程序流程圖
圖4通訊協(xié)議格式
3.2 LRC校驗(yàn)碼
對(duì)于消息發(fā)送端,LRC的計(jì)算方法是將要發(fā)送消息中“從機(jī)地址”到“運(yùn)行數(shù)據(jù)”沒有轉(zhuǎn)換成ASCII碼的全部字節(jié)連續(xù)累加,結(jié)果丟棄進(jìn)位,得到的8位字節(jié)按位取反,后再加1(轉(zhuǎn)換為補(bǔ)碼),最后轉(zhuǎn)換成ASCII碼,放入校驗(yàn)區(qū),高字節(jié)在前,低字節(jié)在后。對(duì)于消息接收端,采取同樣的LRC方法計(jì)算接收到消息的校驗(yàn)和,與實(shí)際接收到的校驗(yàn)和進(jìn)行比較,如果相等,則接收消息正確。如果不相等,則接收消息錯(cuò)誤。如果校驗(yàn)錯(cuò)誤,則丟棄該消息幀,并不作任何回應(yīng),繼續(xù)接收下一幀數(shù)據(jù)。
4 結(jié)束語(yǔ)
獨(dú)立型PLC實(shí)現(xiàn)柔性車削中心主軸調(diào)速、主軸準(zhǔn)停、速度實(shí)時(shí)監(jiān)控,上下料機(jī)構(gòu)中兩個(gè)步進(jìn)電機(jī)位置和速度控制,雙刀架控制,主軸速度監(jiān)控以及主軸和步進(jìn)電機(jī)當(dāng)前位置監(jiān)控。而且獨(dú)立型PLC模塊充分利用工業(yè)應(yīng)用現(xiàn)場(chǎng)成熟的PLC硬件資源,減少了硬件開發(fā)的周期,采用自由口通訊協(xié)議,開發(fā)簡(jiǎn)單,增強(qiáng)了系統(tǒng)集成開發(fā)的軟硬件的穩(wěn)定性和系統(tǒng)軟件的健壯性。獨(dú)立型PLC模塊應(yīng)用于STAR-08T柔性車削中心。該設(shè)備是全功能帶自動(dòng)上下料機(jī)構(gòu)兩工位雙主軸雙刀架四工序盤類零件機(jī)械加工數(shù)控裝備。加工的盤類零件,一個(gè)工位加工零件的外徑和上面溝槽,另一個(gè)工位加工零件的內(nèi)徑和下面溝槽。STAR-08T柔性車削中心自動(dòng)上下料,采用參數(shù)化編程,替代傳統(tǒng)的G代碼編程,大大降低工人的勞動(dòng)強(qiáng)度,提供了加工效率。
(審核編輯: Doris)
分享