接口設計論文范例6篇

前言:中文期刊網精心挑選了接口設計論文范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。

接口設計論文

接口設計論文范文1

船舶導航信息系統處理和儲存多種信息,首先,系統需要處理硬件接口遞交的監測信息,并根據上層用戶的需求給予硬件設備相應的反饋;其次,系統需要將處理和合成之后的信息顯示給用戶,同時從用戶的輸入設備中收集用戶的需求并進行處理;最后,系統還需要與GIS、衛星通信系統等模塊進行交互,實現信息的分析和更新。因此,導航信息在系統的流動過程中形成3個閉環,如圖2所示。在硬件信息閉環中,硬件接口產生的信息主要為經緯度、航向、航速等初始信息,并通過硬件設備本身接口輸出該信息。然而,由于不同設備采用不同的標準并由不同的廠商制造,因而其產生的數據格式差異較大,無法被信息接口直接使用,因而需要信息收集與格式化模塊進行數據的格式化。該模塊從硬件接口中收集數據,并根據預先定義的數據結構將數據重新組織,并以一定的格式提交給信息接收接口,在信息接收接口中,則對數據的合法性進行檢驗,同時識別數據的類型,交付給相應的中央處理功能。在用戶信息閉環中,中央處理模塊將處理完畢的信息,按照一定的消息格式,通過信息交付接口輸出給用戶界面,并顯示給終端用戶。因此可以看出,用戶界面的設計需要相應的信息交付接口的支持,同時用戶根據自己的需求,通過用戶界面對導航信息系統進行相應的操作,該請求也通過信息交付接口遞交給中央處理模塊,進行進一步的處理。在外部信息閉環中,中央處理模塊需要借助一些外部系統獲取需要的信息,如通過GIS可以結合數字地圖等平臺,直觀地顯示導航信息,而通過衛星通信網絡,可以將通信功能集成入導航信息平臺中,實現多節點的位置和導航信息交換。在整個過程中,中央處理模塊根據實際的需要向外部系統提交信息請求,并從外部系統中下載相應的信息。需要注意的是,外部系統中采用的消息格式往往有較為明確的標準,因而信息擴展接口必須具備相應的適配機制,支持相應的標準,識別對應格式的數據和消息,并將其轉換為中央處理模塊能夠處理的數據結構。

2信息接口設計

在第2節中,對系統應用的信息接口進行了介紹,并對其功能進行了較為詳細的描述,根據其功能和作用位置的不同,可以將其分為信息接收接口、信息交付接口和信息擴展接口3類。

2.1信息接收接口信息接收接口的主要功能是:接收由硬件提交的信息,并對信息的格式進行檢驗和分類,最終遞交給中央處理模塊。其主要結構和工作流程如圖5所示。如圖5所示,在信息接收接口中,收到的信息首先存儲在消息緩沖中,信息格式模式匹配單元通過預先定義的合法消息格式,對消息緩沖中的信息進行匹配,監測其合法性,當出現異常時,反饋控制單元調度消息緩沖,根據異常消息的來源,向相應的硬件接口做出反饋,進而將異常消息丟棄或封閉/重置相應的硬件接口。合法的消息被送入消息分類單元,該單元維護若干個列表,列表中存儲格式化的消息數據。當中央處理模塊或其他模塊,調用相應的功能時,則通過相應的功能子接口,將對應的數據取出并交給相應的功能。信息接收接口是基礎硬件設施和軟件處理單元之間的橋梁,通過擴展消息格式化的適配功能,能夠有效拓展支持的硬件種類,從而使得系統的功能更加強大。

2.2信息交付接口信息接收接口面向的是底層硬件設備和系統,而信息交付接口面向的是上層的用戶和用戶界面,其功能是:將中央處理模塊處理完畢的數據和信息,按照不同的種類遞交給用戶界面,在用戶界面中進行集成和顯示。其主要結構和工作流程如圖6所示。與信息接收接口的不同之處在于,交付接口擔負了雙向的信息傳遞功能。首先,通過數據調用單元可以將處理完成的數據交付給用戶界面使用,根據類型的不同有圖形化數據、字節化數據、GIS數據等,用戶界面通過調用這些不同種類的數據,即可按照實際需求,合成和顯示出包含豐富內容的導航信息圖示。同時,用戶通過用戶界面對導航信息系統進行控制、設置或調用其需要的單個數據,此時用戶指令被傳遞到用戶指令解釋單元,若用戶指令合法,則通過編譯器對指令進行解釋,產生針對系統每個模塊的具體指令,并通過控制信息產生單元將具體指令轉換為系統模塊能夠識別的具體控制信息。然后利用系統控制接口,對系統的軟件和硬件進行直接的控制或設置等操作。信息交付接口是實現用戶界面的基礎,其并不關心用戶界面如何實現,終端用戶有著怎樣的具體需求,僅僅是提供了一系列標準化的數據交付接口,這樣就可以根據不同類型的船舶和不同的應用場景,設計不同的用戶界面,而不需要受到核心軟件系統的束縛。

2.3信息擴展接口與前2種接口不同,信息擴展接口是向外部開放的接口,通過這個接口,例如衛星通信網、GIS系統、AIS系統等,均可以連接入導航信息系統,為系統提供更加豐富的信息和更加強大的功能。其主要結構和工作流程如圖7所示。信息擴展接口同樣需要擔負數據的雙向傳遞任務,一方面其運行有相應數據交換/傳輸協議的協議棧,如AIS數據傳輸協議棧、VSAT衛星通信協議棧等,以便通過相應系統的接口下載和傳輸消息,同時將接收到的消息轉換為系統能夠識別的數據結構,供中央處理模塊處理。另一方面,系統根據需要,提出相應的信息下載請求,該請求通過請求處理單元,轉換為相應系統的控制和請求指令,封裝為合適的控制消息后,發送給對應的外部系統。信息擴展接口可以通過擴展外部數據交換協議棧來擴展其可以支持的外部系統種類,從而能夠綜合更多的外部信息,豐富導航信息系統的內容。

