<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 利用PROFIBUS協(xié)議進(jìn)行網(wǎng)絡(luò)通信

          利用PROFIBUS協(xié)議進(jìn)行網(wǎng)絡(luò)通信

          作者: 時(shí)間:2016-12-19 來源:網(wǎng)絡(luò) 收藏
          PROFIBUS是世界上第一個(gè)開放式現(xiàn)場(chǎng)總線標(biāo)準(zhǔn),目前技術(shù)已成熟,其應(yīng)用領(lǐng)域覆蓋了從機(jī)械加工、過程控制、電力、交通到樓宇自動(dòng)化的各個(gè)領(lǐng)域。PROFIBUS于1995年成為歐洲工業(yè)標(biāo)準(zhǔn)(EN50170),1999年成為國(guó)際標(biāo)準(zhǔn)(1EC61158-3)。
          在S7-200系列PLC的CPU中,CPU22X都可以通過增加EM277PROFIBUS-DP擴(kuò)展模塊的方法支持PROFIBUSDP網(wǎng)絡(luò)協(xié)議。最高傳輸速率可達(dá)12Mbit/s。采用PROFIBUS的系統(tǒng),對(duì)于不同廠家所生產(chǎn)的設(shè)備不需要對(duì)接口進(jìn)行特別的處理和轉(zhuǎn)換,就可以通信。PROFIBUS連接的系統(tǒng)由主站和從站組成,主站能夠控制總線,當(dāng)主站獲得總線控制權(quán)后,可以主動(dòng)發(fā)送信息。從站通常為傳感器、執(zhí)行器、驅(qū)動(dòng)器和變送器。它們可以接收信號(hào)并給予響應(yīng),但沒有控制總線的權(quán)力。當(dāng)主站發(fā)出請(qǐng)求時(shí),從站回送給主站相應(yīng)的信息。PRORFIBUS除了支持主/從模式,還支持多主/多從的模式。對(duì)于多主站的模式,在主站之間按令牌傳遞順序決定對(duì)總線的控制權(quán)。取得控制權(quán)的主站,可以向從站發(fā)送,獲取信息,實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的通信。
          西門子S7通過PROFIBUS現(xiàn)場(chǎng)總線構(gòu)成的系統(tǒng),其基本特點(diǎn)如下:
          (1)PLC、I/O模板、智能儀表及設(shè)備可通過現(xiàn)場(chǎng)總線連接,特別是同廠家的產(chǎn)品提供通用的功能模塊管理規(guī)范,通用性強(qiáng),控制效果好。
          (2)I/O模板安裝在現(xiàn)場(chǎng)設(shè)備(傳感器、執(zhí)行器等)附近,結(jié)構(gòu)合理。
          (3)信號(hào)就地處理,在一定范圍內(nèi)可實(shí)現(xiàn)互操作。
          (4)編程仍采用組態(tài)方式,設(shè)有統(tǒng)一的設(shè)備描述語言。
          (5)傳輸速率可在9.6kb/s~12Mb/s間選擇。
          (6)傳輸介質(zhì)可以用金屬雙絞線或光纖。

          1.PROFIBUS的組成

          PROFIBUS由三個(gè)相互兼容的部分組成,即PROFIBUS-FMS,PROFIBUS-DP及
          PROFIBUS-PA。
          (1)PROFIBUS-DP(DistributedPeriphery分布I/O系統(tǒng))
          PROFIBUS-DP是一種優(yōu)化模板,是制造業(yè)自動(dòng)化主要應(yīng)用的協(xié)議內(nèi)容,是滿足用戶快速通信的最佳方案,每秒可傳輸12兆位。掃描1000個(gè)I/O點(diǎn)的時(shí)間少于lms。它可以用于設(shè)備級(jí)的高速數(shù)據(jù)傳輸,遠(yuǎn)程I/O系統(tǒng)尤為適用。位于這一級(jí)的PLC或工業(yè)控制計(jì)算機(jī)可以通過PROFIBUSEDP同分散的現(xiàn)場(chǎng)設(shè)備進(jìn)行通信。
          (2)PROFIBUS-PA(ProcessAutomation過程自動(dòng)化)
          是為PA主要用于過程自動(dòng)化的信號(hào)采集及控制,它是專為過程自動(dòng)化所設(shè)計(jì)的協(xié)議,可用于安全性要求較高的場(chǎng)合及總線集中供電的站點(diǎn)。
          (3)PROFIBUS-FMS(Fieldbus Message Specification現(xiàn)場(chǎng)總線信息規(guī)范)
          FMS是為現(xiàn)場(chǎng)的通用通信功能所設(shè)計(jì),主要用于非控制信息的傳輸,傳輸速度中等,可以用于車間級(jí)監(jiān)控網(wǎng)絡(luò)。FMS提供了大量的通信服務(wù),用以完成以中等級(jí)傳輸速度進(jìn)行的循環(huán)和非循環(huán)的通信服務(wù)。對(duì)于FMS而言,它考慮的主要是系統(tǒng)功能而不是系統(tǒng)響應(yīng)時(shí)間,應(yīng)用過程中通常要求的是隨機(jī)的信息交換,如改變?cè)O(shè)定參數(shù)。FMS服務(wù)向用戶提供了廣泛的應(yīng)用范圍和更大的靈活性,通常用于大范圍、復(fù)雜的通信系統(tǒng)。

          2.PROFIBUS協(xié)議結(jié)構(gòu)

          PROFIBUS協(xié)議以ISO/OSI參考模型為基礎(chǔ)。第一層為物理層,定義了物理的傳輸特性;第二層為數(shù)據(jù)鏈路層;第三層至第六層PROFIBUS未使用;第七層為應(yīng)用層,定義了應(yīng)用的功能。PROFIBUS-DP是高效、快速的通信協(xié)議,它使用了第一層、第二層及用戶接口,第三~七層未使用。這樣簡(jiǎn)化了的結(jié)構(gòu)確保了DP的高速的數(shù)據(jù)傳輸。

          3.傳輸技術(shù)

          PROFIBUS對(duì)于不同的傳輸技術(shù)定義了惟一的介質(zhì)存取協(xié)議。
          (1)RS-485
          RS485是PROFIBUS使用最頻繁的傳輸技術(shù),具體論述參見前面有關(guān)章節(jié)。
          (2)IECll58-2
          根據(jù)IECll58-2在過程自動(dòng)化中使用固定波特率31.25kb/s的同步傳輸,它可以滿足化工和石化工業(yè)對(duì)安全的要求,采用雙線技術(shù)通過總線供電,這樣PROFIBUS就可以用于危險(xiǎn)區(qū)域了。
          (3)光纖
          電磁干擾強(qiáng)度很高的環(huán)境和高速、遠(yuǎn)距離傳輸數(shù)據(jù)時(shí),PROFIBUS可使用光纖傳輸技術(shù)。使用光纖傳輸?shù)腜ROFIBUS總線段可以設(shè)計(jì)成星型或環(huán)型結(jié)構(gòu)。現(xiàn)在在市面上已經(jīng)有RS-485傳輸鏈接與光纖傳輸鏈接之間的耦合器,這樣就實(shí)現(xiàn)了系統(tǒng)內(nèi)RS-485和光纖傳輸之間的轉(zhuǎn)換。
          (4)PROFIBUS介質(zhì)存取協(xié)議
          PROFIBUS通信規(guī)程采用了統(tǒng)一的介質(zhì)存取協(xié)議,此協(xié)議由OSI參考模型的第二層來實(shí)現(xiàn)。在PROFIBUS協(xié)議設(shè)計(jì)時(shí)充分考慮了滿足介質(zhì)存取控制的兩個(gè)要求,即:在主站間通信時(shí),必須保證在分配的時(shí)間間隔內(nèi),每個(gè)主站都有足夠的時(shí)間來完成它的通信任務(wù),在PLC與從站(PLC或其他設(shè)備)間通信時(shí),必須快速、簡(jiǎn)捷地完成循環(huán),進(jìn)行實(shí)時(shí)的數(shù)據(jù)傳輸。為此,PROFIBUS提供了兩種基本的介質(zhì)存取控制:令牌傳遞方式和主/從方式。
          令牌傳遞方式可以保證每個(gè)主站在事先規(guī)定的時(shí)間間隔內(nèi)都能獲得總線的控制權(quán)。令牌是一種特殊的報(bào)文,它在主站之間傳遞著總線控制權(quán),每個(gè)主站均能按次序獲得一次令牌,傳遞的次序是按地址升序進(jìn)行的。
          主/從方式允許主站在獲得總線控制權(quán)時(shí),可以與從站通信,每發(fā)送或獲得信息。
          主站要發(fā)出信息,必須持有令牌。假設(shè)有一個(gè)由3個(gè)主站和7個(gè)從站構(gòu)成的PROFIBUS系統(tǒng)。3個(gè)主站構(gòu)成了一個(gè)令牌傳遞的邏輯環(huán),在這個(gè)環(huán)中,令牌按照系統(tǒng)預(yù)先確定的地址升序從一個(gè)主站傳遞給下一個(gè)主站。當(dāng)一個(gè)主站得到了令牌后,它就能在一定的時(shí)間間隔內(nèi)執(zhí)行該主站的任務(wù),可以按照主/從關(guān)系與所有從站通信,也可以按照主/主關(guān)系與所有主站通信。在總線系統(tǒng)建立的初期階段,主站的介質(zhì)存取控制(MAC)的任務(wù)是決定總線上的站點(diǎn)分配并建立令牌邏輯環(huán)。在總線的運(yùn)行期間,損壞的或斷開的主站必須從環(huán)中撤除,新接入的主站必須加入邏輯環(huán)。MAC的其他任務(wù)是檢測(cè)傳輸介質(zhì)和收發(fā)器是否損壞,檢查站點(diǎn)地址是否出錯(cuò),以及令牌是否丟失或有多個(gè)令牌。
          PROFIBUS的第二層按照國(guó)際標(biāo)準(zhǔn)IEC870-5-1的規(guī)定,通過使用特殊的起始位和結(jié)束位、無間距字節(jié)異步傳輸及奇偶校驗(yàn)來保證傳輸數(shù)據(jù)的安全。PROFIBUS第二層按照非連接的模式操作,除了提供點(diǎn)對(duì)點(diǎn)通信功能外,還提供多點(diǎn)通信的功能,即廣播通信和有選擇的廣播、組播。所謂廣播通信,即主站向所有站點(diǎn)(主站和從站)發(fā)送信息,不要求回答。所謂有選擇的廣播、組播是指主站向一組站點(diǎn)(從站)。
          5.S7-200CPU接入PROFIBUS網(wǎng)絡(luò)
          S7-200CPU必須通過PROFIBUS-DP模塊EM277連接到網(wǎng)絡(luò),不能直接接入PROFIBUS網(wǎng)絡(luò)進(jìn)行通信。EM277經(jīng)過串行I/O總線連接到S7-200CPU。PROFIBUS網(wǎng)絡(luò)經(jīng)過其DP通信端口,連接到EM277模塊。這個(gè)端口支持9600b/s~12Mb/s之間的任何傳輸速率。EM277模塊在PROFIBUS網(wǎng)絡(luò)中只能作為PROFIBUS從站出現(xiàn)。作為DP從站,EM277模塊接受從主站來的多種不同的I/O配置,向主站發(fā)送和接收不同數(shù)量的數(shù)據(jù)。這種特性使用戶能修改所傳輸?shù)臄?shù)據(jù)量,以滿足實(shí)際應(yīng)用的需要。與許多DP站不同的是,EM277模塊不僅僅傳輸FO數(shù)據(jù)。EM277能讀寫S7-200CPU中定義的變量數(shù)據(jù)塊。這樣,使用戶能與主站交換任何類型的數(shù)據(jù)。通信時(shí),首先將數(shù)據(jù)移到S7-200CPU中的變量存儲(chǔ)區(qū),就可將輸入、計(jì)數(shù)值、定時(shí)器值或其他計(jì)算值傳輸?shù)街髡?。類似地,從主站來的?shù)據(jù)存儲(chǔ)在S7-200CPU中的變量存儲(chǔ)區(qū)內(nèi),進(jìn)而可移到其他數(shù)據(jù)區(qū)。
          EM277模塊的DP端口可連接到網(wǎng)絡(luò)上的一個(gè)DP主站上,仍能作為一個(gè)MPI從站與同一網(wǎng)絡(luò)上如SIMATIC編程器或S7-300/S7-400CPU等其他主站進(jìn)行通信。為了將EM277作為一個(gè)DP從站使用,用戶必須設(shè)定與主站組態(tài)中的地址相匹配的DP端口地址。從站地址是使用EM277模塊上的旋轉(zhuǎn)開關(guān)設(shè)定的。在變動(dòng)旋轉(zhuǎn)開關(guān)之后,用戶必須重新起動(dòng)CPU電源,以便使新的從站地址起作用。主站通過將其輸出區(qū)來的信息發(fā)送給從站的輸出緩沖區(qū)(稱為“接收信箱”),與每個(gè)從站交換數(shù)據(jù)。從站將其輸入緩沖區(qū)(稱為發(fā)送信箱)的數(shù)據(jù)返回給主站的輸入?yún)^(qū),以響應(yīng)從主站來的信息。
          EM277可用DP主站組態(tài),以接收從主站來的輸出數(shù)據(jù),并將輸入數(shù)據(jù)返回給主站。輸出和輸入數(shù)據(jù)緩沖區(qū)駐留在S7-200CPU的變量存儲(chǔ)區(qū)(V存儲(chǔ)區(qū))內(nèi)。當(dāng)用戶組態(tài)DP主站時(shí),應(yīng)定義V存儲(chǔ)區(qū)內(nèi)的字節(jié)位置。從這個(gè)位置開始為輸出數(shù)據(jù)緩沖區(qū),它應(yīng)作為EM277的參數(shù)賦值信息的一個(gè)部分。用戶也要定義FO配置,它是寫入到S7-200CPU的輸出數(shù)據(jù)總量和從S7-200CPU返回的輸入數(shù)據(jù)總量。EM277從FO配置確定輸入和輸入緩沖區(qū)的大小。DP主站將參數(shù)賦值和I/O配置信息寫入到EM277模塊V存儲(chǔ)器地址和輸入及輸出數(shù)據(jù)長(zhǎng)度傳輸給S7-200CPU。
          輸入和輸出緩沖區(qū)的地址可配置在S7-200CPU的V存儲(chǔ)區(qū)中任何位置。輸入和輸出緩沖區(qū)器的默認(rèn)地址為VB0。輸入和輸出緩沖地址是主站寫入S7—200CPU賦值參數(shù)的一部分。用戶必須組態(tài)主站以識(shí)別所有的從站及將需要的參數(shù)和I/O配置寫入每一個(gè)從站。
          一旦EM277模塊已用一個(gè)DP主站成功地進(jìn)行了組態(tài),EM277和DP主站就進(jìn)入數(shù)據(jù)交換模式。在數(shù)據(jù)交換模式中,主站將輸出數(shù)據(jù)寫入到EM277模塊,然后,EM277模塊響應(yīng)最新的S7-200CPU輸入數(shù)據(jù)。EM277模塊不斷地更新從S7-200CPU來的輸入,以便向DP主站提供最新的輸入數(shù)據(jù)。然后,該模塊將輸出數(shù)據(jù)傳輸給S7-200CPU。從主站來的輸出數(shù)據(jù)放在V存儲(chǔ)區(qū)中(輸出緩沖區(qū))由某地址開始的區(qū)域內(nèi),而該地址是在初始化期間,由DP主站提供的。傳輸?shù)街髡镜妮斎霐?shù)據(jù)取自V存儲(chǔ)區(qū)存儲(chǔ)單元(輸入緩沖區(qū)),其地址是緊隨輸出緩沖區(qū)的。
          在建立S7-200CPU用戶程序時(shí),必須知道V存儲(chǔ)區(qū)中的數(shù)據(jù)緩沖區(qū)的開始地址和緩沖區(qū)大小。從主站來的輸出數(shù)據(jù)必須通過S7—200CPU中的用戶程序,從輸出緩沖區(qū)轉(zhuǎn)移到其他所用的數(shù)據(jù)區(qū)。類似地,傳輸?shù)街髡镜妮斎霐?shù)據(jù)也必須通過用戶程序從各種數(shù)據(jù)區(qū)轉(zhuǎn)移到輸入緩沖區(qū),進(jìn)而發(fā)送到DP主站。
          從DP主站來的輸出數(shù)據(jù),在執(zhí)行程序掃描后立即放置在V存儲(chǔ)區(qū)內(nèi)。輸入數(shù)據(jù)(傳輸?shù)街髡?從V存儲(chǔ)區(qū)復(fù)制到EM277中,以便同時(shí)傳輸?shù)街髡?。?dāng)主站提供新的數(shù)據(jù)時(shí),則從主站來的輸出數(shù)據(jù)才寫入到V存儲(chǔ)區(qū)內(nèi)。在下次與主站交換數(shù)據(jù)時(shí),將送到主站的輸入數(shù)據(jù)發(fā)送到主站。
          SMB200~SMB249提供有關(guān)EM277從站模塊的狀態(tài)信息(如果它是I/O鏈中的第一個(gè)智能模塊)。如果EM277是I/O鏈中的第二個(gè)智能模塊,那么,EM277的狀態(tài)是從SMB250一SMB299獲得的。如果DP尚未建立與主站的通信,那么,這些SM存儲(chǔ)單元顯示默認(rèn)值。當(dāng)主站己將參數(shù)和I/O組態(tài)寫入到EM277模塊后,這些SM存儲(chǔ)單元顯示DP主站的組態(tài)集。用戶應(yīng)檢查SMB224,并確保在使用SMB225~SMB229或V存儲(chǔ)區(qū)中的信息之前,EM277己處于與主站交換數(shù)據(jù)的工作模式。


          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();