咨詢電話
ENGLISH0755-88840386咨詢電話
0755-88840386發(fā)布時(shí)間:2020-01-04 10:01:36 |來源:網(wǎng)絡(luò)轉(zhuǎn)載
電子皮帶秤二次儀表近年來發(fā)展很快, 出現(xiàn)了兩大趨勢(shì): 一是二次儀表的面板更加簡(jiǎn)化, 在面板尺寸減少的同時(shí), 顯示部分的尺寸增大, 顯示內(nèi)容更為豐富, 操作鍵減少。 二是通信功能強(qiáng)化也是智能儀表的重要標(biāo)志, 通過 RS232 , RS485 , CAN 等現(xiàn)場(chǎng)總線方式進(jìn)行多臺(tái)皮帶秤聯(lián)網(wǎng)、 集中監(jiān)控或與上位機(jī)系統(tǒng)通信。
新型電子皮帶秤二次儀表 XK3208- A1 就是應(yīng)這種趨勢(shì)而開發(fā)、 生產(chǎn)的對(duì)皮帶運(yùn)輸機(jī)所輸送物料進(jìn)行動(dòng)態(tài)連續(xù)計(jì)量的計(jì)量?jī)x表。 該儀表以增強(qiáng)型 8052 微控制器為核心, 并配有液晶屏和輕觸式 PVC 按鍵, 操作簡(jiǎn)單, 功能齊全。 通過以太網(wǎng)接口, 可以輕松實(shí)現(xiàn)多臺(tái)電子皮帶秤的聯(lián)網(wǎng),將瞬時(shí)流量、 累計(jì)流量、 皮帶速度等相關(guān)數(shù)據(jù)送入上位機(jī), 實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)稱重儀表的集中監(jiān)控管理。 本文重點(diǎn)介紹該儀表 Ethernet 接口部分的設(shè)計(jì)方法。
1 EtherNet/IP 協(xié)議介紹
在企業(yè)信息系統(tǒng)中, TCP/IP 以太網(wǎng)已經(jīng)成為事實(shí)上的標(biāo)準(zhǔn)網(wǎng)絡(luò), 將標(biāo)準(zhǔn) TCP/IP 以太網(wǎng)延伸到工業(yè)實(shí)時(shí)控制, 將很好地幫助用戶獲得更加開放集成的工業(yè)自動(dòng)化和信息化的整體解決方案。 EtherNet/IP 就是為實(shí)現(xiàn)這一目的的標(biāo)準(zhǔn)工業(yè)以太網(wǎng)技術(shù), 它是標(biāo)準(zhǔn) TCP/IP 以太網(wǎng)和通用工業(yè)協(xié)議 ( CIP ) 的結(jié)合。
EtherNet/IP 使用標(biāo)準(zhǔn) TCP/IP 以太網(wǎng), EtherNet/IP 支持在標(biāo)準(zhǔn) TCP/IP以太網(wǎng)上為提供 IT 服務(wù)所開發(fā)的任何應(yīng)用層協(xié)議, 如 HTTP , SNMPSMTP 等等, 實(shí)現(xiàn)工業(yè)自動(dòng)化和企業(yè)信息系統(tǒng)的直接集成。 比如, 運(yùn)行人員打開網(wǎng)頁(yè)瀏覽器軟件, 像訪問某個(gè)網(wǎng)站一樣, 可方便地瀏覽、 組態(tài)、 診斷并監(jiān)視 EtherNet/IP 設(shè)備。
EtherNet/IP 使用標(biāo)準(zhǔn) TCP/IP 以太網(wǎng)技術(shù), 保證了用戶在工業(yè)環(huán)境場(chǎng)合可以使用工業(yè)等級(jí)的標(biāo)準(zhǔn)以太網(wǎng)交換機(jī); 在非工業(yè)環(huán)境場(chǎng)合, 用戶還可利用已有的普通標(biāo)準(zhǔn)以太網(wǎng)交換機(jī)產(chǎn)品來擴(kuò)展 EtherNet/IP 網(wǎng)絡(luò), 這有助于實(shí)現(xiàn)更多的靈活性和更高的性價(jià)比的自動(dòng)控制系統(tǒng)。
TCP/IP 協(xié)議是一套把因特網(wǎng)上的各種系統(tǒng)互聯(lián)起來的協(xié)議組, 保證因特網(wǎng)上數(shù)據(jù)的準(zhǔn)確快速傳輸。 參考開放系統(tǒng)互聯(lián) ( OSI ) 模型, TCP/IP 通常采用一種簡(jiǎn)化的 4 層模型, 分別為: 應(yīng)用層、 傳輸層、 網(wǎng)絡(luò)層、 鏈路層 。
符合 IEEE 802.3 標(biāo)準(zhǔn)的以太網(wǎng)幀的長(zhǎng)度一般介于 64 字節(jié)與 1 518字節(jié)之間。 它們由 5 個(gè)或 6 個(gè)不同的字段組成, 分別是: 目標(biāo) MAC 地址、源 MAC 地址、 類型 / 長(zhǎng)度字段、 數(shù)據(jù)有效負(fù)載、 可選的填充字段和循環(huán)冗余校驗(yàn) ( CRC ) 字段。 另外, 當(dāng)通過以太網(wǎng)介質(zhì)發(fā)送數(shù)據(jù)包時(shí), 一個(gè) 7 字節(jié)的前導(dǎo)字段和一個(gè)字節(jié)的幀起始定界符將被附加到以太網(wǎng)數(shù)據(jù)包的開頭。 因此, 在雙絞線上的傳輸格式如下:
2 uIP 棧
uIP TCP/IP 棧是使用于低至 8 位或 16 位微處理器的嵌入式系統(tǒng)的一個(gè)極輕型的 TCP/IP 協(xié)議棧, 它實(shí)現(xiàn)了 TCP/IP 協(xié)議組的 4 個(gè)基本協(xié)議:ARP 協(xié)議、 IP 協(xié)議、 ICMP 協(xié)議和 TCP 協(xié)議。 uIPTCP/IP 棧由瑞典單片機(jī)專家 AdamDunkels 編寫, 是一個(gè)免費(fèi)的 TCP/IP 棧, 它使用 C 語(yǔ)言編程,可以方便地應(yīng)用到電子衡器中。 uIP 的實(shí)現(xiàn)目標(biāo)是保持代碼大小和儲(chǔ)存器使用量最小。 目前, uIP 代碼的大小和 RAM 的需求比其他的 TCP/IP 棧要小, 但是 uIP 與其他 TCP/IP 棧不同, 它的重發(fā)工作需要應(yīng)用程序的幫助。 其他 TCP/IP 棧 RAM 中存儲(chǔ)著傳輸數(shù)據(jù), 直到數(shù)據(jù)被確認(rèn)已成功發(fā)送才釋放 RAM 空間。 如果數(shù)據(jù)需要重傳, 堆棧在沒有通知應(yīng)用程序下監(jiān)視著重傳工作, 在等待確認(rèn)的過程期間, 數(shù)據(jù)必須緩存在 RAM 里。 uIP 利用應(yīng)用程序可以快速重新生成數(shù)據(jù)的特點(diǎn), 在等待數(shù)據(jù)確認(rèn)的過程中,RAM 中不必緩存數(shù)據(jù), 而是等確認(rèn)不成功信號(hào)到達(dá)時(shí)由應(yīng)用程序重新快速生成數(shù)據(jù)。 例如, 一個(gè) HTTP 服務(wù)器服務(wù)的大部分是 ROM 里的靜態(tài)和半靜態(tài)頁(yè), 不需要在 RAM 里緩存靜態(tài)內(nèi)容, 所以, 如果一個(gè)包丟失了,HTTP 服務(wù)器可以容易地從 ROM 里重生數(shù)據(jù), 使數(shù)據(jù)簡(jiǎn)單地從原先的位置讀回來。
3 系統(tǒng)的硬件設(shè)計(jì)
微 控 制 器 選 用 美 國(guó)某公司 的 模 擬 微 控 制 器ADuC845 , 它內(nèi)部集成有兩個(gè)獨(dú)立的 24 位 Σ - Δ ADC 、 8 路模擬量輸入通道 ( MQFP 封裝) 、 單周期 8051 兼容內(nèi)核、 62kb 片內(nèi)程序存儲(chǔ)器、 4 kb 片內(nèi) Flash/EE 數(shù)據(jù)存儲(chǔ)器、 2 kb片內(nèi) XRAM 、 12 位電壓輸出型 DAC 、雙 16 位 Σ - Δ DAC/PWM 、 片內(nèi)溫度傳感器。
以太網(wǎng)控制器選用美國(guó)某公司的ENC28J60 28 引腳獨(dú)立以太網(wǎng)控制器。 目前市場(chǎng)上大部分以太網(wǎng)控制器采用的封裝均超過 80 引腳, 而符合 IEEE802.3 協(xié)議的 ENC28J60 只有 28 引腳, 就能既提供相應(yīng)的功能, 又可以大大簡(jiǎn)化相關(guān)設(shè)計(jì), 并減少占板空間。 此外,ENC28J60 以太網(wǎng)控制器采用業(yè)界標(biāo)準(zhǔn)的 SPI TM 串行接口,只需 4 條連線即可與主控單片機(jī)連接。
ENC28J60 的硬件設(shè)計(jì)需要注意復(fù)位電路、 時(shí)鐘振蕩器、 振蕩器啟動(dòng)定時(shí)器、 時(shí)鐘輸出引腳、 變壓器、 終端和其他外部器件、 輸入 / 輸出電平等幾個(gè)方面。
ENC28J60 是一個(gè)工作電壓為 3.3 V 的器件, 它被設(shè)計(jì)為易于集成到5 V 的系統(tǒng)中。 SPI 的 CS , SCK 和 SI 輸入以及 RESET 引腳都可以承受 5V 的電壓。另一方面, 主控制器 ADuC845 是運(yùn)行在 5 V 電壓下, 當(dāng) SPI 和中斷輸入由 ENC28J60 上的 3.3 VCMOS 輸出驅(qū)動(dòng)時(shí), 它很可能不符合規(guī)范要求, 此時(shí)需要一個(gè)單向電平轉(zhuǎn)換器。 可以使用一個(gè)廉價(jià)的 74ACT125( 四三態(tài)緩沖器) , 便于系統(tǒng)集成, 并與其他器件共享 SPI 總線。
4 單片機(jī)通信系統(tǒng)的軟件設(shè)計(jì)
在使用 ENC28J60 發(fā)送和接收數(shù)據(jù)包前, 必須對(duì)器件進(jìn)行初始化設(shè)置。 通常初始化任務(wù)會(huì)在復(fù)位后立即完成, 并且不再需要更改。 初始化包括接收緩沖器的初始化、發(fā)送緩沖器的初始化、接收過濾器的初始化、MAC 初始化設(shè)置和 PHY 初始化設(shè)置。
ENC28J60 內(nèi)的 MAC 在發(fā)送時(shí)會(huì)自動(dòng)生成前導(dǎo)符和幀起始定界符。此外, MAC 可根據(jù)配置生成填充 ( 如果需要) 和 CRC 字段。 主控制器必須生成所有其他幀字段, 并將它們寫入緩沖存儲(chǔ)器, 以待發(fā)送。 ENC28J60還要求在待發(fā)送的數(shù)據(jù)包前添加一個(gè)包控制字節(jié)。
5 上位機(jī)程序設(shè)計(jì)
為了實(shí)現(xiàn)和單片機(jī)的通信, 本文用 VC++ 在用戶終端 PC 機(jī)上編程了一個(gè)數(shù)據(jù)傳輸?shù)膽?yīng)用程序。給程序的編寫如同一般的網(wǎng)絡(luò)編程, 采用Winsock 編程, 先創(chuàng)建一個(gè)套接字, 綁定 IP 地址和端口號(hào), 本文使用 UDP數(shù)據(jù)報(bào), 與嵌入 uIP TCP/IP 棧的單片機(jī)系統(tǒng)的套接字建立連接。 上位機(jī)先調(diào)用 Send ( ) 函數(shù)發(fā)出查詢某一參數(shù)命令, 當(dāng)有網(wǎng)絡(luò)數(shù)據(jù)到達(dá)時(shí),VC++ 響應(yīng) Receive ( ) 消息, 讀取數(shù)據(jù)并處理。
6 結(jié)語(yǔ)
在電子皮帶秤二次儀表中添加了以太網(wǎng)接口, 可實(shí)現(xiàn)電子皮帶秤和上位機(jī)的通信, 可以使工程技術(shù)人員通過網(wǎng)頁(yè)瀏覽器了解電子皮帶秤的運(yùn)行情況, 其具有傳輸速度快、 使用方便等優(yōu)點(diǎn), 有著廣泛的應(yīng)用前景。
參考文獻(xiàn)
[ 1 ] 方原柏 . 電子皮帶秤二次儀表的發(fā)展 [ J ] . 衡器, 2004 ( 4 ) : 1- 4.
本文源于網(wǎng)絡(luò)轉(zhuǎn)載,如有侵權(quán),請(qǐng)聯(lián)系刪除