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

        ?

        基于嵌入式技術(shù)的多協(xié)議轉(zhuǎn)換系統(tǒng)研究

        2020-03-26 08:50:28劉亞秋胡鐵楠呂云蕾
        儀表技術(shù)與傳感器 2020年2期
        關(guān)鍵詞:設(shè)備系統(tǒng)

        劉亞秋,胡鐵楠,呂云蕾

        (東北林業(yè)大學(xué)信息與計(jì)算機(jī)工程學(xué)院,黑龍江哈爾濱 150040)

        0 引言

        現(xiàn)場(chǎng)總線技術(shù)在工業(yè)控制領(lǐng)域起著重要的作用,多種通信協(xié)議和總線并存,在市場(chǎng)均有自己的產(chǎn)品,各種總線標(biāo)準(zhǔn)和協(xié)議差異較大,給不同廠商產(chǎn)品互連互通帶來(lái)困難,使得通信網(wǎng)絡(luò)的開(kāi)放性受到影響。由于每種標(biāo)準(zhǔn)和協(xié)議均有各自的優(yōu)點(diǎn)和應(yīng)用領(lǐng)域,已經(jīng)應(yīng)用某種標(biāo)準(zhǔn)和協(xié)議的產(chǎn)品用戶在將來(lái)升級(jí)改造中為了降低投資費(fèi)用和維護(hù)成本,希望選擇同類產(chǎn)品,而不愿采用其他協(xié)議和標(biāo)準(zhǔn)產(chǎn)品,由于這些因素的存在,很難使通信標(biāo)準(zhǔn)和協(xié)議統(tǒng)一[1]。因而多協(xié)議轉(zhuǎn)換成為解決該問(wèn)題的有效方法,國(guó)內(nèi)外對(duì)于多協(xié)議轉(zhuǎn)換的研究也已經(jīng)有了不少的成果,文獻(xiàn)[2]基于S3C2440處理器實(shí)現(xiàn)了MQTT 與UART、CAN、RS485和RS232等協(xié)議間的相互轉(zhuǎn)換。文獻(xiàn)[3]設(shè)計(jì)了一個(gè)基于ARM加交換芯片的協(xié)議轉(zhuǎn)換器來(lái)完成同步串行協(xié)議到網(wǎng)絡(luò)通信協(xié)議的轉(zhuǎn)換,經(jīng)過(guò)交換芯片的端口轉(zhuǎn)發(fā)到達(dá)客戶端完成SPI到TCP協(xié)議的轉(zhuǎn)換。文獻(xiàn)[4]基于ARM Cortex-A8內(nèi)核的主控模塊、CC2530的ZigBee模塊和無(wú)線通信模塊等設(shè)計(jì)一個(gè)能夠?qū)悩?gòu)的智能家居設(shè)備進(jìn)行無(wú)縫集成的智能型網(wǎng)關(guān)。文獻(xiàn)[5]提出了一種基于低功耗無(wú)線通信的多協(xié)議網(wǎng)關(guān)系統(tǒng),通過(guò)有線和無(wú)線網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)情況的實(shí)時(shí)監(jiān)測(cè)和控制。

        本文針對(duì)多種標(biāo)準(zhǔn)通訊困難的情況,對(duì)常用的LIN總線協(xié)議和CAN總線協(xié)議,以及接口簡(jiǎn)單且支持廣泛的RS485總線協(xié)議之間轉(zhuǎn)換的總體方案、不同總線協(xié)議的標(biāo)識(shí)問(wèn)題和轉(zhuǎn)換系統(tǒng)的實(shí)現(xiàn)進(jìn)行了分析和研究,開(kāi)發(fā)了一種LIN總線協(xié)議和CAN總線協(xié)議與RS485總線之間雙向轉(zhuǎn)換的多協(xié)議轉(zhuǎn)換系統(tǒng)。

        1 多協(xié)議轉(zhuǎn)換系統(tǒng)模型

        目前國(guó)際上有繁多的現(xiàn)場(chǎng)總線標(biāo)準(zhǔn),不同廠商生產(chǎn)開(kāi)發(fā)的加工設(shè)備支持不同標(biāo)準(zhǔn)的協(xié)議接口,對(duì)不同加工設(shè)備之間的互聯(lián)帶來(lái)極大的不便。該問(wèn)題解決方案可有以下兩種:使管理系統(tǒng)支持多種不同的總線接口以掛接不同的加工設(shè)備;實(shí)現(xiàn)協(xié)議轉(zhuǎn)換,管理系統(tǒng)提供單一總線協(xié)議接口,通過(guò)協(xié)議轉(zhuǎn)換系統(tǒng)將多種不同總線協(xié)議轉(zhuǎn)換成管理系統(tǒng)所支持總線協(xié)議,整個(gè)加工車間的參數(shù)數(shù)據(jù)通過(guò)該總線協(xié)議統(tǒng)一傳輸。第一種方案會(huì)加大管理系統(tǒng)的開(kāi)發(fā)難度,增加資源管理系與各類加工設(shè)備之間的耦合性,不利于系統(tǒng)維護(hù);因而本文實(shí)現(xiàn)第二種方案,通過(guò)協(xié)議轉(zhuǎn)換將管理系統(tǒng)與加工設(shè)備徹底隔離,利于各個(gè)加工設(shè)備的添加、移除或者更換,解決不同協(xié)議通信困難問(wèn)題。多協(xié)議轉(zhuǎn)換系統(tǒng)網(wǎng)絡(luò)通信總體構(gòu)圖如圖1所示。

        圖1 網(wǎng)絡(luò)通信總體構(gòu)圖

        用戶數(shù)據(jù)以某種總線協(xié)議傳輸,即是在用戶數(shù)據(jù)前后加上該協(xié)議的幀頭和幀尾,然后裝載到特定的物理層上以一定的比特流進(jìn)行發(fā)送,各種總線協(xié)議的不同之處在于幀格式以及在物理總線上的比特流。因而不同總線協(xié)議之間的轉(zhuǎn)換,首先需要具備物理層的支持,以實(shí)現(xiàn)比特流的傳輸,在鏈路層,得到一幀數(shù)據(jù)后,需要對(duì)幀格式進(jìn)行轉(zhuǎn)換,去掉該總線協(xié)議的幀頭和幀尾,提取出用戶數(shù)據(jù),再加上另一種總線的幀頭和幀尾,裝載到物理層上進(jìn)行傳輸;多協(xié)議轉(zhuǎn)換系統(tǒng)則是支持多種總線協(xié)議幀頭和幀尾的拆分以及重組,即可實(shí)現(xiàn)多種異構(gòu)協(xié)議之間的相互轉(zhuǎn)換。本文設(shè)計(jì)的多協(xié)議轉(zhuǎn)換系統(tǒng)一端僅支持RS485總線協(xié)議接口,RS485總線接口簡(jiǎn)單,一般計(jì)算機(jī)設(shè)備均支持,另一端支持CAN總線協(xié)議接口以及LIN協(xié)議接口,實(shí)現(xiàn)一對(duì)多協(xié)議轉(zhuǎn)換,多協(xié)議轉(zhuǎn)換系統(tǒng)總體模型如圖2所示。

        圖2 多協(xié)議轉(zhuǎn)換系統(tǒng)總體模型

        通過(guò)專用的協(xié)議處理芯片來(lái)去掉和添加協(xié)議的幀頭和幀尾,RS485總線協(xié)議數(shù)據(jù)幀進(jìn)入多協(xié)議轉(zhuǎn)換系統(tǒng)后,RS485總線協(xié)議處理芯片去掉RS485總線協(xié)議的幀頭和幀尾,得到帶有“標(biāo)識(shí)頭”的用戶數(shù)據(jù)并寫入RS485總線協(xié)議輸入緩沖區(qū),標(biāo)識(shí)頭標(biāo)志著該數(shù)據(jù)接下來(lái)要以哪種協(xié)議發(fā)送出去,中央處理模塊以LIN協(xié)議和CAN總線協(xié)議標(biāo)識(shí)頭為依據(jù),去掉標(biāo)識(shí)頭將數(shù)據(jù)寫入LIN總線協(xié)議和CAN總線協(xié)議的輸出緩沖區(qū),由其各自的協(xié)議處理芯片加上各自協(xié)議的幀頭和幀尾,發(fā)送到遠(yuǎn)端;反向傳輸中,LIN總線協(xié)議和CAN總線協(xié)議數(shù)據(jù)幀進(jìn)入多協(xié)議轉(zhuǎn)換系統(tǒng),去掉幀頭和幀尾得到用戶數(shù)據(jù)寫入各自的輸入緩沖區(qū),中央處理模塊將其加上各自的標(biāo)識(shí)頭寫入RS485總線協(xié)議輸出緩沖區(qū),由RS485總線協(xié)議處理芯片加上其幀頭和幀尾發(fā)送至管理系統(tǒng)。

        2 多協(xié)議轉(zhuǎn)換系統(tǒng)設(shè)計(jì)

        本文研究的多協(xié)議轉(zhuǎn)換系統(tǒng)通過(guò)嵌入式技術(shù)來(lái)實(shí)現(xiàn)。以嵌入式處理器作為多協(xié)議轉(zhuǎn)換系統(tǒng)的中央處理模塊,在其外圍掛載CAN總線協(xié)議以及LIN協(xié)議的協(xié)議處理芯片;軟件以Linux系統(tǒng)為平臺(tái),編寫協(xié)議轉(zhuǎn)換驅(qū)動(dòng)程序。

        2.1 多協(xié)議轉(zhuǎn)換統(tǒng)硬件設(shè)計(jì)

        多協(xié)議轉(zhuǎn)換器要求能夠?qū)崿F(xiàn)LIN總線協(xié)議、CAN 總線協(xié)議和RS485總線協(xié)議之間的轉(zhuǎn)換,在硬件上必須有各協(xié)議的硬件接口電路,并通過(guò)程序控制硬件實(shí)現(xiàn)多協(xié)議的解析,采用Exynos4412四核心微處理器作為整個(gè)多協(xié)議轉(zhuǎn)換系統(tǒng)的主控器件,其外圍擴(kuò)展多種協(xié)議的接口電路。硬件總體方案如圖3所示,多協(xié)議轉(zhuǎn)換系統(tǒng)由CAN 總線接口電路、RS485總線協(xié)議接口電路及LIN接口電路、電源電路4部分構(gòu)成,電源電路為Exynos4412微處理器基本單元電路及各接口電路供電,3種總線接口電路在Exynos4412微處理器統(tǒng)一協(xié)調(diào)下相互配合、有序運(yùn)行,從而實(shí)現(xiàn)3種協(xié)議之間的轉(zhuǎn)換。

        圖3 硬件總體方案

        LIN總線協(xié)議接口采用高性能RS232線路驅(qū)動(dòng)器/接收器SP232EEN芯片與LIN總線協(xié)議收發(fā)器TJA1020芯片組合構(gòu)成,TJA1020收發(fā)器是LIN主從協(xié)議控制器與本地互連網(wǎng)絡(luò)(LIN)中的物理總線之間的接口,主要用于使用2.4至20 Kbaud波特率的車載子網(wǎng),其TXD輸入端的協(xié)議控制器的發(fā)送數(shù)據(jù)流由LIN收發(fā)器轉(zhuǎn)換為具有受控轉(zhuǎn)換速率和波形整形的總線信號(hào),以最小化EME。LIN總線輸出引腳通過(guò)其內(nèi)部終端電阻拉高[6-7]。由SP232EEN和TJA1020構(gòu)成的LIN總線協(xié)議接口電路如圖4所示,SP232EEN的T2IN和R2OUT引腳分別與TJA1020的TXD和RXD引腳相連。

        圖4 LIN總線接口電路

        CAN總線協(xié)議接口采用GPIO擴(kuò)展,選用MCP2515型號(hào)CAN總線控制器芯片,并選用與之配套的TJA1050型收發(fā)器,MCP2515是一個(gè)獨(dú)立的控制器局域網(wǎng)控制器,可實(shí)現(xiàn)2.0規(guī)范的CAN規(guī)范,它能夠發(fā)送和接收標(biāo)準(zhǔn)和擴(kuò)展數(shù)據(jù)以及遠(yuǎn)程幀。MCP2515具有2個(gè)接受掩碼和6個(gè)接收濾波器,用于濾除不需要的消息,從而減少主機(jī)MCU的開(kāi)銷。MCP2515通過(guò)工業(yè)標(biāo)準(zhǔn)串行外設(shè)接口SPI與微控制器連接[8-10]。由MCP2515 和TJA1050構(gòu)成 CAN 總線接口電路如圖5所示,MCP2515通過(guò)SPI接口與微控制器相連,TXCAN和RXCAN與TJA1050的TXD和RXD相連。

        圖5 CAN總線接口電路

        RS485協(xié)議總線選用 MAX3485 芯片作為協(xié)議的收發(fā)器, MAX3485是一款RS-485收發(fā)芯片,工作電壓為3.3 V,通信速率高達(dá)10 Mbps,符合RS-485、RS-422串行通信協(xié)議規(guī)定的電氣特性,采用半雙工串行通信工作模式,驅(qū)動(dòng)器輸出采用差分信號(hào)形式并且具有短路保護(hù)功能,同一總線上最多可以接 32個(gè)收發(fā)器,具有低功耗、高速率、可靠性高的特點(diǎn)[10-11]。RS485電路接口電路如圖6所示。MAX3485 的 RO、DI 引腳分別與微控制器的RXD、TXD引腳相連,輸出引腳 A、B 通過(guò)總線接線端子與總線相連。

        圖6 RS485總線接口電路

        2.2 多協(xié)議轉(zhuǎn)換系統(tǒng)軟件設(shè)計(jì)

        Exynos4412是四核心處理器,內(nèi)部包含4個(gè)獨(dú)立運(yùn)行的CPU,為了充分利用Exynos4412的CPU資源,在硬件層上移植Linux操作系統(tǒng),最多可以滿足4個(gè)進(jìn)程微觀上同時(shí)運(yùn)行,CAN總線協(xié)議、LIN總線協(xié)議以及RS485總線協(xié)議通過(guò)Linux驅(qū)動(dòng)實(shí)現(xiàn),建立設(shè)備節(jié)點(diǎn)文件,應(yīng)用程序通過(guò)讀寫設(shè)備節(jié)點(diǎn)文件進(jìn)行數(shù)據(jù)的傳輸[12-13]。

        2.2.1 驅(qū)動(dòng)程序設(shè)計(jì)

        Linux驅(qū)動(dòng)程序分為字符設(shè)備驅(qū)動(dòng)、塊設(shè)備驅(qū)動(dòng)以及網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng),RS485總線協(xié)議、CAN總線協(xié)議和LIN協(xié)議屬于字符驅(qū)動(dòng)類,調(diào)用Linux系統(tǒng)字符驅(qū)動(dòng)框架編寫程序,以CAN總線協(xié)議為例,具體步驟如下:

        (1) 構(gòu)建CAN總線協(xié)議結(jié)構(gòu)體Can_dev,其中包含字符設(shè)備對(duì)象cedv和緩沖區(qū)數(shù)組;

        (2) 創(chuàng)建file_operations結(jié)構(gòu)體對(duì)象Can_fops;

        (3) 編寫Can_init函數(shù),創(chuàng)建Can_dev對(duì)象,并申請(qǐng)主設(shè)備號(hào),綁定Can_fops對(duì)象;

        (4) 編寫Can_exit函數(shù),刪除Can_dev對(duì)象,并釋放主設(shè)備號(hào);

        (5) 編寫Can_open、Can_read、Can_write并將其賦值給Can_fops對(duì)象中的open、read、write函數(shù)指針;

        (6) 編譯代碼,生成Can_driver.ko文件。

        Can_read函數(shù)部分代碼如下:

        static ssize_t can_read()

        {

        struct can_dev *dev = filp->private_data;

        flag = *GPK1DAT & (0x1);

        if(flag == 0){

        len= CAN_Receive_Buffer(dev->CAN_RX_Buf);

        if(len <= 0)

        {

        if (filp->f_flags & O_NONBLOCK)

        return -EAGAIN;

        }

        copy_to_user(buf,dev->CAN_RX_Buf,len);

        return len;

        }

        else return -EAGAIN;

        }

        Linux設(shè)備驅(qū)動(dòng)一般包含阻塞以及互斥機(jī)制,使得進(jìn)程在競(jìng)爭(zhēng)資源失敗或者競(jìng)爭(zhēng)資源成功但資源不可用時(shí)放棄CPU使用權(quán)進(jìn)入睡眠狀態(tài),當(dāng)其可獲得資源時(shí)被喚醒;但從睡眠到喚醒需要消耗時(shí)間,影響信息傳遞的及時(shí)性,因此設(shè)計(jì)CAN總線協(xié)議驅(qū)動(dòng)、LIN協(xié)議驅(qū)動(dòng)以及RS485總線協(xié)議三者獨(dú)立,不存在資源競(jìng)爭(zhēng)問(wèn)題,不需要互斥機(jī)制,因而為總線協(xié)議建立進(jìn)程,采用非阻塞方式讀寫,提高信息傳遞的及時(shí)性。

        2.2.2 應(yīng)用程序設(shè)計(jì)

        應(yīng)用程序讀取RS485總線協(xié)議緩沖區(qū)數(shù)組數(shù)據(jù),識(shí)別出是哪種總線數(shù)據(jù),并寫入CAN總線協(xié)議或LIN協(xié)議輸出緩沖區(qū),調(diào)用設(shè)備驅(qū)動(dòng)完成數(shù)據(jù)的發(fā)送,反之讀取CAN總線協(xié)議或LIN協(xié)議緩沖區(qū)數(shù)組數(shù)據(jù),添加相應(yīng)標(biāo)識(shí)頭,寫入RS485總線協(xié)議輸入緩沖區(qū),完成數(shù)據(jù)的接收。應(yīng)用程序?yàn)槿邤?shù)據(jù)的收發(fā)建立進(jìn)程,無(wú)進(jìn)程休眠、搶占,克服Linux系統(tǒng)實(shí)時(shí)性較差的問(wèn)題。CAN總線協(xié)議數(shù)據(jù)收發(fā)程序流程圖如圖7所示。

        圖7 CAN總線協(xié)議程序流程圖

        進(jìn)程調(diào)用open函數(shù)打開(kāi)RS_driver和Can_drvier設(shè)備文件,獲取文件標(biāo)識(shí)符并分別保存在fd0和fd1變量中,然后通過(guò)兩個(gè)文件標(biāo)識(shí)符不停以非阻塞方式調(diào)用write和read函數(shù),該函數(shù)會(huì)調(diào)用CAN總線協(xié)議設(shè)備驅(qū)動(dòng)中的Can_write和Can_read函數(shù)將數(shù)據(jù)寫入或讀入相應(yīng)的緩沖區(qū);期間調(diào)用Rem_ident ()和Add_ident()函數(shù)去掉和添加相應(yīng)的標(biāo)識(shí)頭,保證能夠識(shí)別是哪種協(xié)議數(shù)據(jù),CAN總線協(xié)議部分代碼如下:

        int main(void)

        {

        fd0=open("/dev/RS_drvier",O_RDWR|O_NONBLOCK);

        fd1=open("/dev/Can_drvier",O_RDWR|O_NONBLOCK);

        while(1)

        {

        len = read(fd0,Buff_rs_in,sizeof(Buff_rs_in));

        if(len !=0){

        Buff_can_out = Rem_ident(Buff_rs_in);

        write(fd1,Buff_can_out,sizeof(Buff_can_out));

        }

        len = read(fd1,Buff_can_in,sizeof(Buff_rs_in));

        if(len != 0){

        Buff_rs_out = Add_ident(“can”,Buff_can_in);

        write(fd0,Buff_net_out,sizeof(Buff_can_out));

        }

        }

        }

        進(jìn)程一旦運(yùn)行就進(jìn)入死循環(huán)永不終止,且進(jìn)程以非阻塞方式讀寫不會(huì)睡眠,將不間斷的對(duì)數(shù)據(jù)進(jìn)行收發(fā)以保證信息傳遞的及時(shí)性。

        3 實(shí)驗(yàn)測(cè)試

        本實(shí)驗(yàn)以Exynos4412嵌入式開(kāi)發(fā)板為硬件平臺(tái),外接RS485總線、CAN總線以及LIN總線接口電路;搭建Linux操作系統(tǒng)為軟件平臺(tái),編寫RS485協(xié)議、CAN總線協(xié)議以及LIN協(xié)議的驅(qū)動(dòng)程序,并編寫應(yīng)用程序進(jìn)行多協(xié)議之間數(shù)據(jù)的收發(fā)。

        多協(xié)議轉(zhuǎn)換系統(tǒng)的RS485總線協(xié)議接口連接上位機(jī),CAN總線協(xié)議接口以及LIN總線協(xié)議接口分別連接兩個(gè)單片機(jī),并將單片機(jī)的串口連接PC機(jī);上位機(jī)通過(guò)RS485總線協(xié)議向多協(xié)議轉(zhuǎn)換系統(tǒng)發(fā)送數(shù)據(jù),多協(xié)議轉(zhuǎn)換系統(tǒng)又將數(shù)據(jù)分別通過(guò)CAN總線協(xié)議和LIN總線發(fā)送給兩個(gè)單片機(jī),反之兩個(gè)單片機(jī)分別通過(guò)CAN總線協(xié)議和LIN總線協(xié)議發(fā)送數(shù)據(jù)到多協(xié)議轉(zhuǎn)換系統(tǒng),多協(xié)議轉(zhuǎn)換系統(tǒng)又將數(shù)據(jù)通過(guò)RS485總線協(xié)議發(fā)送到上位機(jī)。

        單片機(jī)通過(guò)CAN總線協(xié)議和LIN總線協(xié)議依次發(fā)送的數(shù)據(jù)如表1所示,上位機(jī)通過(guò)RS485總線協(xié)議分別發(fā)送給CAN總線協(xié)議和LIN總線協(xié)議的數(shù)據(jù)如表2所示。

        表1 CAN總線協(xié)議和LIN總線協(xié)議發(fā)送數(shù)據(jù)

        表2 RS485總線協(xié)議發(fā)送數(shù)據(jù)

        CAN總線協(xié)議和LIN總線協(xié)議收發(fā)的數(shù)據(jù)以‘01’和‘02’為數(shù)據(jù)標(biāo)識(shí)頭,標(biāo)識(shí)為各自數(shù)據(jù),多協(xié)議轉(zhuǎn)換系統(tǒng)通過(guò)“01”和“02”為數(shù)據(jù)標(biāo)識(shí)頭來(lái)識(shí)別數(shù)據(jù)。上位機(jī)通過(guò)cutecom工具顯示接收到的來(lái)自CAN總線協(xié)議和LIN總線協(xié)議的數(shù)據(jù),單片機(jī)通過(guò)串口連接PC機(jī),在PC機(jī)上通過(guò)串口助手顯示接收到的來(lái)自RS485總線協(xié)議的數(shù)據(jù)。CAN總線協(xié)議和LIN總線協(xié)議接收到的數(shù)據(jù)如圖8、圖9所示,RS485總線協(xié)議接收到的數(shù)據(jù)如圖10所示。

        圖8 CAN總線協(xié)議接收數(shù)據(jù)

        圖9 LIN總線協(xié)議接收數(shù)據(jù)

        圖10 RS485總線協(xié)議接收數(shù)據(jù)

        多次發(fā)送數(shù)據(jù)進(jìn)行實(shí)驗(yàn),圖8和圖9中兩種總線協(xié)議接收到的數(shù)據(jù)分別與表2中RS485總線協(xié)議發(fā)送的兩種標(biāo)識(shí)頭數(shù)據(jù)所對(duì)應(yīng),可見(jiàn)數(shù)據(jù)可以正確傳輸,且沒(méi)有RS485總線協(xié)議所發(fā)送的標(biāo)識(shí)頭,多協(xié)議轉(zhuǎn)換系統(tǒng)通過(guò)標(biāo)識(shí)頭分辨數(shù)據(jù),并去掉標(biāo)識(shí)頭將數(shù)據(jù)分別通過(guò)CAN總線協(xié)議和LIN總線協(xié)議發(fā)送給單片機(jī)。圖10中RS485總線協(xié)議接收到的數(shù)據(jù)與表1中 CAN總線協(xié)議和LIN總線協(xié)議發(fā)送的數(shù)據(jù)一一對(duì)應(yīng),可見(jiàn)數(shù)據(jù)同樣可以正確傳輸,且多出了“01”和“02”標(biāo)識(shí)頭來(lái)標(biāo)識(shí)兩種總線協(xié)議數(shù)據(jù),多協(xié)議轉(zhuǎn)換系統(tǒng)將兩種總線協(xié)議加上各自的標(biāo)識(shí)頭通過(guò)RS485總線協(xié)議發(fā)送給上位機(jī),上位機(jī)可通過(guò)標(biāo)識(shí)頭識(shí)別兩種總線協(xié)議,以做進(jìn)一步處理。

        4 結(jié)束語(yǔ)

        本文針對(duì)工業(yè)生產(chǎn)中不同通信協(xié)議中間通信困難問(wèn)題,研究了一種用于工業(yè)的多協(xié)議轉(zhuǎn)換模型,并基于嵌入式技術(shù)設(shè)計(jì)了多協(xié)議轉(zhuǎn)換系統(tǒng)的軟硬件構(gòu)成。通過(guò)Exynos4412嵌入式開(kāi)發(fā)板以及RS485總線、CAN總線和LIN總線接口搭建硬件平臺(tái);移植Linux操作系統(tǒng)搭建軟件平臺(tái)并編寫總線協(xié)議驅(qū)動(dòng)程序和應(yīng)用程序。通過(guò)連接上位機(jī)與單片機(jī)收發(fā)3種總線協(xié)議的數(shù)據(jù),實(shí)驗(yàn)結(jié)果表明多協(xié)議轉(zhuǎn)換系統(tǒng)數(shù)據(jù)傳輸?shù)臏?zhǔn)確可靠性。本文所研究的多協(xié)議轉(zhuǎn)換系統(tǒng)使得不同通信接口設(shè)備之間的通信變得簡(jiǎn)單可行,一定程度上解決通信協(xié)議異構(gòu)的問(wèn)題;同時(shí)可擴(kuò)展為其他不同總線之間的多協(xié)議轉(zhuǎn)換。

        猜你喜歡
        設(shè)備系統(tǒng)
        諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無(wú)人機(jī)系統(tǒng)
        ZC系列無(wú)人機(jī)遙感系統(tǒng)
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        基于VB6.0+Access2010開(kāi)發(fā)的設(shè)備管理信息系統(tǒng)
        基于MPU6050簡(jiǎn)單控制設(shè)備
        電子制作(2018年11期)2018-08-04 03:26:08
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        500kV輸變電設(shè)備運(yùn)行維護(hù)探討
        精品国产福利一区二区在线| 人人妻人人澡人人爽欧美一区 | 日产精品久久久久久久蜜臀| 国产又黄又大又粗视频| 日本午夜福利| 国产精品入口蜜桃人妻| 少妇高潮呻吟求饶视频网站| 友田真希中文字幕亚洲| 日本肥老妇色xxxxx日本老妇| 在线观看免费人成视频| 国产精品久久久久久麻豆一区| 在线观看亚洲AV日韩A∨| 国产精品国产三级国产av主| 亚洲三区av在线播放| 激情五月天在线观看视频| av在线免费观看蜜桃| 亚洲国产精品va在线播放| 国产AV无码专区亚洲AV桃花庵| 精品av一区二区在线| 亚洲中文字幕乱码一二三| 婷婷射精av这里只有精品| 白嫩少妇激情无码| 国产传媒剧情久久久av| 精品不卡视频在线网址| 久久久国产精品123| 777精品出轨人妻国产| 成人免费一区二区三区| 亚洲一级电影在线观看| 亚洲二区三区四区太九| 亚洲成人激情深爱影院在线| 国内永久福利在线视频图片| 国产精品久久人妻无码 | 国产精品无需播放器| 国产精品高清亚洲精品| 妃光莉中文字幕一区二区| 大陆极品少妇内射aaaaa| 国产精品亚洲一区二区无码国产 | 亚洲午夜经典一区二区日韩| 成人无码网www在线观看| 中文字幕亚洲情99在线| av无码天一区二区一三区|