基于單片機控制的迫擊炮防重裝彈系統(tǒng)
2 硬件結構
圖2為本系統(tǒng)電路控制部分的硬件結構,根據(jù)功能要求,選用Atmel公司推出的AT89C2051為控制核心,其是目前比較主流的單片機芯片,共有20個引腳,其中包括15個I/O口,選用此單片機可縮小裝置的體積,簡化電路。本文引用地址:http://butianyuan.cn/article/171374.htm
為提高可靠性,紅外發(fā)射管發(fā)出的信號是38 kHz的調制信號,調制電路也采用AT89C2051通過軟件編程來產(chǎn)生38 kHz紅外調制信號,該信號通過多個并聯(lián)的門電路提高驅動力,再加載在紅外發(fā)射管上(圖2未畫出發(fā)射信號的調制電路),這樣不僅電路簡單,得到的信號頻率也比較穩(wěn)定。
紅外接收采用的是一體化的接收頭HS0038,其內部集成有紅外接收、放大、解調、整形等電路,當接收到38 kHz的紅外脈沖串時,輸出低電平,否則輸出高電平,其輸出信號的極性與發(fā)送信號的相反,圖2中使用三極管對其反向及放大后,兩路紅外接收管輸出的信號分別連入AT89C2051的P3.2()與P3.2()引腳。
紅外傳感器為檢測炮彈裝入與發(fā)射的手段,故其發(fā)射與接收器的正常工作是系統(tǒng)可靠的前提,為此設置了開機對其進行檢測的功能。
單片機作為控制核心,可以根據(jù)P3.2與P3.3輸入信號的高、低及跳變判斷出迫擊炮發(fā)射過程所處的狀態(tài):待填裝狀態(tài)、半填裝狀態(tài)、填裝完成狀態(tài)、正常發(fā)射完成狀態(tài)及不發(fā)火狀態(tài)。當判斷出發(fā)射過程處于不發(fā)火狀態(tài)時,由P3.0控制啟動機械裝置卡住炮口,防止再次填裝炮彈動作完成,同時由P3.1啟動光閃爍報警及P3.4啟動音樂片KD9561報警,為提高報警聲響,采用LM386作為音頻放大;當檢測到完成一次正常發(fā)射狀態(tài)時,計算一次炮彈發(fā)射的枚數(shù),并通過數(shù)碼管顯示,系統(tǒng)設置了兩位數(shù)碼管,由單片機的P1口控制其段選碼,P3.5與P3.7控制其位選碼,最大計數(shù)值為99枚。
3 軟件設計
本系統(tǒng)將紅外接收管的輸出信號引入單片機的P3.2()與P3.3()引腳,可以比較巧妙且比較簡潔地通過軟件編程判斷迫擊炮發(fā)射過程所處的狀態(tài),因為此兩腳即是通用的I/O引腳又是外部中斷的輸入引腳,這樣可以通過兩引腳電平的高、低及是否有中斷和中斷產(chǎn)生的次序來判斷發(fā)射過程所處的狀態(tài),當接收到紅外光照時,P3.2=0且P3.3=0,故通過查詢檢測到P3.2=0且P3.3=0時,則發(fā)射過程處于
待填裝狀態(tài);當檢測到P3.2=1且P3.3=1時,則發(fā)射過程處于半填裝狀態(tài);以半填裝狀態(tài)為判斷前提,若炮彈被重新取出,則P3.3先由高變低,后P3.2由高變低,也即當產(chǎn)生了先后的中斷,說明炮彈被取出重新回到待填裝狀態(tài);反之當產(chǎn)生了先后的中斷,說明炮彈已完全滑入身管進入填裝完成狀態(tài),這時啟動定時器,2.5 s后未檢測到與中斷,說明炮彈未出膛,進入不發(fā)火狀態(tài);反之在2.5 s內檢測到與中斷,說明完成一次正常發(fā)射。
評論