智能機(jī)器人保姆
2.3.2 視頻設(shè)計
視頻采用的是已經(jīng)集成的模塊,其接線圖如下圖10所示:
圖10 視頻接線圖
設(shè)計中為了能夠提供很好的視頻效果,還專門設(shè)計了照明燈。其設(shè)計電路圖如圖11所示:
圖11 照明電路圖
同樣,為了使用者很好的視覺效果,攝像頭部分設(shè)計了移動云臺。攝像頭云臺的作用是通過遙控,控制云臺的兩個電機(jī)的轉(zhuǎn)動,帶動攝像頭運(yùn)動,從而使得操作者能更好的觀察平臺端周圍的環(huán)境,獲得更多的信息,也能在一定程度上消除視覺死角,對機(jī)械手的運(yùn)動操作更加方便。云臺的硬件如圖12所示,兩個小型直流減速電機(jī)成90度安裝,電機(jī)1的正反轉(zhuǎn)帶動攝像頭左右轉(zhuǎn)動,使攝像頭獲得可調(diào)的水平視角,電機(jī)2的正反轉(zhuǎn)帶動攝像頭的俯仰角度發(fā)生變化,使攝像頭獲得可調(diào)的俯仰視角,電機(jī)的控制和手臂驅(qū)動電機(jī)的控制方法和電路是一樣的。
圖12 云臺設(shè)計示意圖
2.3.3 智能機(jī)器人軟件設(shè)計
本設(shè)計采用結(jié)構(gòu)化和模塊化的編程思想,二者相輔相成實(shí)現(xiàn)各模塊間的連接,各個模塊之間程序保持獨(dú)立,模塊之間通過入口參數(shù)和出口參數(shù)聯(lián)系,這樣有利于程序的調(diào)試與修改。
遙控端主程序設(shè)計
遙控端的主程序的任務(wù)是采集當(dāng)前操作者的操作指令,對數(shù)據(jù)處理并發(fā)送給小車端,主程序完成遙控系統(tǒng)的初始化,AD轉(zhuǎn)換器初始化,串行數(shù)據(jù)端口初始化,IO口初始化,終端服務(wù)程序初始化,遙控端主程序流程圖如圖13所示。
串型數(shù)據(jù)傳輸程序
在遙控端,數(shù)據(jù)完成采集之后,需要無線發(fā)送給平臺端,作為控制信號來遙控平臺端的各個執(zhí)行機(jī)構(gòu)完成操縱者的指令,單片機(jī)自帶兩個串行數(shù)據(jù)口,數(shù)據(jù)的傳輸使用到了單片機(jī)的串口0,將采集到的數(shù)據(jù)通過串行端口發(fā)送給無線收發(fā)模塊,模塊在接收到數(shù)據(jù)后,會自動的將數(shù)據(jù)轉(zhuǎn)存之后按照設(shè)定的波特率發(fā)送給接受端,接收端在接收到數(shù)據(jù)后會返回一個值給發(fā)送端,作為發(fā)確認(rèn)接收和送下一數(shù)據(jù)的信號,這個過程由無線收發(fā)模塊自動完成。程序設(shè)計流程圖如圖14所示:
圖14串行數(shù)據(jù)發(fā)送程序流程圖
機(jī)械手控制程序設(shè)計
機(jī)械手的控制是通過分別控制5個舵機(jī)來控制的,在機(jī)械手控制程序中,根據(jù)舵機(jī)的控制原理,編程使得單片機(jī)能根據(jù)串口得到的遙控數(shù)據(jù),計算出控制舵機(jī)的PWM波的占空比,并輸出這個占空比,由此來控制電機(jī)。程序設(shè)計框圖如圖15所示:
平臺端驅(qū)動程序設(shè)計
平臺端的驅(qū)動電機(jī)采用12V電壓供電的直流減速電機(jī),電機(jī)控制信號通過光電隔離器,加載在LM298芯片上,實(shí)現(xiàn)單片機(jī)對電機(jī)的控制,對電機(jī)的控制也采用控制PWM波的占空比方式。程序設(shè)計框圖如圖16所示:
圖16 平臺驅(qū)動電機(jī)控制程序流程圖
總結(jié)
本次設(shè)計在開始采用的是模塊設(shè)計的思想,在設(shè)計過程遇到了不少的問題。同時最后沒有能夠最后完成所有模塊的組裝調(diào)試。遇到的主要問題有:
肌電檢測不準(zhǔn)確,通過本文設(shè)計的電路和軟件檢測肌電信號很不準(zhǔn)確,主要是由于設(shè)計原理過于簡單,所有器件誤差大,同時軟件上沒有很好的處理。從而導(dǎo)致機(jī)器人的控制部分沒有得到很好的解決,因此在機(jī)器人設(shè)計部分我們只有采用電位器的方式來進(jìn)行調(diào)試。
在對機(jī)械手硬件制作的時候,先測試了用一塊單片機(jī)采集遙控臂上的電位器電壓信號,采用同一塊單片機(jī)的定時器B輸出PWM波來控制機(jī)械手,這個過程實(shí)現(xiàn)起來沒有太大的問題,但后當(dāng)用一塊單片機(jī)A采集遙控信號,并通過無線模塊將數(shù)據(jù)發(fā)送至另一塊單片機(jī)B,單片機(jī)B根據(jù)接收到的數(shù)據(jù)產(chǎn)生PWM波來控制機(jī)械手,這時出現(xiàn)機(jī)械手控制失靈甚至失效的問題,從理論上來講,只要數(shù)據(jù)一致,定時器B產(chǎn)生的PWM波一致,就不會存在這個問題,但是在實(shí)際測試中結(jié)果卻不如同理論分析結(jié)果。
在對機(jī)器人軟件設(shè)計上很多BUG沒有處理的很好,比如機(jī)器人在得到控制命令后會有誤操作的情況,這是由于控制命令發(fā)來后,由于數(shù)據(jù)量相對較大,就造成了誤判的產(chǎn)生。同時在舵機(jī)的設(shè)計上沒有很好的硬件設(shè)計,有些時候給一個小幅度動作信號,但是手臂運(yùn)動幅度很大。
評論