Skip to content

jumpercc/ballsbot

Repository files navigation

Miniature self driving car

A video how to construct this car (russian, 1/16 (small) version)

Android app for teleoperation

Requirements

Hardware: common for 1/16 and 1/10 models

  • Nvidia Jetson Nano Developer Kit aliexpress
  • 64 GB micro sd card
  • inner (not usb!) wi-fi card like that one and IPEX Connector antennas for it
  • T208 (1/16 preferred, 1/10 required) or T200 18650 UPS HAT Shield for NVIDIA Jetson Nano Developer Kit aliexpress
  • 6 (for T208) or 4 (for T200) 18650 Lithium Rechargeable Battery aliexpress
  • YDLIDAR X2L or similar aliexpress
  • 9-DOF IMU BNO055 aliexpress
  • PCA9685 16 Channel 12-bit PWM Servo motor Driver I2C aliexpress
  • short USB - USB-C data cable like this one
  • access to 3D printer
  • cables, screws, etc
  • tools

Hardware: 1/16 specific

  • Remo Hobby Smax 1:16 RH1635
  • SURPASS HOBBY KK 35A ESC Waterproof Electric Speed Controller for 1/16 RC Car Brushless Motor Power system aliexpress
  • Two KY-003 hall sensor module for Arduino aliexpress
  • neodymium magnet about 20x3x2 mm size
  • IMX219 Camera 8MP Infrared Night Vision 160 Degree FOV + 2 Infrared LED Lights aliexpress
  • 4 Channel IIC I2C Logic Level Converter Bi-Directional Module 5V to 3.3V aliexpress
  • two laser distance sensors VL53L0X (6 pin) aliexpress
  • additional camera, servos and others for manipulator

Hardware: 1/10 with manipulator specific

  • Remo Hobby Mmax 1:10 RH1035
  • 2x Raspberry Pi Camera V2 aliexpress
  • 2x IMX219 camera sensors aliexpress
  • 2x longer CSI cables
  • engine (preferred) aliexpress
    • HobbyWing QuicRun 3650 Sensored Brushless G2 (25.5T)
    • QuicRun 10BL60
    • programming card
    • 3s accumulator (like Sunpadow Li-Po 3S1P 5200mAh) market
  • 5x strong servos (I have 3x 30kg and 2x 20kg) aliexpress
  • 4x AS5600 magnetic encoders aliexpress
  • 4x scooter wheels (like HIPE 5spoke 100 mm) market
  • 1 meter thin hdmi cable
  • Arducam CSI to HDMI Cable Extension Module (pack of 2) arducam
  • LTE, GPS (FIXME: haven't tested yet)
  • 7x laser distance sensors VL53L0X aliexpress
  • TCA9548 I2C 8-way multi-channel Expansion Board aliexpress

Software

  • JetPack 4.6 configuration steps
  • code from this repo
  • ROS
  • Jupyter (pip3 install notebook)
  • YDLidar-ros for lidar (use pdf too) and install tf ros package
  • pip3 install adafruit-pca9685 for PCA9685
  • RTIMULib for IMU and you need this fix (for i2c bus 0, except AS5600 magnetic encoder via TCA9548):
$ git diff
diff --git a/RTIMULib/RTIMUSettings.cpp b/RTIMULib/RTIMUSettings.cpp
index 783dbff..9c0333e 100644
--- a/RTIMULib/RTIMUSettings.cpp
+++ b/RTIMULib/RTIMUSettings.cpp
@@ -470,7 +470,7 @@ void RTIMUSettings::setDefaults()
     m_imuType = RTIMU_TYPE_AUTODISCOVER;
     m_I2CSlaveAddress = 0;
     m_busIsI2C = true;
-    m_I2CBus = 1;
+    m_I2CBus = 0;
     m_SPIBus = 0;
     m_SPISelect = 0;
     m_SPISpeed = 500000;

SD card image

You can download SD card images from here. Install bare JetPack 4.6 first to upgrade jetson firmware. Images are for 64GB SD cards. gunzip -c ballsbot-sd-2021-02-11.tgz | sudo dd of=/dev/sdb

Login& password: ballsbot.

You need to connect to your wi-fi and make this connection "avaliable for all users" (checkbox in network settings).

Dev docker

docker build -t ballsbot -f docker/Dockerfile .
docker run -d -v `pwd`:/home/ballsbot/projects/ballsbot -p127.0.0.1:8080:8080 ballsbot
docker exec -it HASH-HERE bash

rm /home/ballsbot/catkin_ws/src/ballsbot_detection
source /opt/ros/melodic/setup.bash && cd /home/ballsbot/catkin_ws/ && catkin_make && source devel/setup.bash

/home/ballsbot/projects/ballsbot/scripts/run-jupyter.sh --allow-root --port=8080

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published