Intelligent IoT-based robot to navigate the office and water plants

Innowise robotics department developed a proprietary smart robot to navigate office premises and water plants without human intervention.

Real office routing around people and furniture

Multi-height watering for desks, shelves, and racks

Smart robotics system combining mobility and precision watering for automated facility care
Industry IT, Custom software development
Employees 3,500+
Region EU
Services Software development, Back-end development, Front-end development, Discovery

Client overview

Summarize article with AI

Innowise is a global full-cycle software development provider with 3,500+ IT specialists on board. The company has delivered 1,600+ projects for customers from 70 countries, covering software engineering, product development, and technology consulting across multiple industries. For this case, Innowise acted as both the customer and the development team, as the project was created as an internal R&D initiative.

Challenge

Innowise was using a mix of HubSpot CRM, Jira, spreadsheets, and documents to manage data. As the company grew quickly, this approach led to chaotic processes, with information scattered across systems and often duplicated. We needed a unified solution to centralize data, standardize processes, and provide secure access across teams.

  • Routine plant care. Office plants needed regular watering, but manual care depended on people remembering the task and reaching plants placed across desks, shelves, racks, and other office areas.
  • R&D validation. As an internal project, IRIS had to solve a real office problem while also giving the robotics team a practical way to test autonomous navigation, plant detection, and IoT-based control in a live indoor environment.
  • Demo value. The project also needed to work as a demo of Innowise’s robotics expertise. Rather than talking about robotics, the team aimed to build a working robot that could show how IoT, embedded systems, computer vision, and hardware engineering can handle a routine office task without human involvement.
  • Indoor navigation. The robot had to move through office rooms, build a map of the space, avoid furniture, and react to moving obstacles like employees.
  • Plant detection. The system needed to detect plants, estimate their position, and decide whether they needed watering using computer vision, LiDAR, cameras, and QR-code-based plant records.
  • Watering at different heights. Plants were placed on desks, shelves, racks, and high bookcases, so the robot needed a lifting and irrigation mechanism that could reach different levels without making the whole device too tall or unstable.
  • Hardware and software integration. The team had to combine the moving platform, tank, battery, elevator, sensors, embedded components, backend, frontend, and cloud services into one working robotic system.

Solution we delivered

Discovery & planning

The team started by defining what the robot had to do in an office environment. IRIS (Innowise Robotics Irrigation System) needed to move through rooms, detect plants, understand whether they needed watering, reach them at different heights, and complete the task without constant human input.

At the planning stage, the team mapped out the main technical blocks: indoor navigation, plant detection, QR-code-based plant records, the moving platform, the water tank, the elevator mechanism, and the software components needed to process routes, sensor data, and watering history.

Solution design

Our vetted robotics developers designed IRIS as an autonomous IoT robot combining hardware, embedded components, computer vision, and software. The hardware part included a moving platform, battery, water tank, elevator mechanism, sensors, cameras, and a watering rod.

For navigation, the robot uses SLAM, ROS, LiDAR, and computer vision to map office spaces and build routes around furniture, employees, and other obstacles. For plant detection, the system combines camera input, object detection models, QR codes, and watering history records, so the robot can identify each plant and check whether watering is needed.

Key Functionality delivered

Office mapping & navigation

Our robotics experts started by mapping office spaces to create a detailed IoT plant monitoring system, identifying plant locations, obstacles, furniture, and other objects that could affect the robot’s movement. We used SLAM technology to support predictable routing across office rooms. SLAM determines the robot’s location while creating an environment map using computer vision algorithms, LiDAR laser scanners, and other sensor tools.

We used LiDAR connected to the Raspberry Pi microcomputer mounted directly on the robot to detect obstacles and identify plants. ROS, the Robotic Operating System, and the main computer use this visual information to process navigation data, calculate routes, and map the office surroundings.

During this stage, our team had to deal with limited visibility when detecting plain objects such as tables, shelves, chairs, and other interior items that could block the robot’s view or be misidentified. The robot also had to handle dynamic obstacles in an office environment, where employees and moving objects can suddenly change position and direction. To reduce the risk of collisions, our team used computer vision and machine learning algorithms, including image segmentation, object detection, noise filtering, and other methods. We also equipped the robot with motion planning algorithms such as Rapidly-exploring Random Trees (RRT) and A* (A-star), which consider the position and shape of obstacles when identifying the best path in real time.

Plant detection & watering logic

Initially, we planned to use stereoscopic cameras to determine the plants’ location, calculate their position, and create a route. After brainstorming sessions, we developed an alternative scheme where the robot took a picture and recorded its coordinates in space. Robotics engineers used a neural network to find the plant in the frame, calculate its bounding box, and determine the flower’s direction.

In image processing projects, bounding boxes serve as reference points for object detection and create collision boxes for detected objects. Based on the robot’s coordinates, the camera’s orientation, and the flower’s location, we drew a ray connecting the robot’s position with the plant. After repeating this process many times, we obtained multiple rays intersecting at one point, which allowed the robot to detect the plant that needed watering.

Our engineers relied on models trained on COCO and ImageNet datasets to identify flowers in pots. Based on this model, we filtered out unnecessary classes and developed a custom detector that synchronizes the bounding box direction with the robot’s coordinates. To determine the precise spatial coordinates of the watering rod, we used a bundle of cameras and LiDAR.

