當前位置:編程學習大全網 - 編程語言 - 自動尋跡智能公交車的論文

自動尋跡智能公交車的論文

基於單片機的公交車自動報站器

———計數功能的應用

摘要:對車輪軸的轉角的脈沖進行計數,將計數值與預置值對比,即可確定報站時刻,達到準確自動的目的。以AT89C51為CPU在中斷處理程序中對外來脈沖計數,結合語音芯片ISD4004輸出語音。

關鍵詞: 距離控制 計數 C51 ISD4004 編程

0 引言

目前公交報站有三種方式,壹種是利用GPS全球衛星定位系統的公交車報站系統,目前美國部分城市投入使用,國內也有此類產品的研制開發,其功能強大,系統穩定,但其投資昂貴,尤其是壹些中小城市無法承受。目前我國部分城市采用手動電子報站和人工報站的方式,而它們都離不開司務人員,加大司乘人員的工作強度。手動電子報站壹般由司機或者乘務員控制,經常出現錯報,誤報的情況,基於上述情況的不足,結合公交車輛的使用特點及實際營運環境,研制開發了市內公交智能報站系統。技術關鍵是對車輪轉軸的轉角的脈沖進行計數,將計數值與預置值對比,即可確定報站時刻,達到準確自動的目的。以AT89C51為CPU在中斷處理程序中對外來脈沖計數,利用ISD4004輸出語音。

壹 組成原理

系統由脈沖檢測、脈沖計數、比較判斷、控制信號、語音芯片、輸出顯示等組成。

1.1 脈沖檢測 該系統關鍵是對轉軸所轉過的圈數進行計數,考慮到車輛將在復雜的 環境中運行,故采用可靠的霍爾元件DN6848作為信號的采集裝置,再經光電耦合器4N25輸入給單片機。

1.2 脈沖計數 光電耦合器的信號進入C51後,采用中斷方式對脈沖計數。外部晶振12MHz。

1.3 在比較判斷程序中將計數值於預置值進行比較,當數值到時就輸出信號控制語言芯片進行報站。

1.4 控制按鍵 用於手動控制、手動調整、預置值的輸入等

1.5 語言芯片 由專用語音芯片ISD4004組成,可擦寫,便於在不同公交線上使用。

1.6 復位控制 安裝在車門上的微動開關在到站後給C51壹個信號,使其自動開始下壹段的計數。

1.7 輸出顯示 由兩位七段數碼管組成,由C51采用動態掃描方式顯示。

1.8預置存儲 采用兩種方式存儲,壹種是在燒寫器上將數據寫入,另壹種是在車上,單片機處於輸入狀態,車輛行駛壹遍,將站與站之間的脈沖數寫入片內。

二 硬件設計

系統電路圖如下:

2.1 C51通過P0.0到P0.3與外部的語言芯片ISD4004進行連接。其中ISD4004為PDIP封裝,引腳功能為:片選(SS): 此端為低,即向該ISD4000芯片發送指令,兩條指令之間為高電平;串行輸入(MOSI): 此端為串行輸入端,主控制器應在串行時鐘上升沿之前半個周期將數據放到本端,供ISD輸入;串行時鐘(SCLK): ISD的時鐘輸入端,由主控制器產生,用於同步MOSI和MISO的數據轉輸。數據在SCLK上升沿鎖存到ISD,在下降沿移出ISD;中斷(INT): 漏極開路輸出,ISD在任何操作(包括快進)中檢測到EOM或OVF時,本端變低並保持。中斷狀態在下壹個SPI周期開始時清除。語音由AUDOUT輸出給功放,放大後輸出。

2.2 P1.0到1.4組成按鍵組,完成前後選擇、狀態選擇、手動控制。並預留P1.4到P1.7做為功能擴展口。

2.3 霍爾采集的信號經光耦4N25進入P3.2。此腳為外部中斷O的輸入腳,壹旦有脈沖進入就會觸發單片機中斷,調用處理程序。

2.4 安裝在車門上的微動開關在到站後給C51壹個信號,使其自動開始下壹段的計數。

2.5 P2.0到P2.6直接驅動數碼管,P3.6 P3.7為片選端,采用動態掃描方式輸出到站情況。

2.6 ISD4004的供電電壓為3V,還需要壹個電壓變換電路,在此不給出。報站器還有其他功能如乘員話筒,報警提示等由於本文只簡述計數功能的核心,便不再累述。

三 軟件設計

采用C語言開發,包括初始化、中斷處理、自動運行、手動運行、讀寫EEPROM、以及主程序模塊。在XAC環境下進行開發,並仿真,最好即可上車調試使用。

四 調試與應用

系統完成後就可以上機調試,使用時可用配套的燒寫器將站與站之間的距離寫入單片機內,如果不知道距離可以在機上采用手動方式輸入,使裝置處於輸入狀態,出站時按下錄入鍵,到站時按下確定鍵,就可以將站與站之間對應的數據寫入單片機。使用中如果出現粗報,采用手動調整即可。

五 結束語

該方式應用89C51單片機的高速計數器端口進行脈沖計數,以距離來控制報站時刻,首次實現了模糊控制,改變現有設備的不足。做到簡單實用自動化程度高。傳感器在公交車上的應用極大的提高了設備功能。

  • 上一篇:奇哢哢機器人口碑怎麽樣,總部在哪?
  • 下一篇:培訓機構暑期班結束文案(60個實用句子)
  • copyright 2024編程學習大全網