五月婷网站,av先锋丝袜天堂,看全色黄大色大片免费久久怂,中国人免费观看的视频在线,亚洲国产日本,毛片96视频免费观看

| 注冊(cè)| 產(chǎn)品展廳| 收藏該商鋪

行業(yè)產(chǎn)品

當(dāng)前位置:
上海邑斯自動(dòng)化科技有限公司>>技術(shù)文章>>S7-200 SMART自由口通訊故障解析

S7-200 SMART自由口通訊故障解析

閱讀:2452        發(fā)布時(shí)間:2022-12-13


引言


自由口通訊是工業(yè)現(xiàn)場(chǎng)常見(jiàn)的一種通訊方式。由于依靠編程實(shí)現(xiàn),通訊對(duì)象通常又是一些儀表、打印機(jī)等第三方設(shè)備。因此碰到的問(wèn)題相對(duì)較多處理起來(lái)也比較棘手。通常自由口通訊的第一步,就是對(duì)S7-200 SMART 通訊端口進(jìn)行定義,如波特率、數(shù)據(jù)位、校驗(yàn)位以及停止位等。


那么這些參數(shù)的含義是什么它們的定義又會(huì)對(duì)通訊產(chǎn)生怎樣的影響?在故障診斷中如何調(diào)整?下面我們就通過(guò)幾個(gè)案例給大家做個(gè)分享。



案例一:字符接收缺失

故障現(xiàn)象


某現(xiàn)場(chǎng)使用S7-200 SMART 自由口通訊協(xié)議接收儀表數(shù)據(jù)。以常用的字符間定時(shí)器作為接收消息的結(jié)束條件。程序中規(guī)定定時(shí)器時(shí)間寄存器SMW92=5ms,傳輸7個(gè)數(shù)據(jù)位,偶校驗(yàn)。實(shí)際測(cè)試時(shí)發(fā)現(xiàn)當(dāng)通訊波特率為4800bps、9600bps、2400bps時(shí)均可以正常接收到儀表數(shù)據(jù)。但是當(dāng)波特率設(shè)置為1200bps時(shí),卻只能接收到首字節(jié)的數(shù)據(jù)。 



案例分析


1200bps波特率代表每秒可以傳輸1200bit,1秒等于1000000us,可以計(jì)算出每一個(gè)bit需要的時(shí)間約為833.33us。 


傳送的數(shù)據(jù)由多個(gè)字符組成。每個(gè)字符由1位起始位+7位數(shù)據(jù)位+1位校驗(yàn)位+1位停止位=10位構(gòu)成。 


可以計(jì)算出傳送1個(gè)字符需要的時(shí)間為8333.3us,即8.333ms,也就是說(shuō)傳輸1個(gè)字符至少需要8.3ms。 


如圖1所示。如果字符間定時(shí)器SWM92小于8.333ms,則接收到一個(gè)字符后終止,后面的字符無(wú)法接收到。 


圖片

圖1.計(jì)算發(fā)送一個(gè)字符需要的時(shí)間



圖2為字符間定時(shí)器作為接收結(jié)束條件的示意圖。接收到每個(gè)字符的停止位時(shí)重新啟動(dòng)字符間定時(shí)器,字符間的時(shí)間超出 SMW92中指*的毫秒數(shù),接收消息功能將終止。之后接收到的字符被忽略。因此會(huì)出現(xiàn)以上的故障現(xiàn)象。


解決的方法是:調(diào)整波特率或者調(diào)整定時(shí)器SMW92的時(shí)間。想必您對(duì)自由口參數(shù)以及接收條件了解之后,對(duì)以上問(wèn)題便有了深刻的理解,當(dāng)然也就更好排查。 


圖片

圖2. 使用字符間定時(shí)器作為接收結(jié)束條件



案例二:接收無(wú)法終止

故障現(xiàn)象

某現(xiàn)場(chǎng),當(dāng)從站故障或者通訊電纜損壞時(shí), 接收端CPU 的通訊端口始終處于接收狀態(tài)。并且無(wú)法發(fā)送數(shù)據(jù)。由于一直接收不到數(shù)據(jù),后續(xù)的讀寫(xiě)操作也無(wú)法進(jìn)行。


