Transforming Drinks with Intelligent Automation and Style
Built with the tools and technologies:
SmartBarFab is a versatile platform designed to streamline the development of automated beverage dispensing systems. It combines hardware control, real-time user interaction, and personalized recommendations into a cohesive architecture, enabling scalable and engaging smart bar solutions.
This project aims to simplify the creation of intelligent, user-centric bar experiences by integrating motorized hardware, messaging interfaces, and dynamic recommendations. The core features include:
- Hardware Control: Precise management of motors and liquid dispensers for automated drink preparation.
- Real-Time Messaging: Seamless interaction with users via a Telegram bot, supporting commands and personalized suggestions.
- User Session Management: Tracks user interactions and preferences to deliver tailored recommendations.
- IoT Integration: Connects microcontrollers like ESP8266 and Arduino for remote control and real-time updates.
- Configurable & Debuggable: Centralized configuration and robust logging facilitate development and troubleshooting.
- Modular Architecture: Well-structured components enable easy extension and maintenance.
The system utilizes the following hardware components:
- Microcontrollers:
- Arduino Mega 2560
- ESP8266 Wi-Fi module
- Motors and Actuators:
- Stepper motor with driver and shield
- 6 × FG946 servo motors
- Lighting:
- LED strip for ambient lighting
- Other Components:
- Liquid pumps and dispensers
- Sensors for level monitoring
- Power management system
This project requires the following dependencies:
- Programming Language: Go
- Package Manager: Go modules
Build SmartBarFab from the source and install dependencies:
- Clone the repository:
git clone https://github.com/a-palonskaa/SmartBarFab- Navigate to the project directory:
cd SmartBarFab- Install the dependencies:
Using go modules:
go buildRun the project with:
Using go modules:
go run main.goSmartBarFab uses Go's built-in testing framework. Run the test suite with:
Using go modules:
go test ./...```