當前位置:編程學習大全網 - 編程語言 - 機場編程軟件

機場編程軟件

編程是在計算機的幫助下,為了達到某種目的或解決某個問題,使用壹種編程語言編寫程序代碼,並最終得到結果的過程。解釋器是壹種高級語言翻譯器。它以源語言(如BASIC)編寫的源程序作為輸入,解釋壹句話然後提交給計算機執行,不形成目標程序。就像外語翻譯中的“口譯”壹樣,把壹個句子變成另壹個句子並不能產生全文的譯文。這種工作模式非常適合人們通過終端設備與電腦對話。比如在終端上鍵入壹條命令或語句,解釋器會立即將語句解釋成壹條或幾條指令提交給硬件立即執行,並將執行結果反映給終端。從終端鍵入命令後,可以立即獲得計算結果。這確實很方便,適合壹些小型機的計算。但是,解釋器的執行速度非常慢。比如源程序中有壹個循環,解釋器就要反復解釋並提交這組語句來執行,這樣會造成很大的浪費。我們在為樂高mindstorms編程時,通常會使用ROBOLAB這樣的解釋器。雖然它有壹些缺陷,但使用它有許多優點。

ROBOLAB軟件是由樂高集團、塔夫茨大學和NI公司聯合開發的教學機器人編程軟件。軟件的核心是NI公司開發的圖形化編程環境Lab VIEW。ROBOLAB軟件從1.0版本到2.5.4版本共修改了8次,每次修改都增加了不同的功能。目前ROBOLAB軟件非常強大。robo lab 2 . 5 . 4版是唯壹壹個完全中文版的機器人解釋器。作為教學機器人專用編程語言,它是壹款低起點、高開發、易學的圖形化軟件,能讓壹個沒有任何編程知識的學生在短時間內掌握編程。擁有C、VB等高級語言的各種功能。不同的是ROBOLAB軟件編程不需要記住各種語句的格式,也不需要在電腦上輸入語句。它需要做的就是把需要的圖標邏輯連接起來,完成編程。ROBOLAB最特別的優勢在於它提供了不同的級別和不同的編程方法。它提供了兩種方式——“程序員”和“研究員”。研究者提供了數據收集和分析的功能。“程序員”分為航海家和發明家。navigator level提供的編程環境和例子相對簡單,適合初學者;它為初學者提供了壹個固定的編程模塊。可以用鼠標點擊圖標模塊,在下拉圖標模塊中選擇需要的圖標來完成。inventor級別提供完全控制。在這兩個層次中,又有四個層次,由淺入深。前面說了,軟件的功能很強大,那麽它具體有哪些方面呢?

1和ROBOLAB有200多個功能模塊,具有VB、C/C++等語言的常用功能。

2.它可以直接或間接地控制機器人的運動;

3.利用ROBOLAB作為服務器實現對機器人的遠程控制;

4.強大的數據采集和處理功能,可以通過DCP傳感器采集數據,並對數據進行處理和分析;

5.使用Lab VIEW的核心語言G語言進行專業的數據分析和工程測試。

中國教育網2008年3月提供的數據顯示,我國中小學在校學生人數約為2.27億人,其中約3500萬人有上網經歷(約占學生總數的654.38+05.4%)。也就是說,目前中國至少有3500萬中小學生在接觸電腦。我相信他們大多數人都想獲得更多的科技知識。但目前的情況是,中國的科技教育還沒有跟上這些學生的需求。雖然很多中小學生都在使用電腦,接觸高科技設備,比如我們身邊各種功能的機器人越來越多。但對他們來說,這些設備很神秘,想知道其中的奧秘,卻無從下手。北京西米亞公司帶來的樂高Dacta機器人系統在這方面找到了突破口。

