基于51單片機的設(shè)計(花樣流水燈、交通燈控制系統(tǒng)、變頻調(diào)速控制系統(tǒng)、呼吸燈)


基于51單片機設(shè)計的花樣流水燈設(shè)計
一、項目介紹
花樣流水燈是一種常見的LED燈效果,被廣泛應(yīng)用于舞臺表演、節(jié)日慶典、晚會演出等場合。在現(xiàn)代智能家居、電子產(chǎn)品中,花樣流水燈也被廣泛使用,通過調(diào)整亮滅順序和時間,可以實現(xiàn)各種炫酷的燈光效果,增強用戶體驗。而51單片機作為一種常見的嵌入式開發(fā)平臺,具有體積小、功耗低、可編程性強等優(yōu)點,非常適合用于開發(fā)花樣流水燈及其他嵌入式應(yīng)用。
以下場景中流水燈得到了廣泛的應(yīng)用:
舞臺表演:花樣流水燈可用于舞臺背景、音樂MV等場合,配合音樂和舞蹈,營造出炫酷、動感的視覺效果。
節(jié)日慶典:在傳統(tǒng)節(jié)日如春節(jié)、中秋節(jié)等場合,花樣流水燈可以用于燈籠、彩燈等裝飾,為節(jié)日增添喜慶氛圍。
晚會演出:在各種晚會、派對、聚會等場合,花樣流水燈可以用于舞臺效果、音樂燈光秀等,增強整個活動的氛圍和趣味性。
智能家居:花樣流水燈可以使用在居家燈光控制中,實現(xiàn)遠程控制、定時開關(guān)、自動調(diào)節(jié)等功能,提升居住環(huán)境的科技感和人性化。
二、設(shè)計原理
2.1 基本原理
花樣流水燈是一種常見的LED燈效果,通常由多個LED燈組成,通過控制每個LED燈的亮滅順序和時間,實現(xiàn)花樣流水燈的效果。在51單片機中,可以使用定時器和端口控制來實現(xiàn)這一效果。
2.2 硬件搭建
為了實現(xiàn)花樣流水燈,需要將多個LED燈按照一定的順序連接到51單片機的IO引腳上。電路設(shè)計上,為每個LED燈配備一個電阻,并將它們連接到5V電源引腳和地線上。
具體硬件搭建方法如下:
(1)將多個LED燈依次連接起來組成一個電路鏈,將第一個LED的正極接到P1.0口,第二個LED的正極接到P1.1口,第三個LED的正極接到P1.2口,以此類推,一共連接7個LED燈。
(2)為每個LED燈配備一個適當?shù)碾娮?,用來限制電流,防止損壞LED。
(3)將每個LED的負極連接到5V電源引腳附近的地線上,形成一個完整的電路。
2.3 軟件實現(xiàn)
在軟件實現(xiàn)上,使用51單片機的定時器和端口控制來控制LED燈的亮滅順序和時間。
具體方法如下:
(1)設(shè)置一個計數(shù)器變量count,用來保存當前亮起的LED燈的編號(從0開始)。
(2)在定時器中斷處理函數(shù)中,每次計數(shù)器溢出時,將當前亮起的LED燈熄滅,并將count加1;當count等于LED燈總數(shù)時,將count重置為0。
(3)然后,再將下一個LED燈亮起,以此類推。
(4)通過控制定時器的計數(shù)周期和每個燈亮起的時間,可以調(diào)整花樣流水燈的效果。
三、代碼實現(xiàn)
3.1 流水燈代碼實現(xiàn)1
#include
#define LED_NUM 8 // LED燈總數(shù)
#define TIMER_TICK 500 // 定時器計數(shù)初值,控制亮滅時間
#define HIGH 0 // 高電平
#define LOW 1 // 低電平
unsigned int count = 0;
// 定時器中斷處理函數(shù)
void TimerInterrupt() interrupt 1
{
static unsigned long tick = 0;
tick++;
if (tick >= TIMER_TICK)
{
P1 &= ~(1 << count); // 熄滅當前LED
count++; // 切換到下一個LED
if (count >= LED_NUM)
{
count = 0; // 重置計數(shù)器
}
P1 |= (1 << count); // 亮起下一個LED
tick = 0; // 重置計時器
}
}
// 主函數(shù)
void main()
{
unsigned int i;
P1 = 0xFF; // 所有IO口初始化為高電平
TMOD |= 0x01; // 定時器0,模式1,16位自動重載
TH0 = (65536 - TIMER_TICK) / 256;
TL0 = (65536 - TIMER_TICK) % 256;
ET0 = 1; // 定時器中斷允許
EA = 1; // 總中斷允許
TR0 = 1; // 定時器開始計數(shù)
while (1)
{
// 等待中斷事件
}
}
3.2 流水燈實現(xiàn)效果2
【1】逐個點亮
#include
void Delay(unsigned int t) // 延時函數(shù)
{
unsigned int i, j;
for (i = 0; i < t; i++)
for (j = 0; j < 125; j++);
}
void main()
{
while (1)
{
unsigned char i; // 定義計數(shù)器i
for (i = 0; i < 8; i++) // 循環(huán)8次,依次點亮LED燈
{
P0 = ~(1 << i); // 通過位運算生成控制信號,輸出到P0口,控制LED燈點亮
Delay(500); // 延時500ms
}
}
}
【2】逐個熄滅
#include
void Delay(unsigned int t) // 延時函數(shù)
{
unsigned int i, j;
for (i = 0; i < t; i++)
for (j = 0; j < 125; j++);
}
void main()
{
while (1)
{
unsigned char i; // 定義計數(shù)器i
for (i = 7; i < 8; i--) // 循環(huán)8次,依次熄滅LED燈
{
P0 = ~(1 << i); // 通過位運算生成控制信號,輸出到P0口,控制LED燈熄滅
Delay(500); // 延時500ms
}
}
}
【3】來回流動
#include
void Delay(unsigned int t) // 延時函數(shù)
{
unsigned int i, j;
for (i = 0; i < t; i++)
for (j = 0; j < 125; j++);
}
void main()
{
while (1)
{
unsigned char i; // 定義計數(shù)器i
for (i = 0; i < 8; i++) // 循環(huán)8次,依次點亮LED燈
{
P0 = ~(1 << i); // 通過位運算生成控制信號,輸出到P0口,控制LED燈點亮
Delay(500); // 延時500ms
}
for (i = 6; i > 0; i--) // 循環(huán)6次,依次熄滅LED燈
{
P0 = ~(1 << i); // 通過位運算生成控制信號,輸出到P0口,控制LED燈熄滅
Delay(500); // 延時500ms
}
}
}
3.3 閃光燈的實現(xiàn)
下面是三個不同的閃光燈效果的代碼,分別為常亮、快閃和慢閃。
【1】常亮閃光燈
#include
sbit LED = P1 ^ 0;
void main() {
while (1) {
LED = 0; // LED常亮
}
}
【2】快閃閃光燈
#include
sbit LED = P1 ^ 0;
void delay(unsigned int i) {
while (i--);
}
void main() {
while (1) {
LED = 0; // LED亮
delay(50000); // 延時一段時間
LED = 1; // LED滅
delay(50000); // 延時一段時間
}
}
【2】慢閃閃光燈
#include
sbit LED = P1 ^ 0;
void delay(unsigned int i) {
while (i--);
}
void main() {
while (1) {
LED = 0; // LED亮
delay(100000); // 延時一段時間
LED = 1; // LED滅
delay(100000); // 延時一段時間
}
}
以上三個代碼中,都使用了P1口的第0位來控制LED燈的亮滅。其中,第一個代碼是常亮閃光燈,只需要將LED置為0。第二個代碼是快閃閃光燈,使用了一個delay函數(shù)來實現(xiàn)延時,每次延時50000個時鐘周期,即約為500ms。第三個代碼是慢閃閃光燈,與第二個代碼類似,只是將延時時間改為了100000個時鐘周期,即約為1s。
基于51單片機的交通燈控制系統(tǒng)設(shè)計
第一章 硬件設(shè)計與原理
以AT89C51單片機為核心,起著控制作用。系統(tǒng)包括數(shù)碼管顯示電路、復(fù)位電路、時鐘電路、發(fā)光二級管電路和按鍵電路。設(shè)計思路分為六個模塊:復(fù)位電路、晶振電路模塊、AT89C51、數(shù)碼管顯示電路、發(fā)光二級管電路和按鍵電路這六個模塊。
1.2 硬件設(shè)計分析
1.2.1 電源的設(shè)計
系統(tǒng)電源使用直流5伏。
由電腦USB接口提供電源。
USB是通用串行總線(Universal Serial Bus)接口的簡稱。它是目前使用比較廣泛的電腦接口之一,主要版本有1.0、1.1和最新的2.0三種版本。根據(jù)USB總線的工業(yè)標準,它可以提供額定功率為5V/500mA的電源供USB設(shè)備使用。
1.2.2 單片機最小系統(tǒng)
51單片機是對目前所有兼容intel 8031指令系統(tǒng)的單片機的統(tǒng)稱。該系列單片機的始祖是intel的8031單片機,后來隨著技術(shù)的發(fā)展,成為目前廣泛應(yīng)用的8為單片機之一。單片機是在一塊芯片內(nèi)集成了CPU、RAM、ROM、定時器/計數(shù)器和多功能I/O口等計算機所需要的基本功能部件的大規(guī)模集成電路,又稱為MCU。51系列單片機內(nèi)包含以下幾個部件:
一個8位CPU;一個片內(nèi)振蕩器及時鐘電路;
4KB的ROM程序存儲器;
一個128B的RAM數(shù)據(jù)存儲器;
尋址64KB外部數(shù)據(jù)存儲器和64KB外部程序存儲空間的控制電路;
32條可編程的I/O口線;
兩個16位定時/計數(shù)器;
一個可編程全雙工串行口;
5個中斷源、兩個優(yōu)先級嵌套中斷結(jié)構(gòu)。
如圖1-2-1所示為AT89C51單片機基本構(gòu)造,其基本性能介紹如下:
AT89C51本身內(nèi)含40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內(nèi)含2個外中端口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,STC89C51RC可以按照常規(guī)方法進行編程,但不可以在線編程。其將通用的微處理器和Flash存儲器結(jié)合在一起,特別是可反復(fù)擦寫的Flash存儲器可有效地降低開發(fā)成本。
AT89C51的主要特性如下表所示:
AT89C51為40腳雙列直插封裝的8位通用微處理器,采用工業(yè)標準的C51內(nèi)核,在內(nèi)部功能及管腳排布上與通用的8xc52相同,其主要用于會聚調(diào)整時的功能控制。功能包括對會聚主IC內(nèi)部寄存器、數(shù)據(jù)RAM及外部接口等功能部件的初始化,會聚調(diào)整控制,會聚測試圖控制,紅外遙控信號IR的接收解碼及與主板CPU通信等。主要管腳有:XTAL1(19腳)和XTAL2(18腳)為振蕩器輸入輸出端口,外接12MHz 晶振。RST/Vpd(9腳)為復(fù)位輸入端口,外接電阻電容組成的復(fù)位電路。VCC(40腳)和VSS(20腳)為供電端口,分別接+5V電源的正負端。P0~P3 為可編程通用I/O腳,其功能用途由軟件定義,在本設(shè)計中,P0端口(32~39腳)被定義為N1功能控制端口,分別與N1的相應(yīng)功能管腳相連接,13腳定義為IR輸入端,10腳和11腳定義為I2C總線控制端口,分別連接N1的SDAS(18腳)和SCLS(19腳)端口,12腳、27腳及28腳定義為握手信號功能端口,連接主板CPU的相應(yīng)功能端,用于當前制式的檢測及會聚調(diào)整狀態(tài)進入的控制功能。
P0口:P0口是一組8位漏極開路型雙向I/O 口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時,每位能吸收電流的方式驅(qū)動8個TTL邏輯門電路,對端口P0寫“1”時,可作為高阻抗輸入端用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時,這組口線分時轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在Flash 編程時,P0口接收指令字節(jié),而在程序校驗時,輸出指令字節(jié),校驗時,要求外接上拉電阻。
P1口:P1是一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。與AT89C51不同之處是,P1.0和P1.1還可分別作為定時/計數(shù)器2 的外部計數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX)。Flash編程和程序校驗期間,P1接收低8位地址。
P2口:P2是一個帶有內(nèi)部上拉電阻的8 位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對端口P2寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @DPTR指令)時,P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVX @RI指令)時,P2口輸出P2鎖存器的內(nèi)容。Flash編程或校驗時,P2亦接收高位地址和一些控制信號。
P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。對P3口寫入“1”時,它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時,被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能P3口還接收一些用于Flash 閃速存儲器編程和程序校驗的控制信號。
RST:復(fù)位輸入。當振蕩器工作時,RST引腳出現(xiàn)兩個機器周期以上高電平將使單片機復(fù)位。
ALE/PROG:當訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數(shù)據(jù)存儲器時將跳過一個AL脈沖。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條 MOVX 和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應(yīng)設(shè)置ALE禁止位無效。
PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當AT89C51由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次PSEN有效,即輸出兩個脈沖。在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN信號。
EA/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000H—FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器中的指令。Flash存儲器編程時,該引腳加上+12V的編程允許電源Vpp,當然這必須是該器件是使用12V編程電壓Vpp。
XTAL1:振蕩器反相放大器的及內(nèi)部時鐘發(fā)生器的輸入端。
XTAL2:振蕩器反相放大器的輸出端。
單片機最小系統(tǒng)說明:
時鐘信號的產(chǎn)生:在MCS-51芯片內(nèi)部有一個高增益反相放大器,其輸入端為芯片引腳XTAL1,其輸出端為引腳XTAL2。而在芯片的外部,XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個穩(wěn)定的自激振蕩器,這就是單片機的時鐘振蕩電路。
時鐘電路產(chǎn)生的振蕩脈沖經(jīng)過觸發(fā)器進行二分頻之后,才成為單片機的時鐘脈沖信號。
一般地,電容C2和C3取30pF左右,晶體的振蕩頻率范圍是1.2-12MHz。如果晶體振蕩頻率高,則系統(tǒng)的時鐘頻率也高,單片機的運行速度也就快。
單片機復(fù)位使CPU和系統(tǒng)中的其他功能部件都處在一個確定的初始狀態(tài)下,并從這個狀態(tài)開始工作。單片機復(fù)位條件:必須使9腳加上持續(xù)兩個機器周期(即24個振蕩周期)的高電平。
1.2.3 顯示系統(tǒng)
數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。
數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極管單元(多一個小數(shù)點顯示);按能顯示多少個“8”可分為1位、2位、4位等等數(shù)碼管;按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管。共陽數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到+5V,當某一字段發(fā)光二極管的陰極為低電平時,相應(yīng)字段就點亮。當某一字段的陰極為高電平時,相應(yīng)字段就不亮。。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極(COM)的數(shù)碼管。共陰數(shù)碼管在應(yīng)用時應(yīng)將公共極COM接到地線GND上,當某一字段發(fā)光二極管的陽極為高電平時,相應(yīng)字段就點亮。當某一字段的陽極為低電平時,相應(yīng)字段就不亮。
數(shù)碼管要正常顯示,就要用驅(qū)動電路來驅(qū)動數(shù)碼管的各個段碼,從而顯示出我們要的數(shù)字,因此根據(jù)數(shù)碼管的驅(qū)動方式的不同,可以分為靜態(tài)式和動態(tài)式兩類。
1) 靜態(tài)顯示驅(qū)動:靜態(tài)驅(qū)動也稱直流驅(qū)動。靜態(tài)驅(qū)動是指每個數(shù)碼管的每一個段碼都由一個單片機的I/O端口進行驅(qū)動,或者使用如BCD碼二-十進制譯碼器譯碼進行驅(qū)動。靜態(tài)驅(qū)動的優(yōu)點是編程簡單,顯示亮度高,缺點是占用I/O端口多,如驅(qū)動5個數(shù)碼管靜態(tài)顯示則需要5×8=40根I/O端口來驅(qū)動(要知道一個89C51單片機可用的I/O端口才32個呢),實際應(yīng)用時必須增加譯碼驅(qū)動器進行驅(qū)動,增加了硬件電路的復(fù)雜性。
2) 動態(tài)顯示驅(qū)動:數(shù)碼管動態(tài)顯示接口是單片機中應(yīng)用最為廣泛的一種顯示方式之一,動態(tài)驅(qū)動是將所有數(shù)碼管的8個顯示筆劃"a,b,c,d,e,f,g,dp"的同名端連在一起,另外為每個數(shù)碼管的公共極COM增加位選通控制電路,位選通由各自獨立的I/O線控制,當單片機輸出字形碼時,所有數(shù)碼管都接收到相同的字形碼,但究竟是那個數(shù)碼管會顯示出字形,取決于單片機對位選通COM端電路的控制,所以我們只要將需要顯示的數(shù)碼管的選通控制打開,該位就顯示出字形,沒有選通的數(shù)碼管就不會亮。通過分時輪流控制各個數(shù)碼管的的COM端,就使各個數(shù)碼管輪流受控顯示,這就是動態(tài)驅(qū)動。
本設(shè)計中數(shù)碼管采用的是動態(tài)驅(qū)動方式。
1.2.4 發(fā)光二級管電路
1.2.5 按鍵電路
第二章 軟件設(shè)計與分析
2.1 軟件設(shè)計的組成
該系統(tǒng)由延時子函數(shù)、數(shù)碼管顯示子函數(shù)、定時器0中斷子函數(shù)、主函數(shù)和數(shù)據(jù)定義這幾部分組成。
//----------------------------------------------------------------------//
上傳過程感覺繁瑣,里面可能有不全面的地方,請見諒。下面的是實現(xiàn)的目的。以及電路原理圖
**本次設(shè)計的主要目的是設(shè)計一個城市十字路口的交通燈控制系統(tǒng),設(shè)計中將交通燈控制系統(tǒng)分為東西方向(主干道)和南北方向(次干道)兩個方向,且在東西南北四個路口的每個路口設(shè)置紅、綠、黃三個交通信號燈(用發(fā)光二極管模擬)和一個二位的LED數(shù)碼顯示管。設(shè)計的要求是規(guī)定在每一段時間內(nèi)東西和南北兩個方向中只有一個方向能夠通行,另一個方向處于禁行狀態(tài),然后在經(jīng)過一段時間后,禁行的方向和通行的方向互相轉(zhuǎn)換狀態(tài),原來通行的狀態(tài)變禁行狀態(tài),原來禁行的狀態(tài)變?yōu)橥ㄐ袪顟B(tài),如此循環(huán)下去。詳細過程如下圖2-1:
狀態(tài)① 狀態(tài)②
狀態(tài)①:東西方向的交通燈黃燈閃爍3秒后,紅燈熄滅,綠燈點亮(東西方向允許車輛和行人通行),同時南北方向綠燈熄滅,紅燈點亮(南北方向禁止車輛和行人通行),LED數(shù)碼管倒計時顯示40秒,在倒計時3秒時進入狀態(tài)②。
狀態(tài)②:南北方向黃燈閃爍3秒后,紅燈熄滅綠燈點亮(南北允許車輛和行人通行);同時東西方向綠燈熄滅,紅燈點亮
(東西方向禁止車輛和行人通行),LED數(shù)碼管倒計時顯示40秒,在倒計時3秒時進入狀態(tài)①。
接下來在沒有人為干涉下將會一直按照上述進行循環(huán)。設(shè)計中還外設(shè)6個按鍵實現(xiàn)對交通燈控制系統(tǒng)的調(diào)控作用。
采用AT89C51單片機設(shè)計的變頻調(diào)速控制系統(tǒng)
摘 要:本文介紹了一種由AT89C51單片機為主控制器的變頻調(diào)速系統(tǒng),采用SA8281作為正弦波發(fā)生器。主回路采用交-直-交電壓型變頻電路。在論述系統(tǒng)的硬件結(jié)構(gòu)及軟件設(shè)計基礎(chǔ)之上,并給出了主要程序的流程圖。實踐表明:該系統(tǒng)可靠性高,組配靈活,具有很好的應(yīng)用前景。
1.概述
在電氣傳動領(lǐng)域中,隨著自關(guān)斷器件技術(shù)水平的不斷提高,脈寬調(diào)制技術(shù)(簡稱PWM技術(shù))也日趨成熟。PMW交流變頻調(diào)速以其高效率、高功率因數(shù)、輸出波形好、結(jié)構(gòu)簡單等優(yōu)點,在井下風(fēng)機、水泵、造紙機等設(shè)備中得到了廣泛的應(yīng)用。將單片機應(yīng)用于交流變頻調(diào)速系統(tǒng),可有效地避免傳統(tǒng)調(diào)速方案中的一些缺點,達到了提高控制精度的目的[1],其特點:
(1)采用單片機可以使絕大多數(shù)控制邏輯通過軟件實現(xiàn),簡化了電路。
(2)單片機具有更強的邏輯功能,運算速度快,精度高,有大容量的存儲單元,可以實現(xiàn)較為復(fù)雜的控制。
(3)無零點漂移,控制精度高。
(4)可以提供人機界面,多機連網(wǎng)工作。
根據(jù)國內(nèi)外有關(guān)變頻調(diào)速的最新研究成果及研究動向,參閱大量的文獻、資料,本著先進性與成熟性兼顧、標準化、可靠性、連續(xù)性、及時性的系統(tǒng)設(shè)計原則,設(shè)計了如圖1所示的系統(tǒng)結(jié)構(gòu)框圖。
整個電路分為三大部分:主回路、驅(qū)動電路以及用單片機控制PWM產(chǎn)生器的控制電路,另外還有過流檢測和保護電路,這樣使得系統(tǒng)工作更穩(wěn)定、可靠。
2.系統(tǒng)主回路設(shè)計
2.1整流濾波電路的設(shè)計
為了給逆變器提供一個穩(wěn)定的直流電壓,需要將電網(wǎng)輸入的交流電進行整流。通常整流電路可分為可控整流和不可控整流??煽卣骺梢允瓜到y(tǒng)的功率因數(shù)接近l,并且具有較小的紋波,頻率高,可降低較小幅值的濾波電容。但是采用可控整流電路會使得系統(tǒng)成本上升,并且控制電路復(fù)雜。
目前比較經(jīng)濟可靠的方案,一般都是采用二極管整流,使電網(wǎng)功率因數(shù)與逆變輸出電壓無關(guān)而接近于1。在本系統(tǒng)中,我們采用了三相二極管不可控整流,如圖2所示,采用它無需控制電路驅(qū)動,電路簡單、可靠,成本低,缺點就是紋波較大,需采用較大幅值的濾波電容。
2.2 三相逆變電路的設(shè)計
三相交流負載需要三相逆變器,在三相逆變電路中,應(yīng)用最廣的是三相橋式逆變電路[2]。采用IGBT作為可控元件的電壓型三相逆變電路如圖3所示,可以看出電路由三個半橋組成。
電壓型三相逆變橋的基本工作方式與單相逆變橋相同,是 導(dǎo)電方式,即每個橋臂的導(dǎo)電角度為 ,同一相(同一半橋)上下兩個臂交替導(dǎo)電,各相開始導(dǎo)電的時間依次相差 。這樣,在任一瞬間,將有三個橋臂同時導(dǎo)通。可能是上面一個臂,下面兩個臂,也可能是上面兩個臂下面一個臂同時導(dǎo)通。因為每次換流都是在同一相上下兩個橋臂之間進行的,因此,也被稱為縱向換流。用T記為周期,只要注意三相之間互隔T/3(T是周期)就可以了,即B相比A相滯后T/3,C相又比B相滯后T/3。
具體的導(dǎo)通順序如下:
第1個T/6:V1,V6,V5導(dǎo)通,V4,V3,V2截至;第2個T/6:Vl,V6,V2導(dǎo)通,V4,V3,V5截至;
第3個T/6:V1,V3,V2導(dǎo)通,V4,V6,V5截至;第4個T/6:V4,V3,V2導(dǎo)通,V1,V6,V5截至;
第5個T/6:V4,V3,V5導(dǎo)通,V1,V6,V2截至;第6個T/6:V4,V6,V5導(dǎo)通,V1,V3,V2截至。
3 驅(qū)動電路及系統(tǒng)保護電路的設(shè)計
3.1 驅(qū)動電路的設(shè)計
作為功率開關(guān)器件,IGBT的工作狀態(tài)直接關(guān)系到整機的性能,所以選擇或設(shè)計合理的驅(qū)動電路顯得尤為重要。采用一個性能良好的驅(qū)動電路,可使IGBT工作在比較理想的開關(guān)狀態(tài),縮短開關(guān)時間,減小開關(guān)損耗,對提高整個裝置的運行效率,可靠性和安全性都有重要的意義。
驅(qū)動電路必須具備兩個功能:一是實現(xiàn)控制電路與被驅(qū)動IGBT柵極的電隔離;二是提供合適的柵極驅(qū)動脈沖[ 3]。
對驅(qū)動電路的要求,可歸納如下:
1)IGBT和MOSFET都是電壓驅(qū)動,都具有一個2.5~5V值電壓,有一個容性輸入阻抗,因此IGBT對柵極電荷非常敏感,故驅(qū)動電路必須很可靠,要保證有一條低阻抗值的放電回路,即驅(qū)動電路與IGBT的連線要盡量短。
2)用內(nèi)阻小的驅(qū)動源對柵極電容充放電,以保證柵極控制電壓Uge,有足夠陡的前后沿,使IGBT的開關(guān)損耗盡量小。另外,IGBT開通后,柵極驅(qū)動源應(yīng)能提供足夠的功率,使IGBT不退出飽和而損壞。
3)驅(qū)動電路要能傳遞幾十kHz的脈沖信號。
4)在大電感負載下,IGBT的開關(guān)時間不能太短,以限制出di/dt形成的尖峰電壓,確保IGBT的安全。
5)IGBT的柵極驅(qū)動電路應(yīng)盡可能簡單實用,最好自身帶有對IGBT的保護功能,有較強的抗干擾能力。
本文采用美國IR公司推出的IR21lO集成驅(qū)動器來驅(qū)動IGBT,它兼有體積小,速度快,電路簡單的優(yōu)點,是中小功率變換裝置中驅(qū)動器件的首選品種。
3.2 電流檢測及過流保護電路
當流過IGBT的電流過流,一旦超出安全區(qū),IGBT將永久損壞,因此系統(tǒng)要設(shè)置電流過流保護電路,系統(tǒng)在變頻器的直流部分串電流互感器將電流轉(zhuǎn)換為電壓信號再通過比較器比較,將過流信號檢測出來后,送到SA828l的脈沖封鎖端(電平信號),那么SA828l就會停止輸出PWM脈沖,以保護IGBT。IGBT的過電流保護電路如圖5所示。
其中運放C814組成電壓跟隨器,其輸入來自電流互感器的輸出。兩個電壓比較器C271組成窗口電壓比較器,比較器的輸出經(jīng)施密特反相器連接到與門的輸入端。當IGBT沒有過電流時,C814的輸入電壓比較低,窗口電壓比較器輸出高電平,因此EN信號為高電平,使IGBT驅(qū)動信號有效;反之,當IGBT過電流時,EN信號變?yōu)榈碗娖剑怄i了IGBT驅(qū)動信號而使IGBT關(guān)斷,調(diào)節(jié)電位器RP,可以改變過流閥值的大小。
過壓保護電路的原理與電流保護電路類似,另外在主電路上應(yīng)配裝一個10A的快速熔斷保險,當電路發(fā)生嚴重過流時,快速熔斷保險燒斷切斷電網(wǎng)電源,盡可能的保證主電路的安全。
4.控制電路軟硬件設(shè)計
三相SPWM發(fā)生器是控制電路的核心部分。在本設(shè)計中,我們選用了AT89C51單片機控制英國MITEL公司的專用集成芯片SA8281作為SPWM波形發(fā)生器,該芯片與微處理器接口方便,幾乎不用加任何的邏輯電路即可構(gòu)成完整的SPWM控制電路,結(jié)構(gòu)緊湊,提高了系統(tǒng)的集成度和可靠性,利于降低成本。
4.1 SA8281的功能介紹
SA8281芯片是MITEL公司設(shè)計的專門為交流電機的調(diào)速控制,UPS電源以及其他需要脈寬調(diào)制作為一種有效電源控制的電力電子器件[4]。引腳如圖6所示:
它可用于三相PWM波形產(chǎn)生的可編程微機外圍接口芯片,使用一組標準的MOTEL總線,適用于英特爾和摩托羅拉二種總線接口,接口通用性好,編程和操作簡單,方便,快捷。
SA8281采用常用的對稱的雙邊緣采樣法產(chǎn)生全數(shù)字化PWM波形,無時漂,無溫漂,具有很高的精度和溫度穩(wěn)定性。
有6個標準的TTL電平輸出,用來驅(qū)動逆變器的6個功率開關(guān)器件。
工作頻率范圍寬,精度高,三角載波頻率可調(diào)。
工作方式靈活,在電路不變的情況下,直接通過軟件設(shè)定載波頻率、調(diào)制頻率、調(diào)制比、最小脈寬、死區(qū)時間等工作參數(shù)就可改變逆變器的性能指標,驅(qū)動不同負載或工作于不同工況??赏ㄟ^改變輸出SPWM脈沖的相序?qū)崿F(xiàn)電機的正反轉(zhuǎn),通過調(diào)制達到輸出頻率為OHz而給電機繞組通一直流電,實現(xiàn)電機的“直流插入制動”。
獨立閉鎖端可瞬時閉鎖輸出SPWM脈沖,可處理電機突發(fā)情況的發(fā)生。
波形存儲在內(nèi)部ROM中,可以選擇可刪除的最小脈寬和死區(qū)時間。
4.2 控制硬件電路的實現(xiàn)
控制電路部分采用的單片機為ATMEL公司推出的AT89C51,它采用CMOS結(jié)構(gòu),耗能低,抗干擾能力強,與MCS一5l系列完全兼容,且功能比一般的51系列芯片要強大許多。其內(nèi)部含有128字節(jié)的RAM和4K字節(jié)的EPROM完全滿足系統(tǒng)需要,不用外加RAM或EPROM存放數(shù)據(jù)或程序,但需要設(shè)定和保存的參數(shù)則存放在一片EEPROM中[ 5]。
正弦波發(fā)生器的原理圖如圖7所示,它以SA828l作為三相正弦波的發(fā)生芯片,單片機AT89C51作為SA8281的控制芯片。SA828l將大部分外圍電路都集成在芯片內(nèi)部,可以看出SA8281與微處理器接口簡單,控制電路非常簡單,結(jié)構(gòu)緊湊,這樣做從另一方面來講對芯片工作的穩(wěn)定性有很大幫助,提高了可靠性。
從整個電路來說,實現(xiàn)對SA828l的控制是通過按鍵輸入相應(yīng)的信息。本電路的設(shè)計要對SA8281輸入初始化參數(shù)和控制參數(shù),所以用到了三個按鍵0#鍵、1#鍵和2#鍵。在主程序中判斷鍵號用的是查詢式,0#鍵按下轉(zhuǎn)入初始化子程序:l#鍵按下轉(zhuǎn)入加速子程序:2#鍵按下轉(zhuǎn)入減速子程序。
AT89C51是地址與數(shù)據(jù)總線復(fù)用類的單片機,為了隔離潛在的噪音干擾,設(shè)置輸出斷開引腳SETTRIP在通常情況下接地,同時設(shè)置了開關(guān),便于在緊急情況下迅速關(guān)斷所有PWM輸出;為使PWM輸出處于有效狀態(tài),輸出關(guān)斷引腳 接高電平。外部時鐘CLK引腳接獨立的12M有源晶振為SA8281芯片提供一時鐘基準用于控制與PWM有關(guān)的各時序。
4.3控制電路軟件設(shè)計
對SA8281芯片的控制是通過微處理器接口將相應(yīng)的參數(shù)送入芯片內(nèi)部兩24位的寄存器R4、R3來實現(xiàn)的,它們是初始化寄存器和控制寄存器。數(shù)據(jù)先被讀入一系列臨時寄存器R0~R2中,然后通過一條虛擬的寫操作將數(shù)據(jù)傳送至相應(yīng)的R4,R3寄存器。
初始化寄存器用于設(shè)定和電機及逆變器有關(guān)的一些基本參數(shù)。在正常情況下,這些參數(shù)在電機工作前就被初始化(例.在PWM輸出允許前),并且在電機工作時一般不允許改變。
控制寄存器在工作過程中控制輸出脈寬調(diào)制波的狀態(tài),從而進一步控制電機的運行,比如轉(zhuǎn)速、正/反轉(zhuǎn)、啟動和停止等。通常在電機工作時該寄存器內(nèi)容經(jīng)常被改寫以實現(xiàn)對電機的實時控制。程序流程圖下面分別進行說明:
4.3.1主程序
主程序判斷鍵號用的是查詢式:
O#鍵按下轉(zhuǎn)入初始化子程序;1#鍵按下轉(zhuǎn)入加速子程序;2#鍵按下轉(zhuǎn)入減速子程序。
另外為了防止誤操作增加了延時去抖動的再次判斷鍵號環(huán)節(jié)。主程序流程圖如圖8所示:
4.3.2初始化子程序
在初始化子程序要設(shè)定的是與電機和變頻器有關(guān)的基本參數(shù),包括載波頻率的設(shè)定、調(diào)制波頻率范圍設(shè)定、脈沖延遲時間設(shè)定、最小刪除脈寬的設(shè)定、調(diào)制波形選擇、幅值控制設(shè)定等。
初始化寄存器的數(shù)據(jù)先以8位格式存入臨時寄存器R0,R1和R2中,然后通過虛擬寫操作R4再被存入初始化寄存器。
通常情況下,這些參數(shù)在電機工作過程中不要改變。
4.3.3 調(diào)速子程序
調(diào)速子程序包括加速子程序和減速子程序,本文只介紹加速子程序,減速子程序類似于加速子程序。
控制參數(shù)包括調(diào)制波頻率控制字和調(diào)制波幅值控制字,它們要通過計算求得,方法:首先根據(jù)電機的U/F曲線得到調(diào)制波的頻率與幅值,然后通過公式計算出相應(yīng)的控制字并制成表格,本文的程序設(shè)計中利用查表法實現(xiàn)兩種控制參數(shù)的傳送。
5 總結(jié)
本文中,設(shè)計變頻調(diào)速控制系統(tǒng)時,控制芯片采用單片機AT89C51,采用SA8281作為正弦波發(fā)生器,用IR2110芯片來驅(qū)動,另外考慮到系統(tǒng)的穩(wěn)定性,設(shè)計了系統(tǒng)的保護電路,這樣整個系統(tǒng)有成本低廉,功能齊全的特點,并具有較大的實用價值。目前,我國的變頻調(diào)速市場逐漸增長,需求量日益廣泛。因而,對于變頻調(diào)速控制系統(tǒng)的研究具有重要的學(xué)術(shù)意義和應(yīng)用價值。
基于51單片機設(shè)計的呼吸燈
一、項目介紹
呼吸燈是一種常見的LED燈光效果,它可以模擬人類呼吸的變化,使燈光看起來更加柔和和自然。51單片機是一種廣泛使用的微控制器,具有體積小、功耗低、成本低等優(yōu)點,非常適合用于控制LED呼吸燈。本項目的呼吸燈將使用PWM(脈沖寬度調(diào)制)技術(shù)控制LED亮度,從而實現(xiàn)呼吸燈的效果。
在本項目中,將使用51單片機作為主控制器,通過編程實現(xiàn)呼吸燈的控制。將使用C語言編寫代碼,并使用Keil C51集成開發(fā)環(huán)境進行編譯和調(diào)試。使用Proteus仿真軟件進行電路設(shè)計和仿真,確保電路的正確性和穩(wěn)定性。
二、設(shè)計原理
2.1 PWM技術(shù)
PWM是脈沖寬度調(diào)制(Pulse Width Modulation)的縮寫,是一種通過改變脈沖寬度來控制電路的技術(shù)。在數(shù)字電路中,PWM是一種非常常見的技術(shù),它可以用來控制電機、LED燈等電子設(shè)備的亮度、速度等參數(shù)。
PWM技術(shù)的基本原理是通過控制脈沖的寬度和周期來控制電路的輸出。在一個PWM周期內(nèi),電路會以一定的頻率(也就是PWM頻率)產(chǎn)生一系列脈沖,每個脈沖的寬度和高電平時間占整個周期的比例是由控制器根據(jù)需要設(shè)定的。通過這種方式,可以實現(xiàn)對電路輸出的精確控制。
在LED呼吸燈項目中,使用定時器模擬PWM技術(shù)可以實現(xiàn)呼吸燈效果。具體來說,就是通過定時器產(chǎn)生一定頻率的脈沖信號,然后通過改變脈沖的占空比來控制LED燈的亮度。當脈沖的占空比逐漸增大時,LED燈的亮度也會逐漸增強,直到達到最大亮度;當脈沖的占空比逐漸減小時,LED燈的亮度也會逐漸減弱,直到最終熄滅。這樣就可以實現(xiàn)類似于人類呼吸的漸變效果。
2.2 呼吸燈原理
呼吸燈是一種將 LED 燈光做成漸變效果的技術(shù),可以讓 LED 的亮度在一定時間內(nèi)慢慢地增加和減小,使得 LED 的亮度變化更加自然和柔和,適合用于需要漸變效果的場景,如燈光調(diào)節(jié)、音響節(jié)拍等。
呼吸燈的原理是通過改變 LED 的 PWM 信號的占空比來控制 LED 的亮度。PWM(Pulse Width Modulation,脈寬調(diào)制)是一種調(diào)節(jié)模擬信號幅度的常用技術(shù),它通過改變信號的脈沖寬度來實現(xiàn)對信號幅度的調(diào)節(jié)。在呼吸燈中,PWM 信號的頻率較高,而占空比則會隨著時間的推移而逐漸變化,從而實現(xiàn) LED 亮度的漸變效果。
呼吸燈的實現(xiàn)通常需要使用一個定時器和一個 PWM 模塊。定時器用來定時觸發(fā)中斷事件,在中斷處理函數(shù)中改變 PWM 信號的占空比,從而控制 LED 的亮度。在定時器中斷處理函數(shù)中,可以通過數(shù)學(xué)函數(shù)(如正弦、余弦等)或者簡單的數(shù)值計算來得到不同的 PWM 占空比,實現(xiàn)不同的呼吸燈效果。
2.3 51單片機
51單片機是一種廣泛使用的微控制器,具有體積小、功耗低、成本低等優(yōu)點,非常適合用于控制LED呼吸燈。
STC89C52是一種基于MCS-51內(nèi)核的8位單片機,由中國的STC公司生產(chǎn)。具有高性價比、易于編程、廣泛應(yīng)用等特點,在工業(yè)控制、通信、家電控制等領(lǐng)域得到了廣泛應(yīng)用。
STC89C52單片機的主要特點如下:
采用MCS-51內(nèi)核,具有8位數(shù)據(jù)總線和16位地址總線,可以訪問64KB的程序存儲器和64KB的數(shù)據(jù)存儲器。
內(nèi)置12MHz的晶振,可以通過軟件設(shè)置分頻系數(shù)來獲得不同的系統(tǒng)時鐘頻率。
具有多種外設(shè)接口,包括UART、SPI、I2C、定時器、中斷等,可以方便地實現(xiàn)各種應(yīng)用。
支持ISP(In-System Programming)編程方式,可以通過串口或并口進行在線編程,方便快捷。
具有低功耗模式,可以通過軟件設(shè)置進入不同的睡眠模式,以節(jié)省系統(tǒng)能耗。
STC89C52單片機可以使用C語言或匯編語言進行編程,編寫的程序可以通過編譯器生成HEX文件,然后通過編程器燒錄到芯片中。由于STC89C52單片機的廣泛應(yīng)用和豐富的資料,因此學(xué)習(xí)和使用它相對來說比較容易。
三、代碼實現(xiàn)
3.1 自動呼吸燈
因為STC89C52單片機沒有PWM輸出功能,只能使用延時函數(shù)實現(xiàn),以下是基于STC89C52單片機實現(xiàn)呼吸燈效果的完整代碼:
#include < reg52.h >
#define LED P1
void delay(unsigned int xms)
{
unsigned int i, j;
for (i = xms; i > 0; i--)
for (j = 110; j > 0; j--);
}
void main()
{
unsigned char i;
while (1)
{
for (i = 0; i < 255; i++)
{
LED = i;
delay(10);
}
for (i = 255; i > 0; i--)
{
LED = i;
delay(10);
}
}
}
在這個代碼中,使用了STC89C52單片機的P1口來控制LED燈的亮度。通過一個循環(huán),讓LED燈的亮度從0到255逐漸增加,再從255到0逐漸減小,這樣就實現(xiàn)了呼吸燈的效果。
在代碼中,使用了一個delay函數(shù)來控制循環(huán)的速度。這個函數(shù)可以讓程序延時一定的時間,從而控制LED燈的亮度變化速度。在這個代碼中,設(shè)置了每次延時10毫秒,可以根據(jù)需要調(diào)整這個值來改變呼吸燈的效果。
3.2 按鍵控制燈光亮度
以下是基于STC89C52單片機的LED燈亮度控制完整代碼,其中使用了兩個按鍵分別控制LED的亮度和滅度。
#include < reg52.h >
#define LED P1
sbit KEY_UP = P3 ^ 2;
sbit KEY_DOWN = P3 ^ 3;
unsigned char pwm = 0;
void delay(unsigned int i) {
while (i--);
}
void key_scan() {
if (KEY_UP == 0) {
delay(1000);
if (KEY_UP == 0) {
pwm += 10;
if (pwm >= 100) {
pwm = 100;
}
}
}
if (KEY_DOWN == 0) {
delay(1000);
if (KEY_DOWN == 0) {
pwm -= 10;
if (pwm <= 0) {
pwm = 0;
}
}
}
}
void main() {
TMOD = 0x01; // 設(shè)置定時器0為模式1
TH0 = 0xFC; // 定時器初值,用于產(chǎn)生PWM信號的頻率為50Hz
TL0 = 0x67;
TR0 = 1; // 啟動定時器0
ET0 = 1; // 允許定時器0中斷
EA = 1; // 開啟總中斷
while (1) {
key_scan();
}
}
void timer0() interrupt 1 {
static unsigned char cnt = 0;
if (cnt >= 100) {
cnt = 0;
}
if (cnt < pwm) {
LED = 0;
} else {
LED = 1;
}
cnt++;
}
以上代碼中,使用了定時器0來產(chǎn)生PWM信號,控制LED的亮度。使用了兩個按鍵來調(diào)整LED的亮度和滅度。其中,KEY_UP按鍵用于增加LED的亮度,KEY_DOWN按鍵用于減小LED的亮度。在每次定時器中斷時,根據(jù)pwm的值來控制LED的亮度。當cnt小于pwm時,LED為低電平,LED亮度較高;當cnt大于等于pwm時,LED為高電平,LED亮度較低。
采用89C51單片機設(shè)計的噴油校泵臺調(diào)速系統(tǒng)方案
1 引言
燃油噴射系統(tǒng)的性能直接影響柴油機的工作過程和性能指標,是柴油機改善排放、降低油耗和提高性能的關(guān)鍵部分。傳統(tǒng)的內(nèi)燃機車柴油噴油校泵臺主要用于噴油泵的磨合及性能試驗,其驅(qū)動部分采用晶閘管電磁轉(zhuǎn)差離合器無級調(diào)速系統(tǒng),控制和顯示噴油泵的主軸轉(zhuǎn)速。由于采用分離元件,測試靈敏度低,設(shè)定調(diào)整不方便且故障率高。目前,國外噴油校泵臺采用微機控制及數(shù)顯系統(tǒng)。為此,按國際標準采用89C51單片機設(shè)計了一種新型的校泵臺調(diào)速系統(tǒng),能夠?qū)崟r控制主軸轉(zhuǎn)速測試和調(diào)節(jié),并將相關(guān)測量數(shù)據(jù)傳輸給上位PC機進行顯示,從而提高測試靈敏度。
2 系統(tǒng)結(jié)構(gòu)設(shè)計
該系統(tǒng)設(shè)計采用轉(zhuǎn)速單閉環(huán)凋速系統(tǒng),如圖1所示。驅(qū)動電路由晶閘管和電機構(gòu)成,而控制電路則由轉(zhuǎn)速給定、轉(zhuǎn)速反饋、比例一積分一微分(PID)調(diào)節(jié)器以及晶閘管脈沖觸發(fā)電路構(gòu)成。
虛線框為軟件設(shè)計部分,主要完成轉(zhuǎn)速給定、轉(zhuǎn)速反饋、偏差信號的形成和PID運算。
3 系統(tǒng)硬件電路設(shè)計
系統(tǒng)硬件設(shè)計是以89C51單片機為核心,并配以必要的外圍設(shè)備,如數(shù)據(jù)采集、電氣接口、執(zhí)行機構(gòu)、通信接口等電路,如圖2所示。選用3CT20/500型晶閘管,由于晶閘管工作于交流電路,不宜與微機直接相接,采用光電耦合器4N25隔離單片機與輸出部分(晶閘管一電動機電路)。輸出部分的地線接地,而單片機系統(tǒng)的電源地線懸空,不能與交流電源的地線相接,以避免輸出部分電源變化對單片機電源的影響。
使用反相驅(qū)動器7406作為4N25輸入端的驅(qū)動。電磁轉(zhuǎn)差離合器中的勵磁線圈采用帶續(xù)流二極管的晶閘管半波整流電路供電。勵磁線圈是電感性負載,線圈兩端并聯(lián)一只續(xù)流二極管VD6使電流平滑。調(diào)節(jié)觸發(fā)裝置采用單結(jié)管VBG7。為了實現(xiàn)操作機構(gòu)的速度閉環(huán)控制,需要檢測主軸轉(zhuǎn)速。測速傳感器采用磁電式轉(zhuǎn)速傳感器。測速輪有120個齒,每轉(zhuǎn)過1個齒就在測速傳感器上感應(yīng)一個脈沖信號。這樣,主軸每轉(zhuǎn)一周,產(chǎn)生120個脈沖,其表達式為:
式中:P為測速傳感器每轉(zhuǎn)輸出的脈沖數(shù);T為規(guī)定時間;m1為轉(zhuǎn)速脈沖數(shù)。
取8155的定時器/計數(shù)器工作于定時方式,定時時間為lO ms,其輸入端接1 MHz時鐘信號為計數(shù)頻率,輸出端接89C51的中斷INT0申請端。89C51的定時器/計數(shù)器T1工作于計數(shù)方式,測速傳感器經(jīng)整形后的脈沖輸入T1,當輸入信號發(fā)生負跳變,計數(shù)器加1。每當10 ms到,通過INT0申請中斷,在中斷處理程序中得到Tl計數(shù)值。計數(shù)值再乘以50,測出電機當前轉(zhuǎn)速。
噴油校泵臺動力系統(tǒng)的主要部件是電磁調(diào)速電動機,由單速或多速鼠籠型異步電動機和電磁轉(zhuǎn)差離合器組成,通過控制器可在較大范圍內(nèi)實現(xiàn)無級調(diào)速。其轉(zhuǎn)速表達式為:
式中:n1為同步轉(zhuǎn)速,r/min;f1為電源頻率,Hz;p為極對數(shù)s為轉(zhuǎn)差率。
在一定的負載范圍內(nèi)調(diào)節(jié)勵磁線圈中的勵磁電流,可以調(diào)節(jié)轉(zhuǎn)差率s,達到調(diào)節(jié)轉(zhuǎn)速的目的。勵磁電流越大,轉(zhuǎn)速越高;反之則轉(zhuǎn)速越低。
4 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件采用模塊化結(jié)構(gòu)設(shè)計,主要由PC機、89C51單片機和通信3個模塊組成嘲。其中PC機模塊主要完成主軸轉(zhuǎn)速預(yù)置及顯示;通信模塊實現(xiàn)PC機與單片機之間數(shù)據(jù)傳輸;89C51單片機模塊完成定時采樣和自動控制主軸轉(zhuǎn)速。其系統(tǒng)軟件的主程序如圖3所示。主程序主要完成系統(tǒng)初始化、與上位機握手、接收預(yù)置參數(shù)、調(diào)用主軸轉(zhuǎn)速程序、調(diào)用噴油計數(shù)程序以及調(diào)用數(shù)據(jù)采集發(fā)送程序。
由于控制對象是具有純滯后的一階慣性環(huán)節(jié),所以按要求設(shè)計為快速隨動系統(tǒng)。為了提高跟蹤的快速性,調(diào)速范圍過大時,在第一拍先使控制器輸出逼近給定要求,后啟動PI控制算法。第一拍控制模型為:
式中:U(T)為當前控制器輸出值;U(T-1)為上一次控制器輸出值;N(T)為當前控制器給定值;N(T-1)為上一次控制器給定值。
PI控制算法的數(shù)學(xué)模型為:
式中:Kp為比例系數(shù);T為采樣周期;Ti為積分時間常數(shù)。
第二拍控制模型為:
式中:K0,K1,K2,K3,P1,P2,P3為系數(shù)。
由于加入了積分環(huán)節(jié),影響系統(tǒng)的動態(tài)性能,可以消除余差,提高控制精度。
5 結(jié)論
該設(shè)計系統(tǒng)已成功應(yīng)用在某內(nèi)燃機車柴油機噴油泵的測試平臺。研究表明,該噴油校泵臺調(diào)速系統(tǒng)可自動控制噴油計數(shù)、主軸轉(zhuǎn)速,實現(xiàn)量油時主軸轉(zhuǎn)速的數(shù)字顯示與屏幕顯示,使用維修方便,從而提高檢測精度和自動化程度。
責(zé)任編輯:David
【免責(zé)聲明】
1、本文內(nèi)容、數(shù)據(jù)、圖表等來源于網(wǎng)絡(luò)引用或其他公開資料,版權(quán)歸屬原作者、原發(fā)表出處。若版權(quán)所有方對本文的引用持有異議,請聯(lián)系拍明芯城(marketing@iczoom.com),本方將及時處理。
2、本文的引用僅供讀者交流學(xué)習(xí)使用,不涉及商業(yè)目的。
3、本文內(nèi)容僅代表作者觀點,拍明芯城不對內(nèi)容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關(guān)結(jié)果。
4、如需轉(zhuǎn)載本方擁有版權(quán)的文章,請聯(lián)系拍明芯城(marketing@iczoom.com)注明“轉(zhuǎn)載原因”。未經(jīng)允許私自轉(zhuǎn)載拍明芯城將保留追究其法律責(zé)任的權(quán)利。
拍明芯城擁有對此聲明的最終解釋權(quán)。