導航:首頁 > 源碼編譯 > 小車控制源碼

小車控制源碼

發布時間:2024-03-29 18:22:09

㈠ 51單片機的紅外遙控小車設計和製作的C語言程序

論文摘要:本文介紹一款紅外線遙控小車,以AT89S51單片機為核心控制器,用L289驅動直流電機工作,控制小車的運行。本款小車具有紅外線遙控手動駕駛、自動駕駛、尋跡前進等功能。本系統採用模塊化設計,軟體用C語言編寫。轉貼於 51論 文網 www.51lun-wen.cn一、設計任務和要求以AT98C51單片機為核心,製作一款紅外遙控小車,小車具有自動駕駛,手動駕駛和循跡前進等功能。自動駕駛時,前進過程中可以避障。手動駕駛時,遙控控制小車前進、後退、左轉、右轉、加速等操作。尋跡前進時小車還可以按照預先設計好的軌跡前進。轉貼於 51論 文網 www.51lun-wen.cn二、系統組成及工作原理本系統由硬體和軟體兩部分組成。硬體部分主要完成紅外編碼信號的發射和接受、障礙物檢測、軌跡檢測、直流電機運行的發生等功能。軟體主要完成信號的檢測和處理、設備的驅動及控制等功能。AT89S51單片機查詢紅外信號並解碼,查詢各個檢測部分輸入的信號,並進行相應處理,包括電機的正反轉,判斷是否遇到障礙物,判斷是否小車其那金中有出軌等。系統結構框圖如圖1所示。轉貼於 51論 文網 www.51lun-wen.cn圖1 系統結構框圖三、主要硬體電路1、遙控發射器電路該電路的主要控制器件為遙控器晶元HT6221,如圖2所示。HT6221將紅外碼調製成38KHZ的脈沖信號通過紅外發射二極體發出紅外編碼。圖2中D1是紅外發射二極體,D2是按鍵指示燈,當有按鍵按下時D2點亮。

㈡ 用c語言寫一個單片機控制小車走直線的程序,小車一共3個輪子,一個萬向輪,另兩個是電機驅動的,用51單片

自己看注釋改一下就行 函數都寫好了了 沒用的刪掉就可以了

#include<reg52.h>
#include<math.h>
#define uchar unsigned char
#define uint unsigned int
#define L_M 1
#define R_M 2
uchar temp2,temp1,t,m1,m2,redline;
sbit tr=P2^4; //超聲波
sbit ec=P2^5; //
sbit en=P2^7; //液晶的EN
sbit rs=P2^6; //液晶RS選擇端
//液晶數據口 P0口
sbit Rin_1=P2^0; //尋跡管腳輸入
sbit Rin_2=P2^1;
sbit Lin_2=P2^2;
sbit Lin_1=P2^3;
sbit L_EN=P1^0; //左側電機使能
sbit L_1=P1^1; //左側電機控制 1
sbit L_2=P1^2; //左側電機控制 2
sbit R_1=P1^3; //右側電機控制 1
sbit R_2=P1^4; //右側電機控制 2
sbit R_EN=P1^5; //右側電機使能
void delay(uint z) //延時程序1
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void delay1s(uchar t) //1s延時函數
{
uchar a,h,i,j,k;
for(a=t;a>0;a--)
{
for(h=5;h>0;h--)
for(i=4;i>0;i--)
for(j=116;j>0;j--)
for(k=214;k>0;k--);
}
}
void v_cotrol(uchar number,uchar speed)
{
if(speed<100)
{
if(number==1)
m1=abs(speed);
if(number==2)
m2=abs(speed);
}
}
void turnleft()
{
L_1=1; // left fan zhuan //
L_2=0;
R_1=1; // right fanzhuan
R_2=0;
}
void turnright()
{
L_1=0; // left zheng zhuan
L_2=1;
R_1=0; // right fanzhuan
R_2=1;
}
void gostright()
{
L_1=0; // left zheng zhuan
L_2=1;
R_1=1; // right zhengzhuan
R_2=0;
}
void goback()
{
L_1=1; // left zheng zhuan
L_2=0;
R_1=0; // right zhengzhuan
R_2=1;
}
void stop()
{
L_1=1; // stop
L_2=1;
R_1=1; // stop
R_2=1;
}
void timer0_int()
{
TMOD=0X01;
TH0=-100/256;
TL0=-100%256;
EA=1;
ET0=1;
TR0=1;
}
state_int()
{
Rin_1=1;
Rin_1=1;
Lin_1=1;
Lin_1=1;
t=0;
m1=50;
m2=50;
stop();

}
void main()
{
timer0_int();
state_int();
while(1)
{
//避障程序
if((Lin_1==1)&&(Lin_2==1)&&(Rin_1==1)&&(Rin_2==1))
gostright();
if((Lin_1==1)&&(Lin_2==1)&&(((Rin_1==1)&&(Rin_2==0))||((Rin_1==0)&&(Rin_2==1))||((Rin_1==0)&&(Rin_2==0))))
turnleft();
if((Rin_1==1)&&(Rin_2==1)&&(((Lin_1==1)&&(Lin_2==0))||((Lin_1==0)&&(Lin_2==1))||((Lin_1==0)&&(Lin_2==0))))
turnright();
if((((Lin_1==1)&&(Lin_2==0))||((Lin_1==0)&&(Lin_2==1))||((Lin_1==0)&&(Lin_2==0)))&&(((Rin_1==1)&&(Rin_2==0))||((Rin_1==0)&&(Rin_2==1))||((Rin_1==0)&&(Rin_2==0))))
goback();
if((Lin_1==1)&&(Lin_2==1)&&(Rin_1==1)&&(Rin_2==1))
gostright();
if((Lin_1==1)&&(Lin_2==1)&&(((Rin_1==1)&&(Rin_2==0))||((Rin_1==0)&&(Rin_2==1))||((Rin_1==0)&&(Rin_2==0))))
turnleft();
if((Rin_1==1)&&(Rin_2==1)&&(((Lin_1==1)&&(Lin_2==0))||((Lin_1==0)&&(Lin_2==1))||((Lin_1==0)&&(Lin_2==0))))
turnright();
if((((Lin_1==1)&&(Lin_2==0))||((Lin_1==0)&&(Lin_2==1))||((Lin_1==0)&&(Lin_2==0)))&&(((Rin_1==1)&&(Rin_2==0))||((Rin_1==0)&&(Rin_2==1))||((Rin_1==0)&&(Rin_2==0))))
goback();

}

while(1);
}
timer0() interrupt 1
{
TH0=-100/256;
TL0=-100%256;
if(t==0)
{
temp1=m1;
temp2=m2;
}
if(t==temp1)
L_EN=0;
if(t==temp2)
R_EN=0;
t++;
if(t==50)
{
t=0;
L_EN=1;
R_EN=1;
}

}

