- Processing開發(fā)實(shí)戰(zhàn)
- 黃文愷 吳羽 伍馮潔
- 1245字
- 2019-01-03 10:41:27
前言
機(jī)器人技術(shù)是跨學(xué)科的綜合性技術(shù),涉及的學(xué)科比較廣泛,包含光學(xué)、機(jī)電一體化、電子信息、通信技術(shù)和計(jì)算機(jī)編程等專業(yè)。在機(jī)器人教學(xué)實(shí)踐當(dāng)中,很難把所有的學(xué)科知識(shí)都介紹給學(xué)生,全部精通更不現(xiàn)實(shí)。在搜尋手勢控制機(jī)器人動(dòng)作資料的過程中,筆者發(fā)現(xiàn)Kinect可以很方便地在Processing中使用,不像在其他開發(fā)平臺(tái)上那么復(fù)雜。其他專業(yè)的軟件開發(fā)平臺(tái),單單配置環(huán)境就要耗費(fèi)大量時(shí)間。有相當(dāng)一部分機(jī)器人愛好者是非計(jì)算機(jī)專業(yè)的人員,對于他們來說,專業(yè)軟件開發(fā)平臺(tái)的編程技術(shù)會(huì)成為其學(xué)習(xí)的障礙,從而導(dǎo)致他們放棄深入探究的計(jì)劃。
Processing是一門具有革命性和前瞻性的新興計(jì)算機(jī)語言,它致力于在電子藝術(shù)的環(huán)境下介紹程序語言,并將電子藝術(shù)的概念介紹給程序員。Processing簡單易學(xué)的界面和編程風(fēng)格,使很多機(jī)器人愛好者或電子制作愛好者完成機(jī)器人的控制,或?qū)崿F(xiàn)可控的電子產(chǎn)品,例如控制智能家居等。筆者在學(xué)習(xí)的過程中,對Processing深深著迷,通過動(dòng)手實(shí)踐,并將Arduino與之結(jié)合,設(shè)計(jì)了很多有趣的產(chǎn)品。本書是入門書籍,重點(diǎn)引導(dǎo)讀者學(xué)習(xí)Processing的基礎(chǔ)知識(shí)。除了入門基礎(chǔ)知識(shí),本書也會(huì)介紹Processing如何與Arduino進(jìn)行通信,以及如何使用Kinect或Xtion等進(jìn)階內(nèi)容。更多與Arduino互動(dòng)的例子,以及使用各種傳感器開發(fā)的小游戲都收錄在筆者的另一本書《Processing與Arduino互動(dòng)編程》中。
本書的主要內(nèi)容及讀者對象
本書適合零基礎(chǔ)的人學(xué)習(xí),沒有學(xué)過C語言的讀者可以從第一篇入門基礎(chǔ)篇開始學(xué)習(xí),該篇從基本的語法開始(為了能更好地向讀者展示程序運(yùn)行效果,該篇的部分實(shí)例會(huì)用到后面章節(jié)中的函數(shù),讀者可以暫不理會(huì),先學(xué)習(xí)基礎(chǔ)知識(shí),等學(xué)習(xí)到后面章節(jié)時(shí)再深入理解),再到繪圖的數(shù)學(xué)基礎(chǔ),循序漸進(jìn)地進(jìn)行介紹。第一篇的最后部分會(huì)介紹面向?qū)ο蟮闹R(shí),主要概述類和對象,這是比較抽象的內(nèi)容,如果初學(xué)者感到難以理解可以跳過,不影響其他部分的學(xué)習(xí)。但該部分有利于讀者建立面向?qū)ο蟮乃枷耄ㄗh讀者翻閱更多的資料,掌握類和對象的相關(guān)知識(shí)。第二篇是圖像圖形篇,有一定編程基礎(chǔ)的讀者可以直接閱讀該篇。它是本書中最具魅力的篇章,學(xué)習(xí)這些章節(jié)有利于讀者創(chuàng)造各種各樣令人驚艷的圖案,或定制自己的軟件界面。該篇的結(jié)尾是綜合實(shí)例,讀者可以借助這些實(shí)例綜合運(yùn)用前述的知識(shí),繪制各種動(dòng)畫或展現(xiàn)出獨(dú)特的藝術(shù)視覺效果。第三篇是互動(dòng)篇,該篇有鼠標(biāo)、鍵盤的互動(dòng)以及串口通信,通過實(shí)例展示Processing與Arduino的互動(dòng),包括傳感器讀取和搖桿的控制程序,讓讀者掌握兩者的交互方式。第四篇是高級(jí)應(yīng)用篇,主要展示如何用Kinect或Xtion進(jìn)行互動(dòng)編程,讀者可以在此基礎(chǔ)上自行擴(kuò)展,如采用Kinect或華碩的Xtion控制機(jī)器人,甚至控制無人飛機(jī)等。
致謝
首先要感謝劉嘉杰、黃海鋒、羅雯鈺、肖昌偉、張雯雯、陳思強(qiáng)、潘強(qiáng),他們犧牲了節(jié)假日時(shí)間,幫助我整理書稿,并對每一個(gè)程序進(jìn)行驗(yàn)證。在此要感謝你們付出的努力。
其次要感謝“廣州市教育局青少年科技教育計(jì)劃”對本書的撰寫、器材的購置提供的資助。
最后要感謝讀者朋友們,感謝您花費(fèi)時(shí)間和精力閱讀本書。由于時(shí)間有限,書中難免存在疏漏與錯(cuò)誤,敬請批評指正。希望有更多志同道合的朋友加入到機(jī)器人的制作與開發(fā)中來!
黃文愷
2015年8月于廣州大學(xué)
- Visual C++串口通信開發(fā)入門與編程實(shí)踐
- Interactive Data Visualization with Python
- Vue.js 3.x從入門到精通(視頻教學(xué)版)
- Effective Python Penetration Testing
- Visual FoxPro程序設(shè)計(jì)
- 微服務(wù)架構(gòu)深度解析:原理、實(shí)踐與進(jìn)階
- Mastering C++ Multithreading
- Django實(shí)戰(zhàn):Python Web典型模塊與項(xiàng)目開發(fā)
- 愛上C語言:C KISS
- Clojure High Performance Programming(Second Edition)
- HTML5游戲開發(fā)實(shí)戰(zhàn)
- 例說FPGA:可直接用于工程項(xiàng)目的第一手經(jīng)驗(yàn)
- Docker on Windows
- 區(qū)塊鏈原理、架構(gòu)與應(yīng)用(第2版)
- Go語言Hyperledger區(qū)塊鏈開發(fā)實(shí)戰(zhàn)