RS485總線的3964(R)協(xié)議設(shè)計(jì)
摘要:3964(R)通訊協(xié)議是一種基于RS422總線的通訊協(xié)議,本文通過對(duì)其通訊流程的分析和調(diào)整,設(shè)計(jì)了基于RS485總線運(yùn)行的3964(R)通訊協(xié)議及其完成通訊程序,并在某型防爆產(chǎn)品中應(yīng)用了該協(xié)議,根據(jù)該產(chǎn)品的試驗(yàn)情況,該協(xié)議具有較好的實(shí)用性和可靠性,可作為本質(zhì)安全型設(shè)備的通訊協(xié)議。
本文引用地址:http://m.butianyuan.cn/article/145040.htm引言
3964(R)協(xié)議是西門子為進(jìn)行可靠點(diǎn)對(duì)點(diǎn)數(shù)據(jù)通訊(PtP)而設(shè)計(jì)的標(biāo)準(zhǔn)化開放協(xié)議。對(duì)照標(biāo)準(zhǔn)ISO參考模型,3964(R)協(xié)議包含了第一層物理層和第二層數(shù)據(jù)鏈路層的主要內(nèi)容。與ASCII協(xié)議相比,3964(R)協(xié)議中,增加了起始位、停止位、校驗(yàn)機(jī)制和重發(fā)機(jī)制,為數(shù)據(jù)和鏈接的安全、可用提供了較好的保障。而與較為復(fù)雜的RK512協(xié)議相比,在簡單PtP應(yīng)用中,取消了報(bào)文幀標(biāo)題、數(shù)據(jù)來源等內(nèi)容,減少了對(duì)報(bào)文的區(qū)分,簡化了通訊的過程,提高了通訊的效率。因此,該協(xié)議特別適合于通訊內(nèi)容較為簡單但有一定可靠性要求的場(chǎng)合,也非常適宜自行開發(fā)的第三方外圍設(shè)備與西門子系列PLC進(jìn)行通訊的情況使用。然而,在西門子的產(chǎn)品線中,支持3964(R)的產(chǎn)品如CP340通訊模塊、CP341通訊模塊、CPU 313-2PtP、CPU 314C-2PtP等,均僅可采用RS422總線,以全雙工方式運(yùn)行該協(xié)議。本設(shè)計(jì)的重點(diǎn)是利用RS485總線,以半雙工方式運(yùn)行該協(xié)議,在減少電纜芯數(shù)的情況下(全雙工的RS422總線為4芯、半雙工的RS485為2芯),實(shí)現(xiàn)3964(R)通訊協(xié)議。
3964(R)協(xié)議
3964(R)協(xié)議的控制字
3964(R)協(xié)議是通過將對(duì)通訊協(xié)議的控制字添加到用戶數(shù)據(jù)中,從而解決報(bào)文的起止位置確定、鏈路完整性判斷、超時(shí)判斷等問題的??刂谱旨葮?biāo)示了報(bào)文的起始位置,更是通訊伙伴“握手”的信號(hào)。通訊雙方均是通過收發(fā)控制字表明自己的狀態(tài)和對(duì)數(shù)據(jù)的接收狀態(tài)的。3964(R)協(xié)議的控制字如表1所示?! ?/p>
3964(R)協(xié)議的報(bào)文幀
3964(R)通訊協(xié)議的報(bào)文數(shù)據(jù)以STX開始,塊校驗(yàn)字符(BCC)結(jié)束,通過校驗(yàn)增強(qiáng)數(shù)據(jù)傳輸?shù)耐暾院驼_性,報(bào)文結(jié)構(gòu)如圖1所示。
3964(R)通訊協(xié)議中的塊校驗(yàn)字符(BCC)是該幀正文數(shù)據(jù)中所有字符及報(bào)文幀結(jié)束標(biāo)志(DLE和ETX)的“異或”運(yùn)算結(jié)果。3964(R)協(xié)議對(duì)于正文字符是完全透明的,即任何字符都可以包含在正文中,為了避免接收方將正文中的字符1003H(DLE和ETX)誤認(rèn)為是報(bào)文結(jié)束標(biāo)志,在正文中出現(xiàn)10H時(shí),需將10H重發(fā)一遍,即變?yōu)?010H。接收方在處理時(shí)也需將其自動(dòng)處理為10H。
西門子plc相關(guān)文章:西門子plc視頻教程
評(píng)論