2010 coscup be_android

2,454 views

Published on

Be Android
- Robocat: A Robot Control System -

Published in: Technology
2 Comments
5 Likes
Statistics
Notes
No Downloads
Views
Total views
2,454
On SlideShare
0
From Embeds
0
Number of Embeds
16
Actions
Shares
0
Downloads
90
Comments
2
Likes
5
Embeds 0
No embeds

No notes for slide

2010 coscup be_android

  1. 1. Connect your device to application
  2. 2. Be “Android” Robocat: robot control system Tick Chen & Matt Hsu <tick@0xlab.org> <matt@0xlab.org>
  3. 3. Agenda Motivation Robocat Architecture HW HAL JNI Case Study Demo
  4. 4. 每個宅男的夢想
  5. 5. Robocat
  6. 6. Robocat Google Android / GNU Linux 下的機器人控制系統 整合於 0xdroid 可同時控制多組伺服馬達 無痛開發反饋機器人系統 可支援多種伺服馬達
  7. 7. Architecture
  8. 8. Hardware Platform Bluetooth dongle USB OMAP3530 Beagleboard I2C I2C BB Mouse -I2C Level Translator 1V8 ↔ 5V SS-14+ Servo
  9. 9. Libcatcan, User mode I2C driver Libcatcan is an user space driver for device catcan ss14+ Catcan SS14+ I2C interface Power: 6v2~7v5 Dynamic PID setting Plug and play Group call Asynchonous Synchonous
  10. 10. Libcatcan (cont) No kernel driver needed, libcatcan-360 libcatcan but enabling I2C bus 2 is requisite Easy and convenient to i2c-dev integrate with application Features: i2c-core Seek/get position Group action I2C I2C host I2C host Change I2C address slave controller controller I2C Bus
  11. 11. Librobocat Abstract robot control system Position aware Sync and Async control Grouping cats
  12. 12. Robocat (cont)
  13. 13. librobocat-jni Very thin layer glues librobocat and Robocat Java API
  14. 14. Robocat Java API Java library controls the librobocat Work flawlessly with Android API
  15. 15. Case Study – 0xSpider –
  16. 16. Spider Architecture
  17. 17. 0xspiderClient: UI
  18. 18. JSON (JavaScript Object Notation) User Interface We need a simple protocol for remote Command Manager controlling Robjson extends JSONObject { enum ReqType{ STANDBY, Lightweight data interahcnage: FORWARD, BACKWARD, RIGHT, LEFT, TICKLE, serialize/de-serialize UNDIFINED} → {“CMD”: “STANDBY”} } → {“CMD”: “STANDBY”} Natively support in Rfcomm Android Bluetooth Easy to have extension 0xSpiderClient
  19. 19. Synaptic
  20. 20. Inverse Kinematics Cosine Law
  21. 21. Degree Calibration
  22. 22. Command Flow
  23. 23. DEMO
  24. 24. Reference Robocat Project: http://code.google.com/p/0xrobocat/ Robocat Source: http://gitorious.org/robocat/robocat 0xdroid: http://code.google.com/p/0xdroid/ Board: http://beagleboard.org/ Servo BBMouse: http://www.catcan.com.tw/ Inverse Kinematics: http://freespace.virgin.net/hugo.elias/models/m_ik.htm Bluetooth Module: http://www.azurewave.com/ Camera Module: http://www.azurewave.com/
  25. 25. Sponsored by http://0xlab.org 15 Aug 2010 Conference

×