VEX 機器人軟件編程教程_第1頁
VEX 機器人軟件編程教程_第2頁
VEX 機器人軟件編程教程_第3頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、VEX 機器人軟件編程教程一、使用注意事項Run in Evaluation Mode1.0 30 2.0 7 2.0 15 天;如果是購買了序列號的用戶,在注冊的時候需要聯(lián)網(wǎng)注冊, 每個序列號么該系列號就不可用了,2.0 要換電腦注冊可以點菜單欄 幫助 再次使用該序列號了;VEX 軟件即可繼續(xù)試用;1.0 1.0 1.0 版;VEX(1.0 版本2.0 版本中文版和英文版的程序和代碼都不能用對方的的軟件相互打開編輯1.0 C 盤(包括桌面,否則會導(dǎo)致程2.0 1.0版軟件在每次下載程序之前都要先保存編譯鏈接然后再下載,然后選擇端口;COM 右鍵屬性硬件備管理器端口(COM LPT) Prol

2、ific USB-to-Serial Comm Port (com3)com3 VEX 介紹;2.0 中英版軟件可以定義子程序,1.0 中英版軟件不能定義子程序;2.0 量都是全局變量;1.0 中英版軟件沒有中斷、繼續(xù)、返回模塊,2.0 中英版軟件中有。2.0 生成下栽初始化程序。1二、主界面三、工具欄模塊(英文版)2四、編程區(qū)對于 1.0 版每一個新的程序都會有一個 I/O 定義模塊,變量定義模塊(Variable(BEGNI和結(jié)束模塊(END)2.0 變量定義模塊。I/O 義。在每一個程序里,開始模塊表示程序的第一個模塊;結(jié)束模塊表示程序的最后一個模塊。 你必須放置所有的模塊在這兩個模塊之

3、間。是傳感器模塊必須先定義其變量才能插入到編程區(qū)內(nèi)。編輯模塊(Edi:左鍵雙擊修改,也可單擊右鍵。英文版是點右鍵,選擇編輯。復(fù)制模塊(Cop:2.0 ctrl+c 復(fù)制模塊,也可單擊右鍵;英文ctrl也可單擊右鍵。剪切模塊Cu2.0 ctrl+x 剪切模塊,也可單擊右鍵;英文版是先選中模塊,再點右鍵選擇剪切。粘貼(Paste)2.0 ctrl+v 是點右鍵,選擇粘貼。刪除模塊Delet2.0 Delete鍵刪除模塊,也可單擊右鍵;英文版是點右鍵,然后選擇刪除。貼等操作 。3編譯下載:F5為編譯程序,F(xiàn)6為編譯并下載程序五、I/O 定義模塊I/O圖標(biāo)或點鼠標(biāo)右鍵I/O定義模塊I/O口。模擬/數(shù)字

4、端口(16個口ANALOG/DIGITA:波浪線表示模擬端口(默認(rèn)為 14,箭頭表示數(shù)字端口;箭頭向左的表示信號是由外部輸入到主控器(510)(默認(rèn)為 111以更改;中斷端口(INTERRUPT) (6 個口:不能更改;馬達端口(MOTOR) (8 個口:不能更改;六、變量設(shè)置模塊(1.0 版)的變量;int,也可以在變量取值處設(shè)置變量的值4全局變量設(shè)置模塊(2.0 版)局變量;這里數(shù)據(jù)類型一般都選擇int,其它的可以不填也可以在變量取值處設(shè)置變量的值,也可以不設(shè)置。局部變量設(shè)置模塊(2.0版雙擊局部變量設(shè)置圖需要使用到的局部變量;這里數(shù)據(jù)類型一般都選擇 int;變量名稱需要是英文也可以在變量

5、取值處設(shè)置變量的值變量定義表5七、接口說明接口馬達端口 MOTORS 共有 8 個口功能主控器上標(biāo)有MOTORS 字樣的端口,用來接馬達和伺服器中斷端口INTERRUPTS主控器上標(biāo)有INTERRUPTS 字樣的端口用來接超聲波傳感共有6 個口的OUTPUT端和編碼器模 擬 /數(shù) 字 端 口ANALOG/DIGITAL 共有 16 個口ANALOG/DIGITAL 14 為模擬/數(shù)字通用端口,可接巡線、光敏、碰撞、行程,默認(rèn) 510 為數(shù)字輸出端口,可接碰撞、行程,默認(rèn) 1116 口,接超聲波的Input 端,都可以自行更改指示燈說明八、Inputs 主控輸入1、碰撞開關(guān)傳感器 bumper

6、switch的傳感器。它有兩種狀態(tài):即開和關(guān)。1。0。Test Code 中的 BUMPERTEST.ECP 工程,6示范怎樣編寫碰撞開關(guān)程序。碰撞開關(guān)程序范例:首先在變量定義模塊a,然后拖入一個后在當(dāng)循環(huán)外面在拖入一個馬達控制模塊;那么這個程序的功能就是:當(dāng) a=1 即是碰撞開關(guān)沒碰到時,就不停的啟1 a=0 1。2、光敏傳感器 light sensor光敏傳感器是模擬式的圍環(huán)境光線的亮暗的傳感器;把光線由亮到暗的范圍0 1024。值越線越暗;打開英文版位于Test Code文件LIGHTTEST.ECP看其示范怎樣編寫光敏傳感器程序。光敏傳感器程序范例:首先在變量定義模塊a,然后拖入一個(

7、即a)那么這個程序的功能就是:當(dāng) a=800 則是光線比較暗時,就跳出當(dāng)循環(huán),停止馬達1。73、限位開關(guān) limit switch限位開關(guān)是數(shù)字式的似;它有兩種狀態(tài):即開和關(guān);10Test Code LIMITTEST.ECP 其示范怎樣編寫行程開關(guān)程序。限位開關(guān)程序范例:首先在變量定義模塊(a那么這個程序的功能就是:當(dāng) a=1 即是限位開關(guān)沒閉合時,就不停的啟1 a=0 1。84、巡線傳感器 Line Follower感器;把顏色的深淺由白0 1024示顏色越黑;打開英文版位于Test Code的文ECP 工程,看其示范怎樣編寫巡線傳感器程序。巡線傳感器程序范例:首先在變量定義模塊a,然后拖

8、入一個巡線檢測模塊,接著拖入一個當(dāng)循環(huán)模塊對當(dāng)前灰度變量(即變量a)那么這個程序的功能就是:當(dāng) a=800 則是顏色比較黑時,就跳出當(dāng)循環(huán),停止馬達1。5、編碼器 Optical Shaft Encoder用來測量和定義馬達轉(zhuǎn)動的圈數(shù)或者路程。編碼器一般插在中斷端口(INTERRUPTS)編碼器旋轉(zhuǎn)(360 度)等于 90個編碼脈沖。打開英文版位于Test Code的文件夾中ENCODERTEST.ECP范怎樣編寫編碼器程序。9編碼器程序范例:首先在變量定義模塊a,然后拖入三個接著拖入一個當(dāng)循環(huán)模塊對當(dāng)前路程變量(即變量a)進行判斷,然后在那么這個程序的功能就是:當(dāng) a30 30時,就跳出當(dāng)循

9、環(huán),停止馬達 1。6、超聲波傳感器 Ultrasonic Sensor據(jù)接收到的信號的時間和強弱計算出離障礙物的距離10超聲波傳感器有兩根連接線確保標(biāo)有 Output 的中斷端口。Input 標(biāo)簽數(shù)字輸出端口(111。超聲波的取值范圍是:2100小于2cm是超聲波的2cm TestCode 的文件夾中的ULTRASONICTEST.ECP 工程,看其示范怎樣編寫超聲波傳感器程序。超聲波傳感器程序范例:首先在變量定義模塊a,然后拖入兩個即變量a)a20即是當(dāng)前超聲波和障礙物的距離沒有20 1 a=20 20 20 1。117、數(shù)字輸入 Digital Input模塊可以代替所有數(shù)字式的傳感器模塊

10、8、模擬輸入 Analog Input九、Outputs主控輸出1、馬達控制 Motor Module箭頭圖標(biāo)向上暗示馬達正轉(zhuǎn)。的點暗示馬達停止。箭頭圖標(biāo)向下暗示馬達反轉(zhuǎn)。馬達控制編程范例 1:首先拖入一個馬達模塊,選擇正轉(zhuǎn),再拖入一個懸空等待模塊, 1000拖入一個馬達模塊,選擇停止;那么這個程序的功能為:馬達 1正轉(zhuǎn)一秒后停止。需要注意的是你啟動了幾個馬達那么在停止的時候就要加多少個停止馬達。馬達控制編程范例 2:首先拖入一個當(dāng)循環(huán)模 選擇正轉(zhuǎn);那么這個程序的功能為:12馬達 1 永遠(yuǎn)正轉(zhuǎn)。馬達方向輔助圖表2、伺服控制 Servo Module360120 度伺服器的輸出軸正對自時針表示反

11、轉(zhuǎn);箭頭圖標(biāo)向下暗示伺服器正轉(zhuǎn)。箭頭圖標(biāo)向上暗示伺服器反轉(zhuǎn)。伺服器控制編程范例:個伺服器模塊,選擇停止;1 正轉(zhuǎn)一秒后停止。多少個停止伺服器。133、數(shù)字輸出 Digital Output態(tài)。你能夠利用數(shù)字輸出端口打開或者關(guān)閉像一個發(fā)光二極管或一個螺線管這樣的設(shè)備。數(shù)字輸出能夠設(shè)置1或置成一個預(yù)先定義的變量。1(0)十、Program Flow 程序流程控制1、單向選擇結(jié)構(gòu) IfIf-if 語句內(nèi)部的程序。如if 條件語句的部分,運行下一個程序模塊。If 模塊編程范例:以編碰撞開關(guān)程序為例;(Variables)里面定義了一個變量 a,接著拖入一個當(dāng)1If if a=0,在if 語句里面拖入一

12、個馬2 秒;然后停止馬達;當(dāng)沒碰到時則不運行任何程序。142、 Else-If 嵌套選擇結(jié)構(gòu)模塊Else-IfIF 能使用,表示和IF 模塊的條件相件Else 模塊ElseIF 模塊結(jié)合才能使用, IF 雙向選擇結(jié)構(gòu) If-ElseIF-Else IF 模塊的結(jié)合體,只要符合if 面的程序。如果不符合設(shè)IF條件部分,執(zhí)行里面的程序它只執(zhí)行一次程序,沒有循環(huán)功能If-Else 條件編程范例: 首先在變量(Variables)里面定義了a, 接著拖入一個當(dāng)循環(huán)模塊,條件設(shè)構(gòu)成永遠(yuǎn)循環(huán),然后拖入一個碰撞檢測模塊, 再 拖 入If-Elseif 15件里面設(shè)置 a=1,在 if 語句里面拖入一個馬達模

13、塊設(shè)置為正轉(zhuǎn);else語句里面拖入一個馬達模塊設(shè)置為停止;Else里面的停止馬達3、當(dāng)循環(huán) While Loop定的條件,它將跳出循環(huán),執(zhí)行循環(huán)外部的模塊。該循環(huán);當(dāng)把條件設(shè)置成數(shù)字 1編程的時候需要用到永遠(yuǎn)循環(huán)。當(dāng)循環(huán)模塊編程范例 1:以編碰撞開關(guān)程序為例:首先在變量定義模塊a,然后拖入一個碰撞檢測模塊,再拖入當(dāng)循環(huán)模塊,條件里面設(shè)置a=1在當(dāng)循環(huán)外面拖入一個馬達模塊設(shè)置為停止;1 才停止當(dāng)循環(huán)模塊編程范例 2:首先拖入當(dāng)循環(huán)模塊,在當(dāng)循環(huán)1環(huán)運行當(dāng)循環(huán)內(nèi)部冊程序;在當(dāng)16循環(huán)里面拖入一個馬達模塊設(shè)置為正轉(zhuǎn);1 永遠(yuǎn)正轉(zhuǎn)4、多次循環(huán) For Loop多次循環(huán) For Loop 模塊編程范例:

14、首先在變量定義模塊里面定義aFOR for 為 a = 0; a = 3; a+ a 0直到a3for 置為 2 秒,最后拖入一個馬達模塊,停止馬達 1;1 6 秒后停止5、定時器 Timer定時器 Timer動時間100 表0.1 秒1000 1 10000 10 以此類推17定時器 Timer 編程范例:首先在變量定義模塊a b,然后拖入一個定時器模塊選擇開始,賦值給變量a;接著拖入一個定時器模塊,選擇預(yù)設(shè),賦值給變量a;在拖入一個定時器模塊,選擇取值,賦值給變量a=5000表示定時器變量小于等于5 1 1 秒,最后在次賦值;5 1秒然后停止 1 秒,當(dāng)定時器的時間大于 5 秒時就跳出當(dāng)循

15、環(huán)6、懸空等待 Wait計時。即:100 0.1 秒、1000 1 秒、10 秒,以此類推18懸空等待 Wait 模塊編程范例:以編馬達為例,首先拖入一個馬達模塊,設(shè)置為正3 置為停止;1 3 秒停止。7、表達式賦值 Assignment表達式賦值 Assignment 模塊相當(dāng)于一個何模塊的功能;你能夠為一個變量設(shè)置一個明確的值,例如: bumper=0你能夠定義一個數(shù)學(xué)表達式,例如:x + y=z8、中斷 Break中斷模塊功能常用在當(dāng)循環(huán)或 IF 條件中,表示當(dāng)程序運行IF 條中斷 Break 編程范例 1:程序的功能就變化了;該程序功能為:程序進入當(dāng)循環(huán),啟動馬達 1 正轉(zhuǎn) 22 就馬

16、上中斷當(dāng)循環(huán)條件, 跳到當(dāng)循環(huán)的下面,執(zhí)行1 1 然后停止。中斷 Break 編程范例 2:程序的功能就變化了;1 19的下面,執(zhí)行下面的馬達 1 反轉(zhuǎn) 1 秒,然后停止。9、繼續(xù) ContinueContinue繼續(xù) Continue 模塊編程范例:首先在變量定義模塊(Variables) 個變量 a,首塊,設(shè)置為 203 停止;1 正轉(zhuǎn)3 秒停止,接著就跳到當(dāng)循環(huán)的條件判斷處,從新判斷,而不執(zhí)行繼續(xù)模塊后面的馬達 1 反轉(zhuǎn) 3 秒這段程序。10、返回 Return跳到程序的結(jié)束位置返回 Return 編程范例:雖然程序一開始設(shè)置的是一個永遠(yuǎn)循環(huán),理論上是永遠(yuǎn)都運行當(dāng)循環(huán)里面的程序,永遠(yuǎn)都跳

17、不出來,但是加了返回模塊以后,程序的功能就變化了;1 3 達 1,所以返回執(zhí)行以后,馬達 仍然會繼續(xù)轉(zhuǎn)動。PrintToScreen屏幕輸出模塊(Print To 主要是用來顯示用戶需要檢測的和主控器連接在一起的電子元件的當(dāng)前參數(shù);打開 VEX 編程軟件英文版的安裝目錄: 一般默認(rèn)的路徑是C:Program FilesIntelitek;快速找到它的安裝位置的方法是在桌面右鍵點擊 VEX 編程軟件的圖標(biāo)屬性快捷方式查找目標(biāo);ProjectsProjectsTest Code這個文件夾就可以查看如何使用屏幕輸出模塊(Print 21在不關(guān)閉主控器電源并且下載線也和主控器相連接的情況下,點圖標(biāo)然后

18、該窗口里面就可以顯示出主控器的端口從當(dāng)前電子元件獲得的參數(shù)值。屏幕輸出 Print To Screen 模塊編程范例:首先在變量定義模塊a當(dāng)循環(huán)模塊,條件1循環(huán)里面拖入一個碰撞檢測模塊,選一個屏幕輸出模塊,屏幕輸出模塊的變量為預(yù)先定義的變量 a=把該程序下載到主終端,就可以顯示當(dāng)前碰撞檢測到的數(shù)據(jù)12、程序注釋 Comment對程序做對你修改和查閱有幫助的說明1.0 1.0 2.0 2.0 以中文注釋;源碼注釋被編譯器忽略。13、自定義代碼 User Code自定義代碼 User Code:可以替代任何模塊,比如馬達模塊的代碼是SetMotor ( 1 , 255 ) ;User Code 達

19、模塊;22C C 語言的相關(guān)指導(dǎo)書。十一、RC Control 遙控通道控制1、遙控器按鍵說明2、遙控器的基本操作遙控器的操控桿是有兩種模式配置的. 請看以下指示來查看或轉(zhuǎn)換:(1)把遙控器的開關(guān)推到 ON的位置來啟動遙控器(2)同 時 按 下 ModeSelect 鈕直至液晶屏顯示出菜單畫面為止.(3) 按Mode鈕直到有”Drive”字出現(xiàn)在液晶屏的左方 (是最后的菜單)來進入驅(qū)動模式調(diào)節(jié)菜單.(4)目前的設(shè)定會顯示在液晶屏里,顯示內(nèi)容是”23”或”12”. 你利用LCD右邊的數(shù)據(jù)輸入按“+ ”或“ ”推上或推下來轉(zhuǎn)換模式.。233、遙控接收器接法示意圖4、遙控最優(yōu)系統(tǒng)搭配RF 最優(yōu)系統(tǒng)搭

20、配:遙控、程控、線控多種控制方式。5、單桿控制雙馬達 Arcade-2 motor指的是遙控器的一個操縱桿控制兩個馬達同時轉(zhuǎn)個馬達轉(zhuǎn)動的速為手的力量問題而使兩個馬達轉(zhuǎn)動的速度不一樣單桿控制雙馬達編程范例:首先拖入一個當(dāng)24131 2;1 2 1 通道控制前進后退;遙控器的 3 通道控制旋轉(zhuǎn)6、單桿控制四馬達 Arcade-4 motor指的是遙控器的一個操縱桿控制四個馬達同時轉(zhuǎn)或同時個馬達轉(zhuǎn)動的速度不論快慢, 都是一致因為手的力量問題而使四個馬達轉(zhuǎn)動的速度不一樣單桿控制四馬達編程范例:1永遠(yuǎn)都檢測遙控器發(fā)射號;然后在當(dāng)循環(huán)里面拖入一個單桿控制四馬達模塊,前進后退選擇 1,旋轉(zhuǎn)選擇 3,馬達通道

21、則選擇 1、2、3、4;1、2、3、4 1通道控制前進后退,遙控器的 3 通道控制旋轉(zhuǎn)257、雙桿控制雙馬達 Arcade-2 motor指的是遙控器的兩個操縱桿控制兩個馬達轉(zhuǎn)或停,這樣兩個馬達轉(zhuǎn)動的速度不論快慢, 都有可能不一的力量問題而使兩個馬達轉(zhuǎn)動的速度不一樣雙桿控制雙馬達編程范例:1永遠(yuǎn)都檢測遙控器發(fā)射出來的信號;1,右馬達31 2;1 2 1 13 28、雙桿控制四馬達 Arcade-4 motor雙桿控制四馬達這樣四個馬達轉(zhuǎn)動的速慢,都有可能不一致, 就會因為手26的力量問題而使四個馬達轉(zhuǎn)動的速度不一樣雙桿控制四馬達編程范例:1,構(gòu)成一個永遠(yuǎn)循環(huán),這樣使它永遠(yuǎn)都檢測遙控器發(fā)射出來的信號;131、2、3、4 ;1、2、3、4 1 通道控制馬達 1、2,遙控器的 3 通道控制馬達 3、49、單桿控制單馬達 Motor Module Rx轉(zhuǎn)或停單桿控制單馬達編程范例:首先拖入一個當(dāng)循環(huán) 1, 然后在當(dāng)循環(huán)里面拖入一個單桿控制單馬道選擇 1,馬達通道則選擇 1;該程序的功能就是:遙控器的 1通道控制馬達 1 轉(zhuǎn)動10 Module Rx指的是遙控器的一個操縱桿控制一個伺服器轉(zhuǎn)或停27單桿控制伺服器編程范例

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論