用VB制作一個(gè)簡(jiǎn)單的壓力值采集顯示的上位機(jī)制作總結(jié)_第1頁(yè)
用VB制作一個(gè)簡(jiǎn)單的壓力值采集顯示的上位機(jī)制作總結(jié)_第2頁(yè)
用VB制作一個(gè)簡(jiǎn)單的壓力值采集顯示的上位機(jī)制作總結(jié)_第3頁(yè)
用VB制作一個(gè)簡(jiǎn)單的壓力值采集顯示的上位機(jī)制作總結(jié)_第4頁(yè)
用VB制作一個(gè)簡(jiǎn)單的壓力值采集顯示的上位機(jī)制作總結(jié)_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、gccx 上位機(jī)制作總結(jié)本系統(tǒng)的上位機(jī)制作主要采用microsoft word visual basic 編寫。主要實(shí)現(xiàn)將采集和傳輸?shù)臄?shù)據(jù)進(jìn)行接收、處理和儲(chǔ)存的功能。一、基本思路如下所示:開始從串口接收數(shù)據(jù)數(shù)據(jù)實(shí)時(shí)顯示將數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)庫(kù)中,并實(shí)現(xiàn)查詢結(jié)束由上圖可以知道,本程序的三個(gè)要點(diǎn)分別是:1、數(shù)據(jù)的接收部分,主要指將傳到串口的數(shù)據(jù)進(jìn)行接收,這是后面步驟的前提與基礎(chǔ)。2、數(shù)據(jù)的處理部分,將接收到的數(shù)據(jù)進(jìn)行實(shí)時(shí)處理與繪制曲線圖,并對(duì)超過(guò)警戒值的數(shù)據(jù)給予提示。3、數(shù)據(jù)的儲(chǔ)存部分, 指對(duì)接收處理過(guò)的數(shù)據(jù)按照一定的格式存儲(chǔ)到access2007 數(shù)據(jù)庫(kù)中,以便以后查詢,也為分析列車運(yùn)行規(guī)律以及螺絲生

2、產(chǎn)廠家提供真實(shí)可貴的資料??傮w思路是先分別實(shí)現(xiàn)三個(gè)部分對(duì)應(yīng)的功能,再將三個(gè)部分有機(jī)聯(lián)合起來(lái)形成功能完善的上位機(jī)系統(tǒng)。二、分別實(shí)現(xiàn)三個(gè)部分的制作過(guò)程及成果第一部分 ,從串口接收數(shù)據(jù)。主要用到的是mscomn 控件()實(shí)現(xiàn)串口通信。其測(cè)試設(shè)計(jì)界面如下圖所示:其中 mscomn 控件的屬性設(shè)置為:程序如下:測(cè)試便可實(shí)時(shí)顯示串口傳輸?shù)臄?shù)據(jù)。即實(shí)現(xiàn)了從串口接收數(shù)據(jù)。第二部分 ,數(shù)據(jù)的實(shí)時(shí)顯示部分。這個(gè)部分的測(cè)試與制作的思路是采用隨機(jī)函數(shù)產(chǎn)生數(shù)據(jù)并與時(shí)間控件()配合來(lái)模擬所收集的數(shù)據(jù),對(duì)其進(jìn)行實(shí)時(shí)繪圖。測(cè)試設(shè)計(jì)界面:程序如下:option explicitdim datafromcomy as integ

