時(shí)間:2018-04-17 11:02:48來(lái)源:網(wǎng)絡(luò)轉(zhuǎn)載
在前面的文章中與大家分享了自由口通信中的發(fā)送功能,那么進(jìn)行就跟大家聊聊自由口通信中的接收功能,自由口通信中的難點(diǎn)就是在于接收功能的使用,當(dāng)PLC通過(guò)通信端口把數(shù)據(jù)發(fā)送給下位設(shè)備后,下位設(shè)備會(huì)根據(jù)PLC發(fā)送過(guò)去的信息內(nèi)容回傳相應(yīng)的數(shù)據(jù)給PLC,這時(shí)候PLC就需要使用接收功能進(jìn)行數(shù)據(jù)的接收,S7-200系列PLC提供了一條接收指令(RCV)用于接收下位設(shè)備返回來(lái)的信息。指令格式如下所示:
當(dāng)PLC接收完下位設(shè)備回傳回來(lái)的數(shù)據(jù)后,PLC會(huì)產(chǎn)生相應(yīng)的中斷事件來(lái)告知編程人員信息接收完成,此時(shí)可以編寫相應(yīng)的程序提取有效數(shù)據(jù),并對(duì)這些有效數(shù)據(jù)進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換成可讀性的數(shù)據(jù)。S7-200系列PLC提供了中斷事件23和中斷事件24分別作為端口0和端口1的接收完成中斷事件號(hào)。
在PLC的信息發(fā)送過(guò)程中,PLC是主動(dòng)方,會(huì)根據(jù)需要發(fā)送的數(shù)據(jù)個(gè)數(shù)進(jìn)行數(shù)據(jù)的發(fā)送,當(dāng)發(fā)送完成后,PLC會(huì)自動(dòng)產(chǎn)生相應(yīng)發(fā)送完成中斷,而對(duì)于接收來(lái)講,PLC是被動(dòng)方,只負(fù)責(zé)數(shù)據(jù)的接收,當(dāng)PLC的端口使能了接收功能后,PLC處于等待信息的接收狀態(tài),有數(shù)據(jù)過(guò)來(lái)就接收,但是接收的數(shù)據(jù)是否是有效的數(shù)據(jù),什么時(shí)候接收完了PLC并不知道,此時(shí)就要求我們編程人員需要設(shè)置好消息的起始和接收條件,當(dāng)起始條滿足了,PLC把接收到的數(shù)據(jù)放入到接收緩沖區(qū)中,當(dāng)滿足了結(jié)束條件,PLC關(guān)斷接收功能,并產(chǎn)生接收完成中斷。
用于判斷消息的的起始和結(jié)束條件有很多種方式,但用的比較多可能就以下幾種方式:
今天我們先聊一聊通過(guò)起始符作為信息的起始和通過(guò)結(jié)束符作為信息的結(jié)束判斷的過(guò)程及程序的設(shè)置,S7-200系列的PLC提供了兩個(gè)系統(tǒng)存儲(chǔ)區(qū)用于存儲(chǔ)起始符(SMB88)和結(jié)束符(SMB89)(這里以端口0為例說(shuō)明),因此若需要使用起始符和結(jié)束符做為消息的起始和結(jié)束的的判斷,則需要把起始符和結(jié)束符分別放到SMB88和SMB89中。
當(dāng)PLC在接收數(shù)據(jù)的過(guò)程中,會(huì)對(duì)接收的數(shù)據(jù)與起始符進(jìn)行對(duì)比,如果與起始符不相等,這說(shuō)明不是有效性的數(shù)據(jù),不放入接收緩沖器中,會(huì)把接收到的數(shù)據(jù)丟棄,重新接收,若接收到的數(shù)據(jù)與起始符相等,則PLC會(huì)把接收到的數(shù)據(jù)放到接收緩沖區(qū)中,同時(shí)記錄接收字符個(gè)數(shù)的存儲(chǔ)器的值加1。
當(dāng)起始符滿足后,PLC會(huì)對(duì)接收到的字符與結(jié)束符進(jìn)行對(duì)比,如果與結(jié)束符不相等,則繼續(xù)數(shù)據(jù)的接收,如果接收到的數(shù)據(jù)與結(jié)束符相等,則關(guān)斷接收功能,并產(chǎn)生接收完成中斷。因此使用起始符和結(jié)束符來(lái)講,大部分使用的是一些特定的字符。
若使用起始符和結(jié)束符作為消息的起始和結(jié)束的判斷時(shí),需要先設(shè)置好接受功能的控制字節(jié)(SMB87)告知PLC為起始符和結(jié)束符判斷消息的起始和結(jié)束。SMB87的個(gè)格式內(nèi)容如下圖所示:
標(biāo)簽:
中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.siyutn.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。
產(chǎn)品新聞
更多>2025-06-09
從外觀到內(nèi)核的「超進(jìn)化」!NK550M五軸...
2025-06-06
2025-05-19
2025-04-30
性能躍升20%!維宏NK300CX Plus數(shù)控系統(tǒng)...
2025-04-11