基于sm32的實(shí)時(shí)操作鉆機(jī)手操器的設(shè)計(jì)與實(shí)現(xiàn)_第1頁
基于sm32的實(shí)時(shí)操作鉆機(jī)手操器的設(shè)計(jì)與實(shí)現(xiàn)_第2頁
基于sm32的實(shí)時(shí)操作鉆機(jī)手操器的設(shè)計(jì)與實(shí)現(xiàn)_第3頁
基于sm32的實(shí)時(shí)操作鉆機(jī)手操器的設(shè)計(jì)與實(shí)現(xiàn)_第4頁
基于sm32的實(shí)時(shí)操作鉆機(jī)手操器的設(shè)計(jì)與實(shí)現(xiàn)_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于sm32的實(shí)時(shí)操作鉆機(jī)手操器的設(shè)計(jì)與實(shí)現(xiàn)

近年來,中國(guó)加強(qiáng)了對(duì)海洋科學(xué)研究的關(guān)注。探測(cè)發(fā)現(xiàn),我國(guó)的大陸架淺海海底埋藏著非常豐富的石油、天然氣以及煤、硫、磷等礦產(chǎn)資源,并且在多數(shù)海盆中廣泛分布著深海錳結(jié)核,它們都是擁有巨大潛力的可利用金屬礦產(chǎn)資源。深海鉆機(jī)是我國(guó)大洋探測(cè)地質(zhì)的重要工具之一,它可以探取幾千米深海海底數(shù)十米以下的地質(zhì)樣品,為地質(zhì)學(xué)家、物理學(xué)家的研究工作提供樣品。但是深海鉆機(jī)的操作使用并不方便,傳統(tǒng)的上位機(jī)常常用鼠標(biāo)操作,海面上不確定的風(fēng)浪導(dǎo)致船體搖晃、甲板不穩(wěn),并且上位機(jī)一般都在船艙內(nèi),這樣往往造成操作人員不能直觀地看到鉆機(jī)平臺(tái)的工作情況,這給鉆機(jī)的操作帶來不便,有時(shí)更可能產(chǎn)生操作失誤;再加上鉆機(jī)的操作進(jìn)程較為繁瑣,一次作業(yè)長(zhǎng)達(dá)數(shù)十個(gè)小時(shí),操作人員壓力巨大。如果操作過程中有失誤并且無法及時(shí)停止工作,會(huì)對(duì)鉆機(jī)造成傷害。此外,一套手操器只針對(duì)一個(gè)應(yīng)用場(chǎng)合會(huì)造成設(shè)備的重復(fù)和浪費(fèi)。本文介紹的基于STM32的甲板手操器系統(tǒng)可以應(yīng)用于多種場(chǎng)合的多種器械的手動(dòng)控制,并且可以降低計(jì)算機(jī)操作產(chǎn)生的錯(cuò)誤率。1通訊模塊的實(shí)現(xiàn)甲板手操器的工作模擬圖如圖1所示。甲板手操器系統(tǒng)包括操作控制模塊和數(shù)據(jù)通信模塊。甲板鉆機(jī)操作人員參考監(jiān)測(cè)到的數(shù)據(jù)來對(duì)鉆機(jī)執(zhí)行既定的操作,單片機(jī)判斷執(zhí)行的按鍵、搖桿發(fā)出相應(yīng)的指令,指令將顯示在液晶屏上并通過光端機(jī)經(jīng)光纜發(fā)送至水下鉆機(jī)執(zhí)行作業(yè)。鉆機(jī)操作將全部存入手操器的SD卡日志存檔中。2系統(tǒng)硬件描述2.1核心板的選擇由于核心板需要實(shí)現(xiàn)4路A/D采樣、90余個(gè)掃描按鍵輸入、TFT顯示屏輸出和SD卡的存取,并且需要足夠大的Flash來存放90余個(gè)按鍵輸出的控制量及其延時(shí),故手操器的核心板選擇了ST公司生產(chǎn)的STM32F103VCT6微控制器(MCU)。該芯片有高達(dá)72MHz的主頻,并且內(nèi)置256KB的Flash,多路的A/D轉(zhuǎn)換,USART通信來滿足手操器與海底主控系統(tǒng)的通信,且滿足多按鍵、大容量、高速度的需求。手操器核心板結(jié)構(gòu)圖如圖2所示。2.2sd卡通信接口STM32與SD卡之間的通信方式有SDIO和SPI兩種。由于對(duì)速度要求不是特別高,因此相互對(duì)比下最終使用了SPI方式。STM32提供了3個(gè)SPI接口,所以經(jīng)過簡(jiǎn)單的配置就可以直接使用SPI功能外設(shè)模塊,如果沒有SPI功能,則需要用軟件模擬SPI協(xié)議。SPI總線系統(tǒng)是一種高速同步的串行外設(shè)接口,它可以使MCU和各種外圍設(shè)備以串行的方式進(jìn)行通信交換信息。它可以節(jié)省I/O端口,以提高外設(shè)的數(shù)目和系統(tǒng)的性能。SPI接口是在CPU與外圍低速器件之間進(jìn)行同步、串行傳輸,在主器件的移位脈沖下,數(shù)據(jù)按位來傳輸,SPI接口不需要尋址操作,并且為全雙工通信,顯得十分簡(jiǎn)單高效,而且速度可達(dá)到幾Mb/s。SPI接口是以主從方式工作的,這種模式通常有一個(gè)主器件和一個(gè)或多個(gè)從器件,其接口包括以下4種信號(hào):MOSI主器件數(shù)據(jù)輸出,從器件數(shù)據(jù)輸入;MISO主器件數(shù)據(jù)輸入,從器件數(shù)據(jù)輸出;SCLK時(shí)鐘信號(hào),由主器件產(chǎn)生;CS片選信號(hào),由主器件控制。STM32F103VCT6有3個(gè)SPI通道,本設(shè)計(jì)中選用了SPI1作為SD卡的通信接口,其引腳連接如圖3所示。其中卡檢測(cè)電路包括兩部分:(1)卡是否完全插入到卡座中;(2)卡是否寫保護(hù)。其檢測(cè)信號(hào)由卡座的兩個(gè)引腳以電平的方式輸出。當(dāng)卡插入到卡座并且插入到位時(shí),圖3中的第11腳由于卡座內(nèi)部觸點(diǎn)連接到接地,故輸出低電平;當(dāng)卡拔出時(shí),該引腳由于上拉電阻R12的存在,輸出高電平??ㄊ欠駥懕Wo(hù)的檢測(cè)同檢測(cè)卡是否完全插入的原理基本相同。為了方便文件和數(shù)據(jù)的存取以及在PC上的修改與讀取,本設(shè)計(jì)還在STM32中移植了FATFS文件系統(tǒng)。2.3自適應(yīng)的sck輸出信號(hào)本設(shè)計(jì)中LCD屏選擇TFT-LCD24TP,LCD控制芯片選擇為ILI9325。因?yàn)橛布呀?jīng)固化好,所以ILI9325必須采用SPI的接口。本設(shè)計(jì)中SD卡占用了STM32的SPI1接口,所以顯示屏接口就選SPI2。其中時(shí)鐘信號(hào)的相位與極性是很重要的,它決定了輸出信號(hào)捕捉到的數(shù)據(jù)是從第幾個(gè)開始生效的。主要是時(shí)鐘相位設(shè)置,當(dāng)CPHA位被置“1”時(shí),SCK在第二個(gè)邊沿進(jìn)行采樣;如果已經(jīng)設(shè)置了在第二個(gè)邊沿采樣,第一個(gè)有效數(shù)據(jù)很有可能會(huì)丟掉,故一定要確定是否是第一位數(shù)據(jù)有效。這樣,數(shù)據(jù)會(huì)在第二個(gè)時(shí)鐘的邊沿被鎖存。如果CPHA被置位為“0”,那么SCK在第一個(gè)邊沿被采樣,數(shù)據(jù)會(huì)在第一個(gè)時(shí)鐘被鎖存。不同時(shí)鐘相位下的總線數(shù)據(jù)傳輸時(shí)序如圖4、圖5所示。顯示屏的成品模塊為34針插口,PB10為片選信號(hào)輸入,PB13、PB14和PB15分別為SPI2對(duì)應(yīng)的SCLK、MISO和MOSI。2.4pe1pe8端口輸出考慮到按鍵較多,且要便于擴(kuò)展使用,故按鍵的采集方式采用了矩陣掃描的方式,此方式能最大程度地利用I/O口。本設(shè)計(jì)采用的是13×8的矩陣,首先將I/O口PD0~PD12設(shè)為矩陣的13行,模式為推挽輸出;將I/O口PE1~PE8設(shè)置為矩陣的8列,模式為下拉輸入。PD0~PD12端口輸出寄存器ODR置“1”,各個(gè)端口逐行產(chǎn)生高電平,接著檢測(cè)PE1~PE8的端口輸入寄存器IDR。如果檢測(cè)到非“0”位,經(jīng)過延時(shí)排除按鍵抖動(dòng)后繼續(xù)檢測(cè);如果依然存在非“0”位,則進(jìn)行按鍵值的判斷;如果經(jīng)過延時(shí)后沒有檢測(cè)到IDR寄存器中有非“0”存在,則返回。2.5a/d轉(zhuǎn)換電路此手操器設(shè)計(jì)為兩個(gè)搖桿輸入,搖桿選擇為二維雙軸輸入。主要原理為搖桿在縱軸與橫軸上的位移導(dǎo)致兩邊的電位器變化,從而產(chǎn)生不同的輸出電壓。搖桿的工程圖如圖6所示。STM32F103擁有3個(gè)12位A/D轉(zhuǎn)換器,其既可以獨(dú)立使用,也可以采用雙重模式來使用,這樣可以提高采樣頻率。它有18個(gè)通道來測(cè)量16個(gè)外部信號(hào)源和兩個(gè)內(nèi)部的信號(hào)源。在A/D時(shí)鐘為14MHz,采樣周期為1.5個(gè)A/D時(shí)鐘時(shí),其最大的轉(zhuǎn)換速率為1MHz,當(dāng)A/D時(shí)鐘超過14MHz時(shí)準(zhǔn)確度將下降。故配置RCC_ADCCLKConfig(RCC_PCLK2_Div4)。時(shí)間設(shè)置:ADC_SampleTime_55Cycles5根據(jù)公式:T=T采樣+12.5個(gè)周期,則T=55.5+12.5個(gè)周期=68/14μs。2.6光纖纜傳輸系統(tǒng)本設(shè)計(jì)的光纖通信系統(tǒng)由電端機(jī)、光發(fā)送機(jī)、光中繼器、光接收機(jī)和光纖光纜組成,其框圖如圖7所示。電端機(jī)是一般的電通信設(shè)備,用來處理如模數(shù)變換、多路復(fù)用等電源信號(hào)。光發(fā)送機(jī)由光源、驅(qū)動(dòng)器和調(diào)制器組成。它的功能是把輸入的電信號(hào)轉(zhuǎn)換為光信號(hào),并用耦合技術(shù)把光信號(hào)經(jīng)光纖傳輸,其轉(zhuǎn)換過程是由電信號(hào)對(duì)光的調(diào)制來完成的。光纖纜作為整條通信的線路,其功能為將光發(fā)送機(jī)的光信號(hào)傳輸?shù)焦饨邮諜C(jī),并且產(chǎn)生盡可能小的失真衰減。在應(yīng)用中所用的是鎧裝光纜,由多根光纖合并而成并且外面由金屬套管包裹。由于甲板與海底鉆機(jī)的通信距離非常長(zhǎng),信號(hào)經(jīng)過長(zhǎng)距離的傳輸,即便載體是光纖也會(huì)產(chǎn)生衰減,故在傳輸過程中要將信號(hào)進(jìn)行整形、放大以生成一定強(qiáng)度的信號(hào)繼續(xù)傳輸來保證通信質(zhì)量,所以必須使用中繼器。光接收機(jī)由光檢測(cè)器、放大器和相關(guān)電路組成,它把從光纖傳輸產(chǎn)生失真和衰減的光信號(hào)轉(zhuǎn)換成電信號(hào),經(jīng)過一系列的處理(整形、放大等)后,恢復(fù)成甲板串口發(fā)送的電信號(hào)。3軟件描述3.1sd卡剩余空間的讀取及顯示程序設(shè)計(jì)系統(tǒng)上電之后,立即對(duì)系統(tǒng)進(jìn)行初始化,MCU初始化時(shí)鐘、定時(shí)器、GPIO、A/D轉(zhuǎn)換以及各函數(shù)。初始化完成后,對(duì)LCD進(jìn)行清屏并在SD卡中開辟工作區(qū),判斷SD卡剩余空間并在屏幕上顯示,按規(guī)則讀取SD卡指定指令文件夾中的內(nèi)容,以設(shè)定的規(guī)則載到STM32的Flash中,關(guān)閉工作區(qū)。重新開辟一個(gè)工作區(qū)并新建一個(gè)文件,判斷按鍵輸入及搖桿的A/D采樣結(jié)果,判斷其對(duì)應(yīng)的指令并通過串口輸出,同時(shí)將指令顯示于屏幕上,并將操作動(dòng)作存入新建的文件中。系統(tǒng)的流程圖如圖8所示。本設(shè)計(jì)的主要程序主要可以分為以下幾個(gè)部分:程序開始與系統(tǒng)初始化,LCD屏的顯示;SD卡的存儲(chǔ)與讀取;搖桿輸入電壓值的A/D轉(zhuǎn)換以及按鍵的掃描與判斷。3.2繼電器編碼甲板手操器向下位機(jī)發(fā)送指令的數(shù)據(jù)是以幀的格式發(fā)送的。幀的格式為@XX;nn,bb;

