第一篇:Android大作業(yè)報(bào)告
移動(dòng)設(shè)備軟件應(yīng)用與開(kāi)
發(fā) 大作業(yè)報(bào)告
姓 名: 學(xué) 號(hào): 班 級(jí): 院 系: 日 期:
任課教師:
一、程序的運(yùn)行環(huán)境、安裝步驟
1、運(yùn)行環(huán)境 游戲運(yùn)行環(huán)境:Android1.5以上版本
2、程序的組成部份:
2.1、JDK安裝
1.我的電腦->屬性->高級(jí)->環(huán)境變量->系統(tǒng)變量中添加以下環(huán)境變量: 2.JAVA_HOME值為: D:Program FilesJavajdk1.6.0_18(你安裝JDK的目錄)3.CLASSPATH值為:.;%JAVA_HOME%libtools.jar;%JAVA_HOME%libdt.jar;%JAVA_HOME%bin;4.Path: 在開(kāi)始追加 %JAVA_HOME%bin;5.NOTE:前面四步設(shè)置環(huán)境變量對(duì)搭建Android開(kāi)發(fā)環(huán)境不是必須的,可以跳過(guò)。
安裝完成之后,可以在檢查JDK是否安裝成功。打開(kāi)cmd窗口,輸入java –version 查看JDK的版本信息。出現(xiàn)類(lèi)似下面的畫(huà)面表示安裝成功了:
2.2、Eclipse安裝 2.3、Android SDK安裝
在A(yíng)ndroid Developers下載android-sdk_r05-windows.zip,下載完成后解壓到任意路徑。運(yùn)行SDK Setup.exe,點(diǎn)擊Available Packages。如果沒(méi)有出現(xiàn)可安裝的包,請(qǐng)點(diǎn)擊Settings,選中Misc中的“Force https://...”這項(xiàng),再點(diǎn)擊Available Packages。
選擇希望安裝的SDK及其文檔或者其它包,點(diǎn)擊Installation Selected、Accept All、Install Accepted,開(kāi)始下載安裝所選包
在用戶(hù)變量中新建PATH值為:Android SDK中的tools絕對(duì)路徑(本機(jī)為D:AndroidDevelopandroid-sdk-windowstools)。image圖
2、設(shè)置Android SDK的環(huán)境變量
“確定”后,重新啟動(dòng)計(jì)算機(jī)。重啟計(jì)算機(jī)以后,進(jìn)入cmd命令窗口,檢查SDK是不是安裝成功。
運(yùn)行 android –h 如果有類(lèi)似以下的輸出,表明安裝成功:
圖
3、驗(yàn)證Android SDK是否安裝成功
2.4、ADT安裝
打開(kāi) Eclipse IDE,進(jìn)入菜單中的 “Help”-> “Install New Software” 點(diǎn)擊Add...按鈕,彈出對(duì)話(huà)框要求輸入Name和Location:Name自己隨便取,Location輸入http://dl-ssl.google.com/android/eclipse。如下圖所示:
確定返回后,在work with后的下拉列表中選擇我們剛才添加的ADT,我們會(huì)看到下面出有Developer Tools,展開(kāi)它會(huì)有Android DDMS和Android Development Tool,勾選他們。如下圖所示:
然后就是按提示一步一步next。完成之后:
選擇Window > Preferences...在左邊的面板選擇Android,然后在右側(cè)點(diǎn)擊Browse...并選中SDK路徑,本機(jī)為:
D:AndroidDevelopandroid-sdk-windows點(diǎn)擊Apply、OK。配置完成。2.5、創(chuàng)建AVD 為使Android應(yīng)用程序可以在模擬器上運(yùn)行,必須創(chuàng)建AVD。
1、在Eclipse中。選擇Windows > Android SDK and AVD Manager
2、點(diǎn)擊左側(cè)面板的Virtual Devices,再右側(cè)點(diǎn)擊New
3、填入Name,選擇Target的API,SD Card大小任意,Skin隨便選,Hardware目前保持默認(rèn)值
4、點(diǎn)擊Create AVD即可完成創(chuàng)建AVD 注意:如果你點(diǎn)擊左側(cè)面板的Virtual Devices,再右側(cè)點(diǎn)擊New,而target下拉列表沒(méi)有可選項(xiàng)時(shí),這時(shí)候你:
點(diǎn)擊左側(cè)面板的Available Packages,在右側(cè)勾選https://dl-ssl.google.com/android/repository/repository.xml,如下圖所示:
然后點(diǎn)擊Install Selected按鈕,接下來(lái)就是按提示做就行了
要做這兩步,原因是在1.3、Android SDK安裝中沒(méi)有安裝一些必要的可用包(Available Packages)。2.5、創(chuàng)建Android工程
三、程序開(kāi)發(fā)平臺(tái)
(1)代碼行數(shù):1000
(2)開(kāi)發(fā)環(huán)境:Android Developer Tools Build: v22.6.2-1085508
apache-ant-1.9.3
四、程序功能說(shuō)明:
單機(jī)屏幕按住不放可以拖動(dòng)魔方轉(zhuǎn)動(dòng),魔方上下左右空白處可以轉(zhuǎn)動(dòng)魔方相對(duì)那一面。
五、應(yīng)用核心源碼
class MFtestSurfaceView extends GLSurfaceView {
private MFtestRenderer mRenderer;
private float mPreviousX;
private float mPreviousY;//上一次的點(diǎn)
private float mDownPreviousX;
private float mDownPreviousY;//上一次的Down點(diǎn)
// private int oldDownX;
// private int
private float theta;
private float fai;//球坐標(biāo)
public MFtestSurfaceView(Context context){
super(context);
theta=(float)3.14159/4;
fai=(float)3.14159/4;
// Set the Renderer for drawing on the GLSurfaceView
mRenderer = new MFtestRenderer();
setRenderer(mRenderer);
setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY);
}
@Override
public boolean onTouchEvent(MotionEvent e){
// MotionEvent reports input details from the touch screen
// and other input controls.In this case, you are only
// interested in events where the touch position changed.float x = e.getX();
float y = e.getY();
switch(e.getAction()){
case MotionEvent.ACTION_MOVE://如果是 移動(dòng)的話(huà)
float dx = xmPreviousY;//x,y的變換值(不是0,就是1)
float te=theta;
theta=theta+dy/100;//角度是弧度值
if(!(theta>0&&theta<3.14159))
{
theta=te;//法線(xiàn)始終向上
}
fai=fai+ dx/100;
//x=rsinθcosφ
mRenderer.eyez=(float)(3*Math.sin(theta)*Math.cos(fai));
//y=rsinθsinφ
mRenderer.eyex=(float)(3*Math.sin(theta)*Math.sin(fai));
////z=rcosθ
利用球坐標(biāo)使觀(guān)察點(diǎn)始終維持在半徑為3的球上
mRenderer.eyey=(float)(3*Math.cos(theta));
requestRender();
//System.out.println(x+“
”+y);
break;
case MotionEvent.ACTION_DOWN:
mDownPreviousX=x;
mDownPreviousY=y;
break;
case MotionEvent.ACTION_UP:
if((((x-mDownPreviousX)>-5)&&((x-mDownPreviousX)<5))&&(((y-mDownPreviousY)>-5)&&((y-mDownPreviousY)<5)))//(((x-mDownPreviousX)>-3)||((x-mDownPreviousX)>-3))&&(((y-mDownPreviousY)>-3)||((y-mDownPreviousY)>-3))
{
//System.out.println(x-mDownPreviousX);
if(x
<(mRenderer.width*(1-Math.sqrt(18)/6)/2))
{
//左
//System.out.println(x+“
左
”+y);
mRenderer.action = 1;
DrawAnimation();
}
else if(x
>
mRenderer.width-(mRenderer.width*(1-Math.sqrt(18)/6)/2))
{
//右
//System.out.println(x+“
右
”+y);
mRenderer.action = 2;
DrawAnimation();
}
else if(y
<
mRenderer.height/2.0-!)
switch(mRenderer.action){
case 1:
if((mRenderer.eyex > 0)&&(mRenderer.eyez > 0)){
mRenderer.move=76;
}
else if((mRenderer.eyex > 0)&&(mRenderer.eyez < 0)){
mRenderer.move=70;
}
else if((mRenderer.eyex < 0)&&(mRenderer.eyez < 0)){
mRenderer.move=82;
}
else if((mRenderer.eyex < 0)&&(mRenderer.eyez > 0)){
mRenderer.move=66;
}
break;
case 2:
if((mRenderer.eyex > 0)&&(mRenderer.eyez > 0)){
mRenderer.move=66;
}
else if((mRenderer.eyex > 0)&&(mRenderer.eyez < 0)){
mRenderer.move=76;
}
else if((mRenderer.eyex < 0)&&(mRenderer.eyez < 0)){
mRenderer.move=70;
}
else if((mRenderer.eyex < 0)&&(mRenderer.eyez > 0)){
mRenderer.move=82;
}
break;
case 3:
mRenderer.move=85;
break;
case 4:
mRenderer.move=68;
break;
}
}
private void memcpy(int one,int two){
mRenderer.face_color[one]=mRenderer.face_color[two];
mRenderer.face_color[one+1]=mRenderer.face_color[two+1];
mRenderer.face_color[one+2]=mRenderer.face_color[two+2];
}
private void LeftShift(int a,int b,int c,int d){
// a
float temp1=mRenderer.face_color[a];
float temp2=mRenderer.face_color[a+1];
float temp3=mRenderer.face_color[a+2];
memcpy(a,b);
memcpy(b,c);
memcpy(c,d);
mRenderer.face_color[d]= temp1;
mRenderer.face_color[d+1]=temp2;
mRenderer.face_color[d+2]=temp3;
} }
private void DrawRotation(GL10 gl){
// 繪制小立方體
switch(move){ case 70: DrawCube19(gl);DrawCube11(gl);DrawCube2(gl);DrawCube22(gl);DrawCube13(gl);DrawCube5(gl);DrawCube25(gl);DrawCube16(gl);DrawCube8(gl);DrawCube18(gl);DrawCube10(gl);DrawCube1(gl);DrawCube21(gl);DrawCube4(gl);DrawCube24(gl);DrawCube15(gl);
gl.glPushMatrix();gl.glRotatef(-angle,0.0f,0.0f,1.0f);DrawCube0(gl);DrawCube9(gl);DrawCube17(gl);DrawCube3(gl);DrawCube12(gl);DrawCube20(gl);DrawCube6(gl);DrawCube14(gl);
DrawCube7(gl);
DrawCube23(gl);
gl.glPopMatrix();break;case 66: DrawCube0(gl);DrawCube9(gl);DrawCube17(gl);DrawCube3(gl);DrawCube12(gl);DrawCube20(gl);DrawCube6(gl);DrawCube14(gl);
DrawCube23(gl);DrawCube18(gl);DrawCube10(gl);DrawCube1(gl);
DrawCube21(gl);DrawCube4(gl);DrawCube24(gl);DrawCube15(gl);DrawCube7(gl);
gl.glPushMatrix();
gl.glRotatef(angle,0.0f,0.0f,1.0f);
DrawCube19(gl);DrawCube11(gl);DrawCube2(gl);DrawCube22(gl);
DrawCube13(gl);DrawCube5(gl);DrawCube25(gl);DrawCube16(gl);DrawCube8(gl);
gl.glPopMatrix();
break;
case 85:
DrawCube3(gl);DrawCube23(gl);DrawCube24(gl);DrawCube25(gl);
DrawCube4(gl);DrawCube5(gl);DrawCube6(gl);DrawCube7(gl);
DrawCube8(gl);DrawCube12(gl);DrawCube13(gl);DrawCube14(gl);
DrawCube15(gl);DrawCube16(gl);DrawCube20(gl);DrawCube21(gl);DrawCube22(gl);
gl.glPushMatrix();
gl.glRotatef(-angle,0.0f,1.0f,0.0f);
DrawCube0(gl);DrawCube1(gl);DrawCube2(gl);DrawCube9(gl);
DrawCube10(gl);DrawCube11(gl);DrawCube17(gl);DrawCube18(gl);DrawCube19(gl);
gl.glPopMatrix();
break;
case 68:
DrawCube0(gl);DrawCube1(gl);DrawCube2(gl);DrawCube3(gl);
DrawCube4(gl);DrawCube5(gl);DrawCube9(gl);DrawCube10(gl);
DrawCube11(gl);DrawCube12(gl);DrawCube13(gl);DrawCube17(gl);
DrawCube18(gl);DrawCube19(gl);DrawCube20(gl);DrawCube21(gl);DrawCube22(gl);
gl.glPushMatrix();
gl.glRotatef(angle,0.0f,-1.0f,0.0f);
DrawCube6(gl);DrawCube7(gl);DrawCube8(gl);DrawCube14(gl);
DrawCube15(gl);DrawCube16(gl);DrawCube23(gl);DrawCube24(gl);DrawCube25(gl);
gl.glPopMatrix();
break;
case 82:
DrawCube9(gl);DrawCube10(gl);DrawCube11(gl);DrawCube25(gl);
DrawCube12(gl);DrawCube13(gl);DrawCube14(gl);DrawCube15(gl);
DrawCube16(gl);DrawCube17(gl);DrawCube18(gl);DrawCube19(gl);
DrawCube20(gl);DrawCube21(gl);DrawCube22(gl);DrawCube23(gl);DrawCube24(gl);
gl.glPushMatrix();
gl.glRotatef(-angle,1.0f,0.0f,0.0f);
DrawCube0(gl);DrawCube1(gl);DrawCube2(gl);DrawCube3(gl);
DrawCube4(gl);DrawCube5(gl);DrawCube6(gl);DrawCube7(gl);DrawCube8(gl);
gl.glPopMatrix();
break;
case 76:
DrawCube0(gl);DrawCube1(gl);DrawCube2(gl);DrawCube3(gl);
DrawCube4(gl);DrawCube5(gl);DrawCube6(gl);DrawCube7(gl);
DrawCube8(gl);DrawCube9(gl);DrawCube10(gl);DrawCube11(gl);
DrawCube12(gl);DrawCube13(gl);DrawCube14(gl);DrawCube15(gl);DrawCube16(gl);
gl.glPushMatrix();
gl.glRotatef(-angle,-1.0f,0.0f,0.0f);
DrawCube17(gl);DrawCube18(gl);DrawCube19(gl);DrawCube20(gl);
DrawCube21(gl);DrawCube22(gl);DrawCube23(gl);DrawCube24(gl);DrawCube25(gl);
gl.glPopMatrix();
break;
default:
break;
}
六、工程運(yùn)行效果截圖
10月20日 查找Android開(kāi)發(fā)的配置及流程 10月22日 查找資料確定要使用的算法與數(shù)據(jù)結(jié)構(gòu) 10月23日 系統(tǒng)設(shè)計(jì) 10月24日 開(kāi)始編碼
10月28日 游戲基本功能完成,進(jìn)入測(cè)試階段 11月2日 程序開(kāi)發(fā)完成,編寫(xiě)文檔
八、總結(jié)
因?yàn)橹白约簩W(xué)習(xí)過(guò)Android游戲開(kāi)發(fā)的相關(guān)知識(shí),也自己做過(guò)一個(gè)小游戲,所以對(duì)這方面比較了解,不過(guò)之前開(kāi)發(fā)的小游戲是用Cocos2d引擎完成,和Android原生的不太一樣,通過(guò)這次大作業(yè)的完成,對(duì)Android的基本開(kāi)發(fā)有了一定的了解。對(duì)圖像的繪制有了一定的了解。
第二篇:Android大作業(yè)題目
《Android軟件開(kāi)發(fā)》課程考查作業(yè)題目
注意事項(xiàng):
1、每人可選下列題目中的一題完成課程設(shè)計(jì)。
2、學(xué)習(xí)委員于10月31日收齊上交。
3、本次要求打印稿(正反打印)。
一、題目及要求:
1、基于A(yíng)ndroid平臺(tái)的在線(xiàn)通信錄
功能要求:實(shí)現(xiàn)通信錄的在線(xiàn)備份還原功能,服務(wù)器端技術(shù)自定。
2、基于A(yíng)ndroid平臺(tái)的云記事本軟件
功能要求:具有記事本的基本功能。同時(shí)具備在線(xiàn)備份功能。服務(wù)器端技術(shù)自定。
3、基于BaiDu在線(xiàn)地圖的軌跡跟蹤服務(wù)
功能要求:
1、能動(dòng)態(tài)、實(shí)時(shí)記錄設(shè)備位置。
2、能在手機(jī)或者網(wǎng)頁(yè)上顯示地圖軌跡。服務(wù)端技術(shù)自定。
用例場(chǎng)景:小明今天80歲,患老年癡呆又喜歡出遠(yuǎn)門(mén),經(jīng)常發(fā)生走丟事故。小小明為了能實(shí)時(shí)掌握小明的行蹤,特意為他配備了裝有跟蹤服務(wù)的智能機(jī),從此小明再也不怕走丟了。
4、基于A(yíng)ndroid平臺(tái)的財(cái)務(wù)軟件
功能要求:
1、記賬和統(tǒng)計(jì)功能。2.實(shí)時(shí)備份 實(shí)現(xiàn)要求:客戶(hù)端基于A(yíng)ndroid,服務(wù)端技術(shù)自定
用例場(chǎng)景:隨手記,一家人共用一個(gè)賬號(hào),所有支出都清清楚楚
5、基于A(yíng)ndroid平臺(tái)的社交軟件
功能要求:參考QQ、微信、微博等
實(shí)現(xiàn)要求:客戶(hù)端基于A(yíng)ndroid,服務(wù)端技術(shù)自定
6、基于A(yíng)ndroid平臺(tái)的新聞客戶(hù)端
功能要求:參考網(wǎng)易新聞客戶(hù)端
實(shí)現(xiàn)要求:客戶(hù)端基于A(yíng)ndroid,服務(wù)端技術(shù)自定.7.基于A(yíng)ndroid平臺(tái)的天氣預(yù)報(bào)系統(tǒng)
功能要求:從服務(wù)器端下載天氣預(yù)報(bào)數(shù)據(jù)并顯示.實(shí)現(xiàn)要求:客戶(hù)端基于A(yíng)ndroid,服務(wù)端技術(shù)自定
8.自擬題目。要求有客戶(hù)端和服務(wù)端,具備一定的實(shí)用性。
二、設(shè)計(jì)文檔要求(格式同上學(xué)期多核開(kāi)發(fā)課程報(bào)告格式)
整體要求:使用Eclipse集成開(kāi)發(fā)環(huán)境完成課程設(shè)計(jì),界面友好,代碼的可維護(hù)性好,有必要的注釋和相應(yīng)的文檔。文檔具體書(shū)寫(xiě)內(nèi)容要求如下: ? 系統(tǒng)的需求概述 ? 系統(tǒng)的概要設(shè)計(jì) ? 設(shè)計(jì)與實(shí)現(xiàn)部分 ? 運(yùn)行畫(huà)面截圖
? 每一部分附上關(guān)鍵性代碼 ? 心得體會(huì)(每個(gè)人都要寫(xiě))
第三篇:大作業(yè)報(bào)告格式
大作業(yè)報(bào)告格式
一、題目及要求
二、設(shè)計(jì)思路
三、問(wèn)題分析及解決方案
四、輸入輸出
五、源代碼
六、測(cè)試結(jié)果
七、總結(jié)、系統(tǒng)評(píng)價(jià)及展望
八、***53922
第四篇:linux大作業(yè)報(bào)告
華南理工大學(xué)
Linux課程期末大作業(yè)
大作業(yè)題目:
學(xué)
院 :
專(zhuān)
業(yè): 姓
名: 學(xué)
號(hào):
2013年6月
一、大作業(yè)題目及要求
二、程序設(shè)計(jì)原理圖
三、程序原理描述及設(shè)計(jì)思路
四、大作業(yè)設(shè)計(jì)總結(jié)及心得體會(huì)
五、源代碼
/ 2
第五篇:《機(jī)械工程有限元分析基礎(chǔ)》大作業(yè)報(bào)告
《機(jī)械工程有限元分析基礎(chǔ)》大作業(yè)報(bào)告
題 目 | 飛輪 |
學(xué)生姓名 | 毛雨 |
學(xué) 號(hào) | 2118011416 |
院 部 | 機(jī)電工程與自動(dòng)化 |
專(zhuān) 業(yè) | 機(jī)械工程 |
班 級(jí) | 21180114 |
二〇二一年六月
一、建模過(guò)程/步驟
1、ANSYS分析開(kāi)始準(zhǔn)備工作
(1)清空數(shù)據(jù)庫(kù)并開(kāi)始一個(gè)新的分析,選取 Utility > File > Clear & Start New,彈出 Clear database and Start New 對(duì)話(huà)框,單擊 OK 按鈕,彈出 Verify 對(duì)話(huà)框,單擊 OK按鈕完成清空數(shù)據(jù)庫(kù)。
(2)指定新的工作文件名 指定工作文件名。選取 Utility Menu > File >Change Jobname,彈出 Change Jobname 對(duì)話(huà)框,在 Enter New Jobname 項(xiàng)輸入工作文件名“feilm”,單擊 OK按鈕完成工作文件名的定義。
(3)指定新的標(biāo)題指定分析標(biāo)題。選取 Utility Menu > File > Change Title,彈出 Change Title 對(duì)話(huà)框,在 Enter New Title 項(xiàng)輸入標(biāo)題名“feilun axis”為標(biāo)題名,然后單擊OK按鈕完成分析標(biāo)題的定義。
(4)重新刷新圖形窗口 選取 Utility Menu > Plot >Repiot,定義的信息顯示在圖形窗口中。
2、確定分析類(lèi)型
(1)運(yùn)行主菜單 Main Menu > Preference 彈出分析類(lèi)型設(shè)定對(duì)話(huà)框,選擇分析模塊為 Structural 結(jié)構(gòu)分析,然后單擊 OK 按鈕完成分析類(lèi)型定義。
(2)d定義單元及材料屬性
(3)新建單元類(lèi)型 運(yùn)行主菜單 Main Menu >Preprocessor > Element Type > Add/Edit/Delete 命令,彈出 Element types 對(duì)話(huà)框,單擊 Add 按鈕新建單元類(lèi)型,彈出 Library of Element Types 對(duì)話(huà)框,先選擇單元大類(lèi)為 solid,接著選擇 Quad 8 node 183,單擊 OK 按鈕,完成單元類(lèi)型選擇。接著單擊 Option 按鈕進(jìn)入單元設(shè)置選項(xiàng),在 Element behavior(K3)欄中更改選項(xiàng)為 Asisymmetric(軸對(duì)稱(chēng)),在單擊 OK按鈕返回 Element Type 對(duì)話(huà)框,單擊 Close 按鈕完成設(shè)置。
(4)定義材料屬性 運(yùn)行主菜單 Main Menu > Preprocessor > Material Props > Matorial Models 命令,系統(tǒng)顯示材料屬性設(shè)置對(duì)話(huà)框,在材料屬性對(duì)話(huà)框中一次選擇 Structure/Linear/Elastic/Isotropic。完成選擇后,彈出材料屬性對(duì)話(huà)框,方便輸入彈性模量210e9,泊松比0.27,單擊 OK 返回選擇 Density,彈出密度定義對(duì)話(huà)框,輸入密度 7800,單擊 OK返回。完成材料屬性設(shè)置后,關(guān)閉對(duì)話(huà)框離開(kāi)材料屬性設(shè)置。
3、建立幾何圖形
(1)建立關(guān)鍵點(diǎn)
(2)繪制矩形 運(yùn)行主菜單 Main Menu > Preprocessor > Modeling > Create > Areas > Rectangle > By Dimensions 命令,在對(duì)話(huà)框中分別輸入 1 點(diǎn)坐標(biāo) X1=50,Y1=0,2 點(diǎn)坐標(biāo) X2=55,Y2=50,單擊 Apply 按鈕完成第一個(gè)矩形繪制;同理,輸入3點(diǎn)坐標(biāo)X1=55,Y1=24,6點(diǎn)坐標(biāo) X2=75,Y2=16,單擊 Apply 按鈕完成第二個(gè)矩形繪制;輸入4點(diǎn)坐標(biāo) X1=75,Y1=40,5點(diǎn)坐標(biāo) X2=80,Y2=5,單擊 OK 按鈕完成第三個(gè)矩形繪制。
(3)布爾操作合并圖形 運(yùn)行主菜單 Main Menu > Preprocessor > Modeling > Operate > Booleans > Add 出現(xiàn)選擇拾取對(duì)話(huà)框,依次點(diǎn)擊圖形再點(diǎn) Apply,完成布爾加。
(4)設(shè)置顯示方式 運(yùn)行菜單 Utility Menu > Plot > Line,設(shè)置顯示方式為直線(xiàn),以便下一步為直線(xiàn)倒圓角。
(5)倒圓角 運(yùn)行主菜單 Main Menu > Preprocessor > Modeling > Create > Lines > Line Fillet 彈出對(duì)話(huà)框,拾取視頻中線(xiàn)段,單擊 OK按鈕,出現(xiàn)圓角半徑設(shè)置對(duì)話(huà)框,F(xiàn)illet Radius 項(xiàng)輸入5,其他項(xiàng)默認(rèn),單擊 Apply 按鈕完成第一個(gè)圓角繪制;同理,完成其他三個(gè)圓角的繪制。
(6)生成面 運(yùn)行菜單 Utility Menu > Plot > Line 設(shè)置直線(xiàn)顯示方式,運(yùn)行主菜單 Main Menu > Preprocessor > Modeling > Create > Areas >Arbitrary > By Lines,出現(xiàn)選擇拾取對(duì)話(huà)框,點(diǎn)擊拾取視頻中的線(xiàn)段,單擊 Apply 按鈕完成;同理,完成其他三個(gè)面的生成,單擊 OK 按鈕結(jié)束。
(7)布爾運(yùn)算 完成幾何圖形創(chuàng)建 運(yùn)行主菜單 Main Menu > Preprocessor > Modeling > Operate > Booleans > Add 出現(xiàn)選擇拾取對(duì)話(huà)框,依次點(diǎn)擊圖形再點(diǎn) Apply,完成幾何圖形創(chuàng)建。
4、劃分網(wǎng)格
(1)運(yùn)行主菜單 Main Menu > Preprocessor > Meshing > Mesh Tool(網(wǎng)格劃分工具)命令,出現(xiàn) Mesh Tool 菜單,單擊 Areas 中的 set 按鈕,在單元尺寸對(duì)話(huà)框中的 Element edge length 項(xiàng)中輸入單元尺寸,本列中輸入1,單擊 OK 按鈕確定。在 Mesh Tool 菜單中設(shè)置 Mesh 下拉框?yàn)?Areas,shape 項(xiàng)選擇 Quad(四邊形單元網(wǎng)格),單擊 Mesh 按鈕劃分網(wǎng)格,出現(xiàn)的 Mesh Areas 對(duì)話(huà)框中單擊飛輪平面,在點(diǎn)擊Apply,系統(tǒng)將自動(dòng)完成網(wǎng)格劃分。
5、加載求解
(1)顯示線(xiàn)段
(2)施加約束 運(yùn)行主菜單 Main Menu > Solution > Define Loads > Apply > Structulal > Displacement on Lines 命令,出現(xiàn)拾取菜單,選擇視頻中線(xiàn)段,單擊 Apply,出現(xiàn)約束定義對(duì)話(huà)框,選擇 All DOF 約束所有自由度,在 Displacement Value 選項(xiàng)輸入0,在單擊OK按鈕,完成約束定義。
(3)施加載荷 運(yùn)行 Main Menu > Solution > Define Loads > Apply > Structulal > Pressure > On Lines 命令,出現(xiàn)拾取菜單,選擇線(xiàn)段,單擊 Apply,出現(xiàn)載荷(壓力)定義對(duì)話(huà)框,輸入1e6,單擊 OK 按鈕完成。
(4)施加角速度 運(yùn)行主菜單 Main Menu > Solution > Define Loads > Apply > Structulal > Inertia >Angular veloc > Globel 彈出施加速度對(duì)話(huà)框。在 OMEGY Y 項(xiàng)輸入62.8 單擊 OK按鈕完成。
6、求解
(1)運(yùn)行主菜單 Main Menu > Solution > Current LS 命令,出現(xiàn)菜單中單擊 OK 按鈕確定。計(jì)算機(jī)開(kāi)始進(jìn)行求解,求解完成后出現(xiàn)“solution is done”提示表示求解完成。單擊 Close 按鈕完成求解。
7、查看分析結(jié)果
(1)改變觀(guān)察輸出結(jié)果坐標(biāo)系 在總體柱坐標(biāo)系下觀(guān)察應(yīng)力分布和變形比較方便,因此,吧結(jié)果坐標(biāo)系轉(zhuǎn)換到柱體坐標(biāo)系下:執(zhí)行 Main Menu > General Postproc > Options for output 出現(xiàn)結(jié)果坐標(biāo)系設(shè)置對(duì)話(huà)框,設(shè)置為柱坐標(biāo)系,單擊 OK按鈕完成。
(2)顯示節(jié)點(diǎn)(單元)徑向位移云圖 運(yùn)行主菜單 Main Menu > General Postproc > Plot Results > Contour Plot > Nodal Solu(or Element Solu)命令,選擇 DOF Solution > X-Component of Displacement 徑向位移(如果觀(guān)察周向位移,該項(xiàng)選擇為 Y-Component of Displacement),單擊 OK 按鈕。
(3)顯示節(jié)點(diǎn)(單元)應(yīng)力云圖 運(yùn)行主菜單 Main Menu > General Postproc > Plot Results > Contour Plot > Nodal Solu(or Element Solu)命令,選擇 stress > X-Component stress 徑向應(yīng)力(周向應(yīng)力為 Y-Component stress),單擊 OK按鈕。
(4)三維擴(kuò)展結(jié)果 運(yùn)行下拉菜單 Utility Menu > PlotCtrls > Style > symmetry Expansion > 2D Axis-symmetric 彈出軸對(duì)稱(chēng)擴(kuò)展設(shè)置對(duì)話(huà)框,選擇 Full expansion,單擊 OK 按鈕。(也可以改成四分之一顯示)
二、結(jié)果分析圖片
圖2.1 節(jié)點(diǎn)徑向位移云圖
圖2.2 節(jié)點(diǎn)徑向應(yīng)力云圖
圖2.2 三維擴(kuò)展結(jié)果圖
三、ANSYS軟件應(yīng)用小結(jié)
ANSYS軟件是融結(jié)構(gòu)、流體、電場(chǎng)、磁場(chǎng)、聲場(chǎng)分析于一體的大型通用有限元分析軟件。由世界上最大的有限元分析軟件公司之一的美國(guó)ANSYS開(kāi)發(fā)。它能與多數(shù)CAD軟件接口,實(shí)現(xiàn)數(shù)據(jù)的共享和交換,如Pro/Engineer, NASTRAN, Alogor, I-DEAS, AutoCAD等,是現(xiàn)代產(chǎn)品設(shè)計(jì)中的高級(jí)CAE工具之一。
本次實(shí)驗(yàn)是學(xué)習(xí)如何使用ANSYS 通過(guò)軟件對(duì)框架結(jié)構(gòu)內(nèi)力進(jìn)行計(jì)算,在還未學(xué)習(xí)該軟件前,對(duì)于此類(lèi)問(wèn)題,通常會(huì)采用力矩分配法來(lái)進(jìn)行計(jì)算,計(jì)算過(guò)程繁復(fù),計(jì)算量大,并且容易出錯(cuò)。導(dǎo)致過(guò)程緩慢,效果不顯著。
在這次大作業(yè)中,我跟隨著視頻中老師的講解一步步建模和受力分析,在一開(kāi)始的迷茫和不解中一次次觀(guān)看老師的教程,一點(diǎn)點(diǎn)學(xué)會(huì)使用軟件。在課堂上魏老師也在上課過(guò)程中給我們介紹了有關(guān)飛機(jī)上角架和飛輪以及她在研究生期間的研究設(shè)計(jì),給我打開(kāi)了一扇新的大門(mén)
對(duì)于其他應(yīng)用型軟件而言,ANSYS作為大型權(quán)威性的有限元分析軟件,在解題過(guò)程中是十分牢靠的。同時(shí)這也是一門(mén)不易掌握的軟件,因而,要學(xué)好ANSYS,我們要自己有較高的要求,所有實(shí)驗(yàn)的基礎(chǔ)都是需要我們有理論知識(shí)的支持,因此我們要對(duì)力學(xué)有一定程度的掌握。在掌握理論知識(shí)的同時(shí)我們要對(duì)軟件的使用積累經(jīng)驗(yàn),光有理論或者經(jīng)驗(yàn)都是不行的。要結(jié)合起來(lái)這樣我們才能有更深層次的探索和學(xué)習(xí)。