3仿真與實現

根據以上研究和設計,本文采用軟件實現的方法對導航信息系統進行仿真和模擬。采用的環境是Corei31.8GHz,4G內存,Win764bit,采用Java作為程序開發語言。仿真的重點在于實現各個接口的功能,驗證各個接口工作的有效性和高效性,依托當前較為成熟的中央處理模塊[7],實現對信息的處理和存儲,并使用Java語言開發整個模擬系統,模擬系統界面如圖8所示。通過編寫相應的代碼,模擬各種硬件設備,信息接收接口成功地收集和轉換了不同種類的消息,并通過信息交付接口遞交給用戶界面,從圖8可以看出其成功地實現了信息的收集和顯示。如圖9所示,進行信息設置的測試,通過設計控制面板,設置相應的參數,觀察能否對系統進行有效控制。通過以上實踐證明,在理論上本文所設計的接口能夠發揮相應的功能,實現導航信息的收集、處理和交付等功能,說明了本文提出的方案具有一定的可行性。

4結語

接口設計論文范文2

結合數據處理接口模塊的需求,系統的復位源設計有3個,分別是軟件復位、手動復位和上下電復位。其中軟件復位由使用數據處理接口模塊的主機發出,手動復位由維護人員通過地面測試設備發出,上下電復位通過5V電源監控芯片MAX791實現。軟件復位和手動復位通過二極管線與的方式接入MAX791的MR端。系統在以下4種情況時會產生復位:1)上電復位:上電過程中,當VCC>4.65V時,復位信號保持200ms有效后變高;2)下電復位:下電過程中,當VCC<4.65V時,復位信號一直有效;3)軟件復位:由主機中的CPU發出,當底板總線信號XRE-SET#有效時間>25μs時,產生復位,XRESET#無效后復位信號保持200ms有效;4)手動復位:由地面測試設備發出,當底板總線信號TS_RE-SET#有效時間>25μs時,產生復位,TS_RESET#無效后復位信號保持200ms有效。利用MAX791的看門狗功能,還可以對板上DSP的工作狀態進行監控,一旦出現軟件跑飛等情況,看門狗狗叫會導致DSP的NMI中斷發生,并且上報給主機GO/NOGO#信號有效。

2軟件設計

數據處理接口模塊的軟件主要由硬件初始化、自測試程序、周期數據收發和命令響應四大功能組成。其中周期數據的收發包含消息層和數據層兩個層次。消息層負責命令的辨識和數據的組織搬運,數據層負責協議的執行和發送接收等底層任務。數據層基本數據幀的格式見圖4所示。這里的同步字、數據長度、校驗方式由主機在初始化時確定。其中校驗方式可選擇兩種,若采用和校驗,則檢驗位占用1字節;若使用CRC校驗,校驗位占2字節。在周期數據收發的數據層中,RS422鏈路分為測控鏈路和任務鏈路兩部分。測控鏈路用于檢測設備的連通性和硬件的正確性,任務鏈路用于任務系統之間的通信。因此,將用于測控通信的鏈路設計為無鏈接協議鏈路,將用于任務通信的鏈路設計為有鏈接協議鏈路。有鏈接協議的任務鏈路的狀態轉移圖見圖5所示。任務鏈路的工作原理是:上電后首先進行通信測試,主端首先發送LTST,若從端回復ALTST為正常,測試完成后,轉入空閑工作狀態;空閑狀態時主從定期進行握手操作,當主機存在發送命令時,轉入消息發送狀態,當從端發來數據幀前導碼LHDR時主端轉入消息接收狀態;消息發送完成后會進行發送檢查,如果從接收無誤會發來ACK握手信號,當出現超時或從發來NACK信號時進行重新發送狀態,重試超過門限進入通信測試狀態;消息接收狀態時若消息正確則進入空閑狀態,若接收超時或消息錯誤時發送NACK通知主端重新發送,當錯誤次數超門限時進入通信測試狀態。

3低功耗設計

簡易無人機攜帶燃料有限,而實際任務中往往又要求其盡可能長時間的滯空,這就要求各類設備盡可能地以較小的功耗完成較多的功能。因此本文從硬件軟件等不同層面設計來降低模塊的功耗。降低功耗總的來說有關閉無用功能、減少無用操作和合理器件選型三個方法。在不使用DSP內部的AD、eCAN、SCI等資源時,可將對應的資源的時鐘HSPCLK和LSPCLK關閉,同時不使能這些資源,以達到降低功耗的目的。作為降壓型線性電源,TPS74401芯片的耗散功率PD=(VIN-VOUT)×IOUT,即電源的轉換效率取決于輸入輸出電壓差的大小,因此在電源轉換電路的設計上應在滿足電源芯片的最小dropoutvoltage的情況下盡量減小LDO器件輸入輸出電壓差,可提高轉換效率減少發熱功耗,本文中1.8V電源由最接近1.8V電壓的3.3V電源轉換而來。為保持較好的信號完整性,模塊上的印制板走線阻抗均按照單端50Ω差分100Ω控制。在RS422的發送端和接收端進行阻抗匹配以優化信號質量。在發送端使用33Ω串聯匹配方式,接收端采用120Ω并聯匹配方式,由于正常工作時差分電平約±5V,為降低直流功耗在并聯匹配電阻處串接一10pF電容,這樣既滿足瞬態的信號完整性要求,也可在穩態時達到隔離直流,減小匹配電阻上直流功耗的目的。詳見圖6所示。在軟件設計方面,采用定時查詢和中斷接收相結合的方式,減少DSP對外設的多余操作,避免不必要的輪詢操作所產生的功率消耗。本文介紹的串行數據接口板在今后的改進設計中,可以注意合理的器件選型,以達到降低功耗的目的。例如:現設計中1.8V電源轉換效率為54%,今后可結合實際電流消耗狀況選用合適的開關電源代替線性電源[4],并使開關電源工作在中等或較重負載狀態,可提高電源效率至80%左右;現有設計中CPLD動態功耗約為0.7W,由于該模塊中邏輯占用資源并不多,因此后期可考慮用更小功耗的中小規??删幊踢壿嬈骷鎿Q。目前現有設計中未考慮模塊的睡眠喚醒功能,今后可結合主機實際的需求,添加相應功能的電路,以降低待機功耗。

