Skip to content

Latest commit

 

History

History
32 lines (21 loc) · 1.36 KB

README.md

File metadata and controls

32 lines (21 loc) · 1.36 KB

Hardware Layer

Micro-controller

Hardware: Arduino Mega 2560

Purpose: Subscribes to the PWM values published from the motion_library_layer and sends it to the Arduino to apply variable voltages on thrusters accordingly, also publishes data from the depth sensor

  • Subscribe data on four different topics for four different motions. And publish pressure sensor data on a topic.
  • When a PWM is subscribed on a topic, it’s callback function is called. It first apply calibration on the PWM to get the individual PWM of each thruster, then send it to the thrusters.
  • In case of turn motion, it uses side thursters if robot is moving sideward also, else it uses thursters at end.

Camera and Image Processing

Hardware: Logitech Webcam

Purpose: Takes the raw data from the two cameras (front and bottom) and publish them on two different topics for processing on task nodes. It is done for each frame at a certain rate.

Inertial Measurement Unit (IMU)

Hardware: Navstick Nanopilot Board

Purpose: Publish the angle from the North axis.

  • Takes data from the navstik port.
  • Runs calculations to compute the angle from North axis.
  • Publishes the angle on a topic to motion library and task handlers.