{"id":24221596,"url":"https://github.com/michdo93/robotcar-pkg","last_synced_at":"2025-06-22T17:08:25.468Z","repository":{"id":135032762,"uuid":"281689621","full_name":"Michdo93/robotcar-pkg","owner":"Michdo93","description":null,"archived":false,"fork":false,"pushed_at":"2020-11-20T21:31:46.000Z","size":47,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-04T00:45:31.812Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Michdo93.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-07-22T13:46:53.000Z","updated_at":"2020-11-20T21:31:49.000Z","dependencies_parsed_at":"2023-05-10T17:16:22.765Z","dependency_job_id":null,"html_url":"https://github.com/Michdo93/robotcar-pkg","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Michdo93/robotcar-pkg","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Michdo93%2Frobotcar-pkg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Michdo93%2Frobotcar-pkg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Michdo93%2Frobotcar-pkg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Michdo93%2Frobotcar-pkg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Michdo93","download_url":"https://codeload.github.com/Michdo93/robotcar-pkg/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Michdo93%2Frobotcar-pkg/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261330123,"owners_count":23142482,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-14T06:19:39.630Z","updated_at":"2025-06-22T17:08:20.452Z","avatar_url":"https://github.com/Michdo93.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# robotcar-pkg\n\nThe robotcar-pkg is used for sending informations to and getting informations from the [RobotCar](https://github.com/Michdo93/robotcar). At first you have to make sure that the roscore is running. For controlling the RobotCar the [robotcar-controller](https://github.com/Michdo93/robotcar_controller) is needed. To receive informations from actors or sensors the [robotcar_subscriber](https://github.com/Michdo93/robotcar_subscriber) or the [robotcar_sensorfusion_examples](https://github.com/Michdo93/robotcar_sensorfusion_examples) package could be used.\n\nThe ROS Nodes which uses the Publisher-Subscriber-Patter are using drivers, librares and configurations from the [robotcar](https://github.com/Michdo93/robotcar) to operate its actors and sensors.\n\nTherefore it uses the [std_msgs](http://docs.ros.org/en/melodic/api/std_msgs/html/index-msg.html), the [sensor_msgs](http://docs.ros.org/en/api/sensor_msgs/html/index-msg.html) and the [robotcar_msgs](https://github.com/Michdo93/robotcar_msgs).\n\n## How to Use\n\nAs recommended in the [ROS Tutorials](https://wiki.ros.org/ROS/Tutorials) the control computer respectively operating computer should run the roscore. So at first open a terminal window and execute `roscore`. After that open a second terminal window and run `roslaunch robotcar robotcar.launch`. (If not you can start each node manually).\n\nThe RobotCar uses its `hostname` as first variable for the topic adresses. So as example you can subscribe from `robotcar/raspicam/image/compressed` a [CompressedImage Message](http://docs.ros.org/en/api/sensor_msgs/html/msg/CompressedImage.html) if the `hostname` of the RobotCar was `robotcar`. Fpr renaming the hostname you can use following [link](https://thepihut.com/blogs/raspberry-pi-tutorials/19668676-renaming-your-raspberry-pi-the-hostname).\n\n## Launch Files\n\nThe robotcar-pkg provides following two launch files:\n\n|    Launch Files      |                 Subscription                |\n|--------------------- | --------------------------------------------|\n| robotcar.launch      | Starts all nodes of the RobotCar            |\n| ultrasonic.launch    | Starts all ultrasonic nodes of the RobotCar |\n\nIf further developments creates newer nodes you should edit the robotcar.launch file. If you want to test only a few nodes which as example are used for an ADAS you can [create a new launch file](http://wiki.ros.org/roslaunch/XML).\n\nRecommendation: The robotcar.launch should be enabled with a [services file for systemd](https://www.raspberrypi.org/documentation/linux/usage/systemd.md) so that all nodes would be available after the startup of the RobotCar.\n\n## CameraMovement Node\n\nCurrently not finished!\n\n(You can run it manually with `rosrun robotcar cameraMovement.py`)\n\n## Control Node\n\nIt subcribes from the [RobotCarController Node](https://github.com/Michdo93/robotcar_controller).\n\n|                 Topic Address                |            Message Type       |\n|--------------------------------------------- | ------------------------------|\n|robot_host + /control/speed                   | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)          |\n|robot_host + /control/steer                   | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)          |\n\nAlso it publishes to the Motor Node and to the Steer Node to produce the driving process.\n\n|                 Topic Address                |            Message Type       |\n|--------------------------------------------- | ------------------------------|\n| hostname + /motor/set                        | [robotcar_msgs/Motor](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Motor.md)          |\n| hostname + /steer/set                        | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)          |\n\nYou can run it manually with `rosrun robotcar control.py`\n\n## FrontInfrared Node\n\nIt publishes informations from the front infrared sensor. The IRGP2Y0A02YKOF driver from the [robotcar](https://github.com/Michdo93/robotcar) and [Adafruit Python MCP3008](https://github.com/adafruit/Adafruit_Python_MCP3008) is used. A system wide installation guide you can found at the [RobotCar](https://github.com/Michdo93/robotcar).\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /infrared/front/distance                   | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /infrared/front/relative_velocity          | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar frontInfrared.py`\n\n## FrontLeftUltrasonic Node\n\nIt publishes informations from the left front ultrasonic sensor. The UltrasonicHCSR04 driver from the [robotcar](https://github.com/Michdo93/robotcar) is used.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /ultrasonic/front/left/distance            | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /ultrasonic/front/left/relative_velocity   | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar frontLeftUltrasonic.py`\n\n## FrontRightUltrasonic Node\n\nIt publishes informations from the right front ultrasonic sensor. The UltrasonicHCSR04 driver from the [robotcar](https://github.com/Michdo93/robotcar) is used.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /ultrasonic/front/right/distance           | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /ultrasonic/front/right/relative_velocity  | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar frontRightUltrasonic.py`\n\n## FrontTimeOfFlight Node\n\nIt publishes informations from the front time-of-flight sensor. The ToFVL53L1X driver from the [robotcar](https://github.com/Michdo93/robotcar) and [vl53l1x-python library](https://github.com/pimoroni/vl53l1x-python) is used. A system wide installation guide you can found at the [RobotCar](https://github.com/Michdo93/robotcar).\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /time_of_flight/front/distance             | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /time_of_flight/front/relative_velocity    | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar frontTimeOfFlight.py`\n\n## FrontUltrasonic Node\n\nIt publishes informations from the front ultrasonic sensor. The UltrasonicParallax driver from the [robotcar](https://github.com/Michdo93/robotcar) is used.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /ultrasonic/front/distance                 | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /ultrasonic/front/relative_velocity        | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar frontUltrasonic.py`\n\n## GPS Node\n\nNeither created nor finished yet because the GPS module seems not working.\n\n## Imu Node\n\nIt publishes informations from the Imu of the Sense HAT. The [Sense HAT Library](https://github.com/astro-pi/python-sense-hat) is needed. Further informations you can get from the [Sense HAT API](https://pythonhosted.org/sense-hat/api/). A system wide installation guide you can found at the [RobotCar](https://github.com/Michdo93/robotcar).\n\n|                       Topic Address                        |             Message Type        |\n|----------------------------------------------------------- | --------------------------------|\n| hostname + /imu                                            | [sensor_msgs/Imu](http://docs.ros.org/en/api/sensor_msgs/html/msg/Imu.html)                |\n| hostname + /imu/raw                                        | [sensor_msgs/Imu](http://docs.ros.org/en/api/sensor_msgs/html/msg/Imu.html)                |\n| hostname + /imu/accelerometer                              | [robotcar_msgs/Accelerometer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Accelerometer.md)    |\n| hostname + /imu/accelerometer/pitch                        | [robotcar_msgs/Pitch](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Pitch.md)    |\n| hostname + /imu/accelerometer/roll                         | [robotcar_msgs/Roll](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Roll.md)     |\n| hostname + /imu/accelerometer/yaw                          | [robotcar_msgs/Yaw](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Yaw.md)      |\n| hostname + /imu/accelerometer/raw                          | [robotcar_msgs/Accelerometer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Accelerometer.md)    |\n| hostname + /imu/accelerometer/raw/x                        | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)     |\n| hostname + /imu/accelerometer/raw/y                        | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)     |\n| hostname + /imu/accelerometer/raw/z                        | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)     |\n| hostname + /imu/gyroscope                            | [robotcar_msgs/Gyroscope](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Gyroscope.md)        |\n| hostname + /imu/gyroscope/pitch                            | [robotcar_msgs/Pitch](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Pitch.md)        |\n| hostname + /imu/gyroscope/roll                             | [robotcar_msgs/Roll](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Roll.md)         |\n| hostname + /imu/gyroscope/yaw                              | [robotcar_msgs/Yaw](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Yaw.md)          |\n| hostname + /imu/gyroscope/raw                        | [robotcar_msgs/Gyroscope](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Gyroscope.md)        |\n| hostname + /imu/gyroscope/raw/x                            | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)         |\n| hostname + /imu/gyroscope/raw/y                            | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)         |\n| hostname + /imu/gyroscope/raw/z                            | [std_msgs/Float64](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html)         |\n| hostname + /imu/magenetometer                        | [robotcar_msgs/Magnetometer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Magnetometer.md)     |\n| hostname + /imu/magenetometer/raw                    | [robotcar_msgs/Orientation](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Orientation.md)      |\n| hostname + /imu/orientation                          | [robotcar_msgs/Orientation](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Orientation.md)      |\n| hostname + /imu/orientation/degrees                  | [robotcar_msgs/Orientation](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Orientation.md)      |\n| hostname + /imu/orientation/radians                  | [robotcar_msgs/Orientation](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Orientation.md)      |\n| hostname + /imu/orientation/north                    | [robotcar_msgs/Magnetometer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Magnetometer.md)     |\n        \nYou can run it manually with `rosrun robotcar imu.py`\n\n## Meteorological Node\n\nIt publishes informations from the meteorological sensors of the Sense HAT. The [Sense HAT Library](https://github.com/astro-pi/python-sense-hat) is needed. Further informations you can get from the [Sense HAT API](https://pythonhosted.org/sense-hat/api/). A system wide installation guide you can found at the [RobotCar](https://github.com/Michdo93/robotcar).\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /meteorological/pressure                   | [sensor_msgs/FluidPressure](http://docs.ros.org/en/api/sensor_msgs/html/msg/FluidPressure.html)     |\n| hostname + /meteorological/humidity                   | [sensor_msgs/RelativeHumidity](http://docs.ros.org/en/api/sensor_msgs/html/msg/RelativeHumidity.html)  |\n| hostname + /meteorological/temperature                | [sensor_msgs/Temperature](http://docs.ros.org/en/api/sensor_msgs/html/msg/Temperature.html)       |\n\nYou can run it with `rosrun robotcar meteorological.py`\n\n## Motor Node\n\nIt subscribes informations from the [Controller](https://github.com/Michdo93/robotcar_controller) or an ADAS so that the motor can produce a desired driving process. The JGA25_370 driver from the [robotcar](https://github.com/Michdo93/robotcar) is used.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /motor/set                                | [robotcar_msgs/Motor](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Motor.md)            |\n| hostname + /motor/set/rate                                | [std_msgs/Int8](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Int8.html)            |\n| hostname + /motor/set/direction                                | [std_msgs/String](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/String.html)            |\n| hostname + /motor/set/ms                             | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/set/kmh                            | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/set/mph                            | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/engine/stop                                | [std_msgs/Bool](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Bool.html)            |\n\nAlso it publishes informations from the motor. In addition to sensor information, an ADAS probably also needs this informations.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /motor/get                                | [robotcar_msgs/Motor](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Motor.md)            |\n| hostname + /motor/get/rate                                | [std_msgs/Int8](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Int8.html)            |\n| hostname + /motor/get/direction                                | [std_msgs/String](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/String.html)            |\n| hostname + /motor/get/ms                             | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/get/kmh                            | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/get/mph                            | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/get/ms/max                             | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/get/kmh/max                            | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/get/mph/max                            | [robotcar_msgs/Velocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Velocity.md)         |\n| hostname + /motor/get/dc_max                                | [std_msgs/Int8](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Int8.html)            |\n| hostname + /motor/get/duty_cycle                            | [robotcar_msgs/DutyCycle](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/DutyCycle.md)        |\n| hostname + /motor/get/duty_cycle/frequency                            | [robotcar_msgs/DutyCycle](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/DutyCycle.md)        |\n| hostname + /motor/get/pwm                            | [robotcar_msgs/DutyCycle](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/DutyCycle.md)        |\n| hostname + /motor/get/rpm                            | [robotcar_msgs/Rpm](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Rpm.md)              |\n| hostname + /motor/get/rpm/current                            | [robotcar_msgs/Rpm](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Rpm.md)              |\n| hostname + /motor/get/rpm/max                            | [robotcar_msgs/Rpm](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Rpm.md)              |\n        \nYou can run it manually with `rosrun robotcar motor.py`\n\n## Radar Node\n\nWarning: The radar sensors a not working reliable! A use of the Radar Node is not recommend because the relative velocity is inaccurate! The CDM324, HB100 or IPM165 driver from the [robotcar](https://github.com/Michdo93/robotcar) could be used. It publishes informations from the radar sensor.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /radar                                     | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n| hostname + /radar/relative_velocity                   | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar radar.py`\n\n## RearInfrared Node\n\nIt publishes informations from the rear infrared sensor. The IRGP2Y0A02YKOF driver from the [robotcar](https://github.com/Michdo93/robotcar) and [Adafruit Python MCP3008](https://github.com/adafruit/Adafruit_Python_MCP3008) is used. A system wide installation guide you can found at the [RobotCar](https://github.com/Michdo93/robotcar).\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /infrared/rear/distance                    | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /infrared/rear/relative_velocity           | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar rearInfrared.py`\n\n## RearLeftUltrasonic Node\n\nIt publishes informations from the left rear ultrasonic sensor. The UltrasonicHCSR04 driver from the [robotcar](https://github.com/Michdo93/robotcar) is used.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /ultrasonic/rear/left/distance             | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /ultrasonic/rear/left/relative_velocity    | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar rearLeftUltrasonic.py`\n\n## RearRightUltrasonic Node\n\nIt publishes informations from the right rear ultrasonic sensor. The UltrasonicHCSR04 driver from the [robotcar](https://github.com/Michdo93/robotcar) is used.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /ultrasonic/rear/right/distance            | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /ultrasonic/rear/right/relative_velocity   | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar rearRightUltrasonic.py`\n\n## RearTimeOfFlight Node\n\nIt publishes informations from the rear time-of-flight sensor. The ToFVL53L1X driver from the [robotcar](https://github.com/Michdo93/robotcar) and [vl53l1x-python library](https://github.com/pimoroni/vl53l1x-python) is used. A system wide installation guide you can found at the [RobotCar](https://github.com/Michdo93/robotcar).\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /time_of_flight/rear/distance              | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /time_of_flight/rear/relative_velocity     | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar rearTimeOfFlight.py`\n\n## RearUltrasonic Node\n\nIt publishes informations from the rear ultrasonic sensor. The UltrasonicParallax driver from the [robotcar](https://github.com/Michdo93/robotcar) is used.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /ultrasonic/rear/distance                  | [sensor_msgs/Range](http://docs.ros.org/en/api/sensor_msgs/html/msg/Range.html)             |\n| hostname + /ultrasonic/rear/relative_velocity         | [robotcar_msgs/RelativeVelocity](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/RelativeVelocity.md)|\n\nYou can run it manually with `rosrun robotcar rearUltrasonic.py`\n\n## Steer Node\n\nIt subscribes informations from the [Controller](https://github.com/Michdo93/robotcar_controller) or an ADAS so that the steer servo motor can produce a desired driving process. The ServoMotor driver from the [robotcar](https://github.com/Michdo93/robotcar) and the Adafruit_Python_PCA9685-master library is used. A system wide installation guide you can found at the [RobotCar](https://github.com/Michdo93/robotcar).\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /steer/set                                | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/set/pwm                                | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/set/degree                                | [robotcar_msgs/ServoDeg](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoDeg.md)         |\n| hostname + /steer/reset                                | [std_msgs/Bool](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Bool.html)            |\n\nAlso it publishes informations from the motor. In addition to sensor information, an ADAS probably also needs this informations.\n\n|                       Topic Address                   |             Message Type        |\n|------------------------------------------------------ | --------------------------------|\n| hostname + /steer/get                                | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/pwm                                | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/degree                                | [robotcar_msgs/ServoDeg](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoDeg.md)         |\n| hostname + /steer/get/intervall                      | [robotcar_msgs/ServoIntervall](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoIntervall.md)   |\n| hostname + /steer/get/intervall/pwm                      | [robotcar_msgs/ServoIntervall](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoIntervall.md)   |\n| hostname + /steer/get/intervall/degree               | [robotcar_msgs/ServoIntervallDeg](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoIntervallDeg.md)|\n| hostname + /steer/get/channel               | [std_msgs/Int8](http://docs.ros.org/en/melodic/api/std_msgs/html/msg/Int8.html)            |\n| hostname + /steer/get/min                            | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/neutral                        | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/max                            | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/min/pwm                            | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/neutral/pwm                        | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/max/pwm                            | [robotcar_msgs/Steer](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/Steer.md)            |\n| hostname + /steer/get/min/degree                     | [robotcar_msgs/ServoDeg](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoDeg.md)         |\n| hostname + /steer/get/neutral/degree                 | [robotcar_msgs/ServoDeg](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoDeg.md)         |\n|robot_host + /steer/get/max/degree                     | [robotcar_msgs/ServoDeg](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoDeg.md)         |\n| hostname + /steer/get/range                          | [robotcar_msgs/ServoRange](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoRange.md)       |\n| hostname + /steer/get/range/pwm                          | [robotcar_msgs/ServoRange](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoRange.md)       |\n| hostname + /steer/get/range/degree                   | [robotcar_msgs/ServoRangeDeg](https://github.com/Michdo93/robotcar_msgs/blob/master/doku/ServoRangeDeg.md)    |\n        \nYou can run it manually with `rosrun robotcar steer.py`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichdo93%2Frobotcar-pkg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmichdo93%2Frobotcar-pkg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmichdo93%2Frobotcar-pkg/lists"}