4結束語

接口設計論文范文3

現場總線是安裝在生產過程區域的現場設備/儀表與控制室內的自動控制裝置/系統之間的一種串行數字式多點雙向通信的數據總線,多用于工空等領域,應用現場總線技術不僅可以降低系統的布線成本,還具有設計簡單、調試方便等優點,同時,由于現場總線本身還提供了靈活而又功能強大的協議,這就使得用戶對系統配置,設備選型具有強大的自,可以任意組合多種功能模塊擴充系統的功能。在眾多的現場工業總線中,CAN總線是一種具有國際標準而且性能價格比又較高的現場總線,它在當今自動控制領域中的應用極為廣泛,并發揮著重要的作用。一個由CAN總線構成的單一網絡中,理論上可以掛接無數個節點。實際應用中,節點數目受網絡硬件的電氣特性所限制。CAN可提供高達1Mbit/s的數據傳輸速率,這使實時控制變得非常容易。另外,硬件的錯誤檢定特性也增強了CAN的抗電磁干擾能力。

CAN通訊協議描述了在設備之間信息如何傳遞。它對層的定義與開放系統互連模型(OSI)一致。每一層與另一設備上相同的那一層通訊。實際的通訊是發生在每一設備上相鄰的兩層,而設備只通過模型物理層的物理介質互連。CAN的結構定義了模型的最下面的兩層:數據鏈路層和物理層。應用層通過不同的新型協議層(專門用于特殊的工業領域加上由個別CAN用戶定義的任何合適的方案)和物理層連接。物理層和數據鏈路層對于設計者來說是透明的,并包含在所有執行CAN協議的部件中。

實際中,許多設備是RS-232接口,為了實現CAN總線數據和RS-232接口設備數據的傳輸,設計完成了CAN總線與RS-232轉換接口電路設計。

1.CAN總線協議分析

1.1CAN總線主要特點

CAN總線是一種多主式的串行通信總線,具有極高的實時性和可靠行,最高通信速率可以達到1Mbit/s,是一種十分優秀的現場工業總線。CAN總線具有如下特點:

結構簡單,只有2根線與外部相連,且內部集成錯誤探測和管理模塊。

通信方式靈活??梢远嘀鞣绞焦ぷ鳎W絡上的其他節點發送信息,而不分主從。

可以點對點、點對多點或者全局廣播方式發送和接收數據。

網絡上的節點信息可分成不同的優先級,以滿足不同的實時要求。

CAN總線通信格式采用短幀格式,每幀字節最多為8個,可滿足通常工業領域中控制命令、工作狀態及測試數據的一般要求。同時,8字節也不會占用總線時間過長,從而保證了通信的實時性。

采用非破壞性總線仲裁技術。當兩個節點同時向總線上發送數據時,優先級低的節點主動停止數據發送,而優先級高的節點可不受影響地繼續傳送數據。這大大的節省了總線仲裁沖突的時間,雜網絡負載很重的情況下也不會出現網絡癱瘓。

直接通信距離最大可達10Km(速率5Kbit/s以下),最高通信速率可達1Mbit/s(此時距離最長為40Km),節點數可達110個,通信介質可以是雙絞線、同軸電纜或光導纖維。

CAN總線通信接口中集成了CAN協議的物理層和數據鏈路層功能,可完成對通信數據的成幀處理,包括位填充、數據塊編碼、循環冗余檢測、優先級判別等多項工作。

CAN總線采用CRC進行數據檢測并可提供相應的錯誤處理功能,保證了數據通信的可靠性。

1.2CAN總線協議

CAN總線協議主要描述設備之間的信息傳遞方式,從結構上可分成3個層次,分別對應OSI網絡模型的最低兩層數據鏈路層和物理層。CAN總線協議層次結構由高到低如表1-1所示。

表1-1CAN總線協議層次結構

協議層

對應OSI模型

說明

LLC

數據鏈路層

邏輯鏈路控制子層,用于為鏈路中的數據傳輸提供上層控制手段

MAC

媒體訪問控制子層,用于控制幀結構、仲裁、錯誤界定等數據傳輸的具體實現

物理層

物理層

物理層的作用是在不同節點之間根據所有的電氣屬性進行位的實際傳輸

LLC層和MAC層也可以看作是CAN總線數據鏈路層的兩個子層。其中LLC層接收MAC層傳遞的報文,主要完成報文濾波、過載通知以及恢復管理等工作。而MAC層則為數據報文的傳輸進行具體的控制,包括幀結構控制、總線仲裁、錯誤檢測、出錯界定、報文收發控制等工作。

物理層定義了信號是如何實際傳輸的,因此涉及到位時間、位編碼、同步的解釋,CAN總線協議并未對物理層部分進行具體的規定。

