1024手机基地看电影,午夜福利视频导航,国产精品福利在线一区,亚洲欧美日韩另类成人,在线观看午夜日本理论片,成年超爽免费网站,国产精品成人免费,精品动作一级毛片,成人免费观看网站,97精品伊人久久大香蕉

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3838|回復: 3
收起左側

關于51單片機驅動麥克那姆輪的調速問題

[復制鏈接]
ID:526810 發表于 2019-5-26 17:36 | 顯示全部樓層 |閱讀模式
3黑幣
如題 最近在做一個基于51單片機的麥輪遙控小車。由于是第一次接觸麥輪,一開始我想的是不需要調速,能前進后退平移就行了。但是程序寫好后朋友告訴我說如果不進行調速,小車并不會走直線,反而會傾斜前進。所以我想問下如何對麥輪進行調速控制,以及為什么需要調速。謝謝!

51單片機的程序在下面 如果可以的話,能幫我講解下需要如何調整
#define uint unsigned int
#define uchar unsigned char

sbit out1=P2^0;
sbit out2=P2^1;
sbit out3=P2^2;
sbit out4=P2^3;
sbit out5=p2^4;
sbit out6=p2^5;
sbit out7=p2^6;
sbit out8=p2^7;


void qianjin()//前進
{
out1=0;out2=1;
out3=0;out4=1;
out5=0;out6=1;
out7=0;out8=1;
}
void houtui()//后退
{
out1=1;out2=0;
out3=1;out4=0;
out5=1;out6=0;
out7=1;out8=0;
}
void zuozhuan()//左轉
{
out1=0;out2=0;
out3=0;out4=1;
out5=0;out6=0;
out7=0;out8=1;
}
void youzhuan()//右轉
{
out1=0;out2=1;
out3=0;out4=0;
out5=0;out6=1;
out7=0;out8=0;
}
void tingzhi()//停止
{
out1=0;out2=0;
out3=0;out4=0;
out5=0;out6=0;
out7=0;out8=0;
}

void init()        
{
IE=0x90;
SCON=0x50;
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TCON=0x40;
TR1=1;
ES = 1;
EA=1;
}

void main()
{
init();

while(1)
{

}
}

void time() interrupt 4
{
                                                                                                                                                                                             
if(RI)
{
RI=0;
switch(SBUF)
{
case 'a':qianjin();break;
case 'b':houtui();break;

case 'c':zuozhuan();break;
case 'd':youzhuan();break;

case 'e':tingzhi();break;

}                                                                                                         
}
}

最佳答案

查看完整內容

你朋友的調速是指通過檢測實際速度進行反饋調節,你可以去了解一PID速度控制
回復

使用道具 舉報

ID:52944 發表于 2019-5-26 17:36 | 顯示全部樓層
你朋友的調速是指通過檢測實際速度進行反饋調節,你可以去了解一PID速度控制
回復

使用道具 舉報

ID:526810 發表于 2019-5-27 09:42 | 顯示全部樓層
liushangming 發表于 2019-5-27 08:50
你朋友的調速是指通過檢測實際速度進行反饋調節,你可以去了解一PID速度控制

就是用電機的編碼器進行調速嗎?不需要在程序中修改什么
回復

使用道具 舉報

ID:57512 發表于 2019-6-3 11:34 | 顯示全部樓層
我發表過的》》麥克納姆輪全向輪戰車程序精髓分享《《   
自己搜索看看
因為:由于麥克輪是將(X,Y,W)轉換成(W1,W2,W3,W4)
翻譯:X為橫著走的速度,Y為前進走速度,W為原地轉速度。W1,W2,W3,W4為各個輪子速度 1559525826(1).jpg

捷徑:如果你只是玩耍,不是做項目,那么只需要簡單的控制4個電機,不斷地試驗電機組合,看看不同輪子轉向得到什么結果,就能總結出規律
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表