Skip to content
Jangara Bliss
All projects
Vision & PerceptionFeaturedMay – Sep 2025

Robotic Inspection of Photovoltaic Hotspots

Two industrial robots revived from a lab closet, a YOLOv8 model trained on 1,682 thermal images, and mAP@0.5 = 0.985 on hotspot detection.

Role — Solo researcher — hardware restoration through model deployment

Sawyer / BaxterROS NoeticMoveItGazeboYOLOv8Blender synthetic dataPython
Problem
Drone-based PV inspection is fast but misses underside faults and close-range detail. A robotic arm can inspect panels from angles drones can't reach — if the perception pipeline is accurate enough to trust.
System type
Perception pipeline + robotic inspection platform
Why it matters
Thermal faults degrade solar output and can cascade. Beyond the energy application, the project is a full-lifecycle proof: dead hardware to deployed AI, with the metrics to show for it.
Team context
Solo project under Dr. Kevin Wedeward, Fort Lewis College (summer research internship).
Grid of thermal images with YOLOv8 hotspot detections drawn as bounding boxes
YOLOv8 hotspot detections on thermal imagery.

01

Overview

A solo research project under Dr. Kevin Wedeward: a lab-validated system for detecting thermal faults in photovoltaic panels using a 7-DoF Sawyer arm and a custom-trained YOLOv8 model. The arm performs automated multi-angle thermal inspections — including underside components that drone-based inspection misses. The project spanned the full lifecycle: first reviving two industrial robots dormant since 2018 (tracing a Sawyer boot failure to a dead CMOS battery that re-enabled Secure Boot, then rebuilding the OS on a new SSD), then building the ROS Noetic / MoveIt / Gazebo environment, engineering a Blender synthetic-data pipeline, and training and validating the detector on live hardware. Placed 2nd at FLC's Physics & Engineering Symposium.

System architecture

Two data sources — Blender-rendered synthetic imagery and real multi-angle thermal captures — train a YOLOv8 detector, which runs against the Sawyer's live thermal feed as the arm sweeps panels from angles drones can't reach. Edge cases discovered on hardware feed the next training round.

  1. Blender synthetic renders + real thermal captures
  2. YOLOv8 training
  3. Hotspot detector
  4. Sawyer 7-DoF multi-angle sweep
  5. Live inspection & localization
PV inspection pipeline: synthetic and real thermal data into YOLOv8, deployed on a Sawyer arm
Data → detector → robot pipeline.
Raw thermal capture grid of photovoltaic panels
Multi-angle thermal captures.
Baxter robot alongside its RViz motion-planning visualization
Restored hardware with RViz motion planning.
Gazebo simulation of the inspection workspace
Gazebo simulation of the inspection cell.

02

Contributions

  • Revived two non-functional industrial robots with no vendor support — diagnosed the Sawyer's boot failure (dead CMOS battery → BIOS reset → incompatible Secure Boot), disassembled the controller, and rebuilt the OS on a new SSD with fresh Intera software.
  • Built the complete ROS Noetic workstation and control environment; resolved firmware–SDK version conflicts and configured MoveIt and Gazebo for motion planning and simulation.
  • Engineered a synthetic-data pipeline in Blender + Python to generate training imagery at scale; explored NVIDIA Omniverse for scalable generation.
  • Trained a YOLOv8 hotspot detector on 1,682 thermal images and validated it live on Baxter/Sawyer hardware with real-time thermal feeds.

03

Evidence & evaluation

Evidence

Detection metrics

attached

mAP@0.5 = 0.985 · 98% detection accuracy · trained on 1,682 thermal images.

Live hardware validation

attached

Validated on Baxter/Sawyer hardware with real-time thermal feeds.

Pipeline diagram

attached

Data-to-deployment pipeline in the gallery.

Edge-case gallery

pending

Curate the inputs that break the detector — honest operating envelope.

Metrics

mAP@0.5

0.985

Detection accuracy

98%

Training set

1,682 images

Symposium result

2nd place

04

Limitations

  • Lab-validated, not field-deployed — panel variety, weather, and mounting geometry in the field remain untested.
  • Synthetic data closed the volume gap, but the synthetic-to-real distribution shift for rare fault types isn't yet quantified.

05

Lessons & tradeoffs

  • The first 100+ hours were hardware revival, not AI — embodied systems reward system-level thinking and patience with legacy machines.
  • Synthetic data is leverage: Blender scripting turned a data-starved problem into a data-rich one, but only after the real captures defined what 'realistic' meant.

06

Artifacts