1.3CAN總線報文傳輸結構

報文傳輸由以下4個不同的幀類型所表示

1.數據幀:數據幀攜帶數據從發送器至接收器。

數據幀由7個不同的位場組成:幀起始、仲裁場、控制場、數據場、CRC場、應答場、幀結尾。數據場的長度可以為0。數據幀(或遠程幀)通過幀間空間與前述的各幀分開。

2.遠程幀:總線單元發出遠程幀,請求發送具有同一識別符的數據幀。

遠程幀由6個不同的位場組成:幀起始、仲裁場、控制場、CRC場、應答場、幀末尾。通過發送遠程幀,作為某數據接收器的站通過其資源節點對不同的數據傳送進行初始化設置。

3.錯誤幀:任何單元檢測到總線錯誤就發出錯誤幀。

錯誤幀由兩個不同的場組成。第一個場用作為不同站提供的錯誤標志(ERRORFLAG)的疊加。第二個場是錯誤界定符。

為了能正確地終止錯誤幀,"錯誤被動"的節點要求總線至少有長度為3個位時間的總線空閑(如果"錯誤被動"的接收器有本地錯誤的話)。因此,總線的載荷不應為100%。有兩種形式的錯誤標志,主動錯誤標志(Activeerrorflag)和被動錯誤標志(Passiveerrorflag)。

4.過載幀:過載幀用以在先行的和后續的數據幀(或遠程幀)之間提供一附加的延時。

過載幀包括兩個位場:過載標志和過載界定符。

有兩種過載條件都會導致過載標志的傳送:

(1)接收器的內部條件(此接收器對于下一數據幀或遠程幀需要有一延時)。

(2)間歇場期間檢測到一"顯性"位。

由過載條件1而引發的過載幀只允許起始于所期望的間歇場的第一個位時間開始。而由過載條件2引發的過載幀應起始于所檢測到"顯性"位之后的位。

1.4CAN總線錯誤處理

1.4.1錯誤檢測

有以下5種不同的錯誤類型(這5種錯誤不會相互排斥)

1.位錯誤(BitError)

單元在發送位的同時也對總線進行監視。如果所發送的位值與所監視的位值不相合,則在此位時間里檢測到一個位錯誤。但是在仲裁場(ARBITRATIONFIELD)的填充位流期間或應答間隙(ACKSLOT)發送一"隱性"位的情況是例外的。此時,當監視到一"顯性"位時,不會發出位錯誤。當發送器發送一個被動錯誤標志但檢測到"顯性"位時,也不視為位錯誤。

2.填充錯誤(StruffError)

如果在使用位填充法進行編碼的信息中,出現了第6個連續相同的位電平時,將檢測到一個填充錯誤。

3.CRC錯誤(CRCError)

CRC序列包括發送器的CRC計算結果。接收器計算CRC的方法與發送器相同。如果計算結果與接收到CRC序列的結果不相符,則檢測到一個CRC錯誤。

4.形式錯誤(FormError)

當一個固定形式的位場含有1個或多個非法位,則檢測到一個形式錯誤。(備注:接收器的幀末尾最后一位期間的顯性位不被當作幀錯誤)

5.應答錯誤(AcknowledgmentError)

只要在應答間隙(ACKSLOT)期間所監視的位不為"顯性",則發送器會檢測到一個應答錯誤。

1.4.2錯誤標定

檢測到錯誤條件的站通過發送錯誤標志指示錯誤。對于"錯誤主動"的節點,錯誤信息為"主動錯誤標志",對于"錯誤被動"的節點,錯誤信息為"被動錯誤標志"。站檢測到無論是位錯誤、填充錯誤、形式錯誤,還是應答錯誤,這個站會在下一位時發出錯誤標志信息。只要檢測到的錯誤的條件是CRC錯誤,錯誤標志的發送開始于ACK界定符之后的位(其他的錯誤條件除外)。

2.CAN控制器SJA1000分析

2.1CAN節點結構與SJA1000操作模式

SJA1000獨立的CAN控制器有2個不同的操作模式:

BasicCAN模式(和PCA82C200兼容);

PeliCAN模式

BasicCAN模式是上電后默認的操作模式。因此用PCA82C200開發的已有硬件和軟件可以直接在SJA1000上使用,而不用作任何修改。

PeliCAN模式是新的操作模式,它能夠處理所有CAN2.0B規范的幀類型。而且它還提供一些增強功能,例如,SJA1000支持一些錯誤分析功能,支持系統診斷、系統維護和系統優化,而且這個模式里也加入了對一般CPU的支持和系統自身測試的功能。使SJA1000能應用于更寬的領域。

本設計采用PeliCAN模式,因此只給出PeliCAN模式增強功能。如表2-1所示。

表2-1PeliCAN模式的增強功能

CAN2.0B(active)

CAN2.0Bactive支持帶有29位標識符的網絡擴展應用

發送緩沖器

有11位或29位標識符的報文的單報文發送緩沖器

增強的驗收濾波器

兩個驗收濾波器模式支持11位和29位標識符的濾波

可讀的錯誤計數器

支持錯誤分析在原型階段和在正常操作期間可用于:診斷、系統維護、系統優化

可編程的出錯警告界限

錯誤代碼捕捉寄存器

出錯中斷

仲裁丟失捕捉中斷

支持系統優化包括報文延遲時間的分析

單次發送

使軟件命令最小化和允許快速重載發送緩沖器

僅聽模式

SJA1000能夠作為一個認可的CAN監控器操作,可以分析CAN總線通信或進行自動位速率檢測

自測試模式

支持全部CAN節點的功能自測試或在一個系統內的自接收

