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

        ?

        基于Modbus協(xié)議的STM32與觸摸屏通訊的實現(xiàn)

        2015-01-27 05:10:50林填達張泉宏胡小芳
        自動化與儀表 2015年8期
        關(guān)鍵詞:單片機系統(tǒng)

        林填達 ,張泉宏,曾 敏,胡小芳

        (1.華南理工大學(xué) 機械與汽車工程學(xué)院,廣州 510640;2.廣東志高暖通設(shè)備股份有限公司,佛山 528244)

        風(fēng)機軸套自動涂膠機是一種基于機電一體化技術(shù)開發(fā)的新型風(fēng)機軸套涂膠自動化設(shè)備。風(fēng)機軸套自動涂膠機系統(tǒng)的總體結(jié)構(gòu)如圖1所示。當(dāng)自動涂膠系統(tǒng)工作時,觸摸屏作為人機界面,為系統(tǒng)正常工作提供所需的參數(shù),同時監(jiān)控、顯示系統(tǒng)的運行狀態(tài)。當(dāng)系統(tǒng)發(fā)生錯誤時則產(chǎn)生報警。運動控制器根據(jù)觸摸屏所提供的設(shè)定參數(shù)控制工作平臺、進料系統(tǒng)、零件傳送系統(tǒng)、涂膠系統(tǒng)、卸料系統(tǒng)協(xié)調(diào)工作,并實時監(jiān)控各個感應(yīng)開關(guān)、各個按鈕的狀態(tài),同時根據(jù)系統(tǒng)的運行狀態(tài),控制三色燈的顯示狀態(tài),實現(xiàn)對風(fēng)機軸套的精確、快速涂膠??梢哉f,在風(fēng)機軸套自動涂膠機系統(tǒng)中,人機界面的作用是無可替代的。該部分選用了支持Modbus協(xié)議的步科ET070型觸摸屏為人機界面,以STM32單片機為核心,并于2014年在江門市森柏實業(yè)有限公司投入使用。經(jīng)實際工業(yè)生產(chǎn)使用驗證,該部分性能穩(wěn)定,能夠滿足工業(yè)生產(chǎn)的要求。

        圖1 風(fēng)機軸套自動涂膠系統(tǒng)結(jié)構(gòu)圖Fig.1 Structure diagram of automatic glue system for shaft sleeve of fan

        1 系統(tǒng)結(jié)構(gòu)

        1.1 ET070型觸摸屏介紹

        ET070型觸摸屏具有65536色的 (2.54×7)cm,分辨率為(800×480)TFT 液晶屏,采用 400 MHz高速CPU,具有強大的圖形顯示功能和數(shù)據(jù)處理功能,支持RS-485和RS-232兩種通訊接口。配套的組件軟件Kinco HMIware功能強大,用戶可以以較快的速度掌握其使用方法,創(chuàng)建出直觀的畫面,完成數(shù)據(jù)顯示、監(jiān)控狀態(tài)、報警功能等畫面的設(shè)計。在本文中,觸摸屏使用RS-232與單片機進行通訊,觸摸屏參數(shù)設(shè)置如下:PLC類型設(shè)為Modbus RTU,通訊類型選擇RS-232,波特率、數(shù)據(jù)位、奇偶檢測和停止位根據(jù)單片機的串口通訊配置來設(shè)置。

        1.2 STM32F103單片機

        STM32系列單片機內(nèi)核采用超低功率的ARM Cortex-M3處理器,具有高性能、低成本、低功耗的特點,同時集成了豐富出眾的外設(shè)系統(tǒng),具有集成度高和開發(fā)便捷的優(yōu)勢。STM32F103最高工作頻率可達72 MHz,內(nèi)置有256 K的Flash和48 K的SRAM,在工業(yè)控制領(lǐng)域應(yīng)用廣泛。

        1.3 系統(tǒng)硬件結(jié)構(gòu)

        該部分的硬件結(jié)構(gòu)主要由STM32單片機、步科ET070型觸摸屏以及電平轉(zhuǎn)換電路組成。觸摸屏作為上位機,通過串口向單片機發(fā)送查詢消息幀,并且接收STM32發(fā)送回來的消息回應(yīng)幀。下位機STM32接收到查詢消息幀后,對其進行解析、執(zhí)行和回應(yīng)。MAX3232芯片則實現(xiàn)TTL電平與RS-232電平的雙向轉(zhuǎn)換。將STM32的PA9和PA10分別設(shè)為串口通訊的輸入輸出口。如圖2所示為系統(tǒng)通訊的連接圖。

        圖2 系統(tǒng)通訊連接圖Fig.2 Communication circuit diagram of system

        2 Modbus通訊協(xié)議

        Modbus協(xié)議是Modicon公司開發(fā)的一種通訊協(xié)議,采用主從問答方式進行工作,允許1個主機與1個或者多個從機通訊,廣泛應(yīng)用于自動化控制行業(yè)中,已經(jīng)成為一種通用的工業(yè)標準[1]。控制器相互之間可以利用此協(xié)議進行通訊,連成工業(yè)網(wǎng)路[2-4]。

        Modbus協(xié)議有2種傳輸方式:ASCII和 RTU。對于ASCII模式,一個8位字節(jié)分為2個ASCII字符傳輸;而采用RTU模式,一個8位字節(jié)則利用2個4位16進制字符傳輸??梢钥闯觯鄬τ贏SCII模式,RTU模式表達同樣的信息需要的位數(shù)較少,在同樣的傳輸速率下能獲取更多的信息,可以提高通訊的效率[5]。本文采用RTU傳輸模式,RTU模式的消息幀結(jié)構(gòu)如表1所示。

        表1 Modbus RTU消息幀結(jié)構(gòu)Tab.1 Frame format of Modbus RTU

        使用RTU模式,2個消息幀之間至少要相隔3.5個字符時間。消息幀在傳輸?shù)倪^程中必須作為一段連續(xù)的數(shù)據(jù)流。若消息幀內(nèi)2字節(jié)之間的時間間隔超過1.5個字節(jié)的傳輸時間,則可認為消息幀是不完整的[6]。

        3 通信程序的實現(xiàn)

        系統(tǒng)的硬件結(jié)構(gòu)是由觸摸屏與STM32單片機組成的。因步科ET070型觸摸屏本身支持Modbus協(xié)議,那么只要STM32單片機也支持Modbus協(xié)議,就可以實現(xiàn)觸摸屏與單片機之間的通訊了。

        根據(jù)通訊的流程和功能,可將單片機的通信程序分為3個模塊,分別為初始化模塊、數(shù)據(jù)接收模塊、數(shù)據(jù)處理以及數(shù)據(jù)發(fā)送模塊。初始化模塊用于設(shè)定通訊波特率、串口接收以及定時器等方面。數(shù)據(jù)接收模塊主要由串口中斷服務(wù)函數(shù)和定時器計時函數(shù)組成。定時器計時函數(shù)主要用于計算STM32接收2個字節(jié)的時間間隔usart_ms,可用來判斷這2個字節(jié)是否屬于一個消息幀。而串口中斷服務(wù)函數(shù)用于接收主機發(fā)送過來的信息。若從機接收到主機發(fā)送過來的信息,則進入串口中斷服務(wù)函數(shù),判斷接收到的字節(jié)與之前接收到的字節(jié)是否屬于同一個信息幀。若是,則將接收到的信息賦給Recive_Buf[Count],并令定時器的計數(shù)值 usart_ms 歸零,定時器重新計數(shù)。另外,若接收到的字節(jié)為新的消息幀的第一個字節(jié),此時count為0,同樣把信息賦給 Recive_Buf[Count],并令定時器重新計數(shù)。 其程序流程如圖3所示。

        圖3 數(shù)據(jù)接收模塊流程圖Fig.3 Data receiving module flow chart

        數(shù)據(jù)處理以及數(shù)據(jù)發(fā)送模塊主要功能為解析主機發(fā)送過來的消息幀,進行錯誤校驗以及生成從機的回應(yīng)消息幀。若接收到主機發(fā)送過來的信息,先判斷這些信息是否處于同一個消息幀。若是,則進行CRC校驗,并根據(jù)主機發(fā)送過來的信息,生成相應(yīng)的回應(yīng)消息,并將其通過串口發(fā)送給主機。其具體流程如圖4所示。

        圖4 數(shù)據(jù)處理及數(shù)據(jù)發(fā)送模塊流程圖Fig.4 Data processing and transmission module flow chart

        通訊程序的整體流程如下:觸摸屏若對STM32單片機發(fā)送查詢信息,單片機接收到每個字節(jié)時,都將進入串口中斷服務(wù)函數(shù)。接收查詢信息幀的第一個字節(jié)時,usart_flag應(yīng)為flase,表明之前的消息已經(jīng)處理完畢,usart_ms應(yīng)大于max_ms。max_ms的值應(yīng)大于3.5個字節(jié)的傳輸時間,根據(jù)波特率可以算出這個值。若接收到的字節(jié)不是消息幀的第一個字節(jié),則有usart_ms小于max_ms,usart_flag的值應(yīng)為true,表明有數(shù)據(jù)需要處理。將usart_ms置為0,重新計算下一個字節(jié)的傳輸時間。接收到的消息將存儲在數(shù)組Receive_Buf[Count]中,Count表示接收到的字節(jié)個數(shù)。若觸摸屏的查詢信息幀發(fā)送完畢,那么當(dāng)usart_ms大于max_ms時,STM32單片機將進入數(shù)據(jù)處理及發(fā)送模塊。usart_ms大于max_ms,usart_flag為true,說明查詢信息幀接收完畢,數(shù)據(jù)處理及數(shù)據(jù)發(fā)送模塊調(diào)用CRC校驗子程序,以此來判斷接收到信息幀的有效性。若CRC校驗錯誤,則將usart_flag改為 flase,usart_ms與 count重新置為 0,為重新接收消息幀做準備。若CRC校驗正確,單片機則將解析消息幀,并根據(jù)消息幀中的功能碼,分別執(zhí)行主機的查詢命令。常見的功能碼如表2所示。單片機生成回應(yīng)消息幀后,通過串口將其發(fā)送給觸摸屏,作為回應(yīng)。發(fā)送完畢后,數(shù)據(jù)處理及發(fā)送模塊將把usart_flag改為 flase,usart_ms與 count置為0,為接收觸摸屏的下一個查詢消息幀做準備。在數(shù)據(jù)處理和發(fā)送模塊工作時,數(shù)據(jù)接收模塊不工作。主機沒有得到從機的正確回應(yīng)時,將會再次發(fā)送查詢消息幀,因而不影響系統(tǒng)的正常工作。

        表2 Modbus協(xié)議常用功能碼Tab.2 General function code of Modbus

        4 測試結(jié)果

        以功能碼01為例來說明觸摸屏與單片機實際通訊數(shù)據(jù)格式。假定STM32單片機的地址編號為01,如果觸摸屏需要讀取0x1這個bit的狀態(tài),發(fā)送命令如表3所示。圖5為觸摸屏發(fā)送查詢消息幀的波形。

        表3 觸摸屏發(fā)送的數(shù)據(jù)結(jié)構(gòu)Tab.3 Data touch-screen sending

        圖5 觸摸屏發(fā)送消息幀波形圖Fig.5 Waveform of the message frame touch-screen sending

        表4為0x1為0和1時,STM32回應(yīng)的數(shù)據(jù)結(jié)構(gòu),圖6為STM32回應(yīng)消息幀的波形圖。

        表4 STM32回應(yīng)的數(shù)據(jù)結(jié)構(gòu)Tab.4 Data STM32 responding

        圖6 STM32回應(yīng)消息幀波形圖Fig.6 Waveform of message frame STM32 responding

        經(jīng)過測試,觸摸屏能夠正確顯示0x1這個bit的狀態(tài),觸摸屏與STM32單片機能夠正確通訊。

        5 結(jié)語

        通訊系統(tǒng)主機采用了步科ET070型觸摸屏,從機采用了STM32單片機,通過Modbus協(xié)議,實現(xiàn)觸摸屏與STM32單片機的通訊,數(shù)據(jù)傳輸可靠穩(wěn)定,電路連接簡單,易于實現(xiàn)。目前該系統(tǒng)已成功應(yīng)用于風(fēng)機軸套自動涂膠機,能夠經(jīng)受實際工業(yè)生產(chǎn)的考驗。

        [1]溫建明,魯五一,袁慶國.基于MODBUS協(xié)議的觸摸屏與單片機通信的實現(xiàn)[J].起重運輸機械,2008(7):39-42.

        [2]呂國芳,唐海龍,李進.基于Modbus RTU的串口調(diào)試軟件的實現(xiàn)[J].計算機技術(shù)與發(fā)展,2009,19(9):236-238.

        [3]孟華,王鵬達,李明偉.基于Modbus協(xié)議的觸摸屏與PIC單片機的通信實現(xiàn)[J].儀表技術(shù)與傳感器,2009(10):58-60.

        [4] 張桂,金國強,李輝.基于ARM平臺Modbus RTU協(xié)議的研究與實現(xiàn)[J].電力科學(xué)與工程,2011,27(1):23-27.

        [5] 祁建安,呂震中.基于MODBUS協(xié)議的DSP從站串口通訊模塊設(shè)計[J].測控技術(shù),2004,23(9):38-40.

        [6]于正林,張龍,黃勇.Modbus通訊協(xié)議的FPGA實現(xiàn)[J].現(xiàn)代電子技術(shù),2010(11):203-207.

        猜你喜歡
        單片機系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無人機系統(tǒng)
        ZC系列無人機遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        基于單片機的SPWM控制逆變器的設(shè)計與實現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于PowerPC+FPGA顯示系統(tǒng)
        基于單片機的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        半沸制皂系統(tǒng)(下)
        小議PLC與單片機之間的串行通信及應(yīng)用
        電子制作(2018年12期)2018-08-01 00:48:04
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        一边做一边喷17p亚洲乱妇50p | 亚洲av久久无码精品九九| 无码片久久久天堂中文字幕| 日本高清中文一区二区三区| 91成人国产九色在线观看| 亚洲综合网站久久久| 日韩乱码人妻无码中文字幕视频| 粗大挺进尤物人妻一区二区| 国产视频一区二区三区久久亚洲| 18国产精品白浆在线观看免费| 午夜亚洲www湿好爽| 久久国产精品99精品国产987| 一道本加勒比在线观看| 精品卡一卡二卡3卡高清乱码| 国产香蕉尹人在线观看视频| 中文字幕亚洲无线码高清| 亚洲精品久久麻豆蜜桃| 欧美顶级少妇作爱| 四房播播在线电影| 久久精品国产只有精品96| 中文字幕亚洲一区二区三区| 中国人妻与老外黑人| 五十路熟妇亲子交尾| 国产一区二区三区亚洲精品| 日韩中文字幕在线观看一区| 欧美人与动牲交a精品| 国产成人精品免费久久久久| 亚洲一区视频中文字幕| 亚洲av成人无码久久精品老人| 精品亚洲欧美无人区乱码| 国产成人精品cao在线| 亚洲激情综合中文字幕| 亚洲人成网站色www| 国产欧美一区二区成人影院| 白白色福利视频在线观看| 人妻av中文字幕久久| 亚洲免费人成在线视频观看| 日本护士一区二区三区高清热线| 亚洲av免费不卡在线观看| 国产精品沙发午睡系列990531| 婷婷一区二区三区在线|