作為一名老師,常常要根據(jù)教學(xué)需要編寫教案,教案是教學(xué)活動的依據(jù),有著重要的地位。優(yōu)秀的教案都具備一些什么特點呢?下面是我給大家整理的教案范文,歡迎大家閱讀分享借鑒,希望對大家能夠有所幫助。
少兒編程教案試聽課篇一
第一課
最簡單的windows程序(2學(xué)時)
windows編程是一個很大的主題,涉及的方面也非常的多。windows始于90年代,至今windows編程的發(fā)展已經(jīng)非常成熟了,而單獨直接使用api的開發(fā)也是越來越少了。因此,市面上很少有泛泛的簡單入門級的windows程序設(shè)計了。一個是系統(tǒng)級的windows編程介紹,如windows核心編程。一個是方向級的windows編程介紹如windows圖形編程,windows網(wǎng)絡(luò)編程等等。我們這次課的主要參考用書是windows核心編程,同時也參考了一些其他內(nèi)容。鑒于教材的價格較貴,同時也需要考慮我們自身的學(xué)習(xí)內(nèi)容不一定很多以及學(xué)時的原因,就沒有定教材??次业慕贪赴?。
(1)win32 api api : application program interface。應(yīng)用程序接口。api就是在進行windows編程時使用的函數(shù)庫。本課就是
windows編程=api+c語言(或者c++語言)(2)開發(fā)環(huán)境
我校機器上安裝了vc++ 6.0。相信這是大家一直以來學(xué)習(xí)c,c++使用的開發(fā)環(huán)境。但vc60離我們實在太遠(yuǎn)了,它是一款90年代的產(chǎn)品,已經(jīng)近20年的歷史了。我們機器里還有vs2005 或 vs2008,那里面的c環(huán)境要比vc60強太多了,強烈建議大家使用更高級的平臺。本次授課的開發(fā)環(huán)境有兩個。一個是輕量級的dev c++,一個是重量級的vs2010.簡單程序我們都將用dev c++來實現(xiàn)。
dev c++是一個非常小的c環(huán)境,但性能要優(yōu)于vc60,調(diào)試環(huán)境不如vc60。這個環(huán)境在我們的共享資源里有,大家可以下載安裝。安裝過程非常簡單,一直下一步即可。
這是其主界面。
(3)最簡單的windows程序
提到最簡單的程序,幾乎所有的人都會想起經(jīng)典的helloworld。
這不是windows程序,如果在以前這叫dos程序,現(xiàn)在叫windows控制臺應(yīng)用程序。它不算windows程序,但它很簡單的就把helloword顯示到屏幕上了。而windows程序要想把helloworld顯示在屏幕上就確實不容易了。
3.1 訪問helloworld網(wǎng)站,因為把helloworld顯示在屏幕上并不容易,我們可以一點一點來,先讓helloworld以文字形式出現(xiàn)在其他地方,,hinstance,lpstr,int nshow)defwindowproc(hwnd,uint,wparam,lparam)getmeage(lpmsg lpmsg,hwnd hwnd,uint wmsgfiltermin,uint wmsgfiltermax).如果得到wm_quit返回0 translatemeage(&msg)dispathmeage(&msg)beginpaint(&paintstruct)textout(hdc,int,int,lpstr,int)endpaint(hwnd,&paintstruct)作業(yè):
自己建立應(yīng)用,在窗口100,100位置顯示helloworld 第三課 坐標(biāo)位置及大?。?學(xué)時)
在我們寫控制臺應(yīng)用的時候,不能自由的控制輸出顯示的位置。因此,沒有學(xué)習(xí)過這方面的內(nèi)容,現(xiàn)在我們創(chuàng)建了窗口,并且在窗口上顯示了hello world。這個過程涉及到很多涉及位置和大小的因素,如窗口的大小,顯示的位置,文字顯示的位置。說到位置,就涉及定位,說到定位就要說坐標(biāo)系。在屏幕上顯示內(nèi)容涉及到坐標(biāo)空間的知識。在windows應(yīng)用中坐標(biāo)空間分如下幾部分內(nèi)容
1、物理坐標(biāo)空間
物理坐標(biāo)空間,指的是物理設(shè)備上對應(yīng)的坐標(biāo)系。如顯示器
坐標(biāo)原點在左上角。如下是一個1024*768的屏幕物理坐標(biāo)(0,0)(1024,0)
(0,768)
2、設(shè)備坐標(biāo)空間
基于設(shè)備上下文指定的坐標(biāo)空間。如窗口內(nèi)顯示的文本,使用的坐標(biāo)就是基于窗口內(nèi)上下文的坐標(biāo)。
可以看到設(shè)備空間是物理空間體系的一個子空間。設(shè)備空間可以依賴于一個窗口。換句話可以把設(shè)備空間理解為在物理空間上顯示的一個對象,其子空間。下面我們通過一個小例子理解物理空間和設(shè)備空間
在窗口的標(biāo)題條,以設(shè)備坐標(biāo),和物理坐標(biāo)的形式顯示鼠標(biāo)在窗口內(nèi)的位置
wndproc處理消息循環(huán)
wm_mousemove,鼠標(biāo)移動時消息標(biāo)識,是個整數(shù)。其參數(shù)lparam,的第16位代表設(shè)備坐標(biāo)中的x,高16位代表設(shè)備坐標(biāo)的y。point 是結(jié)構(gòu)體。只有x,y兩個成員 clienttoscreen,將設(shè)備坐標(biāo)轉(zhuǎn)換為屏幕坐標(biāo)(物理坐標(biāo))sprintf:格式化字符串
setwindowtext:設(shè)window標(biāo)題
3、頁面坐標(biāo)空間(邏輯坐標(biāo)空間的一種)
作用,可以任意指定坐標(biāo)原點,坐標(biāo)軸方向,比例尺等信息??梢杂脕砼c設(shè)備無關(guān)的大小如厘米,毫米等。
頁面坐標(biāo)叫窗口,其表示有原點(x,y),寬度,高度組成(width,height)設(shè)備坐標(biāo)叫視口,其表示有原點(x,y),寬度,高度組成(width,height)
頁面坐標(biāo)和設(shè)備坐標(biāo)的變換關(guān)系,大寫為設(shè)備坐標(biāo),小寫為頁面坐標(biāo)
px=x+(px-x)*width/width py=y+(py-y)*height/height
px=x+(px-x)*width/width py=y+(py-y)*heigh/height
gdi函數(shù)使用頁面坐標(biāo),顯示出來時是設(shè)備坐標(biāo)
通過對窗口,是否對應(yīng)的四個參數(shù)的設(shè)置,可以實現(xiàn)特殊的變換。頁面坐標(biāo)是邏輯坐標(biāo)的一種。在這個例子中我們一直使用 movetoex(,0,0,null);
lineto(,30,30);劃線,movetoex是把畫筆移動到指定位置(頁面坐標(biāo)),lineto是從畫筆所在位置到目標(biāo)位置畫一條線。
在這個例子中,每次劃線前通過設(shè)置視口,窗口結(jié)果使劃線的結(jié)果不同。這種形式的坐標(biāo)轉(zhuǎn)換無法實現(xiàn)旋轉(zhuǎn)
4、世界坐標(biāo)空間(邏輯坐標(biāo)空間的另一種)功能:比頁面坐標(biāo)空間方便,可以實現(xiàn)旋轉(zhuǎn) 結(jié)構(gòu)體 xform{ float em11, float em12, float em21, float em21, float edx, float edy, } 世界坐標(biāo)到設(shè)備坐標(biāo)的變換。小寫到大寫。px=em11*px+em21*py+edx;py=em12*px+em22*py+edy;默認(rèn)為{1,0,0,1,0,0} 和設(shè)備坐標(biāo)相同 {1001dxdy} {mx00my00}縮放 {-100-100}映像
旋轉(zhuǎn){cos(a),sin(a),-sin(a),cos(a),0,0}順時針旋轉(zhuǎn)a度 {cos(a),-sin(a),sin(a),cos(a),0,0}逆時針旋轉(zhuǎn)a度
我們下面的例子通過rectangle(,0,0,50,50);繪制50*50的矩形,用循環(huán)配合世界坐標(biāo)變換繪制特殊的圖形
循環(huán)20次,每次旋轉(zhuǎn)坐標(biāo)軸的方向,繪制正方形。
總結(jié)
:物理坐標(biāo)指的是屏幕坐標(biāo),不能改變坐標(biāo)軸 設(shè)備坐標(biāo)指的是窗口坐標(biāo),不能改變坐標(biāo)軸
頁面坐標(biāo)和世界坐標(biāo)均是邏輯坐標(biāo),可以改變坐標(biāo)軸,世界坐標(biāo)功能更強,可以旋轉(zhuǎn)。理解這些概念的繪圖是很重要的。
相關(guān)函數(shù)
bool clienttoscreen(hwnd hwnd, lppoint lppoint);設(shè)備坐標(biāo)轉(zhuǎn)屏幕坐標(biāo)
bool screentoclient(hwnd hwnd,lppoint lppoint);屏幕坐標(biāo)轉(zhuǎn)設(shè)備坐標(biāo) int mapwindowpoints(hwnd hwndfrom, hwnd hwndto, lppoint lppoints, uint cpoints);
各個窗口設(shè)備坐標(biāo)之間的轉(zhuǎn)換
bool setwindoworgex(hdc hdc, int x,int y,lppoint lppoint);設(shè)置窗口的原點
setviewportorgex(hdc hdc,int x,int y,lppoint lppoint);設(shè)置視口的原點
bool setviewportextex(hdc hdc, int nxextent, int nyextent,lpsize lpsize);設(shè)置視口的width,height bool setwindowextex(hdc hdc, int nxextent,int nyextent, 設(shè)置窗口的width,height setmapmode設(shè)置頁面坐標(biāo)的映射模式 setgraphicsmode設(shè)置世界坐標(biāo)的映射模式 rectangle繪制矩形,并填充內(nèi)部 setworldtransform設(shè)置世界坐標(biāo)變換 lineto:換線
movetoex:移動畫筆
setwindowtext設(shè)置窗口標(biāo)題
lptodp(hdc,lppoint,int)把邏輯坐標(biāo)點轉(zhuǎn)換為設(shè)備坐標(biāo)點 作業(yè):
使用movetoex,lineto,lptodp及世界坐標(biāo)變換,繪制正六邊形
lpsize lpsize);
提示:
畫一條水平線后,將坐標(biāo)原點移動到線的末尾,并將坐標(biāo)軸旋轉(zhuǎn)60度*n,重復(fù)上步 要將坐標(biāo)移動到線尾需要使用lptodp
第四課 色彩及繪制(6學(xué)時)
(1)畫點
像素:計算機屏幕上的一個點。是計算機屏幕顯示的最小單位。點的個數(shù)取決于計算機的分辨率。如1024*768,則屏幕由1024*768個點組成。每個點都可以獨立的顯示一個顏色。計算機能夠表示的顏色有256*256*256=16777216種。顏色的表示 colorref。定義顏色rgb colorref color=rgb(紅,綠,藍(lán))隨機繪制顏色點
需要#include srand:隨機種子函數(shù),傳遞的參數(shù)不同,可以生成不同的隨機數(shù)序列
gettickcount(): api函數(shù),得到系統(tǒng)開機后到現(xiàn)在的滴答數(shù),特點就是每次返回的結(jié)果不重復(fù)。
兩者的配合得到不重復(fù)的隨機數(shù)序列
rand得到函數(shù)
setpixel設(shè)置某點的顏色
(2)畫線
在以前的例子里我們一直用1個像素寬的黑色實現(xiàn)來畫線。現(xiàn)在我們學(xué)習(xí)創(chuàng)建畫筆,用畫筆來畫線。
步驟
1、創(chuàng)建畫筆createpen(畫筆類型,寬度,顏色)
2、將畫筆選入設(shè)備上下文selectobject
3、用畫筆繪制
4、將畫筆選出設(shè)備
5、刪除創(chuàng)建的畫筆對象
selectobject是將gdi對象畫筆選入設(shè)備上下文,并將當(dāng)前的選出返回。因此我們兩次使用selectobject,最后一個將以前的畫筆選入,返回我們創(chuàng)建的,并在下一步刪除畫筆。
虛線只能支持寬度1.畫線函數(shù)
polygon(hdc,lppoint,int).連接指定點,畫多邊形,封閉。如果畫4邊形則確認(rèn)3個點即可。
polyline(hdc,lppoint,int).連接指定點,畫多邊,不封閉 movetoex:移動畫筆
lineto:用當(dāng)前的畫筆劃線
arc:畫圓弧 bool arc(hdc hdc, int nleftrect, int ntoprect, int nrightrect,int nbottomrect, int nxstartarc,int nystartarc,int nxendarc,int nyendarc);前4個是畫圓弧的矩形,后四個指定了弧開始和結(jié)束的位置 作業(yè):畫一條正弦曲線
使用sexpixel,lineto,movetoex實現(xiàn)
(3)畫面
畫面就是用畫刷來填充 步驟
1、創(chuàng)建畫刷createsolidbrush(顏色)
2、將畫刷選入設(shè)備上下文selectobject
3、用畫刷填充
4、將畫刷選出設(shè)備
5、刪除創(chuàng)建的畫刷對象
用藍(lán)色畫刷填充矩形,矩形的邊框是黑色。createsolidbrush:創(chuàng)建顏色畫刷
rectangle:繪制矩形,用當(dāng)前的pen繪制邊框,用當(dāng)前的brush來填充矩形內(nèi)部 fillrect:畫刷填充矩形。fillrect(hdc,&rect,hbrush)
使用fillrect不繪制邊框,因為參數(shù)中有畫筆,也不用selectobject了。ellipse:橢圓,圓。畫邊框,填充 pie:圓餅(4)位圖
將文件系統(tǒng)中的位圖顯示到窗口中。繪制位圖步驟
1、根據(jù)現(xiàn)有的設(shè)備上下文創(chuàng)建兼容的設(shè)備上下文
2、加載位圖
3、繪制圖像
4、刪除加載的位圖
5、刪除兼容的設(shè)備上下文
bitblt是在設(shè)備上下文之間拷貝圖像的函數(shù),非常常用
在上一個列子的基礎(chǔ)上,得到位圖的大小并繪制實際大小的位圖 作業(yè):
在一個窗口上顯示一副位圖文件(*.bmp)。(5)字體和文本
創(chuàng)建邏輯字體并顯示文本 步驟
1、創(chuàng)建邏輯字體
2、選入字體
3、輸出文本
4、選出字體
5、刪除字體
另一個與文本繪制有關(guān)的功能更強的函數(shù)是drawtext 總結(jié):本課介紹了一些基本的繪圖操作,其中涉及了較多的函數(shù),這里只是介紹了基本的使用方式和原理。函數(shù) srand rand getclientrect setpixel lineto movetoex createpen createsolidbrush createfontindirect bitblt selectobject deleteobject createcompatibledc loadimage rectangle fillrect deletedc 等等。
第五課 常用控件的使用(6學(xué)時)
在上面的幾節(jié)課程中我們學(xué)習(xí)了如何建立windows 應(yīng)用,并在圖形環(huán)境下繪制圖形。這些操作都是控制臺應(yīng)用中沒有的。本章我們介紹如何在窗口中加入按鈕等常規(guī)控件,并且處理它們。
一般控件種類,按鈕,列表組合,編輯,列表,滾動條,靜態(tài)文本??丶且环N特殊的窗口。這些特殊窗口的類已經(jīng)由windows系統(tǒng)注冊了,不需要我們注冊。這些類的名字分別為。
button,combobox,edit,listbox,scrollbar,static(1)創(chuàng)建
任何時候均可,但通常在wm_create事件中處理
wm_create是在窗口創(chuàng)建時觸發(fā) wm_destory是在窗口銷毀時觸發(fā)
控件用createwindow創(chuàng)建,返回控件窗體的句柄,窗體的類型一定為ws_childwindow。附加的類型以或關(guān)系疊加。具體要參見msdn(2)操控
控制這些控件是通過向這些控件的窗體句柄發(fā)送特點消息來實現(xiàn)的 如 sendmeage(控件句柄,消息指,參數(shù)1,參數(shù)2)具體設(shè)置參見msdn 在上面的例子,我們處理下拉列表的時候使用了sendmeage發(fā)送消息(3)反饋
我們操作控件會觸發(fā)控件的事件得到一些反饋,下面介紹如何得到這些反饋。總體上,我們把這些反饋過程叫通知。通知的過程是將反饋發(fā)送給父窗體,一般父窗體有兩個事件接收控件的反饋
wm_notify,wm_command。wm_command hiword(wparam)通知消息號 loword(wparam)控件標(biāo)識 wm_notify wparam :控件標(biāo)識 lparam:nhmdr的指針
比如按鈕的單機對應(yīng)的事件是bn_clicked。該事件通過wm_command通知。
我們把上個例子補充完整,并且為每個控件指定id,指定的方式是在(hmenu)的后面寫個整數(shù),原則上應(yīng)該不同。
hiword,得到一個字的高字節(jié)。loword得到一個字的低字節(jié)。(4)通用控件
我們上面介紹的是基本的控件,除了這些基本控件外還有一些通用控件。這些控件的使用和處理和基本的控件差不多,但功能更強大。animate_class : 動畫控件,播放avi動畫 datetimepick_class :日期時間下拉控件 hotkey_class :定義熱鍵的控件 monthcal_class : 月份選擇控件 progress_class :進度條控件 rebarclassname :rebar控件 statusclassname:狀態(tài)條控件 toolbarclassname :工具條 tooltips_class :提示控件 trackbar_class :軌跡條 updown_class :上下箭頭
wc_comboboxex :組合框擴展 wc_header :頭控件
wc_ipaddress :ip地址控件 wc_listview :listview控件
wc_pagescroller :頁滾動控件 wc_tabcontrol :tabcontrol控件 wc_treeview :樹視圖控件
通用控件在使用前使用initcommoncontrolsex初始化。使用這些通用控件要include 同時在連接時要連接
頭部
這些控件和ie有關(guān)系,根據(jù)ie版本不同,控件的外觀和功能有區(qū)別。
(5)創(chuàng)建菜單
createmenu:創(chuàng)建一個菜單
createpopupmenu:創(chuàng)建一個子菜單 appendmenu:向菜單增加項目 setmenu:將菜單聯(lián)系到窗口
第六課 進程及線程(2學(xué)時)
? 進程:是一個正在運行的程序的實例。由兩個部分組成1、一個是操作系統(tǒng)用來管理進行的內(nèi)核對象。內(nèi)核對象是系統(tǒng)用來存放關(guān)于進程信息的地方。
2、地址空間,每個進行都有自己的地址空間
進程本身不執(zhí)行代碼,進程要至少擁有一個線程,由線程來執(zhí)行代碼。每個線程都擁有自己的cpu寄存器和堆棧。當(dāng)創(chuàng)建一個進程時系統(tǒng)會自動創(chuàng)建一個主線程。
createproce創(chuàng)建進程
內(nèi)部執(zhí)行細(xì)節(jié):1 創(chuàng)建一個小的結(jié)構(gòu)存放進程信息
2 分配地址空間
3 創(chuàng)建一個小的結(jié)構(gòu)存放線程信息
4 執(zhí)行c/c++啟動代碼,最終會調(diào)用winmain或main。結(jié)束一個進程 terminateproce
terminateproce 1 使用toolhelp遍歷系統(tǒng)進程
列舉系統(tǒng)全部的進程
需要
#include #include using namespace std;
? 線程
線程由兩個部分組成1 內(nèi)核對象
2 線程堆棧,用于維護執(zhí)行代碼時所有的函數(shù)參數(shù)和局部變量 進程是活波的,進程不執(zhí)行任何東西,它是線程的容器。線程在進程的地址空間中執(zhí)行代碼。如果一個進程擁有多個線程則這些線程共享進程地址空間內(nèi)的代碼和數(shù)據(jù)。進程的地址空間要比線程占用更多的系統(tǒng)資源,因此要更多的使用線程。每個線程必須有個入口點函數(shù),主線程是main,winmain。如果要創(chuàng)建一個線程,則這個線程的函數(shù)原型是這樣的。dword winapi threadproc(pvoid pvparm){
return value;} 因為線程會共享全局變量,因此多線程應(yīng)該少使用全局變量 1 線程創(chuàng)建
線程的創(chuàng)建不能直接使用createthread api函數(shù)。而要使用c編譯環(huán)境自帶的創(chuàng)建進程函數(shù)。
#include
unsigned uthreadid=0;uintptr_t hthread=
_beginthreadex(null, 0,threadproc,null,create_suspended,&uthreadid);第3個參數(shù)是線程函數(shù)地址,第4個參數(shù)是傳遞到線程的lpvoid,第5個參數(shù)為0線程馬上運行、create_suspended需要激活才能運行。最后一個保存線程的id 進程和線程id是一個標(biāo)識。不重復(fù)。進程和線程對象是系統(tǒng)對象,關(guān)閉這些對象對進程和線程的運行沒有影響。
第7課 線程的調(diào)度和同步(6學(xué)時)線程暫停:
創(chuàng)建時使用create_suspended創(chuàng)建一個暫停的線程
使用suspendthread暫停線程
長時間不使用窗體 恢復(fù)線程:
resumethread
resumethread和suspendthread使用次數(shù)要對應(yīng)。
休眠線程 sleep(毫秒)線程的同步是比較容易出錯的地方,要多多實踐和理解。參見線程沖突的例子。
每個線程對變量g累加10000次,創(chuàng)建6個線程,這是其中一次的運行結(jié)果。可以看到結(jié)果不是60000.對線程沖突問題的解釋
一條c的g++對應(yīng)的匯編指令為3條 mov eax,[g] inc eax mov [g],eax
如果我們創(chuàng)建兩個線程,這兩個線程將共享上面的代碼。如果只有一個cpu的話,那同一時刻只能志執(zhí)行一條匯編指令。但windows的調(diào)度機制可以保證代碼按順序執(zhí)行,但不能保證不被打斷。舉例 g=0 mov eax,[g] //1 eax=0 inc eax
//1 eax=1 mov [g],eax //1 g=1 eax=1 mov eax,[g] //2 eax=1 inc eax
//2 eax=2 mov [g],eax //2 g=2 eax=2 1和2兩個線程分別執(zhí)行上面的3行代碼,則g被加了兩次,得到2。但實際上這是多線程的特例。真實的情況是cpu下條要執(zhí)行那個線程的代碼是隨機的。如下
g=0 mov eax,[g] //1 eax=0 inc eax
//1 eax=1 mov eax,[g] //2 eax=0 inc eax
//2 eax=1 mov [g],eax //2 g=1 eax=1 mov [g],eax //1 g=1 eax=1
線程1在增加后沒有及時賦值給g,然后線程2執(zhí)行。最后g為1。這就是線程沒有同步導(dǎo)致的問題,也是我們程序中出現(xiàn)的問題。解決方法(1)原子操作函數(shù)
使用interlockedexchangeadd,加減
interlockedexchange 賦值
interlockedcompareexchange 比較賦值
使用這些函數(shù)加減變量,保證只有執(zhí)行完后其他進程才能進入。
結(jié)果是60000了,但是按理應(yīng)該輸出六次“線程運行了結(jié)束了”。但只顯示兩次,其實每次的結(jié)果多不會一樣。這也是并發(fā)帶來的問題。
解決方法(2)關(guān)鍵代碼段
在使用關(guān)鍵段之前使用該函數(shù)
輸出了6次,但每次對應(yīng)的g值不一定以10000遞增。如果把進入關(guān)鍵段的位置提前到最前面可以得到常規(guī)的理解
這時這6個進程某種意義上沒有并發(fā)執(zhí)行。
局限:關(guān)鍵代碼段只能在一個進程內(nèi)使用,沒有等待時長的限制容易死鎖。解決方法(3)內(nèi)核對象 具備通知狀態(tài)的內(nèi)核對象 進程 線程 作業(yè)
文件修改通知 事件
可等待定時器 文件 信標(biāo)
控制臺輸入 互斥對象 舉個例子
取消注釋后,一次顯示一個。體現(xiàn)了該函數(shù)對線程的控制。
(1)事件控制
盡管waitforsingleobject可以等待很多對象的反應(yīng),但其主要還是用來處理事件等對象。事件是一種內(nèi)核對象,有兩個狀態(tài),一個用于表示該事件是自動重置事件還是人工重置事件。人工重置事件等待該事件的線程都會得到通知,自動重置事件只有一個線程會得到通知。另一個是事件的通知狀態(tài)。一是未通知狀態(tài)線程等待,一個是已通知狀態(tài),線程運行。createevent(null,自動(false)還是手工(true),通知(true)未通知(false)。handle createevent(lpsecurity_attributes lpeventattributes,bool bmanualreset,bool binitialstate,lptstr lpname);最后一個是為事件起個名字,同名事件不能建立兩次。保證同名事件只能建立一次,可以為空。setevent:設(shè)為已通知狀態(tài) resetevent:設(shè)為未通知狀態(tài)
openevent:打開一個已經(jīng)存在的時間,返回handle
創(chuàng)建自動通知,立即通知事件
對自動通知事件setevent有意義,對手工通知事件無意義。手工通知同時顯示6個窗口,自動通知一次顯示1個(2)信標(biāo)內(nèi)核對象
使用信標(biāo)可以確定讓幾個線程同時運行
createsemaphore(null,初始數(shù),最大數(shù),名稱)opensemaphore
最多同時有3個線程運行。(3)互斥對象
互斥對象和關(guān)鍵代碼段的作用相同,效率比關(guān)鍵代碼段低。但運行不同進程間使用互斥對象,同時可以設(shè)置最大的等待時長?;コ鈱ο蠛推渌麅?nèi)核對象的區(qū)別,互斥對象可以記錄調(diào)用的線程id,一旦線程得到該對象同線程的其他地方的等待將不會等待。createmutex(null,初始等待,名稱)openmutex(0,null,名稱)releasemutex(handle),只能是否本線程得到的對象
(4)
少兒編程教案試聽課篇二
輔 導(dǎo) 計 劃
第()周輔導(dǎo)內(nèi)容:scratch移動的小貓 輔導(dǎo)過程:
1、介紹scrather軟件,讓學(xué)生scrather軟件主要功能和作用
2、學(xué)生自己探索scrather軟件。
3、學(xué)生匯報scrather軟件探索結(jié)果
4、展示任務(wù):移動的小貓
5、輔導(dǎo)完成移動的小貓所需要使用的命令。
6、7、提交完成的作業(yè) 。
8、拓展任務(wù):讓小貓有更多的功能。如下,并交作業(yè)提交上來。按p鍵就跑 按j就叫喵的聲音,按t就跳起來 ……
輔導(dǎo)小結(jié):
輔 導(dǎo) 計 劃
第()周 輔導(dǎo)內(nèi)容:小貓走迷宮 輔導(dǎo)過程:
a、初步掌握舞臺背景的編輯與導(dǎo)入方法。b、了解迷宮游戲的基本原則。c、能夠為自己的迷宮游戲制訂規(guī)則。
d、通過實踐,了解并掌握自頂向下的編程思路。
e、通過自己編寫游戲,激發(fā)學(xué)生學(xué)習(xí)興趣,感受成功喜悅。
1、老師展示任務(wù):走迷宮
2、學(xué)生討論分析如何實現(xiàn)此任務(wù)
3、任務(wù)分解:
(1)跟著鼠標(biāo)跑的小貓(2)制作迷宮背景(3)顯示過關(guān)(4)出界就重來
4、程序分析:如右圖 輔導(dǎo)小結(jié):
輔 導(dǎo) 計 劃
第()周 輔導(dǎo)內(nèi)容:大魚吃小魚 輔導(dǎo)過程:
1、復(fù)習(xí)上節(jié)課的作品,并進行修正
2、學(xué)習(xí)新的命令
隨機數(shù)
偵測到鼠標(biāo)的距離
并利用這兩條命令修改上節(jié)課的作業(yè)。
3、展示任務(wù)
4、分析任務(wù):
(1)讓學(xué)生討論角色的建構(gòu)、選擇。背景的設(shè)置和處理
(2)每個角色程序的初步建構(gòu)。
(3)自頂向下設(shè)計
5、程序設(shè)計
大魚:
小魚(左)
輔導(dǎo)小結(jié): 輔 導(dǎo) 計 劃
第()周 輔導(dǎo)內(nèi)容:打蚊子 輔導(dǎo)過程:
a、初步掌握分析一個程序的能力。
b、通過實踐,了解并掌握自頂向下的編程思路。c、學(xué)習(xí)廣播命令,滲透程序消息機制。
d、通過自己編寫游戲,激發(fā)學(xué)生學(xué)習(xí)興趣,感受成功悅。
1、老師提出任務(wù):打蚊子
2、學(xué)生討論分析如何實現(xiàn)此任務(wù)
3、任務(wù)分解: (1)需要那些角色(2)角色有些什么行為(3)角色之間是否需要通信。
4、程序分析:如右圖
輔導(dǎo)小結(jié):
喜
少兒編程教案試聽課篇三
少 兒 英 語 教 案 模 板
一、teaching demands and aims(
教學(xué)
目標(biāo))二、teaching important and difficult point(教學(xué)重點)
1、words
2、sentences
3、grammars
三、
teaching aids(教具)四、teaching procedures(教學(xué)過程)greeting(問候)warm up(熱身)review(復(fù)習(xí))new leon(新課)step one: step two: step three: follow up(叮嚀)
五、homework(作業(yè)布置)
作 業(yè) 的 布 置
一、書面作業(yè)
1、每節(jié)課后教師可適當(dāng)選擇課后習(xí)題(書本或課外參考書)及字母作業(yè)。
2、低年紀(jì)的孩子適合聽磁帶讀課文、畫圖、連線、寫字母等簡單作業(yè);每學(xué)期兩次測試:半期考和期末考試。
3、高年紀(jì)的孩子要求抄單詞、背單詞、背課文等書面作業(yè);每節(jié)課前可做適當(dāng)?shù)穆爩懢毩?xí);每個月可做適當(dāng)?shù)膯卧獪y試;期間兩次大考:半期考和期末考。
二、磁帶作業(yè)
1、適時布置(條件允許可每周一次):將本周學(xué)習(xí)的內(nèi)容錄進磁帶,下周上交。
2、錄制要求:首先讓學(xué)生和老師打招呼,接著報朗誦單元,然后錄作業(yè)內(nèi)容,最后與老師說再見。(如:hello!amanda.i am go is unit 11??? goodbye!amanda!)
3、聽音修正:
(1)書面記錄:邊聽邊把學(xué)生的錯音登記在學(xué)生手冊上。(2)修正過程:
a:打招呼,先表揚肯定,后提出錯誤,注意錯音的跟讀 b:說悄悄話,增進師生感情交流 c:提出問題。
d:結(jié)束say:“ good bye!”
三、電話教學(xué)
1、時間安排:每月兩次的電話教學(xué),每生教學(xué)時間不超過8分鐘。
2、教學(xué)內(nèi)容:
(1)本周學(xué)習(xí)單詞及課文的朗誦。(2)詞句的翻譯。(3)疑難解答。(4)家長的經(jīng)驗交流。
少兒編程教案試聽課篇四
常用編程指令的應(yīng)用
車削加工編程一般包含x和z坐標(biāo)運動及繞z軸旋轉(zhuǎn)的轉(zhuǎn)角坐標(biāo)c。
(1)快速定位(g00或g0)刀具以點位控制方式從當(dāng)前所在位置快速移動到指令給出的目標(biāo)位置。
指令格式:g00 x(u)z(w);(2)直線插補(g01或g1)
指令格式:g01 x(u)z(w)f ;
圖1 快速定位 圖2 直線插補
g00 x40.0 z56.0; g01 x40.0 z20.1 f0.2;
/絕對坐標(biāo),直徑編程; /絕對坐標(biāo),直徑編程,切削進給率0.2mm/r g00 u-60.0 w-30 g01 u20.0 w-25.9 f0.2;
/增量坐標(biāo),直徑編程 /增量坐標(biāo),直徑編程,切削進給率0.2mm/r(3)圓弧插補(g02或g2,g03或g3)1)指令格式: g02 x(u)_z(w)_i_k_f_ ; g02 x(u)z(w)r f ;
g03 x(u)_z(w)_i_k_f_ ; g03 x(u)z(w)r f ;
2)指令功能: 3)指令說明: ①g02為順時針圓弧插補指令,g03為逆時針圓弧插補指令。圓弧的順、逆方向判斷見圖3左圖,朝著與圓弧所在平面相垂直的坐標(biāo)軸的負(fù)方向看,順時針為g02,逆時針為g03,圖3右圖分別表示了車床前置刀架和后置刀架對圓弧順與逆方向的判斷;
圖3 圓弧的順逆方向
②如圖4,采用絕對坐標(biāo)編程,x、z為圓弧終點坐標(biāo)值;采用增量坐標(biāo)編程,u、w為圓弧終點相對圓弧起點的坐標(biāo)增量,r是圓弧半徑,當(dāng)圓弧所對圓心角為0°~180°時,r取正值;當(dāng)圓心角為180°~360°時,r取負(fù)值。i、k為 圓心在x、z軸方向上相對圓弧起點的坐標(biāo)增量(用半徑值表示),i、k為零時可以省略。
圖4 圓弧絕對坐標(biāo),相對坐標(biāo)
圖5 圓弧插補
g02 x50.0 z30.0 i25.0 f0.3; g03 x87.98 z50.0 i-30.0 k-40.0 f0.3;
g02 u20.0 w-20.0 i25.0 f0.3; /絕對坐標(biāo),直徑編程
g02 x50.z30.0 r25.0 f0.3; g03 u37.98 w-30.0 i-30.0 k-40.0 f0.3; g02 u20.0 w-20.0 r25.0 f0.3; /相對坐標(biāo),直徑編程
(4)主軸轉(zhuǎn)速設(shè)置(s)車床主軸的轉(zhuǎn)速(r/min)為:
式中υ為圓周切削速度,單位缺省為m/min、d為工件的外徑,單位為mm。
例如,工件的外徑為200mm,要求的切削速度為300m/min,經(jīng)計算可得
因此主軸轉(zhuǎn)速應(yīng)為478r/min,表示為s478。(5)主軸速度控制指令
數(shù)控車削加工時,按需要可以設(shè)置恒切削速度(例如,為保證車削后工件的表面粗糙度一致,應(yīng)設(shè)置恒切削速度),車削過程中數(shù)控系統(tǒng)根據(jù)車削時工件不同位置處的直徑計算主軸的轉(zhuǎn)速。
恒切削速度設(shè)置方法如下:g96 s ; 其中s后面數(shù)字的單位為r/min。
設(shè)置恒切削速度后,如果不需要時可以取消,其方式如下:g97 s ; 其中s后面數(shù)字的單位為r/min。
在設(shè)置恒切削速度后,由于主軸的轉(zhuǎn)速在工件不同截面上是變化的,為防止主軸轉(zhuǎn)速過高而發(fā)生危險,在設(shè)置恒切削速度前,可以將主軸最高轉(zhuǎn)速設(shè)置在某一個最高值。切削過程中當(dāng)執(zhí)行恒切削速度時,主軸最高轉(zhuǎn)速將被限制在這個最高值。設(shè)置方法如下:g50 s ; 其中s的單位為r/min。
圖6 主軸速度控制
例如:在刀具t01切削外形時用g96設(shè)置恒切削速度為200m/min,而在鉆頭t02鉆中心孔時用g97取消恒切削速度,并設(shè)置主軸轉(zhuǎn)速為1100r/min。這兩部分的程序頭如下:
g50 s2500 t0101 m08; /g50限定最高主軸轉(zhuǎn)速為2500r/min;
g96 s200 m03; / g96設(shè)置恒切削速度為200m/min,主軸順時針轉(zhuǎn)動 g00 x48.0 z3.0; / 快速走到點(48.0,3.0)g01 z-27.1 f0.3; /車削外形 g00 ul.0 z3.0; /快速退回 t0202; /調(diào)02號刀具
g97 sll00 m03; /g97取消恒切削速度,設(shè)置主軸轉(zhuǎn)速為ll00r/min g00 x0.0 z5.0 m08; /快速走到點(0,5.0),冷卻液打開 g01 z-5.0 f0.12; /鉆中心孔(6)進給率和進給速度設(shè)置指令
在數(shù)控車削中有兩種切削進給模式設(shè)置方法,即進給率(每轉(zhuǎn)進給模式)和進給速度(每分鐘進給模式)。
1)進給率,單位為mm/r,其指令為: g99; / 進給率轉(zhuǎn)換指令,g01 x z f ; / f的單位為mm/r 2)進給速度,單位為mm/min,其指令為: g98; / 進給速度轉(zhuǎn)換指令
g01 x z f ; / f的單位為mm/min
圖7 進給率和進給速度
a:g99 g01 z-27.1 f0.3;b:g98 g01 z-10.0 f80;表示進給率為0.3mm/r 表示進給速度為80mm/min cnc系統(tǒng)缺省進給模式是進給率,即每轉(zhuǎn)進給模式。(7)工件原點設(shè)置
工件坐標(biāo)系的原點有兩種設(shè)置方法。
1)用g50指令進行工件原點設(shè)置,分以下兩種設(shè)置情況:
圖8 工件原點設(shè)置 ①坐標(biāo)原點設(shè)置在卡盤端面
如圖8a所示,這種情況下z坐標(biāo)是正值。工件原點設(shè)置在卡盤端面:
g50 x85.z210.;/* 將刀尖當(dāng)前位置的坐標(biāo)值定為工件坐標(biāo)系中的一點(85.,210.)。②坐標(biāo)原點設(shè)置在零件右端面
如圖8b所示,這種情況下z坐標(biāo)值是負(fù)值。工件原點設(shè)置在工件右端面:g50 x85.0 z90.0; 則刀尖當(dāng)前位置即為工件坐標(biāo)系原點。(8)端面及外圓車削加工
端面及外圓的車削加工要用到插補指令g01。
為正確地編寫數(shù)控程序,應(yīng)在編寫程序前根據(jù)工件的情況選擇工件原點。確定好工件原點后,還必須確定刀具的起始點。
編程時還應(yīng)考慮車削外圓的始點和端面車削的始點,這兩點的確定應(yīng)結(jié)合考慮工件的毛坯情況。如果毛坯余量較大,應(yīng)進行多次粗車,最后進行一次精車,因而每次的車削始點都不相同。
圖9 確定車削原點
a)工件原點在左端面時 b)工件原點在右端面時 1)工件原點在左端面 o0001 /* 程序編號o0001 n0 g50 x85.0 z210.0; /* 設(shè)置工件原點在左端面 n1 g30 u0 w0; /* 返回第二參考點
n2 g50 s1500 t0101 m08; /* 限制最高主軸轉(zhuǎn)速為1500r/min,調(diào)01號刀具,m08為打開冷卻液
n3 g96 s200 m03; /* 指定恒切削速度為200m/min n4 g00 x40.4 z153.0; /* 快速走到外圓粗車始點 n5 g01 z40.2 f0.3; /* 以進給率0.3mm/r車削外圓 n6 x60.4; /* 臺階車削
n7 z20.0; /*φ60.4mm處長度為20.0mm的一段外圓 n8 g00 x62.0 z150.2; /* 刀具快速退到點(62.0,150.2)n9 x41.0; /*刀具快速走到點(41.0,150.2)n10 g01 x-1.6; /* 車削右端面
n1l g00 zl52.0; /* 刀具快速退到點(-1.6,152.0)n12 g30 u0 w0; /* 直接回第二參考點以進行換刀 n13(finishing); /*精車開始,括號為程序說明
n14 g50 s1500 t0202; /*限制最高主軸轉(zhuǎn)速為1500r/min,調(diào)02號刀具 n15 g96 s250; /* 指定恒切削速度為250m/min n16 g00 x40.0 z153.0 ;/*快速走到外圓精車始點(40.0,153)n17 g42 g01 z151.0 f0.15;/*調(diào)刀尖半徑補償,右偏 n18 z40.0; /*φ40.4mm一段外圓的精車 n19 x60.0; /*臺階精車
n20 z20.0; /*φ60.0mm處長度為20.0mm外圓的精車 n21 g40 g00 x62.0 z150.0; /*取消刀補 n22 x41.0; /*刀具快速走到點(41.0,150.0)n23 g41 g01 x40.0; /*調(diào)刀尖半徑補償,左偏 n24 g01 x-1.6; /*精車右端面
n25 g40 g00 zl52.0 m09; /*取消刀補,切削液關(guān)
n26 g30 u0 w0 m05; /*返回第二參考點,主軸停止 n27 m30; /*程序結(jié)束 2)工件原點在右端面:工件原點設(shè)置在右端面與設(shè)置在左端面的區(qū)別僅在于z坐標(biāo)為負(fù)值,程序編寫過程完全相同。o0002 ; /* 程序編號
n0 g50 x85.0 z90.0 /* 設(shè)置工件原點在右端面 n2 g30 u0 w0; /* 返回第二參考點
n4 g50 s1500 t0101 m08; /* 限制最高主軸轉(zhuǎn)速 n6 g96 s200 m03; /* 指定恒切削速度為 200m/min,主軸逆時針旋轉(zhuǎn)
n8 g00 x30.4 z3.0; /*快速走到點(30.4,3.0)n10 g01 w-33.0 f0.3; /*以進給率0.3mm/r粗車φ30.4處外圓 n12 u30.0 w-50.0; /*粗車錐面
n14 w-10.0; /*粗車φ60.4mm處長度為10的一段外圓 n16 g00 ul.6 w90.2;/*刀具快速走到點(62.0,0.2)n18 u-31.0; /*刀具快速走到點(3l,0.2)n20 g01 u-32.6; /*粗車端面
n22 g00 w2.0; /*刀具快速走到點(-1.6,2)n24 g30 u0 w0; /*返回第二參考點 n26(finishing); /*精車開始
n28 g50 s1500 t0202;/*設(shè)置主軸最高轉(zhuǎn)速1500r/min,調(diào)2號刀具 n30 g96 s250; /* 指定恒切削速度為250m/min n32 g00 x30.0 z3.0;/*刀具快速走到精車始點(30.0,3.0)n34 g42 g01 w-2.0 f0.15;/*調(diào)刀尖半徑補償,右偏 n36 w-31.0; /*精車ф30.4mm處外圓 n38 u30.0 w-50.0; /*精車錐面
n40 w-10.0; /*精車ф60.0mm處外圓
n42 g40 g00 u2.0 w90.0; /*取消刀補,刀具快速走到點(62,0.0)n44 u-31.0; /*刀具快速走到點(31,0.0)n46 g41 g01 u-1.0; /*調(diào)刀尖半徑補償,左偏
n48 g01 u-32.6; /*精車端面
n50 g40 g00 w2.0 m09; /*取消刀補,刀具快速走到點(1.6,2.0)n52 g30 u0 w0 m30; /*返回參考點,程序結(jié)束 實例:
如圖10所示零件
圖10 數(shù)控車削綜合編程實例
n0050 g01 x32 z0;n0110 g02 x16 z-15 r2;n0060 g01 x-0.5;n0120 g01 x20;
n0070 g00 z1;n0130 g01 z35;n0080 g00 x10;n0140 x26;n0090 g01 x12 z1;n0150 z50;n0100 g01 x12 z1;n0160 x32;為1500r/min,調(diào)1號刀具,m08為打開冷卻液在這種情況下,如果設(shè)置指令寫成: g50 x0 z0;
g0
2、g03指令表示刀具以f進給速度從圓弧起點向圓弧終點進行圓弧插補。刀具以一定的進給速度從當(dāng)前所在位置沿直線移動到指令給出的目標(biāo)位置。
2.循環(huán)加工指令
當(dāng)車削加工余量較大,需要多次進刀切削加工時,可采用循環(huán)指令編寫加工程序,這樣可減少程序段的數(shù)量,縮短編程時間和提高數(shù)控機床工作效率。根據(jù)刀具切削加工的循環(huán)路線不同,循環(huán)指令可分為單一固定循環(huán)指令和多重復(fù)合循環(huán)指令。(1)單一固定循環(huán)指令
對于加工幾何形狀簡單、刀具走刀路線單一的工件,可采用固定循環(huán)指令編程,即只需用一條指令、一個程序段完成刀具的多步動作。固定循環(huán)指令中刀具的運動分四步:進刀、切削、退刀與返回。
1)外圓切削循環(huán)指令(g90)
指令格式 : g90 x(u)_ z(w)_ r_ f_ 指令功能: 實現(xiàn)外圓切削循環(huán)和錐面切削循環(huán)。
刀具從循環(huán)起點按圖11與圖12所示走刀路線,最后返回到循環(huán)起點,圖中虛線表示按r快速移動,實線表示按f指定的工件進給速度移動。
圖11 外圓切削循環(huán)
圖12 錐面切削循環(huán)
指令說明: ① x、z 表示切削終點坐標(biāo)值;
② u、w 表示切削終點相對循環(huán)起點的坐標(biāo)分量;
③ r 表示切削始點與切削終點在x軸方向的坐標(biāo)增量(半徑值),外圓切削循環(huán)時r為零,可省略;
④f表示進給速度。例題 如圖13所示,運用外圓切削循環(huán)指令編程。
g90 x40 z20 f30
a-b-c-d-a x30
a-e-f-d-a x20
a-g-h-d-a
圖13 外圓切削循環(huán)例題
例題 如圖14所示,運用錐面切削循環(huán)指令編程。
g90 x40 z20 r-5 f30 a-b-c-d-a x30
a-e-f-d-a x20
a-g-h-d-a
圖14 錐面切削循環(huán)例題
2)端面切削循環(huán)指令(g94)
指令格式: g94 x(u)_ z(w)_ r_ f_ 指令功能: 實現(xiàn)端面切削循環(huán)和帶錐度的端面切削循環(huán)。
刀具從循環(huán)起點,按圖15與圖16所示走刀路線,最后返回到循環(huán)起點,圖中虛線表示按r快速移動,實線按f指定的進給速度移動。
圖15 端面切削循環(huán) 圖16 帶錐度的端面切削循環(huán)
① x、z表示端平面切削終點坐標(biāo)值;
② u、w表示端面切削終點相對循環(huán)起點的坐標(biāo)分量;
③ r 表示端面切削始點至切削終點位移在z軸方向的坐標(biāo)增量,端面切削循環(huán)時r為零,可省略;
④ f表示進給速度。
例題: 如圖17所示,運用端面切削循環(huán)指令編程。
g94 x20 z16 f30
a-b-c-d-a z13
a-e-f-d-a z10
a-g-h-d-a
圖17 端面切削循環(huán)例題 圖18 帶錐度的端面切削循環(huán)例題
例題: 如圖18所示,運用帶錐度端面切削循環(huán)指令編程。
g94 x20 z34 r-4 f30
a-b-c-d-a z32
a-e-f-d-a z29
a-g-h-d-a(2)多重復(fù)合循環(huán)指令(g70——g76)運用這組g代碼,可以加工形狀較復(fù)雜的零件,編程時只須指定精加工路線、徑向軸向精車留量和粗加工背吃刀量,系統(tǒng)會自動計算出粗加工路線和加工次數(shù),因此編程效率更高。
在這組指令中,g71、g7
2、g73是粗車加工指令,g70是g7
1、g7
2、g73粗加工后的精加工指令,g74 是深孔鉆削固定循環(huán)指令,g75 是切槽固定循環(huán)指令,g76是螺紋加工固定循環(huán)指令。
1)外圓粗加工復(fù)合循環(huán)(g71)指令格式 : g71 uδd re g71 pns qnf uδu wδw ff ss tt
指令功能: 切除棒料毛坯大部分加工余量,切削是沿平行z軸方向進行,如圖19所示。a為循環(huán)起點,a-a-b為精加工路線。
圖19 外圓粗加工復(fù)合循環(huán) 圖20 端面粗加工復(fù)合循環(huán) 指令說明:①δd表示每次切削深度(半徑值),無正負(fù)號; ② e表示退刀量(半徑值),無正負(fù)號;
③ ns表示精加工路線第一個程序段的順序號; ④ nf表示精加工路線最后一個程序段的順序號;
⑤ δu表示x方向的精加工余量,直徑值;
例題 :如圖21所示,運用外圓粗加工循環(huán)指令編程。
圖21 外圓粗加工復(fù)合循環(huán)例題 n010 g50 x150 z100 n020 g00 x41 z0 n030 g71 u2 r1 n040 g71 p50 q120 u0.5 w0.2 f100 n050 g01 x0 z0 n060 g03 x11 w-5.5 r5.5 n070 g01 w-10 n080 x17 w-10 n090 w-15 n100 g02 x29 w-7.348 r7.5 n110 g01 w-12.652 n120 x41 n130 g70 p50 q120 f30
2)端面粗加工復(fù)合循環(huán)(g72)指令格式: g72 wδd re
g72 pns qnf uδu wδw ff ss tt
指令功能: 除切削是沿平行x軸方向進行外,該指令功能與g71相同,如圖20所示。指令說明 :
δd、e、ns、nf、δu、δw的含義與g71相同。例題:如圖22,運用端面粗加工循環(huán)指令編程。
圖22 端面粗加工復(fù)合循環(huán)例題 圖23 固定形狀切削復(fù)合循環(huán) n010 g50 x150 z100 n020 g00 x41 z1 n030 g72 w1 r1 n040 g72 p50 q80 u0.1 w0.2 f100 n050 g00 x41 z-31 n060 g01 x20 z-20 n070 z-2 n080 x14 z1 n090 g70 p50 q80 f30 3)固定形狀切削復(fù)合循環(huán)(g73)指令格式: g73 uδi wδk rd g73 pns qnf uδu wδw ff ss tt
指令功能:適合加工鑄造、鍛造成形的一類工件,見圖23所示。指令說明: δi 表示x軸向總退刀量(半徑值); δk 表示z軸向總退刀量; d 表示循環(huán)次數(shù);
ns 表示精加工路線第一個程序段的順序號; nf 表示精加工路線最后一個程序段的順序號; δu 表示x方向的精加工余量(直徑值); δw 表示z方向的精加工余量。
①固定形狀切削復(fù)合循環(huán)指令的特點:
a.刀具軌跡平行于工件的輪廓,故適合加工鑄造和鍛造成形的坯料;b.背吃刀量分別通過x軸方向總退刀量δi和z軸方向總退刀量δk除以循環(huán)次數(shù)d求得;c.總退刀量δi與δk值的設(shè)定與工件的切削深度有關(guān)。
②使用固定形狀切削復(fù)合循環(huán)指令,首先要確定換刀點、循環(huán)點a、切削始點a’和切削終點b的坐標(biāo)位置。分析上圖,a點為循環(huán)點,a’→b是工件的輪廓線,a→a’→b為刀具的精加工路線,粗加工時刀具從a點后退至c點,后退距離分別為δi+δu /2,δk+δw,這樣粗加工循環(huán)之后自動留出精加工余量δu /
2、δw。
③順序號ns至nf之間的程序段描述刀具切削加工的路線。例題: 如圖14所示,運用固定形狀切削復(fù)合循環(huán)指令編程。
圖24 固定形狀切削復(fù)合循環(huán)例題 圖25 復(fù)合固定循環(huán)舉例
n010 g50 x100 z100 n020 g00 x50 z10 n030 g73 u18 w5 r10 n040 g73 p50 q100 u0.5 w0.5 f100 n050 g01 x0 z1 n060 g03 x12 w-6 r6 n070 g01 w-10 n080 x20 w-15 n090 w-13 n100 g02 x34 w-7 r7 n110 g70 p50 q100 f30 4)精車復(fù)合循環(huán)(g70)指令格式: g70 pns qnf
指令功能:用g7
1、g7
2、g73指令粗加工完畢后,可用精加工循環(huán)指令,使刀具進行a-a`-b的精加工,(如圖24)
指令說明:
ns表示指定精加工路線第一個程序段的順序號; nf表示指定精加工路線最后一個程序段的順序號;
g70~g73循環(huán)指令調(diào)用n(ns)至n(nf)之間程序段,其中程序段中不能調(diào)用子程序。5)復(fù)合固定循環(huán)舉例(g71與g70編程)
加工圖25所示零件,其毛坯為棒料。工藝設(shè)計參數(shù)為:粗加工時切深為7mm,進給速度0.3mm/r,主軸轉(zhuǎn)速500r/min;x向(直徑上)精加工余量為4 mm,z向精加工余量為2mm,進給速度為0.15mm/r,主軸轉(zhuǎn)速800mm/min。程序設(shè)計如下: n01 g50 x200.0 z220.0;n02 g00 x160.0 z180.0 m03 s800;n03 g71 p04 q10 u4.0 w2.0 d7.0 f0.3 s500;n04 g00 x40.0 s800;n05 g01 w-40.0 f0.15;n06 x60.0 w-30.0;n07 w-20.0;n08 x100.0 w-10.0;n09 w-20.0;n10 x140.0 w-20.0;n11 g70 p04 q10;n12 g00 x200.0 z220.0;n13 m05;n14 m30;3.螺紋加工自動循環(huán)指令
(1)單行程螺紋切削指令g32(g33,g34)指令格式 : g32 x(u)_ z(w)_ f_
指令功能:切削加工圓柱螺紋、圓錐螺紋和平面螺紋。指令說明:
格式中的x(u)、z(w)為螺紋中點坐標(biāo),f為以螺紋長度l給出的每轉(zhuǎn)進給率。l表示螺紋導(dǎo)程,對于圓錐螺紋(圖26),其斜角α在45°以下時,螺紋導(dǎo)程以z軸方向指定;斜角α在45°~90°時,以x軸方向指定。
①圓柱螺紋切削加工時,x、u值可以省略,格式為: g32 z(w)_ f _ ; ②端面螺紋切削加工時,z、w值可以省略,格式為: g32 x(u)_ f_;
③螺紋切削應(yīng)注意在兩端設(shè)置足夠的升速進刀段δ1和降速退刀段δ2,即在程序設(shè)計時,應(yīng)將車刀的切入、切出、返回均應(yīng)編入程序中。
圖26 螺紋切削 圖27 螺紋切削應(yīng)用 螺紋切削例題: 如圖27所示,走刀路線為a-b-c-d-a,切削圓錐螺紋,螺紋導(dǎo)程為4mm , δ1 = 3mm,δ2 = 2mm,每次背吃刀量為1mm,切削深度為2mm。g00 x16 g32 x44 w-45 f4 g00 x50 w45 x14 g32 x42 w-45 f4 g00 x50 w45(2)螺紋切削循環(huán)指令(g92)
指令格式 : g92 x(u)_ z(w)_ r_ f_ 指令功能: 切削圓柱螺紋和錐螺紋,刀具從循環(huán)起點,按圖28與圖29所示走刀路線,最后返回到循環(huán)起點,圖中虛線表示按r快速移動,實線按f指定的進給速度移動。
圖28 切削圓柱螺紋 圖29 切削錐螺紋 指令說明:
①x、z表示螺紋終點坐標(biāo)值;②u、w表示螺紋終點相對循環(huán)起點的坐標(biāo)分量;
③r表示錐螺紋始點與終點在x軸方向的坐標(biāo)增量(半徑值),圓柱螺紋切削循環(huán)時r為零,可省略;
④f表示螺紋導(dǎo)程。
例題: 如圖30所示,運用圓柱螺紋切削循環(huán)指令編程。
圖30 切削圓柱螺紋例題 圖31 切削錐螺紋例題 g50 x100 z50 g97 s300 t0101 m03 g00 x35 z3 g92 x29.2 z-21 f1.5 x28.6 x28.2 x28.04 g00 x100 z50 t0000 m05 m02
例題 : 如圖31所示,運用錐螺紋切削循環(huán)指令編程。g50 x100 z50 g97 s300 t0101 m03 g00 x80 z2 g92 x49.6 z-48 r-5 f2 x48.7 x48.1 x47.5 x47.1 x47 g00 x100 z50 t0000 m05 m02
(3)螺紋切削復(fù)合循環(huán)(g76)
指令格式 : g76 pm r a qδdmin rd g76 x(u)_ z(w)_ri pk qδd ff
指令功能:該螺紋切削循環(huán)的工藝性比較合理,編程效率較高,螺紋切削循環(huán)路線及進刀方法如圖32所示。
圖32 螺紋切削復(fù)合循環(huán)路線及進刀法 指令說明:
②r表示斜向退刀量單位數(shù),或螺紋尾端倒角值,在0.0f—9.9f之間,以0.1f為一單位,(即為0.1的整數(shù)倍),用00—99兩位數(shù)字指定,(其中f為螺紋導(dǎo)程); ③a表示刀尖角度;從80°、60°、55°、30°、29°、0°六個角度選擇;
④δdmin:表示最小切削深度,當(dāng)計算深度小于δdmin,則取δdmin作為切削深度; ⑤d:表示精加工余量,用半徑編程指定;δd :表示第一次粗切深(半徑值); ⑥x、z:表示螺紋終點的坐標(biāo)值; ⑦u:表示增量坐標(biāo)值; ⑧w:表示增量坐標(biāo)值;
⑨i:表示錐螺紋的半徑差,若i=0,則為直螺紋; ⑩k:表示螺紋高度(x方向半徑值); g76螺紋車削實例
圖33所示為零件軸上 的一段直螺紋,螺紋高度為3.68,螺距為6,螺紋尾端倒角為1.1l,刀尖角為60°,第一次車削深度1.8,最小車削深度0.1,精車余量0.2,精車削次數(shù)1次,螺紋車削前先精車削外圓柱面,其數(shù)控程序如下:
圖33 螺紋切削多次循環(huán)g76指令編程實例 o0028 /程序編號
n0 g50 x80.0 z130.0;/設(shè)置工件原點在左端面 n2 g30 u0 w0;/返回第二參考點
n4 g96 s200 t0101 m08 m03;/指定切削速度為200m/min,調(diào)外圓車刀 n6 g00 x68.0 z132.0;/快速走到外圓車削起點(68.0,132.0)n7 g42 g01 z130.0 f0.2;n8 z29.0 f0.2;/外圓車削 n9 g40 g00 u10.0;n10 g30 u0 w0;n12 g97 s800 t0202 m08 m03;/取消恒切削速度,指定主軸轉(zhuǎn)速800r/min,調(diào)螺紋車刀 n14 g00 x80.0 z130.0;/快速走到螺紋車削循環(huán)始點(80.0,130.0)n16 g76 p011160 q0.1 r0.2;/循環(huán)車削螺紋 n18 g76 x60.64 z25.0 p3.68 q1.8 f6.0;n20 g30 u0 w0 m09;n22 m30;①m表示精車重復(fù)次數(shù),從1—99;
【本文地址:http://mlvmservice.com/zuowen/1061299.html】