通常,每個CAN模塊能夠被分成不同的功能塊,如圖2-1所示。

CAN控制器執行在CAN規范里規定的完整CAN協議。它通常用于報文緩沖和驗收濾波。

通用CAN收發器實現從CAN控制器到CAN總線物理層的電氣連接。

而所有這些CAN功能都由一個模塊控制器控制,它負責執行應用層的功能。

元器件清單

表3-3CAN總線與RS-2232接口電路設計元氣件清單

序號

元件名稱

數量(個)

單價(元)

總價(元)

1

AT89C51

1

7.50

7.50

2

SJA1000

1

25.00

25.00

3

HM6116

1

1.00

1.00

4

MAX232

1

5.00

5.00

5

74HC373

1

1.00

1.00

6

PCA82C250

1

6.50

6.50

7

X25045

1

1.00

1.00

8

TLP113

2

3.00

6.00

合計

53.00

結論

本設計完成了CAN總線與RS-232轉換接口設計。由于CAN總線與RS-232接口數據通信速率以及通信幀格式都不同,本設計最大優點是解決了這兩點不同,實現了數據在CAN總線與RS-232接口之間的傳輸。且設計中由于使用了CAN總線進行數據傳輸這就使得通信方式多主性。網絡上任意節點可以任意時刻主動地向網絡上其他節點發送信息而不分主從??梢渣c對點,點對多點或全局廣播方式發送和接收數據。

由于CAN總線標準沒有定義應用層,數據鏈路層提供與信息內容相應的尋址能力,消息的內容完全由應用解釋。且CAN總線的每個數據幀最多只能承載8個字節的數據,因而只適應提供短的變量服務。許多功能還需要擴展。

綜上所述,通過此次設計,我們感受到CAN總線帶來的各種便利。而且,由于CAN總線具有結構簡單、實時性極高、可靠性強且本身具有強大的糾錯能力。使得它在當今自動控制領域中的應用極為廣泛。由于CAN協議參考OSI開放系統互聯模型,可由用戶定義應用層協議,通過相關的CAN轉接設備,將CAN與計算機相連,利用CAN232B轉換器組建一個CAN控制網絡,能夠很方便的實現RS-232多點組網、遠程通訊,并且,不需要更改原有RS-232通訊軟件,用戶可直接嵌入原有的應用領域,使系統設計達到更先進的水平。

摘要............................................................................................................Ι

ABSTRACT..................................................................................................................................ΙΙ

引言1

1.CAN總線協議分析2

1.1CAN總線主要特點2

1.2CAN總線協議2

1.3CAN總線報文傳輸結構3

1.4CAN總線錯誤處理3

1.4.1錯誤檢測3

1.4.2錯誤標定4

2.CAN控制器SJA1000分析5

2.1CAN節點結構與SJA1000操作模式5

2.2SJA1000內部結構及其功能分析6

3.CAN總線與RS-232轉換接口電路設計11

3.1CAN總線與RS-232轉換接口電路總體設計11

3.2主控制模塊電路設計12

3.2.1AT89C51與6116電路設計13

3.2.2看門狗電路設計14

3.3AT89C51與RS-232轉換接口電路設計16

3.3.1RS-232-C標準分析16

3.3.2RS-232與AT89C51接口電路設計18

3.4SJA1000與AT89C51接口電路設計19

3.4.1SJA1000與AT89C51接口電路設計19

3.4.2物理層接口電路設計21

3.5元器件清單22

結論22

接口設計論文范文4

1下弦桿件的焊接

①焊接坡口應在胎架上進行,工件應放平,防止因焊接內應力產生扭曲變形。②先焊接隔板與腹板的立焊縫(隔板與內側腹板之間的熔透焊縫先少量焊接,待頂板安裝焊接及橫梁接頭安裝焊接完成后再全部焊完),再焊接隔板與底板的平焊縫,最后焊接箱內腹板與底板之間的角焊縫。焊接順序應從中間往兩邊,由下往上依次對稱焊接。③頂板安裝完成后,采用富氬氣體保護焊對插入部位坡口焊縫進行焊接。焊接時,兩側應對稱同時焊接。④焊接桿件棱角焊縫和T形坡口角焊縫時,采用富氬混合氣體保護焊打底,埋弧自動焊填充蓋面。⑤24小時后對插入部位的焊縫全長范圍進行超聲波探傷檢查。

2桿件的劃線

①工件找正:將工件平臥放置在支撐平臺上,插入頂板的腹板面朝下,另側腹板面朝上。腹板面應平行于劃線平臺。以劃線平臺為基準,用水準儀對工件進行抄平,誤差應小于1mm。②劃出桿件兩端系統中心線。③劃出腹板上各向系統中心線。④對照施工圖及劃線圖,劃出鉆孔胎模十字對位線,并檢查。⑤劃出另一側腹板各向系統中心線。

3桿件的鉆孔

①采用覆蓋式鉆孔胎模鉆出節點板上及腹板一端的部分孔群。剩余孔群可采用補孔樣板鉆出。②采用覆蓋式鉆孔胎模,通過腹板上一端已鉆孔群定位,鉆出另一端部分孔群。其余孔群采用補孔樣板鉆出。③對無法在桿件外面用臺式鉆床鉆制的腹板孔群,可采用磁力鉆在桿件箱內通過補孔樣板補鉆出剩余孔群。④采用覆蓋式鉆孔胎模鉆出桿件頂板箱體部位兩端孔群。伸出橋面板部位兩端孔群,待橫梁接頭、橋面板縱肋等附連件安裝焊接完成后,再鉆出。⑤采用局部鉆孔胎模鉆出底板兩端孔群及一處橫梁底板連接孔群。⑥采用小覆蓋胎模,通過已鉆的一處橫梁底板連接孔群定位,依次鉆出其余底板連接孔群。

