用PLC測轉(zhuǎn)速介紹
關(guān)于PLC,我是個(gè)初學(xué)者,今天在此對(duì)自己前一段時(shí)間的學(xué)習(xí)做個(gè)總結(jié),以備后用。由于本人水平有限,本文一定還存在不少錯(cuò)誤和不妥之處,敬請(qǐng)大家批評(píng)指正。
本文所有程序,均在Step7Template.mwp中編寫,CPU類型選西門子 S7—200系列226 CN。
先說程序,測低速(每分鐘1000轉(zhuǎn)以下) : LD I0.0
LD M20.1
CTU C0,+5000 //設(shè)定增計(jì)數(shù)器上限
LD SM0.0
A M20.0
TON T37,+30 //立即接通,延時(shí)三秒斷開
LD SM0.0
O M20.0#p#分頁標(biāo)題#e#
AN T37
= M20.0 //設(shè)定T37定時(shí)器復(fù)位信號(hào)
LD M20.0
LD M20.1
CTU C1,+20 //設(shè)定增計(jì)數(shù)器C1上限
LD C1
MOVW C0,VW200
= M20.2
LD M20.2
本文所有程序,均在Step7Template.mwp中編寫,CPU類型選西門子 S7—200系列226 CN。
先說程序,測低速(每分鐘1000轉(zhuǎn)以下) : LD I0.0
LD M20.1
CTU C0,+5000 //設(shè)定增計(jì)數(shù)器上限
LD SM0.0
A M20.0
TON T37,+30 //立即接通,延時(shí)三秒斷開
LD SM0.0
O M20.0#p#分頁標(biāo)題#e#
AN T37
= M20.0 //設(shè)定T37定時(shí)器復(fù)位信號(hào)
LD M20.0
LD M20.1
CTU C1,+20 //設(shè)定增計(jì)數(shù)器C1上限
LD C1
MOVW C0,VW200
= M20.2
LD M20.2
= M20.1 //設(shè)定增計(jì)數(shù)器C1的復(fù)位信號(hào)
外圍電路下面介紹,先講程序。由I0.0作輸入口,T37延時(shí)三秒后給C1一個(gè)信號(hào),C1計(jì)1,然后T37被復(fù)位,再延時(shí),3秒后C1計(jì)2,…
直到C1計(jì)到20。20個(gè)三秒就是一分鐘 ,期間I0.0口的脈沖信號(hào)由C0計(jì)數(shù)器計(jì)數(shù),計(jì)滿一分鐘就把結(jié)果移到VW200中。脈沖信號(hào)由外圍電路得到。
以上程序能測一千以下的轉(zhuǎn)速,實(shí)驗(yàn)時(shí)上限是一千四百多吧。由于該程序用的是低速計(jì)數(shù)器,轉(zhuǎn)速較高時(shí),受PLC時(shí)鐘周期影響,在一分鐘時(shí)轉(zhuǎn)速還未記好,C0就被清零,所以會(huì)有上限。接下來我們用PLC內(nèi)部不受時(shí)鐘周期影響的高速計(jì)數(shù)器來測高速(一千轉(zhuǎn)以上):
LD SM0.1
CALL SBR_0 //調(diào)用高速計(jì)數(shù)器初始化子程序
LD SM0.0
A M20.0
TON T37,+100 //設(shè)定計(jì)時(shí)器值,延時(shí)10秒
LD SM0.0
O M20.0
外圍電路下面介紹,先講程序。由I0.0作輸入口,T37延時(shí)三秒后給C1一個(gè)信號(hào),C1計(jì)1,然后T37被復(fù)位,再延時(shí),3秒后C1計(jì)2,…
直到C1計(jì)到20。20個(gè)三秒就是一分鐘 ,期間I0.0口的脈沖信號(hào)由C0計(jì)數(shù)器計(jì)數(shù),計(jì)滿一分鐘就把結(jié)果移到VW200中。脈沖信號(hào)由外圍電路得到。
以上程序能測一千以下的轉(zhuǎn)速,實(shí)驗(yàn)時(shí)上限是一千四百多吧。由于該程序用的是低速計(jì)數(shù)器,轉(zhuǎn)速較高時(shí),受PLC時(shí)鐘周期影響,在一分鐘時(shí)轉(zhuǎn)速還未記好,C0就被清零,所以會(huì)有上限。接下來我們用PLC內(nèi)部不受時(shí)鐘周期影響的高速計(jì)數(shù)器來測高速(一千轉(zhuǎn)以上):
LD SM0.1
CALL SBR_0 //調(diào)用高速計(jì)數(shù)器初始化子程序
LD SM0.0
A M20.0
TON T37,+100 //設(shè)定計(jì)時(shí)器值,延時(shí)10秒
LD SM0.0
O M20.0
AN T37
= M20.0 //立即接通延時(shí)十秒斷開
LD T37
MOVD HC0, VD100 //I0.0為高速計(jì)數(shù)器HC0輸入口,計(jì)數(shù)結(jié)果移入VD100
MOVD VD100, VD200
MUL +6, VD200 //計(jì)數(shù)結(jié)果乘以6,放入VD200
LD T37
CALL SBR_0 //T37計(jì)時(shí)到,調(diào)用高速計(jì)數(shù)器初始化子程序
SBR_0 //高速計(jì)數(shù)器初始化子程序#p#分頁標(biāo)題#e#
LD SM0.0
MOVB 16#F8, SMB37 //設(shè)置控制位:增計(jì)數(shù);已使能;
MOVD +0, SMD38 //裝載 CV
MOVD +0, SMD42 //裝載 PV
HDEF 0, 0
HSC 0
以上程序測速范圍為1000轉(zhuǎn)以上,實(shí)驗(yàn)時(shí)測得最高為2500+,因?qū)嶒?yàn)條件有限,上限未知。有人會(huì)有疑問:你怎么采用的是測10秒,然后將計(jì)數(shù)結(jié)果乘以6當(dāng)做一分鐘的轉(zhuǎn)速,而不直接測一分鐘的轉(zhuǎn)速呢? 因?yàn)檗D(zhuǎn)速結(jié)果最后要用數(shù)碼管顯示出來,對(duì)觀察者來說,10秒以后顯示與一分鐘后顯示相比,前者更好一些。最后我們采用的是6乘以10的策略。
最后來說說外圍電路吧。外圍電路把轉(zhuǎn)速轉(zhuǎn)換成脈沖信號(hào)輸入PLC,上面兩段程序用的都是I0.0口。信號(hào)的轉(zhuǎn)換和采集用霍爾傳感器,
接法如圖:VCC接24V,GND接電源負(fù)極,A接信號(hào)輸入端I0.0,A端和24V間接電阻。接好后將霍爾元件平的一面朝被測物體固定好,如一個(gè)輪子,在輪子面上霍爾對(duì)應(yīng)位置安裝霍爾磁體。測速原理:輪子每轉(zhuǎn)一圈,磁體和霍爾元件接觸一次(其實(shí)是接近),它們接觸時(shí)帶來A端電壓的降低,由此給PLC一個(gè)脈沖信號(hào)。磁體和霍爾之間間距3至5mm。安裝時(shí)注意磁體的正反面。
好了,測轉(zhuǎn)速就先說這么多。經(jīng)過以上這些,測得的數(shù)據(jù)只是放在PLC的內(nèi)存里,我們可以在軟件里監(jiān)測PLC運(yùn)行情況,看到這些數(shù)據(jù)。是不是有點(diǎn)麻煩,有沒有更好的方法能看到這些數(shù)據(jù)?當(dāng)然,可以用LED數(shù)碼管來把數(shù)據(jù)顯示出來。
= M20.0 //立即接通延時(shí)十秒斷開
LD T37
MOVD HC0, VD100 //I0.0為高速計(jì)數(shù)器HC0輸入口,計(jì)數(shù)結(jié)果移入VD100
MOVD VD100, VD200
MUL +6, VD200 //計(jì)數(shù)結(jié)果乘以6,放入VD200
LD T37
CALL SBR_0 //T37計(jì)時(shí)到,調(diào)用高速計(jì)數(shù)器初始化子程序
SBR_0 //高速計(jì)數(shù)器初始化子程序#p#分頁標(biāo)題#e#
LD SM0.0
MOVB 16#F8, SMB37 //設(shè)置控制位:增計(jì)數(shù);已使能;
MOVD +0, SMD38 //裝載 CV
MOVD +0, SMD42 //裝載 PV
HDEF 0, 0
HSC 0
以上程序測速范圍為1000轉(zhuǎn)以上,實(shí)驗(yàn)時(shí)測得最高為2500+,因?qū)嶒?yàn)條件有限,上限未知。有人會(huì)有疑問:你怎么采用的是測10秒,然后將計(jì)數(shù)結(jié)果乘以6當(dāng)做一分鐘的轉(zhuǎn)速,而不直接測一分鐘的轉(zhuǎn)速呢? 因?yàn)檗D(zhuǎn)速結(jié)果最后要用數(shù)碼管顯示出來,對(duì)觀察者來說,10秒以后顯示與一分鐘后顯示相比,前者更好一些。最后我們采用的是6乘以10的策略。
最后來說說外圍電路吧。外圍電路把轉(zhuǎn)速轉(zhuǎn)換成脈沖信號(hào)輸入PLC,上面兩段程序用的都是I0.0口。信號(hào)的轉(zhuǎn)換和采集用霍爾傳感器,
接法如圖:VCC接24V,GND接電源負(fù)極,A接信號(hào)輸入端I0.0,A端和24V間接電阻。接好后將霍爾元件平的一面朝被測物體固定好,如一個(gè)輪子,在輪子面上霍爾對(duì)應(yīng)位置安裝霍爾磁體。測速原理:輪子每轉(zhuǎn)一圈,磁體和霍爾元件接觸一次(其實(shí)是接近),它們接觸時(shí)帶來A端電壓的降低,由此給PLC一個(gè)脈沖信號(hào)。磁體和霍爾之間間距3至5mm。安裝時(shí)注意磁體的正反面。
好了,測轉(zhuǎn)速就先說這么多。經(jīng)過以上這些,測得的數(shù)據(jù)只是放在PLC的內(nèi)存里,我們可以在軟件里監(jiān)測PLC運(yùn)行情況,看到這些數(shù)據(jù)。是不是有點(diǎn)麻煩,有沒有更好的方法能看到這些數(shù)據(jù)?當(dāng)然,可以用LED數(shù)碼管來把數(shù)據(jù)顯示出來。
本文標(biāo)簽:用PLC測轉(zhuǎn)速介紹
* 由于無法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報(bào)酬未能及時(shí)支付,在此深表歉意,請(qǐng)《用PLC測轉(zhuǎn)速介紹》相關(guān)權(quán)利人與機(jī)電之家網(wǎng)取得聯(lián)系。
關(guān)于“用PLC測轉(zhuǎn)速介紹”的更多資訊










