An open API service indexing awesome lists of open source software.

https://github.com/betabison/umnitsa_robot

umnitsa code installed on robot
https://github.com/betabison/umnitsa_robot

Last synced: about 1 year ago
JSON representation

umnitsa code installed on robot

Awesome Lists containing this project

README

          

# umnitsa_robot
Umnitsa comes from the englsih transliteration of the russian word "умница" clever pesron or smarty-pants.
Umnitsa is designed to be a clever robot.

See also [umnitsa_msgs](https://github.com/betaBison/umnitsa_msgs), [umnitsa_gs](https://github.com/betaBison/umnitsa_gs), amd [umnitsa_mechanical](https://github.com/betaBison/umnitsa_mechanical).

umnitsa_robot is a [metapackage](http://wiki.ros.org/catkin/package.xml#Metapackages) for all the packages that run on the robot's computer. Packages are located in the `src/` directory and a brief description of each is included below.

## Setup
This package is currently compatible with the Raspberry Pi 3 B+ and Jetson Nano.

### Raspberry Pi
Install needed dependencies:
`pip install`

### Jetson Nano
Install needed dependencies:
`pip2 install Jetson.GPIO pygame nanpy`

Since this repo contains the realsesnse-ros repository as a submodule it's important to run the following command
`git clone --recursive `
If you failed to do this initially, then inside this repository run
`git submodule update --init --recursive`
The realsense-ros also requires the latest [Intel RealSense SDK](https://github.com/IntelRealSense/librealsense/releases). Jetson Nano [installation instructions](https://github.com/JetsonHacksNano/installLibrealsense).

#### Arduino Firmware
Follow directions here to upload correct firmware to arduino (https://github.com/nanpy/nanpy-firmware)

#### Pygame errors:
If there are erros installing pygame, you may need to add its dependencies.
`sudo apt install libsdl1.2-dev python-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libsmpeg-dev python-numpy subversion libportmidi-dev ffmpeg libswscale-dev libavformat-dev libavcodec-dev`

### Desktop
Since this repo contains the realsesnse-ros repository as a submodule it's important to run the following command
`git clone --recursive `
If you failed to do this initially, then inside this repository run
`git submodule update --init --recursive`
The realsense-ros also requires the latest [Intel RealSense SDK](https://github.com/IntelRealSense/librealsense/releases). Linux [installation instructions](https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md). You must install the dev package
`sudo apt install librealsense2-dkms librealsense2-utils librealsense2-dev`

Install pygame for the joystick controller
`pip2 install pygame`

## Package Overview
### umnitsa_robot
Empty package that declares packages inside the [metapackage](http://wiki.ros.org/catkin/package.xml#Metapackages).

### umnitsa_robot_launch
This package contains parameters adn launch files for the umnitsa robot. Parameters should be adjusted for compatibility with system setup.

### umnitsa_hardware
This package consists of the harware interfacing nodes as follows:
#### motors
outputs to the motor control board to control four DC motors

Normal mode:
The max throttle going forward is 71% on all motors, not 100%. This is so that moving the joystick in a steady
circle produces a steady cirlce of robot movement.

Turbo mode:
If the joystick is moved at all, one of the motors is set to 100% throttle. This makes it faster, but unfit for precise movement.

#### RGB
Outputs to the UmnitsaRGB custom PCB

#### ultrasonic
Inputs from the UmnitsaUltra custom PCB

### umnitsa_joystick
Package that contains the node that that receives input from a switch pro controller and outputs to the joystick message.