Gimbal for hyperspectral camera

  • CategoryInternship
  • Project dateSummer 2023
  • Skills requiredDesign, CAD, programming in ROS2, electronics

About this project

This summer, I had the opportunity to intern at Capra Robotics, an outdoor mobile robot startup company in Aarhus, Denmark! We built a gimbal and lift for a hyperspectral camera to go on top of their mobile robot platform. The idea is that the mobile robot could drive through orchards or vineyards at night, when nobody is around, and then take pictures of the fruit and use GNSS to tag each plant. This would let farmers know if they are ripe or have signs of mold or disease so they would know which crops need more attention or need to be removed.

I worked on electronics, controls, and programming of the gimbal, as well as fabrication and assembly of both the lift and gimbal. I also created a ROS2 node to enable serial connection to the gimbal motors, which would output encoder and IMU values and enable positional control. Because our internship was only 8 weeks, we designed everything to be 3D printed or purchased off-the-shelf. This added a unique challenge to designing and manufacturing our project, since the camera itself wasn't light, and it'd move quite a lot while driving.

Our gimbal could move in the pitch and yaw, allowing the camera to aim at targets. Because sunlight would interfere with our hyperspectral images, we decided to deploy the robot at night, so it needed to have lights mounted on-board to light the fruits. Because the field of view of the hyperspectral camera was so small, we also decided to add a Realsense RGB depth camera so that the robot would be able to "see" more before narrowing in on a bunch of grapes. We also added several interesting elements to our design to improve its stability, protect its electronics and lenses, and make controls as easy as possible. Here's a video of me remote-controlling the camera!

The vertical lift is based on a double reverse four-bar linkage system to ensure the gimbal remains parallel to the ground during lifting. The holes in the 40x40 aluminum extrusions and flat plate aluminum were milled to ensure collinearity. The black pieces are 3D-printed at high infill (80% to 100%) to improve rigidity. Finally, the entire assembly was mounted to a wooden plate and onto the robot’s cover. In order to control the lift from the remote control, we use a 2-channel switch connected to the receiver, which we can then use to trigger the linear actuator. The height of the whole assembly could be reported back using a potentiometer attached to the lift via linkages. Overall, the lift is able to change height from 32.5 cm to 105 cm.


In order to power it all, we pulled power from the robot itself, taking care that the overall power draw of all the devices running simultaneously wouldn't overload it. We had two DC-DC converters: one which would always be on as long as the robot was on, and one "safe power" which would turn off when you hit the emergency stop. Elements which moved (the lift and gimbal) would be connected to the safe power so that they could be stopped in case of emergency. The linear actuator was driven by a controller with built-in overcurrent protection, so we designed mechanical stops for the lift. When the lift would go too high or too low, it would collide with the mechanical stops, thus causing a spike in current through the controller, causing it to shut off the linear actuator and prevent the lift from breaking itself. Meanwhile, the camera could be connected to the constant power since it wasn't actuated.

At the end of our internship, we went to Kimesbjerggaard Vingård, a vineyard in the countryside, to test our robot! We were able to remote control the robot, gimbal, and lift successfully and take some photos. This is a visualization of the hyperspectral data. The eight images you see radially are the first-order diffractions, and the middle one is the weighted average of these diffractions.

Working at Capra Robotics was an amazing opportunity to try out working at a startup and explore a new country. I was able to guide my own project and move at my own pace, applying my knowledge of electronics, programming, and mechanical engineering all at the same time. It was a great combination of things within my comfort zone that I had prior experience with and new things I’d never done before. Capra was great at giving us help with elements we were unsure about and plenty of freedom to guide our own project.

I really enjoyed living in Denmark, which was a wonderful change of pace with beautiful scenery. I definitely understand why it’s one of the happiest countries in the world!