日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 基礎(chǔ)知識(shí)科普站
[導(dǎo)讀]設(shè)計(jì)中采用了專門的芯片組成了PWM信號(hào)的發(fā)生系統(tǒng)并且對(duì)PWM信號(hào)的原理、產(chǎn)生方法以及如何通過軟件編程對(duì)PWM信號(hào)占空比進(jìn)行調(diào)節(jié)從而控制其輸入信號(hào)波形等均作了詳細(xì)的闡述。

設(shè)計(jì)中采用了專門的芯片組成了PWM信號(hào)的發(fā)生系統(tǒng)并且對(duì)PWM信號(hào)的原理、產(chǎn)生方法以及如何通過軟件編程對(duì)PWM信號(hào)占空比進(jìn)行調(diào)節(jié)從而控制其輸入信號(hào)波形等均作了詳細(xì)的闡述。另外本系統(tǒng)中使用了紅外對(duì)管對(duì)直流電機(jī)的轉(zhuǎn)速進(jìn)行測(cè)量,經(jīng)過整形電路后將測(cè)量值送到單片機(jī),并且最終作為反饋值輸入到單片機(jī)進(jìn)行PID運(yùn)算從而實(shí)現(xiàn)了對(duì)直流電機(jī)速度的控制。在軟件方面,文章中詳細(xì)介紹了PID運(yùn)算程序初始化程序等的編寫思路和具體的程序?qū)崿F(xiàn)。

51單片機(jī)控制PWM信號(hào)實(shí)現(xiàn)直流電機(jī)轉(zhuǎn)速控制的方法

1 單片機(jī)最小系統(tǒng):單片機(jī)最小系統(tǒng)由51單片機(jī),晶振電路,復(fù)位電路,電源組成。大家都比較熟悉,這里不再贅述。

2 四位數(shù)碼管顯示:在應(yīng)用系統(tǒng)中,設(shè)計(jì)要求不同,使用的LED顯示器的位數(shù)也不同,因此就生產(chǎn)了位數(shù),尺寸,型號(hào)不同的LED顯示器供選擇,在本設(shè)計(jì)中,選擇4位一體的數(shù)碼型LED顯示器,簡(jiǎn)稱“4-LED”。本系統(tǒng)中前三位顯示電壓的整數(shù)位,最后一位顯示轉(zhuǎn)速的小數(shù)位。4-LED顯示器引腳如圖2所示,是一個(gè)共陰極接法的4位LED數(shù)碼顯示管,其中a,b,c,e,f,g為4位LED各段的公共輸出端,1、2、3、4分別是每一位的位數(shù)選端,dp是小數(shù)點(diǎn)引出端,4位一體LED數(shù)碼顯示管的內(nèi)部結(jié)構(gòu)是由4個(gè)單獨(dú)的LED組成,每個(gè)LED的段輸出引腳在內(nèi)部都并聯(lián)后,引出到器件的外部。

3 電機(jī)驅(qū)動(dòng)電路:電機(jī)驅(qū)動(dòng)電中是采用ULN2003來驅(qū)動(dòng)。ULN2003是高耐壓、大電流達(dá)林頓陳列,由七個(gè)硅NPN達(dá)林頓管組成。該電路的特點(diǎn):ULN2003的每一對(duì)達(dá)林頓都串聯(lián)一個(gè)2.7K的基極電阻,在5V的工作電壓下它能與TTL和CMOS電路直接相連,可以直接處理原先需要標(biāo)準(zhǔn)邏輯緩沖器來處理的數(shù)據(jù),輸入5VTTL電平,輸出可達(dá)500mA/50V。

ULN2003的引腳圖,其中IN1~IN7為輸入控制端;OUT1~OUT7為輸出端;8腳為芯片的接地端;9腳為公共端,該腳是內(nèi)部7個(gè)續(xù)流二極管負(fù)極的公共端,各二極管的正極分別接各達(dá)林頓管的集電極。用于感性負(fù)載時(shí),該腳接負(fù)載電源正極,實(shí)現(xiàn)續(xù)流作用。如果該腳接地,實(shí)際上就是達(dá)林頓管的集電極對(duì)地接通。

當(dāng)P1.0中為高電平時(shí),其內(nèi)部三極管導(dǎo)通,使電機(jī)轉(zhuǎn)動(dòng)。當(dāng)P1.0為低電平時(shí),內(nèi)部三極管截止,電路斷開,電機(jī)停止轉(zhuǎn)動(dòng)。所以在程序中可以利用P1.0口輸出PWM波來控制電機(jī)的轉(zhuǎn)速。

4 紅外測(cè)速電路:發(fā)射管工作時(shí)發(fā)出紅外線,當(dāng)接收管收到紅外信號(hào)時(shí),其電阻變小(本設(shè)計(jì)相當(dāng)于從無窮大變到1k左右)。利用其電阻變化,改變接收管分壓情況。擋片是利用圓盤上剪四個(gè)孔,當(dāng)擋片隨電機(jī)轉(zhuǎn)動(dòng)時(shí),接收管兩端電平發(fā)生變化,產(chǎn)生脈沖。

5 整形電路:本設(shè)計(jì)的整形電路是用555定時(shí)器接成的施密特觸發(fā)器。

6 源程序:

#include "reg52.h"

#define uchar unsigned char

#define uint unsigned int

