一種相位式激光測(cè)距系統(tǒng)和方法
【專利摘要】本發(fā)明提出一種相位式激光測(cè)距系統(tǒng)和方法,對(duì)已有激光器進(jìn)行二次開發(fā),使得用戶能夠通過上位PC機(jī)控制激光器的工作模式,執(zhí)行距離測(cè)量并輸出測(cè)量數(shù)據(jù),由單片機(jī)對(duì)輸出的測(cè)量數(shù)據(jù)進(jìn)行解碼,并輸出到上位PC機(jī)進(jìn)行顯示。本發(fā)明提出的技術(shù)方案還可以通過最小二乘法對(duì)測(cè)量精度進(jìn)行提升。
【專利說明】一種相位式激光測(cè)距系統(tǒng)和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及激光測(cè)距【技術(shù)領(lǐng)域】,具體涉及一種相位式激光測(cè)距系統(tǒng)和方法。
【背景技術(shù)】
[0002]激光測(cè)距利用了激光具有的良好的單色性、方向性、相干性以及高亮度的特點(diǎn),以實(shí)現(xiàn)高精度的測(cè)量,其可應(yīng)用于長度、距離和角度等的測(cè)量當(dāng)中。
[0003]世界上第一臺(tái)激光測(cè)距儀于1961年研制成功。而在上世紀(jì)70年代,YAG激光器技術(shù)逐漸成熟,并且大量應(yīng)用于激光測(cè)距儀中。在80年代,隨著半導(dǎo)體的進(jìn)步,半導(dǎo)體激光器在輸出功率、光束方向性以及探測(cè)器;靈敏度等方面均取得顯著的進(jìn)步。而在近年來,隨著集成電路技術(shù)的發(fā)展和半導(dǎo)體激光器的成熟,出現(xiàn)了面向大眾日常生產(chǎn)生活使用的,對(duì)人眼安全、低價(jià)便攜的手持式激光測(cè)距儀,并且發(fā)展十分迅速。
[0004]激光測(cè)距儀測(cè)距作為近年來快速發(fā)展的一種測(cè)距方式,以其測(cè)量精度高,分辨率高,抗干擾能力強(qiáng)和小巧輕便等優(yōu)點(diǎn),在軍用和民用領(lǐng)域應(yīng)用日益廣泛?,F(xiàn)階段我國在激光測(cè)距領(lǐng)域與國外尚有差距,在軍事工業(yè)領(lǐng)域依然受制于人。希望借助一些國外的研發(fā)經(jīng)驗(yàn)成果,對(duì)現(xiàn)有的FLUKE411D手持式激光測(cè)距儀進(jìn)行二次開發(fā),研發(fā)一種微小型無人通用的激光測(cè)距模塊,并對(duì)其進(jìn)行提升精度的算法研究。
【發(fā)明內(nèi)容】
[0005]為了解決現(xiàn)有技術(shù)中存在的上述技術(shù)問題,本發(fā)明提出一種相位式激光測(cè)距系統(tǒng)和方法。
[0006]所述系統(tǒng)包括:
[0007]上位PC機(jī)、通過PL2303串口轉(zhuǎn)USB模塊與上位PC機(jī)連接的PIC16F877A單片機(jī)、以及通過轉(zhuǎn)接板與所述PIC16F877A單片機(jī)連接的激光測(cè)距儀;
[0008]其中,所述激光測(cè)距儀采用FLUKE激光器,使用轉(zhuǎn)接板將FLUKE激光器的輸出信號(hào)端口與PIC16F877A單片機(jī)連接,采集FLUKE激光器輸出的測(cè)距數(shù)據(jù);使用轉(zhuǎn)接板將FLUKE激光器的接收輸入控制信號(hào)的端口與PIC16F877A單片機(jī)連接,將所述PIC16F877A單片機(jī)輸出的控制工作模式的指令輸入所述FLUKE激光器;
[0009]其中,所述PL2303串口轉(zhuǎn)USB模塊包括內(nèi)置的USB功能控制器、USB收發(fā)器、振蕩器和帶有全部調(diào)制解調(diào)器功能的通用異步傳輸器UART ;
[0010]其中,所述PIC16F877A單片機(jī)對(duì)所述采集的FLUKE激光器輸出的測(cè)距數(shù)據(jù)執(zhí)行解碼,將解碼后的數(shù)據(jù)通過所述PL2303串口轉(zhuǎn)USB模塊傳輸?shù)缴衔籔C機(jī)進(jìn)行顯示,和/或接收上位PC機(jī)通過所述PL2303串口轉(zhuǎn)USB模塊發(fā)送的控制命令,將所述控制命令轉(zhuǎn)換成控制所述FLUKE激光器工作模式的指令。
[0011]一種基于所述系統(tǒng)的相位式激光測(cè)距方法,包括:
[0012](I)系統(tǒng)上電工作后,對(duì)所述PIC16F877A單片機(jī)執(zhí)行初始化,具體包括:設(shè)置傳輸波特率,打開所述PIC16F877A單片機(jī)的UART通道,設(shè)置所述PIC16F877A單片機(jī)的AN0-AN7通道為信號(hào)輸入通道,準(zhǔn)備對(duì)輸入模擬信號(hào)采樣,并打開所述PIC16F877A單片機(jī)的總中斷;
[0013](2)系統(tǒng)進(jìn)入SLEEP工作模式,等待用戶輸入控制命令;
[0014](3)當(dāng)檢測(cè)到用戶通過上位PC機(jī)輸入的控制命令為字符‘c’時(shí),控制所述FLUKE激光器進(jìn)入連續(xù)測(cè)量Continue工作模式,在此工作模式中FLUKE激光器處于不間斷距離測(cè)量狀態(tài);在處于連續(xù)測(cè)量Continue工作模式中時(shí),如果接收到為字符‘e’的控制命令,則控制FLUKE激光器跳出所述連續(xù)測(cè)量Continue工作模式,進(jìn)入SLEEP工作模式;
[0015](4)在SLEEP工作模式中,當(dāng)接收到為字符‘r’的控制命令時(shí),控制FLUKE激光器進(jìn)入Request工作模式,在此工作模式中所述FLUKE激光器將首先處于等待狀態(tài),此時(shí)如果接收到為字符‘g’的控制命令,則測(cè)量得到一個(gè)距離值,并且保存這個(gè)距離值,然后控制所述FLUKE激光器再次進(jìn)入Request工作模式;在處于所述Request工作模式時(shí),如果接收到為字符‘e’的控制命令,則控制所述FLUKE激光器返回SLEEP工作模式。
[0016]特別地,所述方法還包括步驟:
[0017](5)在執(zhí)行多次距離測(cè)量后,采用最小二乘法對(duì)多次測(cè)量距離的結(jié)果進(jìn)行處理。
[0018]本發(fā)明提出的系統(tǒng)能夠使得用戶通過上位PC機(jī)對(duì)已有激光器的工作模式進(jìn)行控制,并能夠通過最小二乘法對(duì)測(cè)量精度進(jìn)行提升。
【專利附圖】
【附圖說明】
[0019]附圖1為本發(fā)明提出的一種相位式激光測(cè)距系統(tǒng)結(jié)構(gòu)圖。
[0020]附圖2為本發(fā)明提出的一種相位式激光測(cè)距方法流程圖。
[0021]附圖3為FLUKE激光器輸出測(cè)量信號(hào)波形圖。
[0022]附圖4為IXD液晶屏數(shù)據(jù)線示意圖。
[0023]附圖5為液晶屏數(shù)據(jù)線示意圖。
[0024]附圖6示出的是基于polyfit函數(shù)的最小二乘法擬合曲線。
[0025]附圖7示出的是基于Isqcurvefit函數(shù)的最小二乘法擬合曲線。
[0026]附圖8示出的是基于圖形界面的最小二乘法擬合曲線和殘差示意圖。
[0027]附圖9示出的是基于圖形界面的最小二乘法擬合曲線方程和殘差參數(shù)示意圖。
[0028]附圖10示出的是基于cftool函數(shù)的最小二乘法擬合曲線。
【具體實(shí)施方式】
[0029]下面參照附圖,對(duì)本發(fā)明的【具體實(shí)施方式】進(jìn)行描述。
[0030]參照附圖1,本發(fā)明的第一實(shí)施例提出的一種相位式激光測(cè)距系統(tǒng)包括上位PC機(jī)、PL2303串口轉(zhuǎn)USB模塊、PIC16F877A單片機(jī)、PICKU3下載器、激光測(cè)距儀和轉(zhuǎn)接板。
[0031]激光測(cè)距儀采用FLUKE激光器。對(duì)FLUKE激光器進(jìn)行二次開發(fā),分別使用轉(zhuǎn)接板將FLUKE激光器給LCD液晶屏的輸出信號(hào)和按鍵面板的控制信號(hào)與PIC16F877A單片機(jī)接起來,實(shí)現(xiàn)PIC16F877A單片機(jī)對(duì)激光器的控制和信號(hào)的采集。
[0032]一個(gè)轉(zhuǎn)接板連接的端口是FLUKE411D激光器的控制端,在原來的激光測(cè)距儀中該端口與FLUKE的按鍵面板相連,在設(shè)計(jì)的系統(tǒng)中給這個(gè)端口所有的7條線中的3條線電壓信號(hào),以實(shí)現(xiàn)對(duì)進(jìn)行FLUKE激光器的控制。這樣做的原因是因?yàn)檫@3條線所控制的工作模式是系統(tǒng)工作時(shí)所需要的,而另外幾條線所控制的是激光器的加減,改變測(cè)量模式等其它工作狀態(tài)的,與所進(jìn)行的研究沒有關(guān)系,所以就不對(duì)這些端口施加信號(hào)了。
[0033]一個(gè)轉(zhuǎn)接板連接的是FLUKE激光器芯片處理信號(hào)輸出端口。單片機(jī)接收FLUKE激光器輸出的處理信號(hào),完成對(duì)它們輸出信號(hào)的解碼,將它們所表示的數(shù)字解碼出來,然后由單片機(jī)傳輸給上位機(jī),在上位機(jī)中顯示出FLUKE激光器所測(cè)得的距離。具體介紹將在下面的解碼部分?jǐn)⑹觥?br>
[0034]PICkit3編程器/調(diào)試器是一款由在Windows平臺(tái)上運(yùn)行MPLAB IDE (v8.20或更高版本)軟件的PC控制的簡單低成本在線調(diào)試器。PICkit3編程器/調(diào)試器是開發(fā)工程師工具包的不可或缺的組成部分??捎糜趶能浖_發(fā)到硬件集成等各種應(yīng)用領(lǐng)域。
[0035]PL2303USB轉(zhuǎn)串口模塊是Prolific公司生產(chǎn)的一種高度集成的RS232-USB接口轉(zhuǎn)換器,可提供一個(gè)RS232全雙工異步串行通信裝置與USB功能接口便利連接的解決方案。
[0036]該器件內(nèi)置USB功能控制器、USB收發(fā)器、振蕩器和帶有全部調(diào)制解調(diào)器控制信號(hào)的UART,只需外接幾只電容就可實(shí)現(xiàn)USB信號(hào)與RS232信號(hào)的轉(zhuǎn)換,能夠方便嵌入到各種設(shè)備;
[0037]該器件作為USB/RS232雙向轉(zhuǎn)換器,一方面從主機(jī)接收USB數(shù)據(jù)并將其轉(zhuǎn)換為RS232信息流格式發(fā)送給外設(shè);另一方面從RS232外設(shè)接收數(shù)據(jù)轉(zhuǎn)換為USB數(shù)據(jù)格式傳送回主機(jī)。
[0038]參見圖2,本發(fā)明另一個(gè)實(shí)施例提出了一種基于上述系統(tǒng)的相位式激光測(cè)距方法,包括如下步驟:
[0039]系統(tǒng)開始工作后首先對(duì)單片機(jī)進(jìn)行初始化,使單片機(jī)的各項(xiàng)工作狀態(tài)達(dá)到需要的狀態(tài),即傳輸波特率為9600symbol/s,打開單片機(jī)的UART通道,使單片機(jī)的AN0-AN7通道為信號(hào)輸入,準(zhǔn)備對(duì)輸入模擬信號(hào)采樣,打開總中斷。
[0040]然后系統(tǒng)進(jìn)入默認(rèn)的SLEEP工作模式即等待當(dāng)中。如果沒有指定指令輸入,系統(tǒng)將一直處于SLEEP模式中,直到從主控計(jì)算機(jī)通過串口發(fā)送相應(yīng)指令使系統(tǒng)進(jìn)入不同的預(yù)設(shè)模式中工作。
[0041]當(dāng)輸入‘c’字符時(shí),系統(tǒng)進(jìn)入Continue工作模式,即連續(xù)工作測(cè)量模式,此時(shí)系統(tǒng)處于不間斷測(cè)量工作中,而當(dāng)再輸入‘e’時(shí),系統(tǒng)則跳出Continue工作模式,進(jìn)入SLEEP等待模式當(dāng)中。
[0042]在SLEEP等待模式中,當(dāng)輸入‘r’字符指令時(shí),系統(tǒng)則進(jìn)入Request工作模式當(dāng)中,在此模式中系統(tǒng)將首先處于等待當(dāng)中,當(dāng)再輸入指令‘g’字符時(shí),系統(tǒng)測(cè)量得到一個(gè)距離值,并且保存這個(gè)距離值,之后系統(tǒng)又進(jìn)入Request模式中繼續(xù)等待,當(dāng)再有‘g’字符指令時(shí),測(cè)得一個(gè)距離值,即在需要系統(tǒng)測(cè)量時(shí)系統(tǒng)才進(jìn)行測(cè)量。而當(dāng)在Request模式中等待時(shí),輸入指令為‘e,字符時(shí),系統(tǒng)則回到SLEEP模式中等待。
[0043]除了上述敘述的工作過程外,在任何一步輸入其它無關(guān)指令系統(tǒng)都不會(huì)響應(yīng),仍將處于當(dāng)前工作狀態(tài)當(dāng)中。
[0044]本發(fā)明的另外一個(gè)實(shí)施例提出了 PIC16F877A單片機(jī)對(duì)從FLULKE激光器采集的數(shù)據(jù)信號(hào)進(jìn)行解碼的方案。在這部分,將重點(diǎn)介紹一下FLUKE411D激光器輸出信號(hào)的特點(diǎn),以及如何讓單片機(jī)對(duì)FLUKE411D激光器的輸出信號(hào)進(jìn)行解碼的。
[0045]首先要說明的是,單片機(jī)系統(tǒng)采集的FLUKE411D激光器的輸出信號(hào)是原FLUKE411D激光器主測(cè)量模塊輸出給IXD液晶屏的信號(hào),這是一組電壓信號(hào)。如圖3所示。從圖中可以看出輸出的信號(hào)分為4個(gè)級(jí)別,在一個(gè)周期當(dāng)中,會(huì)有8個(gè)小段,而采集的數(shù)據(jù)并不是整個(gè)周期,只采集每個(gè)周期的第1、3、5、7小段的數(shù)據(jù),而2、4、6、8小段的數(shù)據(jù)則是無效數(shù)據(jù),解碼過程中并不需要它們。
[0046]通過圖4,圖5可以看出,IXD每個(gè)液晶屏的顯示是由4條COM線和2個(gè)SEG線控制的。
[0047]通過對(duì)4條COM線輸出波形的進(jìn)行檢測(cè),發(fā)現(xiàn)4條COM線輸出的波形是完全一樣的,只是在相位上依次相差90°,即相差2個(gè)小段,最終形成一個(gè)循環(huán)。而在每個(gè)周期中,4條COM線只在其中的1/8的周期中處于最高電壓狀態(tài)(可以認(rèn)為其在每個(gè)周期開始的1/8時(shí)間內(nèi)是高電壓狀態(tài)),其余時(shí)間電壓均低于最高電壓。由于只有在COM線與SEG線之間的電壓差幾乎達(dá)到VDD (在這里大約為3V)才能使相應(yīng)的LCD數(shù)碼管顯示,因此測(cè)量每個(gè)SEG線的波形就成為解碼FLUKE411D輸出信號(hào)的關(guān)鍵。
[0048]對(duì)于測(cè)量SEG線信號(hào),使用的方法是利用單片機(jī)的A/D采集通道對(duì)特定時(shí)間的SEG信號(hào)(即每個(gè)周期1、3、5、7小段的SEG信號(hào))進(jìn)行采樣,然后將采樣的結(jié)果分別與COM線的最大值即單片機(jī)A/D采集通道所能轉(zhuǎn)換出的最大值做差(即用1023減去從A/D通道采集到的SEG線的數(shù)),通過檢測(cè)差值的大小來確定LCD液晶屏上相應(yīng)每段是顯示還是關(guān)閉的。
[0049]在采集到所需要的LCD液晶屏上每段的數(shù)據(jù)后,可以通過排除判斷法來進(jìn)行解碼。先對(duì)中間段進(jìn)行判斷,如果它是關(guān)閉著的,那么顯示的數(shù)字就可能是O或I或7,然后再對(duì)上端和下端進(jìn)行檢測(cè),如果全部都顯示則該數(shù)字是0,如果下端不顯示而上端顯示,則這個(gè)數(shù)字是7,如果上端和下端都不顯示則數(shù)字應(yīng)為I (程序中實(shí)際是在上面兩項(xiàng)判斷都不是時(shí)則認(rèn)為剩下的數(shù)字是I)。而如果中間段顯示,然后檢測(cè)左上方為關(guān)閉,則顯示數(shù)字應(yīng)為2或3,然后對(duì)左下端進(jìn)行檢測(cè),如果顯示則數(shù)字應(yīng)為2,而不顯示則數(shù)字應(yīng)為3。之后在進(jìn)行判斷,如果檢測(cè)到右上段是關(guān)閉著的,則顯示的數(shù)字可能為5或6,然后如果檢測(cè)到左下段為關(guān)閉,頂部為開著的,則顯示的數(shù)字應(yīng)是5,如果判斷為不是則顯示的數(shù)字是5。如果左下不顯示同時(shí)頂端也不顯示,則顯示的數(shù)字為4,然后再檢測(cè)左下部,不顯示為9。最后如果以上判斷均不對(duì),則剩下的數(shù)字只能是8 了。
[0050]通過將以上邏輯可以很容易的實(shí)現(xiàn)對(duì)FLUKE激光測(cè)距儀的解碼。
[0051]另外,對(duì)于10個(gè)數(shù)字的判斷,使用的是排除法,即把不可能的排除掉之后,剩下的就是所需要的。采用這種判斷的好處是判斷語句相應(yīng)較少,且關(guān)系較為簡單明確,如果對(duì)每個(gè)數(shù)字的判斷都采用完全判斷,即必須嚴(yán)格按照其顯示的數(shù)字的顯示段來進(jìn)行判斷,雖然會(huì)得到嚴(yán)格意義上的數(shù)字,但是這樣將會(huì)使判斷函數(shù)過于冗長復(fù)雜,且容易出現(xiàn)死循環(huán)的情況。當(dāng)然,雖然目前的這種算法判斷較為簡單,但是一旦出現(xiàn)不是要解碼的符號(hào)出現(xiàn),判斷函數(shù)依舊會(huì)解碼出一個(gè)數(shù)字出來,這是這種算法的缺陷。這也就是為什么在測(cè)數(shù)階段有時(shí)會(huì)出現(xiàn)全是‘I’的原因。由于判斷函數(shù)以及FLUKE411D激光器輸出給LCD液晶屏的信號(hào)的問題,使得在出現(xiàn)亂碼或者其他一些干擾信號(hào)或系統(tǒng)采集數(shù)據(jù)出現(xiàn)異常時(shí),判斷出‘I’的概率是最大的。這一點(diǎn)可以從實(shí)際測(cè)量的數(shù)據(jù)結(jié)果中得出。
[0052]在數(shù)據(jù)的采集階段,讓程序判斷COM線中第一條輸出線的數(shù)據(jù)大小來決定是否對(duì)SEG線的信號(hào)采樣。對(duì)于COMl線,這條線是唯一需要測(cè)量的一條輸出數(shù)據(jù)線,而其他的COM線則不需要做任何處理。當(dāng)從COMl線采集到的信號(hào)大于900后,讓程序進(jìn)入SEG線的采樣當(dāng)中,在SEG線的采樣過程中,由于不是連續(xù)采樣,在采樣過程中需要采用延時(shí)跳躍采樣法,即在需要的時(shí)間端上采樣信號(hào),因此需要在每段采樣之間加入延時(shí)函數(shù)。由于延時(shí)必須精確,因此采用NOP函數(shù)作為一個(gè)延時(shí),在PIC16F877A單片機(jī)中,采用4M晶振時(shí),一個(gè)NOP函數(shù)執(zhí)行的時(shí)間大約為5 μ S,通過觀察示波器上的波形,大概能夠計(jì)算出一個(gè)初始的NOP循環(huán)次數(shù),然后可以在程序運(yùn)行時(shí)通過將采集到的相應(yīng)時(shí)間相應(yīng)段上的數(shù)據(jù)顯示出來,與理論結(jié)果進(jìn)行比較,來決定延時(shí)時(shí)間是否合適,通過不斷的調(diào)試,最終可以得到一個(gè)對(duì)系統(tǒng)來說較合適的延時(shí)時(shí)間。而在每采集完一個(gè)通道的數(shù)據(jù)后,必須馬上讓單片機(jī)處理A/D模塊采集來的數(shù)據(jù),馬上將其保存到之前定義好的數(shù)組當(dāng)中去,以防后面的程序?qū)Σ杉降臄?shù)據(jù)產(chǎn)生干擾。
[0053]本發(fā)明另外一個(gè)實(shí)施例提出了一種基于最小二乘法的測(cè)距精度提升方案。最小二乘法是一種數(shù)學(xué)優(yōu)化技術(shù)。它通過最小化誤差的平方和尋找數(shù)據(jù)的最佳函數(shù)匹配。利用最小二乘法可以簡便地求得未知的數(shù)據(jù),并使得這些求得的數(shù)據(jù)與實(shí)際數(shù)據(jù)之間誤差的平方和為最小。最小二乘法還可用于曲線擬合。
[0054]對(duì)給定數(shù)據(jù)點(diǎn){(Xi, Yi)} (i = O, I, ".,m),在取定的函數(shù)類Φ中,求p(x) e Φ ,使誤差的平方和E~2最小,Ε~2 =Σ [p(Xi)_Yi]~2。從幾何意義上講,就是尋求與給定點(diǎn){(Xi,Yi)}(i =0,1,…,m)的距離平方和為最小的曲線y = p(X)。函數(shù)p(x)稱為擬合函數(shù)或最小二乘解,求擬合函數(shù)P (x)的方法稱為曲線擬合的最小二乘法。
[0055]polyfit 函數(shù)擬合
[0056]polyfit函數(shù)可以計(jì)算數(shù)據(jù)的η次最小二乘擬合多項(xiàng)式,其調(diào)用格式為A =polyfit (X,y, η),式中X和y分別為自變量和因變量,而η為多項(xiàng)式的次數(shù),而得到的A為多項(xiàng)式系數(shù)按降冪排列得出的行向量,可以使用PolyfitO函數(shù)求取多項(xiàng)式的值,η = I時(shí)就為線性擬合,多項(xiàng)式擬合是最簡單且常用的方法。
[0057]利用MATLAB提供的polyfit函數(shù),可以對(duì)采樣得到的數(shù)據(jù)進(jìn)行最小二乘擬合,擬合得到的圖像如圖6所示,擬合得到的曲線:y = 0.9990X+112.8229。
[0058]Isqcurvefit 函數(shù)擬合
[0059]MATLAB的最優(yōu)化工具箱中提供了內(nèi)建函數(shù)lsqcurvefit,它是用來解決最小二乘曲線擬合的。該函數(shù)的調(diào)用格式為:
[0060]c = lsqcurvefit (FUN, a0, x, y),
[0061]其中:FUN為原型函數(shù)的MATLAB表示,可以是M函數(shù)或匿名函數(shù)叫為最優(yōu)化的初值;x,I為原始輸入輸出數(shù)據(jù)向量。
[0062]通過將數(shù)據(jù)輸入lsqcurvefit函數(shù)當(dāng)中,得到了如圖7的擬合曲線,而得到的擬合方程為:y = 0.9990*χ+112.8229。
[0063]圖形界面擬合
[0064]圖形界面擬合,是在MATLAB當(dāng)中先將數(shù)據(jù)點(diǎn)輸入工作空間,然后將數(shù)據(jù)點(diǎn)繪出,在彈出的圖形窗口中則可以對(duì)選擇對(duì)數(shù)據(jù)進(jìn)行處理的方法。如果需要將以上的結(jié)果保存到工作空間,單擊Save to workspace鍵即可進(jìn)行保存。圖8上面的直線圖為擬合的曲線,圖8下面的矩形圖為采樣點(diǎn)和擬合曲線之間的在各個(gè)點(diǎn)的殘差。而從圖9可以看出擬合方程為:y = 0.99901X+112.82,擬合后的殘差為 3.0427。
[0065]cftool函數(shù)擬合
[0066]MATLAB的曲線擬合工具箱有強(qiáng)大的圖形擬合功能,它是一個(gè)可視化的圖形界面??梢苑奖憧旖莸剡M(jìn)行列表曲線擬合。
[0067]輸入cftool命令可以打開MATLAB中最常用的曲線擬合工具箱,在這個(gè)工具箱中,可以進(jìn)行相應(yīng)的曲線擬合,如圖10所示。
[0068]當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明的權(quán)利要求的保護(hù)范圍。
【權(quán)利要求】
1.一種相位式激光測(cè)距系統(tǒng),其特征在于,包括: 上位PC機(jī)、通過PL2303串口轉(zhuǎn)USB模塊與上位PC機(jī)連接的PIC16F877A單片機(jī)、以及通過轉(zhuǎn)接板與所述PIC16F877A單片機(jī)連接的激光測(cè)距儀; 其中,所述激光測(cè)距儀采用FLUKE激光器,使用轉(zhuǎn)接板將FLUKE激光器的輸出信號(hào)端口與PIC16F877A單片機(jī)連接,采集FLUKE激光器輸出的測(cè)距數(shù)據(jù);使用轉(zhuǎn)接板將FLUKE激光器的接收輸入控制信號(hào)的端口與PIC16F877A單片機(jī)連接,將所述PIC16F877A單片機(jī)輸出的控制工作模式的指令輸入所述FLUKE激光器; 其中,所述PL2303串口轉(zhuǎn)USB模塊包括內(nèi)置的USB功能控制器、USB收發(fā)器、振蕩器和帶有全部調(diào)制解調(diào)器功能的通用異步傳輸器UART ; 其中,所述PIC16F877A單片機(jī)對(duì)所述采集的FLUKE激光器輸出的測(cè)距數(shù)據(jù)執(zhí)行解碼,將解碼后的數(shù)據(jù)通過所述PL2303串口轉(zhuǎn)USB模塊傳輸?shù)缴衔籔C機(jī)進(jìn)行顯示,和/或接收上位PC機(jī)通過所述PL2303串口轉(zhuǎn)USB模塊發(fā)送的控制命令,將所述控制命令轉(zhuǎn)換成控制所述FLUKE激光器工作模式的指令。
2.一種基于權(quán)利要求1所述系統(tǒng)的相位式激光測(cè)距方法,其特征在于,包括如下步驟: (1)系統(tǒng)上電工作后,對(duì)所述PIC16F877A單片機(jī)執(zhí)行初始化,具體包括:設(shè)置傳輸波特率,打開所述PIC16F877A單片機(jī)的UART通道,設(shè)置所述PIC16F877A單片機(jī)的AN0-AN7通道為信號(hào)輸入通道,準(zhǔn)備對(duì)輸入模擬信號(hào)采樣,并打開所述PIC16F877A單片機(jī)的總中斷; (2)系統(tǒng)進(jìn)入SLEEP工作模式,等待用戶輸入控制命令; (3)當(dāng)檢測(cè)到用戶通過上位PC機(jī)輸入的控制命令為字符‘c’時(shí),控制所述FLUKE激光器進(jìn)入連續(xù)測(cè)量Continue工作模式,在此工作模式中FLUKE激光器處于不間斷距離測(cè)量狀態(tài);在處于連續(xù)測(cè)量Continue工作模式中時(shí),如果接收到為字符‘e’的控制命令,則控制FLUKE激光器跳出所述連續(xù)測(cè)量Continue工作模式,進(jìn)入SLEEP工作模式; (4)在SLEEP工作模式中,當(dāng)接收到為字符‘r’的控制命令時(shí),控制FLUKE激光器進(jìn)入Request工作模式,在此工作模式中所述FLUKE激光器將首先處于等待狀態(tài),此時(shí)如果接收到為字符‘g’的控制命令,則測(cè)量得到一個(gè)距離值,并且保存這個(gè)距離值,然后控制所述FLUKE激光器再次進(jìn)入Request工作模式;在處于所述Request工作模式時(shí),如果接收到為字符‘e’的控制命令,則控制所述FLUKE激光器返回SLEEP工作模式。
3.如權(quán)利要求2所述的方法,其特征在于,還包括步驟: (5)在執(zhí)行多次距離測(cè)量后,采用最小二乘法對(duì)多次測(cè)量距離的結(jié)果進(jìn)行處理。
【文檔編號(hào)】G01S17/32GK104076367SQ201410333756
【公開日】2014年10月1日 申請(qǐng)日期:2014年7月14日 優(yōu)先權(quán)日:2014年7月14日
【發(fā)明者】肖瑾, 鄭惠俊, 胡曉光, 曼諾·勞西列維奇, 肖繼忠, 范建新, 吳冰 申請(qǐng)人:北京航空航天大學(xué)