樂高Dacta機器人系統的核心是RCX,壹個革命性的微控制器。這個控制器可以通過紅外線接收寫在電腦上的程序,通過紅外線將采集到的數據傳輸給電腦,甚至可以作為這個系統的大腦與“夥伴”(其他RCX)聯系。它利用傳感器(像人的眼睛或鼻子)來感知環境的變化(如亮度、溫度等。),處理這些采集的數據,控制輸出部分(電機或燈)的開和關。當然,機器人的制造是壹個循序漸進的過程。首先,妳需要設定目標。妳需要什麽樣的機器人?然後我們需要設計建造它,然後用ROBOLAB在電腦上給機器人寫壹個程序,通過紅外發射器把程序下載到RCX,因為RCX是微型計算機。其核心是日立H8微控制器和512KB外部RAM。微控制器負責控制三個輸出端口和三個輸入端口。微控制器的內置16KB ROM包含基本程序,例如用於啟動的引導模塊。除了H8微控制器和存儲芯片,RCX還包含壹個緊湊型圖形液晶顯示器、壹個微型揚聲器(直徑15毫米)和液晶控制器、壹個穩壓器、兩個紅外傳輸二極管、壹個光電二極管和大量無源元件。下載成功後,RCX可以不用電腦自動運行。最後,測試妳的機器人,看看它是否達到妳的目標。有哪些需要改進的地方?回到第壹步,改進妳的機器人。在這個過程中,要求學生充分發揮自己的創造才能,綜合運用各種知識,發揮團隊合作精神。對我國中小學生學習機器人原理、探索科技知識也起到了很好的輔助作用。

編程是樂高Dacta機器人系統整個制造過程中的重要壹步。它把我們的指令傳輸給樂高Dacta機器人系統,讓樂高Dacta機器人系統按照我們的目標運行。

以及如何系統地向廣大中小學科技愛好者講解編程過程,我總結了壹些具體工作中的小經驗,希望與大家探討。接下來我用壹個電風扇的編程過程給大家介紹壹下。

任務是造壹個電風扇,就像我們家的電風扇壹樣。您可以打開和關閉電風扇,為電風扇調節不同的風速,並設置電風扇的關閉時間。在這個任務中,我們首先需要制造壹個電風扇。

因為本文側重於編程,所以不討論電風扇的構建步驟。

為了更好地向中小學科技愛好者解釋這個任務,這裏把任務分為三步。具體步驟如下:

1,可以控制電風扇的開關,給我們帶來涼風;

2、電風扇可以根據需要調節不同的轉速;

3.設定電風扇的時間,使電風扇在指定的時間開啟或關閉;

為了讓學生更直觀地掌握計算機編程原理,這裏要介紹流程圖的設計和步驟編寫。流程圖是編程思路的體現,也是我們編程前必須做的準備。這裏我們得先寫電風扇的流程圖。應用廣泛,是對人們解決問題的方法、思路或算法的描述。其優點是:采用簡單規範的符號,作圖方法簡單;結構清晰,邏輯性強;易於描述和理解。

接下來會用流程圖逐壹完成任務分解步驟,在電腦上用ROBOLAB2.5.4編寫程序。

首先,控制電風扇的開關,給我們帶來涼爽的微風;

讓學生思考家裏的電風扇是如何工作的。壹是電風扇處於停止狀態;我們接通電源後,電風扇的電機就會轉動,帶動同壹根軸上的葉片轉動;當我們關掉電源時,電風扇的電機就會停止轉動,葉片也會停止轉動。

讓學生用觸摸開關做電風扇的開關,讓自己做的電風扇可以轉動。觸摸傳感器是教學機器人傳感器家族中最簡單、最直觀的壹種。它的工作原理非常像妳門鈴上的壹個按鈕:當它被按下時,電路接通,電流通過,RCX可以檢測到這個數據流,妳的程序將讀取觸摸傳感器的當前狀態:開或關。當然,在RCX上安裝觸摸傳感器就相當於擁有了感覺器官。機器人可以知道妳是否在觸摸它。)

根據家裏電風扇的工作模式,把電機接到RCX的A口,把觸摸開關接到RCX的1口。按如下方式編寫流程圖:

開始

停止a、b、c端口。

按否。1觸摸傳感器。

馬達向左旋轉

按否。1觸摸傳感器。

通過制作流程圖和編程,學生可以發現,機器人編程的思路是按照先控制輸出端口,再輸入端口提供信號,再控制輸出端口的邏輯順序編寫的。循環運行這個程序壹次,讓學生觀察程序的變化。同時可以讓學生理解循環在程序中的作用。

第二,根據需要調整風扇到不同的轉速;

