国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      舵機(jī)的分布式控制系統(tǒng)及方法與流程

      文檔序號(hào):12360888閱讀:691來源:國(guó)知局
      舵機(jī)的分布式控制系統(tǒng)及方法與流程

      本發(fā)明涉及自動(dòng)化機(jī)器人技術(shù)領(lǐng)域,尤其涉及一種舵機(jī)的分布式控制系統(tǒng)及方法。



      背景技術(shù):

      舵機(jī)最早應(yīng)用于船舶上,由于其轉(zhuǎn)角可連續(xù)控制,被廣泛應(yīng)用于智能小車及機(jī)器人等領(lǐng)域。大多數(shù)舵機(jī)控制系統(tǒng)采用的是集中式控制方法,即通過一個(gè)控制器產(chǎn)生一路或多路PWM信號(hào)驅(qū)動(dòng)舵機(jī)轉(zhuǎn)動(dòng)??刂破餍枰獔?zhí)行路徑規(guī)劃,計(jì)算每個(gè)舵機(jī)的目標(biāo)位置、運(yùn)動(dòng)速度等控制參數(shù),并產(chǎn)生相應(yīng)的PWM信號(hào)驅(qū)動(dòng)舵機(jī)轉(zhuǎn)動(dòng),同時(shí)需要采集各路舵機(jī)的反饋信號(hào)方便實(shí)時(shí)跟蹤調(diào)節(jié),使各舵機(jī)以最佳性能達(dá)到指定的目標(biāo)位置。

      但是,集中式控制方法存在如下不足:1.當(dāng)舵機(jī)數(shù)量較多時(shí)系統(tǒng)控制難度增加、接線復(fù)雜;2.當(dāng)舵機(jī)安裝位置遠(yuǎn)時(shí),控制系統(tǒng)抗干擾能力降低等;3.控制系統(tǒng)的控制器處理所有的控制功能,占用資源較多、負(fù)擔(dān)重;4.控制系統(tǒng)控制的舵機(jī)數(shù)量有限,不易擴(kuò)展,當(dāng)舵機(jī)數(shù)量比較多時(shí),無法滿足要求。



      技術(shù)實(shí)現(xiàn)要素:

      發(fā)明目的:本發(fā)明針對(duì)現(xiàn)有技術(shù)存在的問題,提供一種舵機(jī)的分布式控制系統(tǒng)。

      技術(shù)方案:本發(fā)明所述的舵機(jī)的分布式控制系統(tǒng)包括:

      上位機(jī),用于當(dāng)上位機(jī)對(duì)舵機(jī)需要進(jìn)行控制時(shí),向通訊控制器發(fā)送舵機(jī)控制參數(shù)和對(duì)應(yīng)的通訊ID,還用于當(dāng)上位機(jī)需要獲取舵機(jī)狀態(tài)時(shí),向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令和對(duì)應(yīng)的通訊ID,以及用于在接收到舵機(jī)狀態(tài)數(shù)據(jù)后根據(jù)通訊ID更新舵機(jī)狀態(tài);

      通訊控制器,設(shè)有若干個(gè)通訊端口,用于根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào),并將目的舵機(jī)ID號(hào)和上位機(jī)發(fā)送的數(shù)據(jù)發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口,還用于將舵機(jī)返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的通訊ID上傳至上位機(jī);

      若干組舵機(jī),一組舵機(jī)通過一個(gè)通訊端口連接至通訊控制器,舵機(jī)用于根據(jù)通訊控制器發(fā)送的目的舵機(jī)ID號(hào)進(jìn)行匹配,當(dāng)匹配成功時(shí)根據(jù)舵機(jī)控制參數(shù)進(jìn)行舵機(jī)控制,還用于根據(jù)通訊控制器發(fā)送的舵機(jī)狀態(tài)獲取指令返回當(dāng)前狀態(tài)數(shù)據(jù)。

      進(jìn)一步的,所述上位機(jī)包括:

      路徑規(guī)劃單元,用于對(duì)需要控制的舵機(jī)執(zhí)行路徑規(guī)劃;

      指令生成單元,用于對(duì)需要獲取狀態(tài)的舵機(jī)生成狀態(tài)獲取指令;

      控制參數(shù)生成單元,用于根據(jù)規(guī)劃的路徑生成舵機(jī)控制參數(shù);

      數(shù)據(jù)包生成單元,用于將控制參數(shù)生成單元生成的舵機(jī)控制參數(shù),加上其對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包,還用于將指令生成單元生成的狀態(tài)獲取指令,加上其對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包;

      數(shù)據(jù)傳輸單元,用于將數(shù)據(jù)包生成單元生成的數(shù)據(jù)包發(fā)送至通訊控制器,還用于接收通訊控制器返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的通訊ID;

      匹配單元,用于將數(shù)據(jù)傳輸單元接收的通訊ID,與向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令對(duì)應(yīng)的通訊ID進(jìn)行匹配,若一致,則匹配成功,否則匹配失敗;

      狀態(tài)更新的單元,用于在匹配單元匹配成功時(shí),更新通訊ID對(duì)應(yīng)的舵機(jī)的狀態(tài)。

      進(jìn)一步的,所述通訊控制器包括:

      第一傳輸單元,用于上位機(jī)和通訊控制器的數(shù)據(jù)傳輸;

      第一映射單元,用于從第一傳輸單元接收的數(shù)據(jù)包中,提取出通訊ID,并根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào);

      第一數(shù)據(jù)包生成單元,用于將上位機(jī)發(fā)送的數(shù)據(jù)和目的舵機(jī)ID號(hào)生成數(shù)據(jù)包,并發(fā)送至第二數(shù)據(jù)傳輸單元;

      第二傳輸單元,用于將第一數(shù)據(jù)包生成單元的數(shù)據(jù)包發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口,還用于接收舵機(jī)通過通訊端口返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的舵機(jī)ID;

      第二映射單元,用于將第二傳輸單元接收的舵機(jī)ID和接收時(shí)采用的通訊端口的端口ID,映射為通訊ID;

      第二數(shù)據(jù)包生成單元,用于將映射的通訊ID和接收的舵機(jī)狀態(tài)數(shù)據(jù)打包生成數(shù)據(jù)包,并發(fā)送至第一傳輸單元。

      進(jìn)一步的,所述舵機(jī)包括:

      數(shù)據(jù)傳輸單元,用于接收通訊控制器發(fā)送的數(shù)據(jù),以及向通訊控制器返回舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的舵機(jī)ID;

      匹配單元,用于從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào),并與當(dāng)前舵機(jī)的ID號(hào)進(jìn)行匹配,若一致,則匹配成功,否則匹配失敗;

      舵機(jī)控制單元,用于在匹配單元匹配成功,且接收的數(shù)據(jù)是舵機(jī)控制參數(shù)時(shí),根據(jù)該舵機(jī)控制參數(shù)對(duì)舵機(jī)進(jìn)行控制;

      舵機(jī)狀態(tài)獲取單元,用于在匹配單元匹配成功,且接收的數(shù)據(jù)是舵機(jī)狀態(tài)獲取指令時(shí),將當(dāng)前舵機(jī)的狀態(tài)數(shù)據(jù)發(fā)送至數(shù)據(jù)傳輸單元。

      進(jìn)一步的,所述上位機(jī)通過RS422連接通訊控制器,每組舵機(jī)通過一個(gè)RS485總線連接通訊控制器。

      本發(fā)明所述的舵機(jī)的分布式控制方法包括步驟:

      S1、當(dāng)上位機(jī)對(duì)舵機(jī)需要進(jìn)行控制時(shí),向通訊控制器發(fā)送舵機(jī)控制參數(shù)和對(duì)應(yīng)的通訊ID;

      S2、通訊控制器根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào),并將目的舵機(jī)ID號(hào)和上位機(jī)發(fā)送的數(shù)據(jù)發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口,其中,通訊控制器設(shè)有若干個(gè)通訊端口;

      S3、舵機(jī)根據(jù)通訊控制器發(fā)送的目的舵機(jī)ID號(hào)進(jìn)行匹配,當(dāng)匹配成功時(shí)根據(jù)舵機(jī)控制參數(shù)進(jìn)行舵機(jī)控制,其中,舵機(jī)一共有若干組,一組舵機(jī)通過一個(gè)通訊端口連接至通訊控制器;

      S4、當(dāng)上位機(jī)需要獲取舵機(jī)狀態(tài)時(shí),向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令和對(duì)應(yīng)的通訊ID;

      S5、通訊控制器根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào),并將目的舵機(jī)ID號(hào)和上位機(jī)發(fā)送的數(shù)據(jù)發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口;

      S6、舵機(jī)根據(jù)通訊控制器發(fā)送的目的舵機(jī)ID號(hào)進(jìn)行匹配,當(dāng)匹配成功時(shí)根據(jù)通訊控制器發(fā)送的舵機(jī)狀態(tài)獲取指令返回當(dāng)前狀態(tài)數(shù)據(jù);

      S7、通訊控制器將舵機(jī)返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的通訊ID上傳至上位機(jī);

      S8、上位機(jī)接收到舵機(jī)狀態(tài)數(shù)據(jù)后根據(jù)通訊ID更新舵機(jī)狀態(tài)。

      進(jìn)一步的,步驟S1具體包括:

      S11、當(dāng)上位機(jī)對(duì)舵機(jī)需要進(jìn)行控制時(shí),對(duì)需要控制的舵機(jī)執(zhí)行路徑規(guī)劃;

      S12、根據(jù)規(guī)劃的路徑生成舵機(jī)控制參數(shù);

      S13、將生成的舵機(jī)控制參數(shù)加上其對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包;

      S14、將數(shù)生成的數(shù)據(jù)包發(fā)送至通訊控制器;

      步驟S4具體包括:

      S41、當(dāng)上位機(jī)需要獲取舵機(jī)狀態(tài)時(shí),生成舵機(jī)狀態(tài)獲取指令;

      S42、將舵機(jī)狀態(tài)獲取指令和對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包;

      S43、將數(shù)生成的數(shù)據(jù)包發(fā)送至通訊控制器;

      步驟S8具體包括:

      S81、將接收的通訊ID,與向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令時(shí)對(duì)應(yīng)的通訊ID進(jìn)行匹配,若一致,則匹配成功,否則匹配失??;

      S82、在匹配成功時(shí),更新通訊ID對(duì)應(yīng)的舵機(jī)的狀態(tài)。

      進(jìn)一步的,步驟S2具體包括:

      S21、通訊控制器接收上位機(jī)傳輸?shù)臄?shù)據(jù);

      S22、從接收的數(shù)據(jù)包中,提取出通訊ID,并根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào);

      S23、將上位機(jī)發(fā)送的舵機(jī)控制參數(shù)和目的舵機(jī)ID號(hào)生成數(shù)據(jù)包;

      S24、將生成的數(shù)據(jù)包發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口;

      步驟S5具體包括:

      S51、通訊控制器接收上位機(jī)傳輸?shù)臄?shù)據(jù);

      S52、從接收的數(shù)據(jù)包中,提取出通訊ID,并根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào);

      S53、將上位機(jī)發(fā)送的舵機(jī)狀態(tài)獲取指令和目的舵機(jī)ID號(hào)生成數(shù)據(jù)包;

      S54、將生成的數(shù)據(jù)包發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口;

      步驟S7具體包括:

      S71、通訊控制器接收舵機(jī)通過通訊端口返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的舵機(jī)ID;

      S72、通訊控制器將接收的舵機(jī)ID和接收時(shí)采用的通訊端口的端口ID,映射為通訊ID;

      S73、通訊控制器將映射的通訊ID和接收的舵機(jī)狀態(tài)數(shù)據(jù)打包生成數(shù)據(jù)包,并發(fā)送至上位機(jī)。

      進(jìn)一步的,步驟S3具體包括:

      S31、舵機(jī)接收通訊控制器發(fā)送的數(shù)據(jù);

      S32、舵機(jī)從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào),并與當(dāng)前舵機(jī)的ID號(hào)進(jìn)行匹配,若一致,則匹配成功,否則匹配失??;

      S33、在匹配成功,且接收的數(shù)據(jù)是舵機(jī)控制參數(shù)時(shí),根據(jù)該舵機(jī)控制參數(shù)對(duì)舵機(jī)進(jìn)行控制;

      步驟S6具體包括:

      S61、舵機(jī)接收通訊控制器發(fā)送的數(shù)據(jù);

      S62、舵機(jī)從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào),并與當(dāng)前舵機(jī)的ID號(hào)進(jìn)行匹配,若一致,則匹配成功,否則匹配失??;

      S63、在匹配成功,且接收的數(shù)據(jù)是舵機(jī)狀態(tài)獲取指令時(shí),將當(dāng)前舵機(jī)的狀態(tài)數(shù)據(jù)發(fā)送至數(shù)據(jù)傳輸單元。

      進(jìn)一步的,所述上位機(jī)通過RS422連接通訊控制器,每組舵機(jī)通過一個(gè)RS485總線連接通訊控制器。

      有益效果:本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點(diǎn)是:

      1.控制難度低、接線簡(jiǎn)單;

      2.傳輸距離遠(yuǎn)、抗干擾能力強(qiáng);

      3.上位機(jī)被占資源少,負(fù)擔(dān)輕;

      4.可控制舵機(jī)數(shù)量多且易于擴(kuò)展;

      5.中繼成本低。

      附圖說明

      圖1是本發(fā)明提供的舵機(jī)的分布式控制系統(tǒng)的一個(gè)實(shí)施例的系統(tǒng)框圖;

      圖2是圖1中上位機(jī)的單元示意圖;

      圖3是圖1中通訊控制器的單元示意圖;

      圖4是圖1中舵機(jī)的單元示意圖;

      圖5是本發(fā)明提供的舵機(jī)的分布式控制方法的一個(gè)實(shí)施例的流程示意圖;

      圖6是舵機(jī)控制流程示意圖;

      圖7是舵機(jī)狀態(tài)數(shù)據(jù)獲取的流程示意圖。

      具體實(shí)施方式

      如圖1所示,本實(shí)施例的舵機(jī)的分布式控制系統(tǒng)包括:上位機(jī)、通訊控制器和若干組舵機(jī)(圖中有三組,每組有N個(gè)舵機(jī))。上位機(jī)通過RS422連接通訊控制器,每組舵機(jī)通過一個(gè)RS485總線連接通訊控制器。其中,上位機(jī)用于當(dāng)上位機(jī)對(duì)舵機(jī)需要進(jìn)行控制時(shí),向通訊控制器發(fā)送舵機(jī)控制參數(shù)和對(duì)應(yīng)的通訊ID,還用于當(dāng)上位機(jī)需要獲取舵機(jī)狀態(tài)時(shí),向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令和對(duì)應(yīng)的通訊ID,以及用于在接收到舵機(jī)狀態(tài)數(shù)據(jù)后根據(jù)通訊ID更新舵機(jī)狀態(tài);通訊控制器設(shè)有若干個(gè)通訊端口,用于根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào),并將目的舵機(jī)ID號(hào)和上位機(jī)發(fā)送的數(shù)據(jù)發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口,還用于將舵機(jī)返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的通訊ID上傳至上位機(jī);一組舵機(jī)通過一個(gè)通訊端口連接至通訊控制器,舵機(jī)用于根據(jù)通訊控制器發(fā)送的目的舵機(jī)ID號(hào)進(jìn)行匹配,當(dāng)匹配成功時(shí)根據(jù)舵機(jī)控制參數(shù)進(jìn)行舵機(jī)控制,還用于根據(jù)通訊控制器發(fā)送的舵機(jī)狀態(tài)獲取指令返回當(dāng)前狀態(tài)數(shù)據(jù)。本系統(tǒng)中,上位機(jī)并不直接參與舵機(jī)的實(shí)際控制,而是將舵機(jī)的控制由舵機(jī)本身的控制電路獨(dú)立實(shí)現(xiàn),所以舵機(jī)控制占用上位機(jī)的資源大大減少,減輕了上位機(jī)的負(fù)擔(dān)。

      如圖2所示,上位機(jī)包括路徑規(guī)劃單元、指令生成單元、控制參數(shù)生成單元、數(shù)據(jù)包生成單元、數(shù)據(jù)傳輸單元、匹配單元和狀態(tài)更新的單元。其中,路徑規(guī)劃單元用于對(duì)需要控制的舵機(jī)執(zhí)行路徑規(guī)劃;指令生成單元用于對(duì)需要獲取狀態(tài)的舵機(jī)生成狀態(tài)獲取指令;控制參數(shù)生成單元用于根據(jù)規(guī)劃的路徑生成舵機(jī)控制參數(shù);數(shù)據(jù)包生成單元用于將控制參數(shù)生成單元生成的舵機(jī)控制參數(shù),加上其對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包(例如,圖1中,1-1表示通訊ID,前面的1表示通訊端口的端口ID,后面的1表示舵機(jī)ID),還用于將指令生成單元生成的狀態(tài)獲取指令,加上其對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包;數(shù)據(jù)傳輸單元用于將數(shù)據(jù)包生成單元生成的數(shù)據(jù)包發(fā)送至通訊控制器,還用于接收通訊控制器返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的通訊ID;匹配單元用于將數(shù)據(jù)傳輸單元接收的通訊ID,與向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令對(duì)應(yīng)的通訊ID進(jìn)行匹配,若一致,則匹配成功,否則匹配失??;狀態(tài)更新的單元用于在匹配單元匹配成功時(shí),更新通訊ID對(duì)應(yīng)的舵機(jī)的狀態(tài),匹配失敗時(shí)丟棄數(shù)據(jù)。

      如圖3所示,通訊控制器包括第一傳輸單元、第一映射單元、第一數(shù)據(jù)包生成單元、第二傳輸單元、第二映射單元、第二數(shù)據(jù)包生成單元。其中,第一傳輸單元用于上位機(jī)和通訊控制器的數(shù)據(jù)傳輸;第一映射單元用于從第一傳輸單元接收的數(shù)據(jù)包中,提取出通訊ID,并根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào)(例如,通訊ID為2-1,映射出通訊端口的端口ID為2,目的舵機(jī)ID號(hào)為1);第一數(shù)據(jù)包生成單元用于將上位機(jī)發(fā)送的數(shù)據(jù)和目的舵機(jī)ID號(hào)生成數(shù)據(jù)包,并發(fā)送至第二數(shù)據(jù)傳輸單元;第二傳輸單元用于將第一數(shù)據(jù)包生成單元的數(shù)據(jù)包發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口,還用于接收舵機(jī)通過通訊端口返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的舵機(jī)ID;第二映射單元用于將第二傳輸單元接收的舵機(jī)ID和接收時(shí)采用的通訊端口的端口ID,映射為通訊ID;第二數(shù)據(jù)包生成單元用于將映射的通訊ID和接收的舵機(jī)狀態(tài)數(shù)據(jù)打包生成數(shù)據(jù)包,并發(fā)送至第一傳輸單元。

      如圖4所示,舵機(jī)包括數(shù)據(jù)傳輸單元、匹配單元、舵機(jī)控制單元、舵機(jī)狀態(tài)獲取單元。其中,數(shù)據(jù)傳輸單元用于接收通訊控制器發(fā)送的數(shù)據(jù),以及向通訊控制器返回舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的舵機(jī)ID;匹配單元用于從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào),并與當(dāng)前舵機(jī)的ID號(hào)進(jìn)行匹配,若一致,則匹配成功,否則匹配失??;舵機(jī)控制單元用于在匹配單元匹配成功,且接收的數(shù)據(jù)是舵機(jī)控制參數(shù)時(shí),根據(jù)該舵機(jī)控制參數(shù)對(duì)舵機(jī)進(jìn)行控制;舵機(jī)狀態(tài)獲取單元用于在匹配單元匹配成功,且接收的數(shù)據(jù)是舵機(jī)狀態(tài)獲取指令時(shí),將當(dāng)前舵機(jī)的狀態(tài)數(shù)據(jù)發(fā)送至數(shù)據(jù)傳輸單元。

      如圖5所示,本實(shí)施例的舵機(jī)的分布式控制方法包括步驟:

      S1、當(dāng)上位機(jī)對(duì)舵機(jī)需要進(jìn)行控制時(shí),向通訊控制器發(fā)送舵機(jī)控制參數(shù)和對(duì)應(yīng)的通訊ID。

      具體的,步驟S1包括:S11、當(dāng)上位機(jī)對(duì)舵機(jī)需要進(jìn)行控制時(shí),對(duì)需要控制的舵機(jī)執(zhí)行路徑規(guī)劃;S12、根據(jù)規(guī)劃的路徑生成舵機(jī)控制參數(shù),包括目標(biāo)位置、速度等參數(shù);S13、將生成的舵機(jī)控制參數(shù)加上其對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包;S14、將數(shù)生成的數(shù)據(jù)包發(fā)送至通訊控制器。

      例如,如圖6所示,當(dāng)上位機(jī)需要對(duì)通訊ID為2-1的舵機(jī)進(jìn)行控制時(shí),對(duì)該舵機(jī)執(zhí)行路徑規(guī)劃;根據(jù)規(guī)劃的路徑生成舵機(jī)控制參數(shù);將生成的舵機(jī)控制參數(shù)加上其對(duì)應(yīng)的通訊ID2-1生成數(shù)據(jù)包;將數(shù)生成的數(shù)據(jù)包發(fā)送至通訊控制器。

      S2、通訊控制器根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào),并將目的舵機(jī)ID號(hào)和上位機(jī)發(fā)送的數(shù)據(jù)發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口,其中,通訊控制器設(shè)有若干個(gè)通訊端口。

      具體的,步驟S2包括:S21、通訊控制器接收上位機(jī)傳輸?shù)臄?shù)據(jù);S22、從接收的數(shù)據(jù)包中,提取出通訊ID,并根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào);S23、將上位機(jī)發(fā)送的舵機(jī)控制參數(shù)和目的舵機(jī)ID號(hào)生成數(shù)據(jù)包;S24、將生成的數(shù)據(jù)包發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口。

      例如,如圖6所示,通訊控制器接收上位機(jī)傳輸?shù)臄?shù)據(jù);從接收的數(shù)據(jù)包中,提取出通訊ID 2-1,根據(jù)2-1映射出目的端口ID為2和目的舵機(jī)ID號(hào)為1;將上位機(jī)發(fā)送的舵機(jī)控制參數(shù)和目的舵機(jī)ID號(hào)1生成數(shù)據(jù)包;將生成的數(shù)據(jù)包發(fā)送至通訊端口2。

      S3、舵機(jī)根據(jù)通訊控制器發(fā)送的目的舵機(jī)ID號(hào)進(jìn)行匹配,當(dāng)匹配成功時(shí)根據(jù)舵機(jī)控制參數(shù)進(jìn)行舵機(jī)控制,其中,舵機(jī)一共有若干組,一組舵機(jī)通過一個(gè)通訊端口連接至通訊控制器。

      具體的,步驟S3具體包括:S31、舵機(jī)接收通訊控制器發(fā)送的數(shù)據(jù);S32、舵機(jī)從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào),并與當(dāng)前舵機(jī)的ID號(hào)進(jìn)行匹配,若一致,則匹配成功,否則匹配失?。籗33、在匹配成功,且接收的數(shù)據(jù)是舵機(jī)控制參數(shù)時(shí),根據(jù)該舵機(jī)控制參數(shù)對(duì)舵機(jī)進(jìn)行控制。

      例如,如圖6所示,舵機(jī)2-1接收通訊控制器發(fā)送的數(shù)據(jù);從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào)為1,并與當(dāng)前舵機(jī)的ID號(hào)1進(jìn)行匹配,若一致,則匹配成功,否則匹配失敗;在匹配成功,且接收的數(shù)據(jù)是舵機(jī)控制參數(shù)時(shí),根據(jù)該舵機(jī)控制參數(shù)對(duì)舵機(jī)進(jìn)行控制。

      S4、當(dāng)上位機(jī)需要獲取舵機(jī)狀態(tài)時(shí),向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令和對(duì)應(yīng)的通訊ID。

      具體的,步驟S4具體包括:S41、當(dāng)上位機(jī)需要獲取舵機(jī)狀態(tài)時(shí),生成舵機(jī)狀態(tài)獲取指令;S42、將舵機(jī)狀態(tài)獲取指令和對(duì)應(yīng)的通訊ID生成數(shù)據(jù)包;S43、將數(shù)生成的數(shù)據(jù)包發(fā)送至通訊控制器。

      例如,如圖7所示,當(dāng)上位機(jī)需要獲取通訊ID為2-1的舵機(jī)狀態(tài)時(shí),生成舵機(jī)狀態(tài)獲取指令;將舵機(jī)狀態(tài)獲取指令和2-1生成數(shù)據(jù)包;將數(shù)生成的數(shù)據(jù)包發(fā)送至通訊控制器。

      S5、通訊控制器根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào),并將目的舵機(jī)ID號(hào)和上位機(jī)發(fā)送的數(shù)據(jù)發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口。

      具體的,步驟S5具體包括:S51、通訊控制器接收上位機(jī)傳輸?shù)臄?shù)據(jù);S52、從接收的數(shù)據(jù)包中,提取出通訊ID,并根據(jù)通訊ID映射出目的端口ID和目的舵機(jī)ID號(hào);S53、將上位機(jī)發(fā)送的舵機(jī)狀態(tài)獲取指令和目的舵機(jī)ID號(hào)生成數(shù)據(jù)包;S54、將生成的數(shù)據(jù)包發(fā)送至映射出的目的端口ID對(duì)應(yīng)的通訊端口。

      例如,如圖7所示,通訊控制器接收上位機(jī)傳輸?shù)臄?shù)據(jù);從接收的數(shù)據(jù)包中,提取出通訊ID為2-1,根據(jù)通訊ID 2-1映射出目的端口ID為2和目的舵機(jī)ID號(hào)為1;將上位機(jī)發(fā)送的舵機(jī)狀態(tài)獲取指令和目的舵機(jī)ID號(hào)1生成數(shù)據(jù)包;將生成的數(shù)據(jù)包發(fā)送至通訊端口2。

      S6、舵機(jī)根據(jù)通訊控制器發(fā)送的目的舵機(jī)ID號(hào)進(jìn)行匹配,當(dāng)匹配成功時(shí)根據(jù)通訊控制器發(fā)送的舵機(jī)狀態(tài)獲取指令返回當(dāng)前狀態(tài)數(shù)據(jù)。

      具體的,步驟S6具體包括:S61、舵機(jī)接收通訊控制器發(fā)送的數(shù)據(jù);S62、舵機(jī)從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào),并與當(dāng)前舵機(jī)的ID號(hào)進(jìn)行匹配,若一致,則匹配成功,否則匹配失敗,丟棄數(shù)據(jù);S63、在匹配成功,且接收的數(shù)據(jù)是舵機(jī)狀態(tài)獲取指令時(shí),將當(dāng)前舵機(jī)的狀態(tài)數(shù)據(jù)和當(dāng)前舵機(jī)的ID發(fā)送至數(shù)據(jù)傳輸單元。

      例如,如圖7所示,舵機(jī)接收通訊控制器發(fā)送的數(shù)據(jù);從接收的數(shù)據(jù)中提取出目的舵機(jī)ID號(hào)為1,與當(dāng)前舵機(jī)的ID號(hào)進(jìn)行匹配,若一致,則匹配成功,否則匹配失敗,丟棄數(shù)據(jù);在匹配成功,且接收的數(shù)據(jù)是舵機(jī)狀態(tài)獲取指令時(shí),將當(dāng)前舵機(jī)的狀態(tài)數(shù)據(jù)和舵機(jī)ID號(hào)1發(fā)送至數(shù)據(jù)傳輸單元。

      S7、通訊控制器將舵機(jī)返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的通訊ID上傳至上位機(jī)。

      具體的,步驟S7具體包括:S71、通訊控制器接收舵機(jī)通過通訊端口返回的舵機(jī)狀態(tài)數(shù)據(jù)和對(duì)應(yīng)的舵機(jī)ID;S72、通訊控制器將接收的舵機(jī)ID和接收時(shí)采用的通訊端口的端口ID,映射為通訊ID;S73、通訊控制器將映射的通訊ID和接收的舵機(jī)狀態(tài)數(shù)據(jù)打包生成數(shù)據(jù)包,并發(fā)送至上位機(jī)。

      例如,如圖7所示,通訊控制器接收舵機(jī)通過通訊端口2返回的舵機(jī)狀態(tài)數(shù)據(jù)和舵機(jī)ID 1;通訊控制器將接收的舵機(jī)ID 1和接收時(shí)采用的通訊端口的端口ID 2,映射為通訊ID 2-1;通訊控制器將映射的通訊ID2-1和接收的舵機(jī)狀態(tài)數(shù)據(jù)打包生成數(shù)據(jù)包,并發(fā)送至上位機(jī)。

      S8、上位機(jī)接收到舵機(jī)狀態(tài)數(shù)據(jù)后根據(jù)通訊ID更新舵機(jī)狀態(tài)。

      具體的,步驟S8具體包括:S81、上位機(jī)將接收的通訊ID,與向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令時(shí)對(duì)應(yīng)的通訊ID進(jìn)行匹配,若一致,則匹配成功,否則匹配失敗,丟棄數(shù)據(jù);S82、在匹配成功時(shí),更新通訊ID對(duì)應(yīng)的舵機(jī)的狀態(tài)。

      例如,如圖7所示,上位機(jī)將接收的通訊ID 2-1,與向通訊控制器發(fā)送舵機(jī)狀態(tài)獲取指令時(shí)對(duì)應(yīng)的通訊ID 2-1進(jìn)行匹配,若一致,則匹配成功,否則匹配失??;在匹配成功時(shí),更新通訊ID 2-1對(duì)應(yīng)的舵機(jī)的狀態(tài)。

      以上所揭露的僅為本發(fā)明一種較佳實(shí)施例而已,不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1