嵌入式技術應用是一門實踐性極強的技術,其內容豐富、綜合性強,對于培養(yǎng)學生工程實踐能力、問題分析和解決能力具有至關重要的作用。隨著IT技術的快速發(fā)展,知識爆炸現(xiàn)象日益突出。嵌入式系統(tǒng)開發(fā)也從起初的以模擬、數(shù)字I/O端口數(shù)據(jù)采集為主逐漸擴展到聲音、圖像等不同類型信號的采集和處理,并不斷融合物聯(lián)網、機器視覺、人工智能等技術。這種變化使得嵌入式系統(tǒng)技術體系越來越龐大,技術復雜度空前提高,同時也導致學習者難以在短時間內快速掌握嵌入式系統(tǒng)開發(fā)方法,具備應用系統(tǒng)的設計與開發(fā)能力。
NI公司出品的myRIO是專門針對學生創(chuàng)新應用而推出的便攜式嵌入式開發(fā)平臺,具有易于上手使用、編程開發(fā)簡單、板載資源豐富等顯著特點,能夠使開發(fā)者快速獨立完成完整的嵌入式工程項目,特別適合測控、機電、機器人等領域的系統(tǒng)級應用設計和開發(fā)。myRIO接口類型極為豐富,涵蓋8個單端模擬輸入、2個差分模擬輸入、4個單端模擬輸出、2個對地參考模擬輸出、40個數(shù)字I/O端口(支持PWM 、正交編碼輸入)、1組音頻輸入輸出、1個USB接口(可連接攝像頭、U盤等),可連接常用的各種類型傳感器或者外圍設備。此外,myRIO還提供了SPI、I2C、UART、WiFi等器件級通信端口和系統(tǒng)級通信端口,可以容易實現(xiàn)物聯(lián)網相關技術應用。
得益于LabVIEW圖形化開發(fā)語言,基于myRIO的嵌入式應用系統(tǒng)開發(fā)入門難度大幅降低,而且由于LabVIEW強大的數(shù)學、統(tǒng)計、通信、信號處理等工具支持,嵌入式系統(tǒng)開發(fā)過程中涉及的工程技術范圍也空前擴大,可以使用的技術手段更加豐富,使得嵌入式開發(fā)人員可以在有限時間內迅速具備復雜工程系統(tǒng)設計與開發(fā)能力。
為了促進讀者快速具備嵌入式應用系統(tǒng)開發(fā)能力,本書采用基本原理和應用案例相結合的編寫方式,精心設計具有實用價值的嵌入式應用系統(tǒng)設計實例,所有實例既重視myRIO嵌入式開發(fā)基本技術的多種實現(xiàn)途徑,又特意體現(xiàn)不同基本技術之間的相互滲透與融合。而且本書遵循解決工程問題的一般流程,將嵌入式應用開發(fā)分解為設計目標導向下的硬件連線設計、軟件設計、完整的程序實現(xiàn)等工作階段,引導讀者模仿書中實例,系統(tǒng)、深入地學習基于的嵌入式應用系統(tǒng)開發(fā)的核心技術。
全書分為8章。
第1章為LabVIEW程序設計快速入門,簡要介紹了程序設計語言LabVIEW的集成開發(fā)環(huán)境、主要數(shù)據(jù)類型、基本程序設計方法及典型設計模式。
第2章為myRIO嵌入式應用開發(fā)基礎,全方位展示myRIO開發(fā)平臺基本特點、軟件配置方法、不同連接方式下的項目創(chuàng)建、功能測試及板載硬盤數(shù)據(jù)存儲和程序獨立部署運行等實用技術。
第3章為myRIO模擬信號采集與輸出,介紹了myRIO中模擬I/O端口的引腳分布,模擬I/O操作函數(shù)節(jié)點及其使用流程,模擬信號采集及模擬信號輸出相關應用的電路連接、程序實現(xiàn)。
第4章為myRIO數(shù)字信號采集與輸出,介紹了myRIO中數(shù)字I/O端口的引腳分布,數(shù)字I/O操作函數(shù)節(jié)點及其使用流程,數(shù)字信號采集及數(shù)字信號輸出相關應用的電路連接、程序實現(xiàn)。
第5章為myRIO系統(tǒng)級通信技術應用,介紹了myRIO中UART通信端口的引腳分布、UART通信相關函數(shù)節(jié)點及其使用流程,myRIO內置WiFi模塊的配置和使用方法,WiFi通信相關函數(shù)節(jié)點及其使用流程,并結合實用案例介紹了相關通信程序設計方法。
第6章為myRIO器件級通信技術應用。介紹了SPI、I2C通信基本概念,myRIO中SPI、I2C通信端口的引腳分布情況,SPI、I2C通信相關函數(shù)節(jié)點及其使用流程,并結合實用案例分別介紹了SPI、I2C通信相關應用的電路連接,以及數(shù)據(jù)收發(fā)程序的實現(xiàn)方法。
第7章為myRIO聲音信號采集與輸出,介紹了聲音信號采集基本原理,myRIO中的聲音信號輸入/輸出端口分布情況,聲音采集與聲音輸出相關函數(shù)節(jié)點及其使用流程,并結合實用案例介紹了聲音信號采集與聲音信號輸出的程序實現(xiàn)方法。
第8章為myRIO圖像采集與機器視覺,介紹了圖像采集原理與機器視覺的基本概念,圖像采集與機器視覺相關函數(shù)節(jié)點,并結合實例介紹了圖像采集相關應用程序設計方法、幾類典型機器視覺應用的程序設計方法。
本書由楊帆、張彩麗、劉晉東、李寧共同編寫。張彩麗編寫第1章和第2章,劉晉東編寫第3章和第4章,楊帆編寫第5章、第7章和第8章,李寧編寫第6章,全書由楊帆統(tǒng)稿。在本書的編寫過程中,學生王志強、馬佳、汪湘濤、謝林睿等參與了部分資料收集整理和程序驗證,并對全文進行初步校對。曾益慧創(chuàng)公司汪天陽、趙旭棟工程師在本書的編寫過程中針對部分技術給予了耐心指導,在此一并表示誠摯的感謝!此外,本書得到了2019年產教合作協(xié)同育人項目(編號: 201901198034、201901107061)和陜西省科技廳社會發(fā)展項目(編號: 2016SF418)支持。
為了便于讀者使用,本書提供全部范例的程序代碼及關鍵技術的微視頻,需要的讀者可在清華大學出版社官網本書頁面下載相關資源。本書內容涉及技術面較為寬廣,由于作者學識所限,書中難免出現(xiàn)疏忽之處,懇請讀者批評指正。
作者
2023年7月于西安
第1章LabVIEW程序設計快速入門
1.1LabVIEW開發(fā)平臺簡介
1.1.1圖形化編程與LabVIEW
1.1.2LabVIEW 2018開發(fā)環(huán)境
1.1.3LabVIEW程序設計初步
1.1.4LabVIEW程序運行與調試
1.2LabVIEW中的數(shù)據(jù)類型
1.2.1數(shù)值類型
1.2.2布爾類型
1.2.3枚舉類型
1.2.4字符串類型
1.2.5數(shù)組
1.2.6簇數(shù)據(jù)
1.2.7波形數(shù)據(jù)
1.3LabVIEW程序設計基礎
1.3.1循環(huán)結構
1.3.2定時循環(huán)
1.3.3條件結構
1.3.4順序結構
1.3.5事件結構
1.3.6子VI設計
1.3.7局部變量與全局變量
1.3.8屬性節(jié)點與功能節(jié)點
1.4LabVIEW應用程序典型設計模式
1.4.1輪詢設計模式
1.4.2事件響應設計模式
1.4.3狀態(tài)機設計模式
1.4.4主從式設計模式
1.4.5生產者/消費者設計模式
第2章myRIO嵌入式應用開發(fā)基礎
2.1myRIO介紹
2.1.1初識myRIO
2.1.2myRIO特點
2.1.3型號與規(guī)格
2.2開發(fā)前的準備工作
2.2.1檢查操作系統(tǒng)
2.2.2安裝文件的鏡像裝載
2.2.3安裝myRIO開發(fā)軟件及工具包
2.3myRIO軟件配置
2.3.1USB線纜連接myRIO
2.3.2NI MAX配置myRIO軟件
2.4myRIO不同連接方式下的項目創(chuàng)建
2.4.1USB連接
2.4.2WiFi連接
2.4.3無設備連接
2.4.4指定IP連接
2.5myRIO使用前功能測試
2.5.1安裝向導提供的測試面板
2.5.2NI MAX測試myRIO
2.6myRIO開發(fā)實用技術
2.6.1板載硬盤/U盤文件的讀寫技術
2.6.2項目中子程序的管理和調用技術
2.6.3應用程序的獨立部署和運行技術
第3章myRIO模擬信號采集與輸出
3.1模擬信號采集技術及應用
3.1.1模擬信號采集概述
3.1.2主要函數(shù)節(jié)點
3.1.3模擬信號采集技術應用實例
3.2模擬信號輸出技術及應用
3.2.1模擬信號輸出技術概述
3.2.2主要函數(shù)節(jié)點
3.2.3模擬信號輸出技術應用實例
第4章myRIO數(shù)字信號采集與輸出
4.1數(shù)字信號采集技術及應用
4.1.1數(shù)字信號采集技術概述
4.1.2主要函數(shù)節(jié)點
4.1.3數(shù)字信號采集技術應用實例
4.2數(shù)字信號輸出技術及應用
4.2.1數(shù)字信號輸出技術概述
4.2.2主要函數(shù)節(jié)點
4.2.3數(shù)字信號輸出技術應用實例
第5章myRIO系統(tǒng)級通信技術應用
5.1UART通信技術及應用
5.1.1UART通信技術概述
5.1.2主要函數(shù)節(jié)點
5.1.3UART通信技術應用實例
5.2WiFi通信技術及應用
5.2.1WiFi通信技術概述
5.2.2主要函數(shù)節(jié)點
5.2.3基于WiFi的局域網通信應用實例
5.2.4基于WiFi的物聯(lián)網通信應用實例
第6章myRIO器件級通信技術應用
6.1SPI通信技術及應用
6.1.1SPI通信技術概述
6.1.2主要函數(shù)節(jié)點
6.1.3SPI通信技術應用實例
6.2I2C通信技術及應用
6.2.1I2C通信技術概述
6.2.2主要函數(shù)節(jié)點
6.2.3I2C通信技術應用實例
第7章myRIO聲音信號采集與輸出
7.1聲音信號采集技術及應用
7.1.1聲音信號采集技術概述
7.1.2聲音信號采集函數(shù)節(jié)點
7.1.3聲音信號采集技術應用實例
7.2聲音信號輸出技術及應用
7.2.1聲音信號輸出技術概述
7.2.2聲音信號輸出函數(shù)節(jié)點
7.2.3聲音信號輸出技術應用實例
第8章myRIO圖像采集與機器視覺
8.1圖像采集技術及應用
8.1.1圖像采集技術概述
8.1.2圖像采集函數(shù)節(jié)點
8.1.3圖像采集技術應用實例
8.2機器視覺技術及應用
8.2.1機器視覺技術概述
8.2.2機器視覺函數(shù)節(jié)點
8.2.3機器視覺技術應用實例