第一篇:機(jī)器人總結(jié)報(bào)告
機(jī)器人總結(jié)報(bào)告
各位老師、各位同學(xué):
大家晚上好!
首先真誠(chéng)的感謝孫老師和鮑老師給我提供這次很好的機(jī)會(huì),我很高興也很榮幸的能夠在此與大家共同交流,共同學(xué)習(xí)。下面我就機(jī)器人的整個(gè)制作過(guò)程給大家簡(jiǎn)單的介紹一下:
下面是提綱:
首先給機(jī)器人做簡(jiǎn)單的分類然后再?gòu)南旅鎯蓚€(gè)方面介紹:
一、硬件:
(1)、從大一接手焊接任務(wù)引入,強(qiáng)調(diào)實(shí)踐動(dòng)手能力對(duì)制作機(jī)器人的重要性。
(2)、在家電維修隊(duì)中經(jīng)過(guò)系統(tǒng)的學(xué)習(xí)對(duì)機(jī)器人實(shí)現(xiàn)提供了保障,并由此引入機(jī)器人制作的工作重心是前期的總體規(guī)劃。
二、軟件:
(1)、從機(jī)器人的控制部分單片機(jī)引入,首先對(duì)單片機(jī)做簡(jiǎn)單的介紹,為什么學(xué)習(xí)單片機(jī),以及其用途。
(2)通過(guò)單片機(jī)的學(xué)習(xí)總結(jié)下自己的學(xué)習(xí)經(jīng)歷。
(3)最后由單片機(jī)引入程序設(shè)計(jì),簡(jiǎn)單介紹機(jī)器人的軟件實(shí)現(xiàn)方法。
三、做一下概括性的總結(jié),并對(duì)新生提出建議。
第二篇:機(jī)器人大賽總結(jié)報(bào)告(推薦)
機(jī)器人大賽總結(jié)報(bào)告
機(jī)器人大賽是一個(gè)極富挑戰(zhàn)性的學(xué)術(shù)競(jìng)賽。它不僅水準(zhǔn)高,難度大,綜合性強(qiáng),而且投資巨大的新興學(xué)科。
我們之所以有機(jī)會(huì)參加如此高水的學(xué)科競(jìng)賽,這全得益于學(xué)校領(lǐng)導(dǎo)的大力支持:我們之所以能在極端不利的情況下取得今天的成績(jī),這全得益于所有指導(dǎo)老師的精心栽培和全體參賽隊(duì)員的團(tuán)結(jié)努力。
上學(xué)期末,當(dāng)我得知學(xué)校將組織我們參加本次的機(jī)器人大賽我非常的興奮,作為一個(gè)電子專業(yè)大三的學(xué)生能參加本次的學(xué)術(shù)盛宴,將是我求學(xué)道路中不可多得的好機(jī)遇,同時(shí)我也知道這也將是我求學(xué)中的一個(gè)挑戰(zhàn),我不僅要和同學(xué)們競(jìng)爭(zhēng)這少有的名額,同時(shí)我還要和我自己競(jìng)爭(zhēng),通過(guò)幾個(gè)月的學(xué)習(xí)訓(xùn)練我能否不斷超越自己,提高自己的動(dòng)手能,最終在大賽中戰(zhàn)勝對(duì)手取得好成績(jī),為自己為學(xué)校增光添彩。
后來(lái),我也了解到學(xué)校已經(jīng)花重金購(gòu)置幾臺(tái)機(jī)器人,聽(tīng)張老師簡(jiǎn)單介紹這臺(tái)小小的機(jī)器居然花費(fèi)數(shù)千元,通過(guò)學(xué)習(xí)才知道,這個(gè)小東西本領(lǐng)還不小,都已經(jīng)算是很尖端的技術(shù)了,這讓我對(duì)機(jī)器人有了更加濃厚的興趣。加上學(xué)校領(lǐng)導(dǎo)的重視以及指導(dǎo)老師精心指導(dǎo),我暗自下定決心“一定要好好努力,不能辜負(fù)了學(xué)校和指導(dǎo)老師的期望”。
在講完所有的基礎(chǔ)課后,我們開(kāi)始利用軟件對(duì)機(jī)器人進(jìn)行測(cè)試和調(diào)試,好讓其達(dá)到最佳狀態(tài),但是是結(jié)果卻不是很理想,我們隊(duì)員之間相互探討,充分發(fā)揮自己的主觀能動(dòng)性,將各自想到的方案集合在一起,相互改進(jìn)在裝載到機(jī)器人里,根據(jù)運(yùn)行效果的好壞來(lái)決定最終的方案,直到比賽的前一天我們還在不斷改進(jìn)程序,我試了最后的效果非常的棒,其它組的效果也是一樣。
于是我們機(jī)器充滿電,整理行裝,準(zhǔn)備明天的出征。第二天到后我們就開(kāi)始最后的參數(shù)采集和調(diào)試,但由于現(xiàn)場(chǎng)的環(huán)境不斷變化,更我們的調(diào)試帶來(lái)了很大的困難,看得出隊(duì)員都有些急躁,在老師的開(kāi)導(dǎo)之后,我們調(diào)整好心態(tài),克服外在的影響,開(kāi)始最后的調(diào)試。所有的隊(duì)員都在分工合作,一絲不茍的準(zhǔn)備最后調(diào)試,我們都知道勝敗就在此一舉了。在我們所有準(zhǔn)備都做好后,我對(duì)機(jī)器人做了最后一次測(cè)試,防守機(jī)器人效果非常好,就在我們信心滿滿的去測(cè)試進(jìn)攻機(jī)器人時(shí),我們遇到了參賽以來(lái)最大的難關(guān)——機(jī)器人的電機(jī)突然燒毀,而在場(chǎng)的工作組專家也無(wú)計(jì)可施。這一下讓我們的心情跌至谷底,因?yàn)闆](méi)有好的機(jī)器就意味著棄權(quán)。此時(shí)老師和我們的心情都很沉重,學(xué)?;诉@么大代價(jià),我們也付出了很大的努力,可結(jié)果卻是這樣。我不甘心,我不愿意就這樣放棄,可這時(shí)候已經(jīng)是晚上的10點(diǎn)了,我這時(shí)候所有的人都對(duì)我們不再抱有希望了,除了我們這組三名隊(duì)員,在我們反復(fù)的思考和拆裝中,我們終于找到了起死回生的辦法,就是將四輪驅(qū)動(dòng)改為前輪驅(qū)動(dòng),將壞掉的車輪改為從動(dòng)輪,這樣就可以正常運(yùn)行,但是功率卻小了一半,而且參數(shù)也發(fā)生了變化。等我們?cè)撻_(kāi)始改動(dòng)時(shí),時(shí)間已經(jīng)很晚了,我們被迫回到住處,在老師的指導(dǎo)下繼續(xù)改動(dòng),直到凌晨2點(diǎn)我們才完成改裝,然后洗澡睡覺(jué)。
第二天我們帶著黑眼圈早早的起來(lái),吃完早餐就去了賽場(chǎng),這時(shí)我們看到的對(duì)手的機(jī)器人,個(gè)頭明顯比我們的大一截,或是重量比我們超我們一截,這完全不符合參賽要求,但是組委會(huì)卻沒(méi)有在意,我也知道這才第二屆難免會(huì)有些不公的地方,就這樣我們以微弱的劣勢(shì)敗于對(duì)手。這樣的結(jié)果讓我沒(méi)辦法向?qū)W校,向老師交代,更沒(méi)辦法想我自己交代,我一直不能從失敗的陰影走出來(lái),也許我過(guò)于在乎那個(gè)名次了,老師像是看出了我的心思于是開(kāi)導(dǎo)我,記得老師說(shuō):“對(duì)你們來(lái)說(shuō),名次并不是最后總要的,重要是你們通過(guò)此次的大賽,學(xué)到了什么”。這時(shí)我才恍然大悟,我回答道:“除了獎(jiǎng)以外,其它的都得到了”。
通過(guò)本次的大賽我學(xué)到很多,不僅讓我在專業(yè)學(xué)習(xí)上指明了一條道路,還讓我了解到如何將書(shū)本上的知識(shí)運(yùn)用到生產(chǎn)實(shí)踐,在工作中如何更快更好地解決問(wèn)題,同時(shí)我還交到很多朋友,也深刻認(rèn)識(shí)到了自己的不足。最后我還要真誠(chéng)感謝學(xué)校領(lǐng)導(dǎo)和老師給我這次歷練的機(jī)會(huì)。
機(jī)器人受損報(bào)告
1號(hào)機(jī)器人各部件有點(diǎn)松動(dòng)無(wú)受損,2號(hào)機(jī)器人人各部件有點(diǎn)松動(dòng),兩個(gè)后輪電機(jī)燒毀,已改為從動(dòng)輪結(jié)構(gòu),零部件在保險(xiǎn)箱內(nèi)。
鄧振華 索建飛 張集田
09-29
第三篇:機(jī)器人課程結(jié)課總結(jié)報(bào)告
課程結(jié)課總結(jié)報(bào)告
課程名稱:機(jī)器人的制作
實(shí)驗(yàn)一 基于arduino控制器的輪式機(jī)器人循跡避障功能設(shè)計(jì) 實(shí)驗(yàn)二 應(yīng)變式傳感器電子秤實(shí)驗(yàn)
實(shí)驗(yàn)三 基于C51單片機(jī)控制器的輪式機(jī)器人電機(jī)控制系統(tǒng) 實(shí)驗(yàn)四 基于ARM控制器的博創(chuàng)平臺(tái)輪式機(jī)器人循跡避障功能實(shí)現(xiàn) 實(shí)驗(yàn)五 攝像頭實(shí)現(xiàn)輪式機(jī)器人循跡功能的應(yīng)用
實(shí)驗(yàn)六 應(yīng)用卓越聯(lián)盟實(shí)驗(yàn)室設(shè)備進(jìn)行設(shè)計(jì)和實(shí)現(xiàn)作品說(shuō)明
指導(dǎo)教師 許曉飛 系 別 機(jī)電工程學(xué)院 專 業(yè) 機(jī)械電子工程 學(xué)生姓名鄧銀濤
班級(jí)/學(xué)號(hào)機(jī)電1401/2014010339 成績(jī)
實(shí)驗(yàn)一 基于ardunio控制器的輪式機(jī)器人循跡避障功能設(shè)計(jì)
實(shí)驗(yàn)?zāi)康?/p>
1.了解ardunio平臺(tái),并熟練使用此軟件完成小車的各種活動(dòng)
2.了解HC-SR04超聲波測(cè)距模塊的原理,并且熟練使用此模塊作為小車的傳感器進(jìn)行工作 3.了解并且熟悉紅外線傳感器循跡原理 實(shí)驗(yàn)器材:
Adrunio軟件,超聲波傳感器,紅外線傳感器,導(dǎo)線,底板,電機(jī),電池,單片機(jī)等 實(shí)驗(yàn)內(nèi)容:
1.將硬件組裝成小車,即輪式機(jī)器人 2.利用ardunio使小車完成循跡功能 步驟:(1)寫(xiě)好后綴為.txt的c語(yǔ)言循跡文件
(2)將文件導(dǎo)入單片機(jī)中
(3)根據(jù)具體路況,運(yùn)行并且進(jìn)行調(diào)試紅外線傳感器的靈敏程度 3.利用ardunio使小車完成避障功能 步驟:(1)寫(xiě)好后綴為.txt的c語(yǔ)言避障文件
(2)將文件導(dǎo)入單片機(jī)中
(3)運(yùn)行并且進(jìn)行調(diào)試小車躲避障礙物的距離 實(shí)驗(yàn)程序 1.循跡程序:
小車循跡程序思路圖 #include
const int SensorRight = 3;//右循跡紅外傳感器(P3.2 OUT1)const int SensorLeft = 4;//左循跡紅外傳感器(P3.3 OUT2)int SL;//左循跡紅外傳感器狀態(tài) int SR;//右循跡紅外傳感器狀態(tài) void setup(){ //初始化電機(jī)驅(qū)動(dòng)IO為輸出方式
pinMode(Left_motor_go,OUTPUT);// PIN 8(PWM)pinMode(Left_motor_back,OUTPUT);// PIN 9(PWM)pinMode(Right_motor_go,OUTPUT);// PIN 10(PWM)
pinMode(Right_motor_back,OUTPUT);// PIN 11(PWM)pinMode(key,INPUT);//定義按鍵接口為輸入接口
pinMode(SensorRight, INPUT);//定義右循跡紅外傳感器為輸入
pinMode(SensorLeft, INPUT);//定義左循跡紅外傳感器為輸入 } void run(int time)// 前進(jìn) void run(){ digitalWrite(Right_motor_go,HIGH);// 右電機(jī)前進(jìn)
digitalWrite(Right_motor_back,LOW);
analogWrite(Right_motor_go,255);//PWM比例0~255調(diào)速
analogWrite(Right_motor_back,0);digitalWrite(Left_motor_go,HIGH);// 左電機(jī)前進(jìn)
digitalWrite(Left_motor_back,LOW);analogWrite(Left_motor_go,255);//PWM比例0~255調(diào)速
analogWrite(Left_motor_back,0);//delay(time * 50);//執(zhí)行時(shí)間,可以調(diào)整
} //void left(int time)//左轉(zhuǎn)(左輪不動(dòng),右輪前進(jìn))void left(){ digitalWrite(Right_motor_go,HIGH);digitalWrite(Right_motor_back,LOW);analogWrite(Right_motor_go,200);
analogWrite(Right_motor_back,0);//PWM比例0~255調(diào)速
digitalWrite(Left_motor_go,LOW);//左輪后退
digitalWrite(Left_motor_back,LOW);analogWrite(Left_motor_go,0);
analogWrite(Left_motor_back,100);//PWM比例0~255調(diào)速
//delay(time * 50);//執(zhí)行時(shí)間,可以調(diào)整
// 右電機(jī)前進(jìn) } void right(int time)//右轉(zhuǎn)(右輪不動(dòng),左輪前進(jìn))void right(){ digitalWrite(Right_motor_go,LOW);//右電機(jī)后退
digitalWrite(Right_motor_back,LOW);analogWrite(Right_motor_go,0);
analogWrite(Right_motor_back,100);//PWM比例0~255調(diào)速
digitalWrite } 2.避障程序:
char L1 = 9;// zheng char L2 = 8;char R1 = 10;// zheng char R2 = 11;int echopin = 13;
int trigpin = 12;
void setup()//初始化動(dòng)作的區(qū)塊,定義串行端口和腳位 { pinMode(echopin , INPUT);// pwm
pinMode(trigpin , OUTPUT);} void loop()//版子重復(fù)執(zhí)行動(dòng)作的區(qū)塊 { int currDist;
long randnumber;
currDist = MeasureDistance();// 讀取前端距離
delay(5);
if(currDist > 10)
{
straight();
}
if(currDist <= 10)
{ randomSeed(analogRead(0));
randnumber = random(0 ,10);
if(randnumber > 5)
{ back();
delay(1000);
turnright();
delay(800);
}
else
{ back();
delay(1000);
turnleft();
delay(800);
}
} } int MeasureDistance(){ digitalWrite(trigpin , LOW);
delay(2);
digitalWrite(trigpin , HIGH);
delay(10);
digitalWrite(trigpin , LOW);
int distance = pulseIn(echopin , HIGH);
distance = distance / 58.0;// 計(jì)算距離
344 * 100 / 1000000 * pulseIn()/ 2
delay(60);
// 循環(huán)間隔60uS
return(distance);
} void straight(){ analogWrite(L1 ,100);
//
255 0 zhengzhuan
analogWrite(L2 ,0);
analogWrite(R1 , 100);
//
255 0 zhengzhuan
analogWrite(R2 , 0);} void turnright(){ analogWrite(L1 ,100);
//
255 0 zhengzhuan
analogWrite(L2 ,0);
analogWrite(R1 ,0);
//
255 0 zhengzhuan
analogWrite(R2 ,0);
} void turnleft(){ analogWrite(L1 , 0);
//
255 0 zhengzhuan
analogWrite(L2 , 0);
analogWrite(R1 , 100);
//
255 0 zhengzhuan
analogWrite(R2 , 0);
} void back(){ analogWrite(L1 , 0);
//
255 0 zhengzhuan
analogWrite(L2 , 100);
analogWrite(R1 , 0);
//
255 0 zhengzhuan
analogWrite(R2 , 100);
} 實(shí)驗(yàn)過(guò)程中遇到的問(wèn)題及解決辦法 循跡中:
1.電機(jī)速度差異控制:發(fā)現(xiàn)左右輪寫(xiě)入同一數(shù)值時(shí),小車行進(jìn)方向偏離直線,——對(duì)左右兩輪寫(xiě)入不同數(shù)值,多次測(cè)試,指導(dǎo)左右輪速度相等。
2.電機(jī)驅(qū)動(dòng)器給arduino供電出現(xiàn)問(wèn)題,改用充電寶給arduino供電,直接從gnd和5v輸出腳給電機(jī)驅(qū)動(dòng)器供電 3.一個(gè)電機(jī)有兩根信號(hào)輸入線,一根控制正轉(zhuǎn),一根控制反轉(zhuǎn)。兩個(gè)輪子一起測(cè)轉(zhuǎn)地眼暈,容易出錯(cuò)。避障中:
1.超聲裝置避障距離的確定——將HC-SR04超聲波避障程序中數(shù)值改短,提高避障靈敏性 2.硬件的安裝:超聲裝置無(wú)法固定——曾嘗試過(guò)用膠帶,廢舊車輪等但不理想,并未得到很好的解決 實(shí)驗(yàn)結(jié)果
小車可以成功的進(jìn)行循跡和避障
實(shí)驗(yàn)二 電子秤實(shí)驗(yàn)
一 單臂實(shí)驗(yàn) 數(shù)據(jù)處理源碼:
axis([0 200 0 50])
coords=[0 20 40 60 80 100 120 140 160 180 200;0 2.8 5.1 7.5 9.9 12.4 14.8 17.2 19.6 22.0 24.6] grid hold
plot(coords(1,:),coords(2,:),'*')x=coords(1,:)y=coords(2,:)' b=size(coords)c=ones(1,b(2))MT=[c;x] M=MT'
f=inv(MT*M)*MT*y
['y=',num2str(f(2)),'x+',num2str(f(1))] x=-max(x):max(x)y=f(1)+f(2)*x
mistake=max(x-y)/(max(y)-min(y));
fprintf('電阻傳感器的系數(shù)靈敏度S=%5.3f%%n',abs(f(2)))fprintf('非線性誤差f=%5.3f%%n',mistake)plot(x,y,'--')xlabel('x/g')ylabel('V/mv')title('單臂實(shí)驗(yàn)')
legend(['y=',num2str(f(2)),'x+',num2str(f(1))])Matlab處理結(jié)果
電阻傳感器的系數(shù)靈敏度S=0.122% 非線性誤差f=3.607%
半橋?qū)嶒?yàn) 源碼:
axis([0 200 0 50])coords=[0 20 40 60 80 100 120 140 160 180 200;0 4.0 8.8 13.7 18.6 23.5 18.4 33.2 38.2 43.1 47.9] grid hold
plot(coords(1,:),coords(2,:),'*')x=coords(1,:)y=coords(2,:)' b=size(coords)c=ones(1,b(2))MT=[c;x] M=MT'
f=inv(MT*M)*MT*y
['y=',num2str(f(2)),'x+',num2str(f(1))] x=-max(x):max(x)
y=f(1)+f(2)*x
mistake=max(x-y)/(max(y)-min(y));
fprintf('電阻傳感器的系數(shù)靈敏度S=%5.3f%%n',abs(f(2)))fprintf('非線性誤差f=%5.3f%%n',mistake)plot(x,y,'--')xlabel('x/g')ylabel('V/mv')title('半橋?qū)嶒?yàn)')
legend(['y=',num2str(f(2)),'x+',num2str(f(1))])Matlab處理結(jié)果
電阻傳感器的系數(shù)靈敏度S=0.238% 非線性誤差f=1.615%
全橋?qū)嶒?yàn) 源碼:
axis([0 200 0 100])
coords=[0 20 40 60 80 100 120 140 160 180 200;0 7.4 15.3 23.1 30.9 38.8 46.7 54.6 62.6 70.5 78.4] grid hold
plot(coords(1,:),coords(2,:),'*')x=coords(1,:)y=coords(2,:)' b=size(coords)c=ones(1,b(2))MT=[c;x] M=MT'
f=inv(MT*M)*MT*y
['y=',num2str(f(2)),'x+',num2str(f(1))] x=-max(x):max(x)
y=f(1)+f(2)*x
mistake=max(x-y)/(max(y)-min(y));
fprintf('電阻傳感器的系數(shù)靈敏度S=%5.3f%%n',abs(f(2)))fprintf('非線性誤差f=%5.3f%%n',mistake)plot(x,y,'--')xlabel('x/g')ylabel('V/mv')title('全橋?qū)嶒?yàn)')
legend(['y=',num2str(f(2)),'x+',num2str(f(1))])Matlab數(shù)據(jù)處理
電阻傳感器的系數(shù)靈敏度S=0.393% 非線性誤差f=0.774%
實(shí)驗(yàn)三 基于C51單片機(jī)控制器的輪式機(jī)器人電機(jī)控制系統(tǒng)
實(shí)驗(yàn)?zāi)康?/p>
了解PWM波控制電機(jī)的原理?;贑51單片機(jī)利用PWM波控制電機(jī)。實(shí)驗(yàn)器材
C51單片機(jī)、L298N驅(qū)動(dòng)芯片、直流電機(jī)、杜邦線、普通導(dǎo)線、keil軟件、STC下載器、示波器 實(shí)驗(yàn)內(nèi)容
用keil新建一個(gè)“.c”文件,編寫(xiě)程序并對(duì)程序進(jìn)行調(diào)試。將程序燒錄進(jìn)單片機(jī)內(nèi)。進(jìn)行硬件連接 C51引腳如圖所示:
L298N引腳如圖所示:
用單片通過(guò)P1.0、P1.1和L298的第一對(duì)輸入端IN1和IN2相連,然后又L298的第一對(duì)輸出端OUT1和OUT2與直流電機(jī)相連;單片通過(guò)P1.5、P1.6和L298的第二對(duì)輸入端IN3和IN4相連,然后又L298的第二對(duì)輸出端OUT3和OUT4與直流電機(jī)相連。給單片機(jī)上電。用示波器觀察波形。
程序內(nèi)容
1、PWM波控制電機(jī)啟動(dòng)
#include “reg51.h” #include “intrins.h”
#define FOSC 11059200L
typedef unsigned char BYTE;typedef unsigned int WORD;void delay_ms(int x);
/*Declare SFR associated with the PCA */ sfr CCON = 0xD8;//PCA control register sbit CCF0 = CCON^0;//PCA module-0 interrupt flag sbit CCF1 = CCON^1;//PCA module-1 interrupt flag sbit CR = CCON^6;//PCA timer run control bit sbit CF = CCON^7;//PCA timer overflow flag sfr CMOD = 0xD9;//PCA mode register sfr CL = 0xE9;//PCA base timer LOW sfr CH = 0xF9;//PCA base timer HIGH sfr CCAPM0 = 0xDA;//PCA module-0 mode register sfr CCAP0L = 0xEA;//PCA module-0 capture register LOW sfr CCAP0H = 0xFA;//PCA module-0 capture register HIGH sfr CCAPM1 = 0xDB;//PCA module-1 mode register sfr CCAP1L = 0xEB;//PCA module-1 capture register LOW sfr CCAP1H = 0xFB;//PCA module-1 capture register HIGH sfr PCAPWM0 = 0xf2;sfr PCAPWM1 = 0xf3;sbit IN1=P1^0;
sbit IN2 = P1^1;sbit IN3=P1^5;
sbit IN4 = P1^6;void main(){ CCON = 0;//Initial PCA control re CL = 0;//Reset PCA base timer CH = 0;CMOD = 0x02;//Set PCA timer clock source as Fosc/2 CR = 1;//PCA timer start run while(1){ int i;IN1=0;IN2=1;IN3=0;IN4=1;for(i=100;i>=0;i--){
CCAP0H = CCAP0L =i;//PWM0 port output 50% duty cycle square wave CCAPM0 = 0x42;//PCA module-0 work in 8-bit PWM mode and no PCA interrupt
CCAP1H = CCAP1L = i;
CCAPM1 = 0x42;delay_ms(100);}
for(i=0;i<=100;i++){
CCAP0H = CCAP0L =i;//PWM0 port output 50% duty cycle square wave CCAPM0 = 0x42;//PCA module-0 work in 8-bit PWM mode and no PCA interrupt
CCAP1H = CCAP1L = i;
CCAPM1 = 0x42;delay_ms(100);} IN1=1;IN2=0;IN3=1;IN4=0;for(i=100;i>=0;i--){
CCAP0H = CCAP0L =i;//PWM0 port output 50% duty cycle square wave CCAPM0 = 0x42;//PCA module-0 work in 8-bit PWM mode and no PCA interrupt
CCAP1H = CCAP1L = i;
CCAPM1 = 0x42;delay_ms(100);}
for(i=0;i<=100;i++){
CCAP0H = CCAP0L =i;//PWM0 port output 50% duty cycle square wave CCAPM0 = 0x42;//PCA module-0 work in 8-bit PWM mode and no PCA interrupt
CCAP1H = CCAP1L = i;
CCAPM1 = 0x42;delay_ms(100);} } } void delay_ms(int x){ int y;for(;x>0;x--)for(y=0;y<1000;y++);} 控制方向
#include “reg51.h” #include “intrins.h” #define FOSC 11059200L typedef unsigned char BYTE;typedef unsigned int WORD;sbit IN1 = P1^0;sbit IN2 = P1^1;void main(){ IN1=0;IN2=1;} PWM波對(duì)電機(jī)調(diào)速
#include “reg51.h” #include “intrins.h”
#define FOSC 11059200L
typedef unsigned char BYTE;typedef unsigned int WORD;
/*Declare SFR associated with the PCA */ sfr CCON = 0xD8;//PCA control register sbit CCF0 = CCON^0;//PCA module-0 interrupt flag sbit CCF1 = CCON^1;//PCA module-1 interrupt flag sbit CR = CCON^6;//PCA timer run control bit sbit CF = CCON^7;//PCA timer overflow flag sfr CMOD = 0xD9;//PCA mode register sfr CL = 0xE9;//PCA base timer LOW sfr CH = 0xF9;//PCA base timer HIGH sfr CCAPM0 = 0xDA;//PCA module-0 mode register sfr CCAP0L = 0xEA;//PCA module-0 capture register LOW sfr CCAP0H = 0xFA;//PCA module-0 capture register HIGH sfr CCAPM1 = 0xDB;//PCA module-1 mode register sfr CCAP1L = 0xEB;//PCA module-1 capture register LOW sfr CCAP1H = 0xFB;//PCA module-1 capture register HIGH sfr PCAPWM0 = 0xf2;sfr PCAPWM1 = 0xf3;
void main(){ CCON = 0;//Initial PCA control register CL = 0;//Reset PCA base timer CH = 0;CMOD = 0x02;//Set PCA timer clock source as Fosc/2 CCAP0H = CCAP0L = 0x80;//PWM0 port output 50% duty cycle square wave CCAPM0 = 0x42;//PCA module-0 work in 8-bit PWM mode and no PCA interrupt
CCAP1H = CCAP1L = 0xff;//PWM1 port output 0% duty cycle square wave PCAPWM1 = 0x03;CCAPM1 = 0x42;//PCA module-1 work in 8-bit PWM mode and no PCA interrupt CR = 1;//PCA timer start run while(1);}
五、實(shí)驗(yàn)心得
本次實(shí)驗(yàn)中我學(xué)會(huì)用軟件來(lái)延時(shí)實(shí)現(xiàn)PWM的輸出,從而實(shí)現(xiàn)對(duì)電機(jī)的控制。
實(shí)驗(yàn)四基于ARM控制的博創(chuàng)平臺(tái)輪式機(jī)器人循跡蔽障功能
實(shí)驗(yàn)?zāi)康?/p>
了解NorthStar平臺(tái),并熟練使用此軟件完成小車的各種活動(dòng) 了解RobotServoTerminal機(jī)器人舵機(jī)調(diào)試系統(tǒng)并掌握使用 了解并且熟悉灰度傳感器循跡原理 實(shí)驗(yàn)材料
ARM控制器 灰度傳感器 紅外探測(cè)器 舵機(jī)電機(jī)等 實(shí)驗(yàn)內(nèi)容
小車硬件的組裝 蔽障功能的實(shí)現(xiàn) 循跡功能的實(shí)現(xiàn) 循跡功能的實(shí)現(xiàn) NorthStar循跡程序
#include “Apps/SystemTask.h” uint8 SERVO_MAPPING[4] = {1,2,3,4};int main(){ int lgray = 0;int rgray = 0;MFInit();MFInitServoMapping(&SERVO_MAPPING[0],4);MFSetPortDirect(0x00000FF8);MFSetServoMode(1,1);MFSetServoMode(2,1);MFSetServoMode(3,1);MFSetServoMode(4,1);while(1){ lgray = MFGetAD(0);rgray = MFGetAD(1);//右偏
if((lgray<=460)&&(rgray>=350)){ //左轉(zhuǎn)
MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,-512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,-512);MFServoAction();DelayMS(400);} else
{ //左偏
if((lgray>=460)&&(rgray<=350)){ //右轉(zhuǎn)
MFSetServoRotaSpd(1,512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,512);MFSetServoRotaSpd(4,512);MFServoAction();DelayMS(400);} else
{ //meipian if((lgray>=460)&&(rgray>=350)){ MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,512);MFServoAction();DelayMS(400);} else
{ MFSetServoRotaSpd(1,0);MFSetServoRotaSpd(2,0);MFSetServoRotaSpd(3,0);MFSetServoRotaSpd(4,0);MFServoAction();DelayMS(100);} } } } } 蔽障功能的實(shí)現(xiàn) 程序
#include “Apps/SystemTask.h” uint8 SERVO_MAPPING[5] = {1,2,3,4,5};int main(){ int io0 = 0;int io1 = 0;MFInit();MFInitServoMapping(&SERVO_MAPPING[0],5);MFSetPortDirect(0x00000FFC);MFSetServoMode(1,1);MFSetServoMode(2,1);MFSetServoMode(3,1);MFSetServoMode(4,1);MFSetServoMode(5,0);while(1){ io0 = MFGetDigiInput(0);io1 = MFGetDigiInput(1);if((io0==1)&&(io1==1)){ MFSetServoRotaSpd(1,1023);MFSetServoRotaSpd(2,-1023);MFSetServoRotaSpd(3,1023);MFSetServoRotaSpd(4,-1023);MFSetServoPos(5,512,512);MFServoAction();DelayMS(500);} else
{ if(io0==0){ //后退
MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,512);MFSetServoPos(5,512,512);MFServoAction();DelayMS(1000);//右轉(zhuǎn)
MFSetServoRotaSpd(1,512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,512);MFSetServoRotaSpd(4,512);MFSetServoPos(5,512,512);MFServoAction();DelayMS(2000);} else
{ //后退
MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,512);MFSetServoPos(5,512,512);MFServoAction();DelayMS(1000);//左轉(zhuǎn)
MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,-512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,-512);MFSetServoPos(5,512,512);MFServoAction();DelayMS(2000);} } } }
實(shí)驗(yàn)中遇到的問(wèn)題以及解決方案
1、NorthStar編程完成后下載時(shí)遇到的問(wèn)題
解決方案及拓展步驟(1)打開(kāi)NorthStar軟件
點(diǎn)擊幫助
(3)點(diǎn)擊幫助主題
(4)點(diǎn)開(kāi)附錄以及里邊的常見(jiàn)問(wèn)題及解決將出現(xiàn)一些列常見(jiàn)問(wèn)題
(5)點(diǎn)擊遇到的問(wèn)題,按照操作步驟即可解決
環(huán)境對(duì)灰度傳感器影響較大,賽道多次取點(diǎn)進(jìn)行傳感器灰度值測(cè)量,之后修改程序內(nèi)AD值條件。
(1)用NorthStar打開(kāi)循跡的程序
(2)打開(kāi)工具菜單下的查詢傳感器
出現(xiàn)傳感器頁(yè)面,調(diào)整好下載模式以及端口的設(shè)置,點(diǎn)擊啟動(dòng)服務(wù)
(4)完成之后調(diào)整好查詢數(shù)據(jù)模式電機(jī)查詢AD,會(huì)在相應(yīng)AD口內(nèi)看到數(shù)據(jù)的變化。(5)測(cè)完后取黑線與地面值的中間值調(diào)整if條件。
實(shí)驗(yàn)拓展 將紅外蔽障功能,以及灰度傳感器巡線功能同時(shí)裝在小車上,通過(guò)一個(gè)自制紅外開(kāi)關(guān)來(lái)控制小車的程序選擇。
程序
#include “Apps/SystemTask.h” uint8 SERVO_MAPPING[4] = {1,2,3,4};int main(){ int lgray = 0;int you = 0;int key = 0;int rgray = 0;int zuo = 0;MFInit();MFInitServoMapping(&SERVO_MAPPING[0],4);MFSetPortDirect(0x00000FF8);MFSetServoMode(1,1);MFSetServoMode(2,1);MFSetServoMode(3,1);MFSetServoMode(4,1);while(1){ MFGetDigiInput(0);if(key==0){ MFGetDigiInput(1);MFGetDigiInput(2);if((zuo==1)&&(you==1)){ //前進(jìn)
MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,512);MFServoAction();DelayMS(1000);} else
{ if(you==0){ //后退
MFSetServoRotaSpd(1,512);MFSetServoRotaSpd(2,-512);MFSetServoRotaSpd(3,512);MFSetServoRotaSpd(4,-512);MFServoAction();DelayMS(400);//左轉(zhuǎn)
MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,-512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,-512);MFServoAction();DelayMS(400);} else
{ //后退
MFSetServoRotaSpd(1,512);MFSetServoRotaSpd(2,-512);MFSetServoRotaSpd(3,512);MFSetServoRotaSpd(4,-512);MFServoAction();DelayMS(400);//右轉(zhuǎn)
MFSetServoRotaSpd(1,512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,512);MFSetServoRotaSpd(4,512);MFServoAction();DelayMS(400);} } } else
{ lgray = MFGetAD(0);rgray = MFGetAD(1);//右偏
if((lgray<=460)&&(rgray>=350)){ //左轉(zhuǎn)
MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,-512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,-512);MFServoAction();DelayMS(400);} else
{ //左偏
if((lgray>=460)&&(rgray<=350)){ //右轉(zhuǎn)
MFSetServoRotaSpd(1,512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,512);MFSetServoRotaSpd(4,512);MFServoAction();DelayMS(400);} else
{ //meipian if((lgray>=460)&&(rgray>=350)){ MFSetServoRotaSpd(1,-512);MFSetServoRotaSpd(2,512);MFSetServoRotaSpd(3,-512);MFSetServoRotaSpd(4,512);MFServoAction();DelayMS(400);} else
{ MFSetServoRotaSpd(1,0);MFSetServoRotaSpd(2,0);MFSetServoRotaSpd(3,0);MFSetServoRotaSpd(4,0);MFServoAction();DelayMS(100);} } } } } } 通過(guò)本次實(shí)驗(yàn)對(duì)NorthStar熟練掌握,進(jìn)而對(duì)今后使用博創(chuàng)平臺(tái)實(shí)現(xiàn)視覺(jué)系統(tǒng)等一系列功能掌握。
實(shí)驗(yàn)五 攝像頭實(shí)現(xiàn)輪式機(jī)器人電機(jī)控制系統(tǒng) 一.實(shí)驗(yàn)?zāi)康?/p>
1.了解OpenCv的使用方法,并以此為平臺(tái)實(shí)現(xiàn)基于OpenCv攝像頭巡線小車的制作 2.掌握基于HSV顏色模型的圖像閾值分割算法 3.使用OpenCv圖像去噪相關(guān)算法:膨脹腐蝕濾波等
4.掌握串口通訊,并實(shí)現(xiàn)PC機(jī)與Arduino以藍(lán)牙模塊為載體通訊 二.實(shí)驗(yàn)器材
OpenCv,HC-05主從一體藍(lán)牙模塊,Arduino,小車底盤,usb攝像頭實(shí)驗(yàn)內(nèi)容 三.實(shí)驗(yàn)內(nèi)容 1.HSV顏色模型
HSV(Hue-Saturation-Value),色相(H)是色彩的基本屬性,就是平常所說(shuō)的顏色名稱,如紅色,黃色等;飽和度(S)是色彩的純度,越高色彩越純,低則逐漸變灰;明度(V),指色彩的亮度。HSV以人類更熟悉的方式封裝了關(guān)于顏色的信息:“這是什么顏色?深淺如何?明暗如何?”
HSV把顏色描述為在圓柱坐標(biāo)系的點(diǎn),這個(gè)圓柱的中心軸取值為自底部的黑色到頂部的白色,而在它們中間是灰色;繞這個(gè)軸的角度對(duì)應(yīng)色相,取值范圍0—360°,到這個(gè)軸的距離對(duì)應(yīng)飽和度,取值范圍0.0—1.0,而沿這個(gè)軸的高度對(duì)應(yīng)亮度,取值范圍0(黑色)—1.0(白色)。
2.閾值分割策略
閾值化的基本思想是:給定一個(gè)數(shù)組和一個(gè)閾值,然后根據(jù)數(shù)組中的每個(gè)元素的值是低于還是高于閾值而進(jìn)行一些處理。: 檢查源圖像的每一個(gè)像素點(diǎn)的范圍。在下限和上限之間的像素點(diǎn),被置為255;否則置0。即感興趣區(qū)域?yàn)榘咨?,不感興趣區(qū)域全為黑色。
受光照影響,不同時(shí)刻表示同一顏色的空間模型取值不同。因此在圖像處理之前先手動(dòng)標(biāo)定圖像,把合適的H,S,V取值范圍輸出到文本文件里,供后續(xù)處理讀取。
3.圖像去噪
分割得到二值化圖像之后,可以很明顯看到圖中仍然有很多細(xì)微的點(diǎn)噪聲存在,而且目標(biāo)內(nèi)部出現(xiàn)空洞,周圍存在毛刺,所以需要對(duì)噪聲進(jìn)行進(jìn)一步處理,下面介紹濾出噪聲的常用方法。3.1膨脹
膨脹是將與物體接觸的所有背景點(diǎn)合并到該物體中,使邊界向外部擴(kuò)張的過(guò)程??梢杂脕?lái)填補(bǔ)物體中的空洞。
膨脹的算法:用3X3的結(jié)構(gòu)元素,掃描圖像的每一個(gè)像素;用結(jié)構(gòu)元素與其覆蓋的二值圖像做“與”操作;如果都為0,結(jié)果圖像的該像素為0,否則為1;結(jié)果使二值圖像擴(kuò)大一圈。
函數(shù)
這個(gè)函數(shù)膨脹源圖像,存儲(chǔ)結(jié)果到目標(biāo)圖像。
參數(shù)詳解:源圖像,圖像通道的數(shù)量是任意的,但圖像深度應(yīng)為CV_8U,CV_16U,CV_16S,CV_32F或CV_64F。目標(biāo)圖像,尺寸和類型與源圖像相同
膨脹操作核。若為NULL時(shí),表示是使用參考點(diǎn)位于中心3x3的核。一般使用函數(shù)配合參數(shù)使用。函數(shù)會(huì)返回指定形狀和尺寸的結(jié)構(gòu)元素(內(nèi)核矩陣)。其中函數(shù)的第一個(gè)參數(shù)表示內(nèi)核的形狀,如下: 矩形:MORPH_RECT 交叉形:MORPH_CROSS 橢圓形:MORPH_ELLIPSE 錨的位置,默認(rèn)值(-1,-1),表示錨位于中心 迭代使用erode()函數(shù)的次數(shù),默認(rèn)值為1 用于推斷圖像外部像素的某種邊界模式,默認(rèn)值:BORDER_DEFAULT 使用erode函數(shù)時(shí),一般我們只需要設(shè)置前三個(gè)參數(shù),后面四個(gè)參數(shù)都有默認(rèn)值。例:
3.2腐蝕
腐蝕是一種消除邊界點(diǎn),使邊界向內(nèi)收縮的過(guò)程??梢杂脕?lái)消除小而無(wú)意義的物體。
腐蝕的算法:用3x3結(jié)構(gòu)元素,掃描圖像的每一個(gè)像素;用結(jié)構(gòu)元素與其覆蓋的二值圖像做“與”操作;如果都為1,結(jié)果圖像該像素為1,否則為0;結(jié)果使二值圖像減小一圈。
4.串口通訊
串口通信(Serial Communications)的概念非常簡(jiǎn)單,串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte)的并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用另一根線接收數(shù)據(jù)。它很簡(jiǎn)單并且能夠?qū)崿F(xiàn)遠(yuǎn)距離通信。
串口進(jìn)行通信的方式有兩種:同步通信方式和異步通信方式。同步通信方式要求通信雙方以相同的時(shí)鐘頻率進(jìn)行,而且準(zhǔn)確協(xié)調(diào),通過(guò)共享一個(gè)單個(gè)時(shí)鐘或定時(shí)脈沖源保證發(fā)送方和接收方的準(zhǔn)確同步,效率較高;異步通信方式不要求雙方同步,收發(fā)方可采用各自的時(shí)鐘源,雙方遵循異步的通信協(xié)議,以字符為數(shù)據(jù)傳輸單位,發(fā)送方傳送字符的時(shí)間間隔不確定,發(fā)送效率比同步傳送效率低。4.1串口通訊過(guò)程
4.2串口通訊重要函數(shù)(1)
(2)DCB結(jié)構(gòu)包含了串口的各項(xiàng)參數(shù)設(shè)置,下面僅介紹幾個(gè)該結(jié)構(gòu)常用的變量 4.HC-05藍(lán)牙一體化模塊
HC-05 嵌入式藍(lán)牙串口通訊模塊(以下簡(jiǎn)稱模塊)具有兩種工作模式:命令響應(yīng)工作模式和自動(dòng)連接工作模式,在自動(dòng)連接工作模式下模塊又可分為主(Master)、從lave)和回環(huán)(Loopback)三種工作角色。當(dāng)模塊處于自動(dòng)連接工作模式時(shí),將自動(dòng)根據(jù)事先設(shè)定的方式連接的數(shù)據(jù)傳輸;當(dāng)模塊處于命令響應(yīng)工作模式時(shí)能執(zhí)行下述所有AT 命令,用戶可向模塊發(fā)送各種AT 指令,為模塊設(shè)定控制參數(shù)或發(fā)布控制命令。通過(guò)控制模塊外部引腳(PIO11)輸入電平,可以實(shí)現(xiàn)模塊工作狀態(tài)的動(dòng)態(tài)轉(zhuǎn)換。實(shí)驗(yàn)成果
四.實(shí)驗(yàn)心得
通過(guò)這個(gè)實(shí)驗(yàn)嘗試并學(xué)習(xí)了以前只聽(tīng)過(guò)沒(méi)做過(guò)的東西,在做的過(guò)程中遇到很多問(wèn)題,但都在與同學(xué)的討論下找到了解決方法。
在調(diào)試藍(lán)牙模塊時(shí)不能進(jìn)入AT模式,被這個(gè)問(wèn)題絆了兩個(gè)晚上;給電腦裝了藍(lán)牙驅(qū)動(dòng)后,卻不能連接到藍(lán)牙模塊,一直認(rèn)為是驅(qū)動(dòng)裝錯(cuò)了,后來(lái)用手機(jī)測(cè)試成功連接上了,意識(shí)到是電腦有問(wèn)題;
巡線時(shí)小車突然動(dòng)不了了,一開(kāi)始認(rèn)為是電機(jī)或驅(qū)動(dòng)壞了,后面才知道是因?yàn)榭刂品椒ú划?dāng)使電機(jī)在下次啟動(dòng)時(shí)進(jìn)入死區(qū),后來(lái)改進(jìn)為PWM控制; 這是非常有意義的一次實(shí)驗(yàn)課。
實(shí)驗(yàn)六 應(yīng)用卓越聯(lián)盟實(shí)驗(yàn)室設(shè)備進(jìn)行設(shè)計(jì)和實(shí)現(xiàn)作品說(shuō)明
1.Protell99SE的使用及電路板的雕刻 一.實(shí)驗(yàn)?zāi)康?/p>
1.了解Protell99se的使用方法,并以此為平臺(tái)設(shè)計(jì)電路板
2.了解將原理圖轉(zhuǎn)化為雕刻機(jī)所需的輸出格式,并運(yùn)用雕刻機(jī)制作出自己獨(dú)有的電路板 二.實(shí)驗(yàn)器材
Pretell99se設(shè)計(jì)軟件,電路原理圖,pcb電路板雕刻機(jī)等 三.實(shí)驗(yàn)內(nèi)容
將Protell99軟件安裝進(jìn)電腦 查看所給文件的電路圖
設(shè)計(jì)出自己組獨(dú)有的pcb電路板 將電路板雕刻出來(lái)
Protell99制作原理圖庫(kù)的方法
將元件庫(kù)文件和原理圖文件放在同一個(gè)設(shè)計(jì)中 在原理圖所在的設(shè)計(jì)數(shù)據(jù)庫(kù)文件夾下新建一個(gè)原理圖庫(kù)文件,取名為mylibrary。名字可任取。
打開(kāi)原理圖庫(kù)文件,默認(rèn)狀態(tài)下此庫(kù)文件里已經(jīng)存在一個(gè)名為component_1的元件 選擇繪圖工具框中的繪制矩形工具繪制元件的邊框(即繪制元件的符號(hào)或外形)
左鍵點(diǎn)擊繪圖工具欄里的繪制管腳圖標(biāo),按下Tab鍵進(jìn)入管腳屬性編輯對(duì)話框。1管腳名字為com,其他管腳名隱藏,管腳編號(hào)為1~9。
依次放置9個(gè)管腳,在放置管腳時(shí),管腳的一端有一個(gè)小黑點(diǎn),旋轉(zhuǎn)管腳使小黑點(diǎn)朝外 雙擊矩形方框進(jìn)行邊框?qū)傩栽O(shè)置。Border Width選擇SmallBorder Color選擇合適的顏色。用上述方法繪制8個(gè)電阻形狀的矩形框,放置在上面畫(huà)好的邊框里 點(diǎn)擊畫(huà)圖工具欄里的畫(huà)線工具,將畫(huà)好的電阻和管腳連接好。修改元件描述 保存后退出編輯。
當(dāng)所有的元件制作完成后,保存并關(guān)掉元件庫(kù)文件(2)單獨(dú)創(chuàng)建一個(gè)元件庫(kù)(倉(cāng)庫(kù)),注意這個(gè)元件庫(kù)還是Protel設(shè)計(jì)數(shù)據(jù)庫(kù)文件。
1)新建一個(gè)設(shè)計(jì),取名為“mylibrary”或者是“XX的庫(kù)文件”保存在某個(gè)地方,記住這個(gè)地址。這個(gè)庫(kù)可做為自己的專用庫(kù)文件。在以后繪制原理圖時(shí)只需把此庫(kù)添加進(jìn)去即可,以后也可以不斷地豐富此庫(kù)中的元件
2)在設(shè)計(jì)里新建一個(gè)原理圖庫(kù)文件,保存文件,給它起一個(gè)有特色又能反應(yīng)元件庫(kù)特點(diǎn)的名字。如“電阻類”,“插件類”,“AD轉(zhuǎn)換”等等。利用此法可建立若干個(gè)原理圖庫(kù)文件,將元件歸類存放
3)打開(kāi)某一類原理圖庫(kù)文件,在此文件中制作新元件,具體作法見(jiàn)上文。也可以從系統(tǒng)自帶的庫(kù)文件中拷貝元件,或者是從現(xiàn)有的原理圖中提取元件添加到自己的庫(kù)文件中 實(shí)驗(yàn)創(chuàng)新與思考
Protell99作為一個(gè)老版本的pcb設(shè)計(jì)軟件,在兼容性及漢化方面有許多不足,相比現(xiàn)今較火的AD系列的軟件操作起來(lái)也較難,但對(duì)于簡(jiǎn)單的pcb電路設(shè)計(jì),Protell系列還是不錯(cuò)的。對(duì)于某些電路而言,單面鍍銅的電路板無(wú)法滿足需求,因此,在學(xué)習(xí)課內(nèi)單面鍍銅電路板的設(shè)計(jì)基礎(chǔ)上應(yīng)再學(xué)習(xí)雙面鍍銅電路板的設(shè)計(jì),以滿足實(shí)際需要 2.3D打印機(jī)激光切割機(jī)機(jī)械臂的工作原理及實(shí)際應(yīng)用 機(jī)械臂的原理及其應(yīng)用 實(shí)驗(yàn)?zāi)康?/p>
了解機(jī)械臂的工作原理,操作過(guò)程以及在實(shí)際生產(chǎn)過(guò)程中的應(yīng)用 掌握機(jī)械臂的操作 實(shí)驗(yàn)器材
機(jī)械臂及其控制系統(tǒng),機(jī)械臂控制器等 三.實(shí)驗(yàn)內(nèi)容
1.了解機(jī)械臂的工作原理 2.了解機(jī)械臂的程序 3.操作機(jī)械臂進(jìn)行工作
實(shí)驗(yàn)原理
機(jī)器人空間描述和坐標(biāo)變換: 在一個(gè)三維空間中對(duì)兩個(gè)質(zhì)點(diǎn)的位置關(guān)系進(jìn)行描述,一般會(huì)用一個(gè)的位置矢量來(lái)表示。在笛卡爾坐標(biāo)系中,坐標(biāo)系中的任意質(zhì)點(diǎn)的位置都可以用一個(gè)3*1的位置矢量來(lái)表示該質(zhì)點(diǎn)到坐標(biāo)原點(diǎn)的位置關(guān)系。
機(jī)器人連桿的坐標(biāo)轉(zhuǎn)換
創(chuàng)新與思考
通過(guò)了解機(jī)械臂的運(yùn)行原理,知道可以通過(guò)矩陣進(jìn)行最佳位姿的求解,但在求解矩陣的過(guò)程中,我們會(huì)求得多解,如何選取運(yùn)動(dòng)方式是程序編寫(xiě)的重中之重,所以,根據(jù)需要,同時(shí)根據(jù)各種機(jī)器人自身機(jī)構(gòu)對(duì)運(yùn)動(dòng)轉(zhuǎn)動(dòng)角度的限制,以及機(jī)構(gòu)運(yùn)動(dòng)方式所產(chǎn)生的壓力角大小,機(jī)械轉(zhuǎn)動(dòng)效率等選取最優(yōu)解,進(jìn)行程序編寫(xiě)。理論上6R的工業(yè)機(jī)器人可進(jìn)行全方位運(yùn)動(dòng)工作,但由于機(jī)器本身,促使機(jī)器人在工作時(shí)會(huì)存在一些盲點(diǎn),故在應(yīng)用機(jī)器人的進(jìn)行工作的時(shí)候,應(yīng)盡量避免觸及這些機(jī)械盲點(diǎn),以求的效率最大化。3D打印技術(shù) 實(shí)驗(yàn)?zāi)康?/p>
了解3D打印技術(shù)的原理及其應(yīng)用
利用建模軟件創(chuàng)建模型,打印出樹(shù)脂梳 實(shí)驗(yàn)器材
3D打印機(jī),樹(shù)脂,MakerBot軟件等
實(shí)驗(yàn)原理
3D打印機(jī)原理其實(shí)是以一種數(shù)字模型文件為基礎(chǔ),運(yùn)用粉末狀金屬或塑料等可粘合材料,通過(guò)逐層打印的方式來(lái)構(gòu)造物體的技術(shù)。由于在3D打印機(jī)原理中把復(fù)雜的三維制造轉(zhuǎn)化為一系列二維制造的疊加,因而可以在不用模具和工具的條件下生成幾乎任意復(fù)雜的零部件,極大地提高了生產(chǎn)效率和制造柔性。
首先得通過(guò)計(jì)算機(jī)輔助設(shè)計(jì)(CAD)或計(jì)算機(jī)動(dòng)畫(huà)建模軟件建模,再將建成的三維模型“切片”成逐層的截面數(shù)據(jù),并把這些信息傳送到3D打印機(jī)上,3D打印機(jī)會(huì)把這些切片堆疊起來(lái),直到一個(gè)固態(tài)物體成型。打 3D機(jī)型者者
打印的過(guò)程是這樣的:先通過(guò)計(jì)算建模軟件建模,如果你有現(xiàn)成的模也可以,比如動(dòng)物模型、人物、或微縮建筑等等。然后通過(guò)SD卡或USB優(yōu)盤把它拷貝到3D打印機(jī)中,印原理:
進(jìn)行打印設(shè)置后,打印機(jī)就可以把它們打印出來(lái),其工作結(jié)構(gòu)分解圖如下:
思考與創(chuàng)新
3D打印技術(shù)作為一種新型便捷的生產(chǎn)技術(shù),雖然初見(jiàn)成效,但在很多領(lǐng)域仍存在問(wèn)題,比如說(shuō),對(duì)于打印所需的材料,如果所選材料熔點(diǎn)低,那么打印出來(lái)的產(chǎn)品必然剛性差,易折斷或變形,不利于高負(fù)荷的實(shí)際使用,但倘若熔點(diǎn)較高,必然對(duì)打印機(jī)的墨盒的要求提高,如若想正確打印,必然需要墨盒熔點(diǎn)更高于打印所需原材料,在工藝上的要求會(huì)更高,成本也會(huì)更大,甚至可能超過(guò)原有工業(yè)生產(chǎn)所需成本,這樣,3D打印技術(shù)就變得毫無(wú)意義。因此,為了使3D打印技術(shù)更加成熟,必須在以上兩點(diǎn)之間權(quán)衡,找到突破口。激光切割機(jī) 實(shí)驗(yàn)?zāi)康?/p>
了解激光切割機(jī)的原理
了解激光切割機(jī)與傳統(tǒng)切割技術(shù)相比的優(yōu)勢(shì) 激光切割機(jī)的實(shí)際應(yīng)用 實(shí)驗(yàn)儀器
激光切割機(jī),材料板等 實(shí)驗(yàn)原理 激光切割是將從激光器發(fā)射出的激光,經(jīng)光路系統(tǒng),聚焦成高功率密度的激光束。激光束照射到工件表面,使工件達(dá)到熔點(diǎn)或沸點(diǎn),同時(shí)與光束同軸的高壓氣體將熔化或氣化金屬吹走。隨著光束與工件相對(duì)位置的移動(dòng),最終使材料形成切縫,從而達(dá)到切割的目的。
激光切割加工是用不可見(jiàn)的光束代替了傳統(tǒng)的機(jī)械刀,具有精度高,切割快速,不局限于切割圖案限制,自動(dòng)排版節(jié)省材料,切口平滑,加工成本低等特點(diǎn),將逐漸改進(jìn)或取代于傳統(tǒng)的金屬切割工藝設(shè)備。激光刀頭的機(jī)械部分與工件無(wú)接觸,在工作中不會(huì)對(duì)工件表面造成劃傷;激光切割速度快,切口光滑平整,一般無(wú)需后續(xù)加工;切割熱影響區(qū)小,板材變形小,切縫窄(0.1mm~0.3mm);切口沒(méi)有機(jī)械應(yīng)力,無(wú)剪切毛刺;加工精度高,重復(fù)性好,不損傷材料表面;數(shù)控編程,可加工任意的平面圖,可以對(duì)幅面很大的整板切割,無(wú)需開(kāi)模具,經(jīng)濟(jì)省時(shí)。
智能工廠 實(shí)驗(yàn)?zāi)康?智能工廠原理 工廠接單
工廠在電腦終端接收訂單指令,并把訂單指令下達(dá)給各個(gè)工作區(qū)域,是整個(gè)工廠圍繞該訂單展開(kāi)生產(chǎn)工作
原料供給
通過(guò)機(jī)械臂從工廠倉(cāng)庫(kù)中提取原材料,倉(cāng)庫(kù)架采取單齒輪驅(qū)動(dòng)雙板雙齒條的方式,節(jié)約了倉(cāng)庫(kù)的空間加大了倉(cāng)庫(kù)的儲(chǔ)備量
機(jī)械臂通過(guò)空間坐標(biāo)抓取貨物,并將貨物放在循跡運(yùn)輸車中,進(jìn)行下一步工序
銑床加工
通過(guò)銑床等機(jī)械加工方法,得到生產(chǎn)工件
并利用裝載機(jī)械臂的小車將做好工件放入公差測(cè)量?jī)x進(jìn)行檢測(cè)
工件糾偏,裝載出庫(kù)
利用機(jī)器人視覺(jué)對(duì)圖像的處理,將工件放入指定位置,并用循跡小車將生產(chǎn)完成工件封裝出庫(kù)
創(chuàng)新與思考
智能工廠卻為工業(yè)4.0概念的產(chǎn)物,但這個(gè)工廠確實(shí)存在以下幾點(diǎn)問(wèn)題: 機(jī)械臂抓取貨物只能適用于低重量產(chǎn)品,對(duì)于質(zhì)量較大的產(chǎn)品并不適用。個(gè)人認(rèn)為應(yīng)采取液壓傳動(dòng)
循跡小車思路很好,但單線路的循跡線,很難滿足工作需要,應(yīng)將但循跡線改為一條主線路多通路與其共同連接的思路,如同鐵路軌道,可允許多輛小車在不沖突的條件下同時(shí)工作,以提高效率
缺少反饋設(shè)施,在加工過(guò)程中很容易產(chǎn)生誤差,尤其在高精度加工之中,如果一旦出現(xiàn)誤差卻沒(méi)能及時(shí)發(fā)現(xiàn),損失將是巨大的,應(yīng)在誤差檢測(cè)儀系統(tǒng)中設(shè)置反饋裝置,以防止出現(xiàn)較大誤差
第四篇:2011年機(jī)器人二車間總結(jié)報(bào)告
2011年機(jī)器人二車間總結(jié)報(bào)告
時(shí)光荏苒,光陰似箭,自二車間創(chuàng)辦以來(lái),已有半個(gè)年頭之久,從中經(jīng)歷了很多坎坷,也學(xué)到了很多東西,車間也一直在一個(gè)比較好的狀態(tài)下運(yùn)轉(zhuǎn)。機(jī)器人二車間成立于六月份,萬(wàn)事開(kāi)頭難,在這半年里終于體會(huì)到了作為一名管理者的艱辛和不易,同時(shí)也收獲了不少?!袄鄄⒖鞓?lè)著”是最好的總結(jié)。在這里,借此機(jī)會(huì)我對(duì)2011年的工作從以下幾個(gè)方面做下總結(jié)。
一、管理方面
首先是自身管理方面:作為一個(gè)優(yōu)秀的管理者,本身自己必須以身作則,車間要求的規(guī)章制度自己必須帶頭做好。所以在這半年中自身的不足也隨之暴漏無(wú)疑:
1、雖然年輕充滿干勁,但是經(jīng)驗(yàn)缺乏,在處理突發(fā)事件和一些新問(wèn)題上存在著較大的欠缺,而且還喜歡隨自己的意愿辦事。
2、對(duì)于線材的生產(chǎn)進(jìn)度狀況不能掌控,造成拖期、延
期想象
其次是員工管理方面:作為一個(gè)優(yōu)秀的管理者,自己必須要深入了解自己的下屬,包括他(她)的人品、性格、愛(ài)好、處事作風(fēng)、工作能力等諸多方面,針對(duì)不同性格、不同年齡段、不同能力的人應(yīng)該分別予以不同的管理方式、說(shuō)話語(yǔ)氣和工作任務(wù),做到人盡其才,物盡其用。同時(shí)要懂得關(guān)心自己的員工,真誠(chéng)的關(guān)心。當(dāng)他們犯錯(cuò)的時(shí)候,除了批評(píng)外還要多加鼓勵(lì),以及對(duì)其的信任,讓他(她)體會(huì)到領(lǐng)導(dǎo)層的關(guān)心與器重,讓他知道我們不但是上下級(jí)關(guān)系、同事關(guān)系,我們還是互相支持、關(guān)心的朋友關(guān)系。當(dāng)然,作為管理者,同樣要在員工面前樹(shù)立自己的威信。這種威信不是靠惡語(yǔ)批評(píng),也不是靠一味的做老好人樹(shù)立起來(lái)的。一個(gè)真正優(yōu)秀的管理者,是要讓自己的員工中的一大部分人說(shuō)你好,一小部分說(shuō)你壞,才能稱之為優(yōu)秀的管理者。因?yàn)楣芾碚卟皇菃T工,只要做好自己的分內(nèi)事就行了,我需要的是一個(gè)團(tuán)隊(duì)的力量,我需要說(shuō)我好的人的支持,我同樣需要說(shuō)我壞的人的執(zhí)行。因?yàn)榕笥押屯赂拍钌系膱?zhí)行力度的效果迥然不同,好壞恰恰能做到互補(bǔ)。譬如自己帶班以來(lái),從當(dāng)初的馬強(qiáng)在上班期間睡覺(jué),找機(jī)會(huì)偷懶,到現(xiàn)在已經(jīng)可以自己管理別人等等,委實(shí)給了我巨大壓力,深感管理是一門很深的學(xué)問(wèn),是一種藝術(shù)。
當(dāng)然,由于自己社會(huì)閱歷,經(jīng)驗(yàn)方面還有所欠缺,對(duì)于員工心理等各個(gè)方面拿捏的還不是很好,對(duì)某些員工的想法沒(méi)有深入的了解,從而導(dǎo)致車間偶爾的不和諧。譬如:在10月份趕鄭州I/O線的時(shí)候,由于自己的調(diào)配和管理不到位,導(dǎo)致倒裝線員工和鄭州I/O線員工不和諧,在外人看來(lái)就是倒裝線形成了一個(gè)小團(tuán)隊(duì),不服從我的管理。其實(shí)在隨后的調(diào)節(jié)中,倒裝線是每天都超額完成產(chǎn)量的。
二、取得的成績(jī)
現(xiàn)在二車間主要負(fù)責(zé)富士康機(jī)器人車間機(jī)構(gòu)的委外線材(倒裝線、編碼器線),和部分鄭州I/O線、軍規(guī)線。從車間開(kāi)辦到現(xiàn)在共完成倒裝線1400套(現(xiàn)還有120套在趕制)、三菱編碼線300套。軍規(guī)線和鄭州I/O線是由倆個(gè)車間共同完成,現(xiàn)軍規(guī)線共生產(chǎn)3850套,鄭州I/O線共生產(chǎn) 1150套。
三、日常
從開(kāi)始接手倒裝線到現(xiàn)在,大大小小的錯(cuò)誤都犯過(guò),主要是剪錯(cuò)線,物料丟失,產(chǎn)品沒(méi)有達(dá)到專業(yè)要求,后針對(duì)折現(xiàn)問(wèn)題我們做出了及時(shí)的改善和檢討。剪線上加上了剪線制度。對(duì)物料管理上進(jìn)行了統(tǒng)一專人管理。在技術(shù)上富士康每周都有留守學(xué)院的優(yōu)秀員工,對(duì)學(xué)生在作業(yè)手法上進(jìn)行了提高?,F(xiàn)在生產(chǎn)漸漸地上了正軌。富士康反饋的問(wèn)題也少了。
在平時(shí)紀(jì)律上我車間做的還是不到位,員工遲到比較頻繁,員工紀(jì)律意識(shí)較低,思想工作沒(méi)有做到位??记谥贫炔粔驀?yán)格?;厥走@一年,忙碌中滿載著收獲,收獲了自己的進(jìn)步,收獲了車間管理的經(jīng)驗(yàn),同時(shí)也收獲了學(xué)校同學(xué)的無(wú)私幫助,我相信,2011年的總結(jié)將會(huì)是2012年收獲進(jìn)步和輝煌的起點(diǎn)。相信自己會(huì)在2012飛得更高,更遠(yuǎn)
總結(jié)人:邢晨浩
李鑫亮
2011年12月30日
第五篇:雙足競(jìng)步機(jī)器人技術(shù)總結(jié)報(bào)告
編制單位:侏羅紀(jì)工作室作 者:侯兆棟 版 本:V0.1 發(fā)布日期:2010-8-20 審 核 人: 批 準(zhǔn) 人:
雙足競(jìng)步機(jī)器人技術(shù)總結(jié)報(bào)告
? 引言
2010年中國(guó)機(jī)器人大賽已經(jīng)結(jié)束,回顧整個(gè)比賽及賽前調(diào)試過(guò)程,我們遇到了很多問(wèn)題,下面就將我們遇到的問(wèn)題做一分析和總結(jié),并提出改進(jìn)方案,對(duì)我們以后的工作有所幫助。
? 遇到的問(wèn)題及原因分析
? 機(jī)器人穩(wěn)定性不好
機(jī)器人在走路的過(guò)程中不穩(wěn),比較晃。造成此問(wèn)題的原因有兩個(gè): 1.機(jī)器人高度過(guò)高。
由于我們用成型的U型套件,套件高度是固定的,我們必須將腿做成一定的高度才能保證腰翻下去不壓腳;下面兩個(gè)套件決定了腰的高度,所以總體下來(lái)我們的機(jī)器人高度比較高,導(dǎo)致機(jī)器人重心比較高,平衡性不好,造成不穩(wěn)定。2.步態(tài)設(shè)計(jì)不合理。
在動(dòng)作上需要6個(gè)舵機(jī)同時(shí)配合,要做到很協(xié)調(diào),還是很有難度的,某個(gè)舵機(jī)的角度,速度都會(huì)對(duì)整個(gè)機(jī)器人的行走造成影響,這也是造成機(jī)器人走路不穩(wěn)定的原因。? 舵機(jī)控制問(wèn)題
舵機(jī)控制原理
控制信號(hào)由接收機(jī)的通道進(jìn)入信號(hào)調(diào)制芯片,獲得直流偏置電壓。它內(nèi)部有一個(gè)基準(zhǔn)電路,產(chǎn)生周期為 20ms,寬度為1.5ms的基準(zhǔn)信號(hào),將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負(fù)輸出到電機(jī)驅(qū)動(dòng)芯片決定電機(jī)的正反轉(zhuǎn)。當(dāng)電機(jī)轉(zhuǎn)速一定時(shí),通過(guò)級(jí)聯(lián)減速齒輪帶動(dòng)電位器旋轉(zhuǎn),使得電壓差為0,電機(jī)停止轉(zhuǎn)動(dòng)。
電源線和地線用于提供舵機(jī)內(nèi)部的直流電機(jī)和控制線路所需的能源.電壓通常介于4~6V,一般取5V。注意,給舵機(jī)供電電源應(yīng)能提供足夠的功率。
控制線的輸入是一個(gè)寬度可調(diào)的周期性方波脈沖信號(hào),方波脈沖信號(hào)的周期為20 ms(即頻率為50 Hz)。當(dāng)方波的脈沖寬度改變時(shí),舵機(jī)轉(zhuǎn)軸的角度發(fā)生改變,角度變化與脈沖寬度的變化成正比。
? 上電機(jī)器人亂動(dòng)
問(wèn)題在于上電程序初始化時(shí),沒(méi)有給出一個(gè)確定的值來(lái)產(chǎn)生一個(gè)確定的脈沖,脈沖給舵機(jī)后,舵機(jī)狀態(tài)不定,就出現(xiàn)了亂動(dòng)的現(xiàn)象。? 舵機(jī)抖動(dòng)
在調(diào)試過(guò)程中,舵機(jī)出現(xiàn)抖舵的問(wèn)題,主要原因有:
1、控制板供電電源電壓不足
控制板供電電源電壓不足,引起芯片電源電壓不穩(wěn)定,導(dǎo)致輸出脈沖抖動(dòng),測(cè)得當(dāng)供電電壓降低到5V以下經(jīng)過(guò)78M05穩(wěn)壓,再經(jīng)過(guò)ASM1117穩(wěn)壓后,輸出脈沖高電平電壓再2.5V左右,是一不可靠的高電平,輸入舵機(jī)控制電路后,輸出的直流偏置電壓不準(zhǔn)確,導(dǎo)致舵機(jī)抖動(dòng)。
2、脈沖精度不夠
很多舵機(jī)的位置等級(jí)有1024個(gè),如果舵機(jī)的有效角度范圍為180度的話,其控制的角度精度是可以達(dá)到180/1024度,約0.18度,從時(shí)間上看其實(shí)要求的脈寬控制精度為2000/1024us,約2us。
此次為節(jié)省芯片資源,先將時(shí)鐘進(jìn)行一次分頻,再拿分頻產(chǎn)生的時(shí)鐘來(lái)控制脈沖的時(shí)基計(jì)數(shù)器和步進(jìn)計(jì)數(shù)器,這樣,每個(gè)計(jì)數(shù)器的計(jì)數(shù)值變小,節(jié)省了一定的資源,但在控制精度上有所下降,控制板產(chǎn)生的脈沖精度為:
脈沖時(shí)基計(jì)數(shù)值為:1600;步進(jìn)計(jì)數(shù)值為:1或2; 則: 脈沖精度為1/1600 * 20 ms = 12.5 us 與舵機(jī)的要求精度相差很大,由于模擬舵機(jī)的無(wú)反應(yīng)區(qū)比較大,當(dāng)以較低精度的脈沖來(lái)控制舵機(jī)時(shí),在某個(gè)時(shí)刻舵機(jī)狀態(tài)不定就會(huì)出現(xiàn)抖舵現(xiàn)象。
? 燒電路板
電路板原理圖如下:
此原理圖比較簡(jiǎn)單,沒(méi)有什么原理性的東西,也沒(méi)有做隔離和保護(hù),電源模塊有兩路供電,一路經(jīng)過(guò)開(kāi)關(guān)后直接給舵機(jī)供電,另一路經(jīng)過(guò)兩級(jí)穩(wěn)壓輸出3.3V電壓,滿足EPM1270的供電需求;復(fù)位是直接通過(guò)一電阻拉到地上,進(jìn)行低電平復(fù)位;時(shí)鐘模塊是一有源晶振,接上電源后就可以起振;其他都是接口。
在調(diào)試過(guò)程中,有一段時(shí)間,老燒電路板,每次燒的都是CPLD芯片,從CPLD手冊(cè)上查得:
芯片3.3V供電時(shí),I/O口的單端輸出電壓為3.3V
3.3V供電時(shí),輸出高電平電流為16mA,輸出低電平電流為8 mA;由以上資料分析,燒板子的原因可能是: 1.電平不匹配。
CPLD輸出電平電壓為3.3V,而舵機(jī)需要的為TTL電平,由于外部再?zèng)]有加驅(qū)動(dòng)電路,這樣CPLD的I/O端口驅(qū)動(dòng)能力有限,當(dāng)同時(shí)有幾個(gè)舵機(jī)轉(zhuǎn)時(shí)或者舵機(jī)轉(zhuǎn)的角度比較大時(shí)負(fù)載過(guò)重,導(dǎo)致CPLD燒壞。
2.電流回流和尖峰脈沖
舵機(jī)中有一直流電機(jī),當(dāng)直流電機(jī)轉(zhuǎn)的時(shí)候,自身也會(huì)產(chǎn)生電流,若多個(gè)舵機(jī)同時(shí)轉(zhuǎn),且轉(zhuǎn)的角度比較大時(shí),各舵機(jī)自身產(chǎn)生的電流匯集到一起應(yīng)該是表較大的,若電流倒流入電路板,電路板可能因電流過(guò)大而燒壞;另一點(diǎn)就是尖峰脈沖,舵機(jī)在轉(zhuǎn)的過(guò)程中若產(chǎn)生尖峰脈沖,倒灌入電路板也可能因電流過(guò)大而燒壞芯片。
這應(yīng)該是此次電路板燒的主要原因。3.電路板制作工藝
在刻PCB板時(shí),板子阻焊做的不好,在焊接的過(guò)程中,容易在電路板上留下焊錫渣,如果掉入芯片兩引腳之間,也可能引起短路,導(dǎo)致電路板燒壞。? 解決方案
? 機(jī)器人穩(wěn)定性解決方案
結(jié)構(gòu)
對(duì)機(jī)器人整體結(jié)構(gòu)應(yīng)該在現(xiàn)有基礎(chǔ)上加以改進(jìn),比如在機(jī)器人高度上,以及腰部;對(duì)于U型套件,自己做,用AutoCAD設(shè)計(jì)出機(jī)器人結(jié)構(gòu)圖、套件圖,拿到機(jī)床去加工,這樣能保證套件精度,和結(jié)構(gòu)的合理性,將機(jī)器人結(jié)構(gòu)對(duì)研究帶來(lái)的影響減到最小。? 步態(tài)設(shè)計(jì)
對(duì)機(jī)器人走路的步態(tài)進(jìn)行更合理的設(shè)計(jì),保證走路過(guò)程中的平穩(wěn)。
? 舵機(jī)控制解決方案
上電亂動(dòng)
在上電程序初始化時(shí)應(yīng)該給舵機(jī)一個(gè)確定的脈沖,而且此狀態(tài)持續(xù)時(shí)間應(yīng)稍長(zhǎng),問(wèn)題就會(huì)得到解決。? 舵機(jī)抖動(dòng)
首先,保證電源電量充足,電壓保持穩(wěn)定,給芯片一個(gè)穩(wěn)定的電壓,保證輸出脈沖的穩(wěn)定性;其次,增加脈沖精度,即脈沖寬度的步進(jìn)不要太大,這樣既能精確的控制舵機(jī),又能避免舵機(jī)的抖動(dòng);另外,可以在后端加一脈沖整形電路,可以濾除毛刺等脈沖。
? 電路板解決方案
電平不匹配問(wèn)題。
對(duì)于此問(wèn)題,可在后端加一電平轉(zhuǎn)換芯片,增強(qiáng)驅(qū)動(dòng)能力,保證I/O口有足夠的能力來(lái)驅(qū)動(dòng)舵機(jī)。? 電流回流和尖峰脈沖
方案一:加電容吸收
在舵機(jī)前端加一電容來(lái)吸收尖峰脈沖,但此方法經(jīng)過(guò)實(shí)際驗(yàn)證不可行。加電容后,從I/O口輸出的脈沖被電容吸收了,舵機(jī)不轉(zhuǎn)。
方案二:光電隔離 + 整形
為了防止干擾,舵機(jī)控制信號(hào)和驅(qū)動(dòng)電路應(yīng)光耦光電隔離, 將信號(hào)隔開(kāi),避免舵機(jī)轉(zhuǎn)動(dòng)對(duì)控制板的影響。
通過(guò)隔離出來(lái)的控制信號(hào), 還必須經(jīng)過(guò)整形以消除毛刺, 增加信號(hào)的穩(wěn)定性, 提高信號(hào)的輸出電流。整形可采用施密特觸發(fā)器,施密特觸發(fā)器是脈沖波形變換中經(jīng)常使用的一種電路,它是具有滯后特性的數(shù)字傳輸門,且受電源限制,可對(duì)輸入波形進(jìn)行變換和整形;另外,還可以采用通過(guò)比較器整形的方法來(lái)消除毛刺比如用LM324,LM393等。? 電路板制作工藝
在今后做板的時(shí)候應(yīng)該加強(qiáng)阻焊和助焊這兩道工序,能保證焊接時(shí)不出現(xiàn)板子上有雜物而導(dǎo)致短路的情況;在板子焊好后,在引腳密集的芯片處采取一些措施,如涂上硅膠或者蠟,以防短路。
? 總結(jié)
本文針對(duì)此次比賽中出現(xiàn)的問(wèn)題,進(jìn)行原因分析,并提出解決辦法,為以后的研究提供一個(gè)參考。針對(duì)出現(xiàn)的問(wèn)題,具體解決方案需在今后的研究中結(jié)合實(shí)際情況來(lái)確定。