OpenROV: Node.js takes a dive into the ocean

4,586 views

Published on

OpenROV is a OpenSource underwater vehicle, remotely operated from a standard browser via a Node.js application running on an embedded linux board (the BeagleBone) and connected to a webcam and an Arduino.
In this presentation I tell you some insights on how the ROV is put together, mainly focusing on the software component.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
4,586
On SlideShare
0
From Embeds
0
Number of Embeds
38
Actions
Shares
0
Downloads
24
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

OpenROV: Node.js takes a dive into the ocean

  1. 1. OPENROVNODE.JS TAKES A DIVE INTO THE OCEAN Simone Chiaretta / @simonech
  2. 2. WHAT IS OPENROV OpenROV is an open source robotic submarinedesigned to make underwater exploration possible for everyone. By Eric Stackpole and David Lang .
  3. 3. HOW DOES IT LOOK LIKE
  4. 4. HOW DOES IT LOOK LIKE
  5. 5. THE GOALInvented to discover a hidden treasure in an underwater cave. But also to: Make underwater exploration accessible to everyone Very low cost Extensible
  6. 6. HIGH LEVEL VIEW
  7. 7. BROWSERPure HTML/JS with Knockout.js
  8. 8. BEAGLEBONE Node.js with: Express Socket.io SerialPort mjpg_streamer
  9. 9. ARDUINOControls Motors, Servos, Leds
  10. 10. OPENROV: HOW TOJust plug the ethernet cable, and browse to: http://192.168.254.1:8080
  11. 11. NODE.JS ON THE BEAGLEBONEIf you use the default Angstrom distro, it just works. DEMO
  12. 12. BONESCRIPTArduino-like library to simplify physical computing on the BeagleBone Get the lib at https://github.com/jadonk/bonescript
  13. 13. HELLO WORLDrqieoecit) eur(bnsrp;stp=fnto ( { eu ucin ) pnoebn.S3 OTU) iMd(oeUR, UPT;}lo =fnto ( { op ucin ) dgtlrt(oeUR,HG) iiaWiebn.S3 IH; dly10; ea(0) dgtlrt(oeUR,LW; iiaWiebn.S3 O) dly10; ea(0)}
  14. 14. SHOW ME THE CODE DEMO
  15. 15. CLIENTShows cameraReceives input from users (keyboard or joypad)Displays value from sensors
  16. 16. NODE.JSSpawns a new process for the camera captureCommunicates over socket.io with the browserHandles unpackaging/compilation/upload to the bSends commands to Arduino
  17. 17. ARDUINODrive the motorsTilts the servoLights the LEDsGathers values from sensors
  18. 18. FAKESEliminate dependencies on HW when testing or when on Azure.
  19. 19. THE FUTUREComplete v1 featuresRefactor codeHandle automatic update of codeAllow extensibility, both HW and SW
  20. 20. MORE INFOhttp://openrov.com - OpenROV community Sitehttps://github.com/OpenROV - Get the codeTwitter: @openrovhttp://dronesandrovs.wordpress.com - My BuildBlog
  21. 21. THANKSBY SIMONE CHIARETTA

×