機器人系統設計與製作 : Python 語言實現

機器人系統設計與製作 : Python 語言實現

作者: 郎坦·約瑟夫 (Lentin Joseph)
出版社: 機械工業
出版在: 2017-03-24
ISBN-13: 9787111559603
ISBN-10: 7111559606
裝訂格式: 平裝
總頁數: 223 頁




內容描述


本書是一本關於機器人學的書籍,從機器人的基本結構開始,逐步講解了有關機器人的硬件及軟件結構。機器人的硬件部分主要包括了基本機械結構以及完成機器人定位和自主導航所需的各種傳感器;機器人的軟件部分是基於Python語言在ROS中進行編寫的程序,目的是完成機器人的指定功能。而後通過硬件和軟件的結合完成了機器人在指定地圖內按照用戶命令進行移動的功能,並且有一個GUI強化了人機界面的交互功能。


目錄大綱


前言
第1章機器人學概述1 
1.1什麼是機器人2 
1.1.1術語機器人的來歷2 
1.1.2現代機器人定義3 
1.2機器人從哪兒來7 
1.3機器人上都有什麼9 
1.3.1肢體10 
1.3.2傳感器10 
1.3.3執行器11 
1.3.4控制器11 
1.4如何製作機器人12 
1.4.1反應式控制12 
1.4.2分級(協商)控制12 
1.4.3混合控制12 
1.5本章小結13 

第2章服務機器人的機械設計14 
2.1服務機器人的設計需求14 
2.2機器人的傳動裝置15 
2.2.1選擇電機和輪子15 
2.2.2設計小結16 
2.2.3機器人底盤設計17 
2.3安裝LibreCAD、Blender和MeshLab 18 
2.3.1安裝LibreCAD 18 
2.3.2安裝Blender 18 
2.3.3安裝MeshLab 18 
2.4用LibreCAD生成機器人的二維CAD圖19 
2.4.1底座設計20 
2.4.2底座連接桿設計21 
2.4.3輪子、電機和電機夾具設計22 
2.4.4腳輪設計24 
2.4.5中間層設計24 
2.4.6頂層設計24 
2.5用Blender製作機器人的三維模型25 
2.5.1 Blender中的Python腳本語言25 
2.5.2 Blender中的Python API介紹26 
2.5.3機器人建模中的Python腳本28 
2.6習題33 
2.7本章小結33 

第3章用ROS和Gazebo進行機器人仿真34 
3.1什麼是機器人仿真34 
3.1.1機器人數學建模37 
3.1.2 ROS和Gazebo簡介43 
3.1.3在Ubuntu 14.04.2下安裝ROS Indigo 46 
3.1.4在酒店環境下進行ChefBot和TurtleBot仿真70 
3.2習題75 
3.3本章小結75 

第4章設計ChefBot的硬件部分76 
4.1 ChefBot硬件的規格標準76 
4.2機器人的硬件架構框圖77 
4.2.1電機和編碼器77 
4.2.2電機驅動器79 
4.2.3嵌入式控制板81 
4.2.4超聲傳感器82 
4.2.5慣性測量單元83 
4.2.6 Kinect 83 
4.2.7中央處理單元84 
4.2.8揚聲器/麥克風85 
4.2.9電源/電池85 
4.3 ChefBot硬件的工作原理86 
4.4習題87 
4.5本章小結88 

第5章機器人執行機構與車輪編碼器89 
5.1直流減速電機接入Tiva C開發板89 
5.1.1差速傳動輪式機器人92 
5.1.2安裝Energia集成開發環境92 
5.1.3電機接口代碼94 
5.2正交編碼器接入Tiva C開發板98 
5.2.1 碼器數據的處理99 
5.2.2正交編碼器接口代碼101 
5.3 Dynamixel執行機構104 
5.4習題107 
5.5本章小結107 

第6章機器人傳感器108 
6.1超聲測距傳感器108 
6.2紅外接近傳感器113 
6.3慣性測量單元115 
6.3.1慣性導航116 
6.3.2 MPU 6050接入Tiva C開發板117 
6.3.3在Energia中編寫接口代碼119 
6.4利用Energia將支持DMP的MPU 6050接入開發板121 
6.5習題125 
6.6本章小結125 

第7章視覺傳感器在Python和ROS中的編程方法126 
7.1機器人視覺傳感器清單和圖像處理庫126 
7.2 OpenCV、OpenNI和PCL簡介129 
7.2.1什麼是OpenCV 129 
7.2.2什麼是OpenNI 132 
7.2.3什麼是PCL 133 
7.3使用ROS、OpenCV和OpenNI進行Kinect的Python編程134 
7.3.1啟動OpenNI驅動的方法134 
7.3.2 OpenCV的ROS接口134 
7.4使用Kinect、ROS、OpenNI和PCL處理點雲139 
7.5將點雲轉換為激光雷達數據140 
7.6使用ROS和Kinect實現SLAM算法141 
7.7習題142 
7.8本章小結142 

第8章使用Python和ROS實現語音識別 合成143 
8.1語音識別技術143 
8.1.1語音識別系統框圖144 
8.1.2語音識別庫145 
8.1.3 Windows語音識別開發平台145 
8.1.4語音合成145 
8.1.5語音合成庫146 
8.2在Ubuntu 14.04.2中使用Python實現語音識別及合成146 
8.2.1在Ubuntu 14.04.2中安裝Pocket Sphinx及其Python綁定147 
8.2.2在Ubuntu 14.04.2中使用Pocket Sphinx的Python綁定147 
8.2.3輸出結果148 
8.3在Ubuntu 14.04.2中使用Pocket Sphinx、GStreamer及Python實現實時語音識別149 
8.4在Ubuntu 14.04.2中使用Julius及Python實現語音識別151 
8.4.1 Julius語音識別器和Python模塊的安裝152 
8.4.2 Python-Julius客戶端代碼153 
8.4.3在Pocket Sphinx、Julius中提高語音識別的準確度154 
8.4.4在Ubuntu 14.04.2中安裝eSpeak和Festival 154 
8.5在Windows中使用Python實現語音識別及合成155 
8.6在ROS Indigo中使用Python實現語音識別156 
8.7在ROS Indigo中使用Python實現語音合成157 
8.8習題159 
8.9本章小結159 

第9章使用Python ChefBot中應用人工智能160 
9.1 ChefBot中的交互系統框圖160 
9.2 AIML介紹161 
9.3 PyAIML介紹164 
9.3.1在Ubuntu 14.04.2上安裝PyAIML 165 
9.3.2從源碼中安裝PyAIML 165 
9.4使用AIML和Python進行開發165 
9.5使用ALICE AIML文件進行開發167 
9.5.1將AIML文件載入內存168 
9.5.2載入AIML文件並將其存為brain文件169 
9.5.3使用Bootsrtap方法載入AIML文件和brain文件169 
9.6將PyAI




相關書籍

無線射頻辨識 (RFID) 原理與應用

作者 鐘國家 施松村 余兆棠

2017-03-24

決戰!拿鐵熊貓V.S.物聯網超入門

作者 CAVEDU教育團隊 曾吉弘 徐豐智 李俊德 袁佑緣

2017-03-24

Arduino + Visual Basic 6.0: Make your own software to control Arduino Robot

作者 Mr Ujash G Patel

2017-03-24