4附屬件的組焊

①采用組裝胎膜,通過底板已鉆孔群定位出腹板位置并焊接;②安裝橋面板縱肋,并從中間往兩邊焊接。如焊接后對極邊孔距不能保證,可將縱肋兩端1000mm處斷開,先安裝和焊接中間部位,焊后安裝和焊接縱梁兩端1000mm段。③采用組裝胎膜,通過節點板上已鉆孔群,定位腹板接頭板,并進行焊接。

5結論

接口設計論文范文5

關鍵詞:插件,軟件復用,游戲引擎,CrystalSpace

 

1.Crystal Space及其核心SCF

1.1 Crystal Space

在介紹Crystal Space之前,首先介紹一下游戲引擎和3D游戲引擎,游戲引擎是用于控制所有游戲功能的主程序,從計算碰撞、物理系統和物體的相對位置,到接受玩家的輸入,以及按照正確的音量輸出聲音等等,它是一個處理事務的系統,同時它也是一個控制模塊,向所有的子系統發出命令[1]。而3D游戲引擎,除了包含游戲引擎的所有功能外,它還負責處理3D世界的數據結構(包括所有的光源、行動)以及從玩家或相機所在的視點渲染3D世界[1]。

Crystal Space(以下簡稱CS)是一個開源的3D游戲引擎。除了具備3D游戲引擎應有的功能外,其自身還包含許多獨有的特點。首先,CS的框架是一個高度模塊化的框架,該框架能更好的為用戶提供服務,并且使用戶使用CS更方便。其次,CS是一個由構件和庫組成的包,雖然它很多的功能都偏向于3D游戲的處理,但是它同樣也適用于其他方面的應用,這主要是得益于CS中的大部分插件和庫的相互獨立性,這使得用戶在CS中,可以只使用自己需要的插件以及自定義插件,而不會與其他插件相關聯或受到其他插件的影響??萍颊撐?,游戲引擎。最后,CS廣泛的支持各種不同類型的硬件和軟件平臺,具有很好的跨平臺性[2]??萍颊撐?,游戲引擎。

1.2 SCF

由于CS高度模塊化的框架,而作為其框架核心的SCF(Share Class Facility,共享類工具)為用戶設計與開發基于CS的自定義插件提供了便利??萍颊撐?,游戲引擎。SCF與COM(Component Object Model,組件對象模型)[4]類似,但只是一個輕量級的COM。SCF與COM相比,其使用更加簡單、方便,并且SCF屏蔽了COM中很多繁瑣的部分,卻同時具備COM的大部分優勢[3]。

在Crystal Space中SCF用來管理引用計數、系統插件、自定義插件和抽象接口。在插件的開發中,SCF技術實現了類接口與類實現的分離,這一方面,使插件使用者只用關心類接口的功能及接口的使用方法,而不用關心它的具體實現;另一方面,它對類實現進行了很好的封裝,不會將類實現的任何細節暴露給用戶,并且插件開發者對類實現的修改不會對插件的使用造成影響[2]。另外,SCF還提供了插件對象注冊器和插件管理器使CS能自動的完成對插件的管理,用戶只需要書寫少量的代碼就能實現對插件的加載、使用及卸載。

2.設計和使用自定義插件

自定義插件的設計、實現及使用流程如圖1所示,用戶自定義插件設計時,必須在SCF中的對象注冊器中注冊,并由插件管理器統一管理,而應用程序對插件的調用及加載也必須通過對象注冊器和插件管理器來完成。

圖1 自定義插件的設計、實現及使用流程

2.1 設計自定義插件

用戶自定義插件的實現包括定義插件的API,自定義插件的具體實現,自定義插件的編譯及自定義插件的注冊四個部分。

1)定義用戶自定義插件的API

在Crystal Space中,使用SCF定義插件的API,其優勢在于,將接口的定義和實現進行明確的分離。操作步驟包括:

Ⅰ. 定義插件API所在文件“Myapi.h”

Ⅱ. 定義API的版本號;

Ⅲ. 定義抽象類“iMyApi”,類名以“i”開頭,用于標識該類是一個SCF接口。

Ⅳ. 定義兩個純虛函數DoSomthing( )和GetSomething()用于設置/獲得一個3D坐標。下面是API定義的具體代碼:

struct iMyApi : publicvirtual iBase

{ SCF_INTERFACE(iMyApi, 1, 0, 0);

virtual void DoSomething (intparam, const csVector3&) = 0;

virtual int GetSomething ()const = 0; };

2)創建自定義插件的實現(頭文件)

下面是用戶自定義插件具體實現的頭文件“myplug.h”的定義。其操作步驟包括:

Ⅰ. 實現類必須同時繼承iMyApi和iComponent接口,以保證能使用插件管理器來管理插件。

Ⅱ. 定義初始化函數,用于完成插件的初始化工作。具體代碼如下:

class MyPlugin : publicscfImplementation2 <MyPlugin, iMyApi,iComponent>

{ …………

virtual boolInitialize (iObjectRegistry*);

virtual voidDoSomething (int param, const csVector3&);

virtual intGetSomething () const; };

3)創建自定義插件的實現(源文件)

下面為用戶自定義插件具體實現的源文件“myplugin.cpp”,操作步驟包括:

Ⅰ. 使用CS_IMPLEMENT_PLUGIN通知CS本模塊是一個插件

Ⅱ. 申明在CS中,允許使用SCF初始化MyPlugin類的對象,部分代碼如下:

…………

CS_IMPLEMENT_PLUGIN

