黃建杰 紀(jì)金燦 萬偉鋒 許錦標(biāo)(廣東工業(yè)大學(xué),廣東廣州 510000)
智能炒菜機(jī)器人中的電機(jī)控制系統(tǒng)設(shè)計(jì)
黃建杰紀(jì)金燦萬偉鋒許錦標(biāo)
(廣東工業(yè)大學(xué),廣東廣州510000)
針對(duì)智能炒菜機(jī)器人中直流電機(jī)的正反轉(zhuǎn)控制及速度調(diào)節(jié),提出可行方案;并基于絕對(duì)值編碼器,設(shè)計(jì)電機(jī)的位置檢測(cè)系統(tǒng)。炒菜機(jī)器人的下位機(jī)執(zhí)行機(jī)構(gòu)主要分為火候控制和動(dòng)作控制兩個(gè)模塊,動(dòng)作由直流電機(jī)實(shí)現(xiàn),本文主要介紹炒菜機(jī)器人的電機(jī)控制模塊,分動(dòng)作控制與位置檢測(cè)兩部分。
智能炒菜機(jī)器人直流電機(jī)絕對(duì)值編碼器
圖1 電機(jī)正反轉(zhuǎn)控制電路
圖2 基于L298N的電機(jī)正反轉(zhuǎn)控制電路
本項(xiàng)目中的智能炒菜機(jī)器人是一臺(tái)可編程控的中式菜肴烹飪機(jī)器,能夠支持vmmda1.0通用菜譜指令。用戶可以直接調(diào)用機(jī)器內(nèi)部數(shù)據(jù)庫中存儲(chǔ)的大量中式菜肴菜譜程序,也可以通過網(wǎng)絡(luò)接收外部的菜譜程序,還可以根據(jù)喜好自行編寫和修改菜譜程序。炒菜機(jī)器人CPU對(duì)菜譜程序進(jìn)行解讀,并控制執(zhí)行機(jī)構(gòu)作出響應(yīng),使炒菜機(jī)器人具備了自動(dòng)加熱、下料、翻炒、調(diào)味、裝盤、出菜、洗鍋等功能。
圖3 編碼器輸出電路
表1 L298N控制方式及直流電機(jī)狀態(tài)表
表2 光洋TRD-NA1024NW絕對(duì)值編碼器接線表
炒菜機(jī)器人在使用過程中的主要機(jī)械動(dòng)作有兩個(gè):一是各部件的運(yùn)動(dòng)及復(fù)位,這涉及到電機(jī)的正反轉(zhuǎn)控制;二是不同的菜式翻炒的頻率不同,這涉及到電機(jī)速度的調(diào)節(jié)。
1.1電機(jī)正反轉(zhuǎn)控制方案
直流電機(jī)一般有兩個(gè)端口,當(dāng)一個(gè)端口接工作電壓另一個(gè)端口接地時(shí),電機(jī)正轉(zhuǎn),反之則電機(jī)反轉(zhuǎn)??赏ㄟ^圖1 所示電路來實(shí)現(xiàn)對(duì)電機(jī)正反轉(zhuǎn)的控制。
如圖1,當(dāng)Input1輸入高電平,Iuput2輸入低電平時(shí),光電耦合開關(guān)U1閉合,則三極管Q1截止,Q3導(dǎo)通,電機(jī)A端接地;U2斷開,Q2導(dǎo)通,Q4截止,電機(jī)B端接工作電壓。因此電機(jī)反轉(zhuǎn)。當(dāng)Input1輸入低電平,Iuput2輸入高電平時(shí),U1斷開,則三極管Q1導(dǎo)通,Q3截止,電機(jī)A端接工作電壓;U2閉合,Q2截止,Q4導(dǎo)通,電機(jī)B端接地。因此電機(jī)正轉(zhuǎn)。
還可以使用電機(jī)驅(qū)動(dòng)芯片來控制電機(jī)的正反轉(zhuǎn),比如ST公司生產(chǎn)的L298N。圖2 是基于L298N的電機(jī)正反轉(zhuǎn)控制電路。
L298N可控制兩臺(tái)直流電機(jī),其中IN1、IN2、OUT1、OU2、ENA為第一組引腳,IN3、IN4、OUT3、OU4、ENB為第二組引腳??刂品绞郊爸绷麟姍C(jī)的狀態(tài)對(duì)應(yīng)如表1 所示。
1.2電機(jī)速度調(diào)節(jié)方案
直流電機(jī)的速度調(diào)節(jié)可采用由單片機(jī)產(chǎn)生的脈沖寬度調(diào)制(PWM)信號(hào)。在圖1 的方案中,Input1和Input2各接一個(gè)PWM信號(hào)源,分別為PWM1和PWM2。若要電機(jī)正轉(zhuǎn),則PWM1開啟,PWM2設(shè)為最小值(或?qū)⑵潢P(guān)閉,操作引腳為低電平),由PWM1來對(duì)電機(jī)調(diào)速。若要電機(jī)反轉(zhuǎn),則PWM1設(shè)為最小值(或?qū)⑵潢P(guān)閉,操作引腳為低電平),PWM2開啟,由PWM2來對(duì)電機(jī)調(diào)速。在圖2 的方案中,ENA和ENB可分別連接兩個(gè)PWM信號(hào)源,控制兩臺(tái)直流電機(jī)。針對(duì)炒菜機(jī)器人中所使用的PIC16系列單片機(jī),PWM模塊的設(shè)置程序如下:
void PWM1_Init()
{
TRISC2=0; //脈寬調(diào)制輸出引腳,設(shè)置為輸出。PR2=0xFF; //脈寬調(diào)制波形的周期。
CCPRIL=0x7F; //脈寬調(diào)制波形的占空比。
CCP1CON=0x3C; //CCP1模塊工作在PWM模式,占空因數(shù)低兩位為11。
T2CON=0x04; //打開TMR2,且前后分頻值為1:1,同時(shí)開始輸出PWM。
CCP1IE=0; //關(guān)中斷。}
在智能炒菜機(jī)器人的控制系統(tǒng)中,各部件會(huì)響應(yīng)上位機(jī)發(fā)來的指令,做出翻轉(zhuǎn)、擺動(dòng)、平移等動(dòng)作。每一個(gè)動(dòng)作的幅度都是有具體要求的,同時(shí)也應(yīng)該保證機(jī)器安全運(yùn)行,因此,需要引入電機(jī)位置檢測(cè)系統(tǒng)。
2.1絕對(duì)值編碼器
電機(jī)的位置可通過旋轉(zhuǎn)編碼器來檢測(cè),本項(xiàng)目中采用了光洋公司生產(chǎn)的1024線絕對(duì)值光電編碼器,型號(hào)為TRD-NA1024NW。其引腳接線要求如表2所示。
本型號(hào)編碼器有10根輸出引腳,可向單片機(jī)傳送一組十位格雷碼。電機(jī)的軸承與編碼器的軸承按一定標(biāo)準(zhǔn)通過齒輪連接,因此,炒菜機(jī)器人每一部件的動(dòng)作幅度都可以被1024等分,每一刻度都對(duì)應(yīng)一個(gè)唯一的十位格雷碼,上位機(jī)可通過這個(gè)格雷碼來確定電機(jī)的位置。
2.2格雷碼
在一組數(shù)的編碼中,若任意兩個(gè)相鄰的代碼只有一位二進(jìn)制數(shù)不同,則稱這種編碼為格雷碼。在實(shí)際電路中,多位狀態(tài)的變化不可能絕對(duì)同時(shí)發(fā)生,容易出現(xiàn)讀數(shù)錯(cuò)誤,因此絕對(duì)值編碼器要采用格雷碼。上位機(jī)接收到格雷碼后,要將其轉(zhuǎn)換為二進(jìn)制數(shù),轉(zhuǎn)換公式為:Bi=Gi⊕Bi+1,(n-1≥i≥0)
B為二進(jìn)制數(shù),G為格雷碼。轉(zhuǎn)換公式含義為,從格雷碼的左邊第二位Gn-1起,將每位Gi與其左邊一位Gi+1解碼后的值Bi+1異或,作為該位解碼后的值Bi(取初始最高位Bn為0)。因此,可編寫轉(zhuǎn)換程序如下:
unsigned int GrayToBinary(unsigned int g)
{
unsigned int b;
while(g=g>>1)
b=b^g;
return b;
}
2.3輸出電路
本型號(hào)編碼器的輸出形式為集電極開路輸出,直接連接單片機(jī)引腳時(shí)輸出電平不確定,因此必須接5V電源,且輸出線到5V電源之間接一個(gè)1K~4.7K的上拉電阻,如圖3 所示。
智能炒菜機(jī)器人在運(yùn)行過程中需要作出下料、翻炒、調(diào)味、裝盤、出菜、洗鍋等動(dòng)作,這些動(dòng)作的實(shí)現(xiàn)都離不開電機(jī)的控制與檢測(cè)。本文中針對(duì)直流電機(jī)的控制與調(diào)速提出了兩個(gè)可行的方案,也提出了一個(gè)基于絕對(duì)值光電編碼器的電機(jī)位置檢測(cè)方案。
[1]許錦標(biāo),何光.可編程控智能炒菜機(jī):中國,CN201310064095.9[P].2013-6-5.
[2]庹朝永.基于單片機(jī)的直流電機(jī)PWM調(diào)速系統(tǒng)設(shè)計(jì)與開發(fā)[J].煤炭技術(shù),2011(6):62-63.
[3]張紅娟,李維.基于PIC單片機(jī)的直流電機(jī)PWM調(diào)速系統(tǒng)[J].機(jī)電工程,2005(2):10-12.
[4]韓軍,周鏡平.基于PIC單片機(jī)的直流電機(jī)控制器研究[J].制造業(yè)自動(dòng)化,2011(2):147-149.
[5]馮友誼,程軍.絕對(duì)式編碼器編碼碼制的設(shè)計(jì)[J].山西電子技術(shù),2008(1):43-44.
[6]李君成.格雷碼(Gray)和二進(jìn)制碼的快速轉(zhuǎn)換方法[J].安徽廣播電視大學(xué)學(xué)報(bào),2001(3):85-87.
positive control and speed regulation for DC motor intelligent cooking robot, and put forward feasible scheme; and based on the absolute value encoder, position detection system design of the motor. The lower position machine cooking robot actuator mainly consists of a fire control and motion control of two modules, the realization of the action by the DC motor, this paper mainly introduces the motor control module cooking robot, is divided into two parts in motor control and position detection.
intelligent cooking robot DC motor absolute encoder