<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 汽車(chē)電子 > 設計應用 > 計算機控制智能小車(chē)的軟件設計

計算機控制智能小車(chē)的軟件設計

作者: 時(shí)間:2016-10-29 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:本設計是采用作為從機(也稱(chēng)下位機),而作為中央控制機的主從式系統。主機同時(shí)根據從從機接收的過(guò)程參數進(jìn)行判斷處理并給從機發(fā)送各種控制命令。利用的串行口與的串行口進(jìn)行,可對遠程前端進(jìn)行控制,將單片機采集的數據傳送到PC中去,由PC機對數據進(jìn)行處理和顯示,同時(shí)把反饋信號發(fā)到單片機,實(shí)現閉環(huán)控制和管理。本設計在VC++6.0的環(huán)境下,編寫(xiě)使用C++語(yǔ)言,SQL數據庫的串口通信程序,控制由單片機控制的。

本文引用地址:http://dyxdggzs.com/article/201610/309949.htm

0 引言

隨著(zhù)多微機系統的應用和微機網(wǎng)絡(luò )的發(fā)展,通信功能越來(lái)越顯得重要。在工業(yè)控制系統(尤其是多點(diǎn)現場(chǎng)工業(yè)控制系統)設計實(shí)踐中,單片機與PC機組合構成分布式控制系統便是一個(gè)重要的應用;主控計算機通過(guò)485網(wǎng)絡(luò )監督管理下位分機的運行狀況。在以單片機為基礎的數據采集和實(shí)時(shí)控制系統中,通過(guò)計算機中的RS-232接口進(jìn)行計算機與單片機之間的命令和數據傳送,就可以利用計算機對生產(chǎn)現場(chǎng)進(jìn)行監測和控制。本文設計是以單片機AT89C51為控制核心,附以外圍電路,采用反射光耦(1550-01)檢測黑白線(xiàn),霍爾傳感器(A04E)+磁鋼來(lái)實(shí)現智能車(chē)行駛的計程,采用四位共陰LED實(shí)現行駛計程和時(shí)間的交替計數顯示。同時(shí)還充分利用單片機的串口、并口資源和運算、處理能力,來(lái)實(shí)現小車(chē)的按軌跡直線(xiàn)行走、按軌跡轉彎、計數小車(chē)行駛的距離,最后停車(chē)等智能控制系統。避免了當前的電動(dòng)小汽車(chē)基本上只能采取的是基于純硬件電路的一種開(kāi)環(huán)控制方法,或者是直線(xiàn)行駛,或者是在遙控下做出前進(jìn)、后退、轉彎、停車(chē)等基本功能。

1 系統的設計思路

本文設計是采用PC機做上位機和單片機(作為的外圍電路的設計)做下位機的主從式系統。PC機控制小車(chē)的模擬框圖如圖1所示。利用單片機的串行口與PC機的串行口進(jìn)行,通過(guò)設置PC機的控制界面(運行的各種控制功能)來(lái)實(shí)現上位機的數據采集,并由上位機不斷發(fā)送握手協(xié)議(通信協(xié)議)信號,直到下位機回應“發(fā)送下一幀”為止。之后上位機開(kāi)始發(fā)送正常數據。若下位機反饋“發(fā)送下一幀”信息,則繼續發(fā)送下一幀;若下位機反饋“重發(fā)上一幀”,則重發(fā)剛剛發(fā)送過(guò)的那一幀數據;若下位機反饋“無(wú)效地址”,則繼續發(fā)送下一幀數據,從而實(shí)現PC機對遠程前端單片機的控制。同時(shí)將單片機采集的數據通過(guò)判斷握手協(xié)議(通信協(xié)議)傳送到PC中去,由PC(主)機同時(shí)根據從從機接收的過(guò)程參數進(jìn)行判斷處理并給從機(單片機)發(fā)送各種控制命令。從而實(shí)現PC機(上位機)對智能小車(chē)外圍電路(下位機)的控制。

計算機控制智能小車(chē)的軟件設計

