【正文】
EP命令說明: 在MRC2000系統(tǒng)中,使用BEEP命令產(chǎn)生錯誤警告音。這個命令與正常情況下的輸出端口使用OUT類似。 在MRC3000系統(tǒng)中,使用命令OUT來控制蜂鳴器。例子:BEEPSOUND: 使用蜂鳴器發(fā)出聲音語法結(jié)構(gòu): SOUND [pitch], [length], [pitch], [length] , .... [頻率][時長]命令說明: 在MRC2000系統(tǒng)中,可以設置蜂鳴器信號的頻率和延時時間。 設置值從1到255. 對應頻率如下: 對應時長如下:例子: SOUND 60, 90, 60, 180, 30, 45 產(chǎn)生1秒1KHZ,PLAY: 使用蜂鳴器播放一段音樂語法結(jié)構(gòu): PLAY [play music line]命令說明: MRC系統(tǒng)和roboBASIC程序提供一個播放音樂的函數(shù)。播放音樂時需要在[play music line]中寫入數(shù)據(jù),參考下表 T意味著節(jié)奏(默認)(0為10),1為最快,0為最慢 MRC2000系統(tǒng)可以使用3個八度的音階。他們的名字分別為低中和高音階。 使用0到9來調(diào)整音調(diào)的長度,參考下圖: 默認最后一種長度。 4CDEF8G意味著演奏Do, Re, Mi 和 Fa(四分之一拍)和Sol(八分之一拍)。(此處翻譯有誤) PLAY音階的默認音階為中音階。 (1)音調(diào)長度是附加的[ 4Do 8 Mi 6 Fa ] (2)等符號是加在音調(diào)的前面[ Do $ Mi + Fa Sol 4Do 4Do ] 注:使用MR C3000系統(tǒng)時使用MUSIC命令代替PLAY命令。例子: PLAY “M4GGAA GGE GGEED” PLAY “M4GGAA GGE GEDEC”MUSIC: 使用蜂鳴器播放一段音樂語法結(jié)構(gòu): MUSIC [play music line]命令說明: 同PLAY 注:在MRC2000系統(tǒng)中使用PLAY代替MUSIC命令代替。例子:略TEMPO: 設置音樂的節(jié)奏(速度)語法結(jié)構(gòu): TEMPO [Set up Value]命令說明: 略例子: 略第十章 ROBOBASIC 外部通訊指令說明 在MRC3000系統(tǒng)的外部通訊: 使用高速RS232與外部設備進行通訊,不能使用miniBUS。所有的控制模式都有一個最大連接速率115,200bps。RX: 使用RX端口接受RS232信號語法結(jié)構(gòu): RX [端口速率], [接受到的值], [收到錯誤信號跳轉(zhuǎn)標簽] 命令說明: MRC2000系統(tǒng)通用9號端口使用RS232接受數(shù)據(jù),端口速率可以設置1到4,對應速率如下: [接受到的值]只允許是已經(jīng)定義過的字節(jié)型變量。 [收到錯誤信號跳轉(zhuǎn)標簽]通信緩沖區(qū)在開始時是空的。所有程序中使用RS232端口等待數(shù)據(jù)可以使用下面的句子結(jié)構(gòu)。 Retr y: RX 4, A, Retry MRC3000系統(tǒng)使用ERX命令接受接受RS232信號例子:D IM A A S B YTE Retry: R X 4, A, Retry IF A = amp。h80 THEN OUT 0, 0 ELSE OUT 0, 1 ENDIF GOTO Retry TX: 發(fā)送RS232信號語法結(jié)構(gòu): TX [端口速率], [數(shù)據(jù)]命令說明: 在MRC2000系統(tǒng)中,使用10端口發(fā)送RS232信號。 [端口速率]可以設置為1到4,對應的速率如下: [數(shù)據(jù)]可以使用數(shù)字、常量和變量。如果要發(fā)送字母A,則實際發(fā)送的是A的ASCII碼:DIM I AS BYTE I = ATX 4, I 注:在MRC3000系統(tǒng)中使用ETX代替TX命令例子: D IM A A S B YTE Main: A = BYTEIN(0) TX 4 , A GOTO Mai n MINIIN: 通過minibus接受信號語法結(jié)構(gòu): MINIIN命令說明: 通過minibus接受信號例子:DIM A AS BY TE Retr y: A = MINIIN IF A = 0 THEN GOTO Retry MINIOUT: 通過minibus發(fā)送信號語法結(jié)構(gòu): MINIOUT [Data], [Data]... 命令說明: 通過minibus發(fā)送信號例子: MINIOUT 100 , 20, 76, 65ERX: 接受RS232信號語法結(jié)構(gòu): RX [端口速率], [接受到的值], [沒有收到信號跳轉(zhuǎn)標簽]命令說明: 在MRC3000系統(tǒng)中接受數(shù)據(jù)。 [端口速率]設置如下: [接受到的值] 只允許是已經(jīng)定義過的字節(jié)型變量。 例子:Retry: ERX 9600, A, RetryETX: 發(fā)送RS232信號語法結(jié)構(gòu): ETX [端口速率], [發(fā)送數(shù)據(jù)] 命令說明: [端口速率]數(shù)據(jù)如下: [發(fā)送數(shù)據(jù)]可以使用數(shù)字,常量和變量。例子: 略第十一章 ROBOBASIC 模擬信號處理指令描述AD(): 將AD端口的模擬信號轉(zhuǎn)換為數(shù)字信號語法結(jié)構(gòu): AD ( [AD端口])命令說明: MRC3000系統(tǒng)有0到7這八個AD端口,分別是數(shù)字輸入輸出3239口。該命令將模擬信號轉(zhuǎn)化為數(shù)字信號,常量和字節(jié)類型的變量可以用在[AD端口]中。例子:DIM a AS BY TE Declare byte variable “a”. L CD IN IT Use of LCD module is initialized . CLS All data on LCD screen is cleared. CSOFF The cursor disappears. MAIN : A label named MAIN is declared. a = AD (1) The value inputted in AD Port 1 is saved as variable “ a”. LOCATE 5,0 The cursor is locate d at on the LCD PRINT FORMAT(a,DEC ,2 ) The inputted value, a , is outputted to the LCD module as two digits using the decimal system.GOTO MAIN Go to MAIN.REMOCON( ): 通過AD轉(zhuǎn)換端口7端口讀取遠程紅外控制器的值語法結(jié)構(gòu): REMOCON ([遙控( ) ] )命令說明: 7號端口被用于紅外遙控器。[遙控( ) ]被分配的值是1,但是在MRC3000 (3024) 系統(tǒng)中可以使用其他值。例子:DIM a AS BY TE MAIN: ra = R EMOCON(0) The value of remocon is put into the variable ”a”. ON a GOTO MAIN,KEY1,KEY2,KEY3,KEY4 GOTO MAIN END KEY1: . . ........... ... ... GOTO MAIN KEY2: . . ........... ... ... GOTO MAIN KEY3: . . ........... ... ... GOTO MAIN KEY4: . . ........... ... ... GOTO MAIN SONAR(): 從超聲波端口讀取數(shù)據(jù)并轉(zhuǎn)化為距離數(shù)據(jù)。語法結(jié)構(gòu): SONAR ( [超聲波端口] )命令說明: MRC3000系統(tǒng)的數(shù)字輸入輸出端口0到23可以用作超聲波端口的0到11,對應端口信息如下: [超聲波端口]必須是一個確定的值,返回值必須在0到3000以內(nèi)。如果返回值是0則表示沒有檢測到距離值(測量失?。?對于MRC3000系統(tǒng),可以用ROBOT ELECTRONICS公司的SRF04型超聲波傳感器。 例子:DIM A AS INTEGER Declare fixed number varia b le A. A = SONAR(3 ) The received value (distance is saved in variable A using Ultrasound Port 3 (Digital In and Out Port 6, 7). RCIN(): 從RC發(fā)射器和接受器輸入脈沖值。語法結(jié)構(gòu): RCIN ([RC 接受端口] )命令說明: 在MRC3000系統(tǒng)中,RC接受器是附加在AD輸入端口,可以讀取發(fā)射器的值。 [RC 接受端口] 的值對應如下: 為了防止電子干擾出現(xiàn)的故障,應該使用FM而不是AM。例子:DIM A AS BY TE A = RCIN( 0 ) A Received signal from the RC Receipt Port is saved as variable A. GYRODIR: 當支持使用陀螺儀時,設置伺服系統(tǒng)的方向語法結(jié)構(gòu): GYRODIR [電機組], [電機方向] …命令說明: 當一個MRC3000系統(tǒng)的一個AD端口使用陀螺儀時,可以控制伺服系統(tǒng)的方向,陀螺儀最多可以使用四個。參考下表: 因為一個陀螺是可逆的,特定的方向應該是確定的現(xiàn)值伺服。[電動機方向]就是一個“0”和“1”。值1將增加伺服位置和一個0將減少它。例子: GYRODIR G6A, 1, 1, 0, 0, 1, 0GYROSET: 設置一個特定的陀螺儀控制某個指定的電機組語法結(jié)構(gòu): GYROSET [電機組], [電機n的陀螺儀] … 命令說明: 略例子:GYROSET G6B, 1, 1, 2, 2, 0, 0 6 servo receives Gyro sensor 1 and processes it. 7 servo receives Gyro sensor 1 and processes it. 8 servo receives Gyro sensor 2 and processes it. 9 servo receives Gyro sensor 2 and processes it. 10 and 11 servos do no t use Gyro sensor. GYROSENSE: 設置伺服電機的陀螺儀的靈敏度語法結(jié)構(gòu): GYROSENSE [電機組], [電機N陀螺儀的靈敏度] … 命令說明: [電機N陀螺儀的靈敏度]可以使用0到255的數(shù)字或常量。0是不改變陀螺儀的靈敏度。例子:GYROSENSE G6A, 100, 100, 255, 255, 50, 50 0 and 1 servo set to 100 of Gyro sensi tivity. 2 and 3 servo set to maximum (255) of Gyro sensiti v ity. 4 and 5 servo set to 50 of Gyro sensiti v ity. 第十二章 ROBOBASIC 其他指令ON …GOTO: 根據(jù)條件變量跳轉(zhuǎn)語法結(jié)構(gòu): ON [變量] GOTO [行標簽0], [行標簽1]...命令說明: 該命令是根據(jù)[變量]的值跳轉(zhuǎn)至相應行標簽。最多可以使用255個行標簽例子: 略RND: 產(chǎn)生隨機數(shù)語法結(jié)構(gòu): RND命令說明: 產(chǎn)生0到255的隨機數(shù)例子:DIM A AS BY TE A = RND BYTEOUT 0, A Random value is outputted at Byte Port 0. REMARK: 放置與程序的開頭的描述語法結(jié)構(gòu): REMARK [描述]命令說明: 同注釋例子:REMARK 8 LEDs are turned on. BYTEOUT 0, 0第十三章 ROBOBASIC 指令描述‘$DEVICE: 設置程序適用的控制器語法結(jié)構(gòu): ‘$DEVICE [控制器] 命令說明: 該命令在程序編譯之后上傳時設置控制器,可以修改已經(jīng)設置好的控制器為[控制器]指定的控制器。例子: 39。$DEVICE MRC2000 ‘Present program to use the MRC2000 controller.‘$LIMIT: 設置每個伺服電機的極限運動范圍語法結(jié)構(gòu): 39。$LIMIT [電機號], [最小值], [最大值] 命令說