System Design

Based on our sponsor’s needs, we have developed the following objectives tree, with key objectives highlighted in yellow:

System Requirements

In order to achieve our objectives, we have established the following requirements for our project, which are separated into functional/performance and non-functional:

Functional 1Localize itself within drip pan
Perf 1.1Update localization map with a frequency of 10 Hz
Perf 1.2Build localization map with a 1 cm precision
Perf 1.3Build localization map with a 5 degree precision
Functional 2Sense environment
Perf 2.1Update planning geometry with a frequency of 10 Hz
Perf 2.2Build planning geometry with a 1 cm precision
Perf 2.3Build planning geometry with a 5 degree precision
Perf 2.4Identify 80% of creosote in pan’s surface
Functional 3Plan movement
Perf 3.1Update movement plan with a frequency of 1 Hz
Perf 3.2Plan movement inside valid zones 100% of the time
Functional 4Move itself
Perf 4.1Stay inside valid zones 100% of the time
Perf 4.2Cover the length of the drip pan in less than 1 hour
Functional 5Clean creosote
Perf 5.1Clean creosote from drip pan surface in less than 5 hours
Perf 5.2Displace enough creosote to achieve bronze level on 80% of surface
Perf 5.3Displace enough creosote to achieve bronze level on 90% of weld area
Functional 6Communicate with user
Perf 6.1System shall send and receive data at a rate of 10 Hz
Functional requirements
NF 1Have at least 2 hours of battery life
NF 2Have a recharging system
NF 3Be operable by plant engineer
NF 4Cost at most $5000
NF 5Be robust to creosote
Non-functional requirements

Functional Architecture

In order to implement the functional requirements described above, the team came up with the following functional architecture:

Cyberphysical Architecture

Evidently, the functions the system will perform have to be instantiated by physical components. This relationship is captured by the cyberphysical architecture shown below:

System Design Description

After deliberation, the team came up with many ideas on how to best implement the architectures depicted. Several platforms were considered, including: a roomba-like mobile robot, which was discarded on the grounds that it would be hard to make this robot compact enough to go under some obstacles; and a humanoid robot that would go around the factory cleaning the pans, which was also discarded because of the high complexity of the factory floor.

Finally, we settled on a simple, yet effective, design: having a robotic arm sit on top of a mobile platform, which in turn is mounted on the drip pan’s rails. The arm, holding a cleaning end effector, would then pull the accumulated creosote toward the drain. This solution is robust, simple to implement and very effective, as it allows the robot to clean the surface of the pan without having to go under the rails or other objects.

Top-down sketch of the system on a drip pan

Considering this platform, our robot is made up of four major subsystems: the robotic arm, the mobile platform, the cleaner end effector and a computer for vision and planning. Details on each subsystem are as follows:

Robotic Arm

After considering many options, we decided to use a 6-DoF UFactory arm in our system. It is cheap, efficient and met all our specifications such as maximum weight and torque. It is also ROS-compatible, and can be added to simulations for testing before deployment.

UFactory arm
Arm in simulation using ROS MoveIt with a CAD model of the drip pan

Mobile Platform

Since there was no commerical platform that suited our needs, we decided to develop one from scratch. We are currently finalizing a CAD model for it, as shown below.

Technical drawing of the mobile platform

Cleaner End Effector

One of the biggest problems we found when visiting the factory was that our sponsor had found no effective mechanical tool to displace the creosote. The squeegee they were using oftenhad to be coupled with chemical to aid in the cleaning, which meant losing that part of the creosote. Thus, we had to do some research on which tool to use.

We tested many options – including commercial squeegees, a heated scraper and even paper towels – before settling on our final choice: a folded strip of Viton rubber attached to a handle.

Our custom-made Viton squeegee

Perception/Computing

Identifying creosote and obstacles can be a very resource-intensive task, so we need an appropriate setup. After considering many options, we settled on using an Nvidia Jetson Tx2 coupled with an Intel RealSense camera for vision, coupled with an LED ring for consistent lighting.

Jetson Tx2 used for vision