OSU-Autonomous Golf Cart

Overview

A golf cart is being converted to an Autonomous Golf Cart (AGC) as an integrated teaching and research platform that can be extensively used in interdisciplinary capstone design projects and as a major teaching facility in the undergraduate Endeavor Lab. The AGC is currently equipped with basic sensors for autonomous navigation, including LIDAR and a forward facing camera for collision and obstacle avoidance. Drive-By-Wire (DBW) steering, speed and brake controllers have been added with microcontrollers such as Arduino, Nucleo, etc and added motors. A Jetson Xavier is installed to process sensor data and manage higher level tasks. In addition, several human-machine interfaces are installed, including a speaker and an LED display, for making the intent of the AGC transparent to pedestrians and other vehicles.

Low-level controls

Steering control:

  • There is a mechanical linkage between the steering wheel and the front wheels of the golf cart.
  • A servo motor has been attached to the steering to give directional inputs.
  • A potentiometer is used to provide feedback of the servo motor position.
  • PWM and PD control was used to regulate the motor.
  • A mapping between the steered angle and the wheel turning angle has been constructed.

Speed control:

  • The golf cart is manufactured with a closed-loop On-Board Speed Controller (OBSC).
  • The OBSC receives commands by-wire from the accelerator pedal, which acts as a potentiometer in sending varied voltages relative to accelerator depression.
  • A digital potentiometer (MCP4131 microchip) is used to electronically emulate the physical accelerator position. This preserves safety features of the on-board speed controller.
  • A Karlsson Robotics Incremental Rotary Encoder (E6C2-CWZ3E) is used in friction to measure the speed of the golf cart with a resolution of 0.04 m/s. These measurements complement feedback from on-board tachometers.
  • PI control was implemented to complement the on-board speed controller.

Brake control (Senior Design 2019):

  • There is a cable mechanically linking the brake pedal with the rear brake drums.
  • A servo motor has been added to manipulate the brake cable.
  • A coupling allows both the servo motor and the brake pedal to manipulate the brake cable.
  • A potentiometer has been added to provide angular feedback of the servo motor position.
  • P control was implemented to regulate the servo motor.

System integration and testing:

  • We are using Robotic Operating System (ROS) to organize communication between various software and embedded components.
  • Relevant testing data is stored in ROSBags for post-processing.
  • Hardware-in-the-loop testing is typically conducted before any road testing.

Current work

Path planning and waypoint tracking

System Integration of Low Level Control:

  • Merging independent speed, steering, and brake controllers into a single Drive-By-Wire (DBW) control unit.

Perception

  • Developed fast obstacle detection and location with LIDAR

Future work

Perception:

  • Acceleration of LIDAR data processing on GPUs of Jetson Xavier
  • Fusing of LIDAR, camera, and GPS data to locate and identify obstacles.

Navigation:

  • Utilize VectorNav VN-300 GPS and local maps to route between user-defined points-of-interest
  • Explore integration with Autoware.AI and its existing navigation stack

Behavior:

  • Utilize state machines and artificial intelligence to develop adaptive response in a dynamic environment