淺談彩焰黑章魚舞蹈機器人的軟體設計論文

才智咖 人氣:2.32W

舞蹈機器人作為智慧服務機器人的雛形,不僅為機器人學、控制理論、機電一體化及其它相關學科提供了良好的實驗平臺,而且為進一步研究智慧服務機器人提供了借鑑經驗。機器人舞蹈既具有極強的觀賞和趣味性,更是一個系統化的工程設計。

淺談彩焰黑章魚舞蹈機器人的軟體設計論文

我們設計的機器人以微控制器為中央處理器,設計並實現了基於PWM技術的關節電機速度控制電路,形成了對機器人舞蹈動作的控制。機器人整體是靠腳下的輪子用步進電機驅動而移動的,同時控制兩臺步進電機的轉速和轉速比可以進行縱、橫、斜任意方向的移動。把動作形式用程式預先儲存在只讀儲存器ROM中。表演時隨著音樂的播放章魚手臂動作和身體的移動同時進行,並在此基礎上為機器人安置冷煙火以達到更高的可觀賞性和趣味性。

軟體設計在控制系統設計中是相當重要的,它實現的好壞也直接關係到彩焰黑章魚舞姿的“優美”與否。在機械結構設計中採用兩種不同的電機驅動方式,分別是直流電機驅動和伺服電機驅動。故採用兩種不同的'軟體程式設計平臺即採用納英特機器人積木式程式設計平臺來控制直流電機,用機器人快車的程式設計平臺來間接控制伺服電機。

1中鳴機器人快車系統

1.1功能介紹:

機器人快車系統採用基於工程C的圖形化、模組化程式語言,全部功能模組使用圖標表示,遵循自頂向下的程式設計邏輯思維過程。只需要簡單地拖放相應的功能模組圖示,繪製出流程圖,機器人快車系統就能自動生成視覺化c原始碼,幫助輕鬆完成程式設計,快速掌握如何控制機器人。機器人快車系統是圖形化程式設計,比傳統的文字程式設計更加高階。機器人快車貫徹了模組化的思路,擁有強大的模組封裝和管理功能,方便愛好者相互之間的自由交流,培養團隊合作精神。

1.2特徵

由於中鳴數碼微型伺服馬達控制器對伺服控制訊號沒有儲存能力,所以我們用中鳴機器人快車系統軟體來儲存控制訊號,通電後中鳴數碼微型伺服馬達控制器會向中鳴機器人快車傳送控制訊號,以驅動18個伺服電機動作。

程式編制的特點是:一塊控制器分時控制多個電機動作,電機工作穩定可靠,且速度調節十分方便。在此基礎上我們為機器人選擇了一套節奏較慢,節拍感較強的英文歌。並以音樂為背景,為機器人設計了一套舞姿。在手動狀態下,機器人表演起了舞蹈。

為了程式設計方便,需要給觸手編號即1~6號。同時每個觸手的3個伺服電機應按從上往下依次排列插在控制板上。舞蹈的編排主要是控制各個伺服電機轉過的角度,控制電機的個數由少到多,動作由簡單到複雜。儘量讓舞步與舞步之間沒有重複動作。每個動作的時間也應該有所限制,根據不同的舞步,更改傳送訊號的時間。舞步的編排儘量是按照同時動作的觸手逐一增加的順序。儘量讓舞步編排複雜化,體現動作創新性、音樂的諧性和藝術觀賞性。程式設計時應用圖形化模組程式設計,然後將自動生成C語言程式碼。

1.3除錯和優化:這是製作機器人的最後一步,包括結構的合理化,外觀的美化,程式的優化等。

2納英特機器人積木式圖形化程式設計系統

2.1系統介紹

2.1.1概述:納英特機器人圖形化系統是一個為使用者提供全面的機器人教育與競賽解決方案的綜合系統。

系統集入門與高階應用於一體,實時提供最新的機器人解決方案與該領域的最新資訊,豐富使用者的機器人知識儲備,為鑽研機器人技術、開展機器人教學、參加機器人競賽提供有力的支援。

積木式程式設計與常規的計算機程式設計有所不同,納英特機器人積木式程式設計軟體在使用時不用關心語言實現的細節,同時也避免了程式設計中經常會出現的語法錯誤。納英特機器人積木式程式設計平臺採用的就是流程圖模型。每一個積木模組都可以完成一定的功能,只要按程式編寫的邏輯連線這些模組就可以很快的完成一個程式的編寫。

2.1.2使用通用庫函式說明:庫函式檔案為機器人提供了標準C的介面函式。這些函式是用C或者組合語言寫成的驅動程式。庫函式提供了諸如控制電機,發出聲音,輸入感測器值等功能。而程式設計中僅使用用於控制伺服電機的庫函式。

2.1.3使用的執行器模組庫

移動模組:該模組主要完成機器人的直行、轉向動作。0、1號電機分別代表機器人的左、右電機。通過功率大小滾動條的拖拉或者功率數值輸入框的輸入可以設定電機的執行功率。“-”表示電機反轉。功率絕對數值越大,電機轉速越快。

延時模組:該模組主要實現延續機器人的上一個動作狀態。主要和移動模組或者擴充套件電機模組相搭配,實現機器人移動或者某個動作的延續性。

停止模組:該模組主要實現停止電機運轉。可實現所有電機停止運轉,也可以設定停止一個或幾個電機。

停止所有電機,則給“停止所有電機”打上“”。

停止一個或幾個電機,去掉“停止所有電機”的“”,選擇停止物件。

2.2程式編寫

開啟納英特機器人積木式程式設計平臺,新建流程圖檔案;首先新增迴圈模組:用滑鼠雙擊模組庫區“控制模組庫”,從中選擇“多次迴圈模組”,拖放至流程圖區。詳細操作如下:對準“多次迴圈模組”按下滑鼠左鍵不放,拖拉至流程圖中,待方向線變成紅色時,即可送開滑鼠。同時也可以使用C語言檔案直接編寫程式,或使用LOGO語言檔案編寫程式。三種方法都可以實現相同的程式設計要求,在程式設計時可以根據所需自由選擇程式設計方式。讓程式的編寫更加靈活,讓複雜問題簡單化,給程式設計著帶來了很多方便,這也是我們選擇納英特程式設計的主要原因。程式編寫完畢,先儲存該檔案。

積木式機器人主機板提供四路直流電機驅動介面,直接引線到埠即可。直流減速電機的正接與反接都會造成電機輪子的正傳與反轉.將四個電機分別接入:“motor0口”“motor1口”“motor2口”“motor3口”,然後在採用C語言按模組化的程式設計思想編寫。

為了提高舞蹈動作的複雜程度,決定通過驅動直流電機的轉動來配合觸手的動作,使舞蹈動作變的豐富而又靈活。

3程式的下載及執行

將隨機配套的資料線一端接計算機上的序列通訊口,一端接納英特機器人主電路板上的通訊口。連線好後,“編譯下載”按軟體提示即可下載到機器人。下載完成後可離線執行。

4除錯程式

啟動納英特機器人,檢查機器人是否按要求執行,如果與預定的情況不符,就要在原程式基礎上調整對應的引數直至符合要求。比如偏轉的角度不合要求,就需要對轉向時的馬達功率、轉向時間等引數進行調整,直到符合要求為止。