<wbr id="a5jij"><var id="a5jij"><th id="a5jij"></th></var></wbr>
    1. <ruby id="a5jij"></ruby>

    2. 欧美福利网站,日韩综合,无码人妻精品一区二区三区温州,国产成人有码,3P性视频,亚洲丝袜熟女在线樱桃,日本少妇视频,亚洲熟女视频
      產(chǎn)品列表
      聯(lián)系方式

      杭州易測計(jì)量設(shè)備有限公司

      地 址:杭州市余杭區(qū)北沙西路152號

      聯(lián)系人:王經(jīng)理

      電 話:0571-85108155

      傳 真:0571-85105122

      手 機(jī):18094712401

      行業(yè)資訊
      ?

      VB編程技術(shù)在地磅管理軟件上的應(yīng)用

      本文通過對一個(gè)地磅管理系統(tǒng)軟件的編程過程,介紹了用VB6.0編程軟件在地磅管理系統(tǒng)中的技術(shù)應(yīng)用。 
        1.引言 
        Visual Basic(簡稱VB)是Win- 
        dows環(huán)境下簡單、易學(xué)、高效的編程語言開發(fā)系統(tǒng),以其所見即所得的可視化界面設(shè)計(jì)風(fēng)格和32位面向?qū)ο蟮某绦蛟O(shè)計(jì)等特點(diǎn),已廣泛地應(yīng)用于各個(gè)領(lǐng)域,是很多計(jì)算機(jī)軟件開發(fā)人員采用的開發(fā)工具。VB提供了良好的界面設(shè)計(jì)能力,提供了強(qiáng)大的數(shù)據(jù)庫訪問功能和微機(jī)串口通信功能。完全能夠滿足地磅管理系統(tǒng)的數(shù)據(jù)采集、處理和存儲(chǔ)要求。下面以SCS微機(jī)地磅稱重軟件為例,敘述VB軟件對系統(tǒng)中幾個(gè)重要功能程序的設(shè)計(jì)。 
        2.管理軟件功能需求 
        SCS微機(jī)地磅稱重系統(tǒng)主要通過計(jì)算機(jī)串口連接地磅稱重儀表,處理儀表所獲取的汽車重量信息,達(dá)到管理汽車稱重?cái)?shù)據(jù)的目的。系統(tǒng)軟件要求達(dá)到的功能主要有: 
        (1)設(shè)置管理權(quán)限,達(dá)到操作人員分級登錄操作。 
        (2)記錄、貯存并打印每一次稱重結(jié)果。包括車號、貨物名稱、運(yùn)貨單位、駕駛員、毛皮重、凈重、進(jìn)出廠過磅時(shí)間、司磅員等內(nèi)容。 
        (3)查詢打印功能。可按車號、時(shí)間范圍、司磅員、貨物種類、駕駛員等或任意組合查詢過去稱重記錄,并可打印輸出。 
        (4)統(tǒng)計(jì)打印功能。可對稱重結(jié)果自動(dòng)進(jìn)行統(tǒng)計(jì),并打印各種報(bào)表,如月報(bào)、年報(bào)、分類報(bào)表等。 
        (5)數(shù)據(jù)維護(hù)功能。包括記錄限制修改和刪除,數(shù)據(jù)備份和導(dǎo)出。 
        在這個(gè)系統(tǒng)軟件中,重點(diǎn)是編寫數(shù)據(jù)采集的串口通信模塊和數(shù)據(jù)庫操作訪問功能程序。用Visual Basic編程語言來編制這些程序,也就要充分理解串口通信和數(shù)據(jù)庫訪問相關(guān)的控件特點(diǎn)和應(yīng)用技術(shù)。 
        3.數(shù)據(jù)采集程序模塊的設(shè)計(jì) 
        3.1 選擇MSComm控件實(shí)現(xiàn)串口通信 
        用VB開發(fā)串口通信程序常用兩種方法,一種是利用WINDOWS的通信API函數(shù)實(shí)現(xiàn),另一種是采用VB內(nèi)集成的MSComm通信控件實(shí)現(xiàn)。在實(shí)例中選用MSComm控件實(shí)現(xiàn)串口通信的編程,該控件具有豐富的與串口通信密切相關(guān)的屬性和事件,提供了對串口的各種操作。在通信過程中,當(dāng)發(fā)送數(shù)據(jù)、收到數(shù)據(jù)或產(chǎn)生傳輸錯(cuò)誤時(shí),觸發(fā)MSComm控件的OnComm事件,然后可以通過判斷CommEvent屬性值獲得事件類型,再根據(jù)事件類型進(jìn)行相應(yīng)數(shù)據(jù)處理。因此用其實(shí)現(xiàn)微機(jī)串口的數(shù)據(jù)通信相當(dāng)簡單,以很少的程序代碼就可以輕松實(shí)現(xiàn)串口的訪問和數(shù)據(jù)通信。 
        3.2 儀表參數(shù)及其數(shù)據(jù)通信協(xié)議 
        以微機(jī)管理系統(tǒng)連接汽車衡XK3 
        190-A9稱重顯示器為例。該儀表可連接8個(gè)350Ω或12個(gè)700Ω的高精度稱重傳感器,用于測量汽車重量數(shù)據(jù)。儀表測量準(zhǔn)確度為Ⅲ級(N=3000)按顯示分度值設(shè)置不同,測量范圍最大值100噸。該儀表具有RS-232/RS422(選配)串行通訊接口,能與微機(jī)進(jìn)行串口數(shù)據(jù)通信,實(shí)時(shí)傳送檢測數(shù)據(jù)。 
        該儀表串口數(shù)據(jù)通信協(xié)議是:數(shù)據(jù)傳輸速率為600/1200/2400/9600bps 
        (可選),數(shù)據(jù)格式(10位):1位開始位,8位數(shù)據(jù)位(ASCⅡ編碼),1位停止位,無奇偶校驗(yàn)位。通訊方式有連續(xù)方式和指令方式兩種,這里只列舉連續(xù)通訊方式中的格式。 
        所傳送的數(shù)據(jù)為儀表顯示的當(dāng)前稱量(毛重或凈重)。每幀數(shù)據(jù)由10組數(shù)據(jù)組成。格式如表1。 
        3.3 部分參數(shù)的技術(shù)說明 
        (1)為滿足各種儀表參數(shù)和計(jì)算機(jī)不同運(yùn)行環(huán)境的需要,把串口通信的一些參數(shù)用數(shù)據(jù)庫的表進(jìn)行存放,程序通過讀取表數(shù)據(jù)來進(jìn)行通信環(huán)境參數(shù)的設(shè)置。這樣做用戶可以修改數(shù)據(jù)表的數(shù)據(jù)來改變運(yùn)行參數(shù),以滿足實(shí)際需要。 
        (2)為了提高接收數(shù)據(jù)的讀取速度,實(shí)現(xiàn)實(shí)時(shí)監(jiān)測功能,設(shè)置MSComm1的屬性RThreshold=4,接收緩沖區(qū)收到四個(gè)字節(jié)產(chǎn)生OnComm事件;InputLen=1,每次讀取一個(gè)字節(jié)。設(shè)置接收數(shù)據(jù)模式采用二進(jìn)制形式,即InputMode=comInputModeBinary。設(shè)置InBufferSize=50(設(shè)置接收緩沖區(qū)為50字節(jié)),OutBufferSize=2(設(shè)置發(fā)送緩沖區(qū)為2字節(jié))。 
        (3)定義一個(gè)Byte類型數(shù)組變量來存放重量數(shù)據(jù)值。注意用Input屬性讀取數(shù)據(jù)時(shí),還要看儀表輸出數(shù)據(jù)位格式的編碼方式。壓縮的BCD碼存入Byte類型變量,VB系統(tǒng)只按十進(jìn)制數(shù)處理,這要通過一個(gè)簡單算法換算,解壓BCD碼才能還原成十進(jìn)制表示數(shù)值。本例ASCⅡ編碼直接賦值給數(shù)組Byte類型變量。 
        3.4 源程序代碼 
        系統(tǒng)數(shù)據(jù)庫db1.mdb建立一個(gè)名為“串口”的表,字段分別為串口、波特率、校驗(yàn)、停止位、數(shù)據(jù)位、流控制,記錄串口運(yùn)行參數(shù)設(shè)置信息。在窗體中添加名為MSComm1的MSComm控件,名為Label7顯示重量數(shù)據(jù)的標(biāo)簽控件,名為Text3、Text4存貯毛重、皮重的文本框控件等。 
        串口初始化模塊: 
        Private Sub Form_Load() 
        MSComm1.CommPort = rec(“串口”)‘賦值串口端口號,本例為COM1 
        MSComm1.Settings = rec(“波特率”) & ",n,8,1" ‘無奇偶校驗(yàn),8位數(shù)據(jù)位,1位停止位 
        MSComm1.InputLen = 1 
        MSComm1.RThreshold = 4 
        If MSComm1.PortOpen = False Then ‘判斷串口端口是否打開 
        MSComm1.PortOpen = True ‘打開端口 
        Else 
        MsgBox “串行端口號已被占用,請選擇其它端口!”, vbCritical + vbOKOnly, “系統(tǒng)信息” 
        Exit Sub 
        數(shù)據(jù)讀取、轉(zhuǎn)換及顯示模塊: 
        Private Sub MSComm1_OnComm() 
        Dim buf() As Byte 
        ‘定義一個(gè)數(shù)據(jù)變量 
        If MSComm1.CommEvent = 2 Then ‘判斷接收緩沖區(qū)內(nèi)字符數(shù)達(dá)到Rthreshold指定的值 
        buf = MSComm1.Input 
        ‘讀取一個(gè)字節(jié) 
        If buf(0) = 2 Then 
        ‘判斷是否為開02(XON) 開始 
        c2 = buf(1) 
        ‘以下讀取各位重量數(shù)據(jù)分別賦值 
        c3 = buf(2) 
        c4 = buf(3) 
        c5 = buf(4) 
        c6 = buf(5) 
        c7 = buf(6) 
        c8 = buf(7) 
        以下為對各位字節(jié)數(shù)據(jù)進(jìn)行轉(zhuǎn)換和組合顯示 
        shuju = Chr(c2) + Chr(c3) + Chr(c4) + Chr(c5) + Chr(c6) + Chr(c7) + Chr(c8) Label7.Caption = shuju ‘賦值顯示 
        If Option1.Value=True Then 
        ‘Option1為毛重選項(xiàng)。判斷是否Option1被選中 
        Text3.Text = Val(Label7.Caption) ‘賦值給毛重文本控件 
        End If 
        If Option2.Value = True Then ‘Option21為皮重選項(xiàng)。判斷是否Option2被選中 
        Text4.Text = Val(Label7.Caption) ‘賦值給皮重文本控件 
        End If 
        Label10.Caption= “數(shù)據(jù)穩(wěn)定!" 
        Else 
        Label10.Caption = “連接正常,但數(shù)據(jù)不穩(wěn)定...!" 
        MSComm1.PortOpen = False ‘重新關(guān)閉和開啟串口端口一次 
        MSComm1.PortOpen = True 
        End If 
        End If 
        End Sub 
        4.數(shù)據(jù)庫程序模塊設(shè)計(jì) 
        4.1 數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì) 
        本例以Microsoft Access數(shù)據(jù)庫進(jìn)行稱重?cái)?shù)據(jù)的管理,建立db1.mdb數(shù)據(jù)庫。地磅完成一個(gè)稱重過程一般是某車號汽車稱毛重,再過皮重(或者稱重順序反調(diào))得出凈重后,數(shù)據(jù)存入數(shù)據(jù)表,打印報(bào)表。在實(shí)際稱重中稱毛重和過皮重的過程并不連續(xù),有時(shí)要連續(xù)稱幾臺汽車的毛重或皮重,因此必須建立一個(gè)用于存貯稱重暫存數(shù)據(jù)的表。在db1.mdb數(shù)據(jù)庫中建立報(bào)頭、帳戶、本地表、稱重、單位設(shè)置、歷史皮重、串口、物質(zhì)類別等數(shù)據(jù)表。“本地表”用于存貯歷史稱重?cái)?shù)據(jù),“稱重”表存貯稱重暫存數(shù)據(jù),本例重點(diǎn)介紹“本地表”和“稱重”兩個(gè)關(guān)鍵表的結(jié)構(gòu)設(shè)計(jì),如表2,表3所示。 
        4.2 數(shù)據(jù)庫編程 
        SCS微機(jī)地磅稱重軟件建立了“系統(tǒng)登錄”、“稱重管理”、“報(bào)表管理”等多個(gè)窗體,都涉及到對db1.mdb數(shù)據(jù)庫的編程,主要應(yīng)用了Visual Basic對Access數(shù)據(jù)庫操作的編程語言。如: 
        dim conn as new adodb.connection 
        dim rs as new adodb.recordset 
        連接數(shù)據(jù)庫 
        with conn 
         If .State<>adstateclosed Then .Close 
         .ConnectionString = “pro 
        -vider=Microsoft.Jet.OLEDB.4.0; 
        Data Source=” & App.path & “\數(shù)據(jù)庫名.mdb;Mode=ReadWrite;Persist Security Info=False” 
         .Open 
        End With 
        查詢記錄 
        if rs.state<>adstateclosed then rs.close 
        rs.open “select * from 表名”,conn,adopenkeyset,adlockreadonly 
        set mshflexgrid1.datasource 
        =rs 
        rs.close 
        新增記錄 
        conn.execute “insert into 表名(...) values(...)” 
        修改記錄 
        conn.execute “update 表名 set ... where ...” 
        刪除記錄 
        conn.execute “delete from 表名 where...”等等,鑒于論文篇幅的限制本例數(shù)據(jù)庫編程源代碼略。
      上一篇:關(guān)于地磅故障分析與處理的心得 下一篇:淺談SCS數(shù)字式地磅安裝與調(diào)試
      精品推薦 更多…
      網(wǎng)站首頁汽車衡地磅電子磅秤電子秤電子吊秤電子叉車秤建筑工地產(chǎn)品聯(lián)系我們關(guān)于我們公司動(dòng)態(tài)

      聯(lián)系人:王經(jīng)理 電話:0571-85108155  傳真:0571-85105122

      郵編:310006 手機(jī):18094712401 地址:杭州市余杭區(qū)北沙西路152號

      Copyright ? 杭州易測計(jì)量設(shè)備有限公司 All rights reserved.   
      主站蜘蛛池模板: 中文人妻av高清一区二区| 在线看a网站| 艳妇乳肉豪妇荡乳AV无码福州市| 成人黄色av网站| 亚洲国产粗大| 亚洲伊人影院| 最新无码人妻在线不卡| 色偷偷色噜噜狠狠成人免费视频| av激情影院| 本免费Av无码专区一区| 国产三级在线观看播放| 免费人成在线观看网站品爱网| 精品人妻日韩中文字幕| 国产熟妇x88AV| 精品伊人久久| 熟女无套高潮内谢吼叫免费 | 亚洲另类调教| 伊伊色妹子在线视频| 久久精品免费无码区| 国内精品一区二区福利视频 | 国产成人精品午夜福利不卡| 99精品国产一区二区三区不卡| 香港日本三级亚洲三级| 日韩av在线播放高清| av中文字幕潮喷人妻系列| 国内极度色诱视频网站| 风流老熟女一区二区三区| 毛片免费试看| 国产在线欧美日韩精品一区二区| 国产精品爽爽久久久久久无码| 久久久久女人精品毛片| 亚洲精品国产日韩无码AV永久免费网| 亚洲成aⅴ人在线观看| 亚洲区一区二| 国产成人精品综合| 国产一区二区精品自拍| 国产精品久久久久久2021| 国产成人亚洲日韩欧美婷婷亚片| 99re在线视频| 欧美va亚洲va在线观看日本| 亚洲精品成人综合色在线|