PLC控制系統(tǒng)的簡(jiǎn)單介紹-機(jī)器人周邊設(shè)備控制
一、plc控制系統(tǒng)的設(shè)計(jì)思路
1、用PLC控制一維運(yùn)動(dòng)平臺(tái)實(shí)現(xiàn)電機(jī)的自動(dòng)正反轉(zhuǎn)運(yùn)行及手動(dòng)正反轉(zhuǎn)運(yùn)行;
2、一維運(yùn)動(dòng)平臺(tái)的行程兩端各有一行程開(kāi)關(guān),分別定義為正向限位和負(fù)向限位;
3、在電機(jī)自動(dòng)正反轉(zhuǎn)運(yùn)行前,需對(duì)電機(jī)進(jìn)行復(fù)位。復(fù)位的過(guò)程是:?jiǎn)?dòng)電機(jī)往負(fù)向運(yùn)行,運(yùn)行至負(fù)向限位后,往正向運(yùn)行一段距離,將該位置作為電機(jī)自動(dòng)正反轉(zhuǎn)運(yùn)行的初始位置;
4、復(fù)位完成后,按下正轉(zhuǎn)按鈕,電機(jī)往正向運(yùn)行一段距離(該距離通過(guò)運(yùn)動(dòng)包絡(luò)參數(shù)設(shè)定),到位后停止。按下反轉(zhuǎn)按鈕,電機(jī)往負(fù)向運(yùn)行一段距離,到位后停止;
5、觸動(dòng)行程開(kāi)關(guān)后,需重新復(fù)位才能進(jìn)行自動(dòng)正反轉(zhuǎn)運(yùn)行控制;
6、如正反轉(zhuǎn)運(yùn)行過(guò)程中,觸動(dòng)行程開(kāi)關(guān),電機(jī)停止運(yùn)行。此時(shí)可通過(guò)手動(dòng)正反轉(zhuǎn)按鈕控制電機(jī)運(yùn)行離開(kāi)限位開(kāi)關(guān),或按下復(fù)位按鈕對(duì)平臺(tái)重新復(fù)位;
7、在電機(jī)運(yùn)行過(guò)程中,任何時(shí)刻均可通過(guò)“停止按鈕”和“急停按鈕”控制其停止運(yùn)行;
8、停止運(yùn)行后,需重新復(fù)位才能進(jìn)行自動(dòng)正反轉(zhuǎn)運(yùn)行控制;
9、“復(fù)位指示燈”、“運(yùn)行指示燈”和“停止指示燈”用來(lái)指示一維平臺(tái)的運(yùn)行狀態(tài)。
二、機(jī)械本體三、硬件電路
S7-200 CPU提供兩個(gè)高速脈沖輸出點(diǎn)(Q0.0和Q0.1),可以分別工作在PTO(脈沖串輸出)和PWM(脈寬調(diào)制)狀態(tài)下。使用PTO或PWM可以實(shí)現(xiàn)速度、位置的開(kāi)環(huán)運(yùn)動(dòng)控制。
PTO功能可以輸出一串脈沖,用戶可以控制脈沖的周期(頻率)和個(gè)數(shù)。PWM功能可以連續(xù)輸出一串占空比可調(diào)的脈沖,用戶可以控制脈沖的周期和脈寬(占空比)。
高速脈沖輸出點(diǎn)和普通數(shù)字量輸出點(diǎn)共用輸出映像Q0.0和Q0.1。當(dāng)在Q0.0和Q0.1上激活PTO或PWM功能時(shí),PTO/PWM發(fā)生器對(duì)輸出擁有控制權(quán),輸出波形不受其他影響。
只有晶體管輸出類型的CPU能夠支持高速脈沖輸出功能。
三、運(yùn)動(dòng)包絡(luò)
包絡(luò)(Profile)是一個(gè)預(yù)先定義的以位置為橫坐標(biāo),以速度為縱坐標(biāo)的曲線,包絡(luò)是運(yùn)動(dòng)的圖形描述。
一個(gè)包絡(luò)由多段組成,每一段包含一個(gè)達(dá)到目標(biāo)速度的加減速過(guò)程,和以目標(biāo)速度勻速運(yùn)行的一串指定數(shù)量的脈沖。如果是單段運(yùn)動(dòng)控制或者是多段運(yùn)動(dòng)控制的后一段,還應(yīng)該包括一個(gè)由目標(biāo)速度到停止的減速過(guò)程。
PTO主要通過(guò)包絡(luò)來(lái)實(shí)現(xiàn)位置控制。位置控制想到通過(guò)參數(shù)設(shè)置來(lái)創(chuàng)建包絡(luò),并用圖形方式顯示包絡(luò)曲線,自動(dòng)生成位置控制用的子程序。
在開(kāi)始編寫(xiě)程序前,首先設(shè)定運(yùn)動(dòng)包絡(luò),步驟如下:
(1)雙擊左圖所示“向?qū)?/span>—PTO/PWM”,出現(xiàn)“脈沖輸出向?qū)?/span>”窗口。
(2)選擇Q0.0,單擊“下一步”。
(3)選擇“線性脈沖串輸出(PTO)”,單擊“下一步”。
(4)設(shè)置項(xiàng)目中應(yīng)用的電機(jī)高速度、低速度和電機(jī)啟動(dòng)/停止速度。
(5)單擊“下一步”,設(shè)置加減速時(shí)間。
(6)單擊“下一步”。
(7)點(diǎn)擊“新包絡(luò)”,選擇“是”。
(8)圖27灰色部分激活,在其中選擇“相對(duì)位置”,設(shè)置好參數(shù),其中步0的目標(biāo)位置不要設(shè)置太小,需大于加減速脈沖數(shù)之和。
(9)單擊“確認(rèn)”。
(10)將參數(shù)”VB0”更改為“VB1000”,需注意,不要在程序中再重復(fù)定義“VB1000—VB1069”;單擊“下一步”。
(11)單擊“完成”,在彈出的對(duì)話框中選擇“是”。
(12)運(yùn)動(dòng)包絡(luò)設(shè)置完成。在調(diào)用子程序中出現(xiàn)Q0.0對(duì)應(yīng)的位控子程序。
SM0.1:首次掃描周期時(shí)該位打開(kāi),用途是調(diào)用初始化子程序。
2、電機(jī)控制子程序和初始化
PTO0_CTRL在程序中只使用一次,并且在每次掃描時(shí)得到執(zhí)行,所以使用SM0.0作為EN的輸入。(robotinfo) 馬云都在關(guān)注
EN:使能端,用SM0.0連接,保持常通;
I_STOP:有效時(shí)電機(jī)立即停止;
D_STOP:有效時(shí)電機(jī)減速停止;
Done:完成標(biāo)志。為“1”時(shí)表明上一指令執(zhí)行完成;
Error:顯示錯(cuò)誤代碼,“0”表示無(wú)錯(cuò)誤;
C_Pos:HSC計(jì)數(shù)器功能開(kāi)啟時(shí),表示運(yùn)行脈沖數(shù),否則為0。
3、復(fù)位
VD1100:復(fù)位返回脈沖數(shù),在數(shù)據(jù)塊的“用戶定義1”進(jìn)行設(shè)置。根據(jù)電機(jī)的減速比和驅(qū)動(dòng)器的細(xì)分以及電機(jī)行程設(shè)置。
VD1043:運(yùn)行包絡(luò)恒速段脈沖數(shù);VD1100-VD1080=VD1043。
4、正轉(zhuǎn)
VD60.1:運(yùn)動(dòng)包絡(luò)運(yùn)行完成標(biāo)志,PTO0_CTRL中的“Done”參數(shù);v100.1:正轉(zhuǎn)運(yùn)行狀態(tài);v101.3:正轉(zhuǎn)結(jié)束;
I0.1:正轉(zhuǎn)按鈕;
V100.1:正轉(zhuǎn)運(yùn)行狀態(tài);V101.2:復(fù)位完成標(biāo)志。正反轉(zhuǎn)自動(dòng)運(yùn)行前必須復(fù)位完成;
Q0.2:電機(jī)方向;
VD1104:正反轉(zhuǎn)脈沖數(shù),同VD1100參數(shù)一樣, 在“數(shù)據(jù)塊”的“用戶定義1”中設(shè)置.VD1104-VD1080=VD1043。
5、反轉(zhuǎn)
VD60.1:運(yùn)動(dòng)包絡(luò)運(yùn)行完成標(biāo)志,PTO0_CTRL中的“Done”參數(shù);v100.2:反轉(zhuǎn)運(yùn)行狀態(tài);v101.4:反轉(zhuǎn)結(jié)束;
I0.2:反轉(zhuǎn)按鈕;V100.2:反轉(zhuǎn)運(yùn)行狀態(tài);V101.2:復(fù)位完成標(biāo)志。正反轉(zhuǎn)自動(dòng)運(yùn)行前必須復(fù)位完成;
Q0.2:電機(jī)方向;
VD1104:正反轉(zhuǎn)脈沖數(shù),同VD1100參數(shù)一樣,在“數(shù)據(jù)塊”的“用戶定義1”中設(shè)置。VD1104-VD1080=VD1043。
6、手動(dòng)正轉(zhuǎn)
手動(dòng)正轉(zhuǎn)是對(duì)電機(jī)的點(diǎn)動(dòng)控制,需要一直按住按鈕,電機(jī)才能運(yùn)行。運(yùn)行至正限位后,即使按住按鈕也不能運(yùn)行,只能反向運(yùn)行。
7、手動(dòng)反轉(zhuǎn)
手動(dòng)反轉(zhuǎn)是對(duì)電機(jī)的點(diǎn)動(dòng)控制,需要一直按住按鈕,電機(jī)才能運(yùn)行。運(yùn)行至負(fù)限位后,即使按住按鈕也不能運(yùn)行,只能正向運(yùn)行。
8、緊急停止
緊急停止:運(yùn)行至正負(fù)限位時(shí),對(duì)系統(tǒng)的保護(hù)策略。任何情況下,按下緊急停止按鈕,使系統(tǒng)緊急停止。
9、輸出(1)、包絡(luò)運(yùn)行
EN:使能端,用SM0.0鏈接表示保持常通;
START:參數(shù)開(kāi)啟時(shí),執(zhí)行運(yùn)動(dòng)包絡(luò),為確保命令只發(fā)送一次,使用上升沿信號(hào);
Profile:設(shè)定的運(yùn)動(dòng)包絡(luò)編號(hào);
Abort:位控模塊停止參數(shù)。開(kāi)啟后停止運(yùn)行當(dāng)前包絡(luò)并減速停止;
Done:完成標(biāo)志。模塊完成該子程序時(shí),此參數(shù)為“1”;
Error:錯(cuò)誤代碼,為“0”表示無(wú)錯(cuò)誤;
C_Profile:包含位控模塊當(dāng)前執(zhí)行的輪廓;
C_Step:目前正在執(zhí)行的輪廓步驟;
C_Pos:如果PTO向?qū)У?/span>HSC計(jì)數(shù)器功能已啟用,C_Pos參數(shù)包含用脈沖數(shù)目表示的模塊;否則此數(shù)值始終 為0。
(2)、點(diǎn)動(dòng)運(yùn)行
EN:使能端,SM0.0保持常通;
RUN:?jiǎn)⒂迷搮?shù)加速至設(shè)定速度運(yùn)行,停用該參數(shù)電機(jī)減速停止;
Speed:設(shè)定手動(dòng)運(yùn)行的高速度;
Error:本子程序的錯(cuò)誤代碼,“0”表示無(wú)錯(cuò)誤;
C_Pos:如果PTO向?qū)У?/span>HSC計(jì)數(shù)器功能已啟用,C_Pos參數(shù)包含用脈沖數(shù)目表示的模塊;否則此數(shù)值始終為零。
(3)、指示燈
復(fù)位狀態(tài)下,復(fù)位指示燈亮。
正反轉(zhuǎn)運(yùn)行時(shí),運(yùn)行指示燈亮。
不處于復(fù)位或運(yùn)行狀態(tài)時(shí),停止燈亮。
標(biāo)簽:   plc控制系統(tǒng)