關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 多通道舵機(jī)控制器設(shè)計(jì)

多通道舵機(jī)控制器設(shè)計(jì)

作者: 時(shí)間:2011-01-20 來源:網(wǎng)絡(luò) 收藏


本文的設(shè)計(jì)中,采用P1口作為舵機(jī)信號(hào)輸出控制端口,分別對(duì)應(yīng)CH1~CH8通道,在晶振為12 MHz,采用定時(shí)器方式1工作方式。
舵機(jī)軟件控制分為兩個(gè)部分,即主程序和中斷服務(wù)程序。主程序完成定時(shí)器初始化、串口信令解析、舵機(jī)位置刷新的工作。設(shè)置各通道序號(hào)為i,當(dāng)前定時(shí)器脈寬定時(shí)為Time,Tab[i]為各通道最新定時(shí)值。定時(shí)器初始化進(jìn)行定時(shí)器工作模式及初值設(shè)置,各舵機(jī)位置初始化使所有舵機(jī)的位置定在0°的位置,使舵機(jī)處于等待指令的狀態(tài)。串口信令程序?qū)⒔邮盏降闹噶罱馕?,并隨時(shí)提取信令中各通道舵機(jī)的最新值。舵機(jī)位置刷新程序?qū)崟r(shí)計(jì)算最新舵量并修改每個(gè)通道的定時(shí)值Tab[i],供定制中斷服務(wù)程序調(diào)用。中斷程序流程圖如圖5所示。
中斷復(fù)位程序依次修改各個(gè)通道對(duì)應(yīng)I/0口的輸出電平,并依次加載下一通道的定時(shí)器計(jì)數(shù)值,通道號(hào)計(jì)數(shù)指針累加。當(dāng)計(jì)數(shù)指針為8時(shí)表明各通道輸出結(jié)束,剩余時(shí)間I/O口全部置0,下一輪循環(huán)開始。

3 串行通信協(xié)議的設(shè)計(jì)
為了滿足上位機(jī)對(duì)舵機(jī)的實(shí)時(shí)控制,可以設(shè)計(jì)一個(gè)簡單通用的控制協(xié)議。從便于輸出控制的角度來考慮,可以設(shè)置單通道控制和多通道控制兩個(gè)信令,采用二進(jìn)制命令行格式,固定幀長。
本文采用基于短幀的協(xié)議設(shè)計(jì)思想,每個(gè)舵機(jī)動(dòng)作對(duì)應(yīng)的控制信號(hào)是一幀一幀發(fā)送的,動(dòng)作的分解和步長由功能強(qiáng)大的上位機(jī)完成,而下位機(jī)只負(fù)責(zé)完成對(duì)應(yīng)的偏轉(zhuǎn)角度執(zhí)行。一個(gè)標(biāo)準(zhǔn)的串行通信短幀包含幀首、數(shù)據(jù)和幀尾幾部分,每個(gè)部分可以根據(jù)實(shí)際需要定義。
(1)幀首,表示本數(shù)據(jù)幀的開始,用于數(shù)據(jù)幀的同步和控制的類型屬于串口通信協(xié)議,并為下位機(jī)是否接收此數(shù)據(jù)幀的標(biāo)志。一般可以設(shè)0xFE為單通道控制幀,0xFF為多通道控制幀。
(2)數(shù)據(jù),表示上位機(jī)通過串口要控制的舵機(jī)輸出通道號(hào)以及通道所對(duì)應(yīng)的舵量偏轉(zhuǎn)值。
(3)幀尾,表示此幀信號(hào)的結(jié)束,一般可以用0xF0表示。
單通道控制信令較為簡單,如圖6所示,其幀首為0xFE,CHn表示該幀所控制的通道號(hào),Dn則表示所控制的通道對(duì)應(yīng)的舵量偏轉(zhuǎn)值,0xF0作為該幀結(jié)束的標(biāo)志。例如,當(dāng)幀數(shù)據(jù)為“FE 01 5A F0”時(shí),表示CH1通道信號(hào)置于中位(90°=0x5A)。
c.JPG

多通道控制信令格式如圖7所示,幀首為0xFF,其控制命令的數(shù)據(jù)長度可以每個(gè)字節(jié)對(duì)應(yīng)一個(gè)通道,±90°可以用數(shù)字0~180表示,對(duì)應(yīng)二進(jìn)制數(shù)為0x00~0XB4。例如,當(dāng)幀數(shù)據(jù)為“FF 5A 5A 5A 5A 78 78 3C 3C FO”時(shí),則表示CH1~CH4通道都居中,CH5,CH6為+30°;CH7,CH8為-30°。

4 結(jié)語
本文所提出的多路舵機(jī)的設(shè)計(jì)方法是以微處理器為核心,利用定時(shí)器中斷實(shí)現(xiàn)了對(duì)多路舵機(jī)的控制信號(hào)輸出,并可以實(shí)現(xiàn)上位機(jī)與下位機(jī)的通信控制,可適用于機(jī)器人、無人機(jī)等需要控制多個(gè)舵機(jī)的場(chǎng)合,以及其他需要產(chǎn)生多路PWM系統(tǒng)。

本文引用地址:http://m.butianyuan.cn/article/162491.htm
三相異步電動(dòng)機(jī)相關(guān)文章:三相異步電動(dòng)機(jī)原理

上一頁 1 2 3 下一頁

關(guān)鍵詞: 控制器

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