uchar code table[10]={0x3f,0x06,0x5b,

0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共陰數(shù)碼管顯示碼(0-9)

sbit xiaoshudian=P0^7;

sbit wei1=P2^4; //數(shù)碼管位選定義

sbit wei2=P2^5;

sbit wei3=P2^6;

sbit wei4=P2^7;

sbit beep=P2^3; //蜂鳴器控制端

sbit motor = P1^0; //電機(jī)控制

sbit s1_jiasu = P1^4; //加速按鍵

sbit s2_jiansu= P1^5; //減速按鍵

sbit s3_jiting=P1^6; //停止/開始按鍵

uint pulse_count; //INT0接收到的脈沖數(shù)

uint num=0; //num相當(dāng)于占空比調(diào)節(jié)的精度

uchar speed[3]; //四位速度值存儲(chǔ)

float bianhuasudu; //當(dāng)前速度(理論計(jì)算值)

float reallyspeed; //實(shí)際測(cè)得的速度

float vv_min=0.0;vv_max=250.0;

float vi_Ref=60.0; //給定值

float vi_PreError,vi_PreDerror;

uint pwm=100; //相當(dāng)于占空比標(biāo)志變量

int sample_time=0; //采樣標(biāo)志

float v_kp=1.2,v_ki=0.6,v_kd=0.2; //比例,積分,微分常數(shù)

void delay (uint z)

{

uint x,y;

for(x=z;x>0;x--)

for (y=20;y>0;y--);

}

void time_init()

{

ET1=1; //允許定時(shí)器T1中斷

ET0=1; //允許定時(shí)器T0中斷

TMOD = 0x15; //定時(shí)器0計(jì)數(shù),模式1;定時(shí)器1定時(shí),模式1

TH1 = (65536-100)/256; //定時(shí)器1值,負(fù)責(zé)PID中斷 ,0.1ms定時(shí)

TL1 = (65536-100)%6;

TR0 = 1; //開定時(shí)器

TR1 = 1;

IP=0X08; //定時(shí)器1為高優(yōu)級(jí)

EA=1; //開總中斷

}

void keyscan()

{

float j;

if(s1_jiasu==0) //加速

{

delay(20);

if(s1_jiasu==0)

vi_Ref+=10;

j=vi_Ref;

}

while(s1_jiasu==0);

if(s2_jiansu==0) //減速

{

delay(20);

if(s2_jiansu==0)

vi_Ref-=10;

j=vi_Ref;

}

while(s2_jiansu==0);

if(s3_jiting==0)

{

delay(20);

motor=0;

P1=0X00;

P3=0X00;

P0=0x00;

}

while(s3_jiting==0);

}

float v_PIDCalc(float vi_Ref,float vi_SpeedBack)

{

register float error1,d_error,dd_error;

error1=vi_Ref-vi_SpeedBack; //偏差的計(jì)算

d_error=error1-vi_PreError; //誤差的偏差

dd_error=d_error-vi_PreDerror; //誤差變化率

vi_PreError=error1; //存儲(chǔ)當(dāng)前偏差

vi_PreDerror=d_error;

bianhuasudu=(v_kp*d_error+v_ki*vi_PreError+v_kd*dd_error);

return (bianhuasudu);

}

void v_Display()

{

uint sudu;

sudu=(int)(reallyspeed*10); //乘以10之后強(qiáng)制轉(zhuǎn)化成整型

speed[3]=sudu/1000; //百位

speed[2]=(sudu00)/100; //十位

speed[1]=(sudu0)/10; //個(gè)位

speed[0]=sudu; //小數(shù)點(diǎn)后一位

wei1=0; //第一位打開

P0=table[speed[3]];

delay(5);

wei1=1; //第一位關(guān)閉

wei2=0;

P0=table[speed[2]];

delay(5);

wei2=1;

wei3=0;

P0=table[speed[1]];

xiaoshudian=1;

delay(5);

wei3=1;

wei4=0;

P0=table[speed[0]];

delay(5);

wei4=1;

}

void BEEP()

{

if((reallyspeed)>=vi_Ref+5||(reallyspeed

{

beep=~beep;

delay(4);

}

}

void main()

{

time_init();

motor=0;

while(1)

{

v_Display();

BEEP();

}

if(s3_jiting==0) //對(duì)按鍵3進(jìn)行掃描,增強(qiáng)急停效果

{

delay(20);

motor=0;

P1=0X00;

P3=0X00;

P0=0x00;

}

while(s3_jiting==0);

}

void timer0() interrupt 1

{

}

void timer1() interrupt 3

{

TH1 = (65536-100)/256; //1ms定時(shí)

TL1 = (65536-100)%6;

sample_time++;

if(sample_time==5000) //采樣時(shí)間0.1ms*5000=0.5s

{

TR0=0; //關(guān)閉定時(shí)器0

sample_time=0;

pulse_count=TH0*255+TL0; //保存當(dāng)前脈沖數(shù)

keyscan(); //掃描按鍵

reallyspeed=pulse_count/(4*0.6); //計(jì)算速度

pwm=pwm+v_PIDCalc(vi_Ref,reallyspeed);

if(pwm

if(pwm>100)pwm=100;

TH0=TL0=0;

TR0=1; //開啟定時(shí)器0

}

num++;

if(num==pwm) //此處的num值,就是占空比

{

motor=0;

}

if(num==100) //100相當(dāng)于占空比調(diào)節(jié)的精度

{

num=0;

motor=1;

}

}

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