You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
VisualStates is a tool for programming robot behaviors using automata.
It combines a graphical language to specify the states and the transitions
with a text language (Python or C++). Hierarchical Finite State Machines
are used to program robot behaviors and each state is a reactive controller
which can be active or not at a particular instant. It automatically
generates a Robotics Operating System node as output, in C++ or Python,
which connects to the configured drivers at runtime and implements the automata.
This tool speeds up the development of robot applications, reducing the code
that has to be manually created.
Any of the prius behaviour was to be either improved or a new one was to be created.
Task
Create behaviours using ArDrone2 and improve or add behaviours that use prius model.
Progress
Improved the prius_overtake behaviour by using orientation and position based
transitions instead of temporal transitions.
Pull Request
Problems faced
The repo supplied was very old so many errors had crept in. After solving
almost all errors (such as it needed gazebo 7 to build and they were accessing
std func directly with the using namespace command), I had to leave it as
it had a dependency on an older version of a library which wasn't available.
So I have to create a urdf with the prebuilt plugins added to a included
folder.
Week 10: 29 July 2019 - 4 August 2019
Discussion
The video made for the demonstration required several additions and modifications:
It should show the addition of states, adding parameters, adding codes that use the parameters.
The video should highlight how defined parameters are referenced and used in the code.
It would be better if you do not reference your previous video.
The video should fit in 2 mins.
The Pull Request of parameterization was to be reviewed before it was merged
Added dialog to display imported parameters.
Pull Request
Week 5: 24 June 2019 - 30 June 2019
Discussion
Design of online importer and exporter
PyGitHub library will be used to access the repository
It could be better to show the tree of states with the parameters instead of a snapshot
There will be a main xml file in the repository containing the names, descriptions and
the folder name in which the behaviour and the snapshot/tree of states is present
A demo repository will be created by me which will be used to create the online importer
and exporter and once its complete we will shift to a jderobot repository.
Design of parameterization of VisualStates
-A list of added parameters need to be displayed during the import of a file
Task
Implement the design of the exporter and importer
Display the list of added parameters during import
The documentation will be better with a blog style appearance rather than the current one.
This way the documentation could be made more comprehensive
Design of parameterization of VisualStates
The parameters are going to act like local namespace variables in the the source code.
They are to be added from the local namespace UI
They are not needed to be shown while importing, later whn selective state import will be
added they will be shown to the user as a part of the states
Design of online importer and exporter
Each behaviour needs two details
Name
Description
A snapshot would be added that could be auto generated or created by user of the root state
The repo will contain folders for each behaviour where the snapshot and xml file will be stored
and another file at the root of the repo to store a list of the behaviours.
The exporter will create a pull request to the repository and add required code automatically.
Task
Make changes to design of parameters
Change the documentation from a single page format to a blog type format.
Create a video demontrating the parameterization of visual states
Progress
Converted the documentation to a blog format. Link
Made necessary changes to parameterization code. Pull Request
Made a demonstration video for the parameterization of visual states. Link
The issue needs to be split into specific issues(by me) for
specific inputs.
Transition Code and Condition execution order.
Instead of keeping a Python and a C++ radio button to change syntax
highlighting ask user for his language preference at the beginning of
the new behaviour.
An issue needs to be created (by me) for the parameter design documentation.
It will help in taking inputs from everyone to better the design - Issue opened
here
Task
Solve the User Input Validation Issues
Change design of parameterization as inputs are provided on the
issue