㈢ 51單片機智能小車製作,求通俗易懂的講解

系統的單片機程序:

#include"reg52.h"

#definedet_Dist2.55//

單個脈沖對應的小車行走距離,其值為車輪周長

/4#defineRD9//

小車對角軸長度。

#definePI3.1415926

#defineANG_9090

#defineANG_90_T102

#defineANG_180189/

全局變數定義區。

/sbitP10=P1^0;//

控制繼電器的開閉sbitP11=P1^1;//

控制金屬接近開關。


(3)小車控制源碼擴展閱讀:


控制器部分:接收感測器部分傳遞過來的信號,並根據事前寫入的決策系統(軟體程序),來決定機器人對外部信號的反應,將控制信號發給執行器部分。好比人的大腦。

執行器部分:驅動機器人做出各種行為,包括發出各種信號(點亮發光二極體、發出聲音)的部分,並且可以根據控制器部分的信號調整自己的狀態。

對機器人小車來說,最基本的就是輪子。這部分就好比人的四肢一樣。 感測器部分:機器人用來讀取各種外部信號的感測器,以及控制機器人行動的各種開關。好比人的眼睛、耳朵等感覺器官。




閱讀全文

與小車控制源碼相關的資料

熱點內容
android編譯系統apk 瀏覽:808
3dm解壓縮密碼 瀏覽:471
安卓如何截屏到手機 瀏覽:994
多空資金指標公式源碼精準買點 瀏覽:227
匿名投票小程序源碼 瀏覽:1000
java運行監控 瀏覽:233
成都做程序員之都 瀏覽:537
光纖輸出的是源碼還是pcm 瀏覽:143
pdf格式列印出來是白紙 瀏覽:313
主人公叫葉天明柳韶的小說 瀏覽:74
愛戀一樣電影 瀏覽:661
叮咚浩哥電影叫什麼 瀏覽:675
新世界電訊伺服器怎麼樣 瀏覽:126
美國科幻片機器人 瀏覽:104
韓國推理劇愛情電影 瀏覽:757
電視機上app自動扣費哪裡關 瀏覽:44
影像學pdf 瀏覽:316
教育網電教伺服器是什麼呢 瀏覽:136
小電影網站誰有 瀏覽:327
女主和兩個雙胞胎兄弟 瀏覽:6