3、er 從串口讀過(guò)來(lái)的實(shí)時(shí)值y 坐標(biāo)dim datafromcomlasty as integer 上次的串口值y 坐標(biāo)dim timecount as integerdim i as integerprivate sub command1_click()返回按鈕unload meend subprivate sub form_load()picscale pic 調(diào)整圖像框的坐標(biāo)系z(mì)uobiaoxi pic 畫出坐標(biāo)系picmidleline pic 在圖像框中畫一條中線end subprivate sub picscale(picx as picturebox) 調(diào)整圖像框的坐標(biāo)系 (0,

4、-, 0)end subprivate sub picmidleline(picx as picturebox) 在圖像框中畫一條中線 (0, 1000)-, 1000), vbgreen 畫出中線end subprivate sub zuobiaoxi(picx as picturebox) 表示坐標(biāo)系dim i% (0, 0)-, 0), vbwhite x坐標(biāo)軸表示 (0, 0)-(0, , vbwhite y 坐標(biāo)軸表示for i = 0 to step 1000 x,y軸坐標(biāo)坐標(biāo)刻度顯示 (0, i)-(100, i) (i, 0)-(i, 100) next iend subpri

5、vate sub drawrealline(picx as picturebox, datafromcomy as integer, datafromcomlasty as integer, timecount as integer)if timecount - 1 0 then (timecount - 100, datafromcomlasty)-(timecount, datafromcomy), vbwhiteend ifend subprivate sub timer1_timer()datafromcomlasty = datafromcomyrandomizedatafromco

6、my = int(2000 - 0 + 1) * rnd + 0) 隨機(jī)數(shù)的產(chǎn)生timecount = timecount + 100if timecount - 100 = thentimecount = 0picmidleline piczuobiaoxi picend ifdrawrealline pic, datafromcomy, datafromcomlasty, timecount 畫出實(shí)時(shí)的曲線end sub測(cè)試結(jié)果如下:至此,由數(shù)據(jù)的實(shí)時(shí)繪圖部分的測(cè)試完成。第三部分 ,數(shù)據(jù)庫(kù)的操作,數(shù)據(jù)庫(kù)采用access2007 數(shù)據(jù)庫(kù)。并采用visual basic 的 ado data

7、控件()進(jìn)行連接和sql語(yǔ)言實(shí)現(xiàn)數(shù)據(jù)庫(kù)的添加,刪除和查閱等基本功能。(本實(shí)驗(yàn)以姓名、性別、年齡的操作為例)測(cè)試設(shè)計(jì)界面:創(chuàng)建數(shù)據(jù)庫(kù) mydb如下:首先是數(shù)據(jù)庫(kù)的連接:利用 ado 控件生成字符串連接數(shù)據(jù)庫(kù)的步驟為:1)右擊 data 控件,選擇 adodc 屬性2)點(diǎn)擊生成,選擇數(shù)據(jù)庫(kù)類型3)填寫數(shù)據(jù)源4)測(cè)試連接其次是數(shù)據(jù)庫(kù)操作:1)添加:dim rs as new dim cn as new private sub openconn()set cn = new set rs = new = aduseclient數(shù) 據(jù) 庫(kù) ;persist security info=falseend s

8、ubprivate sub closeconn()if sckclosed then set rs = nothingif sckclosed then set cn = nothingend subprivate sub command1_click()call openconn select 姓 名 ,性 別 ,年 齡from 表1, cn,adopenstatic, adlockpessimistic( 姓名 ) = ( 性別 ) = ( 年齡 ) = call closeconnmsgbox 添加成功! , , 溫馨提示 = = = end subprivate sub command

9、2_click()unload meend subprivate sub command3_click()unload meend subprivate sub command4_click()unload meend sub結(jié)果:2)刪除:private cn as new dim rs as new private sub openconn()set cn = new set rs = new = aduseclient;persist security info=falseend subprivate sub closeconn()if sckclosed then set rs = n

10、othingif sckclosed then set cn = nothingend subprivate sub command1_click()call openconn select id from 表 1 where id= & , cn, 3, 3set rs = nothingmsgbox 刪除成功 , , successful!end subprivate sub command2_click()unload meend sub結(jié)果:3)查看:private cn as new dim rs as new private sub openconn()set cn = n

