汽車發(fā)動機零件管理系統(tǒng)的開發(fā)
汽車發(fā)動機零件管理系統(tǒng)的開發(fā),汽車發(fā)動機,零件,管理,系統(tǒng),開發(fā)
黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 I 摘 要 在汽車發(fā)動機研制過程中,由于其結(jié)構(gòu)復(fù)雜、參數(shù)眾多且在設(shè)計過程中需要處理 大量數(shù)據(jù)及文檔。這樣就會有大量的數(shù)據(jù)與信息交換共享,因此采用高效、快捷的數(shù) 據(jù)管理對發(fā)動機設(shè)計具有重要意義。傳統(tǒng)的手工數(shù)據(jù)管理方式已經(jīng)愈來愈不能適應(yīng)現(xiàn) 代發(fā)動機設(shè)計要求,采用數(shù)據(jù)庫技術(shù)可有效改善信息管理質(zhì)量,減少信息冗余,提高 信息共享。 本文詳細論述了一個發(fā)動機零部件庫管理系統(tǒng)的開發(fā)設(shè)計過程。系統(tǒng)采用 VC++ 6.0 作為開發(fā)平臺,SQL Server 2000 作數(shù)據(jù)庫管理系統(tǒng),實現(xiàn)了零部件增加、修改、 下載、刪除 、查詢等功能。 本文組織如下:首先闡述了該系統(tǒng)的開發(fā)背景、意義;其次介紹了相關(guān)的開發(fā)工 具及技術(shù)基礎(chǔ);接著對系統(tǒng)的需求進行了分析,并提出了具體的設(shè)計方案和數(shù)據(jù)庫模 型;然后展現(xiàn)了整個系統(tǒng)的具體實現(xiàn),包括數(shù)據(jù)庫的設(shè)計和連接,各功能模塊的實現(xiàn)。 此系統(tǒng)為縮短發(fā)動機的設(shè)計周期、降低發(fā)動機的研制費用、提高發(fā)動機制造效率、 提高設(shè)計質(zhì)量和設(shè)計效率提供了一套有效的工具;提高發(fā)動機設(shè)計單位的應(yīng)變能力; 為發(fā)動機的改進設(shè)計提供技術(shù)保障;為新一代發(fā)動機的快速研制提供技術(shù)儲備。 關(guān)鍵詞:汽車發(fā)動機;零部件庫;VC++;C/S 結(jié)構(gòu); SQL server 2000 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 II ABSTRACT While the automobile engine manufactured, on account of the engine is so sophistic,parameters are so many and the process of design need to deal with numerous data and documents. There will be large quantity data and information exchanged, the traditional data management system is not suitable for the modem engine development, so the new data and information management system with high efficiency is significant.In this case, database technology is a better choice for the sake of improving management quality and efficiency. It uses VC++ 6.0 as the development platform, SQL Server 2000 as the database management system, and includes the functions of automobile engine parts increased、modified、downloaded、deleted and queried, etc. This article is organized as following.Firstly, analyzes the background and significance; Secondly, introduces the development tools and the foundation of the technology; Thirdly, analyses the demand of the system, gives a specific design project and a database model; Then shows the implementation of the whole system, which includes the design and linkage of the database and the implementation of every module. The system provide an effective tool to shorting the cycle time of automobile engine design、 reducing engine development costs、improving the engine manufactured standards、improving the design quality and design efficiency; improve the resilience of an engine design organization; provide a technical support to improving the engine design; provide a technical reserves to developing the generation engine rapidly. Keywords: Automobile Engine; Parts Library; VC++; C/S Structure; SQL Server 2000 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 1 第 1 章 緒 論 1.1 選題的目的及意義 在汽車發(fā)動機研制工作中,由于發(fā)動機結(jié)構(gòu)復(fù)雜、參數(shù)眾多和在設(shè)計及裝配過程 中都需要處理大量數(shù)據(jù)及文檔。巨量的信息在設(shè)計部門、工藝部門、裝配部門、測試 部門、管理部門以及生產(chǎn)部門之間傳遞,而且一個新型號發(fā)動機從設(shè)計到量產(chǎn)通常需 要多次的迭代反饋才能完成(如圖 1.1 所示) 。使用傳統(tǒng)的數(shù)據(jù)處理方式必然會導(dǎo)致 數(shù)據(jù)缺乏管理、使用效率低、信息冗余等問題。采用計算機數(shù)據(jù)庫技術(shù)可有效利用數(shù) 據(jù)庫強大的數(shù)據(jù)處理功能,統(tǒng)一管理設(shè)計、實驗及裝配過程中產(chǎn)生的各種數(shù)據(jù),在不 同的應(yīng)用中共享數(shù)據(jù)庫中的各種資源,減少信息冗余 [1]。 設(shè)計 工藝 測試 裝配 量產(chǎn) 圖 1.1 發(fā)動機設(shè)計到量產(chǎn)界面 汽車發(fā)動機從開始研發(fā)到大量生產(chǎn)需要經(jīng)過一個漫長的周期,設(shè)計人員經(jīng)常需要 使用其它產(chǎn)品的標準零部件或通用的零部件。但目前這些零部件都分散在設(shè)計人員的 機器中,由個人進行維護和管理,存在著缺少相關(guān)描述性信息、使用和查詢不方便等 缺點。采用傳統(tǒng)的信息管理方式將無法適應(yīng)新情況下的需求,因此,只有充分利用數(shù) 據(jù)庫系統(tǒng)強大的數(shù)據(jù)處理功能,建立一個汽車發(fā)動機零部件數(shù)據(jù)庫,將這些的零部件 集中管理,共享發(fā)動機設(shè)計及各種文檔信息,才能從根本上解決發(fā)動機設(shè)計、論證周 期長、效率低的問題。該零部件庫的建立可以提高發(fā)動機設(shè)計單位的應(yīng)變能力,降低 發(fā)動機的研制費用,提高發(fā)動機制造效率,為發(fā)動機的改進設(shè)計提供技術(shù)保障,為新 一代發(fā)動機的快速研制提供技術(shù)儲備。 在發(fā)動機設(shè)計過程中使用數(shù)據(jù)庫技術(shù)具有如下重要性與意義 [2]: (1)改善管理手段。使用發(fā)動機數(shù)據(jù)庫技術(shù)可以將分布于各個部門的紙介質(zhì)圖 樣和技術(shù)文檔轉(zhuǎn)化為數(shù)字化信息,統(tǒng)一管理。 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 2 (2)提高產(chǎn)品裝配質(zhì)量,最大限度消除人為因素的影響。采用統(tǒng)一的發(fā)動機數(shù) 據(jù)庫管理模式,將設(shè)計資料、工藝信息、制造資源與實驗數(shù)據(jù)建立在同一個數(shù)據(jù)庫中, 可以由系統(tǒng)來保證數(shù)據(jù)的一致性和正確性。 (3)優(yōu)化流程,降低成本。設(shè)計文檔與測試數(shù)據(jù)的網(wǎng)上交換,可以省去大量資 料分發(fā)與傳遞的時間,大大減少管理與工程人員的工作。 (4)提高工作效率和勞動生產(chǎn)率。采用數(shù)據(jù)庫協(xié)同設(shè)計/裝配/測試技術(shù),可 以提高信息發(fā)放/接收和更改的效率:協(xié)同個各部門工作,改進工藝設(shè)計方式和資源 的再利用方式,提高員工勞動生產(chǎn)率。 (5)縮短設(shè)計周期。采用數(shù)據(jù)庫交換信息,輔助發(fā)動機設(shè)計、裝配,統(tǒng)一管理 測試與實驗數(shù)據(jù)能大大節(jié)約各項活動的時間,最終縮短發(fā)動機設(shè)計周期。 總之,汽車發(fā)動機零部件庫的建立可以為發(fā)動機的總體布局、部位安排設(shè)計、數(shù) 字預(yù)裝配等研制工作提供必要的底層支持;可以與設(shè)計環(huán)境實現(xiàn)無縫集成,使用方便 快捷;減少了工程設(shè)計人員的工作量,避免了重復(fù)性勞動,提高了設(shè)計質(zhì)量和設(shè)計效 率,大大縮短了設(shè)計周期;實現(xiàn)標準件設(shè)計過程的自動化,有效提高產(chǎn)品設(shè)計效率和 質(zhì)量等。另外通過汽車發(fā)動機零部件庫的建立,可以實現(xiàn)設(shè)計資源的共享。 該發(fā)動機零部件庫管理系統(tǒng)必須具備以下功能: (1)用戶可方便瀏覽管理系統(tǒng)中的零部件信息。 (2)對零部件進行分類管理。 (3)根據(jù)用戶權(quán)限可對庫中零部件進行使用及維護。如增加、刪除、查詢、下 載等。 (4)管理員可以增加、修改、刪除用戶。 這樣不僅能較好的幫助用戶在最短的時間內(nèi)找到自己所需的零部件,而且能讓用 戶以最高的效率進行發(fā)動機研發(fā),提高發(fā)動機制造效率。 1.2 國內(nèi)外研究現(xiàn)狀 由于計算機技術(shù)的飛速發(fā)展、CAD 技術(shù)和標準化技術(shù)的廣泛應(yīng)用,國外一直很 重視對零部件庫技術(shù)的研究。在美國及其他發(fā)動機制造技術(shù)比較發(fā)達的國家也均先后 成立研究機構(gòu),進行相關(guān)技術(shù)研究,并取得了一定范圍的應(yīng)用成功 [3]。國外對標準件 庫系統(tǒng)的研究和開發(fā)可追溯到早期的二維 CAD 平臺的標準件庫系統(tǒng),如基于 Auto- CAD 平臺的標準件庫系統(tǒng) [4]。早在 1971 年,德國標準化協(xié)會 (DIN)制定發(fā)布了標準件 和通用件的 DIN4000 標準,并逐漸得到了多個國家的采用 [5]。ISO/TC184 技術(shù)委員會 在 DIN4000 的基礎(chǔ)上,制定了一個關(guān)于計算機可解釋的零件庫數(shù)據(jù)表達和交換的國 際標準—IS013584,為基于 Web 的零件庫建立與應(yīng)用提供了必要條件 [6]。隨著網(wǎng)絡(luò)技 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 3 術(shù)的發(fā)展,許多國家紛紛開展網(wǎng)絡(luò)環(huán)境下零件庫的研究工作,如歐共體的 CIREP 項 目 [7]、美國的 ECCI 項目 [8]、日本的 JEMIMA 項目 [9]等。國際標準化組織 ISO/TC184/SC4 也成立了 WG2 工作組,制訂和完善零件庫的國際標準 ISO13584[5]。 國外對基于 Web 的零件庫的研究相當(dāng)成熟,已有多家極具規(guī)模的零件庫 [10,11],如 TracePart、3D ContentCentral、WebScope、CoCreate、CADClick 等。其中,TracePart 的前身為 Web2CAD,有超過 90 多家世界主要的零件制造商加盟(如 BOSCH、SIEMENS 等),號稱目前世界第一大零件庫;3D ContentCentral 是由美國 Solidworks 公司推出,提供直接下載三維實體模型功能,同時還為全球的機械工程師 提供實時更新的模型零件庫,便于設(shè)計時的共享;WebScope 實現(xiàn)在線聊天,2D 文本 和圖像注釋,3D 注釋,視圖旋轉(zhuǎn)、平移、放大、精確測量、加亮隱藏指定模型特征 和交叉視圖等。 國內(nèi)對零部件庫的研究起步稍晚于國外,但是對這方面的研究也越來越重視,并 取得了很多的成果。在理論研究方面,中國礦業(yè)大學(xué)的張宏林等對建立基于 Internet 的符合國際標準(IS013584)的零件庫總體開發(fā)方案進行了探討 [12];中科院軟件研究所 研究了基于 Internet/Intranet 零件庫資源共享技術(shù);上海交大的楊東,張申生等探討了 零件庫的零件表達方法、體系結(jié)構(gòu)和實現(xiàn)方案等 [13,14]。 目前,隨著工程CAD軟件如 AutoCAD,Pro/ENGINEER ,UG,CATIA,SolidWorks等在國內(nèi)的普遍使用,許多研 究單位和部門都在這些CAD軟件平臺上利用其對外提供的二次開發(fā)接口進行了基于 這些軟件的標準件庫的開發(fā),以彌補這些軟件本身不包含標準件庫,或庫中包含的標 準件種類及數(shù)量有限,不能滿足工程設(shè)計人員的需求的缺點。例如華中理工大學(xué)的華 中軟件公司開發(fā)出了基于SolidEdge的三維標準件庫 Inte3Dlib,能快速生成三維常用標 準件和通用件,具有良好的用戶界面及交互性能,具有建庫、擴充標準件庫的能力 [15]; 華中科技大學(xué)開發(fā)了用于齒輪CAD系統(tǒng)設(shè)計的標準零件庫。該標準零件庫包含了齒 輪傳動設(shè)計時所用的各種零部件,在用戶輸入必要的功能參數(shù)后,該CAD軟件根據(jù) 優(yōu)化設(shè)計理論能自動生成符合設(shè)計要求的齒輪傳動系統(tǒng),包括裝配圖和零部件圖;南 航CAD 中心所開發(fā)的標準件庫,分為系統(tǒng)數(shù)據(jù)總庫、臨時文件庫和用戶數(shù)據(jù)庫。允 許用戶建立自己的常用零件庫并對該零件庫的記錄進行刪除、插入、增加等操作。用 戶零件庫中的零件記錄均來自系統(tǒng)數(shù)據(jù)總庫,總庫中的記錄不能進行任何更改;北京 斯泰普產(chǎn)品數(shù)據(jù)技術(shù)中心開發(fā)的基于AutoCAD平臺的標準零件庫;西北工業(yè)大學(xué)開 發(fā)了龍騰實用化三維標準件庫系統(tǒng)和CATIA下的標準件庫;還有東北大學(xué)歐磊公司在 SolidEdge上用自動化接口開發(fā)了標準件庫;哈爾濱工業(yè)大學(xué)現(xiàn)代生產(chǎn)技術(shù)中心開發(fā) 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 4 的基于UG二次開發(fā)的導(dǎo)彈電纜標準件庫系統(tǒng)等等。 隨著計算機信息技術(shù)、網(wǎng)絡(luò)技術(shù)的發(fā)展,適應(yīng)產(chǎn)品設(shè)計制造全球化、網(wǎng)絡(luò)化的趨 勢,國內(nèi)科研單位、企業(yè)也紛紛研制推出網(wǎng)絡(luò)化的零件庫系統(tǒng)。單鴻波等人提出了基 于Web的面向裝配的設(shè)計系統(tǒng)集成框架,采用 Java和Web技術(shù)建立了基于網(wǎng)絡(luò)的 WebDFA原型系統(tǒng) [16];同濟大學(xué)CAD 研究中心推出了基于 Web的參數(shù)化跨平臺零件庫 系統(tǒng),該系統(tǒng)具有良好的可擴展性,使設(shè)計人員從一些繁瑣的繪圖中解脫出來,提高 產(chǎn)品的設(shè)計效率并降低設(shè)計的成本 [17];西北工業(yè)大學(xué)開發(fā)了基于B/S模式的飛機工裝 零件庫系統(tǒng),實現(xiàn)了工裝常用零件的遠程調(diào)用和資源共享 [18]。 目前國內(nèi)有不少企業(yè)在網(wǎng)絡(luò)上發(fā)布自己的零件庫,例如中國機械網(wǎng)(www.china- )提供了在線 3D標準件零件庫,可以通過網(wǎng)絡(luò)瀏覽三維零件圖并查看尺 寸;杭州新迪數(shù)字工程系統(tǒng)有限公司發(fā)布了基于SolidWorks 的新迪3D零件庫 ( ) ,收錄了最新國家標準的各類GB 標準件,包括:螺釘、螺母、螺柱 和螺栓、墊圈和擋圈、銷和鍵、鉚釘和焊釘、結(jié)構(gòu)件、軸承、密封件等九大類標準件; 三維設(shè)計資源在線( )提供國家現(xiàn)有的各類標準件和行業(yè)常用件, 可以動態(tài)配置、預(yù)覽和下載三維產(chǎn)品模型,并提供了 SolidWorks、Parasolid、ACIS、STEP、IGES 、 Pro/E等多種文件格式,直接融入到 設(shè)計者的設(shè)計中。 隨著汽車制造業(yè)對產(chǎn)品知識數(shù)據(jù)庫系統(tǒng)需求的不斷升級,已有很多公司開始著力 為汽車制造商提供知識庫框架系統(tǒng)。發(fā)動機零件庫的開發(fā)和應(yīng)用對提高產(chǎn)品的設(shè)計效 率起著相當(dāng)重要的作用。據(jù)統(tǒng)計,在一個產(chǎn)品開發(fā)過程中,諸如標準件(包括自制零 件、外購件等) 的使用率占到零件總數(shù)量的 60%以上。標準件建庫工作開展較早,取 得了不少成果。目前許多 CAD 軟件都開發(fā)了有各自的標準件庫,如在 CADDS5、CATIA、Cimatmn、MDT、AutoCAD、 Pro/E 、UGII 、Ideas 、SolidWorks 、solidEdge 等國外中高檔 CAD 系統(tǒng)上開發(fā)了標準件庫;另外一些國產(chǎn) CAD 系統(tǒng)如 CAD-Tool[19]、InteCAD 等也配備了常用標準件庫,甚至出現(xiàn)了基于 web 的標準件庫 系統(tǒng)。然而,這些標準件庫系統(tǒng)的共同的缺點是:可移植性和軟件復(fù)用性差 [20]。 隨著電子商務(wù)技術(shù)的發(fā)展,以及應(yīng)用服務(wù)提供商(Application Server Provider) 這一概念漸漸引入我國,零件庫和電子商務(wù)技術(shù)以及應(yīng)用服務(wù)提供商技術(shù)相結(jié)合,使 得零件庫資源得以實現(xiàn)更加廣泛的共享。因此國內(nèi)有人提出建立基于Internet的全國 范圍的零件庫系統(tǒng),這還需要在實現(xiàn)技術(shù)上做進一步的研究。 1.3 相關(guān)領(lǐng)域已有的研究成果 國際著名汽車企業(yè)的實踐證明:只有以數(shù)字化技術(shù)為開發(fā)平臺,利用成功產(chǎn)品的 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 5 開發(fā)數(shù)據(jù),在成功經(jīng)驗知識的指導(dǎo)下,才能實現(xiàn)真正意義上的快速、經(jīng)濟和成功的開 發(fā)。各類機電產(chǎn)品行業(yè)為提高其市場競爭力以及提高其設(shè)計生產(chǎn)效率,都在開發(fā)或利 用一些標準件庫來輔助設(shè)計。國內(nèi)也有不少學(xué)者進行了標準件庫開發(fā)的研究,研究成 果也比較豐碩。舉例說明如下: (1)莫蓉研究的滿足裝配建模的標準件庫的設(shè)計與實現(xiàn)是針對產(chǎn)品的工裝夾具 設(shè)計中標準件庫的建庫問題,且詳細地分析滿足裝配模型對標準件信息的需求,提出 了一個以三維參數(shù)化為基礎(chǔ)的標準件建庫方案。裝配建模對標準件所需信息可以直接 通過數(shù)據(jù)庫查詢得到,提高了明細表生成的自動化程度。此文提出的建庫方法具有通 用性,不同行業(yè)可針對自己的標準件范圍與類型設(shè)計自己的標準件庫,非常方便 [21]。 (2)由于干式變壓器在各方面的優(yōu)良性能以及特種場合下對干式變壓器的應(yīng)用 需求,它的市場前景十分樂觀廣闊。隨著國內(nèi)干式變壓器廠家的生產(chǎn)能力不斷提高, 市場競爭也異常的激烈。加之同一電壓級的同容量段的變壓器各部分設(shè)計結(jié)構(gòu)特征相 似或相近,通用件、相似件的比例相當(dāng)高,工程設(shè)計人員在設(shè)計時有很多相同的地方。 所以戴永斌、林鶴云、徐子宏、宋宇等人開發(fā)了基于 UG 二次開發(fā)技術(shù)的干式變壓器 標準件庫,對提高設(shè)計員的設(shè)計效率,縮短產(chǎn)品開發(fā)周期,提高企業(yè)的競爭能力起了 很大作用 [22]。 (3)萬久團、黃翔建立的基于 UG 的三維參數(shù)化標準件庫覆蓋面廣而且采用新 標準。其中包括了緊固件、定位元件、夾緊元件、導(dǎo)向元件、機床連接和輔助元件。 通過對這些零件建模,便形成了零件種類較多、規(guī)格較全的參數(shù)化標準件庫對提高設(shè) 計效率有很大的提高 [23]。 (4)錢玲玲、李建軍、王義林、葉曉峰等的標準件庫管理系統(tǒng)中的知識重用技 術(shù)研究實現(xiàn)了流程重用、裝配關(guān)系重用、零部件重用以及特征重用,利用已有資源, 花費較少的時間完成產(chǎn)品設(shè)計,標準件設(shè)計的自動化,提高了設(shè)計效率 [24]。 1.4 設(shè)計目標 構(gòu)建一個基于客戶機/服務(wù)器結(jié)構(gòu)的汽車發(fā)動機零部件庫管理系統(tǒng),要求該系統(tǒng) 能對登錄后的用戶實行權(quán)限管理。在系統(tǒng)啟動后,普通用戶能在客戶端根據(jù)自己的需 要查詢、下載零部件,管理員具有下載、增加、修改、查詢、刪除零部件和人員管理 的權(quán)限。 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 6 1.5 系統(tǒng)設(shè)計原則 1.5.1 實用性原則 適用于中小型企業(yè)發(fā)動機零部件管理,用戶界面友好,操作方便,具有高效的數(shù) 據(jù)處理能力。 1.5.2 可靠性及可擴展性原則 系統(tǒng)具有較高的可靠性,能保證系統(tǒng)的正常運作,系統(tǒng)還有待升級,保證了系統(tǒng) 的可擴展性。 1.5.3 兼容性原則 對于所選軟硬件系統(tǒng)及平臺,能很好地適應(yīng)開發(fā)和使用的需要。 1.5.4 規(guī)范性原則 軟件設(shè)計過程嚴格按照“ 軟件工程 ”的規(guī)定,系統(tǒng)編碼、文檔、操作系統(tǒng)平臺以及 開發(fā)方法采用相應(yīng)的國際標準、國家標準和行業(yè)標準。 1.6 設(shè)計內(nèi)容 隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)技術(shù)為資源管理提供一種非常好的解決方案。用戶不 僅可以利用本機資源,還可以通過網(wǎng)絡(luò)共享他人資源。本課題致力于開發(fā)基于 C/S 網(wǎng) 絡(luò)模式的汽車發(fā)動機零部件庫管理系統(tǒng),重點討論系統(tǒng)的設(shè)計開發(fā)過程及關(guān)鍵技術(shù)的 實現(xiàn)。課題主要內(nèi)容如下: 1.6.1 需求確定 一個簡單的發(fā)動機零部件庫管理系統(tǒng),主要包括登錄用戶對話框、發(fā)動機零部件 信息界面和零部件的下載、刪除、增加、修改等幾方面的功能。用戶通過身份驗證進 入零件管理系統(tǒng)。用戶分為普通用戶和管理員,普通用戶只有下載、修改用戶密碼、 修改用戶密碼、查詢零部件和報表輸出的權(quán)限,管理員具有下載零部件、修改用戶密 碼、增加零部件、修改零部件、刪除零部件、查詢零部件、修改用戶密碼、報表輸出 和人員管理的權(quán)限。通過這種權(quán)限的劃分可以避免數(shù)據(jù)庫系統(tǒng)管理混亂。增加新零部 件功能:用戶可以上傳新設(shè)計的零部件到零部件庫系統(tǒng)中,不僅錄入零部件的非幾何 信息(包括零部件名稱、類型、質(zhì)量等)還要錄入零部件的幾何信息(包括零件的三 維模型、CAD 圖紙、二維簡圖) 。 1.6.2 總體設(shè)計 總體設(shè)計階段即系統(tǒng)的概要設(shè)計,需要完成對系統(tǒng)結(jié)構(gòu)的分析和設(shè)計,以及設(shè)計 系統(tǒng)需要的主要數(shù)據(jù)結(jié)構(gòu)。在基于需求分析的結(jié)果上給出簡單發(fā)動機零部件庫管理系 統(tǒng)的總體結(jié)構(gòu)。 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 7 1.6.3 數(shù)據(jù)庫構(gòu)建 數(shù)據(jù)庫設(shè)計(Database Design)是指對于一個給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù) 庫模式,建立數(shù)據(jù)庫,使之能夠有效地存儲數(shù)據(jù),滿足各種用戶的應(yīng)用需求的過程。 1.6.4 程序開發(fā) 利用 VC++開發(fā)汽車零部件庫管理系統(tǒng)。 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 8 第 2 章 系統(tǒng)總體方案設(shè)計 前端客戶機運行數(shù)據(jù)庫應(yīng)用程序(稱為前端系統(tǒng)) ,處理有關(guān)屏幕顯示和用戶輸 入輸出的用戶請求,并向數(shù)據(jù)庫服務(wù)器提出請求(如SQL ,Structured Query Language) ,對數(shù)據(jù)庫進行操作,通常是一個 PC機。后端服務(wù)器接受客戶機的請求, 執(zhí)行SQL 查詢、對有關(guān)的數(shù)據(jù)文件進行處理并將數(shù)據(jù)提交給客戶機,客戶機將數(shù)據(jù)進 行計算并將結(jié)果呈現(xiàn)給用戶。同時,服務(wù)器還提供完善的安全保護及對數(shù)據(jù)的完整性 處理等操作,并允許多個客戶同時訪問同一個數(shù)據(jù)庫。 2.1 汽車零部件庫系統(tǒng)相關(guān)技術(shù) 2.1.1 基于 Pro/E 三維建模技術(shù) 1、Pro/E 簡介 1985年,PTC 公司成立于美國波士頓,開始參數(shù)化建模軟件的研究。1988年,V1.0 的Pro/ENGINEER誕生了。經(jīng)過10余年的發(fā)展,Pro/ENGINEER已經(jīng)成為三維建模軟 件的領(lǐng)頭羊。目前已經(jīng)發(fā)布了Pro/ENGINEER proewildfire5.0。PTC的系列軟件包括了 在工業(yè)設(shè)計和機械設(shè)計等方面的多項功能,還包括對大型裝配體的管理、功能仿真、 制造、產(chǎn)品數(shù)據(jù)管理等等。Pro/ENGINEER還提供了目前所能達到的最全面、集成最 緊密的產(chǎn)品開發(fā)環(huán)境。其主要特性有全相關(guān)性、基于特征的參數(shù)化造型、數(shù)據(jù)管理、 裝配管理、易于使用。 數(shù)據(jù)表 數(shù)據(jù)處理邏輯 瀏覽器 顯示邏輯 請求 響應(yīng) S Q L 請求處理 客戶端 數(shù)據(jù)庫服務(wù)器 發(fā)動機 零部件管理系統(tǒng) 圖2.2 發(fā)動機零部件庫管理系統(tǒng)軟件結(jié)構(gòu) 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 9 局域網(wǎng) 汽服訪問客戶端 車輛訪問 客戶端 交運訪問客戶端 物流訪問 客戶端 圖2.3 發(fā)動機零部件庫管理系統(tǒng)的拓撲結(jié)構(gòu) 2、Pro/E 建模技術(shù)舉例說明 本文給出幾個有代表性的發(fā)動機零件的示意圖,如圖 2.4、圖 2.5、圖 2.6,圖 2.7 為發(fā)動機裝配體的 Proe/E 裝配體模型。 圖 2.4 發(fā)動機汽缸體 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 10 圖 2.5 六角螺母 圖 2.6 發(fā)動機曲軸 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 11 圖 2.7 發(fā)動機總裝圖 2.1.2 基于 SQL Server 2000 的數(shù)據(jù)庫 1、SQL 語言簡介 SQL(Structured Query Language)結(jié)構(gòu)化查詢語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計 語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng)。同時也是數(shù)據(jù)庫腳本文 件的擴展名。美國國家標準局(ANSI)與國際標準化組織( ISO)已經(jīng)制定了 SQL 標準 ANSI 聲稱,SQL 是關(guān)系數(shù)據(jù)庫管理系統(tǒng)的標準語言。SQL 語句通常完成一些數(shù)據(jù)庫 的操作任務(wù),比如在數(shù)據(jù)庫中更新數(shù)據(jù),或者從數(shù)據(jù)庫中檢索數(shù)據(jù)。使用 SQL 的常 見關(guān)系數(shù)據(jù)庫管理系統(tǒng)有:Oracle、Sybase 、Microsoft SQL Server、Access 、Ingres 等 等。雖然絕大多數(shù)的數(shù)據(jù)庫系統(tǒng)使用 SQL,但是它們同樣有有別于其他的用于它們 的系統(tǒng)的專有擴展功能。但是,標準的 SQL 命令,比如 “SELECT”、 “UPDATE”、 “DELETE”、 “INSERT”、 “WHERE”、 “Create”和“Drop” 常常被用于完成絕大多數(shù)數(shù)據(jù)庫 的操作。SQL 功能強大,是一種完備的數(shù)據(jù)處理語言 ,不僅用于數(shù)據(jù)庫查詢,而且 用于數(shù)據(jù)庫中的數(shù)據(jù)修改和更新,概括起來可以分成以下幾組: (1)數(shù)據(jù)定義語言(DDL) ,例如:CREATE 、DROP、ALTER 等語句。 (2)數(shù)據(jù)查詢語言(DQL) ,例如:SELECT 語句。 (3)數(shù)據(jù)控制語言(DCL),例如: GRANT、REVOKE、COMMIT、ROLLBACK 等語句。 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 12 (4)數(shù)據(jù)操作語言(DML),例如:INSERT(插入,用于增加數(shù)據(jù)到數(shù)據(jù)庫) 、 UPDATE(修改,用于從數(shù)據(jù)庫中修改現(xiàn)存的數(shù)據(jù)) 、DELETE(刪除,用于從數(shù)據(jù) 庫中刪除數(shù)據(jù)) 、SELECT(檢索,用于檢索數(shù)據(jù))語句。 SQL 語言包括三種主要程序設(shè)計語言類別的語句:數(shù)據(jù)定義語言(DDL),數(shù)據(jù)操 作語言(DML) 及數(shù)據(jù)控制語言 (DCL)。 2、SQL Server 2000 數(shù)據(jù)庫 SQL Server 是一個關(guān)系數(shù)據(jù)庫管理系統(tǒng),是 Microsoft 推出新一代數(shù)據(jù)管理與分 析軟件。SQL Server 2000 是一個全面的、集成的、端到端的數(shù)據(jù)解決方案,它為企 業(yè)中的用戶提供了一個安全、可靠和高效的平臺用于企業(yè)數(shù)據(jù)管理和商業(yè)智能應(yīng)用。 SQL Server 2000 為 IT 專家和信息工作者帶來了強大的、熟悉的工具,同時減少了在 從移動設(shè)備到企業(yè)數(shù)據(jù)系統(tǒng)的多平臺上創(chuàng)建、部署、管理及使用企業(yè)數(shù)據(jù)和分析應(yīng)用 程序的復(fù)雜度。通過全面的功能集、和現(xiàn)有系統(tǒng)的集成性、以及對日常任務(wù)的自動化 管理能力,SQL Server 2000 為不同規(guī)模的企業(yè)提供了一個完整的數(shù)據(jù)解決方案。 SQL Server 2000 數(shù)據(jù)平臺包括如下工具:關(guān)系型數(shù)據(jù)庫、復(fù)制服務(wù)、通知服務(wù)、 集成服務(wù)、分析服務(wù)、報表服務(wù)、管理工具、開發(fā)工具。 SQL Server 2000 數(shù)據(jù)平臺為不同規(guī)模的組織提供了如下好處:充分利用數(shù)據(jù)資 產(chǎn)、提高生產(chǎn)力、減少 IT 復(fù)雜度、更低的總體擁有成本(TCO)。本數(shù)據(jù)庫采用 SQL Server 2000 的企業(yè)管理器建立。 2.1.3 基于 VC++的數(shù)據(jù)庫訪問技術(shù) 用 VC++開發(fā)的發(fā)動機零部件庫管理系統(tǒng),要使用數(shù)據(jù)庫對所需的數(shù)據(jù)進行存儲 與管理。VC++提供了幾種接口(DAO、OLE/DB、 ADO、ODBC)來支持數(shù)據(jù)庫編 程,利用這些接口,可以在程序中直接操作各種各樣的數(shù)據(jù)庫,如 SQL Server、Microsoft Access、 Microsoft FoxPro 等等。采用以上幾種接口訪問數(shù)據(jù)庫各有 千秋,本系統(tǒng)是采用 ADO 接口實現(xiàn)對數(shù)據(jù)庫的訪問。VC++ 中 MFC 與 SQL Server2000 數(shù)據(jù)庫的連接方法: 1、創(chuàng)建一個用來連接的 ADO 類庫 系統(tǒng)菜單中 Insert-New Class 項,Class type 選擇 Generic Class;在 Name 后輸入 類名“ADOConn”,點 OK。這樣,在工程上自動生成 ADOConn.h 和 ADOConn.cpp 兩個文件。 2、導(dǎo)入 ADO 動態(tài)鏈接庫 msado15.dll 在 ADOConn.h 中導(dǎo)入一個 ADO 動態(tài)鏈接庫 msado15.dll,添加代碼:#import “c:\Program Files\Common Files\System\ado\msado15.dll“ no_namespace 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 13 rename(“EOF“,“adoEOF“) rename(“BOF“,“adoBOF“)(rename(“BOF“,“adoBOF“)也可以 省略) ,同時在 ADOConn.h 中定義 public://添加一個指向 Connection 對象的指針: _ConnectionPtr m_pConnection; //添加一個指向 Recordset 對象的指針: _RecordsetPtr m_pRecordset。 3、獲取連接字符串 m_pConnection-Open(_bstr_t ConnectionString, _bstr_t UserID, _bstr_t Password, long Options) 操作。ConnectionString 為 VC++中對 SQL SERVER 中 ADO 設(shè)置。如, Provider= SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test;Data Source=.。其中 Data Source 為服務(wù)器名稱,可以用 Server 代替,本 機表示為.或者(local);Initial Catalog 為你要使用的數(shù)據(jù)庫名稱可以用 Database 代替; Integrated Security=SSPI 表示用集成模式,此時 uid 和 pwd 設(shè)置不起作用;只有當(dāng) Integrated Security=FALSE 表示用混合模式,uid 和 pwd 設(shè)置才起作用。參數(shù) Options 表示 CommandText 的類型:adCmdText-文本命令;adCmdTable-表名 adCmdProc-存儲過程;adCmdUnknown-未知。 4、添加兩個成員函數(shù) (1)執(zhí)行查詢函數(shù) _RecordsetPtr virtual ~CADOConn(); bool OnInitDBConnect();//初始化一連接數(shù)據(jù)庫 _RecordsetPtr //執(zhí)行查詢 bool ExecuteSQL(_bstr_t bstrSQL);//執(zhí)行 sql 語句 CTime GetOleDateTime(_variant_t var); void ExitConnect();//斷開連接 public: _ConnectionPtr m_pConnection; //定義一個指向 connection 對象的指針 //用來連接數(shù)據(jù)庫 _RecordsetPtr m_pRecordset; //定義一個指向 Recordset 對象的指針 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 43 }; #endif // !defined(AFX_ADOCONN_H__87E4D2BE_8D74_4A7B_A202_6A07717B3947__INCL UDED_) (2)ADOConn.cpp 代碼 // ADOConn.cpp: implementation of the CADOConn class. #include “stdafx.h“ #include “ADOConn.h“ #ifdef _DEBUG #undef THIS_FILE static char THIS_FILE[]=__FILE__; #define new DEBUG_NEW #endif CADOConn::CADOConn() { } CADOConn::~CADOConn() { } bool CADOConn::OnInitDBConnect() { //初始化 OLE/COM 庫環(huán)境 HRESULT ret,res; ::CoInitialize(NULL); try { //創(chuàng)建 connection 對象 ret = this-m_pConnection.CreateInstance(“ADODB.Connection“); //設(shè)置連接字符串,必須是 BSTR 型,或者是_bstr_t 類型 _bstr_t strConnect=“Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=test;Data Source=.“; res = this-m_pConnection-Open(strConnect,““,““,adModeUnknown); 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 44 //也可以用這種方式來連接數(shù)據(jù)源 } catch(_com_error e) { //顯示錯誤信息 AfxMessageBox(e.Description()); } HRESULT rs = m_pRecordset.CreateInstance(__uuidof(Recordset)); if(res == 0) { return true; } else return false; } _RecordsetPtr //創(chuàng)建記錄集對象 HRESULT ret = m_pRecordset.CreateInstance(__uuidof(Recordset)); //取得表中的記錄 HRESULT res = m_pRecordset- Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adC mdText); } catch(_com_error e) { AfxMessageBox(e.Description()); 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 45 } return m_pRecordset; } bool CADOConn::ExecuteSQL(_bstr_t bstrSQL) { try { if(m_pConnection == NULL) this-OnInitDBConnect(); m_pConnection-Execute(bstrSQL,NULL,adCmdText); return true; } catch(_com_error e) { AfxMessageBox(e.Description()); return false; } } void CADOConn::ExitConnect() { if(m_pRecordset != NULL) m_pRecordset-Close(); m_pConnection-Close(); ::CoUninitialize(); } #include CTime CADOConn::GetOleDateTime(_variant_t var) { COleDateTime oleTime(var); SYSTEMTIME sysTime; oleTime.GetAsSystemTime(sysTime); return CTime(sysTime); 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 46 } 附錄 B 外文文獻 How to troubleshoot connectivity issues in SQL Server 2000 Chris Tull, Microsoft Help and Support This article can help you to resolve connectivity problems with Microsoft SQL Server 2000. This article contains descriptions of common connectivity problems and the steps that you can take to help resolve your connectivity problems. SQL Server 2000 supports several methods of communication between the instance of SQL Server and the client applications. If your client application and the instance of SQL Server reside on the same computer, Microsoft Windows interprocess communication (IPC) components, such as local named pipes or the Shared Memory protocol, are used to communicate. However, when the client application and the instance of SQL Server reside on different computers, a network IPC, such as TCP/IP or named pipes, is used to communicate. SQL Server 2000 uses Net-Library, a DLL, to communicate with a particular network protocol. A matching pair of Net-Libraries must be active on the client computer and the server computer to support the network protocol that you want to use. For example, if you want to enable a client application to communicate with a specific instance of SQL Server across TCP/IP, the client TCP/IP Sockets Net-Library (Dbnetlib.dll) must be configured to connect to the server on the client computer. Likewise, the server TCP/IP Sockets Net- Library (Ssnetlib.dll) must listen on the server computer. In this scenario, the TCP/IP protocol stack must be installed on both the client computer and the server computer. After you install SQL Server 2000, you can configure the properties of the client Net- Libraries by using Client Network Utility. You can configure the properties of the server Net-Libraries by using Server Network Utility (Svrnetcn.exe). The server Net-Libraries are installed during the installation of the server tools in SQL Server Setup. However, some of the server Net-Libraries may not be active. By default, SQL Server 2000 enables and listens on TCP/IP, named pipes, and Shared Memory. Therefore, for a client to connect to a server computer, the client must connect by using a client Net-Library that matches one of the server Net-Libraries that is currently being used by the instance of SQL Server. 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 47 For additional information about SQL Server communication components and Net-Libraries, see the following topics in SQL Server Books Online: ? Communication Components ? Client and Server Net-Libraries ? Managing Clients Troubleshoot connectivity issues Most of the connectivity issues that you may notice in SQL Server 2000 occur because of problems with TCP/IP, Windows authentication, or a combination of TCP/IP and Windows authentication. Important Before you start to troubleshoot connectivity issues in SQL Server 2000, make sure that the MSSQLServer service is started on the computer that is running SQL Server. Verify your DNS settings The name resolution process in Domain Name System (DNS) is used to resolve the IP address to the name of the instance of SQL Server. If the name resolution process does not work correctly, the instance of SQL Server is not reachable, and you may receive one or more of the following error messages: SQL Server does not exist or access denied General Network Error Cannot Generate SSPI Context To verify that the name resolution process is resolving the correct server, you can ping the server by using the server name and the IP address of the server. To do so, follow these steps: 1. Click Start, and then click Run. 2. In the Run dialog box, type cmd in the Open box, and then click OK. 3. At the command prompt, run the following command: ping Note the IP address that is returned. 4. At the command prompt, run the following command (where IP address is the IP address that you noted in step 3): ping –a Verify that the command resolves to the correct server name. If either of the specified commands are not successful, time out, or do not return the correct values, the DNS lookup 黑龍江工程學(xué)院本科生畢業(yè)設(shè)計 48 is not working correctly or the problem occurs because of other networking or routing issues. To see your current DNS settings, run the following command at a command prompt: ipconfig /all To work around this problem, add an entry for the server to the %systemroot%\system32\d- rivers\etc\hosts file on the client computer. You can also work around the problem by connecting to the server by using the Named Pipes Net-library. Verify the enabled protocols and aliases Connectivity problems may occur if the alias on the client computer is set incorrectly. You can view the aliases by using Client Network Utility. To do so, follow these steps: 1. Start Client Network Utility. If the SQL Server client tools are installed on the computer that is running the client application, follow these steps to start Client Network Utility: a. Click Start, and then point to Programs. b. Point to Microsoft SQL Server, and then click Client Network Utility. If the SQL Server client tools are not installed on the client computer, follow these steps to start Client Network Utility: a. Click Start, and then click Run. b. In the Run dialog box, type cliconfg in the Open box, and then click OK. 2. In the SQL Server Client Network Utility window, click the General tab, and then enable all the protocols that you want to use. Note You must at least enable the TCP/IP protocol and the named pipes protocol. 3. Click the Alias tab, and then verify the aliases that are configured for the instance of SQL Server. 4. Verify the properties of the aliases to make sure that the server name or IP address and the protocol are configur
壓縮包目錄 | 預(yù)覽區(qū) |
|
請點擊導(dǎo)航文件預(yù)覽
|
編號:2115597
類型:共享資源
大?。?span id="85i3djh" class="font-tahoma">37.67MB
格式:ZIP
上傳時間:2019-11-16
30
積分
積分
- 關(guān) 鍵 詞:
- 汽車發(fā)動機 零件 管理 系統(tǒng) 開發(fā)
- 資源描述:
-
汽車發(fā)動機零件管理系統(tǒng)的開發(fā),汽車發(fā)動機,零件,管理,系統(tǒng),開發(fā)展開閱讀全文
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請勿作他用。
鏈接地址:http://weibangfood.com.cn/p-2115597.html