單片機(jī)控制系統(tǒng)的設(shè)計與調(diào)試方法
隨著材料科學(xué)、工藝技術(shù)、計算機(jī)技術(shù)的發(fā)展與進(jìn)步,電路系統(tǒng)向著集成度極高的方向發(fā)展。CPU的生產(chǎn)制造技術(shù),也朝著綜合性、技術(shù)性、實(shí)用性發(fā)展。如 CPU的運(yùn)算位數(shù)從4位、8位 ……到32位機(jī)的發(fā)展,運(yùn)算速度從8 MHz、32 MHz……到1.6 GHz??梢哉f是日新月異的發(fā)展著。其中單片機(jī)在控制系統(tǒng)中的應(yīng)用是越來越普遍了。單片機(jī)控制系統(tǒng)是以單片機(jī)(CPU)為核心部件,擴(kuò)展一些外部接口和設(shè)備,組成單片機(jī)工業(yè)控制機(jī),主要用于工業(yè)過程控制。要進(jìn)行單片機(jī)系統(tǒng)設(shè)計首先必須具有一定的硬件基礎(chǔ)知識;其次,需要具有一定的軟件設(shè)計能力,能夠根據(jù)系統(tǒng)的要求,靈活地設(shè)計出所需要的程序;第三,具有綜合運(yùn)用知識的能力。最后,還必須掌握生產(chǎn)過程的工藝性能及被測參數(shù)的測量方法,以及被控對象的動、靜態(tài)特性,有時甚至要求給出被控對象的數(shù)學(xué)模型。
本文引用地址:http://2s4d.com/article/172133.htm單片機(jī)系統(tǒng)設(shè)計主要包括以下幾個方面的內(nèi)容:控制系統(tǒng)總體方案設(shè)計,包括系統(tǒng)的要求、控制方案的選擇,以及工藝參數(shù)的測量范圍等;選擇各參數(shù)檢測元件及變送器;建立數(shù)學(xué)模型及確定控制算法;選擇單片機(jī),并決定是自行設(shè)計還是購買成套設(shè)備;系統(tǒng)硬件設(shè)計[1],包括接口電路,邏輯電路及操作面板;系統(tǒng)軟件設(shè)計,包括管理、監(jiān)控程序以及應(yīng)用程序的設(shè)計,應(yīng)用系統(tǒng)設(shè)計包含有硬件設(shè)計與軟件設(shè)計兩部分[2];系統(tǒng)的調(diào)試與試驗。
1單片機(jī)控制系統(tǒng)總體方案的設(shè)計
確定單片機(jī)控制系統(tǒng)總體方案,是進(jìn)行系統(tǒng)設(shè)計最重要、最關(guān)鍵的一步??傮w方案的好壞,直接影響整個控制系統(tǒng)的性能及實(shí)施細(xì)則??傮w方案的設(shè)計主要是根據(jù)被控對象的任務(wù)及工藝要求而確定的。設(shè)計方法大致如下:根據(jù)系統(tǒng)的要求,首先確定出系統(tǒng)是采用開環(huán)系統(tǒng)還是閉環(huán)系統(tǒng),或者是數(shù)據(jù)處理系統(tǒng)。選擇檢測元件,在確定總體方案時,必須首先選擇好被測參數(shù)的測量元件,它是影響控制系統(tǒng)精度的重要因素之一。選擇執(zhí)行機(jī)構(gòu),執(zhí)行機(jī)構(gòu)是微型機(jī)控制系統(tǒng)的重要組成部件之一。執(zhí)行機(jī)構(gòu)的選擇一方面要與控制算法匹配,另一方面要根據(jù)被控對象的實(shí)際情況確定。選擇輸入/輸出通道及外圍設(shè)備。選擇時應(yīng)考慮以下幾個問題:被控對象參數(shù)的數(shù)量;各輸入/輸出通道是串行操作還是并行操作;各通道數(shù)據(jù)的傳遞速率;各通道數(shù)據(jù)的字長及選擇位數(shù);對顯示、打印有何要求;畫出整個系統(tǒng)原理圖。
單片機(jī)控制系統(tǒng)中控制算法的選用一般有:
(1) 直接數(shù)字控制 當(dāng)被控對象的數(shù)學(xué)模型能夠確定時,可采用直接數(shù)字控制。所謂數(shù)學(xué)模型就是系統(tǒng)動態(tài)特性的數(shù)學(xué)表達(dá)式,它表示系統(tǒng)輸入輸出及其內(nèi)部狀態(tài)之間的關(guān)系。一般多用實(shí)驗的方法測出系統(tǒng)的特性曲線,然后再由此曲線確定出其數(shù)學(xué)模型?,F(xiàn)在經(jīng)常采用的方法是計算機(jī)仿真及計算機(jī)輔助設(shè)計,由計算機(jī)確定出系統(tǒng)的數(shù)學(xué)模型,因而加快了系統(tǒng)模型的建立。當(dāng)系統(tǒng)模型建立后,即可選定上述某一種算法,設(shè)計數(shù)字控制器,并求出差分方程。
(2) 數(shù)字化PID控制 由于被控對象是復(fù)雜的,因此并非所有的系統(tǒng)均可求出數(shù)學(xué)模型,有些即使可以求出來,但由于被控對象環(huán)境的影響,許多參數(shù)經(jīng)常變化,因此很難進(jìn)行直接數(shù)字控制。此時最好選用數(shù)字化PID(比例積分微分)控制。在PID控制算法中,以位置型和增量型2種PID為基礎(chǔ),根據(jù)系統(tǒng)的要求,可對PID控制進(jìn)行必要的改進(jìn)。通過各種組合,可以得到更圓滿的控制系統(tǒng),以滿足各種不同控制系統(tǒng)的要求。例如串級PID就是人們經(jīng)常采用的控制方法之一。
所謂串級控制就是第一級數(shù)字PID的輸出不直接用來控制執(zhí)行機(jī)構(gòu),而是作為下一級數(shù)字PID的輸入值,并與第二級的給定值進(jìn)行比較,其偏差作為第二級數(shù)字PID的控制量。當(dāng)然,也可以用多級PID嵌套。
2單片機(jī)系統(tǒng)硬件設(shè)計
盡管單片機(jī)集成度高,內(nèi)部含有I/O控制線,ROM,RAM和定時/計數(shù)器。但在組成單片機(jī)系統(tǒng)時,擴(kuò)展若干接口仍是設(shè)計者必不可少的任務(wù)。擴(kuò)展接口有 2種方案,一種是購置現(xiàn)成的接口板,另一種是根據(jù)系統(tǒng)實(shí)際需要,選用適合的芯片進(jìn)行設(shè)計控制系統(tǒng)。就后一種而言,主要包括以下幾個方面的內(nèi)容。
基本系統(tǒng)的構(gòu)成:一個獨(dú)立的單片機(jī)核心系統(tǒng),一般由時鐘電路、地址鎖存器電路、地址譯碼器、存儲器擴(kuò)展、模擬量輸入通道的擴(kuò)展、模擬量輸出通道的擴(kuò)展、開關(guān)量的I/O接口設(shè)計、鍵盤輸入和顯示電路等組成。
(1)存儲器擴(kuò)展 由于單片機(jī)有4種不同的存儲器,且程序存儲器和數(shù)據(jù)存儲器是分別編址的,所以單片機(jī)的存儲器容量與同樣位數(shù)的微型機(jī)相比擴(kuò)大了一倍多。擴(kuò)展時,首先要注意單片機(jī)的種類;另一方面要把程序存儲器和數(shù)據(jù)存儲器分開。
(2)模擬量輸入通道的擴(kuò)展 主要有以下2個問題:一個是數(shù)據(jù)采集通道的結(jié)構(gòu)形式,一般單片機(jī)控制系統(tǒng)都是多通道系統(tǒng)。因此選用何種結(jié)構(gòu)形式采集數(shù)據(jù),是進(jìn)行模擬量輸入通道設(shè)計首先要考慮的問題。多數(shù)系統(tǒng)都采用共享A/D和S/H形式。但是當(dāng)被測參數(shù)為幾個相關(guān)量時,則需選用多路S/H,共享A/D形式。對于那些參數(shù)比較多的分布式控制系統(tǒng),可把模擬量先就地進(jìn)行A/D轉(zhuǎn)換,然后再送到主機(jī)中處理。對于那些被測參數(shù)相同(或相似)的多路數(shù)據(jù)采集系統(tǒng),為減少投資,可采用模擬量多路轉(zhuǎn)換,共享儀用放大器、S/H和A/D的所謂地電平多路切換形式。另外一個問題是A/D轉(zhuǎn)發(fā)器的選擇,設(shè)計時一定要根據(jù)被控對象的實(shí)際要求選擇A/D轉(zhuǎn)換器,在滿足系統(tǒng)要求的前提下,盡量選用位數(shù)比較低的A/D轉(zhuǎn)換器。
(3)模擬量輸出通道的擴(kuò)展 模擬量輸出通道是單片機(jī)控制系統(tǒng)與執(zhí)行機(jī)構(gòu)(或控制設(shè)備)連接的紐帶和橋梁。設(shè)計時要根據(jù)被控對象的通道數(shù)及執(zhí)行機(jī)構(gòu)的類型進(jìn)行選擇。對于那些可直接接受數(shù)字量的執(zhí)行機(jī)構(gòu),可由單片機(jī)直接輸出數(shù)字量,如步進(jìn)電機(jī)或開關(guān)、繼電器系統(tǒng)等。對于那些需要接收模擬量的執(zhí)行機(jī)構(gòu),則需要用D/A轉(zhuǎn)化,即把數(shù)字量變成模擬量后,再帶動執(zhí)行機(jī)構(gòu)。
(4)開關(guān)量的I/O接口設(shè)計 由于開關(guān)量只有2種狀態(tài)“1”或“0”,所以,每個開關(guān)量只需一位二進(jìn)制數(shù)表示即可。因為MCS—51系列單片機(jī)設(shè)有一個專用的布爾處理機(jī),因而對于開關(guān)量的處理尤為方便。為了提高系統(tǒng)的抗干擾能力,通常采用光電隔離器把單片機(jī)與外部設(shè)備隔開。
(5)操作面板 操作面板是人機(jī)對話的紐帶,它根據(jù)具體情況,可大可小。為了便于現(xiàn)場操作人員操作,單片機(jī)控制系統(tǒng)設(shè)計一個操作面板的要求: 操作方便、安全可靠、并具有自保功能,即使是誤操作也不會給生產(chǎn)帶來惡果。
(6)系統(tǒng)速度匹配 在不影響系統(tǒng)總功率的前提下,時鐘頻率選得低一些較好,這樣可降低系統(tǒng)對其他元器件工作速度的要求,從而降低成本和提高系統(tǒng)的可靠性。但系統(tǒng)頻率選的比較高時,要設(shè)法使其他元器件與主機(jī)匹配。
(7)系統(tǒng)負(fù)載匹配 系統(tǒng)中各個器件之間的負(fù)載匹配問題,主要表現(xiàn)在以下幾個方面。
① 邏輯電路間的接口及負(fù)載:在進(jìn)行系統(tǒng)設(shè)計時,有時需要采用TTL和CMOS混合電路,由于二者要求的電平不一樣,因此一定要注意電流及負(fù)載的匹配問題。
② MCS—51系列單片及負(fù)載:8031的外部擴(kuò)展功能是很強(qiáng)的,但是8031的P0口和P2口以及控制信號ALE的負(fù)載能力都是有限的,P0口能驅(qū)動8個 LSTTL電路,P2口能驅(qū)動4個LSTTL電路。硬件設(shè)計時應(yīng)仔細(xì)核對8031的負(fù)載,使其不超過總的負(fù)載能力的70%。
3單片機(jī)控制系統(tǒng)的軟件設(shè)計
單片機(jī)控制系統(tǒng)的軟件設(shè)計一般分2類,系統(tǒng)軟件和應(yīng)用軟件設(shè)計。系統(tǒng)軟件的主要任務(wù)是:管理整個控制系統(tǒng)的全過程,比如,POWERUP自診斷功能,KEY INPIT 的管理功能,PRINTER OUTPUT報表功能,DISPLAY功能等等。是控制系統(tǒng)的核心程序,也稱之為MONITER監(jiān)控管理程序其作用類似PC機(jī)的DOS 系統(tǒng)。軟件設(shè)計的幾個方面如下:
(1)可靠性設(shè)計為保證系統(tǒng)軟件的可靠性,通常設(shè)計一個自診斷程序,定時對系統(tǒng)進(jìn)行診斷。在可靠性要求較高的場合,可以設(shè)計看門狗電路,也可以設(shè)計軟件陷阱,防止程序跑飛。
(2)軟件設(shè)計與硬件設(shè)計的統(tǒng)一性在單片機(jī)系統(tǒng)設(shè)計中,通常一個同樣的功能,通過硬件和軟件都可以實(shí)現(xiàn),確定那些由硬件完成,那些由軟件完成,這就是軟件、硬件的折衷問題。一般來說,在系統(tǒng)可能的情況下,盡量采用軟件,因為這樣可以節(jié)省經(jīng)費(fèi)。若系統(tǒng)要求實(shí)時性比較強(qiáng),則可采用硬件。
(3)應(yīng)用軟件的特點(diǎn)
①實(shí)時性:由于工業(yè)過程控制系統(tǒng)是實(shí)時控制系統(tǒng),所以對應(yīng)用軟件的執(zhí)行速度都有一定的要求,即能夠在被控對象允許的時間間隔內(nèi)對系統(tǒng)進(jìn)行控制、計算和處理。換言之,要求整個應(yīng)用軟件必須在一個采樣周期內(nèi)處理完畢。所以一般都采用匯編語言編寫應(yīng)用軟件。但是,對于那些計算工作量比較大的系統(tǒng),也可以采用高級語言和匯編語言混合使用的辦法,即數(shù)據(jù)采集、判斷、及控制輸出程序用匯編語言,而對于那些較為復(fù)雜的計算可采用高級語言。為了提高系統(tǒng)的實(shí)時性,對于那些需要隨機(jī)間斷處理的任務(wù),通常采用中斷系統(tǒng)來完成。
② 通用性:在應(yīng)用程序設(shè)計中,為了節(jié)省內(nèi)存和具有較強(qiáng)的適應(yīng)能力,通常要求程序有一定的靈活性和通用性。為此,可以采用模塊結(jié)構(gòu),盡量將共用的程序編寫成子程序,如算術(shù)和邏輯運(yùn)算程序、A/D、D/A轉(zhuǎn)換程序、延時程序、PID運(yùn)算程序、數(shù)字濾波程序、標(biāo)度變換程序、報警程序等。
(4)軟件開發(fā)步驟軟件開發(fā)大體包括:劃分功能模塊及安排程序結(jié)構(gòu);畫出各程序模塊詳細(xì)流程圖;選擇合適的語言編寫程序;將各個模塊連接成一個完整的程序。
隔離器相關(guān)文章:隔離器原理
評論