Hackathon EPFL Lausanne, Switzerland
November 30 - December 1
- Arnau Claramunt
- Genís López
- Jaume López
- Pay Mayench
This project is the implementation of the Bobst Company challenge presented at the LauzHack24 Hackathon. We assembled a 3D printed conveyor belt machine, represent the virtual model in Unity and use a chatbot with a small LLM to also interact with the machine.
Key Features:
- 3D-Printed Conveyor Belt controlled by a Raspberry Pi.
- Real-time data collection (speed, box counter, energy usage).
- AI-powered chatbot for troubleshooting and monitoring via Ollama's Llama 3.2.
- Interactive HMI built in Unity for real-time control and visualization.
- Dockerized architecture for easy deployment.
- Bridge between Unity and Ollama with FastAPI.
| Component | Technology | Purpose | 
|---|---|---|
| Hardware | Raspberry Pi | Controls conveyor belt and collects metrics. | 
| Modeling | Unity | Creates a 3D visualization of the machine. | 
| API Layer | FastAPI | Communication between AI and Unity and Unity to Raspberry Pi. | 
| AI | Ollama (Llama 3.2) | Context-aware troubleshooting LLM chatbot. | 
| Deployment | Docker | Simplified deployment of all components. | 
 
Meet Bob, our AI-powered assistant built on Ollama's Llama 3.2. Bob is integrated into the system, providing real-time assistance, troubleshooting, and even direct control over the conveyor belt.
- 
Understand Context: 
 Bob uses the machine's current state (e.g., motor status, speed, output metrics) as context for user interactions.
- 
Interpret User Queries: 
 Natural language queries are passed to Bob along with the machine state for precise and actionable responses.
- 
Execute Actions: 
 When appropriate, Bob translates its recommendations into machine actions via API calls to the Unity that then calls the Raspberry Pi.
- Add more sensors for enhanced data insights.
- Introduce predictive maintenance using AI.
- Expand HMI with detailed production analytics.
The machine operates with a safety feature that performs a secure stop to prevent accidents when a hand is detected near the belt:
Safety_stop.mp4
API for talking to the Raspberry Pi 5:

- Clone the Repository:
git clone git@github.com:EncryptEx/machine-control-monitoring.git
cd machine-control-monitoring- Build and run Dockers containers: (form the chatbot_apifolder)
docker-compose up --build- 
Launch Unity Application: 
 Open the Unity project in your IDE and run the scene.
- 
Interact with Bob: 
 Use the chatbot interface in Unity to troubleshoot and control the conveyor.


