新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于51單片機的電機控制系統設計

        基于51單片機的電機控制系統設計

        作者: 時間:2011-11-26 來源:網絡 收藏

        本次設計中繼電器采用的是HUIGANG HRS2H-S-DC-12V型,SN74LS07N作為繼電器的驅動電路,低電平輸入有效,繼電器還需要并聯二極管電路,主要是為了保護SN74LS07N。當流經繼電器線圈的電流迅速減小時,線圈會產生很高的自感電動勢使晶體管被擊穿,并聯上二極管后,即可將線圈的自感電動勢鉗位于二極管的正向導通電壓。P3.0低電平時,繼電器1常閉觸點斷開,常開觸點閉合,電機正向電路導通,開始正向轉動。P3.1同理,P3.0和P3.1不可同時為低電平。

        3 軟件設計
        3.1 程序說明

        在KeilμVision 3 IDE中進行程序的設計開發,用C語言編寫。KeilμVision 3集成開發環境是Keil Soltware開發的基于80C51內核的微處理器軟件開發平臺,可以完成從工程建立到管理、編譯、鏈接、目標代碼的生成、軟件仿真、硬件仿真等完整的開發流程,尤其是C編譯工具在產生代碼的準確性和效率方面達到了較高的水平。它支持所有的Keil 80C51的工具軟件,包括C51編譯器、宏匯編器、鏈接器器/定位器和目標文件至Hex格式轉換器。鑒于此,選擇其為程序開發環境。
        系統程序由主程序、中斷處理子程序、按鍵處理程序以及顯示子程序等組成。對時間計時采用定時器定時中斷產生,沒有選擇用軟件延時的方式,這樣不占用CPU的時間。定時器T0產生50 ms定時中斷,在中斷服務程序中有一個計數器,每產生20次中斷,有一個1秒計數。按鍵掃描采用單個按鍵的掃描,有相應的按鍵處理子程序,程序中包括按鍵去抖動,按鍵的鍵后處理,去抖動采用延時去抖法。顯示子程序在主程序中被調用對時間進行實時顯示。
        3.2 主程序流程圖
        主程序流程圖如圖2所示,主要完成系統的初始化、按鍵掃描、顯示程序及其他子程序調用等功能。


        初始化時關閉定時中斷,P0.O~P0.2口輸出高電平,狀態指示燈熄滅,P3.0~P3.1口輸出高電平電機停止轉動,對LCD初始化顯示,顯示4行信息,2行顯示時間,格式為時:分:秒,另外2行為時間的說明文字。將所有的初始化功能寫成一個子程序,主程序只需調用它即可完成系統初始化。初始化完成之后,掃描按鍵,如有按鍵按下,調用相應的處理程序。時間設定鍵按下時,被選中的時間單位將會不斷的閃爍,區別于其他沒有被設置的時間單位,通過K1,K2鍵對時間進行改動,按下K3鍵退出時間設定。開始鍵被按下時,開啟定時中斷,LCD顯示時間開始倒計時,PO.1口輸出低電平,正向轉動指示燈亮,P3.0輸出低電平,電機開始正向轉動,在中斷服務程序中控制PO.0口輸出電平,使正常工作指示燈1 s閃爍一次。停止鍵被按下時,P3.O~P3.1輸出高電平,電機停止轉動,P0.0~P0.2輸出高電平,狀態指示燈熄滅,關閉定時中斷,停止計數。正向轉動時間結束時,反向轉動開始倒計時,P3.O輸出高電平,P3.1輸出低電平,電機反向轉動,P0.1輸出高電平,PO.2輸出低電平,正向轉動指示燈熄滅,反向轉動指示燈亮。顯示程序實時將時間的變化在LCD上顯示。

        4 結語
        該系統經實際運行,可以滿足在功能鍵的操作下對時間進行設定,控制電機的啟動、正反向轉動、停止,狀態指示燈正確顯示工作狀態,LCD正常的顯示了時間。
        本系統將應用于一個閥門的自動打開閉合裝置,正向轉動時閥門打開,反向轉動時,閥門關閉,實現對液體流量的控制,具體應用時還需要對閥門打開閉合的狀態進行檢測。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 文化| 儋州市| 平邑县| 泗洪县| 奉新县| 东莞市| 临汾市| 阿克苏市| 通海县| 长子县| 新安县| 隆林| 敦化市| 唐河县| 赤城县| 柳河县| 霞浦县| 桂平市| 阳山县| 寻乌县| 隆安县| 田东县| 成都市| 井研县| 汝阳县| 廊坊市| 陆良县| 青州市| 新巴尔虎左旗| 韶山市| 婺源县| 乌拉特后旗| 静海县| 乌恰县| 修武县| 通道| 铁岭县| 新余市| 清河县| 建湖县| 沙洋县|