rosprocessingjs.nxt.robotics.cs.brown.edu/test/slides/processingnxt.pdf · goals. •...

12
ROSProcessingjs NXT Evan S5tesClayton

Upload: others

Post on 08-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

ROSProcessingjs  NXT  

Evan  S5tes-­‐Clayton  

Page 2: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

Goals  

•  Make  programming  NXT  easier  •  Allow  for  coding  of  Lego  Mindstorms  NXT  brick  via  Processing  language  

•  Create  an  easy  environment  for  coding  and  display  of  an  output  program  

•  Make  it  as  easy  as  possible  to  recreate  this  setup  

Page 3: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

Tools  

•  Jihoon’s  processing  –  ros  js  plaKorm  •  Rosjs  (Websockets)  •  Ros  •  Processingjs  •  Nxt_ros  •  Nxt_python  •  Rospy  

Draw  on  board  how  they  fit  together  

Page 4: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

How  It  Works:  

Page 5: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

Processing  Examples  

•  WASD  Driver  – Simple  one  way  communica5on  

•  Enclosure  Escape  – Autonomous,  2way  communica5on  – buggy  

Page 6: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

What  it  takes:  Roscore  

Page 7: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

What  it  takes:  Rosjs    

Page 8: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

What  it  takes:  Special  Chrome  

Page 9: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

What  it  takes:  nxt_python  

User  doesn’t  need  to  modify  the  python  file,  but  needs  to  run  it  

Page 10: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

Goals  -­‐  Results  

•  Make  programming  NXT  easier  •  Allow  for  coding  of  Lego  Mindstorms  NXT  brick  via  Processing  language  

•  Create  an  easy  environment  for  coding  and  display  of  an  output  program  

•  Make  it  as  easy  as  possible  to  recreate  this  setup  

Page 11: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

Challenges  

•  Lots  of  moving  parts  •  Wired  connec5on  •  BaZery  Life  •  Difficult  to  debug  various  Systems  

Page 12: ROSProcessingjs.NXT.robotics.cs.brown.edu/test/slides/ProcessingNXT.pdf · Goals. • Make.programming.NXT.easier. • Allowforcodingof.Lego. Mindstorms.NXT. brick.viaProcessing.language

Possible  Improvements  for  Final  

•  Bluetooth  connec5ve  for  wireless  •  Install  instruc5ons  (Make  Wiki)  •  Roslaunch  file  for  command  line  simplifica5on  •  Combined  install  package  •  Nicer  user  interface  html