把玩~Otto DIY+ Arduino NANO Robot

開場白:在我寫此篇記錄前,搜尋了許多有關 Otto 的網文來研究,多半不是完整的(至少要含 SG90會動、HC-SR04會感應、Buzzer會叫、MAX7219會秀表情...),好不容易try到一個不錯的、可以執行的範例( OttoDIY/PLUS -- https://github.com/OttoDIY/PLUS ),卻於隔天發現對方已刪除程式...驚嚇之餘留下此篇~~~


動機:一直以來想要把玩小型、便宜、開源的機器人,終於讓我找到了~Otto Robot 跳舞機器人,以下是我的歷程...

準備環境:( 參攷 ~ https://www.hackster.io/ottoplus/otto-diy-arduino-bluetooth-robot-easy-to-3dprint-33406c 所列項目 )
1.Arduino Nano R3
2.4 x AA Battery Holder
3.HC-06 Bluetooth module
4.HC-SR04 Ultrasonic module
5.Dot matrix display MAX7219
6.Arduino NANO Shield I/O
7.USB-A to Mini-USB Cable
8.4 x Micro servo SG90
9.Buzzer
10.8x8mm Micro Switch Self lock On/Off
11.10 x Female/Female Jumper Wires

步驟
區分二種:透過藍牙及APP測試、無藍牙測試。

首先說明的是:使用 HC-06 bluetooth 模組 ( 若要設定可透過 Arduino IDE,請參攷 HC-05與HC-06藍牙模組補充說明(三):使用Arduino設定AT命令,https://swf.com.tw/?p=712 ) 及 Zowi APP 遙控 可參攷 阿玉老師的網頁 ( https://sites.google.com/site/wenyumaker/18-otto/04-zowi-app-kong-zhi 、 https://sites.google.com/site/wenyumaker/18-otto/05-zowi-app-zhi-kong ) 執行操作...(記得要將HC06的RX及TX的線先拔掉,否則會影響Arduino上傳程式時,燒寫不進去!!)

其次,是沒有使用 HC-06 bluetooth 模組 及 Zowi APP 來操作測試...

1.下載示範程式碼 ( http://163.23.66.90/~wp/maker/2017/07/03/otto-robot/#  此程式碼在原github--OttoDIY/PLUS已消失),並解壓縮其中的 \PLUS-master\Matrix codes\ZOWI_BASE_v2_MATRIX 目錄--程式碼 ZOWI_BASE_v2_MATRIX.ino ),可以 Arduino IDE開啟...

2.對於 Arduino NANO Shield I/O 的接腳位置,可查看 ZOWI_BASE_v2_MATRIX.ino ... 列出如下:
a.pin 2: servo0 -- YL
b.pin 3: servo1 -- YR
c.pin 4: servo2 -- RL
d.pin 5: servo3 -- RR
e.pin 10: max7219 -- CS
f.pin 11: max7219 -- CLK
g.pin 12: max7219 -- DIN
h.pin 13: buzzer

在此插播一則怪異事實,我發現在 Otto 的說明書 ( https://github.com/OttoDIY/PLUS/blob/master/OTTO%2B_InstructionsManual_V01_arduino.pdf ) 中有繪出 HC-SR04 的腳位,但與實際的感測器不符,如下圖(Trig, Echo不一致,請注意別接錯!!)



3.上述程式碼有五種測試模式(第 87 行),如下:
a.MODE = 0: Zowi is awaiting  (預設值)
b.MODE = 1: Dancing mode!
c.MODE = 2: Obstacle detector mode
d.MODE = 3: Noise detector mode
e.MODE = 4: ZowiPAD or any Teleoperation mode (listening SerialPort)

說明如后:
MODE = 0(預設值), 每80秒進入休眠模式...
MODE = 1, 跳舞模式
MODE = 2, 跳舞兼避障模式
MODE = 3, 聲音偵測模式,但沒裝 聲音感測 故沒作用
MODE = 4, 可透過 Arduino IDE 的 Serial Monitor 來輸入文字控制指令(請詳見第 130~143 行)
有關其指令說明,請參見阿玉老師的網頁 ( https://sites.google.com/site/wenyumaker/18-otto/03-guan-wang-cheng-shi )...
其中... SLTMHKCG...我有試過,其餘的就輸入後沒有反應!!


心得:Otto是Open Source且可塑性佳,十分適合DIY及trial and error...


感謝
1.Otto DIY, https://github.com/OttoDIY/PLUS
2.阿玉老師, maker研究區-18-otto機器人, https://sites.google.com/site/wenyumaker/18-otto
3.彰化縣自造教育示範中心 , 機電整合主題課程:Otto 機器人, http://163.23.66.90/~wp/maker/2017/07/03/otto-robot/

留言