Recent Changes - Search:

edit SideBar

ProgrammingTheSwarmWorkshop2015Agenda

May 27-29, 2015, Berkeley.

Tentative Agenda. We expect the agenda to be very fluid, so this is just a guideline.

Important: Do the homework. In particular, install Ptolemy II. If you fail to do this, we will try to help starting at 8am Wednesday.

Notes from the Accessor Design Discussion are available.

Wednesday May 27:

8:00am* For those who didn't do the homework: Software installation workshop (Christopher)
* For those who did the homework: Breakfast.
9:00amIntroduction and organization (15 minutes)
9:15amAccessor Design (Edward Lee, 30 minutes)
9:45amCommon Exercise: Build an Audio Accessor, parts 1 and 2 (45 minutes)
10:30amBreak (15 minutes)
10:45amHosts and Modules (Edward Lee, 45 minutes)
11:30amCommon Exercise: Build an Audio Accessor, parts 3 and 4 (45 minutes)
12:15pmLunch and Project Setup
1:00pmProjects (2.5 hours)
3:30pmBreak
3:45pmProject report back (30 minutes)http fails silently (response == null)
4:15pm* AccessorJS host (Chris Shaver, 30 minutes)
* Michigan accessors (Brad Campbell, 30 minutes)
5:15pmPlanning for the next two days (15 minutes)
6:00pmDinner

Thursday May 28:

8:30amBreakfast
9:00amDARPA demo plans and strategy (Prabal Dutta, 15 minutes)
9:15amTutorial on ROS & API of Penn robots (Amanda Prorok, 1 hour)
10:15amBreak (15 minutes)
10:30amDemo of Robot tracking and Overview of PILOT (Ilge, 30 minutes)
11:00amOpen Mike
11:30amProject organization (30 minutes)
12:00amLunch
1:00pmProjects (2 hours)
3:00pmBreak
3:15pmProject report back (30 minutes)
4:00pmDiscussion: Where are we and where do we need to be? (30 minutes)
4:30pmPlanning for day 3.
6:00pmDinner

Friday May 29:

8:30amBreakfast
9:00amSummary: Where are we and where do we need to be? (Edward, 15 minutes)
9:15amWhat can be improved with accessors? (Prabal to lead?)
9:45amWhat can we demo for sure in September (Amanda Prorok)
10:15amBreak
10:30amTowards a common accessor design (Marten to lead?)
Accessor Design Discussion notes
12:00pmLunch
1:00pmPrototyping the DARPA demo and next generation accessor framework (4 hours)
5:00pmAdjourn

Common Exercise

  1. Audio Accessor and Nashorn/Ptolemy II implementation. See Common Exercise Build An Audio Accessor.

Project suggestions:

    1. Find Node modules for audio capture and playback.
    2. Design a JavaScript module API for audio services (coordinate with common exercise outcome).
    3. Implement the JavaScript module using Node.
    4. Design AudioCapture, AudioPlayer, and ClipPlayer accessors (coordinate with common exercise outcome).
  1. Kubi accessor (RESTful interface, so should work on everything)
    1. Figure out the Kubi API. According to Tim Huang <tim@revolverobotics.com>, something like http://new.kubi.me/api/1.0/move-kubi, with parameters like:
      1. hardware_id: 'XXXXXX',
      2. x: 0 <= x <= 1
      3. y: 0 <= y <= 1
  2. Browser accessor with Nashorn implementation (boilerplate is checked in for Nashorn/Ptolemy II). A browser accessor accepts HTML and JavaScript input and uses a browser to provide a GUI to a swarmlet.
    1. Understand the boilerplate (which is very spare).
    2. Enhance its capabilities to, for example, plot audio signals from the common exercise in the browser.
  3. TI SensorTag accessor with Nashorn and/or Node implementation (the SensorTag accessor on the website is not really what we want)
    1. Find Java and/or Node bluetooth interfaces.
    2. Design a JavaScript module API for bluetooth.
    3. Implement the JavaScript module using Nashorn and/or Node.
    4. Design SensorTag accessor.
  4. ROS accessor with Nashorn and/or Node implementation
    1. Find or build Java and/or Node ROS interfaces.
    2. Design a JavaScript module API for ROS.
    3. Implement the JavaScript module using Nashorn and/or Node.
    4. Design ROS accessor.
  5. Build an accessor to control a pan-tilt-zoom camera (we can provide one).
  6. YourSensorOrActuator accessor with Nashorn and/or Node implementation
    1. Find or build suitable Java and/or Node interfaces.
    2. Design a JavaScript module API for this interface.
    3. Implement the JavaScript module using Nashorn and/or Node.
    4. Design SensorTag accessor.
  7. ScriptedSignalProcessing accessor with Nashorn implementation.
    1. Get familiar with ptolemy.math.SignalProcessing class
    2. Design a JavaScript module API for some of the methods in this class.
    3. Implement the JavaScript module using Nashorn.
    4. Use the ScriptedAccessor of the previous project to demonstrate use of this module.
  8. Help develop the AccessorJS platform.
    1. Implement and extend functionality to be more consistent with Ptolemy implementation.
    2. Work on the development of MoCs for this platform.
    3. Develop a browser-based front-end for Accessor editing.
    4. Get in contact with Chris Shaver shaver@eecs.berkeley.edu.
  9. Leverage synchronous events in DE
    1. Build a paper-rock-scissors game with two sensors (e.g., WiiMote?)
    2. ...
  10. Build new modules
    1. BLE
    2. GDP
    3. UDPSocket
    4. Url (support for reading and building URLs)
    5. ...
  11. Get Vert.x Multicast working
  12. Oort Smart Socket Accessor
  13. TODOs and FIXMEs:
    • HttpClient module
      • http fails silently (response == null) [Marten]
    • Accessor interface
      • If exports.setup is changed, upon reload, it should remove ports that are not registered [?]
      • If the source of an accessor is local, then automatically reload if the file has changed [?]
Edit - History - Print - Recent Changes - Search
Page last modified on November 04, 2016, at 09:23 pm