Releases: fs-feup/autonomous-systems
v1.1.0
Fourth Release of the FSFEUP 01 System
This release marks a significant milestone. It features a fully functional autonomous driving pipeline capable of completing a full lap in simulation, utilizing the LiDAR-based perception pipeline. The first iteration of perception, state estimation, and path planning tests with real-world data has also been implemented.
Key updates include:
- Inspection Script Improvements: Debugging capabilities for real-life testing have been improved.
- Perception Improvements: New heuristics, based on Z-Score analysis and minimum height filtering, have been introduced for more robust object detection.
- Path Planning Enhancements: A memory feature for storing previous iterations has been added, and there is now an option to activate or deactivate outlier removal during planning.
- Control System Updates: The control system can now handle tracks with variable velocity, adapting to different conditions.
- State Estimation: The Extended Kalman Filter (EKF) now boasts improved execution time for faster and more efficient processing.
What's Changed
- FSF-4434 | feat(perception): Standard Devitation and Z-Score Heuristics and FoV trimming update by @Davide64-dev in #335
- FSF-4065 ref: uniformized READMEs structure by @marhcouto in #336
- FSF-4430 tracks with variable speed, tuned pacsim by @yvesb04 in #337
- FSF-4427 feat(planning): optional outlier removal and path smoothing by @lourenco31 in #338
- Se refactor by @Davide64-dev in #345
- Eval flag FSF-4518 by @BrunoDias201907828 in #344
- FSF-4515 Planning evaluation implementation by @lourenco31 in #340
- FSF-4522 Evaluator documentation by @lourenco31 in #346
- FSF-4517 | test(evaluator): created tests for all data association and format functions by @Davide64-dev in #348
- Testing setup by @Davide64-dev in #341
- FSF-4897 feat(ekf_state_est): new state estimation documentation by @lourenco31 in #349
- FSF-4437 Bayesian optimization for Cone Coloring by @lourenco31 in #347
- Autocross by @Davide64-dev in #353
- FSF-4942 | 1/5 of trackdrive by @lourenco31 in #354
Full Changelog: 1.0.0...v1.1.0
v1.0.0
Third release of the FSFEUP 01 system. Features complete and functional autonomous pipeline with full lap in simulation:
- Advancements in the evaluation pipeline, with generation of reports and upload to the cloud
- Path planning deep code refactoring and tuning
- EKF implementation of new data association method using mahalanobis distance (takes covariance into account)
- Control further tuning and smooth lookahead point calculation
- Perception tuning with real data
The pipeline is capable of going around a track multiple times. Improvements need to be made in reliability of state estimation, which renders the pipeline unstable and still not too functional without using simulated perception
What's Changed
- FSF-3621 FSF-3963 Control Refactoring + documentation by @yvesb04 in #312
- FSF-4037: Refactor all adapters to use child nodes instead of adapters by @yvesb04 in #318
- FSF-3367 | fix(perception): Perception Tune + launch file refactoring + Perception fix on evaluator node by @Davide64-dev in #301
- FSF-3925 feat: ci-based analysis first try by @marhcouto in #315
- FSF-3959 feat(mocker_node): path visualization in mocker_node by @andrelds11 in #317
- FSF-3932 | fix: solved control metrics calculation + execution time by @Davide64-dev in #319
- FSF-3935 Pacsim update by @marhcouto in #320
- Dashboard power log FSF-4264 by @BrunoDias201907828 in #326
- FSF-4251 & FSF-4319 | Perception Testing by @Davide64-dev in #325
- FSF-3922 fix(planning): refactored cone coloring, outlier removal and smoothin… by @lourenco31 in #316
- FSF-3928 fix(planning): updated planning diagrams by @lourenco31 in #322
- FSF-3964: Testing_control by @yvesb04 in #324
- FSF-4265 | Fix-feat/evaluator by @Davide64-dev in #327
- Fix/perception tests by @Davide64-dev in #329
- FSF-4429 | System testing by @marhcouto in #333
Full Changelog: v0.3.0...1.0.0
v0.3.0
Second release of the FSFEUP 01 system. Features complete and functional autonomous pipeline:
- EKF refactored and bug free
- Perception improved with stronger cone validation and grid Ransac for ground removal
- Path planning with path coloring, map spline matching, delaunay and smoothing
- Pure Pursuit controller added
- Evaluation tools developed
- EUFS and Pacsim simulators set-up
- Robust code evaluation tools set-up
The pipeline has been shown to work overall, being able to conduct the vehicle in a track. Even so, it is still buggy and many improvement can be made.
What's Changed
- FSF-2206 Fixed static analysis and workflows by @marhcouto in #258
- Docs(Simulation and Infrastructure): added foxglove tutorial FSF-2167 by @BrunoDias201907828 in #259
- fix(LongControl): Fixing PID Unit Test erros by @PedromLBarros in #261
- FSF-2542 FSF-2143 FSF-2163 inspection script by @lourenco31 in #257
- FSF-2752 FSF-2770 Cylinder Validation by @Davide64-dev in #260
- FSF-2598 - Ros 2 can by @PedroRomao3 in #263
- ref(docker-dev): updated docker-dev container files to work on any pc by @marhcouto in #270
- FSF-2975: Python linters by @marhcouto in #272
- FSF-2769-Ekf slam doc by @PedroRomao3 in #267
- FSF-2925 build and test workflow by @marhcouto in #271
- FSF-2597 - Ros node by @PedromLBarros in #262
- FSF-2949 Linter change - sonarcloud by @marhcouto in #275
- FSF-2956 Feat/cone heuristic by @Davide64-dev in #273
- FSF-3213 feat(ros_can): Alive msg by @PedromLBarros in #277
- FSF-2936 feat(mocker_node): node created by @lourenco31 in #268
- FSF-2929 | feat(sim): Created evaluator node with some subscriptions by @Davide64-dev in #265
- FSF-3540 Inspection fix by @lourenco31 in #281
- pc_setup_computer FSF-2924 by @BrunoDias201907828 in #280
- FSF-2926 PacSim tutorial and submodule by @marhcouto in #276
- FSF-2948 Feature/execution time by @Davide64-dev in #269
- Refactor code EVERYWHEREEE by @yvesb04 in #284
- FSF-2928 updated full diagram to include EUFS topics by @lourenco31 in #283
- Refact-long-control by @yvesb04 in #285
- FSF-3352 | Feat/sync inspection by @Davide64-dev in #282
- FSF-3618 refact(control-node): Cache Message Filter by @yvesb04 in #289
- FSF-3583 feat: created launch files package by @marhcouto in #290
- FSF-2970 FSF-3414 - major state estimation refactors by @marhcouto in #287
- FSF-3353 FSF-3354 feat(planning): cone coloring by @lourenco31 in #279
- FSF-2941 feat(evaluator): planning evaluation metrics by @andrelds11 in #292
- FSF-3722 | feat(sim_infr): created adapters for other simulators by @Davide64-dev in #295
- FSF-2938 FSF-3620 State Estimation adapters and evaluation by @marhcouto in #293
- FSF-3814 Mocker node tracks by @andrelds11 in #296
- FSF-3720 beginning of planing adapters by @lourenco31 in #294
- FSF-3411 Power test by @marhcouto in #297
- FSF-3093 & FSF-3367 | feat(perception): added center calculation by @Davide64-dev in #286
- Update installing_wsl.md by @PedromLBarros in #300
- Se simulation testing by @marhcouto in #298
- Create env.example by @PedromLBarros in #303
- Iron trial by @marhcouto in #302
- FSF-3628 Planning fixes after subsystem meeting by @lourenco31 in #304
- FSF-2945 | feat(perception): first iteration of grid ransac finished by @Davide64-dev in #288
- FSF-3912 Update launchfiles; Planning eufs adapter publisher visualization msg by @lourenco31 in #306
- FSF-3585 feat(control):PupePursuit by @PedromLBarros in #291
- FSF-3912 Full system EUFS test by @marhcouto in #308
- FSF-3623 | doc(perception): update documentation by @Davide64-dev in #309
- FSF-3622 State est docs by @marhcouto in #310
- FSF-2943 docs(evaluation): documented evaluator node and other small details by @marhcouto in #311
- FSF-3356 feat(docs): planning documentation updates phase2 by @andrelds11 in #313
- Delaunay distance threshold by @andrelds11 in #307
- FSF-3621 control doc by @yvesb04 in #314
Full Changelog: v0.2.0...v0.3.0
v0.2.0
First release of the FSFEUP 01 system. Big developments, but the release does not contain a fully functional system yet. Major differences:
- EKF improved with sparse matrixes and Eigen multi-thread
- LiDAR Perception complete untuned pipeline
- Path Planning bugs corrections and smoothing applied
- PI-D velocity controller implementation untested
- KISS ICP set up
- Adapter refactor
What's Changed
- Create ros2_docker_vscode_coding_environment.md by @yvesb04 in #233
- Setup fixes by @marhcouto in #239
- feat(perception): Perception node created by @Davide64-dev in #236
- feat (longitudinal control): added new node by @lourenco31 in #237
- Update docs by @marhcouto in #245
- feat(lateral_control): package and node created by @PedromLBarros in #240
- Planning node refactoring/Adding velocity to path points by @lourenco31 in #243
- Added Kiss-ICP and tutorial by @BrunoDias201907828 in #241
- Feature/ground removal by @Davide64-dev in #242
- docs: added simulator tutorial by @marhcouto in #244
- Feature/rs driver by @Davide64-dev in #247
- Feature/clustering by @Davide64-dev in #249
- fix(loc_map): solved Eigen dependencies by @Davide64-dev in #246
- Feature/cone differentiation by @Davide64-dev in #250
- docs(planning):Comments about Delaunay triangulaiton by @PedromLBarros in #254
- Adapters Refactor by @andrelds11 in #252
- Loc map refactor by @PedroRomao3 in #256
- [ FSF-238 ] Pid longi by @PedromLBarros in #253
- ref(planning): refactor outlier removal by @lourenco31 in #248
New Contributors
- @yvesb04 made their first contribution in #233
- @lourenco31 made their first contribution in #237
- @PedromLBarros made their first contribution in #240
- @BrunoDias201907828 made their first contribution in #241
Full Changelog: v0.1.1...v0.2
End of System 0 (22-23 FSFEUP Driverless)
Final release of the first system (System 0). This system contained a full implementation of an AD system. It was however very faulty. It used:
- Camera based perception with ZED2 stereo camera and YOLOv5m6
- EKF SLAM with odometry based localisation
- Delaunay Triangulations middle-path planning
- PID or MPC based control
- EUFS SIM and CAN control
The system competed in FSUK-AI 2023, having managed to complete all inspections, dynamic and static. Despite not having competed in any dynamic event and a mediocre performance overall, the team won the first place for te FS-AI Business Plan presentation.
System developed by the Formula Student FEUP team's Driverless department of 2022-2023:
- @diogohalmeida - Perception
- @TsarkFC - Department Leader
- @andrelds11 - Planning
- @JoaoAMarinho - Control
- @marhcouto - Localisation and Mapping
- @Leonor2004 - Planning
- @vjardimb - Control
- @tomascadete - Perception
- @PedroRomao3 - Recruit / Localisation and Mapping
- @Davide64-dev - Recruit / Perception
- @beamiranda07 - Recruit
System Integration
- First release containing the all the different components integrated
Sprint #3
Sprint #2
First release, containing the code that resulted from the end of the second sprint
- Contains initial repository structure
- Defined automation workflows (testing, code verifications)
Path planning
finding the middle path of a race trackControl
communicating withEUFS
simulator