ASME 2013 – D.R.O.I.D.

Filled under: Electronics, Projects

Date posted: April 23, 2013



D.R.O.I.D – Driven Remote Operated Inspection Device

Our engineering professor, Dr. Hammond, proposed that we compete in ASME’s Student Design Competition. The challenge was building a remote controlled and remote vision inspection device. The team leader role was given to me as I showed initiative in defining our tasks and goals.

The robot must be able to navigate a 5m x 7.75m obstacle course while completing a series of tasks: picking up a sensor, dropping off a sensor, pushing a button, and reading a gauge on the floor. Each completed task awards points and points are awarded based on much time was used to the complete the course. The challenge is that the operator will not have direct vision on the course and must solely rely on remote vision cameras.


The course layout.

The sensors are 1″ diameter by 2″ length dowel rods, the gauge is a slip of paper with numbers written on it, and the push button is a 1″ diameter circle 2″ above the ground.

After researching for many hours, I found several ways to approach building our robot and I gave these options to my team. Unfortunately my team had no technical skills or electronics experience, and most the egregious status is that they had little to no desire to take risks and learn about how to complete our mission. Even breaking down our mission into smaller tasks and goals, my team members were unable to cope with the daunting technical challenges. Besides some painting and a few hours of sound boarding from my team, I was charged to build the robot entirely myself. Challenge accepted.

Another few days of meticulous research, I compiled a BOM for approval from Student Government Association. Considering we started the project only six weeks before the competition, there was only one shot at getting the parts we needed in time so everything had to be designed before the parts were ordered.

At the time, this project was the most advanced and complicated project I ever worked on. There were many firsts for me here such as working on I2C protocol, working with RC servos, working with UDP over WIFI using C++, and building a ground based vehicle in general.

The bill of materials: BOM


The electronic and data flow chart.

Everything will be powered by a 12v 4Ah lead acid battery. There are four power rails: 12v for the wheel motors, 6v for the servos, 5v for the PICmicro MCU, and 3v for the guidance laser. Control data begins on an Xbox controller fed into a laptop then passed through WIFI to the onboard laptop and to the PICmicro via a HID USB connection. WIFI is used to pass data to the robot because the onboard vision system is going to be webcams and there will be a laptop onboard as a webcam server.

Looking back, here’s the point where someone with RC experience could of chimed in and said just to use a 2.4GHz transmitter, like the one found for RC cars or multirotors, and decode the PPM code from the receiver using the PICmicro MCU. My system was overly complex and took far to much time to setup, but it worked.



The MCU is a MicroChip PIC18F4450-I/P. Having used this MCU in a previous project, setting it up for this project took little effort. The servo controller board, Mini Maestro 12-Channel USB Servo Controller by Pololu, was simple to interface with using UART and was able to be configured with advanced options by connecting it to a PC via USB. The motor control board, Devantech RD02 – 12 Volt Robot Drive System, was also easy to setup using I2C. Posted at the bottom of this page is the firmware.


The firmware was developed in MikroC by MikroElektronika. This screen shot shots the fuse settings of the MCU.


The chassis layout was created in AutoCAD. The process was a little slow as I tried many variations and needed to have all the major components measured precisely. The above screen shot is a top down view.


The rest of the components ready for fabrication.


The machine toolpaths are all drawn up.


The part is simulated prior to fabrication to make sure the toolpaths are correct and the part contains no errors.


The chassis was cut out of ePVC plastic on my CNC router.


Cut and ready to be lifted.


Looking good!


Some more plastic parts for the undercarriage sensor containment system.


Because I ordered the wrong motor mount brackets and we would not get the rights ones in time, I made my own brackets.


Here are the motor mounting brackets glued up and ready. A little dirty, but solid.


A good start on the chassis. Later after some testing, I found the wheel radius was too large for the motors and needed to be reduced.


The rear sensor jettison device parts all cut out.

The rear jettison device with out the lower flaps.


The driver’s camera mounting brackets.


The driver’s camera system assembled.



The linear actuator parts.


The linear actuator assembled and ready to be mounted under the chassis. The linear actuator is used to press the button on the obstacle course. Since the system retracts the driver does not need to worry about clearance. On the tip of the actuator is a green laser diode that assists the operator in guiding the tip to the button. The servo is a continuous servo and there are limit switches at full retract and full extension.


There will have more pictures of D.R.O.I.D. assembled once I find them.

The robot was completed a week before the competition date which gave us enough time to make adjustments to the control system and decide on a driver. Jordan won the driver’s spot by besting everyone in a time trial on a mock obstacle course.




Here we are setup and ready to go!


After the competition all the Germanna students assembled for a group photo at the award ceremony.


More to come…


The PICmicro Firmware in MikroC.

Note: the magnetometer code does not function.