Once the robot detects a plant, it identifies its accurate position in space and determines whether it should be watered. For this purpose, we labeled all office pots with QR codes connected to databases where the watering history of all plants is stored.

Moving platform

For the hardware, the robotics team chose a modular system that included a moving platform with electronics, a water storage tank, a battery, and a two-level elevator system. We used a V-Slot aluminum profile to assemble the robot’s frame because it is durable and lightweight, which supports better maneuverability and lower energy consumption.

Instead of standard differential drives, we placed omni-wheels at the corners of the robot to support smooth navigation. Omni-wheels, or omnidirectional wheels, have small rollers around the circumference that can rotate on their own axis or perpendicularly. So, the robot moves in any direction without rotating the main structure, using only the difference in velocity between each wheel.

Elevator & irrigation system

Flowers are placed on employees’ desks, shelves, racks, high bookcases, and other spots that are hard to reach. To avoid building a bookcase-high robot, our experts assembled a lifting mechanism based on sliding rollers. With OpenBuilds V-Slot profile parts, we fixed the elevator steps rigidly to each other with carriages and rollers that slide along the lifting mechanism. The carriages are moved by a belt stretched between a motor and a tensioning unit mounted on the other side.

At the top of the last elevator step, we installed a servo motor that unfolds a carbon fiber rod for watering flowers. The rod is connected to a peristaltic pump installed in the water tank. Standard rotary pumps are sensitive to the volume of liquid, so we used peristaltic pumps, which squeeze an elastic tube through rollers on the circumference and push the liquid out. Compared to standard pumps, these mechanisms have a much slower pumping speed, but they can lift liquid to a much greater height.

Delivery approach

We treated IRIS as an R&D project and tested the robot in real office conditions from the start. Robotics engineers, firmware developers, backend and frontend specialists, ML experts, and DevOps engineers worked closely, shared progress often, and shaped next steps based on test results. Regular meetings, brainstorming sessions, and retrospectives kept the work organized. The team discussed blockers, adjusted priorities, and fixed design issues before preparing the robot for demos.

Quote icon

My main takeaway from IRIS is that office robotics depends on small engineering decisions. A robot can have a good route on the map, but the real test starts when it moves near desks, shelves, people, and plants placed at different heights. This project pushed us to think about behavior, mechanics, sensors, and software as one system, because one weak link changes the whole result.

Eugene Govor
Eugene Govor Head of Embedded & C++

Technologies

Backend

Python, Django REST Framework, FastAPI, AWS IoT Core, pandas, Loki, Prometheus, Grafana, API Gateway, AWS;

Frontend

JavaScript, TypeScript, React, Redux, Leaflet, Webpack, Axios, Material UI, Cube.js, AWS CloudFront;

Embedded

AVR, Raspberry Pi, SPI, UART, USB, I2C, HTTP, SolidWorks, ROS, SLAM, LiDAR, Altium Designer;

ML/DS

OpenCV, TensorFlow, TFLite, ONNX, NumPy;

DevOps

Terraform, Weave, Docker Compose, Kubernetes, Bitbucket Pipelines;

Database

PostgreSQL, AWS Timestream.

Team

Icon 1
Project Manager
Icon 1
Business Analyst
Icon 1
Software Architect
Icon 1
Team Lead
Icon 2
Hardware Engineers
Icon 2
Firmware Developers
Icon 2
Back-End Developers
Icon 2
Front-End Developers
Icon 1
DevOps Engineer
Icon 1
ML/DS Engineer
Icon 1
3D Modeller
Icon 1
Design Engineer
Innowise team

Results

Project duration
February 2023 - July 2023

Innowise built IRIS, an autonomous IoT robot that can navigate office spaces, detect plants, reach them at different heights, and water them without manual work. The team brought together hardware, embedded components, computer vision, navigation logic, and software into a working prototype tested in real office conditions.

The robot made office plant care more regular and reduced the need for manual watering. For Innowise, the project also became a practical demo of robotics expertise, showing how a physical robot can handle a routine office task using navigation, plant detection, and an integrated irrigation mechanism.

Table of contents

Automate routine tasks

    Contact us

    Book a call or fill out the form below and we’ll get back to you once we’ve processed your request.

    Send us a voice message
    Attach documents
    Upload file

    You can attach 1 file up to 2MB. Valid file formats: pdf, jpg, jpeg, png.

    By clicking Send, you consent to Innowise processing your personal data per our Privacy Policy to provide you with relevant information. By submitting your phone number, you agree that we may contact you via voice calls, SMS, and messaging apps. Calling, message, and data rates may apply.

    You can also send us your request
    to contact@innowise.com
    What happens next?
    1

    Once we’ve received and processed your request, we’ll get back to you to detail your project needs and sign an NDA to ensure confidentiality.

    2

    After examining your wants, needs, and expectations, our team will devise a project proposal with the scope of work, team size, time, and cost estimates.

    3

    We’ll arrange a meeting with you to discuss the offer and nail down the details.

    4

    Finally, we’ll sign a contract and start working on your project right away.

    arrow