這裏,為了便於觀察,我們在編寫程序時要考慮將電機的轉速由低到高依次改變。按照機器人編程的思路,先控制輸出端口,然後輸入端口提供信號,再依次編程控制輸出端口的邏輯順序。按如下方式編寫流程圖:

開始

停止a、b、c端口。

按否。1觸摸傳感器。

壹個電機以1的速度向左旋轉。

按否。1觸摸傳感器。

馬達以3倍的速度向左旋轉。

按否。1觸摸傳感器。

壹個馬達以五倍的速度向左旋轉。

按否。1觸摸傳感器。

RCX的微電機根據提供的電壓不同,有1~5種速度,並按從慢到快的順序排列。

在這裏,學生可以考慮如何用兩個觸摸傳感器編寫程序。當然,我們無法在這個循環程序中隨時控制風扇的開關。下面介紹壹種更高級的編程方法和流程圖。

在用這個級別編程的時候,同學們會發現比用navigator級別編程更復雜,上面說的編程邏輯在這裏需要改變。這需要準備壹份詳細的流程圖:

開始

標記紅色跳躍點

按否。1觸摸傳感器。

馬達向左旋轉

按下3號觸摸傳感器。

壹個電機以1的速度向左旋轉。

按下3號觸摸傳感器。

馬達以3倍的速度向左旋轉。

按下3號觸摸傳感器。

當按下觸摸開關1時,結束。

壹個馬達以五倍的速度向左旋轉。

電機停止運轉。

跳到標有紅色的跳躍點。

未按下

1

數字

觸摸開關

在這個程序中,我們應用了事件分支。什麽是事件?如果妳曾經用電腦編程,妳可能已經註意到,在Windows和DOS下編程有很大的區別,尤其是Windows的消息機制。Windows上的編程是事件驅動的,Windows產生各種事件,比如鼠標點擊和數據輸入,程序響應各種事件。在RCX以前的固件版本中,它不是事件驅動的。現在,固件3.28首次支持這壹高級功能。有了ROBOLAB2.5,妳可以編寫程序快速響應事件,提高實時性。可以說事件驅動是這個新版本固件最好的功能。有壹個場景,妳正在欣賞妳最喜歡的電視劇。這時候電話響了,我們能聽得出來。

因為這是壹個事件,這個時候妳要處理這個事件。妳可以接電話,但很巧,妳的門鈴在這個時候響了。那麽,妳是先接電話還是先開門呢?妳要考慮這兩個任務的優先級,任務的優先級會在本節後面介紹。我們在Windows中使用的軟件就像場景中的妳,需要處理各種各樣的事件(每秒鐘發生上千個事件),比如敲鍵盤、點擊鼠標、時鐘等。軟件的職責是處理各種事件。

要定義壹個事件,我們需要定義事件的屬性和觸發條件。當然,在標準事件中,事件的屬性是默認的。在這個程序中,我們設置了當1觸摸開關被按下時觸發事件的條件。如果事件沒有被觸發,程序在藍色跳轉程序中循環,如果條件被觸發,程序跳出藍色跳轉程序。

特別解釋跳躍的定義。跳轉語句,即GOTO語句,是壹種無條件轉移語句。也就是在程序的任何地方標註轉移點和著陸點。當程序運行到標記的轉移點時,程序將無條件轉移到著陸點。節目落點可以在標記傳送點的前面或後面。可以使用ROBOLAB中的紅藍黃綠黑跳,如果全部用完也可以使用白跳加跳數(6~20)。所以妳可以在壹個程序中同時使用20個跳轉命令。

第三,給電風扇設定時間,讓電風扇在規定的時間開或關;

時間是機器人系統中非常重要的控制信息。在這裏,我們首先要求學生用時間控制機器人的關閉,即使電風扇在10秒後自動關閉。

(圖5)

想讓電風扇5秒後開,10秒後停怎麽辦?學生將很快寫出下面的流程圖。

關閉端口a、b和c。

關閉端口a、b和c。

關閉端口a、b和c。

等待5秒鐘。

等待5秒鐘。

關閉端口a、b和c。

開始

等待5秒鐘。

馬達向左旋轉

等待10秒。

停止並結束

如何給電風扇做壹個定時器,也就是可以控制電風扇開或關多久?

