第一篇:機(jī)器人控制技術(shù)基礎(chǔ)實(shí)驗(yàn)報(bào)告
華北電力大學(xué)
實(shí) 驗(yàn) 報(bào) 告
| |
實(shí)驗(yàn)名稱:
機(jī)器人控制技術(shù)基礎(chǔ)
課程名稱: 機(jī)器人控制技術(shù)基礎(chǔ)
實(shí) 驗(yàn) 人:張 鈺 信 安1601 201609040126 李 童 能 化1601 201605040111 韓翔宇 能 化1601 201605040104 成 績(jī):
指導(dǎo)教師: 林永君、房靜
實(shí)驗(yàn)日期: 2016年3月4日-3月26日
華北電力大學(xué)工程訓(xùn)練中心
第一部分:?jiǎn)纹瑱C(jī)開發(fā)板 實(shí)驗(yàn)一:流水燈實(shí)驗(yàn)
實(shí)驗(yàn)?zāi)康模和ㄟ^此實(shí)驗(yàn),初步掌握單片機(jī)的 IO 口的基本操作。實(shí)驗(yàn)內(nèi)容:控制接在 P0.0上的 8個(gè)LED L0—L8 依次點(diǎn)亮,如此循環(huán)。硬件說明:
根據(jù)流水燈的硬件連接,我們發(fā)現(xiàn)只有單片機(jī)的IO口輸出為低電平時(shí)LED燈才會(huì)被點(diǎn)亮,我們先給P0口設(shè)定好初值,只讓其點(diǎn)亮一盞燈,然后用左右移函數(shù)即可依次點(diǎn)亮其他的燈。源程序如下: #include
for(;;){ led_1=0;display_ms(10);
}
} led_1=1;led_2=0;display_ms(10);led_2=1;led_3=0;display_ms(10);led_3=1;led_4=0;display_ms(10);led_4=1;led_5=0;display_ms(10);led_5=1;led_6=0;display_ms(10);led_6=1;led_7=0;display_ms(10);led_7=1;led_8=0;display_ms(10);led_8=1;第二部分:機(jī)器人小車
內(nèi)容簡(jiǎn)介:機(jī)器人小車完成如圖規(guī)定的賽道,從規(guī)定的起點(diǎn)開始,記錄完成賽道一圈的時(shí)間。必須在30秒之內(nèi)完成,超時(shí)無效。其中當(dāng)小車整體都在賽道外時(shí)停止比賽,視為犯規(guī),小車不規(guī)定運(yùn)動(dòng)方向,順時(shí)針和逆時(shí)針都可以采用,但都從規(guī)定的起點(diǎn)開始記錄時(shí)間。作品優(yōu)點(diǎn)及應(yīng)用前景:
單片機(jī)可靠性高,編程簡(jiǎn)單單片機(jī)執(zhí)行一條指令的時(shí)間是μs級(jí),執(zhí)行一個(gè)掃描周期的時(shí)間為幾ms乃至幾十ms。相對(duì)于電器的動(dòng)作時(shí)間而言,掃描周期是短暫的,可以認(rèn)為在一個(gè)掃描周期內(nèi)輸入端子的狀態(tài)是不變的,而對(duì)其狀態(tài)變化的采集和處理也是實(shí)時(shí)的,從而滿足了實(shí)時(shí)控制的要求。本次設(shè)計(jì)的簡(jiǎn)易智能電動(dòng)車,采用STC89C52RC單片機(jī)作為小車的檢測(cè)和控制核心,使單片機(jī)按照預(yù)定的工作模式控制小車在各區(qū)域按預(yù)定的速度行駛,通過控制單片機(jī)進(jìn)而控制小車,體現(xiàn)了智能化,通過使用不同的函數(shù)及設(shè)定不同的函數(shù)參數(shù),能夠在不同的要求下改變小車的前后輪轉(zhuǎn)動(dòng)方向以及轉(zhuǎn)動(dòng)速度,來完成不同的目的要求。在畫正方形的同時(shí)能夠完成四個(gè)1/4圓弧的制作。
循跡實(shí)驗(yàn)場(chǎng)地圖:
傳感器電路圖:
源程序:
#include
} void main(){ unsigned int i;
l_l = 1;r_l = 1;l_m = 1;r_m = 1;for(;;)unsigned int i,j;for(i=0;i if((l_l ==0)&&(r_l ==1)){ l_m = 1;for(i=0;i<5;i++) { } r_m = 0;delay(5);r_m = 1;delay(45); } else if((l_l ==1)&&(r_l ==0)){ } else if((l_1==1)&&(l_2==1)){ } else { l_m = 0;r_m = 0;delay(5);l_m = 1;r_m=1;l_m=1;r_m = 1;for(i=0;i<5;i++){ } l_m = 0;delay(5);l_m = 1;delay(45); } r_m = 1;delay(45);} } 第三部分:心得體會(huì)、合理性建議或意見 參加這次機(jī)器人實(shí)驗(yàn)基礎(chǔ)培訓(xùn),我最大的收獲便是對(duì)機(jī)械控制有了初步的了解,然后學(xué)會(huì)了Keil uVison和Proteus等軟件的用法,掌握了基本的C51單片機(jī)的初步調(diào)試和更改程序。在調(diào)試程序的過程中,我認(rèn)識(shí)到了規(guī)范的重要性,寫程序時(shí)一定要規(guī)范,否則就會(huì)在調(diào)試過程中報(bào)錯(cuò)。然后就是在焊制傳感器的過程中,掌握了電絡(luò)鐵的使用,并了解了傳感器的構(gòu)成和程序控制方法。然后在調(diào)試程序過程中,一開始我們準(zhǔn)備將所有控制函數(shù)寫在頭文件中,然后在主函數(shù)中調(diào)用,可是后來實(shí)踐過程中總是不能達(dá)到預(yù)期效果,經(jīng)過思考后,我想到了調(diào)用函數(shù)過程中變量的生存期問題,最終不得不放棄這種方法,采用正常的C語言函數(shù)寫法。其次,在理論課的學(xué)習(xí)中,接觸到了對(duì)未來學(xué)習(xí)模電或者數(shù)電有用的知識(shí)和模擬程序。非常感謝學(xué)長(zhǎng)們的幫助,我們從中學(xué)到了很多。 機(jī)器人及控制技術(shù)教學(xué)大綱 第一篇 機(jī)器人控制的數(shù)學(xué)基礎(chǔ) 第一章 引言 第二章 拓?fù)鋵W(xué)基礎(chǔ) 第三章近世代數(shù)基礎(chǔ) 第二篇 機(jī)器人本體控制(自學(xué))第一章 引言 第二章 剛體運(yùn)動(dòng) 第三章 機(jī)器人運(yùn)動(dòng)學(xué) 第四章 機(jī)器人動(dòng)力學(xué) 第三篇 機(jī)器人手指抓取控制 第一章 引言 第二章 微分幾何學(xué)基礎(chǔ) 曲線幾何(The Geometry of Curves)2 曲面(Surfaces)3 曲率(Curvatures)4 恒平均曲率曲面(Constant Mean Curvatures Surfaces)5 側(cè)地線,度量和等長(zhǎng)(Geodesics, Metrics and Isometries)6 完整和Gauss-Bonnet定理(Holonomy and the Gauss-Bonnet theorem)第三章 機(jī)器人手指抓取運(yùn)動(dòng)學(xué) 第四章 機(jī)器人手指抓取動(dòng)力學(xué) 第四章 機(jī)器人技術(shù)最新進(jìn)展 《工業(yè)機(jī)器人技術(shù)基礎(chǔ)》教學(xué)大綱 一、課程基本信息 課程名稱:工業(yè)機(jī)器人技術(shù)基礎(chǔ) 學(xué)時(shí):48 適用對(duì)象: 工業(yè)機(jī)器人技術(shù)專業(yè)、電氣自動(dòng)化技術(shù)專業(yè)、機(jī)電一體化技術(shù)專業(yè) 考核方式:考查 二、課程簡(jiǎn)介 機(jī)器人學(xué)是一門高度交叉的前沿學(xué)科,機(jī)器人技術(shù)是集力學(xué)、機(jī)械學(xué)、生物學(xué)、人類學(xué)、計(jì)算機(jī)科學(xué)與工程、控制論與控制工程學(xué)、電子工程學(xué)、人工智能、社會(huì)學(xué)等多學(xué)科知識(shí)之大成,是一項(xiàng)綜合性很強(qiáng)的新技術(shù)。通過該課程的學(xué)習(xí),使得學(xué)生基本熟悉這門技術(shù)以及其發(fā)展?fàn)顩r,為今后從事工業(yè)機(jī)器人的操作管理、維護(hù)維修、系統(tǒng)安裝調(diào)試和集成設(shè)計(jì)的工作打下基礎(chǔ)。 三、課程性質(zhì)與教學(xué)目的 本課程是專業(yè)基礎(chǔ)課,通過本課程的學(xué)習(xí),使學(xué)生了解機(jī)器人及其應(yīng)用,掌握機(jī)器人系統(tǒng)組成、機(jī)構(gòu)、運(yùn)動(dòng)分析、控制和使用的技術(shù)要點(diǎn)和基礎(chǔ)理論。機(jī)器人是典型的機(jī)電一體化裝置,它不是機(jī)械、電子的簡(jiǎn)單組合,而是機(jī)械、電子、控制、檢測(cè)、通信和計(jì)算機(jī)的有機(jī)融合,通過這門課的學(xué)習(xí),使學(xué)生對(duì)機(jī)器人有一個(gè)全面、深入的認(rèn)識(shí)。培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)基礎(chǔ)理論和專業(yè)知識(shí)分析問題解決問題的能力。第1章概述 機(jī)器人的基本概念,機(jī)器人的組成原理、機(jī)器人應(yīng)用與外部的關(guān)系、機(jī)器人應(yīng)用技術(shù)的現(xiàn)狀 第2章機(jī)器人的基礎(chǔ)知識(shí) 機(jī)器人的分類、機(jī)器人的基本術(shù)語與圖形符號(hào)、機(jī)器人的技術(shù)參數(shù)、機(jī)器人的運(yùn)動(dòng)學(xué)基礎(chǔ)、機(jī)器人的動(dòng)力學(xué)基礎(chǔ) 第3章機(jī)器人的機(jī)械結(jié)構(gòu)系統(tǒng) 機(jī)器人的機(jī)械結(jié)構(gòu)系統(tǒng)、機(jī)器人的腕部機(jī)構(gòu)、機(jī)器人的手部機(jī)構(gòu)、機(jī)器人的行走機(jī)構(gòu) 第4章機(jī)器人的驅(qū)動(dòng)系統(tǒng) 機(jī)器人的驅(qū)動(dòng)系統(tǒng)概述、電動(dòng)機(jī)及其特性、液壓驅(qū)動(dòng)系統(tǒng)及其特性 第5章機(jī)器人的控制系統(tǒng) 機(jī)器人的控制系統(tǒng)、伺服控制系統(tǒng)及其參數(shù)、交流伺服電動(dòng)機(jī)的調(diào)速、機(jī)器人控制系統(tǒng)結(jié)構(gòu)、機(jī)器人控制的示教再現(xiàn)、機(jī)器人控制系統(tǒng)舉例第6章機(jī)器人的感覺系統(tǒng) 機(jī)器人的傳感技術(shù)、機(jī)器人的內(nèi)部傳感器、機(jī)器人的外部傳感器、機(jī)器人的視覺系統(tǒng)、機(jī)器人傳感器的選擇 第7章機(jī)器人的語言系統(tǒng) 機(jī)器人的語言系統(tǒng)概述、常用的機(jī)器人語言簡(jiǎn)介、機(jī)器人的離線編程、機(jī)器人的編程示例 第8章工業(yè)機(jī)器人及其應(yīng)用 工業(yè)機(jī)器人概述、焊接機(jī)器人、搬運(yùn)機(jī)器人、噴涂機(jī)器人、裝配機(jī)器人 五、需要說明的問題 1.本大綱適用于工業(yè)機(jī)器人技術(shù)、電氣自動(dòng)化技術(shù)、機(jī)電一體化技術(shù)專業(yè);2.本大綱的學(xué)時(shí)為參考學(xué)時(shí),學(xué)時(shí)如有變化,任課教師可在此大綱的基礎(chǔ)上增減一些內(nèi)容。3.選用教材時(shí)要盡量選用新版教材,或最新獲獎(jiǎng)教材。 4.習(xí)題和實(shí)驗(yàn)內(nèi)容著重加深基本概念的理解,基本方法的運(yùn)用和創(chuàng)新能力的培養(yǎng),從而鞏固課堂教學(xué)效果。2017年8月24日 本文檔下載自360文檔中心,www.360docs.net更多營銷,職業(yè)規(guī)劃,工作簡(jiǎn)歷,入黨,工作報(bào)告,總結(jié),學(xué)習(xí)資料,學(xué)習(xí)總結(jié),PPT模板下載,范文等文檔下載;轉(zhuǎn)載請(qǐng)保留出處:http://www.360docs.net/doc/info-c6444f51777f5acfa1c7aa00b52acfc789eb9f23.html 課程名稱:工業(yè)組態(tài)控制技術(shù) 任務(wù)一:我的第一個(gè)工程,時(shí)間3月8日 任務(wù)二:水箱控制,時(shí)間3月22日 任務(wù)三:用戶權(quán)限的管理,時(shí)間 4月18日 任務(wù)一:我的第一個(gè)工程 一、工作任務(wù) 1、理解組態(tài)技術(shù)、MCGS組態(tài)軟件的特點(diǎn)和構(gòu)成。 2、建立一個(gè)簡(jiǎn)單的MCGS組態(tài)工程。 二、工作要求 1、正確回答相關(guān)的理論知識(shí)點(diǎn)。 2、建立名為“我的第一個(gè)工程”的工程項(xiàng)目,保存到F盤以自己學(xué)號(hào)和姓名命名的文件夾中。 3、工程運(yùn)行時(shí),立即最大化顯示工程畫面,窗口標(biāo)題為“我的第一個(gè)工程”。畫面中有:1臺(tái)水泵、2個(gè)水罐、2個(gè)閥門、3段水管和相關(guān)文字注釋。工程效果圖可參見MCGS幫助系統(tǒng):MCGS快速入門。 三、工作過程 (一)理論學(xué)習(xí),回答下列問題: 1、什么是工控組態(tài)軟件? 2、說明英文縮寫的含義:MCGS、ODBC、OPC、OLE。 3、MCGS系統(tǒng)包括哪些部分?其核心是什么? 4、MCGS系統(tǒng)為什么與設(shè)備無關(guān)? (二)詳細(xì)寫出組態(tài)工作過程 1、創(chuàng)建自己的文件夾 打開F盤,鼠標(biāo)右擊,新建文件夾,將文件夾命名為自己的學(xué)號(hào)和姓名,如:41011150 XX。這樣在F盤根目錄下就建立了自己的文件夾——F:41011150 XX。(每次組態(tài)工作前,先創(chuàng)建自己的文件夾,然后將組態(tài)工程文件保存在此文件夾中,今后不再重復(fù)說明)。 2、創(chuàng)建工程 (1)雙擊桌面“MCGS組態(tài)環(huán)境”圖標(biāo),打開MCGS組態(tài)環(huán)境窗口。(一般會(huì)自動(dòng)彈出一個(gè)最近編輯過的工作臺(tái)窗口,將它關(guān)閉。) (2)單擊“文件”菜單中的“新建工程”選項(xiàng),彈出一個(gè)工作臺(tái)窗口。一般會(huì)在D:MCGSWORK下自動(dòng)生成新建工程,默認(rèn)的工程名為:“新建工程0.MCG”(若新建工程0.MCG已經(jīng)存在,則新建工程的順序號(hào)順延,如:1、2、3等)。 (3)單擊“文件”菜單中的“工程另存為”選項(xiàng),彈出文件保存窗口。在“文件名”一欄內(nèi)輸入“我的第一個(gè)工程”。再單擊“保存在”一欄內(nèi)的小黑三角,找到自己的文件夾,如F:41011150 XX。點(diǎn)擊“保存”按鈕,工程創(chuàng)建完畢。 3、創(chuàng)建用戶窗口 (1)在工作臺(tái)中,單擊“新建窗口”按鈕,新建一個(gè)用戶窗口,名稱為“窗口0”。(2)選擇“窗口0”,單擊“窗口屬性”按鈕,進(jìn)入“用戶窗口屬性設(shè)置”。將窗口名稱改為:我的第一個(gè)工程,窗口標(biāo)題改為:我的第一個(gè)工程,窗口內(nèi)容注釋改為:××設(shè)計(jì)(如:41011150 XX設(shè)計(jì)),窗口位置選中“最大化顯示”,其它不變,單擊“確認(rèn)”按鈕。這時(shí)原來的“窗口0”已經(jīng)變?yōu)椤拔业牡谝粋€(gè)工程”。 (3)選中“我的第一個(gè)工程”,點(diǎn)擊右鍵,選擇下拉菜單中的“設(shè)置為啟動(dòng)窗口”選項(xiàng),將該窗口設(shè)置為MCGS運(yùn)行環(huán)境中自動(dòng)加載的啟動(dòng)窗口。 4、編輯畫面 (1)選中“我的第一個(gè)工程”窗口圖標(biāo),單擊“動(dòng)畫組態(tài)”按鈕(或直接雙擊“我的第一個(gè)工程”窗口圖標(biāo)),進(jìn)入動(dòng)畫組態(tài)窗口。若沒有看見工具箱則單擊“查看”菜單,選擇“繪圖工具箱”。下面開始編輯本窗口的畫面。 (2)畫水泵:?jiǎn)螕艄ぞ呦洹安迦朐保瑥棾觥皩?duì)象元件庫管理”對(duì)話框,從“泵”類中選取泵40,再將泵調(diào)整為適當(dāng)大小,用鼠標(biāo)拖動(dòng)到適當(dāng)位置(參照效果圖)。從最下一行的狀態(tài)條中,記錄泵的位置和大小。若沒有看見狀態(tài)條則單擊“查看”菜單,選擇“狀態(tài)條”。(3)畫“儲(chǔ)藏罐”:同理,在“儲(chǔ)藏罐”類中分別選取罐 17、罐53。參照效果圖調(diào)整位置和大小,并做好記錄。 (4)畫“閥門”:同理,在“閥門”類中分別選取閥 58、閥44。參照效果圖調(diào)整位置和大小,并做好記錄。 (5)畫“水管”:?jiǎn)螕艄ぞ呦洹傲鲃?dòng)塊”,移動(dòng)鼠標(biāo)至窗口的預(yù)定位置,點(diǎn)擊一下鼠標(biāo)左鍵,移動(dòng)鼠標(biāo),在鼠標(biāo)光標(biāo)后形成一道虛線,拖動(dòng)一定距離后,點(diǎn)擊鼠標(biāo)左鍵,生成一段流動(dòng)塊。再拖動(dòng)鼠標(biāo)(可沿原來方向,也可垂直原來方向),生成下一段流動(dòng)塊。雙擊鼠標(biāo)左鍵即可結(jié)束繪制。(若想修改流動(dòng)塊,先選中流動(dòng)塊,鼠標(biāo)指針指向流動(dòng)塊周圍的某一小方塊,按住左鍵拖動(dòng)鼠標(biāo),即可調(diào)整流動(dòng)塊的形狀)。參照效果圖,用流動(dòng)塊畫出3段水管。為了讓水管兩端與水罐連接的美觀,或者水管擋住了閥門畫面,可以將水管的圖層移動(dòng)至最底層。選擇所畫的流動(dòng)塊,右擊鼠標(biāo),選擇“排列”,再選擇“最后面”。(6)作出“文字注釋”:?jiǎn)螕艄ぞ呦洹皹?biāo)簽”,在水泵下方用鼠標(biāo)拖動(dòng)出一個(gè)文本框,輸入“水泵”。再雙擊“水泵”標(biāo)簽,彈出“對(duì)象組態(tài)屬性設(shè)置”對(duì)話框,邊線顏色選“無邊線顏色”,字符顏色選“藍(lán)色”,字符字體選“宋體/粗體/三號(hào)”,單擊“確認(rèn)”。若文字顯示不全,則用鼠標(biāo)調(diào)整文本框大小(調(diào)大一些沒有關(guān)系)。同理,在適當(dāng)?shù)奈恢梅謩e畫出另外的文字標(biāo)簽“水罐1”、“水罐2”、“調(diào)節(jié)閥”、“出水閥”。(7)保存畫面:選擇“文件”菜單中的“保存窗口”選項(xiàng),保存畫面。 5、工程運(yùn)行 單擊單擊“文件”菜單中的“進(jìn)入運(yùn)行環(huán)境”,系統(tǒng)提示:并口(USB接口)上沒有軟件狗,只能運(yùn)行30分鐘!點(diǎn)擊“確認(rèn)”即可進(jìn)入MCGS運(yùn)行環(huán)境(若關(guān)閉了“MCGS組態(tài)環(huán)境”窗口,則在桌面上雙擊“MCGS運(yùn)行環(huán)境”即可)。 6、工程提交 將電腦中建立的自己的文件夾發(fā)送到自己的移動(dòng)盤中,并嘗試運(yùn)行一次,確認(rèn)組態(tài)工程被正確保存。運(yùn)行過的組態(tài)工程會(huì)多一個(gè)加字母D的數(shù)據(jù)庫文件“我的第一個(gè)工程D”,下次運(yùn)行時(shí)還會(huì)自動(dòng)生成,若運(yùn)行數(shù)據(jù)無需保存,可以刪除。 四、工作結(jié)果 進(jìn)入MCGS運(yùn)行環(huán)境,立即最大化顯示標(biāo)題為“我的第一個(gè)工程”的工程畫面,畫面內(nèi)容達(dá)到設(shè)計(jì)要求。工程效果圖如下:(參見程序文件) 五、總結(jié)與體會(huì) 圍繞以下要點(diǎn)來談?wù)勍瓿杀敬稳蝿?wù)的體會(huì): 1、本次任務(wù)中自己做了什么?遇到哪些問題?如何解決的? 2、完成這次任務(wù)有什么收獲? 任務(wù)二:水箱控制 一、工作任務(wù) 1、制作水箱控制組態(tài)畫面。 2、模擬水箱控制過程。 二、工作要求 1、正確回答相關(guān)的理論知識(shí)點(diǎn)。 2、建立名為“水箱控制”的工程項(xiàng)目,保存到F盤以自己學(xué)號(hào)和姓名命名的文件夾中。 3、工程運(yùn)行時(shí),立即最大化顯示工程畫面,窗口標(biāo)題為“水箱控制”。畫面中有:2臺(tái)水泵、1個(gè)水罐、1個(gè)滑動(dòng)輸入器、2段水管和相關(guān)文字注釋。下水泵排水、上水泵進(jìn)水。水位可以人工調(diào)節(jié),也可以在20-80之間自動(dòng)調(diào)節(jié)。 三、工作過程 (一)理論學(xué)習(xí),回答下列問題: 1、什么是用戶窗口? 2、怎樣產(chǎn)生動(dòng)畫效果?動(dòng)畫連接主要有哪幾種?rdf 3、水管是用什么構(gòu)件制作的?怎樣使進(jìn)、出水的流動(dòng)方向相反? 4、腳本程序有什么用處?共有幾種語句? (二)詳細(xì)寫出組態(tài)工作過程 1、創(chuàng)建自己的文件夾 打開F盤,鼠標(biāo)右擊,新建文件夾,將文件夾命名為自己的學(xué)號(hào)和姓名,如:41011150 XX。這樣在F盤根目錄下就建立了自己的文件夾——F:41011150 XX。 2、創(chuàng)建工程 3、創(chuàng)建用戶窗口 4、編輯畫面 5、工程運(yùn)行 6、工程提交 四、工作結(jié)果 進(jìn)入MCGS運(yùn)行環(huán)境,立即最大化顯示標(biāo)題為“水箱控制”的工程畫面,畫面內(nèi)容達(dá)到設(shè)計(jì)要求。可以看到水箱水位在自動(dòng)變化。工程效果圖如下:(參見程序文件)人工調(diào)節(jié)水位的模擬:?? 五、總結(jié)與體會(huì) 圍繞以下要點(diǎn)來談?wù)勍瓿杀敬稳蝿?wù)的體會(huì): 1、本次任務(wù)中自己做了什么?遇到哪些問題?如何解決的? 2、完成這次任務(wù)有什么收獲? 任務(wù)三:用戶權(quán)限的管理 一、工作任務(wù) 1、設(shè)置工程密碼,保護(hù)工程不會(huì)被其他人打開使用或修改。 2、設(shè)置工程試用期,通過多級(jí)密碼控制系統(tǒng)的運(yùn)行或停止。 3、規(guī)定操作權(quán)限,提高工程安全性。 二、工作要求 1、正確回答相關(guān)的理論知識(shí)點(diǎn)。 2、建立名為“安全機(jī)制練習(xí)”的工程項(xiàng)目,保存到F盤以自己學(xué)號(hào)和姓名命名的文件夾中。 3、工程運(yùn)行時(shí),立即最大化顯示工程畫面,窗口標(biāo)題為“安全機(jī)制練習(xí)”。畫面中有:用戶權(quán)限分配表,和相關(guān)文字注釋。通過菜單操作,可根據(jù)不同用戶權(quán)限在其他5個(gè)畫面之間跳轉(zhuǎn)。 三、工作過程 (一)理論學(xué)習(xí),回答下列問題: 1、主控窗口的主要功能是什么? 2、權(quán)限設(shè)置的作用是什么? 3、怎樣設(shè)置試用期? 4、怎樣設(shè)置啟動(dòng)屬性? (二)詳細(xì)寫出組態(tài)工作過程 1、創(chuàng)建自己的文件夾 2、創(chuàng)建工程 3、創(chuàng)建用戶窗口 4、編輯畫面 5、工程運(yùn)行 6、工程提交 四、工作結(jié)果 進(jìn)入MCGS運(yùn)行環(huán)境,顯示??工程畫面,畫面內(nèi)容達(dá)到設(shè)計(jì)要求。可以操作??。工程效果圖如下:(參見程序文件) 五、總結(jié)與體會(huì) 圍繞以下要點(diǎn)來談?wù)勍瓿杀敬稳蝿?wù)的體會(huì): 1、本次任務(wù)中自己做了什么?遇到哪些問題?如何解決的? 2、完成這次任務(wù)有什么收獲? 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 姓名: 學(xué)號(hào): 班級(jí): 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 實(shí)驗(yàn)一 線性表的操作(2學(xué)時(shí)) 實(shí)驗(yàn)類型:驗(yàn)證性 實(shí)驗(yàn)要求:必修 實(shí)驗(yàn)學(xué)時(shí): 2學(xué)時(shí) 一、實(shí)驗(yàn)?zāi)康模?/p> 參照給定的線性表順序表類和鏈表類的程序樣例,驗(yàn)證給出的線性表的常見算法。 二、實(shí)驗(yàn)要求: 1、掌握線性表順序表類和鏈表類的特點(diǎn)。掌握線性表的常見算法。 2、提交實(shí)驗(yàn)報(bào)告,報(bào)告內(nèi)容包括:目的、要求、算法描述、程序結(jié)構(gòu)、主要變量說明、程序清單、調(diào)試情況、設(shè)計(jì)技巧、心得體會(huì)。 三、實(shí)驗(yàn)內(nèi)容: 設(shè)計(jì)一個(gè)靜態(tài)數(shù)組存儲(chǔ)結(jié)構(gòu)的順序表類,要求編程實(shí)現(xiàn)如下任務(wù): 1)建立一個(gè)線性表,首先依次輸人整數(shù)數(shù)據(jù)元素(個(gè)數(shù)根據(jù)自己的需要鍵盤給定) 2)刪除指定位置的數(shù)據(jù)元素(指定元素位置通過鍵盤輸入)再依次顯示刪除后的線性表中的數(shù)據(jù)元素。 3)查找指定數(shù)據(jù)的數(shù)據(jù)元素(指定數(shù)據(jù)的大小通過鍵盤輸入),若找到則顯示位置,若沒有找到就顯示0。 四、要求 1)采用順序表實(shí)現(xiàn),假設(shè)該順序表的數(shù)據(jù)元素個(gè)數(shù)在最壞情況下不會(huì)超過50個(gè)。 2)寫出完整的程序并能調(diào)試通過即可 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 { if(nn==mm) return(-1);if(nn==0) return(0);return(1);} template cout<<“overflow”< return;} if(i>nn) i=nn+1;if(i<1) i=1;for(k=nn;k>=i;k--) v[k]=v[k-1];v[i-1]=b;nn=nn+1;return;} template cout<<“underflow!”< return;} if((i<1)||(i>nn)){ cout<<“Not this element in the list!”< return;} for(k=i;k v[k-1]=v[k]; 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 return 0;} 運(yùn)行結(jié)果如下: 心得體會(huì): 1.通過本次試驗(yàn),我掌握了線性表的基本概念。 2.通過本次試驗(yàn),我懂得了如何建立一個(gè)順序表,并能對(duì)順序表進(jìn)行基本的建立、插入、檢測(cè)、刪除以及查找的操作。 3.本次試驗(yàn)我知道了線性表的順序存儲(chǔ)結(jié)構(gòu)具有如下兩個(gè)特點(diǎn):(1)線性表中所有元素所占的存儲(chǔ)空間是連續(xù)的。 (2)線性表中各元素在存儲(chǔ)空間中是按邏輯順序依次存放的。 實(shí)驗(yàn)二 棧、隊(duì)列的操作 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 #define stacksize 5 typedef struct { char taskname[10];int taskno; }DataType; class stack { private: public: }; //任務(wù)名 //任務(wù)號(hào) int top;DataType task[stacksize];bool init();bool empty();bool push(DataType d);bool pop(DataType &d); bool stack::init(){ top=0;int i;for(i=0;i strcpy(task[i].taskname,“"); task[i].taskno=-1;} return true;} bool stack::empty(){ return top>0?false:true; } 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 queue_node(int d){ data=d; next=NULL;} }; class queue { private: queue_node *front,*rear;public: bool init();bool empty();bool enqueue(int d);bool dequeue(int &d);}; bool queue::init(){ front=rear=new queue_node; return true;} bool queue::empty(){ if(front==rear)return true;else return false;} bool queue::enqueue(int d){ rear->next=new queue_node(d);rear=rear->next;return true;} 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 bool sqqueue::enqueue(int d){ if((rear+1)%queuesize==front)return false;base[rear]=d;rear=(rear+1)%queuesize;return true;} bool sqqueue::dequeue(int &d){ if(front==rear)return false;d=base[front];front=(front+1)%queuesize;return true;} void main(){ DataType dd[5],tt; char tn[]=”任務(wù)a“;int i;for(i=0;i<5;i++){ strcpy(dd[i].taskname,tn);tn[4]++;dd[i].taskno=i+1;} stack mystack;mystack.init();for(i=0;i<5;i++){ mystack.push(dd[i]);} cout<<”入棧完成,按回車鍵繼續(xù)……“;getchar(); 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 實(shí)驗(yàn)結(jié)果: 實(shí)驗(yàn)三 查找算法實(shí)現(xiàn)(2學(xué)時(shí)) 實(shí)驗(yàn)類型:驗(yàn)證性 實(shí)驗(yàn)要求:必修 實(shí)驗(yàn)學(xué)時(shí): 2學(xué)時(shí) 一、實(shí)驗(yàn)?zāi)康模?/p> 參照各種查找算法程序樣例,驗(yàn)證給出的查找常見算法。 二、實(shí)驗(yàn)要求: 1、掌握各種查找算法的特點(diǎn),測(cè)試并驗(yàn)證查找的常見算法。 2、提交實(shí)驗(yàn)報(bào)告,報(bào)告內(nèi)容包括:目的、要求、算法描述、程序結(jié)構(gòu)、主要變量說明、程序清單、調(diào)試情況、設(shè)計(jì)技巧、心得體會(huì)。 三、實(shí)驗(yàn)內(nèi)容: 1.建立有序表,采用折半查找實(shí)現(xiàn)某一已知的關(guān)鍵字的查找。 2.利用折半查找算法在一個(gè)有序表中插入一個(gè)元素,并保持表的有序性。 源程序如下: #include int mm; int nn; T *v;public: sL_List(){mm=0;nn=0;return;} sL_List(int); int search_sL_List(T); int insert_sL_List(int,T); void prt_sL_List();}; template 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 int i;for(i=0;i cout< int main(){ int k,t,q,result;int a[20]={10,20,30,40,50,60,70,80};sL_List s.insert_sL_List(k+1,a[k]);cout<<”輸出有序?qū)ο髎:“< 實(shí)驗(yàn)結(jié)果如下: 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 2、提交實(shí)驗(yàn)報(bào)告,報(bào)告內(nèi)容包括:目的、要求、算法描述、程序結(jié)構(gòu)、主要變量說明、程序清單、調(diào)試情況、設(shè)計(jì)技巧、心得體會(huì)。 三、實(shí)驗(yàn)內(nèi)容: 輸入一組關(guān)鍵字序列分別實(shí)現(xiàn)下列排序: 1.實(shí)現(xiàn)直接插入排序; 2.實(shí)現(xiàn)冒泡排序算法; 3.實(shí)現(xiàn)快速排序算法(取第一個(gè)記錄或中間記錄作為基準(zhǔn)記錄); 4.快速排序的非遞歸算法; 5.堆排序。 把上述幾種排序的算法編寫成菜單,根據(jù)輸入的數(shù)字不同執(zhí)行對(duì)應(yīng)的排序算法。 源程序如下: #include t=p[j]; k=j-1; while((k>=0)&&(p[k]>t)) { p[k+1]=p[k]; k=k-1; } p[k+1]=t;} return;} //實(shí)現(xiàn)冒泡排序 template 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 static int split(T p[],int n){ int i,j,k,l;T t;i=0;j=n-1;k=(i+j)/2;if((p[i]>=p[j])&&(p[j]>=p[k])) l=j;else if((p[i]>=p[k])&&(p[k]>=p[j])) l=k;else l=i;t=p[l];p[l]=p[i];while(i!=j){ while((i j=j-1; if(i { p[i]=p[j]; i=i+1; while((i i=i+1; if(i { p[j]=p[i]; j=j-1; } } } p[i]=t;return(i);} //實(shí)現(xiàn)堆排序 template sift(p,i,n-1);for(i=n-1;i>=1;i--) 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告 p[i]=100.0+200.0*p[i];cout<<”排列前的序列為:“< cout< cout< cout< cout< cout< 運(yùn)行結(jié)果如下: 《軟件開發(fā)技術(shù)基礎(chǔ)》實(shí)驗(yàn)報(bào)告第二篇:機(jī)器人及控制技術(shù)教學(xué)大綱
第三篇:《工業(yè)機(jī)器人技術(shù)基礎(chǔ)+++》教學(xué)大綱
第四篇:《工業(yè)組態(tài)控制技術(shù)》實(shí)驗(yàn)報(bào)告
第五篇:軟件開發(fā)技術(shù)基礎(chǔ)的實(shí)驗(yàn)報(bào)告