Fix/lidar on chassis - #26
Draft
amoghmpanhale wants to merge 37 commits into
Draft
Conversation
…ub.com/Neobotics-Foundation-Inc/neoracer-mujoco into WIP/amoghmpanhale/Steering-experiments
Move the NeoRacer project from users/ into a clean root layout (assets/, scripts/, validation/, docs/) and remove the old spec_assets/, xml_assets/, and examples/ reference files. Model fixes (assets/neoracer.xml): - Fix visual mesh paths (../assets/ -> meshes/) so the model compiles from disk. - Set mass="0" on the six vis_* mesh geoms. contype/conaffinity=0 disables collision but not mass, so the STL meshes were adding ~15 kg of phantom mass (default 1000 kg/m^3 density). Total car mass corrected from 17.99 kg to 2.61 kg. Validation suite (validation/): - Physics + pure-logic pytest suite gating any car model on compile, mass, stability, control response, and RL-exploit guards. Globs assets/*.xml so new cars are tested automatically. Consolidate to a single root README describing the layout, demo scripts, and validation suite. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…loop - README: use `-m examples.run`/`examples.manual_drive` and fix stale `scripts/` folder names left from the rename - manual_drive.py: group tuning knobs into ThrottleParams/SteeringParams/ CamParams frozen dataclasses - run.py: sleep only the remainder of the timestep so the viewer tracks real time instead of running slow by the compute cost Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- sensor_logger.read() returns a frozen SensorReadings dataclass (one field per neoracer.xml sensor) instead of an untyped dict - wheel_speed_ms/print_sensors and run.py _log use attribute access - test_logic updated to the struct - fix conftest sys.path: point at examples/ (was stale scripts/ after the folder rename, which broke sensor_logger import)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Added a pygame wrapped around mujoco to allow for videogame-style controlling of the car.
Added a mujoco replica of the Monaco f1 track. Not perfect, still working on it.
Increased the width of the f1 track from 0.9m to 1.1m for easier driving of the car.
Recommended for wheeled vehicles by Mujoco. Helps the tires creep less sideways.
Wanted to add a means to test lidar functionality to the pygame demo. The lidar inputs are now demonstrated as 8 dots denoting distance from walls with max distance being 1 meter.
Directions of the lidar sensors on the neoracer car were all in 1 direction. This is wrong. Updated so that they're pointing in 8 directions using the zaxis.
Now the front ray matches with the top dot.
Take main's version on all conflicts; keeps pygame_drive demo, f1_track, validation/, and users/ scratch. Demo deps (friction cone + plane size on neoracer.xml) restored in the following commit.
main's neoracer.xml lacks two things the pygame_drive demo depends on: elliptic friction cone (tuning was done against it) and a 10m ground plane so f1_track scenery sits on grid. Re-add both. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- 02_press_and_hold.py: drop 'from pygame.locals import *' (F403/F405), reference pygame.QUIT / pygame.K_* explicitly - robot_description_tf.launch.py: remove unused os / DeclareLaunchArgument / LaunchConfiguration imports (F401) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The LiDAR mount site, all 8 beam ray sites, and the cosmetic lidar mesh sat at z=0.15 in the car body frame. The chassis collision box has a half-height of 0.0806, so the whole sensor stack floated ~7 cm above the top face of the car rather than sitting on it. Move all of them to z=0.0806 (the chassis top face). Beam directions are unchanged; the ring just scans from the correct height now. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.