新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計應(yīng)用 > 基于GPRS與TCP的車輛載重數(shù)據(jù)管理系統(tǒng)設(shè)計

基于GPRS與TCP的車輛載重數(shù)據(jù)管理系統(tǒng)設(shè)計

作者: 時間:2012-10-17 來源:網(wǎng)絡(luò) 收藏
程序

本文引用地址:http://m.butianyuan.cn/article/196301.htm

5.2 通信

系統(tǒng)和車載終端不是一個局域網(wǎng),所以首先要穿透局域網(wǎng),這里采用“打孔”,“打孔”與其他的方法相比較,具有較易實現(xiàn)、效率高等優(yōu)點,基本原理是:處于局域網(wǎng)的用戶先與公網(wǎng)上的一個連接服務(wù)器建立輔助連接,在呼叫發(fā)生時,通過連接服務(wù)器的協(xié)助在呼叫雙方間建立TCP直連。

VC進行網(wǎng)絡(luò)通信要插入CSocket類,CSocket支持同步操作,可以單獨使用,通常情況下與CSocketFile、CArchive類一起實現(xiàn)數(shù)據(jù)的發(fā)送和接收。

TCP接收數(shù)據(jù)程序:

TCP接收數(shù)據(jù)程序

6 數(shù)據(jù)傳輸設(shè)計

6.1 數(shù)據(jù)發(fā)送設(shè)計

在載重查詢模塊中,用戶通過車牌號對貨車載重查詢時,發(fā)送數(shù)據(jù)。具體過程是:當輸入查詢的車牌號時,通過在貨車信息表(TABMESS AGE)查詢車牌號,將對應(yīng)的關(guān)聯(lián)字符作為查詢命令,發(fā)送出去。數(shù)據(jù)發(fā)送過程如圖4所示。

數(shù)據(jù)發(fā)送過程

6.2 數(shù)據(jù)接收設(shè)計

在載重查詢模塊和超載處理模塊中,系統(tǒng)接收數(shù)據(jù),具體過程是:系統(tǒng)接受的每一個數(shù)據(jù)是由兩部分組成,關(guān)聯(lián)字符+貨車載重,先將數(shù)據(jù)分開,通過關(guān)聯(lián)字符在貨車信息表(TABMESSAGE)查詢出對應(yīng)的車牌號,再根據(jù)車牌號在貨車載重表(TABLOAD)中查找,將貨車載重的數(shù)據(jù)修改或者新建。

同時通過關(guān)聯(lián)字符在貨車信息表(TABMESSAGE)查詢出對應(yīng)的載重,比較數(shù)據(jù)表中的載重值和接收到的載重值大小,決定是否將得到時間保存到貨車超載表(TABOVERLOAD)中。數(shù)據(jù)接受過程如圖5所示。

數(shù)據(jù)接受過程

6.3 對話框界面設(shè)計

界面主要包括串口連接部分、發(fā)送數(shù)據(jù)部分和接受數(shù)據(jù)部分。串口部分的參數(shù)選擇由組合框提供,要發(fā)送的數(shù)據(jù)有編輯框輸入發(fā)送,接收的數(shù)據(jù)和接受數(shù)據(jù)的時間保存在列表框中,對話框的界面如圖6所示。

對話框的界面

例:在貨車信息表中,車牌號為“陜A00000”,對應(yīng)的關(guān)聯(lián)字符為“SHAN0000”,載重為“20”。當查詢此貨車載重時,在文本框中輸入“陜A00000”,通過貨車信息表查到關(guān)聯(lián)字符“SHAN0000”。

將關(guān)聯(lián)字符發(fā)送出去。當接受到字符“SHAN000025.000”時,先將字符分開成“SHAN0000”與“25.000”,在貨車信息表中查找關(guān)聯(lián)字符,得到車牌號和載重,比較載重和字符“25.000”大小,得到超載,然后將車牌號和超載字符“25.000”保存到貨車超載表中。

7 結(jié)束語

文中闡述了使用Visual C++6.0和SQL server 2000設(shè)計一個管理系統(tǒng)的實現(xiàn)思想和管理方法,以及詳細介紹了對外界進行數(shù)據(jù)通信,達到了系統(tǒng)對車載終端的檢測,以及對貨車信息的管理,滿足了高可靠、高穩(wěn)定的要求。

c++相關(guān)文章:c++教程



上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