340 likes | 609 Views
CyPhyHouse. A framework for implementation, simulation, verification and deployment of distributed robotics applications. S ayan Mitra , Geir Dullerud Ritwika Ghosh , Joao Paulo Jansch -Porto, Peter Du, Amelia Gosse. CyPhyHouse. University of Illinois. CyPhyHouse System Architecture.
E N D
CyPhyHouse A framework for implementation, simulation, verification and deployment of distributed robotics applications. SayanMitra ,GeirDullerud Ritwika Ghosh,Joao Paulo Jansch-Porto, Peter Du, Amelia Gosse CyPhyHouse University of Illinois
Koord Semantics and Verification Joint work with SasaMisailovic
System evolution Program transition Environment transition
Bounded model checking Executable semantics • + • Dynamics model DryVR (sensitivity analysis) Program+ Property Safe/ Unsafe + CE Discrete set of reachable configurations Property Checker Fan, Chuchu, et al. "D ry VR: Data-Driven Verification and Compositional Reasoning for Automotive Systems." International Conference on Computer Aided Verification. Springer, Cham, 2017.
Verification : Interval Propagation Semantics • Semantics developed using K. • Koord semantics for execution: Specific initial states, with specific dynamics. • Koord semantics for verification: Initial states may be Intervals. Rosu, Grigore and Traian-Florin Serbanuta. “An overview of the K semantic framework.” J. Log. Algebr. Program. 79 (2010): 397-434.
Bounded model checking Interval Propagation Semantics of Koord in K DryVR (BlackBox)/ Interval Semantics (Explicit)
Simulator : • Simulates communication protocols and system dynamics. • System dynamics can be any programmable dynamics. • Enables large scale testing and simulation. • Modular design to accommodate external functions.
Software setup • Generated Application Code interfacing with middleware to provide language feature support. • Java Middleware, to enable support for several features using built-in libraries. • Potentially infinite discrete event loop with sleeps for message passing and dynamics.
Software setup • Hardware platforms running ROS . • Controllers : Ardupilot for quadcopter. • Java RosBridge between CyPyHouse code, Vicon, and Controller.
Requirements • All agents are aware of the number of active participants in the system. • External functionality such as localization and reading of sensor data is provided by the platform/middleware developer. • The user provided is sufficient for message passing, and allows for the low level controllers to perform previously computed actions.
Requirements • Shared memory semantics : Each agent maintains a local copy of each variable, changes to any shared variable become visible in the next round. • Shared variables implemented through message passing : The user provided is sufficient for message passing, and allows for the low level controllers to perform previously computed actions.
Support for heterogenous platforms and dynamic systems • Launching Koord application on programs : use directoryd to automatically discover CyPhyHouse platforms. • Concurrent keepalive threads to keep track of the agents. • Middleware with motion automata to support common sensor functions, with lower level implementations of dynamics/constraints for both simulation and hardware deployment. directoryd: Richard Otap's thesis code http://goo.gl/uB8orO
Platforms currently deployed • Quadcopter: Raspberry Pi 3, Navio2 deck for sensing and motor control. • Car : MIT RACECAR hardware, NVIDIA TX2 board, in house control.
Localization specifications • Distinctive markers on each robot, • Limited arena size : 7m x 8m x 3m, • Low variation in lighting conditions, • Constant line-of-sight, • “Reaching” a waypoint : -ball around the waypoint. • Consistent units of measurement between sensors, actuators and application program.
Robustness • Limited Arena size : Repeated points visited by two cars. • Mutual Exclusion successfully maintained. • All tasks performed.
Conclusions • CyPhyHouseinterfaces with and complements existing robotics tools. • End to end high level application development and deployment on distributed, heterogenous platform including ground vehicles and quadcopters. • System Level verification, simulation and debugging of applications. • Automatic Portability across platforms by linking with the right platform dependent libraries.
Current and Future work • Real time visualization under development for hardware deployment. • Move simulator to same platform.
Current and Future work • Finished development of Ultra Wide Band localization through Decawave : low cost, low power, lightweight algorithm, no need for direct line of vision. • Multi-hop network shared variable consistency for larger systems.