Closed shmily-skx closed 4 years ago
You will need to have ROS running to control the vehicle. On Windows officially this is possible only with ROS2, because ROS1 is not supported. You'll need to follow ros2 installation instructions. After than you'll need to install rosbridge for ros2 - get it here. After running the web bridge you should see ROS2 topics that simulator is publishing.
Installation of ROS on Windows is pretty complex. Alternative is to use docker on Windows to run ROS in Ubuntu environment. That will allow to get ROS1 or ROS2 with pretty standard apt-get install commands, including rosbridge. But installation of ROS inside docker is a bit out of scope of simulator project. You should check guides & documentation of docker & ROS to get instructions how to do this.
You will need to have ROS running to control the vehicle. On Windows officially this is possible only with ROS2, because ROS1 is not supported. You'll need to follow ros2 installation instructions. After than you'll need to install rosbridge for ros2 - get it here. After running the web bridge you should see ROS2 topics that simulator is publishing.
Installation of ROS on Windows is pretty complex. Alternative is to use docker on Windows to run ROS in Ubuntu environment. That will allow to get ROS1 or ROS2 with pretty standard apt-get install commands, including rosbridge. But installation of ROS inside docker is a bit out of scope of simulator project. You should check guides & documentation of docker & ROS to get instructions how to do this.
So, I want to get the keyboard control interface now. There are also pose information, radar information, and camera information of the vehicle. I want to write a control strategy that allows the car to implement the ADAS function and the automatic driving function (L3) in the simulation environment.
Do you think it is easy to implement on Windows, or is it recommended to operate on Linux? If you are on Linux, is it only possible to download emulation and ros, but also need to download apollo and autoware?
You should check out our lanefollowing project - it shows example how to create from scratch very simple "AD stack" based on ROS2. This AD example does only lane following from camera image with DNN model. Example code requires running docker setup on Linux with Nvidia GPU.
It is possible to do all that on Windows, but you'll need to first set up ROS2 & ros2-web-bridge on Windows. There are instructions how to install ROS2 on Windows in their documentation. But on Linux it will be simpler as that is primary platform where ROS is developed.
You do not need Apollo and Autoware if you want to talk to our simulator directly. You can use Apollo/Autoware if you want to modify, improve or work only on one specific component in their AD stack (for example, perception).
You should check out our lanefollowing project - it shows example how to create from scratch very simple "AD stack" based on ROS2. This AD example does only lane following from camera image with DNN model. Example code requires running docker setup on Linux with Nvidia GPU.
It is possible to do all that on Windows, but you'll need to first set up ROS2 & ros2-web-bridge on Windows. There are instructions how to install ROS2 on Windows in their documentation. But on Linux it will be simpler as that is primary platform where ROS is developed.
You do not need Apollo and Autoware if you want to talk to our simulator directly. You can use Apollo/Autoware if you want to modify, improve or work only on one specific component in their AD stack (for example, perception).
Thank you for your answer, I will try it. And feedback the results to you
You should check out our lanefollowing project - it shows example how to create from scratch very simple "AD stack" based on ROS2. This AD example does only lane following from camera image with DNN model. Example code requires running docker setup on Linux with Nvidia GPU.
It is possible to do all that on Windows, but you'll need to first set up ROS2 & ros2-web-bridge on Windows. There are instructions how to install ROS2 on Windows in their documentation. But on Linux it will be simpler as that is primary platform where ROS is developed.
You do not need Apollo and Autoware if you want to talk to our simulator directly. You can use Apollo/Autoware if you want to modify, improve or work only on one specific component in their AD stack (for example, perception).
I am now connected using rosbridge. I didn't use apollo or autoware, just use ros. When I use the rostopic list, only a few topics are listed here. I can make the car reset by pub /simulator/reset. So, how do I get more sensor information and vehicle motion information now? Also, if I want to use ros to control the car to move, which topic should I use?
Or do I have to install apollo or auto to achieve control of the vehicle?
I think you are using Apollo vehicle in this screenshot? You should first try using LGSVL vehicle (with ROS2) in main menu. Apollo or Autoware vehicles require custom ROS message types to be available. While you don't need to install full Apollo/Autoware it requires a bit of work to compile custom msg files.
With LGSVL vehicle you should be able to move it by publishing geometry_msgs/TwistStamped
type on /lanefollowing/steering_cmd
topic.
If you want to use existing Autoware or Apollo vehicles then you'll need to adjust C# code to use only standard ROS message types that does not depend on Autoware and Apollo message types.
How to use the data information of the vehicle and sensor in the lgsvlsimulator and control the vehicle motion through the control algorithm on the windows platform.