tum-phoenix / drive_ros_parking_controller

MIT License
2 stars 1 forks source link

Implement separate parking controller #1

Open a-0-dev opened 5 years ago

a-0-dev commented 5 years ago
YuxuanSnow commented 4 years ago

Wiki entry with additional information (to be expanded)

YuxuanSnow commented 4 years ago

Message prototype from uavcan for vehicle control

YuxuanSnow commented 4 years ago

Feedback message with current vehicle state

YuxuanSnow commented 4 years ago

Environment model message type

YuxuanSnow commented 4 years ago

Obstacle message type in environment model message

YuxuanSnow commented 4 years ago

Lane message type in obstacle

YuxuanSnow commented 4 years ago

Light switch message prototype from electronics (starts measuring when the switch detects the beginning of a parking spot (infinite distance) and sends out the message 5 times when a distance is detected again, which means the spot has ended, message contains length of the spot and the orthogonal distance)

YuxuanSnow commented 4 years ago

Barred area marker in env model (to be updated, currently uses old message)

enumeration of types is here (only MARKING_PARKING_SPOT_BLOCKED is relevant for you 209 )

YuxuanSnow commented 4 years ago

Currently, the node does not update the parking state as the function findPotentialSpots is not called here. This means that thet parking state machine is never entered (after line 167).

Also, the service handler is completely wrong -> it sets request and response at the same time, which is wrong, it should send request only and wait for acknowledgement from the Behaviour Tree.

YuxuanSnow commented 4 years ago

@MaslinuPoimal will try to make a simulation env with parking set up available until next week for live testing

YuxuanSnow commented 4 years ago

back parking algorithm already implemented. The problem is, we still have to subscribe successfully to have the input of our controller. Today we have tried to subscribe some rostopic to test the communication. @Priyanka-tig

YuxuanSnow commented 4 years ago

Lidar funktion (physical object detection) integrates now in our control program. We have found a ros bag, which includes the Lidar data. We will try to subscribe this message and test our program on the vehicle in the Lab on sunday at 11. @Priyanka-tig @Zeju1997

YuxuanSnow commented 4 years ago

@Zeju1997 The ROS will execute the function in the ROS::subscriber once a message occurred. There is no loop in the main function, but the message is subscribed continuously. For this reason, the function is executed continuously just like in a loop. We tried today to detect the slot length by use of the lidar data. We have written it in the sensor_data_callback, so that the detected length can be printed once a lidar message comes.

YuxuanSnow commented 4 years ago

Blick on the drive_ros_config, trajectory_tracking_controller, there are some examples on how to deal with the message with/in the uavcan.

YuxuanSnow commented 4 years ago

In the launch file(what we supposed to have), the current vehicle state we want to read is /canros/msg/phoenix_msgs/DriveState. In addition to last comment: the trajectory_tracking_control is the controller which changes the velocity and steering angle. In our parking process we can use its message.