SCF_IMPLEMENT_FACTORY(MyPlugin)

…………

bool MyPlugin::Initialize(iObjectRegistry* r)

{ object_reg= r; returntrue; }

…………

4)在SCF中注冊自定義插件

SCF能夠自動且動態的查找已定義的插件,并通過查詢每個插件的meta-Information來判定插件實現的細節??萍颊撐模螒蛞?。Meta-information是結構化的XML文檔,其中包含插件在SCF中的注冊信息,及本插件與其他插件的關聯等??萍颊撐?,游戲引擎。插件的meta-Information文檔在插件被編譯時,將被嵌入插件模塊中,方便對插件的查詢。科技論文,游戲引擎。下面是自定義插件的meta-Information的設置,內容包括:

Ⅰ. 設置插件的名稱

Ⅱ. 指明實現該自定義插件的類的名稱

Ⅲ. 對插件的一般描述及設置與該插件相關聯的其他插件的名稱。具體代碼如下:

<plugin> <scf><classes> <class>

<name>crystalspace.mygame.myplugin</name>

<implementation>MyPlugin</implementation>

<description>My Special Game Plugin</description>

<requires> <class>crystalspace.graphics3d.</class></requires>

</class></classes></scf></plugin>

5)編譯自定義插件

插件模塊的編譯取決開發時所使用的開發工具,這里使用Microsoft visual studio 2005進行編譯。

2.2 自定義插件在應用程序中的使用

完成自定義插件的設計與實現后,就可以使用了,自定義插件的使用包括加載及調用。

1)在應用程序中加載自定義插件

在應用程序中加載自定義插件的操作步驟包括:

Ⅰ. 導入自定義插件API的頭文件,插件使用者通過調用插件API實現對插件的使用。

Ⅱ. 調用對象注冊器。對象注冊器查詢已注冊的插件中是否包含應用程序指定的插件。

Ⅲ. 使用csQueryRegistry調用插件管理器,利用插件管理器實現自定義插件的加載(或從應用程序中卸載)。具體代碼如下所示:

#include <myapi.h>

csRef<iPluginManager>plugin_mgr = csQueryRegistry <iPluginManager> (object_reg);

csRef<iMyApi> myapi =csLoadPlugin<iMyApi> (plugin_mgr,'crystalspace.mygame.myplugin');

if (myapi.IsValid()){ ... }

2)在應用程序中使用自定義插件

最后一個步驟就是使用用戶自定義插件,在應用程序中,通過調用自定義插件的API來實現對插件提供的功能的使用,具體代碼如下:

myapi->DoSomething (1,csVector3 (2, 3, 4));

printf ('%d ',myapi->GetSomething ());

3.小結

本文設計和實現了一個基于Crystal Space的自定義插件的實例,從中發現,基于Crystal Space技術設計和實現的自定義插件與使用其他方法實現的插件相比具有很多優勢,首先,基于CS的插件具有很好的跨平臺性;其次,插件的開發實現了類接口與類實現的分離,從而使插件的開發和插件的使用相分離;再次,用戶自定義插件的功能不會受到任何限制,能最大限度發揮插件開發者的能動性;最后,SCF提供了插件對象注冊器和插件管理器,使CS能自動完成對插件的管理,減輕了插件開發者和插件使用者的開發負擔。因此,在實際開發過程中,開發者可以設計及使用符合自己需要的自定義插件,從而使基于CS的游戲開發或軟件開發更加便利、快捷。

[參考文獻]

[1][美]Andre Lamothe著. 李祥瑞,陳武譯.3D編程大師技巧[M].人民郵電出版社,2005.

[2][美]Box.D 著. 潘愛民譯.COM本質論[M]. 中國電力出版社,2001.

接口設計論文范文6

論文關鍵詞:智能家電,洗衣機,仿真,AT89S51,PDIP

 

1引言

隨著Internet的日益普及,人們通過Internet不僅可以獲得現實世界各種狀態的實時變化情況,還可以通過Internet實現遠程控制和處理工作,可以從全球的任何一個角落實現對設備的監控,可以使用通用的網絡瀏覽軟件訪問設備,將消費電子、計算機和通信融為一體,而家用電器的網絡化、智能化管理越來越突顯需求。

智能家居遠程控制系統的核心部分是一個嵌入式Web服務器,系統集有線和無線Web服務器于一體計算機論文,用戶可以利用辦公室的PC或者手機登錄家中的Web服務器,在通過用戶名和密碼驗證后,便可以查看并控制家用電器;系統帶有LCD和鍵盤,具有良好的人機界面;用戶還可以通過鍵盤來設定系統的任務;系統留有豐富的功能擴展接口,通過這些擴展接口將來還可以實現防火防盜和智能抄表等應用。系統結構框圖如圖1所示。

圖1 智能家居系統的總體結構

本文旨在研究智能家電管理系統中基于AT 89S51芯片的洗衣機控制系統的模擬實現。

2 AT89S51芯片概述

AT89S51是美國ATMEL公司生產的低功耗,高性能CMOS 8位單片機, AT89S51具有4k在線系統編程(ISP)Flash閃速存儲器,采用全靜態工作模式,具有三級程序加密瑣,32個可編程I/O口線,2個16位定時/計數器,能夠采用全雙工串行UART通道,具有靈活的在系統編程功能,可靈活應用于各種控制領域。

AT89S51根據封裝方式不同,大致分為3種型狀,本系統的設計中AT89S51采用PDIP封裝模式,如圖1所示。

圖2 AT89S51封裝模式

3 洗衣機控制系統模擬實現

3.1洗衣機控制系統的總體設計

