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

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.


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.

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.

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.
