Giacomo Cerino Logo Image
Giacomo Cerino

Conveyor Belt Automation System

A self-contained automated system designed to remotely control a conveyor belt carrying mixed concrete inside ERLEtek's concrete printing robot. The system integrates custom control electronics, firmware, and software for seamless operation from a laptop or the robot itself.

Conveyor Belt Automation System

Project Overview

ERLEtek, a robotics startup specializing in concrete 3D printing, required an automated conveyor belt system to transport mixed concrete into their large-scale printing robot. The challenge was to create a self-contained, remotely controllable system that could be operated either independently from a laptop or integrated with the main robotic platform. The system needed moreover, to be reliable under demanding conditions (construction site environment).

System Architecture

Rather than directly interfacing with the motor, I worked with the control box's internal infrastructure. The system leverages the existing voltage regulator wiring and speed control mechanism (potentiometer) already installed in the conveyor belt system. This approach minimized modifications to the original equipment while adding remote control capabilities.

The architecture consists of:

  • Control Electronics: ESP32 microcontroller as the primary control unit with WiFi connectivity
  • Relay Modules: Used for safe switching and control of the conveyor belt operation
  • ATmega Controller: Secondary microcontroller for relay management and local control logic
  • Auxiliary Power Supply: 12V 5A dedicated power supply ensuring the system is completely self-contained
  • Communication Layer: TCP server running on ESP32 for remote laptop control and Serial for robot integration
  • Existing Infrastructure: Integration with the control box's voltage regulator and potentiometer for speed management

Development Process

1. Requirements Analysis
I analyzed ERLEtek's operational requirements, including concrete transfer rates, remote control needs, and the existing control infrastructure to minimize invasive modifications.

2. Hardware Design & Integration Strategy
I studied the control box's internal wiring and voltage regulator to understand how to safely integrate relay modules and external control electronics. The key insight was leveraging the existing voltage regulator and potentiometer-based speed control rather than replacing them entirely.

3. Power Supply Configuration
Selected and configured a 12V 5A auxiliary power supply to create a self-contained system. This required careful wiring and grounding to properly ensure all components received stable voltage without interference.

4. Relay Module Integration
Integrated relay modules to safely control the conveyor belt operation from the ATmega controller. The relays act as an interface layer between the control electronics and the high-power motor circuit.

5. Firmware Development
Developed firmware for both the ESP32 and ATmega to handle WiFi communication, TCP server operations, relay switching logic, and local control signals. The ESP32 receives commands from the TCP server, then communicates with ATmega through serial commands whether to switch on, off, forward or backward.

7. Python Control Software
Created a Python application for laptop-based remote control, providing a user-friendly interface for operating the conveyor belt independently or as part of the robotic system workflow.

8. Testing & Optimization
Testing the system on the field proved relay control reliability, communication robustness, power supply stability, and system durability under concrete transport conditions.

Control Modes

Standalone Mode: The conveyor belt can be controlled remotely from a laptop using the custom Python application via WiFi/TCP communication. The existing potentiometer continues to manage speed, while relay commands control on/off operations.

Robot-Integrated Mode: The conveyor belt can be seamlessly integrated into the main robotic system via Serial communication, allowing the robot's control system to command the conveyor belt as part of the automated concrete printing workflow. All was needed was to create a Ros2 publisher node inside the robot's main control software to send serial commands to the ESP32.

Tools & Technologies Used

ESP32
ATmega
Arduino
Python
TCP Communication
Relay Control
Electronics Integration
Embedded Systems
Prototyping

Key Features

  • Dual Control Interface: Both remote laptop control and robot-integrated operation
  • Speed Regulation: Controlled via the existing potentiometer mechanism, ensuring compatibility with original equipment
  • Self-Contained System: Auxiliary 12V 5A power supply provides complete independence from external power sources
  • Reliable Relay Control: Safe switching via relay modules ensuring equipment longevity
  • TCP/IP Communication: Robust network communication for remote operation from any laptop on the network
  • Non-Invasive Integration: Works with existing control box infrastructure without requiring major modifications

Challenges & Solutions

Challenge: Establishing Reliable Signal From Laptop to Conveyor Belt
The main challenge was creating a reliable communication path from a remote laptop to the conveyor belt system over potentially unstable network conditions. I solved this by implementing a TCP server on the ESP32 microcontroller. This server accepts commands from the laptop and translates them into relay control signals for the ATmega controller. The architecture provides stable, deterministic control while maintaining flexibility for future enhancements.

Challenge: Creating a Self-Contained System With Auxiliary Power
The system needed to operate independently without being part of the power system of the main robot. I integrated a 12V 5A auxiliary power supply to power all control electronics, relay modules, and communication interfaces. The result is a completely autonomous system that can be deployed anywhere within network range.