11、ew set rs = new = aduseclient數(shù)據(jù)庫(kù);persist security info=falseend subprivate sub closeconn()if sckclosed then set rs = nothingif sckclosed then set cn = nothingend subprivate sub command1_click()call openconn select id, 姓名 ,性別 , 年齡 from 表 1 where id= & , cn, adopenstatic, adlockpessimistic = (姓名 )

12、 = (性別 ) = (年齡 )call closeconnend subprivate sub command2_click()unload meend sub結(jié)果:至此,上位機(jī)的三個(gè)部分的關(guān)鍵問(wèn)題已經(jīng)解決。三、上位機(jī)各部分的有機(jī)連接為了實(shí)現(xiàn)上位機(jī)接收、處理、儲(chǔ)存數(shù)據(jù)的功能,需要將上述三個(gè)部分結(jié)合為一個(gè)整體,但由于數(shù)據(jù)采集和無(wú)線傳輸部分還未完全貫通,第一部分的串口通信無(wú)法進(jìn)行測(cè)試。于是僅實(shí)現(xiàn)了數(shù)據(jù)庫(kù)操作與實(shí)時(shí)繪圖的結(jié)合。其包括:隨機(jī)函數(shù)產(chǎn)生數(shù)據(jù)并與時(shí)間控件結(jié)合代替串口通信部分。數(shù)據(jù)實(shí)時(shí)繪圖和過(guò)低值警報(bào)。數(shù)據(jù)實(shí)時(shí)存儲(chǔ)。原始記錄查詢。實(shí)驗(yàn)設(shè)計(jì)界面:程序設(shè)計(jì):option explicitdim

13、k as integerdim datafromcomy as integer 從串口讀過(guò)來(lái)的實(shí)時(shí)值y 坐標(biāo)dim datafromcomlasty as integer 上次的串口值y 坐標(biāo)dim timecount as integerdim i as integerdim rs as new dim cn as new private sub openconn()set cn = new set rs = new = aduseclient;persist security info=falseend subprivate sub closeconn() set rs = nothing

14、 set cn = nothingend subprivate sub form_load()picscale pic 調(diào)整圖像框的坐標(biāo)系picmidleline piczuobiaoxi picend subprivate sub picscale(picx as picturebox) 調(diào)整圖像框的坐標(biāo)系 (0, -, 0)end subprivate sub picmidleline(picx as picturebox) 在圖像框中畫一條中線 (0, 1500)-, 1500), vbred 畫出中線end subprivate sub zuobiaoxi(picx as pictur

15、ebox) 表示坐標(biāo)系dim i% (0, 0)-, 0) x坐標(biāo)軸表示 (0, 0)-(0, y坐標(biāo)軸表示for i = 0 to step 1000 x,y軸坐標(biāo)坐標(biāo)刻度顯示 (0, i)-(100, i) (i, 0)-(i, 100) next iend subprivate sub drawrealline(picx as picturebox, datafromcomy as integer, datafromcomlasty as integer, timecount as integer)if timecount - 1 0 then(timecount-100,datafro

16、mcomlasty)-(timecount, datafromcomy), vbgreenend ifend subprivate sub timer1_timer()if k = 1 thendatafromcomlasty = datafromcomyrandomizedatafromcomy = int(3000 - 0 + 1) * rnd + 0) 隨機(jī)數(shù)的產(chǎn)生if datafromcomy = thentimecount = 0picmidleline piczuobiaoxi picend ifdrawrealline pic, datafromcomy, datafromcom

17、lasty, timecount 畫出實(shí)時(shí)的曲線end ifend subprivate sub command1_click() = falsek = 1end subprivate sub command2_click() = truek = 0end subprivate sub command3_click()unload meend subprivate sub command4_click()unload meend sub實(shí)驗(yàn)結(jié)果:查詢功能:dim rs as new dim cn as new private sub openconn()set cn = new set rs = new = aduseclient數(shù) 據(jù) 庫(kù) ;persist security info=falseend subprivate sub closeconn()set rs = nothingset cn = nothingend subprivate

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論