freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)的步進(jìn)電機(jī)小車控制系統(tǒng)設(shè)計(jì)_畢業(yè)設(shè)計(jì)-資料下載頁(yè)

2025-06-30 18:22本頁(yè)面

【導(dǎo)讀】本設(shè)計(jì)以STC89C52單片機(jī)最小系統(tǒng)為核心,設(shè)計(jì)了一種兩相四線步進(jìn)電機(jī)的驅(qū)動(dòng)器電路。文章包括了步進(jìn)電機(jī)正轉(zhuǎn)、反轉(zhuǎn)、加速、減速這些基本旋轉(zhuǎn),以及在此基礎(chǔ)之上同時(shí)控。制兩個(gè)步進(jìn)電機(jī),實(shí)現(xiàn)小車的前進(jìn)、后退、左轉(zhuǎn)與右轉(zhuǎn)。并在小車上增加一些傳感器模塊,使單片。務(wù)實(shí)現(xiàn)小車循跡與避障功能。至此來(lái)證明所設(shè)計(jì)的驅(qū)動(dòng)電路的可行性。

  

【正文】 TMOD=0X10。 ET1=1。 EA=1。 TH1=(65536100)/256。 TL1=(65536100)%256。 TR1=1。//定時(shí)器啟動(dòng)后 運(yùn)動(dòng)控制脈沖將一直產(chǎn)生 小車的運(yùn)動(dòng)方式受 cw 和 en 控制 } void move_left(uint speed_l,uchar cw,uchar en) { //speed_l 速度控制變量 cw 方向控制變量 en 使能 控制變量 speed=speed_l。 if(cw==1) { cw_left=1。 } else 附錄Ⅰ 程序清單 29 { cw_left=0。 } if(en==1) { en_left=1。 } else { en_left=0。 } } void move_right(uint speed_r,uchar cw,uchar en) { //speed_r 速度控制變量 cw 方向控制變量 en 使能控制變量 speed=speed_r。 //speed 數(shù)值與速度成反比 請(qǐng)結(jié)合實(shí)際情況進(jìn)行調(diào)節(jié), if(cw==1) //但速度不能無(wú)限加快因?yàn)椴竭M(jìn)電機(jī)有速度上限 { //而且速度加快是力矩會(huì)下降,容易導(dǎo)致丟步現(xiàn)象 cw_right=1。 //所以實(shí)際應(yīng)用當(dāng)中應(yīng)調(diào)節(jié)到速度可力矩比較合適的數(shù)值 } //應(yīng)考慮到電池電壓,輪胎直徑等因素 else { cw_right=0。 //cw 控制電機(jī)正反轉(zhuǎn), 1 與 0 各代表一個(gè)方向 } if(en==1) { //en 為使能位 1:能 0:不能 en_right=1。 } else { en_right=0。 } } void main (void) { delay(10)。 timer1_init()。 while(1) { 基于單片機(jī)的步進(jìn)電機(jī)小車 控制 系統(tǒng)設(shè)計(jì) 30 if(ir_left==0amp。amp。ir_right==0) { move_left(15,0,0)。 move_right(15,0,0)。 } if(ir_left==0amp。amp。ir_right==1) { move_left(15,1,1)。 move_right(15,1,1)。 delay(100)。 } if(ir_left==1amp。amp。ir_right==0) { move_left(15,0,1)。 move_right(15,0,1)。 delay(100)。 } if(ir_left==1amp。amp。ir_right==1) { move_left(15,0,1)。 move_right(15,1,1)。 delay(40)。 } } } void timer1_serve() interrupt 3 { TH1=(65536100)/256。 TL1=(65536100)%256。 n=n+1。 // m=m+1。 if(n==speed) { clk_left=~clk_left。 clk_right=~clk_right。 n=0。 } } 附錄Ⅰ 程序清單 31 include include include include define uchar unsigned char define uint unsigned int //************************管腳定義 ************************************/ sbit en_left = P1^0。//左電機(jī)使能控制位 sbit cw_left= P1^1。//左電機(jī)方向控制位 sbit clk_left= P1^2。//左電機(jī)脈沖控制位 sbit en_right = P1^3。//右電機(jī)使能控制位 sbit cw_right= P1^4。//右電機(jī)方向控制位 sbit clk_right= P1^5。//右電機(jī)脈沖控制位 sbit ir_left=P1^6。 //左側(cè)紅外傳感器接收位 sbit ir_right=P1^7。 //右側(cè)紅外傳感器接收位 sbit ir_mid=P2^3。 //中間紅外傳感器接收位 /////////////////////////函數(shù)聲明 //////////////////////////////////////// void timer1_init()。 //定時(shí)器 1 初始化函數(shù) void move_left(uint speed_l,uchar cw,uchar en)。//左電機(jī)運(yùn)動(dòng)函數(shù) void move_right(uint speed_r,uchar cw,uchar en)。//右電機(jī)運(yùn)動(dòng)函數(shù) void delay(unsigned int k)。 //延時(shí)函數(shù) //////////////////變量定義 //////////////////////////////////////////////// uint n。//進(jìn)定時(shí)器 1 中斷次數(shù)計(jì)數(shù) uint speed。//電機(jī)速度控制變量 /**************函數(shù)體 ******************************************/ void delay(unsigned int k) { unsigned int i,j。 for(i=0。ik。i++) { for(j=0。j121。j++) {。}} } /*******************************/ void timer1_init() { TMOD=0X10。 ET1=1。 基于單片機(jī)的步進(jìn)電機(jī)小車 控制 系統(tǒng)設(shè)計(jì) 32 EA=1。 TH1=(65536100)/256。 TL1=(65536100)%256。 TR1=1。//定時(shí)器啟動(dòng)后 運(yùn)動(dòng)控制脈沖將一直產(chǎn)生 小車的運(yùn)動(dòng)方式受 cw 和 en 控制 } void move_left(uint speed_l,uchar cw,uchar en) { //speed_l 速度控制變量 cw 方向控制變量 en 使能控制變量 speed=speed_l。 if(cw==1) { cw_left=1。 } else { cw_left=0。 } if(en==1) { en_left=1。 } else { en_left=0。 } } void move_right(uint speed_r,uchar cw,uchar en) { //speed_r 速度控制變量 cw 方向控制變量 en 使能控制變量 speed=speed_r。 //speed 數(shù)值與速度成反比 請(qǐng)結(jié)合實(shí)際情況進(jìn)行調(diào)節(jié), if(cw==1) //但速度不能無(wú)限加快因?yàn)椴竭M(jìn)電機(jī)有速度上限 { //而且速度加快是力矩會(huì)下降,容易導(dǎo)致丟步現(xiàn)象 cw_right=1。 //所以實(shí)際應(yīng)用當(dāng)中應(yīng)調(diào)節(jié)到速度可力矩比較合適的數(shù)值 } //應(yīng)考慮到電池電壓,輪胎直徑等因素 else { cw_right=0。 //cw 控制電機(jī)正反轉(zhuǎn), 1 與 0 各代表一個(gè)方向 } if(en==1) { //en 為使能位 1:能 0:不能 en_right=1。 } else 附錄Ⅰ 程序清單 33 { en_right=0。 } } void main (void) { delay(10)。 timer1_init()。 while(1) { if(ir_left==0amp。amp。ir_mid==0amp。amp。ir_right==0) //以下是三個(gè)紅外傳感器的八種狀態(tài)和對(duì)應(yīng)的運(yùn)動(dòng)方式 { move_left(15,0,1)。 move_right(15,0,1)。//前左右都有障礙,右轉(zhuǎn) delay(800)。 } if(ir_left==0amp。amp。ir_mid==0amp。amp。ir_right==1)//前、左有障礙,右轉(zhuǎn) { move_left(15,0,1)。 move_right(15,0,1)。 delay(400)。 } if(ir_left==0amp。amp。ir_mid==1amp。amp。ir_right==0)//左右有障礙,右轉(zhuǎn) move_left(15,0,1)。 move_right(15,0,1)。 delay(800)。 } if(ir_left==0amp。amp。ir_mid==1amp。amp。ir_right==1)//左有障礙,右轉(zhuǎn) { move_left(15,0,1)。 move_right(15,0,1)。 delay(400)。 } if(ir_left==1amp。amp。ir_mid==0amp。amp。ir_right==0)//前、右有障礙,左轉(zhuǎn) { move_left(15,1,1)。 move_right(15,1,1)。 delay(400)。 } if(ir_left==1amp。amp。ir_mid==0amp。amp。ir_right==1)//前有障礙,右轉(zhuǎn) 基于單片機(jī)的步進(jìn)電機(jī)小車 控制 系統(tǒng)設(shè)計(jì) 34 { move_left(15,0,1)。 move_right(15,0,1)。 delay(800)。 } if(ir_left==1amp。amp。ir_mid==1amp。amp。ir_right==0)//右有障礙,左轉(zhuǎn) { move_left(15,1,1)。 move_right(15,1,1)。 delay(400)。 } if(ir_left==1amp。amp。ir_mid==1amp。amp。ir_right==1)//前左右都沒(méi)有障礙,直行 { move_left(15,0,1)。 move_right(15,1,1)。 } } } void timer1_serve() interrupt 3 { TH1=(65536100)/256。 TL1=(65536100)%256。 n=n+1。 // m=m+1。 if(n==speed) { clk_left=~clk_left。 clk_right=~clk_right。 n=0。 } } 附錄Ⅱ 單片機(jī)驅(qū)動(dòng)電機(jī)電路 35 附錄Ⅱ 單片機(jī)驅(qū)動(dòng)電機(jī)電路 基于單片機(jī)的步進(jìn)電機(jī)小車 控制 系統(tǒng)設(shè)計(jì) 36 附錄Ⅲ 外文文獻(xiàn)翻譯 Knowledge of the stepper motor Stepper motor is a kind of electrical pulses into angular displacement of the implementing agency. Popular little lesson: When the driver receives a step pulse signal, it will drive a stepper motor to set the direction of rotation at a fixed angle (and the step angle). You can control the number of pulses to control the angular displacement, so as to achieve accurate positioning purposes。 the same time you can control the pulse frequency to control the motor rotation speed
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1