當(dāng)遇到這種情況,我們?cè)撊绾谓Y(jié)束當(dāng)前端口的接收狀態(tài),以便繼續(xù)執(zhí)行后續(xù)自由口的發(fā)送和接收操作呢?


案例分析

有兩種處理該問(wèn)題的方法: 

1. 使用任意字符檢測(cè)作為接收消息的起始條件,選擇消息定時(shí)器和其它結(jié)束條件組合作為接收消息的結(jié)束條件。 


原理如圖3所示,這種接收條件下,RCV接收指令觸發(fā)的同時(shí)開(kāi)始計(jì)時(shí),計(jì)時(shí)時(shí)間到則結(jié)束信息接收。也就是說(shuō)這種方式下,接收操作只和接收時(shí)刻和消息定時(shí)器兩個(gè)因素相關(guān)。 


當(dāng)觸發(fā)RCV指令并且到達(dá)消息定時(shí)器設(shè)定的時(shí)間后,即使沒(méi)有接收到任何數(shù)據(jù),也會(huì)結(jié)束當(dāng)前的接收狀態(tài)。反之,如果消息定時(shí)器的時(shí)間到達(dá),但是實(shí)際接收數(shù)據(jù)還沒(méi)有結(jié)束,晚于定時(shí)時(shí)間到達(dá)的信息將被忽略。

圖片

圖3 使用任意字符開(kāi)始消息接收和消息定時(shí)器終止消息接收 


2. S7-200 SMART CPU 在發(fā)送完成中斷中執(zhí)行 RCV 指令并捕捉信息接收的開(kāi)始時(shí)間。如果捕捉間隔時(shí)間超出一定時(shí)間依然未接收到信息,則認(rèn)為信息接收超時(shí),通過(guò)程序人為終止信息的接收。 


使用圖4中的BGN_ITIME指令記錄執(zhí)行RCV時(shí)的起始時(shí)間,圖5中的CAL_ITIME指令記錄執(zhí)行RCV的經(jīng)過(guò)時(shí)間,當(dāng)執(zhí)行RCV的時(shí)間超過(guò)100ms,則禁止RCV接收消息。 

圖片

圖4 使用捕捉時(shí)間間隔指令處理程序 


圖片

圖5 使用捕捉時(shí)間間隔指令處理程序 


通過(guò)以上兩種方法,就可以幫助我們解決當(dāng)從站故障或通訊電纜損壞時(shí),通訊接口一直處于接收狀態(tài)的問(wèn)題。


特別是由于某些情況下PLC發(fā)送的數(shù)據(jù),儀表并沒(méi)有接收到時(shí)。此時(shí)儀表也不會(huì)反饋數(shù)據(jù)給PLC,則PLC會(huì)一直處于等待狀態(tài)。即使此時(shí)儀表或者線路恢復(fù)正常,儀表由于沒(méi)有再次接收到PLC的數(shù)據(jù)請(qǐng)求,也不再會(huì)反饋數(shù)據(jù)的問(wèn)題。 



案例三:字符接收異常

故障現(xiàn)象

S7-200 SMART A使用自由口通訊協(xié)議發(fā)送數(shù)據(jù)給S7-200 SMART B,PLC A發(fā)送的數(shù)據(jù)為16#41和16#42,但是PLC B接收到的數(shù)據(jù)是16#5F和16#2F。接送和發(fā)送的數(shù)據(jù)不一致。故障現(xiàn)象如下圖所示: 


圖6為PLC A的程序,利用自由口發(fā)送指令XMT發(fā)送16#41、16#42。 

圖片

圖6 PLC A利用XMT指令發(fā)送16#41、16#42 


圖7為PLC B,利用RCV指令接收數(shù)據(jù),接收到2個(gè)數(shù)據(jù),分別是16#5F和16#2F,同時(shí)注意到接收信息狀態(tài)字節(jié)SMB86最*位為1,即“終止接收消息,原因可能為奇偶校驗(yàn)、組幀、中斷或超限錯(cuò)誤"。 

圖片

圖7 PLC B 利用RCV指令接收數(shù)據(jù) 


為什么會(huì)出現(xiàn)這種情況?其實(shí)最終造成該故障現(xiàn)象的原因是通訊線路接反。下面我們從數(shù)據(jù)幀的角度來(lái)分析問(wèn)題原因。 


