tud-hri / joan

JOAN is an software package that allows to perform human-in-the loop experiments in the open source driving simulator CARLA. JOAN facilitates communication between human input devices and CARLA, the implementation of haptic feedback, systematically storing experiment data, and the automatic execution of experiments with multiple experimental conditions.
Other
11 stars 7 forks source link

Update to Carla 0.9.13 #15

Closed lflipse closed 1 year ago

OlgerSiebinga commented 2 years ago

I'm still working on the review, but here is a temporary list of todo's:

  1. The functionality to load default settings was removed:
    • [x] The documentation needs to be updated accordingly
    • [x] An alternative needs to be designed to automatically load settings on startup. I'm thinking of a command line run option with an experiment name as file-to-load. Maybe include this in the next update and just add it as an issue.
  2. The new Carla installation guide:
    • [x] For the pip install line, add an explanation on how to do this in a virtual environment
    • [x] The page "setting up Carla for TUD students" is now unreferenced. Fix this with a link
    • [x] Test this installation procedure
    • [x] What is that last line about? can we fix this? (setup-carla-windows.md line 35)
    • [x] When talking about "errors", please specify which errors
  3. The new JOAN installation guide
    • [x] When talking about "errors", please specify which errors
    • [x] Move the solutions to common errors that are not related to installation (e.g., the note about the weather error) to another page.
    • [x] upload the new assets to the data repository and change the link
    • [x] test these installation instructions on a fresh computer
  4. The new method for importing Carla:
    • [x] remove the commented import link in all files
    • [x] remove the unused carla_importer from the tool module altogether
  5. ego_vehicle.py:
    • [x] what does keff mean? can we rename it to something understandable?
    • [x] remove all lines of code that are commented out
    • [x] rename the function cruise_control to something like apply_cruise_control. There should be a verb because a function does something.
  6. carla_interface_process.py:
    • [x] overriding the start() function, just to call super().start() is redundant. This can be removed.
  7. tradedcontroller.py
    • [x] Lines 53 and 54 has a bare except statement, this makes it harder to trace back where exceptions came from when they occur. Please remove this and specify which exception should be handled. (for more info, see https://peps.python.org/pep-0008/#programming-recommendations of just search bare except on stack overflow)
    • [x] use spinboxes in the QT GUI for numbers instead of line edit objects. Spin boxes will only accept number and therefore prevent problems with illegal input.
    • [x] line 144, please use lower case names for variables
    • [x] line 187, instead of directly calling the internal method x.__str__() on a variable x, you can just use str(x)
    • [x] line 261, function names like _nonlinear_term are hard to understand without extra documentation. Either supply the documentation or rename the function.
  8. Haptic controller types
    • [x] Enum values should be all capitals, so TradedControl should be TRADED_CONTROL
  9. FDCA controller
    • [x] still quite some lines of commented-out code
    • [x] can we add a link/reference to a paper or something where this controller is explained? I'm having a hard time figuring out all the variable names.
  10. test.py
    • [x] What is the idea behind test.py?