Cozmo+Python+ROS+AI會產生什麼樣的奇妙反應呢? (玩Cozmo機器人,學Python程式設計,掌握ROS和AI技術)
Cozmo+Python+ROS+AI會產生什麼樣的奇妙反應呢?
(玩Cozmo機器人,學Python程式設計,掌握ROS和AI技術)
跟隨綠色鐳射點運動?如何實現?
在黃色邊緣線的賽道上行駛?如何實現?
這是一篇輕鬆愉快的博文,簡單聊聊如何從玩機器人,升級為開發和設計機器人的工程師。
關鍵詞::涉及Anki Cozmo機器人/Python程式設計/ROS機器人作業系統/AI人工智慧(TensorFlow)::
本文內容已經完成課程測試,將全部公開。
全部課程開發已經歷經3年,不斷改進與優化,並會持續更新哦(2016-2020)。
課程大綱連結:---- https://blog.csdn.net/ZhangRelay/article/details/83544323 ----
更多相關內容可檢視個人其他博文,歡迎批評,請多指教,下面進入正文::
1 呆萌逗趣的Cozmo
此部分具體教程側重熟悉和通過平板使用Cozmo
這是一款2017年上市的人工智慧玩具機器人,2018年新款換了酷炫一身黑改名為Vector,功能升級,外觀完全一致,如下圖:
有android和ios的APP,也有Windows/Linux/MacOS的開發SDK,並支援ROS indigo/kinetic/melodic,功能十分強大!
|
Anki公司是由卡內基梅隆機器人研究所(Carnegie Mellon Robotics InsTItute)的三名畢業生於2010年創辦的,現已獲得了超過2億美元的風險投資。Anki目前已經售出了150萬臺機器人,並且找到了他們認為是最容易打入家庭市場的道路——玩具(智慧機器人系列)。這個明星產品是一個狂躁的小推土機機器人,名為Cozmo,它可以在桌面上行走,玩簡單的遊戲,它的頂部裝有會亮的立方體。根據一項分析,如果按照收入計算的話,Cozmo是2017年美國、英國和法國的亞馬遜網站上最暢銷的玩具。 Vector是一個略大型的黑色版Cozmo,Cozmo的售價為180美元,Vector定價可能在250美元,並在2018年10月發貨(現在Anki 以200美元的折扣價在Kickstarter上推出了該款機器人。)Vector先進的一點是提升了Cozmo難以做到的自主化程度。對於Cozmo來說,盒子裡藏著一個連線Wi-Fi的智慧手機,裡面執行著一個控制機器人的應用程式。 |
各種軟體和開發工具可以到官網對應處下載,也可以下載打包好的完整版:
https://download.csdn.net/download/zhangrelay/10765987
2 簡單易學的Python程式設計
此部分具體教程側重Linux環境配置和Python程式設計基礎!
需要正確安裝SDK才能使用此功能。確保手機或平板正確連線。
安卓手機:(adb)
蘋果手機:(usbmuxd)
平板:(usbmuxd)
經過測試支援Ubuntu 14.04/16.04/18.04。詳細安裝內容參考(使用SDK):http://cozmosdk.anki.com/docs/
稍後也會在部落格中補充並詳細講解。如果上述步驟一切順利,就可以在電腦端執行Python程式碼控制Cozmo啦!!!
向機器人世界問好 Hello Robotics!
'''Hello World
Make Cozmo say 'Hello World' in this simple Cozmo SDK example program.
'''
import cozmo
def cozmo_program(robot: cozmo.robot.Robot):
robot.say_text("Hi Robotics").wait_for_completed()
cozmo.run_program(cozmo_program)
前進和轉向 drive turn
'''Drive And Turn
Make Cozmo drive forwards and then turn 90 degrees to the left.
'''
import cozmo
from cozmo.util import degrees, distance_mm, speed_mmps
def cozmo_program(robot: cozmo.robot.Robot):
# Drive forwards for 150 millimeters at 50 millimeters-per-second.
robot.drive_straight(distance_mm(150), speed_mmps(50)).wait_for_completed()
# Turn 90 degrees to the left.
# Note: To turn to the right, just use a negative number.
robot.turn_in_place(degrees(90)).wait_for_completed()
cozmo.run_program(cozmo_program)
3 利用ROS,玩具秒變教具
此部分具體教程側重使用ROS進行機器人控制
rviz::(Ubuntu 18.04 + ROS Melodic)
教程包括訊息機制/TF2座標變換/除錯工具使用等,可見攝像頭中3個方塊(左下角),分別對應cube1,cube0,cube2,機器人自身座標和方塊都識別準確。我們換一個視角來看看!
方塊改為三角形排列,rviz如下:
人類視角到機器人視角的完美變換!!!
4 讓Cozmo更智慧tensorflow
此部分具體教程側重人工智慧AI
具體參考:github(cozmo-tensorflow)::https://github.com/whatrocks/cozmo-tensorflow
-----補充資料----
Cozmo的功能是非常豐富的。
1. 支援Scartch這個和手機APP功能重複了(Blockly)。
https://github.com/maxosprojects/cozmo-blockly
2. 語音控制:
https://github.com/rizal72/Cozmo-Voice-Commands
3. Cozmo瀏覽工具:
https://github.com/GrinningHermit/Cozmo-Explorer-Tool
4. 完全版教程
歡迎來到Cozmopedia維基!
Cozmopedia是卡內基梅隆大學David S. Touretzky教授的一個課程專案。
Cozmopedia與Anki沒有任何關聯或授權。Anki的官方Cozmo網站包括邂逅Cozmo,Cozmo SDK和Cozmo SDK論壇。
對於為初學者設計的Cozmo程式設計完全不同的方法,請在https://Calypso.software上嘗試Calypso。
教學資源
機器人技術的十大理念 ; 大學課程 ; K-12和Anki的大學論壇
Cozmo硬體和SDK概念
adb(Android Debug Bridge)、Fire tablet 、 攝像頭 、 充電器 、 顏色和燈光 、 輕巧立方體
cozmo-tools系列
在cozmo-tools GitHub庫中。
simple_cli工具 ; world_viewer工具 ; event_monitor工具 ; genfsm工具
粒子濾波(Particle filter)
有限狀態機
關鍵類:StateNode,Transition,Event, StateMachineProgram
OpenCV視覺
影象
語音控制
多機器人操作
其他資源
Cozmo程式設計框架(ROS,Scratch等)
數學基礎
-----
Fin
-----
相關文章
- 人工智慧基礎(高中版)教材補充和資源分享之番外篇 Cozmo+Python+ROS+AI人工智慧PythonROSAI
- 當國際貿易撞上AI,會產生怎樣的化學反應?AI
- Cozmo機器人使用中文Scratch3程式設計案例(codelab)機器人程式設計
- 什麼是反應式程式設計?程式設計
- 怎麼樣學好python技術當一名程式設計師Python程式設計師
- 兩個程式設計師談戀愛,究竟會是什麼樣的呢?程式設計師
- 機器人的藝術,是什麼樣子的?機器人
- ROS2GO之手機連線Cozmo人工智慧機器人玩具ROSGo人工智慧機器人
- 學Python的程式設計師,程式設計能力都“退化”成什麼樣了?Python程式設計師
- 機器學習指導催化劑設計,提高反應的產率機器學習
- Tello無人機版之使用Scratch2和ROS進行機器人圖形化程式設計學習無人機ROS機器人程式設計
- 那些學了 Python 的程式設計師,程式設計能力都“退化”成什麼樣了?Python程式設計師
- ROS2GO+Cozmo=口袋機器人之人工智慧模擬和實驗平臺ROSGo機器人人工智慧
- ROS 機器人技術 - 廣播與接收 TF 座標ROS機器人
- 小學生都開始學的Python程式設計到底是什麼?Python程式設計
- 機器人教育和程式設計教育一樣嗎 哪個更好學習點機器人程式設計
- ROS | ROS機器人開發案例(古月)學習ROS機器人
- 反對中國留學生學習AI和量子技術,美國要幹啥?AI
- 程式設計師的技術遺產程式設計師
- 洗衣液批發生產廠家的生產工藝和技術優勢是什麼?
- 學Python的方法是什麼 怎麼能學好Python程式設計Python程式設計
- 用數字孿生技術提高機器人教學效率機器人
- 程式設計師眼中瀏覽器什麼樣?程式設計師瀏覽器
- 學會使用Python的threading模組、掌握併發程式設計基礎Pythonthread程式設計
- 一個優秀的程式設計師應有的產品觀和技術觀程式設計師
- 為什麼很多大學生都會覺得程式設計很難?程式設計
- 量化合約交易策略機器人系統開發程式設計專案(Python技術版)機器人程式設計Python
- F2P模式的反饋迴路會對“付費贏”設計產生什麼影響?模式
- Butler Lampson:計算機技術需要什麼樣的公共政策?LAMP計算機
- Java加薪寶典——程式設計師年薪50W必需掌握怎樣的技術Java程式設計師
- ROS 和Web 帶來更智慧的機器人ROSWeb機器人
- Python技術前景怎麼樣?學Python好嗎?Python
- 精益生產和AI技術是如何相輔相成的?AI
- 程式設計師與產品之間應該如何配合,什麼時候技術為重,什麼時候產品為重?程式設計師
- AI技術之於製造業,除了提升生產效率還有什麼?AI
- 為什麼推薦使用Ubuntu 18.04 LTS學習機器人作業系統ROS 1和2Ubuntu機器人作業系統ROS
- 2019 年,容器技術生態會發生些什麼?
- 程式設計師有哪些常用的技術網站呢?程式設計師網站