案例分析

如圖8所示,為PLC發(fā)送的正常的數(shù)據(jù)幀結(jié)構(gòu),包括1個(gè)起始位、8個(gè)數(shù)據(jù)位、無(wú)校驗(yàn)以及1個(gè)停止位。 

圖片

圖8 發(fā)送的數(shù)據(jù)幀結(jié)構(gòu) 


根據(jù)如上的數(shù)據(jù)幀,該如何區(qū)分出哪些是數(shù)據(jù)呢? 


我們知道每一個(gè)數(shù)據(jù)幀包含多個(gè)字符,每一個(gè)字符都包含起始位、數(shù)據(jù)位、0或1個(gè)校驗(yàn)位以及1個(gè)停止位,其中起始位作為每一個(gè)字符的起始標(biāo)志,為低電平,即只有當(dāng)檢測(cè)到了起始位后,之后的數(shù)據(jù)才會(huì)被識(shí)別為數(shù)據(jù)位。 


第一個(gè)起始位之后的數(shù)據(jù)為2# 0100 0001=16# 41, 

第二個(gè)起始位之后的數(shù)據(jù)為 2# 0100 0010=16# 42, 

當(dāng)線路接反,PLC發(fā)送的數(shù)據(jù)幀為以下結(jié)構(gòu),

圖片

圖9 接收的數(shù)據(jù)幀結(jié)構(gòu) 


同樣的,我們需要找到低電平的起始位,如圖10所示, 

圖片

圖10 接收的數(shù)據(jù)幀結(jié)構(gòu) 


第一個(gè)起始位之后的數(shù)據(jù)為2# 0101 1111=16# 5F 

第二個(gè)起始位之后的數(shù)據(jù)為 2# 0010 1111=16# 2F 

我們注意到,2F之后沒(méi)有高電平,即沒(méi)有停止位,所以PLC B接收到數(shù)據(jù)后報(bào)故障是由于組幀錯(cuò)誤,即接收的到16#2F并不是一個(gè)完整的組幀結(jié)構(gòu)。 


通過(guò)以上的分析,我們了解了為什么線路接反后,會(huì)得到不一樣的數(shù)據(jù)。通過(guò)了解自由口通訊的數(shù)據(jù)幀結(jié)構(gòu)的方式,我們就能夠準(zhǔn)確的判斷出問(wèn)題背后的原因。 



總結(jié)

以上分享了幾個(gè)常見(jiàn)的通訊*題以及處理思路。 實(shí)際在工業(yè)現(xiàn)場(chǎng)中我們會(huì)遇到各種各樣的通訊方式和形形色色的通訊*題。可能是工業(yè)以太網(wǎng)的、Profinet通訊的、也有可能是MODBUS RTU通訊的……


那么如何快速準(zhǔn)確的處理項(xiàng)目上可能會(huì)遇到的各種通訊*題呢?西門(mén)子工業(yè)1847學(xué)習(xí)平臺(tái)上的《S7-200 SMART通訊小技巧》系列視頻希望能夠幫到您。在此系列視頻中,我們歸納總結(jié)了一些典型應(yīng)用場(chǎng)景下通訊*題的處理方法和注意事項(xiàng)供大家參考。初步規(guī)劃內(nèi)容如下: 


•您了解自由口通訊端口參數(shù)的定義嗎? 

•自由口通訊之XMT指令 

•自由口通訊之RCV指令 

•不使用RCV指令如何接收數(shù)據(jù)? 

•自由口通訊接收不到數(shù)據(jù)如何排查? 

•MODBUS RTU如何估算數(shù)據(jù)的刷新時(shí)間 

•PROFINET IO通訊診斷方法以及通訊讀寫(xiě)等技術(shù)內(nèi)容 


相信通過(guò)觀看此系列的視頻,您能獲得更多通訊相關(guān)的知識(shí)以及故障處理方法。以后調(diào)試項(xiàng)目時(shí)能夠遇事不驚、游刃有余。



收藏該商鋪

請(qǐng) 登錄 后再收藏

提示

您的留言已提交成功!我們將在第一時(shí)間回復(fù)您~
二維碼 意見(jiàn)反饋
在線留言