亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于STM32F107嵌入式控制器的工業(yè)以太網(wǎng)接口設(shè)計

        2013-07-05 05:33:44陳基偉項軍偉
        關(guān)鍵詞:客戶機以太網(wǎng)客戶端

        陳基偉,項軍偉,張 耀

        (1.浙江機電職業(yè)技術(shù)學(xué)院,浙江 杭州 310053;2.浙江百納橡塑設(shè)備有限公司,浙江 仙居 317300)

        0 引言

        當(dāng)今社會,采用TCP/IP協(xié)議的以太網(wǎng),以其高的通信效率和高的通信可靠性,實現(xiàn)了設(shè)備間的互聯(lián),使成千上萬的人同時在互聯(lián)網(wǎng)交流,互聯(lián)網(wǎng)應(yīng)用已經(jīng)遍及全球。結(jié)合工業(yè)的需求推出的工業(yè)以太網(wǎng),同樣促進(jìn)了互聯(lián)網(wǎng)技術(shù)在工業(yè)領(lǐng)域應(yīng)用。工業(yè)以太網(wǎng)上的終端設(shè)備通過組網(wǎng),可以實現(xiàn)工業(yè)現(xiàn)場信息的傳輸控制,也可以與互聯(lián)網(wǎng)上的設(shè)備間的互聯(lián),實現(xiàn)遠(yuǎn)程數(shù)據(jù)監(jiān)控,工業(yè)以太網(wǎng)技術(shù)已成為當(dāng)前工業(yè)控制的一個熱點[1]。在常見工業(yè)應(yīng)用組網(wǎng)方式中,基于串口協(xié)議如RS-485、RS232開發(fā)的設(shè)備,在物理接口與協(xié)議與以太網(wǎng)無縫兼容,需要通過專用嵌入式網(wǎng)關(guān)才能接入以太網(wǎng)。基于專用、封閉型工業(yè)網(wǎng)絡(luò),雖具備效率高的特點,但其網(wǎng)絡(luò)規(guī)范是由各公司自行研制,往往是針對某一特定應(yīng)用領(lǐng)域,在相互連接及推廣與維護(hù)等方面存在諸多不便,也需要專用網(wǎng)關(guān)才能接入以太網(wǎng)[2]。而基于工業(yè)以太網(wǎng)具有控制開發(fā)的設(shè)備可以實現(xiàn)與企業(yè)Internet/Intranet實現(xiàn)無縫連接,實現(xiàn)工業(yè)現(xiàn)場遠(yuǎn)程監(jiān)控。

        為了實現(xiàn)ARM嵌入式控制器接入工業(yè)以太網(wǎng),本成果使用STM32F107與DP83848CVV完成客戶端網(wǎng)絡(luò)硬件接口的設(shè)計開發(fā);在Keil MDK及RL-ARM環(huán)境下開發(fā)客戶端應(yīng)用軟件采用;計算機服務(wù)程序采用WinSocket編程。本成果已在工業(yè)捏煉機控制器得到成功應(yīng)用,并批量生產(chǎn)。

        1 客戶端物理層接口設(shè)計

        STM32F107是意法半導(dǎo)體推出的一款互連型(Connectivity)微控制器,集成了多種工業(yè)標(biāo)準(zhǔn)接口,與不同型號產(chǎn)品在引腳和軟件上具有兼容性。外設(shè)包括10個定時器、兩個12位1-Msample/s AD、兩個12位DA、兩個I2C接口、五個USART接口和三個SPI端口和IIS, 另外STM32F107擁有全速USB(OTG)接口,兩路CAN2.0B接口,以及以太網(wǎng)10/100 MAC模塊。其中0/100 MC模塊需要兼容的網(wǎng)卡接口芯片如DP83848CVV才可以完成以太網(wǎng)應(yīng)用。

        圖1 STM32F107與DP83848CVV接口

        STM32F107通過MII接口與DP83848CVV完成數(shù)據(jù)交換。STM32F107與DP83848CVV接口電路[3]如圖1所示。

        2 客戶端軟件設(shè)計

        客戶端應(yīng)用軟件在Keil MDK及RL-ARM環(huán)境下開發(fā)[4]。對DP83848CVV接口操作部分具體實現(xiàn)代碼可以采用隨機軟件ETH_STM32x.c文件。在該文件包含了對DP83848CVV操作的底層接口函數(shù)。主要的接口函數(shù)如下:

        void init_ethernet(void); //網(wǎng)卡芯片初始化函數(shù)

        void send_frame(OS_FRAME*frame); //RL-ARM實時庫將待發(fā)送數(shù)據(jù)包

        //送網(wǎng)卡芯片發(fā)送

        put_in_queue(frame);//調(diào)用RL-ARM實時庫函數(shù)對接收

        //到 TCP數(shù)據(jù)包進(jìn)行處理

        客戶端登錄服務(wù)器流程如圖2所示。客戶端登錄服務(wù)器過程的具體代碼(略)。

        圖2 客戶端登錄服務(wù)器流程

        3 服務(wù)器軟件設(shè)計

        服務(wù)器端采用WinSocket編程[5],在Vc6.0環(huán)境調(diào)試通過。在MFC下創(chuàng)建一個基于單文檔模板的應(yīng)用工程,做好工程后,在構(gòu)造函數(shù)中完成m_srvrSocket與自定義的網(wǎng)絡(luò)事件的聯(lián)系,將其設(shè)置為監(jiān)聽模式,等待客戶機TCP連接。當(dāng)客戶機聯(lián)機或傳送數(shù)據(jù)等網(wǎng)絡(luò)事件發(fā)生時,調(diào)用MyNETMessage消息處理函數(shù),在該函數(shù)中進(jìn)行各類網(wǎng)絡(luò)事件的處理。在單文檔模板添加套接字主要的步驟有以下幾步:

        在MainFrm.h定義消息事件

        #define WM_MY_NETMESSAGE WM_USER+999

        在MainFrm.ccp添加消息映射

        BEGIN_MESSAGE_MAP(CMainFrame,CMDIFrameWnd)

        ON_MESSAGE(WM_MY_NETMESSAGE,MyNETMessage) //為消息處理函數(shù)//添加入口

        END_MESSAGE_MAP()

        在構(gòu)造函數(shù)中,完成設(shè)置偵聽端口,并進(jìn)入偵聽。

        CMainFrame::CMainFrame(){

        interr;

        WORD wVer;

        WSADATA wsaData;

        wVer=MAKEWORD(2,0);

        err=WSAStartup(wVer,&wsaData);//判斷 Windows socket dll版本

        if(err!=0) {

        MessageBox("系統(tǒng)Sockets版本錯誤!");

        return;

        }

        m_srvrSocket.SetMessagePara(this,WM_MY_NETMESSAGE);//設(shè)置消息事件

        m_srvrSocket.Create(1300,SOCK_STREAM,FD_ACCEPT);//以TCP連接方

        //式創(chuàng)建套接字,設(shè)置偵聽端口為1300

        m_srvrSocket.Listen(num);//開始偵聽

        }

        在消息處理函數(shù)完成各類網(wǎng)絡(luò)事件處理。

        LRESULT CMainFrame::MyNETMessage( WPARAM wParam,LPARAM lParam){

        CString str;

        switch(wParam){

        case MYNET_CLIENTREAD:

        break;

        case MYNET_CLIENTSEND:

        break;

        case MYNET_CONNECT:

        break;

        case MYNET_SERVERCLOSE:

        break;

        case MYNET_SERVERREAD://接收到客戶端發(fā)送的數(shù)據(jù)…… //進(jìn)行數(shù)據(jù)處理

        break;

        case MYNET_SERVERSEND:

        break;

        case MYNET_ACCEPT://客戶端連接到服務(wù)器

        str="Set_time";

        str+=CTime::GetCurrentTime().Format("%Y%m%d%H%M%S");

        m_srvrSocket.SendStr(str);//聯(lián)機成功后發(fā)送主機時間到客戶機

        break;

        case MYNET_CLIENTCLOSE://客戶機已關(guān)閉break;

        }

        return TRUE;

        }

        4 實際應(yīng)用

        (1)可靠性。本成果已在工業(yè)捏煉機控制器得到成功應(yīng)用,并批量生產(chǎn)。捏煉機是橡膠煉膠的關(guān)鍵設(shè)備。捏煉機的工作原料主要為生膠、大料、炭黑、油、促進(jìn)劑、硫化劑等,煉膠時,工作現(xiàn)場粉塵多,環(huán)境條件無法滿足計算機工作要求。應(yīng)用中,數(shù)據(jù)傳輸?shù)目煽啃杂蒚CP網(wǎng)絡(luò)協(xié)議保證,本方案主要考慮網(wǎng)絡(luò)設(shè)備的工作可靠性。本方案采用工業(yè)級STM32F107完成客戶機設(shè)計,實現(xiàn)對捏煉機生產(chǎn)過程控制。服務(wù)器主機通過遠(yuǎn)程方式實現(xiàn)工藝參數(shù)傳輸及捏煉機工作狀態(tài)數(shù)據(jù)的接收。STM32F107接收服務(wù)器主機發(fā)送的工藝參數(shù),并按參數(shù)要求運行,運行時,實時將設(shè)備狀態(tài)數(shù)據(jù)發(fā)送回主機。

        某規(guī)格橡膠的煉膠工藝如表1所示。通過分析煉膠工藝要求,將各個步驟中的關(guān)鍵參數(shù)時間、溫度、壓力、轉(zhuǎn)速編寫在工藝文件中,計算機遠(yuǎn)程向客戶機發(fā)送工藝文件;客戶機在接收到工藝文件后,在操作人員啟動煉膠后,自動按照規(guī)定參數(shù)逐步完成煉膠過程的控制。

        表1 某規(guī)格橡膠的煉膠工藝

        另外,服務(wù)器主機采用雙機備份工作模式。工作時,兩臺主機同時接收數(shù)據(jù),第一主機在完成數(shù)據(jù)接收后及時保存數(shù)據(jù),并將已保存信息發(fā)送給第二主機,第二主機自動丟棄已接收到的數(shù)據(jù)。當(dāng)?shù)谝恢鳈C故障時,第二主機接收不到第一主機發(fā)送的信息,則將保存數(shù)據(jù)。

        (2)實時性。以太網(wǎng)采用載波偵聽多路復(fù)用沖突檢測(CSMA/CD機制),設(shè)計時采用小容量數(shù)據(jù)包,降低數(shù)據(jù)沖突的情況。煉膠工藝參數(shù)只傳送關(guān)鍵參數(shù),各字段長度如表2所示,每個步驟共需6字節(jié),一般的煉膠工藝參數(shù)總長度不超過180字節(jié),完整的文件可以在一個TCP數(shù)據(jù)包內(nèi)完成傳輸。由于數(shù)據(jù)量少,在主機和客戶機完成TCP鏈接后,僅發(fā)送一次數(shù)據(jù),便可以完成數(shù)據(jù)傳輸??蛻魴C回傳設(shè)備狀態(tài)數(shù)據(jù)時,狀態(tài)數(shù)據(jù)格式與工藝參數(shù)相同,回傳的間隔時間可動態(tài)設(shè)置,降低單機網(wǎng)絡(luò)資源消耗。在回傳的間隔時間內(nèi),客戶機將多個時間點的狀態(tài)數(shù)據(jù)打包,定時集中將數(shù)據(jù)發(fā)送回服務(wù)器。

        表2 工藝各字段長度

        5 結(jié)束語

        本方案采用TCP連接方式,完成服務(wù)器主機與客戶機的通訊,現(xiàn)了ARM嵌入式控制器通過工業(yè)以太網(wǎng)與計算機組網(wǎng)。本方案已在捏煉機控制系統(tǒng)中得到應(yīng)用,可靠實現(xiàn)服務(wù)器向設(shè)備傳送生產(chǎn)工藝文件、服務(wù)器對設(shè)備工作狀態(tài)的實時監(jiān)測、加工工藝參數(shù)的實時記錄等功能。本方案可廣泛應(yīng)用于各類工業(yè)監(jiān)測領(lǐng)域,實現(xiàn)各類設(shè)備的監(jiān)測與控制。

        [1]馬玉敏,樊留群,張浩.工業(yè)以太網(wǎng)的最新發(fā)展[J].電氣時代,2005,12.

        [2]李滔.基于ARM的嵌入式工業(yè)網(wǎng)絡(luò)控制器的平臺設(shè)計[D].長沙:中南大學(xué),2009,6.

        [3]于春雪.基于STM32F107的高速以太網(wǎng)接口[J].電聲技術(shù),2011,9.

        [4]陳基偉,陳小菊.基于GPRS的無線遠(yuǎn)距離數(shù)據(jù)采集傳輸裝置[J].機電工程,2011,10.

        [5]胡鳴.Windows網(wǎng)絡(luò)編程技術(shù)[M].北京:科學(xué)出版社,2008.

        猜你喜歡
        客戶機以太網(wǎng)客戶端
        Reducing the global cancer burden with gastrointestinal screening: China’s 30 years practice
        基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計與實現(xiàn)
        縣級臺在突發(fā)事件報道中如何應(yīng)用手機客戶端
        傳媒評論(2018年4期)2018-06-27 08:20:24
        孵化垂直頻道:新聞客戶端新策略
        傳媒評論(2018年4期)2018-06-27 08:20:16
        基于Vanconnect的智能家居瘦客戶端的設(shè)計與實現(xiàn)
        電子測試(2018年10期)2018-06-26 05:53:34
        談實時以太網(wǎng)EtherCAT技術(shù)在變電站自動化中的應(yīng)用
        電子制作(2017年24期)2017-02-02 07:14:44
        一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計
        淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
        客戶端空間數(shù)據(jù)緩存策略
        瘦客戶機:安全與便捷的選擇
        国产成人AⅤ| 日韩一卡2卡3卡4卡新区亚洲| 欧美性猛交xxxx乱大交丰满| 成人永久福利在线观看不卡| 我的极品小姨在线观看| 久久亚洲av成人无码电影| 久久久久久国产精品无码超碰动画 | 亚洲日产一线二线三线精华液| 亚洲人成网站77777在线观看| 无码精品国产午夜| 无人视频在线播放免费| 婷婷射精av这里只有精品| 中国精学生妹品射精久久| 蜜桃av多人一区二区三区| 在线播放国产自拍av| 777精品久无码人妻蜜桃| 免费在线亚洲视频| 国产白浆流出一区二区| 麻豆资源在线观看视频| 欧美日韩不卡合集视频| 免费二级毛片在线播放| 国产精品后入内射日本在线观看| 国产极品视觉盛宴| 日本在线观看| 亚洲av国产大片在线观看| 国产av一级黄一区二区三区| 国产精品一区二区无线| ZZIJZZIJ亚洲日本少妇| 久久精品人妻一区二三区| 比较有韵味的熟妇无码| 亚洲色图+国产精品| 女同久久精品国产99国产精| 草草影院发布页| 国产乱人伦av在线a| 国产美女被遭强高潮露开双腿 | 久久婷婷人人澡人人爽人人爱| 亚洲人成影院在线无码观看| 久久少妇呻吟视频久久久| 亚洲youwu永久无码精品| 国产内射在线激情一区| 国产免费午夜福利蜜芽无码|