Commit Graph

144 Commits

Author SHA1 Message Date
bernatx d3341d674f make ROS2 in a separate package 2023-11-08 22:29:28 +01:00
LuisPoveda 8ce4ca9ed3
Ros2 (#6862)
* Adding ROS2 manager

* Trying to compile fastDDS in windows, but have problems with dependencies

* Camera sensors connected to ROS2, dependencies disabled temporaly

* Including enum with sensors list

* adding GNSS sensor capture

* adding IMU sensor capture

* adding DVS sensor capture

* adding Lidar sensor capture

* adding SemanticLidar and Radar capture

* adding ObstacleDetector and some fixes

* modify cmakelists, failed to find libatomic

* fixed libatomic

* compile fast-dds with libc++

* fixed compliation fast dds with libcxx

* linked carla with fastdds

* Fixed Fast-DDS lib
Now its compiled to a intermediate lib with a bridge so libstdc++ can be used

* moved all ros2 deps to ros2 folder
renamed types from .cxx to .cpp

* Finally FastDDS compiled and working inside CARLA

* exposed publish function for testing

* fixed code style

* make ros2 optional

* make ros2 optional

* Added defines to compile ROS2 code

* ros image publisher working

* deleted some buffer copies

* Added more topics  and ROS2 types

* Adding sensor Transform as argument, and add function to send buffer or serialize and send buffer

* Removing empty buffer from DVS sensor

* fixed lidar publisher

* fixed lidar publisher

* Fix buffer of RGB in ROS2

* adding timestamp of each frame into ROS2 manager

* sending timestamps with frame to ROS2

* put apart timestamp from frame counter call

* adding BufferView to share buffers

* adding BufferView to share buffers

* adding ros_name attribute to all actors

* mapping ros_name for each actor

* ROS2 is now published in a different thread
Publishers now can be created on demand and be reused
Added subscriber for ego vehicle
Fixed build scripts

* forgot to add this fix

* add ros2 to windows scripts

* fixed default ros topic names

* fix topic name duplication

* Adding functions for enable/disable sensors publishing without listen to it

* Added Camera info and ROI types
RGB Camera now publishes in both topics

* move camera info immutable data to the constructor

* Publish transform for all topics
Create Camera DVS subtopics
Fixed bug with Lidar

* Added flip Y to semantic lidar

* Adding callbacks for subscribers from Unreal

* Adding camera info to ROS2 (resolution and FOV)

* Finished ROS2 naming from python

* Fixed bug with ros names

* Delete topics when deleting the sensors

* setting the rosname same as default no longer rewrites it

* ROS transform fix

* Added all camera topics with the image and camera info
Added vehicle control
Added clock publisher

* Change ros2 topic names for vehicle subscriber and  clock publisher

* Rename vehicle control ros2 topic name

* rename subscriber type to CarlaEgoVehicleControl

* Fix semantic lidar default ros name
Fix sizeof the semantic lidar data buffer

* Changed controller stored as string to pointer

* Back to previous version for default hero ros name
Removed debug prints

* Remvoe callback when ego publisher disconnects

* Serializing DVS data before sending to ROS

* dvs camera image and lidar

* DVS Pointcloud publishing

* Remove unnecessary fields

* Send local transforms to ros

* avoid transform recalculation if not needed

* Optical Flow Camera fixed

* Set fixed branch for Fast-DDS to avoid cmake version change issues

* Finally Working on package

* Fix style from FastDDS auto generated files

* Added ros2 to ubuntu in jenkins

* removed ros2 from jenkins, test

* restore ros2 in jenkins

* fix copy shareds, and removed server dependency from libcarla

* test installing the fastdds dependencies in jenkins

* move installing deps to separate stage

* removed install deps

* Fixing test_benchmark_streaming

* Fixed imu orientation and camera info data

* Fixing test_benchmark_streaming.cpp with BufferView

* Removing DEBUG_ONLY()

* publish collision sensor

* Fixing unit-tests with the new BufferView

* camera info is set once

* Fix echo camera info

* fix transform rotation

* Fixing ros_name attribute creation

* fixed camera info and region of interest publish

* fix IMU compass

* Forgot to add ros2 flag to jenkins package

---------

Co-authored-by: bernatx <bernatx@gmail.com>
2023-11-06 12:34:07 +01:00
bernatx 7c106b9426 adding Town15 as AdditionalMap 2023-10-27 14:39:37 +02:00
bernatx 556c41bb54 Adding Town13 as AdditionalMap 2023-10-24 20:44:26 +02:00
bernatx d3501de03c Removing python 2 from the smoke tests 2023-02-24 10:28:37 +01:00
Axel 4a8c80adb5 Added Town12 to jenkinsfile 2022-11-30 10:36:55 +01:00
bernatx 6ed174b72d Fix documentation git address 2021-10-27 09:16:38 +02:00
bernatx 161b7f198f Refresh documentation with dev branch also 2021-09-20 23:46:16 +02:00
bernatx d1debd9a20 Adding target for python wheels 2021-07-30 11:18:30 +02:00
bernatx 0d3bfe15c2 Avoid additional maps in smoke test by now 2021-07-30 10:01:45 +02:00
bernatx 4d04b4ae29 Cook maps one by one in windows (slower but can package unlimited maps) 2021-07-30 03:07:41 +02:00
bernatx c0f93b4ec7 Disable docker for development branch 2021-07-29 00:01:44 +02:00
bernatx 2d59fd5788 Enable carla:latest docker of development branch 2021-07-28 19:21:08 +02:00
bernat e6379b4aa2 Add Town10HD_Opt as default town 2021-07-26 10:35:39 +02:00
bernat c479625399 Updating Jenkinsfile to include the wheels as artifacts 2021-07-26 10:25:08 +02:00
Joel Moriana d6185fe982 first iteration python wheels support 2021-07-26 10:25:08 +02:00
bernat 7a4339b5aa Add additional maps to be tested 2021-06-16 11:04:24 +02:00
Daniel Santos-Oliván 2621a9ad11 Disable camera smoke test 2021-05-20 16:33:27 +02:00
Daniel Santos-Olivan 7edcea297b Jenkinsfile: Revert changes 2021-05-20 16:33:27 +02:00
Daniel Santos-Olivan 55f68cc403 Update of Jenkinsfile 2021-05-20 16:33:27 +02:00
Daniel Santos-Olivan d6ee662bcd Jenkinsfile: Added control in the launch of the server 2021-05-20 16:33:27 +02:00
Daniel Santos-Olivan c779b364e8 Jenkinsfile: grouping sh commands in blocks 2021-05-20 16:33:27 +02:00
Daniel Santos-Olivan 93ab8b9d87 Jenkinsfile: Fixed small bug 2021-05-20 16:33:27 +02:00
Daniel Santos-Olivan d486adc81a Update Jenkinsfile
We have split the smoke test for Python2, Python3 and the examples
to reboot the server between each of them.
2021-05-20 16:33:27 +02:00
Axel 04482af93d Updated jenkinsfile and changelog 2021-03-04 12:48:57 +01:00
bernat 8a140a8ed0 Update --clean-intermediate flag 2021-03-01 15:29:17 +01:00
bernat 930952e58d Updating content version 2021-03-01 11:34:22 +01:00
bernat 92b26c234d Disabling temporally AdditionalMaps on windows 2021-02-26 09:29:06 +01:00
bernat f0248d3812 Removing Carsim from packages 2021-02-25 16:48:15 +01:00
bernat 646325094a Adding offscreen command 2021-02-25 16:48:15 +01:00
bernat 132d394a82 Adding UE4_ROOT variable 2021-02-25 16:48:15 +01:00
bernat 6a5f64ed57 Modified Jenkinsfile for UE 4.26 2021-02-25 16:48:15 +01:00
bernat 7374804542 Adding plugins to the package 2020-12-22 16:13:50 +01:00
bernat 0d24c199fa New option to package to a single archive all 2020-12-18 14:32:05 +01:00
bernat 87f477b852 Fix windows packages argument 2020-12-14 12:33:31 +01:00
Axel 9f13584be8 Update gitignore 2020-12-11 16:59:44 +01:00
Axel a046aa0c62 Fixed jenkinsfile 2020-12-10 20:38:33 +01:00
Axel b1cbabd37a Updated Jenkinsfile 2020-12-10 20:38:33 +01:00
Axel 784d9b9ffe Updated jenkins file. 2020-10-02 11:51:37 +02:00
Axel b6c650d438 Python 2 returns. 2020-10-02 11:51:37 +02:00
bernat b08539d7f4 Add Python 2 .egg 2020-09-30 12:53:05 +02:00
bernat 3e76783217 Fixing python version 2020-09-23 17:47:11 +02:00
bernat fd611b2e33 Adding smoke_tests again 2020-09-23 17:47:11 +02:00
bernat 43ce1b0f01 Adding nightly build on dev branch 2020-09-23 12:00:19 +02:00
bernat f2c3b9fce6 Revert "Adding nightly build on dev branch also"
This reverts commit 3a8db3fd9f.
2020-09-23 10:54:14 +02:00
bernat 3a8db3fd9f Adding nightly build on dev branch also 2020-09-23 10:50:13 +02:00
bernat 201bc254a7 Changing Jenkinsfile for Doxygen 2020-09-04 17:25:21 +02:00
Axel 172d947ed8 Removed Python 2 from default builds. 2020-09-04 17:24:16 +02:00
Axel 3926fec5fb fixed argument parsing issue. 2020-08-27 11:29:47 +02:00
Axel c2f703b504 Added version to python3 compilation options. 2020-08-27 11:29:47 +02:00
Axel 6a156fbf75 testing 2020-08-27 11:29:47 +02:00
Axel 508dd06e2f Testinc jenkins 2020-08-27 11:29:47 +02:00
bernat b217432944 Remove smoke testes (temporally) 2020-07-31 21:55:30 +02:00
bernat 4aa14ad1f5 Little changes to Jenkinsfile 2020-04-22 12:24:28 +02:00
bernat 0f00bd438a Changing the the new groovy script 2020-03-27 12:51:02 +01:00
bernat 4fc90bc2db Cleaning Jenkinsfile 2020-03-20 18:13:08 +01:00
bernat 9ab7591242 Activate UE 4.24 in Jenkins 2020-03-20 12:01:30 +01:00
bernat 27e3733020 Upgrading windows scripts to 4.24 2020-03-20 12:01:30 +01:00
bernat de82275f10 Fix windows deploy 2020-03-19 18:58:09 +01:00
bernat 7a9dd5a6de Fix windows in jenkinsfile 2020-03-19 17:34:07 +01:00
bernat 3bef703f24 Add scalability script to Jenkinsfile 2020-03-19 00:45:00 +01:00
bernat 2f5409d4b6 Fixing Doxygen and clean steps 2020-03-13 09:24:46 +01:00
bernatx fdcc0eaad0 Fixing Doxygen in Jenkinsfile 2020-03-06 14:38:22 +01:00
bernatx 930b6ec115 Clean all jobs in Jenkins 2020-03-06 08:26:09 +01:00
Marc Garcia Puig 90284dc91e
Modifying pipeline for use AWS cloud (#2504)
Build success


Added package


Remove delete workspace for testing


Clean workspace after build


Add deploy for testing


Relocation of Unreal Engine


Using absolute path for UnrealEngine


Execute shell


Test without remove at end


Using bash instead of shell


New jenkins file for testing nodes

new tag

modified

modify 'test' stage


all in GPU


tags


all in 'build' and 'gpu'


Adjust some scripts to run smooth on GPU slave


force deploy always


Disable docker push


Remove all on slaves at end


add some locks


add some parallel stages


Fix windows package, now it copies all required files


Add 7zip option to compress package for windows


Add 'make CarlaUE4Editor' to windows


Fix the program files path for windows 64


More jobs on parallel


Add Update.bat to windows pipeline


Fixing make CarlaUE4Editor


Commenting stages in windows


Enable again download of content and fix artifact


Build only Ubuntu


Enable deploy of Docker


Make packaging of additional maps


Enabling windows build again


Adding Deploy for windows


Change URL to the new S3 buckets


Changed the Jenkins public IP


Fixes from Codacy


Disable Windows build


Add more time to smoke tests for connecting


Add 'run' option of examples without compilation


Enabled delete all after job


Adds a lock for the packaging


Removing all locks


Update the Doxygen step in Ubuntu


Fix nodes to use
2020-03-05 13:16:18 +01:00
Marc Garcia Puig 9d068d2be2 Fix dirty packages 2019-12-12 14:25:10 +01:00
Jacopo Bartiromo 2362f71216 Removing traces of old make TrafficManager 2019-12-11 16:31:51 +01:00
bernatx 7036283099 New package called 'AdditionalMaps' 2019-12-11 15:42:40 +01:00
Praveen Kumar 42af9614a0 Updated TrafficManager (#2112)
* Initial commit

This commit imports files from scenario_runner repository

* WIP TrafficDistributor
Set horizontal integral component to 0
Fixed startup concurrency issue

* TrafficDistributor first crude version

* Code asthetics, Uncrustified.

* Code clean up

* Fixed more concurrency bugs

* Reduced number of vehicles per core
Fixed some unhandled exceptions

* EOD commit 29AUG2018

* Re-organizing directory structure

* WIP code re-organization

* Redesigned PipelineStage
Implemented Messenger to communicate between stages
Implemented LocalizationStage
Added StageEnum
Removed unecessary files

* WIP Testing LocalizationStage

* Implemented and benchmarked LocalizationStage
Achieved single stage throughput of 600,000,000

* Implemented CopyBufferList() in LocalizationStage

* Fixed stage stalling and corrected benchmark

* Setting worker thread count to 1

* Code re-organization for porting MotionPlannerStage

* WIP - porting MotionPlanner

* Moved thread management logic into PipelineStage base class

* Implemented output data frame switching
Moved relavent structures and types from MotionPlannerStage.h to PIDController.h

* Re-organized directory structure to be consistent with rest of the project
Initialized frame_selector in constructor

* WIP - EOD commit 02SEP209

* WIP - managed to break deadlock between sender and receiver

* Implemented common mutex sharing for thread management in PipelineStage
Added small timeout for thread locking in PipelineStage
Finally broke deadlocks in stage integration

* Porting BatchControlStage to new design

* Ported BatchControlStage to new design
Fixed array indexing bug
Messaging actor_id instead of actor pointer to BatchControlStage
Improved thread co-ordination logic in PipelineStage

* Fixed array exetreme indexing issue

* Fixed thread co-ordination logic for multiple worker thread case

* Ported PID state map to dynamically allocated vector
Changed thread co-ordination time out to 1ms

* WIP - EOD 03092019

* Ported CollisionStage to new design
Added debug helper parameter
Added directionality pre-condition to check polygon overlap
Streamlined boundary functions
Fixed actor id to array index map
Passing individual buffers from localization
Using unsigned int keys in VicinityGrid

* WIP - fixing localization conflict on frame switching

* Fixed localization frame switching bug

* Ported TrafficLightStage to new design (#2078)

* Implemented TrafficLightStage with new architecture

* Implemented slowdown on approaching junction

* Integrated all stages into Pipeline class

* Ported PipelineExecutable.cpp to work with new Pipeline

* WIP - Fixing TrafficDistributor

* Switching to single thread stage actions
Added release options to CMakeLists.txt
Changed vicinity grid keys to string

* Changed TrafficDistributor to TrafficDistribution
This class only meant to keep track of vehicles acrros different road positions

* Changed TrafficDistributor declaration in LocalizationStage

* WIP - Lane changes

* Streamlined traffic distribution implementation

* Implemented a working lane change policy

* Fixed const correctness for ActionThreadManager and Action methods
Chaned varialbe++ to ++variable wherever suitable

* Using STL's numeric_limits instead of arbitrary high values for infinity
Made suitable constants static
Camelcase starting with uppercase for InMemoryMap methods
Fixed comment notions in all files

* Streamlined boolean return values from methods in CollisionStage.cpp
Using short hand for boost::geometry
More comments on boundary calculation logic
Camelcasing for methods

* Fixed TrafficDistribution vehicle tracking logic
Removed distance limit for lane change

* Moved lane change logic to TrafficDistributor.cpp

* Implemented logic to avoid collisions with unregistered actors

* Implemented graceful stop functionality for traffic manager

* Code aesthetics

* Added debug support for TrafficDistributor.cpp
Fixed Test.cpp

* Defined constants in TrafficDistributor.cpp
Code aesthetic changes

* Update README.md

* Aphabetical ordering of header include statements

* Code streamlining and aesthetic changes

* Review comment changes (#2116)

Review comment changes
Removed frame_map from TrafficLightStage

* Made changes  for review comments (#2117)

* Fixed implicit private inheritence for LocalizationStage
Removed unecessary using <method> statements in concrete stage classes

* Removed break logic from all loops

* Added detailed comments to all header files

* Minor review comment changes to collision stage

* Detailed comments for all .cpp files

* Implemented batch spawn and delete

* Added minimum distance check for lane change
Increased wait time after sending batch spawn command

* Simplified geodesic boundary creation in collision stage

* Changing to unsigned integers when appropriate
Shorter name aliasing

* Changes for code reveiw comments

* Removed white spaces

* Code review changes
Using carla::geom::Math::DistanceSquared whenever possible
Better name aliasing
Function signature checks

* Code aesthetics, text formatting

* Changes for appropriate auto keyword usage

* Grammar check

* Grammatical correction

* Distance based check points and boundary generation
instead of index based checks

* Using explicit typing wherever possible instead of auto

* Review comment changes

* Review comment changes

* Added time margin for approaching vehicles for lane change
Increased minimum collision boundary
Streamlined InMemoryMap::StructuredWaypoints
Implemented gradual braking in PIDController
Added left right checks in SimpleWaypoint
Removed redundant method in SimpleWaypoint

* Initial implementation for reproducibility

* Fixed radomization during path selection

* Added Vicinity grid-key checker for grid to actor_id map

* WIP: junction negotiation enhancement

* Polygon to polygon distance based collision negotiation

* Update Linux.mk

* Update CMakeLists.txt

* Update Vars.mk

* Update README.md

* Update getting_started.md

* Review comment changes
Namespace aliasing checks
Redundant function call checks
Default constants defined in motion planner stage
Removed hard braking to slow down near junctions
Lane change approaching vehicle check time margin
Added -h option to get help on traffic manager

* Reverting to carla::client::Vehicle::GetTrafficlightState non-signalised junctions

* Added communication timeout and implemented stopping when carla stops
Removed throughtput measurement logic from PipelineExecutable

* Updated gitignore

* updated CHANGELOG.md

* updated CHANGELOG.md

* WIP: negotiating non-signalised junction

* Time duration ticketing system for non-signalised junctions
Changed from pre-randomised to run time randomised decisions at junctions

* Removing debug draw statements

* Fixed make and cmake, more work required

* Added traffic manager build to jenkins

* updated docs
2019-10-07 16:30:51 +02:00
Francesc Domene 8cb378a612 Updated Jenkinsfile (Doxygen stage to do the travis-ci) (#1976)
* Updated Jenkinsfile to do the travis-ci
2019-08-08 08:48:21 -07:00
Marc Garcia Puig 865eccb863 Extended RGB sensor (#1950)
* Exposed DOF and Exposure in Python for  RGB sensor

* Fixed blueprint waypoint functions

* Added Tonemapper settings

* Exposed camera temperature and tint

* Updated Changelog
2019-08-02 17:40:05 +02:00
Francesc Domene 0fa8dd311c Fdomf/jenkins-wa (#1963)
* Added c++ doc section, Updated bp_library,docs improvements

* Minor changes

* Docs updates

* Added c++ doc section, Updated bp_library,docs improvements

* Minor changes

* Docs updates

* Updated jenkins file - master rebase

* Fixed doxygen link

* Waypoint tutorial extended and fixes

* Fixes

* Jenskins work arround for unnecessary commits and ci build

* Doxyfile tab format
2019-08-02 14:36:06 +02:00
Francesc Domene d70f5e19fd Fdomf/c++docs (#1947)
* Updated documentation and improvements

* Added doxygen to jenkins pipeline
2019-07-30 15:17:09 +02:00
Manish 621120ad80 Changing pipeline and changin make package for town06 and town07 2019-07-10 01:35:47 +02:00
nsubiron 31834188b5 Deploy docker image of nightly build automatically 2019-06-18 19:03:40 +02:00
Aidan Clear 0faffe2a38 Set Vulkan as default graphics API for Linux (#1639) 2019-06-04 18:48:11 +02:00
nsubiron 81e5062e06 Workaround for crash on audio system 2019-05-07 11:50:47 +02:00
nsubiron 32d9715ef8 Upgrade to Unreal Engine 4.22 and clang 7 2019-05-03 12:53:43 +02:00
nsubiron b6549adda8 Automate nightly build deployment 2019-05-03 10:13:10 +02:00
nsubiron 814e4374f2 Compile and run C++ client example in CI pipelines 2019-04-24 17:37:21 +02:00
nsubiron ee2a5c000b Fix pipelines after Python scripts were moved 2019-03-30 14:29:57 +01:00
nsubiron 20cada35d4 Export Town07 2019-03-27 19:38:09 +01:00
nsubiron 40836a1fd4 Add infrastructure for smoke tests in Jenkins 2019-03-14 20:17:55 +01:00
Daniel c5145dbe64 Jenkins settings updated 2019-02-28 14:15:27 +01:00
nsubiron 159206b298 Delay content download in Jenkins pipeline to save disk space 2019-01-26 14:27:17 +01:00
nsubiron 6c8499c8c9 Upgrade to UE4.21 2019-01-23 18:57:26 +01:00
nsubiron 39b32d20c0 Archive Python eggs on Jenkins 2018-10-19 11:23:33 +02:00
nsubiron 83e16d065f Refactor Jenkins pipeline 2018-07-10 17:11:56 +02:00
nsubiron b4885db53e Archive profiler generated data in Jenkins build 2018-07-06 18:58:51 +02:00
nsubiron 113dc4b6b8 Report test results as XML for Jenkins 2018-07-06 18:29:55 +02:00
nsubiron 90b58429bb Update Jenkins pipeline 2018-07-06 18:04:50 +02:00
nsubiron 998e2421c9 Speed up setup script 2018-05-23 20:18:16 +02:00
nsubiron 4bc0d43e75 Clean up jenkins build afterwards 2018-05-08 17:54:10 +02:00
nsubiron 46dcb1dc14 Add Jenkins pipeline 2018-05-07 20:40:58 +02:00