。其中,“@”是幀頭;“XX”代表操作類型,有“BC”、“BS”、“BT”、“RS”等,分別代表“關(guān)閉繼電器”、“打開繼電器”、“心跳信號(hào)”、“復(fù)位信號(hào)”;“nn”是下位機(jī)主板卡號(hào),從01~02;“bb”是下位機(jī)主板的繼電器序號(hào),從01~24。操作類型與下位機(jī)主板卡號(hào)間用“;”分隔,下位機(jī)主板卡號(hào)與繼電器序號(hào)用“,”分隔,繼電器序號(hào)與回車換行符之間用“;”分隔。通常情況下一條操作指令至少包含兩幀數(shù)據(jù),兩幀之間軟件完成一個(gè)時(shí)延。兩個(gè)特殊的指令為:(1)心跳信號(hào)@BT;

;(2)系統(tǒng)復(fù)位@RS;

。4系統(tǒng)及驅(qū)動(dòng)結(jié)果檢測(cè)將SD卡插入PC,在卡中新建一個(gè)TXT文件,文件名為“指令配置”,此文檔中寫入鉆機(jī)指令,格式如表1所示。一行代表一個(gè)按鍵按下時(shí)所要發(fā)送的指令,最前面的序號(hào)用于按鍵的判別,不在發(fā)送內(nèi)容之中。每串指令都由兩條以上組成,兩條指令之間為延時(shí)的時(shí)間數(shù)值,每條指令以及兩條指令之間的延時(shí)時(shí)間都以冒號(hào)結(jié)尾。當(dāng)SD卡插入單片機(jī)并上電后,單片機(jī)軟件自動(dòng)識(shí)別。將手操器板子通過串口線與PC連接,配置板子在PC上的串口為COM7,設(shè)置波特率為9600b/s,數(shù)據(jù)位為8bit,停止位為1bit,無奇偶校驗(yàn)位。系統(tǒng)上電之后,用串口調(diào)試助手截獲的信息進(jìn)行穩(wěn)定性檢測(cè),計(jì)算50個(gè)按鍵串口丟包次數(shù)與亂碼幀數(shù),其

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論