下位機設計采用AT89C51單片機芯片來(lái)實(shí)現智能車(chē)模型的自動(dòng)尋跡、自動(dòng)控制等功能,利用反射光耦(1550-01)檢測黑白線(xiàn)來(lái)實(shí)現;采用霍爾傳感器(A04E)+磁鋼來(lái)實(shí)現智能車(chē)行駛的計程;同時(shí)采用四位共陰LED實(shí)現行駛計程和時(shí)間的交替計數顯示。本文上位機設計采用在Visu al C++環(huán)境中,直接使用Windows提供的API函數實(shí)現一個(gè)動(dòng)態(tài)鏈接庫(DLL),通過(guò)編程工具(VC)設計一個(gè)與智能小車(chē)通信的上位機控制界面,在上位機和下位機之間通過(guò)MAX485接口芯片與控制軟件結合來(lái)監測。MAX485是半雙工的,可以先檢測/RE和DE的電平,判斷芯片是處于接收信號還是發(fā)送信號,然后再檢測AB的電平,當A引腳的電平高于B端時(shí),代表發(fā)送的數據為1;當A的電平低于B端時(shí),代表發(fā)送的數據為0。從而實(shí)現上位機與下位機(由AT89C51單片機控制的智能小車(chē))的半雙工串行通信。

2 系統的軟件設計

單片機的通信軟件采用AT89C51的匯編語(yǔ)言編寫(xiě),單片機的發(fā)送和接收采用中斷程序。準備發(fā)送的數據存放在以?xún)却?0H為首地址的連續10個(gè)單元中。本設計采用單片機芯片AT89C51為核心控制器,通過(guò)編寫(xiě)控制程序(匯編語(yǔ)言)來(lái)控制小車(chē)的正常行駛、左右轉彎、后退行駛、停止行駛、檢測金屬、計程、行駛時(shí)間、告警和上位機與下位機的通信等。

2.1 系統的下位機軟件設計

2.1.1 控制主程序設計

單片機主程序圖如圖2所示??刂浦鞒绦蚴峭ㄟ^(guò)中斷服務(wù)程序實(shí)現的,采用外部中斷0、外部中斷1和T0中斷來(lái)實(shí)現主程序的控制,使各中斷子程序交替運行,顯示不會(huì )產(chǎn)生干擾,且能在顯示部分交替進(jìn)行顯示。

計算機控制智能小車(chē)的軟件設計

2.1.2 小車(chē)行駛程序設計

小車(chē)行駛流程圖如圖3所示。小車(chē)行駛控制程序啟動(dòng)后程序進(jìn)入5S的倒計時(shí)狀態(tài),并開(kāi)啟四位數碼顯示工作;5S倒計時(shí)結束后程序開(kāi)始運行黑帶檢測程序,由通過(guò)光電傳感器(1550-01)檢測到通過(guò)LM324放大電路放大的信號輸入來(lái)判斷小車(chē)是否正常行駛,若否,則由相應的程序來(lái)控制小車(chē)的左轉或右轉來(lái)達到正常行駛;當傳感器檢測到停止線(xiàn)時(shí)小車(chē)立即停止。

計算機控制智能小車(chē)的軟件設計

2.1.3 時(shí)間計數程序設計

時(shí)間計數子程序圖如圖4所示。小車(chē)行駛的時(shí)間長(cháng)短需要通過(guò)時(shí)間計數程序來(lái)控制。時(shí)間計數程序通過(guò)累加器每秒鐘計數一次來(lái)實(shí)現計數功能,并由十進(jìn)制調整指令(DA A)來(lái)進(jìn)行個(gè)位轉換為十位的功能,同時(shí)特定的檢測控制指令(CJNEA.#59H.JJX1)來(lái)判斷是否達59S,若否,則進(jìn)行高低位分別存儲并送顯示部分顯示;若是,則分位加1秒位清0并送顯示部分顯示。

計算機控制智能小車(chē)的軟件設計

2.1.4 行駛距離記錄程序設計

距離中斷子程序圖如圖5所示。小車(chē)行駛距離的記錄通過(guò)霍爾傳感器來(lái)檢測小車(chē)車(chē)輪行駛轉動(dòng)的圈數,并通過(guò)中斷服務(wù)子程序來(lái)進(jìn)行換算成相應的十進(jìn)制的(距離)數據,再特殊的換算控制指令:


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>