An-Najah National University Faculty of Engineering & Information Technology Department of Computer Engineering Tile Grout Filling Robot Prepared By: Bara Ibrahim Nasir Al Sedih Yazan Ibrahim Nasir Al Sedih Supervised By: Dr. Raed Al-Qadi September, 2024 Acknowledgment We express our deepest gratitude to our supervisor, Dr. Raed Al-Qadi, for his continuous support and guidance throughout this project. His insightful feedback and expertise were invaluable throughout the entire process. We are also grateful to Projects Assistant Eng. Abdullah Hinnawi, whose technical support and assistance were crucial in the successful completion of this project. Additionally, we extend our thanks to Eng. Ahmad Sedih for his expert advice and support. We would like to acknowledge Carpenter Alaa Zorba of the Art College and Carpenter Ahmad Arman for their craftsmanship and contributions to the physical structure of the robot. We are also thankful to Blacksmith Moath Arman for his technical assistance. Finally, we would like to thank our family, friends, and colleagues for their constant encouragement, support, and patience throughout this project. 1 Disclaimer Bara Al-Sedih and Yazan Al-Sedih wrote this report at the Computer Engi- neering Department, Faculty of Engineering, An-Najah National University. It has not been altered or corrected, other than editorial corrections, as a re- sult of assessment and may contain language and content errors. The views expressed in it and any outcomes and recommendations are solely those of the authors. An-Najah National University accepts no responsibility or lia- bility for the consequences of this report being used for a purpose other than the purpose for which it was commissioned. 2 Abstract This project focuses on the development of a "Tile Grout Filling Robot," designed to automate the process of filling tile gaps with grout. The robot, constructed from a small wooden box with two front wheels and rounded metal supports at the back, includes a grout container and a mechanism for precise grout application. It autonomously follows tile gaps using a combina- tion of sensors, including IR, laser, and camera modules, to ensure accurate grout placement. The robot is controlled by a Raspberry Pi 4 connected to an Arduino Uno, with movement powered by stepper motors. Testing was conducted on 40cm x 40cm tiles with 1-2 cm gaps, achieving satisfactory grout filling results. This innovation promises to reduce worker strain, time, and injury risks associated with manual grout application. 3 Table of Contents Acknowledgment 1 Disclaimer 2 Abstract 3 Table of Contents 4 List of Figures 7 1 Introduction 1 1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.3 Significance . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.4 Organization of the report . . . . . . . . . . . . . . . . . . . 2 2 Theoretical Background and Previous Work 3 2.1 Literature Review . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2 Theoretical Framework . . . . . . . . . . . . . . . . . . . . . 3 2.3 Previous Work . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 Methodology 4 3.1 Standards and Specifications . . . . . . . . . . . . . . . . . . 5 3.2 Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.3 Materials and Methods . . . . . . . . . . . . . . . . . . . . . 5 3.3.1 Chassis . . . . . . . . . . . . . . . . . . . . . . . . . . 5 4 3.3.2 Container for pressing and pushing the grout . . . . . 6 3.3.3 Grout Float . . . . . . . . . . . . . . . . . . . . . . . 6 3.3.4 Raspberry Pi 4 . . . . . . . . . . . . . . . . . . . . . . 7 3.3.5 Arduino Uno R3 . . . . . . . . . . . . . . . . . . . . . 7 3.3.6 Raspberry Pi Camera Module 3 NoIR . . . . . . . . . 8 3.3.7 IR Sensor Module . . . . . . . . . . . . . . . . . . . . 8 3.3.8 Nema 23 Stepper Motor . . . . . . . . . . . . . . . . . 9 3.3.9 Microstep Driver . . . . . . . . . . . . . . . . . . . . . 9 3.3.10 Battery 12V 7-9A . . . . . . . . . . . . . . . . . . . . 10 3.3.11 Battery 5V 5A . . . . . . . . . . . . . . . . . . . . . . 10 3.3.12 2 position ON - OFF switch . . . . . . . . . . . . . . 11 3.3.13 Connector Battery Charger . . . . . . . . . . . . . . . 11 3.3.14 Battery Indicator . . . . . . . . . . . . . . . . . . . . 12 3.3.15 Ultrasonic Sensor . . . . . . . . . . . . . . . . . . . . 12 3.3.16 Jumper Wire . . . . . . . . . . . . . . . . . . . . . . . 13 3.3.17 Connecter . . . . . . . . . . . . . . . . . . . . . . . . 13 3.3.18 Servo Motor . . . . . . . . . . . . . . . . . . . . . . . 14 3.3.19 Coupler . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.4 Safety Considerations . . . . . . . . . . . . . . . . . . . . . . 15 4 Results and Analysis 16 4.1 Data Collected . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.2 Statistical Treatment . . . . . . . . . . . . . . . . . . . . . . 16 4.3 Error Estimation . . . . . . . . . . . . . . . . . . . . . . . . 16 5 Discussion 17 5.1 Interpretation of Results . . . . . . . . . . . . . . . . . . . . 17 5.2 Comparison with Existing Solutions . . . . . . . . . . . . . . 17 5.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6 Conclusions and Recommendations 18 5 6.1 Summary of Results . . . . . . . . . . . . . . . . . . . . . . . 18 6.2 Recommendations . . . . . . . . . . . . . . . . . . . . . . . . 18 6.3 Final Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . 18 6 List of Figures 3.1 Chassis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.2 Container for pressing and pushing the grout . . . . . . . . . 6 3.3 Grout Float . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.4 Raspberry Pi 4 . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.5 Arduino Uno R3 . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.6 Raspberry Pi Camera Module 3 NoIR . . . . . . . . . . . . . 8 3.7 IR Sensor Module . . . . . . . . . . . . . . . . . . . . . . . . 8 3.8 Nema 23 Stepper Motor . . . . . . . . . . . . . . . . . . . . . 9 3.9 Microstep Driver . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.10 Battery 12V 7-9A . . . . . . . . . . . . . . . . . . . . . . . . 10 3.11 Battery 5V 5A . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.12 2 position ON - OFF switch . . . . . . . . . . . . . . . . . . 11 3.13 Connector Battery Charger . . . . . . . . . . . . . . . . . . . 11 3.14 Battery Indicator . . . . . . . . . . . . . . . . . . . . . . . . 12 3.15 Ultrasonic Sensor . . . . . . . . . . . . . . . . . . . . . . . . 12 3.16 Jumper Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.17 Connecter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.18 Servo Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.19 Coupler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 7 Chapter 1 Introduction Contents 1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.3 Significance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.4 Organization of the report . . . . . . . . . . . . . . . . . . . . . 2 1.1 Background Tile workers often face significant physical strain and time consumption when filling tile gaps manually, especially in large spaces. This task can lead to injuries in the legs, knees, and back due to prolonged kneeling and repetitive motion. Our project addresses these issues by automating the grout-filling process with a specialized robot. 1.2 Objectives The primary objective of our project is to design and implement a robot capable of detecting tile gaps and filling them with grout efficiently, thereby reducing the physical effort, time, and injury risk for workers. 1.3 Significance This project is groundbreaking as no similar robots currently exist on the market. Its potential impact includes significant time savings, reduced phys- ical strain on workers, and a likely high market demand due to its innovative nature. 1 1.4 Organization of the report This report is organized into six chapters: Introduction, Theoretical Back- ground and Previous Work, Methodology, Results and Analysis, Discussion, and Conclusions and Recommendations. Each chapter systematically covers the development and findings of the project. 2 Chapter 2 Theoretical Background and Previous Work Contents 2.1 Literature Review . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2 Theoretical Framework . . . . . . . . . . . . . . . . . . . . . . . 3 2.3 Previous Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.1 Literature Review Despite extensive research, no existing robots were found that are specifically designed for filling tile gaps with grout. The closest technology identified was a robot capable of placing tiles and applying cement, which is somewhat related but lacks grout-filling functionality. 2.2 Theoretical Framework In designing our robot, we focused on maintaining a small form factor and ensuring efficient operation. The robot’s grout container is sized to fill gaps in a 20m² room, balancing capacity with mobility. 2.3 Previous Work There is no existing technology exactly like our grout-filling robot, making this project a novel contribution to the field of construction automation. 3 Chapter 3 Methodology Contents 3.1 Standards and Specifications . . . . . . . . . . . . . . . . . . . . 5 3.2 Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.3 Materials and Methods . . . . . . . . . . . . . . . . . . . . . . . 5 3.3.1 Chassis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3.3.2 Container for pressing and pushing the grout . . . . . . . . . . 6 3.3.3 Grout Float . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.3.4 Raspberry Pi 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.3.5 Arduino Uno R3 . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.3.6 Raspberry Pi Camera Module 3 NoIR . . . . . . . . . . . . . . 8 3.3.7 IR Sensor Module . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.3.8 Nema 23 Stepper Motor . . . . . . . . . . . . . . . . . . . . . . 9 3.3.9 Microstep Driver . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.3.10 Battery 12V 7-9A . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.3.11 Battery 5V 5A . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 3.3.12 2 position ON - OFF switch . . . . . . . . . . . . . . . . . . . . 11 3.3.13 Connector Battery Charger . . . . . . . . . . . . . . . . . . . . 11 3.3.14 Battery Indicator . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.3.15 Ultrasonic Sensor . . . . . . . . . . . . . . . . . . . . . . . . . . 12 3.3.16 Jumper Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.3.17 Connecter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.3.18 Servo Motor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.3.19 Coupler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.4 Safety Considerations . . . . . . . . . . . . . . . . . . . . . . . . 15 4 3.1 Standards and Specifications Our project adheres to ISO 9241-210 (human-centered design processes for interactive systems) and IEEE 802.11 standards (wireless communication), ensuring usability and reliability. 3.2 Constraints Several constraints influenced our design, including budget limitations, the variety of tile surfaces and shapes, and time constraints. Our image pro- cessing algorithm is currently optimized for tiles with solid colors without complex patterns or internal gaps. 3.3 Materials and Methods 3.3.1 Chassis The robot’s chassis is a cube with a black face, a camera in front, a mechanism for lowering the robot, 2 big wheels in front and 4 small wheels below, and the other sensors and components inside it. Figure 3.1: Chassis 5 3.3.2 Container for pressing and pushing the grout It looks like a syringe, a container in which the grout is placed, and a smaller piece that goes inside the container and is connected to a stepper motor using a toothed rod. The motor rotates, the grout is pressed down, and it works with the servo motor to accurately regulate the grout’s descent process. Figure 3.2: Container for pressing and pushing the grout 3.3.3 Grout Float It is used to compress and wipe the grout carefully. Figure 3.3: Grout Float 6 3.3.4 Raspberry Pi 4 It’s used as the main microcontroller[6]. Figure 3.4: Raspberry Pi 4 3.3.5 Arduino Uno R3 It’s used as the secondary microcontroller[2]. Figure 3.5: Arduino Uno R3 7 3.3.6 Raspberry Pi Camera Module 3 NoIR It is used in image processing code to see lines between tiles and determine the direction of the robot’s movement[9]. Figure 3.6: Raspberry Pi Camera Module 3 NoIR 3.3.7 IR Sensor Module There are two of them to improve the robot’s movement[10]. Figure 3.7: IR Sensor Module 8 3.3.8 Nema 23 Stepper Motor There are 3 of them and it is used to move the robot and the pressure mechanism grout[7]. Figure 3.8: Nema 23 Stepper Motor 3.3.9 Microstep Driver There are 3 of them and it’s used to control the stepper[8]. Figure 3.9: Microstep Driver 9 3.3.10 Battery 12V 7-9A It is used as a main power source with a voltage of 12V and a current of 7-9A[4]. Figure 3.10: Battery 12V 7-9A 3.3.11 Battery 5V 5A There are 2 of them and it is used as a secondary power source with a voltage of 5V and a current of 5A[4]. Figure 3.11: Battery 5V 5A 10 3.3.12 2 position ON - OFF switch It is used to separate the main battery from the project components. Figure 3.12: 2 position ON - OFF switch 3.3.13 Connector Battery Charger It is used to charge the battery from an external charger[5]. Figure 3.13: Connector Battery Charger 11 3.3.14 Battery Indicator It’s used to display the main battery charge percentage[1]. Figure 3.14: Battery Indicator 3.3.15 Ultrasonic Sensor There are 2 of them and it is used to calculate the distance and determine the stopping point of the robot and the motors[12]. Figure 3.15: Ultrasonic Sensor 12 3.3.16 Jumper Wire It is used to connect different robot components[11]. Figure 3.16: Jumper Wire 3.3.17 Connecter It is used to connect different robot components. Figure 3.17: Connecter 13 3.3.18 Servo Motor It is used with the grout pressure method to control the descent of the grout and increase accuracy[3]. Figure 3.18: Servo Motor 3.3.19 Coupler There are 3 of them and it is used to connect the stepper motor and the wheels. Figure 3.19: Coupler 14 3.4 Safety Considerations We adhered to safety protocols when handling materials and during the as- sembly of the robot, particularly when cutting wood, working with electrical wiring, and operating the battery and power systems. 15 Chapter 4 Results and Analysis Contents 4.1 Data Collected . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.2 Statistical Treatment . . . . . . . . . . . . . . . . . . . . . . . . 16 4.3 Error Estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 4.1 Data Collected We conducted research and reviewed datasheets to ensure proper connectivity and functionality of the electronic components used in our robot. 4.2 Statistical Treatment Although we did not conduct extensive statistical analysis, we used basic statistics to calculate distances for ultrasonic detection and angles for stepper motor control, as well as for image processing algorithms. 4.3 Error Estimation Minor errors were observed in the ultrasonic sensor readings and image pro- cessing due to varying illumination conditions and the complexity of tile edges. 16 Chapter 5 Discussion Contents 5.1 Interpretation of Results . . . . . . . . . . . . . . . . . . . . . . 17 5.2 Comparison with Existing Solutions . . . . . . . . . . . . . . . 17 5.3 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 5.1 Interpretation of Results Our robot successfully fills tile gaps with grout, providing a strong and aes- thetically pleasing finish. This outcome demonstrates the robot’s effective- ness in automating a traditionally manual and labor-intensive task. 5.2 Comparison with Existing Solutions No existing projects or technologies match the functionality of our robot, making this an innovative solution in the field of construction automation. 5.3 Limitations Challenges in image processing due to illumination variability and tile di- versity were significant. Additionally, testing was limited to a small number of tiles, and the grout container’s size was constrained by weight and robot mobility considerations. 17 Chapter 6 Conclusions and Recommendations 6.1 Summary of Results We developed a unique robot capable of automating the grout-filling process, which has the potential to significantly reduce worker strain, save time, and minimize injury risks. 6.2 Recommendations Future improvements could include a metal stand to extend the grout filling to the edges of the room, a larger grout container, enhanced robot speed, and improved image processing algorithms to handle a wider variety of tile shapes, patterns, and gaps. 6.3 Final Conclusion Our project successfully demonstrates the feasibility of automating the grout- filling process with a specialized robot. The results indicate strong potential for practical application in the construction industry. 18 References 19 Bibliography [1] Jean Alzieu, Hassan Smimite, and Christian Glaize. Improvement of intelligent battery controller: state-of-charge indicator and associated functions. Journal of power sources, 67(1-2):157–161, 1997. [2] Ristiandika Arrahman. Rancang bangun pintu gerbang otomatis meng- gunakan arduino uno r3. Jurnal Portal Data, 2(2), 2022. [3] Riazollah Firoozian. Servo motors and industrial control theory. Springer, 2014. [4] PLAYSTATION IN-CAR. Power supplies. Power, 12:24Vdc. [5] Alon Kuperman, U Levy, J Goren, A Zafransky, and A Savernin. Bat- tery charger for electric vehicle traction battery switch station. IEEE Transactions on Industrial Electronics, 60(12):5391–5399, 2012. [6] T Maragatham, P Balasubramanie, and M Vivekanandhan. Iot based home automation system using raspberry pi 4. In IOP Conference Se- ries: Materials Science and Engineering, volume 1055, page 012081. IOP Publishing, 2021. [7] Vidmi Taolam Martin, LiYuan Zeng, Jean Christian Nzengue, LiYe Mao, JingYin Huang, and XiuFan Peng. Nema 23 2.3 nm closed loop step stepper motor with driver promotion and gear box-sosedkina. ru. Annals of Medicine and Surgery, 36:96, 2018. [8] Zoltan Tamas Nagy and Eugen Ioan Gergely. Microstepping driver for step motors. Journal of Computer Science and Control Systems, 4(1):107, 2011. [9] Justinas Stirbys. High-speed image capture and cone detection using a raspberry pi and camera module: A design science approach. 2019. [10] Cheng-Hung Tsai, Ying-Wen Bai, Yen-Wen Lin, Kung-Shen Lin, Li- Chia Cheng, and Roger Jia Rong Jhang. Using an ir sensor module to 20 reduce the standby power consumption of a pc monitor. In 2013 26th IEEE Canadian Conference on Electrical and Computer Engineering (CCECE), pages 1–6. IEEE, 2013. [11] Zhu Yingjie and Lin Fangxin. < trans-title> research on flashover factors of jumper wires caused by windage yaw and its preventive measures. , 3(2):77–81, 2020. [12] VA Zhmud, NO Kondratiev, KA Kuznetsov, VG Trubin, and LV Dim- itrov. Application of ultrasonic sensor for measuring distances in robotics. In Journal of Physics: Conference Series, volume 1015, page 032189. IOP Publishing, 2018. 21 22 Acknowledgment Disclaimer Abstract Table of Contents List of Figures Introduction Background Objectives Significance Organization of the report Theoretical Background and Previous Work Literature Review Theoretical Framework Previous Work Methodology Standards and Specifications Constraints Materials and Methods Chassis Container for pressing and pushing the grout Grout Float Raspberry Pi 4 Arduino Uno R3 Raspberry Pi Camera Module 3 NoIR IR Sensor Module Nema 23 Stepper Motor Microstep Driver Battery 12V 7-9A Battery 5V 5A 2 position ON - OFF switch Connector Battery Charger Battery Indicator Ultrasonic Sensor Jumper Wire Connecter Servo Motor Coupler Safety Considerations Results and Analysis Data Collected Statistical Treatment Error Estimation Discussion Interpretation of Results Comparison with Existing Solutions Limitations Conclusions and Recommendations Summary of Results Recommendations Final Conclusion