我們將風扇的關閉時間設置為5秒。以5秒為控制單位設置時間的計時器需要分支和容器。分支是if條件語句。在ROBOLAB中,使用分支和合並來實現條件選擇。每個圖標左側有壹個輸入,右側有兩個條件不同的輸出。在條件分支的末尾,必須使用壹個合並圖標來合並兩個分支。容器是什麽意思?很多人在學習ROBOLAB的時候很難理解容器的概念,因為其他編程環境中沒有這個概念。那麽容器到底是什麽,它有什麽作用呢?記得剛學計算機語言的時候,老師舉了壹個例子來解釋變量的概念,以及如何交換兩個變量的值:壹個杯子A裝滿了牛奶,另壹個杯子B裝滿了咖啡。B杯牛奶,A杯咖啡怎麽做?這裏的杯子是壹個容器,在高級語言中是壹個變量。如果妳對微控制器(MCU)有所了解,那麽容器就是MCU中的寄存器。程序框圖如下:

(圖6)

為什麽我們看到這個程序中使用了多個分支而不是循環?因為ROBOLAB的程序是從左到右依次運行的。如果我們使用循環語句,也就是While和for語句,我們編寫的程序如下。

(圖7)

在圖7中,設置循環程序跳出循環的條件是紅色計時器長於5秒,但我們會發現紅色計時器長於5秒後就不能立即跳出循環。這是因為程序是從左向右依次運行的。程序循環達到跳轉條件後,必須運行按下觸摸開關No的步驟。1再次跳出循環。如果在循環程序達到跳轉條件後,我們不按1觸摸開關,程序將在此停止,直到按下1觸摸開關。這偏離了我們讓定時器在5秒後完成設置的目標,所以這裏需要使用分支。在分支程序中,我們可以看到觸摸開關1無論是否按下都會從左到右依次運行,所以程序可以在5秒後完成設置,這符合我們的初衷。圖6程序流程圖如下:

開始

馬達向右旋轉。

紅色容器歸零

紅色計時器清零。

設定紅色著陸點。

當紅色計時器大於5秒時。

是否按下1號觸摸開關?

紅色容器加5

顯示紅色容器值

等待0.2秒。

顯示紅色容器值

等待紅色容器值秒。

馬達停止

跳到藍色著陸點

跳到紅色著陸點

藍色著陸點

合並分支

合並分支

流程圖中的虛線是指在程序運行過程中實際不運行的流程線。至此,我們已經設置好了電風扇的所有功能。綜合以上程序,我們就可以看到生活中的電風扇了。通過這些,學生可以清楚地認識到,機器人的思維是我們設定的,機器人按照我們預設的程序依次運行。如果我們的程序設置不正確,機器人就會按照我們錯誤的程序運行。這可以讓學生意識到仔細完善的分析是非常重要的。

同時和同學們了解到,制造機器人通常有四個階段:提出想法——設計建造——計算機編程——操作調試。這四個階段與現代產品的設計流程驚人的相似:概念設計-結構設計-智能控制-產品測試。四個階段都是建立在分析問題的基礎上,從不離開人的智能活動。這個過程決定了人的思維的主導作用,而不僅僅是第壹階段。創意是創新設計的源泉,而思維往往是籠統的、不成熟的,導致概念設計方案的多樣性。該方案通過結構設計來體現,我們提供了基於多學科理論的可重構結構模型的創建。這些集機械結構、傳感器、控制器、電路接口和系統理論於壹體的機器人模型,為概念設計方案多樣性的實現提供了物質保障和技術基礎。在輕松的ROBOLAB編程環境下生成的設計程序,徹底解放了繁瑣的編程語言帶來的智力輸入。快速簡單的機器人控制技術,在反復調試中不斷完善機器人模型和控制程序,為方案的決策提供了實物再現和科學的評估依據,而不是純理論的評估,方案評估幾乎是整個產品。創造的模型都是現代科技的智能機器人和模擬器,都是趕上時代,開辟未來的模型。每個項目都在創造現實,建設未來。

參考資料:

ROBOLAB2.5編程指南

  • 上一篇:抖音短視頻怎麽做?
  • 下一篇:用VB來編程壹個簡易的計算機
  • copyright 2024編程學習大全網