在本系統中,硬件主芯片采用意法半導體的STR710,是整個系統的核心。它作為一個嵌入式網關,將外部網絡與內部洗衣機控制器連接在一起,是整個系統運行的平臺論文格式。在遠程操縱洗衣機方面,STR710負責從GPRS接收到短消息和網絡芯片上接收到的以太網數據中提取出用戶指令,然后根據該指令操縱相應的網絡家電或者查詢其運行情況,最后將執行結果反饋到用戶終端。系統的軟件設計采用分層設計,包括硬件設備驅動層、操作系統層、應用程序接口層和應用軟件層。

3.2洗衣機控制器系統設計

根據需求設計的洗衣機控制器的系統邏輯結構設計圖如圖3所示:

圖3 系統總體框圖

3.3洗衣機控制器電路設計

采用AT89S51作為控制核心。其中計算機論文,P1.0和P1.1分別用于控制洗衣機的進水閥和排水閥;P1.2和P1.3用于控制洗滌電機的正反轉;P1.4~P1.7、P3. 0、P3.1用于驅動7個LED,分別作為工作程序、浸泡和強弱洗指示燈。P3.2接暫停/ 啟動鍵;P3.3分別用于開蓋/不平衡中斷輸入;P3.4被用作輸入線,用于監測水位開關狀態,為CPU提供洗衣機的水位信息;P3 .5 接程序選擇鍵;P3.7采用分時復用技術,具有兩個功能,一方面接強弱選擇/浸泡選擇鍵,在洗衣機未進入工作狀態時,按觸該鍵可選擇強弱洗或開啟關閉浸泡功能,另一方面在進水和脫水時,又作為告警聲的輸出口。

3.4洗衣機控制器軟件設計

系統上電復位后,首先進行初始化,洗衣機進入工作程序后,系統首先根據RAM中27H單元的特征字判斷洗衣機的洗衣工作程序,洗衣機進入洗滌子程序wash。洗滌是通過驅動電機的正反轉實現的。洗滌結束后,退出wash子程序,調用water_out子程序進入排水進程。排水閥排水時間采用動態時間法確定計算機論文,其原理是:根據常用的空氣壓力水位開關的特性排水結束后,系統調用y子程序進行脫水操作,維持置位狀態,保持排水閥開啟,離合器在排水閥的帶動下使電機主軸與脫水桶聯動,實現衣物脫水。然后判斷整個洗衣工作是否結束。其原理是:洗衣機在每次洗滌或漂洗工作環節結束后,將存放洗衣工作程序標志的寄存器減1,在脫水工作環節結束后,系統即對該單元進行檢測,當檢測到為0時,說明整個洗衣工作結束。軟件設計主流程圖如圖4 。

圖4 軟件主流程圖

4 洗衣機控制器仿真工作原理

首先,在通電時蜂鳴器長鳴一聲,VD1 被點亮,這表示系統已經準備好接收指令可以開始準備工作了。單片機一直在讀取由嵌入式WEB模塊通過IIC通道發送過來的狀態,當收到嵌入式WEB模塊發送的指令后,將得到的數據作為第一項的設置內容計算機論文,即洗滌強度。蜂鳴器短鳴一聲進入等待洗滌時間的設置,這個數據同樣來自嵌入式WEB模塊發送的指令。蜂鳴器短鳴兩聲進入等待洗滌方式的設置,過程都是相同的長鳴一聲后洗衣機按事先的設置開始洗衣, VD1 快速閃爍表示洗衣狀態,洗衣機控制器會完成初洗、浸泡、洗滌的工作,之后長鳴表示洗衣結束。洗滌期間單片機的 P2.1 和 P2.3 兩個引腳會不斷輸出高、低電平來操作兩個繼電器讓電機正、反轉,同時還要接收嵌入式WEB模塊發送的中斷信號,以暫停或結束洗滌論文格式。當洗滌過程結束,蜂鳴器長鳴,系統又回到了開機時等待嵌入式WEB模塊發送指令的狀態。

其次,控制洗衣機可模擬的具體功能有:1、多種程序選擇,用戶可根據洗滌衣物的材質選擇不同的程序,如浸洗、標準、羊毛和快速等。每種洗滌方式有不同的洗滌模式、時間和順序。2、過程選擇,用戶可以選擇單獨洗滌以保留帶有洗滌劑的水進行重復使用,可選擇單獨脫水,猶如脫水機一樣計算機論文,等等。3、預約洗滌,用戶可根據需要選擇幾小時后進行洗滌,時間選擇范圍為1-24小時。4、剩余時間顯示,用戶可以直接掌握洗滌時間。5、溫度控制,可以顯示模擬的水溫控制。

5 結論

本文設計的洗衣機仿真控制系統連入嵌入式web服務的支持,就能夠通過普通PC或GPRS手機訪問Internet實現,通過遠程控制命令完成對洗衣機參數的設定,對洗衣機進行操作,大大地簡化了操作程序。利用單片機AT89S51作為洗衣機的控制器,能充分發揮AT89S51的數據處理和實時控制功能,使系統工作于最佳狀態,提高系統的靈敏度。

參考文獻

【1】郭維芹.模擬電子技術[M]. 北京: 科學出版社, 1993。

【2】童詩白,華成英,《模擬電子技術基礎》,北京高等教育出版社,2001。

【3】吳小許,,黃敏.數字量調節閥的控制算法研究與應用[J]. 化工自動化及儀2004。

【4】宋建國.AVR單片機原理及應用.北京:北京航空航天大學出版社,1998。

【5】胡漢才,《單片機原理及其接口技術,清華大學出版社,1996。

【6】李慶利陳曙薛永祺,洗衣機仿真系統的設計與實現計算機工程2006。

亚洲精品一二三区-久久