Need help with Self-Driving-Truck?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

134 Stars 40 Forks 64 Commits 0 Opened issues


Self-driving smallscale truck with wireless charging - Master thesis @ NTNU 2019

Services available


Need anything else?

Contributors list

SINTEF Self-Driving Truck w/induction charger

This repository contains code for a self-driving smallscale truck with wireless inductive charging. It is part of a master thesis in cybernetics and robotics at NTNU 2019, and contains code for three different path following methods: - SLAM with Pure Pursuit (and Stanley steering) steering controller - Supervised Deep Learning steering controller with OpenCV - Lane Detector with steering controller (PID) and OpenCV

The system is based on Ubuntu 16.04 with ROS Kinetic running on a Nvidia Jetson TX2. The truck itself is controlled by a Teensy 3.2 microcontroller. Other components used are the RPlidar A2M8 lidar and the Logitech C922 webcam.


To start the autonomous system, type:

$ roslaunch car_cmd run.launch  

ROS nodes

| Folder | Functionality | | ------ | ------ | |Teensy|Contains the code for the Teensy microcontroller| |ackermannodom | Estimates odometry for Ackermann vehicle with IMU | |arucodetector|For detecting ArUco markers with camera, also contains generator| |canchargernode|ROS CAN bus interface for Jetson TX2| |carcmd|Central node for publishing car commands to microcontroller| |cargui|Graphical User Interface for status overviews| |carsetuptf|TF broadcaster (baselink to laser)| |cvlanetracker|OpenCV Lane Detector for center offset measure| |dnnsimulator|Deep Learning controller for Udacity Simulator, with trainer| |dnnsteeringnode|Deep Learning steering controller, also contains trainer and data logger| |escvelpub|Estimates velocity from controller command (sensorless)| |heartbeatbroadcaster|Publishes alive msgs to microcontroller| |pathtrackers|Pure Pursuit and Stanley steering controllers| |rosbagresampler|Script for resampling a rosbag that has topics publishing at different sample rates| |rplidarpwmros|Modified RPlidar ROS node with PWM motor control ( |waypointlogger|ROS node for recording a new path

Also used:

| Name | Link | | ------ | ------ | |ROS Kinetic|| |Hector SLAM| | |Joy|| |ROS Serial|| |Udacity Self-Driving Car Simulator (Term 1, v2)||

A modified version of Hector SLAM is attached as a zip.

Demonstration video


Created for SINTEF Energy Research by Jon Eivind Stranden @ NTNU 2019

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.