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