1.一種基于多余度的多目標(biāo)機(jī)并行通信方法,其特征在于,對(duì)嵌入式系統(tǒng)內(nèi)所有目標(biāo)機(jī)以及上位機(jī)定義通信地址,對(duì)多余度目標(biāo)機(jī)定義接收廣播地址;上位機(jī)發(fā)送的每個(gè)消息中包含源地址與目的地址,當(dāng)消息的發(fā)送目的是功能相同的多余度多個(gè)目標(biāo)機(jī)時(shí),目的地址是多余度目標(biāo)機(jī)的接收廣播地址;上位機(jī)將消息發(fā)送給負(fù)責(zé)維護(hù)的目標(biāo)機(jī),負(fù)責(zé)維護(hù)的目標(biāo)機(jī)根據(jù)消息的目的地址將消息放到與目的地址對(duì)應(yīng)的目標(biāo)機(jī)所在的內(nèi)總線通信鏈路上,如果目的地址是廣播地址則將消息放到該廣播地址對(duì)應(yīng)的多余度目標(biāo)機(jī)內(nèi)總線廣播通信鏈路上;各目標(biāo)機(jī)從內(nèi)總線通信鏈路上接收到消息,獲得消息中的源地址做為返回消息的目的地址,目標(biāo)機(jī)處理消息并產(chǎn)生返回消息,將返回消息與代表自身通信地址信息的源地址以及上述目的地址一同發(fā)送放到負(fù)責(zé)維護(hù)的目標(biāo)機(jī)的內(nèi)總線通信鏈路上;負(fù)責(zé)維護(hù)的目標(biāo)機(jī)接收內(nèi)總線通信鏈路上消息,根據(jù)消息的目的地址將消息發(fā)送給對(duì)應(yīng)的上位機(jī),上位機(jī)確認(rèn)之前發(fā)送的消息是否被正確處理。
2.根據(jù)權(quán)利要求1所述的一種基于多余度的多目標(biāo)機(jī)并行通信方法,其特征在于,具體操作步驟如下:
步驟1對(duì)上位機(jī)、嵌入式系統(tǒng)中所有目標(biāo)機(jī)定義獨(dú)立的通信地址,并對(duì)功能相同的多余度目標(biāo)機(jī)定義接收廣播地址;
步驟2上位機(jī)在需要發(fā)送的消息中添加代表自身通信地址信息的源地址與包含目標(biāo)機(jī)通信地址信息的目的地址,當(dāng)消息的發(fā)送目的是功能相同的多余度多個(gè)目標(biāo)機(jī)時(shí),目的地址是多余度目標(biāo)機(jī)的接收廣播地址;
步驟3上位機(jī)將消息發(fā)送給負(fù)責(zé)維護(hù)的目標(biāo)機(jī),負(fù)責(zé)維護(hù)的目標(biāo)機(jī)根據(jù)消息的目的地址將消息放到與目的地址對(duì)應(yīng)的目標(biāo)機(jī)所在的內(nèi)總線通信鏈路上,如果目的地址是廣播地址則將消息放到該廣播地址對(duì)應(yīng)的多余度目標(biāo)機(jī)內(nèi)總線廣播通信鏈路上;
步驟4各目標(biāo)機(jī)從內(nèi)總線通信鏈路上接收到消息,獲得消息中的源地址做為返回消息的目的地址,目標(biāo)機(jī)處理消息并產(chǎn)生返回消息,將返回消息與代表自身通信地址信息的源地址以及所述目的地址一同發(fā)送放到負(fù)責(zé)維護(hù)的目標(biāo)機(jī)的內(nèi)總線通信鏈路上;
步驟5負(fù)責(zé)維護(hù)的目標(biāo)機(jī)接收內(nèi)總線通信鏈路上的返回消息,根據(jù)所述返回消息的目的地址將所述返回消息發(fā)送給對(duì)應(yīng)的上位機(jī);
步驟6上位機(jī)接收返回消息,將返回消息的源地址與上位機(jī)在步驟2中發(fā)送消息的目的地址比較,確認(rèn)目標(biāo)機(jī)是否正確處理消息;
步驟7上位機(jī)發(fā)送新的消息,重復(fù)步驟2到步驟6。
3.根據(jù)權(quán)利要求2所述的一種基于多余度的多目標(biāo)機(jī)并行通信方法,其特征在于,當(dāng)上位機(jī)發(fā)送消息的目的地址是多余度目標(biāo)機(jī)的廣播地址時(shí),所述步驟6具體包括:
A,上位機(jī)確定所述多余度目標(biāo)機(jī)的目標(biāo)機(jī)數(shù)量,此數(shù)量是上位機(jī)需要接收到的返回消息數(shù)量;
B,上位機(jī)解析接收消息的源地址,源地址應(yīng)是所述廣播地址對(duì)應(yīng)的多余度目標(biāo)機(jī)中某個(gè)目標(biāo)機(jī)的源地址;
C,上位機(jī)接收到符合此類源地址的消息數(shù)量與上述上位機(jī)需要接收到的消息數(shù)量相同,且每個(gè)消息內(nèi)容都確認(rèn)目標(biāo)機(jī)處理完成時(shí),則可確認(rèn)廣播地址對(duì)應(yīng)的所有多余度目標(biāo)機(jī)都已正確處理消息;
上位機(jī)在一定時(shí)限內(nèi)接收到與所述上位機(jī)需要接收到的消息數(shù)量相同的所述符合源地址要求的消息數(shù)量,但接收消息中存在某條消息,其內(nèi)容說明目標(biāo)機(jī)處理消息失敗,則上位機(jī)重新發(fā)送消息,重復(fù)步驟2到步驟6,在經(jīng)過有限次的重新發(fā)送后,如果都沒有確認(rèn)目標(biāo)機(jī)都已正確處理消息,則確認(rèn)上位機(jī)與嵌入式系統(tǒng)通信失敗;
上位機(jī)在一定時(shí)限內(nèi)未能接收到與所述上位機(jī)需要接收到的消息數(shù)量相同的所述符合源地址要求的消息數(shù)量,則上位機(jī)對(duì)自身需要針對(duì)上述多余度目標(biāo)機(jī)接收到的消息數(shù)量做降級(jí)處理,將需要針對(duì)上述多余度目標(biāo)機(jī)接收到的消息數(shù)量降級(jí)設(shè)置為此時(shí)接收到的所述符合源地址要求的消息數(shù)量,并在以后的通信中都以降級(jí)后的消息數(shù)量為準(zhǔn),上位機(jī)通過廣播地址以及接收到消息的源地址,確認(rèn)上位機(jī)未能收到返回消息的目標(biāo)機(jī),并在以后的通信中將所述未能收到返回消息的目標(biāo)機(jī)排除。