Design of Mobile Robot with Navigation Based on Embedded Linux

Similar documents
Available online at ScienceDirect. Procedia Computer Science 76 (2015 )

Based on the ARM and PID Control Free Pendulum Balance System

Available online at ScienceDirect. Procedia Computer Science 76 (2015 ) 2 8

Modern Robotics with OpenCV. Widodo Budiharto

Total Hours Registration through Website or for further details please visit (Refer Upcoming Events Section)

A Simple Design of Clean Robot

Optimization Maze Robot Using A* and Flood Fill Algorithm

Available online at ScienceDirect. Procedia Computer Science 56 (2015 )

Design of intelligent vehicle control system based on machine visual

Fabrication of the kinect remote-controlled cars and planning of the motion interaction courses

Controlling Obstacle Avoiding And Live Streaming Robot Using Chronos Watch

ScienceDirect. Improvement of the Measurement Accuracy and Speed of Pupil Dilation as an Indicator of Comprehension

Park Ranger. Li Yang April 21, 2014

Visual Perception Based Behaviors for a Small Autonomous Mobile Robot

Available online at ScienceDirect. Procedia Engineering 111 (2015 )

Rotational Speed Control Based on Microcontrollers

ECE 477 Digital Systems Senior Design Project Rev 8/09. Homework 5: Theory of Operation and Hardware Design Narrative

Fundamentals of Industrial Control

Software Computer Vision - Driver Assistance

A PID Controller for Real-Time DC Motor Speed Control using the C505C Microcontroller

Available online at ScienceDirect. Anugerah Firdauzi*, Kiki Wirianto, Muhammad Arijal, Trio Adiono

Available online at ScienceDirect. Procedia Computer Science 24 (2013 )

ScienceDirect. Optimization of Fuzzy Controller Parameters for the Temperature Control of Superheated Steam

Available online at ScienceDirect. Procedia Computer Science 85 (2016 )

Lego Mindstorms as a Simulation of Robotic Systems

Advanced Distributed Architecture for a Small Biped Robot Control M. Albero, F. Blanes, G. Benet, J.E. Simó, J. Coronel

Traffic Control for a Swarm of Robots: Avoiding Group Conflicts

Wheeled Mobile Robot Obstacle Avoidance Using Compass and Ultrasonic

MULTI ROBOT COMMUNICATION AND TARGET TRACKING SYSTEM AND IMPLEMENTATION OF ROBOT USING ARDUINO

Available online at ScienceDirect. Procedia Technology 14 (2014 )

ScienceDirect. Optimal Placement of RFID Antennas for Outdoor Applications

Closed-Loop Transportation Simulation. Outlines

Robot Navigation System with RFID and Ultrasonic Sensors A.Seshanka Venkatesh 1, K.Vamsi Krishna 2, N.K.R.Swamy 3, P.Simhachalam 4

Available online at ScienceDirect. Procedia Engineering 192 (2017 )

INTRODUCTION OF SOME APPROACHES FOR EDUCATIONS OF ROBOT DESIGN AND MANUFACTURING

Internet Controlled Robotic Arm

Intuitive Vision Robot Kit For Efficient Education

Performance Improvement of Contactless Distance Sensors using Neural Network

ME375 Lab Project. Bradley Boane & Jeremy Bourque April 25, 2018

A User Friendly Software Framework for Mobile Robot Control

A Lego-Based Soccer-Playing Robot Competition For Teaching Design

International Journal of Advance Engineering and Research Development

Autonomous Following RObot Initial Design Review

Design Concept of State-Chart Method Application through Robot Motion Equipped With Webcam Features as E-Learning Media for Children

Performance Analysis of Ultrasonic Mapping Device and Radar

Embedded Controls Final Project. Tom Hall EE /07/2011

International Journal for Research in Applied Science & Engineering Technology (IJRASET) DTMF Based Robot for Security Applications

Sensors and Sensing Motors, Encoders and Motor Control

Design of stepper motor position control system based on DSP. Guan Fang Liu a, Hua Wei Li b

DC motor control using arduino

Distance Measurement of an Object by using Ultrasonic Sensors with Arduino and GSM Module

Implementation of a Self-Driven Robot for Remote Surveillance

Embedded Robotics. Software Development & Education Center

Computer-Aided Manufacturing

Space Research expeditions and open space work. Education & Research Teaching and laboratory facilities. Medical Assistance for people

The Design of Intelligent Wheelchair Based on MSP430

Open Source in Mobile Robotics

Smart eye using Ultrasonic sensor in Electrical vehicles for Differently Able.

Solar Powered Obstacle Avoiding Robot

An Autonomous Self- Propelled Robot Designed for Obstacle Avoidance and Fire Fighting

Motion Control of a Three Active Wheeled Mobile Robot and Collision-Free Human Following Navigation in Outdoor Environment

PATH PLANNING OF LINE FOLLOWER ROBOT

Hardware Platforms and Sensors

Available online at ScienceDirect. Procedia Computer Science 79 (2016 )

Smart-M3-Based Robot Interaction in Cyber-Physical Systems

University of Florida Department of Electrical and Computer Engineering Intelligent Machine Design Laboratory EEL 4665 Spring 2013 LOSAT

This list supersedes the one published in the November 2002 issue of CR.

Available online at ScienceDirect. Procedia Engineering 168 (2016 ) th Eurosensors Conference, EUROSENSORS 2016

MULTI-LAYERED HYBRID ARCHITECTURE TO SOLVE COMPLEX TASKS OF AN AUTONOMOUS MOBILE ROBOT

Sensing. Autonomous systems. Properties. Classification. Key requirement of autonomous systems. An AS should be connected to the outside world.

ScienceDirect. An Integrated Xbee arduino And Differential Evolution Approach for Localization in Wireless Sensor Networks

Semi-Autonomous Parking for Enhanced Safety and Efficiency

Classical Control Based Autopilot Design Using PC/104

Design of Tracked Robot with Remote Control for Surveillance

Citrus Circuits Fall Workshop Series. Roborio and Sensors. Paul Ngo and Ellie Hass

LDOR: Laser Directed Object Retrieving Robot. Final Report

MOBILE ROBOT LOCALIZATION with POSITION CONTROL

Automatic Fan Speed Control using Temperature and Humidity Sensor and Arduino

Design and Implementation of FPGA-Based Robotic Arm Manipulator

On-demand printable robots

ULS24 Frequently Asked Questions

Session 11 Introduction to Robotics and Programming mbot. >_ {Code4Loop}; Roochir Purani

AGENT PLATFORM FOR ROBOT CONTROL IN REAL-TIME DYNAMIC ENVIRONMENTS. Nuno Sousa Eugénio Oliveira

Mobile Robots (Wheeled) (Take class notes)

Brainstorm. In addition to cameras / Kinect, what other kinds of sensors would be useful?

Arduino STEAM Academy Arduino STEM Academy Art without Engineering is dreaming. Engineering without Art is calculating. - Steven K.

1 Lab + Hwk 4: Introduction to the e-puck Robot

PRESENTED BY HUMANOID IIT KANPUR

Hardware Implementation of an Explorer Bot Using XBEE & GSM Technology

SELF-BALANCING MOBILE ROBOT TILTER

Major Project SSAD. Mentor : Raghudeep SSAD Mentor :Manish Jha Group : Group20 Members : Harshit Daga ( ) Aman Saxena ( )

Micromouse Meeting #3 Lecture #2. Power Motors Encoders

GE423 Laboratory Assignment 6 Robot Sensors and Wall-Following

Design of PID Control System Assisted using LabVIEW in Biomedical Application

The Future of AI A Robotics Perspective

Embedded Robust Control of Self-balancing Two-wheeled Robot

Controlling Humanoid Robot Using Head Movements

FLCS V2.1. AHRS, Autopilot, Gyro Stabilized Gimbals Control, Ground Control Station

Senior Design I. Fast Acquisition and Real-time Tracking Vehicle. University of Central Florida

Funzionalità per la navigazione di robot mobili. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

Transcription:

Available online at www.sciencedirect.com ScienceDirect Procedia Computer Science 59 (2015 ) 473 482 International Conference on Computer Science and Computational Intelligence (ICCSCI 2015) Design of Mobile Robot with Navigation Based on Embedded Linux Khafizuddin Azazi, Rendy Andrean, Wiedjaja Atmadja*, Handi M, Jonathan Lukas Computer Engineering Department, Bina Nusantara University, Jakarta, Indonesia Abstract The purpose of this research is to build and design a mobile robot that use a navigation system based on embedded Linux. The method of this research is by literature review method, experiment method and designing method. Analysis of the research will be done by collecting data and information from the reading of sensors that is used and compare the information that we get with the actual condition. The sensors are distance sensor IR Range, direction sensor digital compass module, camera and comparing latency of different Linux kernel. The result that we get are like the best reading distance of the distance sensor which is the IR Ranger are ±3-30 cm, digital compass module can read the value of a direction and produce the value well if there is not any material that contains magnetism that can disturb the reading of digital compass module, camera can detect object well by their color and by using the result of IR Ranger reading and digital compass module, robot can work and move independently in tracing the way and keep distance with the object. 2015 The Authors. Published Published by by Elsevier Elsevier B.V. B.V. This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/). Peer-review under responsibility of organizing committee of the International Conference on Computer Science and Peer-review under responsibility of organizing committee of the International Conference on Computer Science and Computational Computational Intelligence (ICCSCI Intelligence 2015) (ICCSCI 2015). Keywords: Mobile Robot; Navigation; Embedded Linux 1. Introduction Autonomous robot or usually called automatic robot has become a topic that has been discussed and be the centre of attention in recent years along with the rapid technological development. An Autonomous Robot must have the ability to recognize the situation and get the information of an environment can work independently and can process * Corresponding author. Tel.: +62-21-5345830 E-mail address:steff@binus.edu 1877-0509 2015 The Authors. Published by Elsevier B.V. This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/4.0/). Peer-review under responsibility of organizing committee of the International Conference on Computer Science and Computational Intelligence (ICCSCI 2015) doi:10.1016/j.procs.2015.07.520

474 Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 all the information that it got and responded as how it required to be. Main problem of the Autonomous Robot are to recognize and get information from the environment s situation, to help completing and finishing the task given to the robot so sensors are used as tool to aid the robot for recognizing the environment 1. This research focus on how the robot can recognizing the environment and processing the data that the robot get so it can finished the task given well. The target of this robot is to use the data and information that the robot gets from using the sensor and completing the task well. On this research we used infrared sensor to measure the distance. According to research by G. Benet, F. Blanes, J.E. Simo and P. Perezon 2002 2, infrared sensor was cheaper than ultrasonic sensor and has faster respond time but because of the infrared sensor has a non-linear behavior and it depends on the reflectance of surrounding objects so the result that we get from infrared sensor is not too accurate because there is many other factor that effecting the reading of infrared sensor. There are so many factors that affecting the infrared sensor so the result for mapping the environment that is built using this type of sensor has a low quality so most of the sensor is used only to determine a distance. Using the camera, we aim to make the robot can determine the object in the front of robot. An essential task for an automatic robot is to move safely on an environment that still undefined or unknown for the robot, probably it will use the artificial vision to detect and recognizing surroundings 3. Based on the research by G.Gini 4, he got a result if a special condition of surroundings can affect the visual record of the camera so that it will hold up the working process of the camera so to prevent all of that thing for happening we must know the condition of the area where the camera of the robot will take place for testing 5. The goal of this research is to build mobile robot that can find a room in a maze that has a red circle on the wall, and turn back to home position. Robot can navigate itself from avoidance, and must have fast enough response from the environment. We use Embedded Linux 5 on BeagleBone ARM board, OpenCV for image processing 6, and Qt for programming framework 7. 2. Methodology On this research we do two kinds of separate design such as the design for hardware and the design of software.as can be seen of below figure of the block diagram of the design for hardware and the design of software: Fig. 1. Electronic System Block Diagram

Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 475 Following are the description of each module that is used on the design from Figure 1: 1. Line Sensor, used to detect line. 2. USB Wi-Fi, used to do communication via TCP/IP. 3. USB Camera, used to detect the red object. 4. IR Ranger, used to measure the distance. 5. Beaglebone Black, used as the main controller. 6. Driver Motor, used as the controller of motor current. 7. Compass Module, used to determine direction. 8. Motor, used to make the robot move. Fig. 2. Block Diagram Architecture of the software Following are the description of each program class that is used on the design from figure 2: 1. Qgpio, used to access the GPIO. 2. Qpwm, used to produce the PWM for I/O. 3. Quart, used to do communication via serial communication. 4. Qi2c, used to do communication via i2c communication. 5. Qadc, used to do conversion from analog to digital. 6. OpenCV, as the library for image processing. 7. C170, used to take a picture. 8. CMPS10, used to access the CMPS10 module. 9. GP2Y0A41SK0, used to take the data from distance sensor. 10. Sensor, used to collect all the data from sensor. 11. Actuator, used to access the actuator. 12. Controller, used to control the process and algorithm. 13. Mazesolver, the main class as the connector for other classes. Whereas for the design to put the component and devices for the robot, it displayed on the following layout of the robot :

476 Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 Fig. 3 Top Layout of The Robot Robot Top View As can be seen from figure 3 there are some devices such as: A. IR Ranger Sensor Rear Right (Right 90 ) B. IR Ranger Sensor Rear Left (Left 90 ) C. IR Ranger Sensor Middle Right (Right 45 ) D. IR Ranger Sensor Middle Left (Left 45 ) E. IR Ranger Sensor Front Right (Right 0 ) F. IR Ranger Sensor Front Left(Left 0 ) G. Camera H. LCD Fig. 4. Side Layout of The Robot Robot Side View As can be seen from figure 4 there are some devices such as : A. Camera B. Regulator C. IR Ranger Sensor Middle Left (Left 45 ) D. IR Ranger Sensor Front Left(Left 0 ) E. BeagleBone-Black F. IR Ranger Sensor Rear Left (Left 90 ) G. WiFi Dongle H. Buzzer I. Battery

Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 477 J. Motor Driver K. LCD L. On/OffSwitch M. CMPS10 (Digital Compass Module) In doing the research, to test the distance sensor we do an experiment with pointing the IR Ranger sensor to a white object that is flat such as wall and we count and take note of every 1cm increment to determine a good reading result of the sensor. For the compass module we compare the result of the reading with the analog compass and digital compass from Smartphone. For camera we use a red object to determine if the camera can detect and process the image of the detected red object. For testing the kernel we calculate the latency that is produced by the kernel with two conditions, without load and with load which is there is a looping process that is running on the kernel. For the actuator we test it using tachometer. Fig.5. Tree Graph Node Track Layout Track As for the stability of robot s movement we use PID formula to maintain the stability of the robot s movement. PID stands for Proportional, Integrative and Derivative. Proportional used to determine the value of reaction from occurring errors, Integrative used to determine the SUM of the value from all occurring errors and Derivative used to determine the changes that happen between earlier error and present error. The common formula for PID controller is : (1) From (1) equation, as discrete we can make following equation : (2) (3) (4) (5) Which : Kpis the constanta of Proportional. Kiis the constanta of Integrative. Kdis the constanta of Derivative.

478 Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 enis the value of present error. Rnis the value of the result output after the calculation As for getting the value of distance read by IR Ranger as the distance sensor we use non-linear regression equation and median filter for making the result we get to be more accurate as how it should be. We use a quadratic function of the non-linear regression as the formula for out calculation. The quadratic function formula can be seen below: (6) Which for our calculation we input the Constanta for the equation (6) so we can get the exact value to be more accurate as the actual value, the equation will become: (7) 3. Experimental Result The result that we get from the experiments that we did can be seen on the following figure and graph to show and verificate the research and experiment that we had done: Fig.6. Sensor Distance Reading with Actual Distance Graph Fig.7. Sensor Reading s Error Graph As can be seen on figure 7, when the measured distance is still below 30 cm the sensor s distance reading still show a good accuracy compared to the actual distance measured. On figure 9 can be seen that when the sensor s

Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 479 reading has been more than 30cm the distance measured is off the line from how it supposed to be and on figure 10 can be seen when the distance measured still below 30cm the error from the sensor is around 5% and when the distance measured is more than 30cm the error reach 20%. All that result show that it fits with what explained on the sensor s datasheet. Because on the datasheet shows that the ideal distance for the sensor s reading is around 4-30 cm so sometimes the error could be gone until 0% as can be seen on range 24-25cm from graph on figure 7. Fig. 8. Compass Measured Direction Graph Compass Reading Error Graph Fig.9. Pulse Width Modulation and Rotation Per Minute Comparison Graph Pulse Width Modulation and Current Graph Fig. 10. Robot Stability Movement Graph

480 Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 As can be seen of figure 8 there is differences between the digital compass module s reading compared to analog compass and digital compass. The graphs show us that digital compass result is more accurate compared to analog compass based on figure 8 error s graph. Based on figure 10 can be seen that there are difference between four of the motors used, even on rotation per minute or even the current needed by the motor. The big difference between the left motor and right motor which is the current needed by the left motor is bigger than the right motor affecting the rotation per minute of the motor to be different as well. Because the rotation per minute of four of the motors are different so sooner or later the robot will be moving out of it track, as can be seen on figure 13 to 15. From the graphs on figure 11 and 12 can be seen that even on the without load and with load condition the Linux Beaglebone kernel has lower latency so it means that Linux Beaglebone kernel 3.8 has better performance. Fig. 11. Latency on Without Load Condition Fig. 12. Latency on With Load Condition

Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 481 (c) (d) Fig.13. Red Object Detection On Intensity 4 lux Red Object Detection On Intensity14 lux (c) Red Object Detection On Intensity 92 lux (d) Red Object Detection On Intensity152 lux On some picture on figure 13 can be seen that on low light intensity, the detection of red object is blur or not to clear and the detected shape is not same as how the object should be and when the light intensity is high the shape of detected object almost the same and has more solid color processed can be seen on 4 lux intensity the result of object detection is blur on the middle and when on 152 lux intensity the result of the object detection was fully detected. 4. Conclusion The created mobile robot on this experiment can measure distance well and gave more accurate result on range about 10cm to 30cm. The object detection by using the camera gave a result that it can be used to detect the color of an object well if the light intensity around the object and the camera around 4 lux to 152 lux, around that light intensity range camera still can detect the color of the object, on this experiment a red object well. The best PWM that can be used around 20% to 40% because at that PWM percentage the difference between four of the motors are little. References 1. Bräunl, T. (2008). EMBEDDED ROBOTICS, Mobile Robot Design and Applications with Embedded System. Perth: Springer. 2. G.Benet; F.Blanes; J.E.Simo; P.Perez (2002). Using infrared sensors for distance measurement in mobile robots. Robotics and Autonomous Systems 1006, 1-12. 3. Hafner, M.; Cunningham, D.; Caminiti, L.; Vecchio, D. (2011). Automated Vehicle To Vehicle Collision Avoidance at Intersection. Washington, DC: ITS America

482 Khafi zuddin Azazi et al. / Procedia Computer Science 59 ( 2015 ) 473 482 4. G.Gini; A.Marchi (2002). Indoor Robot Navigation with Single Camera Vision. DEI, Politecnico di Milano, piazza L. da Vinci 32. 5. Hallinan, C. (2011). Embedded Linux Primer, Second Edition,A Practical, Real-World Approach. Boston: Prentice Hall. 6. Laganière, R. (2011). OpenCV 2 Computer Vision Application Programming Cookbook. Birmingham: Packt Publishing. 7. Blanchette, J., & Summerfield, M. (2008). C++ GUI Programming with Qt 4, Second Edition. Prentice Hall. 8. Bovet, D. P., &Cesati, M. (2006). Understanding the Linux Kernel, Third Edition. Sebastopol: O Reilly. 9. Kroah-Hartman, G. (2007). Linux Kernel In a Nutshell. Sebastopol: O Reilly. 10. Love, R. (2007). LINUX System Programming. Sebastopol: O Reilly. 11. Luger, G. F. (2002). ARTIFICIAL INTELLIGENCE: Structure and Strategies for Complex Problem Solving, 4th Edition. Addison Wesley. 12. Mitchell, M., Oldham, J., & Samuel, A. (2001). Advanced Linux Programming. Indiana: New Riders. 13. Molkentin, D. (2007). TheBook of Qt4 :TheArt of BuildingQtApplications. San Fransisco: Open Source Press GmbH. 14. Sally, G. (2010). Pro Linux Embedded Systems. New York: Apress. 15. Salzman, P. J., Burian, M., &Pomerantz, O. (2001). The Linux Kernel Module Programming Guide. 16. Schildt, H. (2003). C++: A Beginner's Guide, Second Edition. McGraw-Hill Osborne Media. 17. Tanembaum, A. S. (2009). MODERN OPERATING SYSTEMS, Third Edition. Amsterdam: Pearson Education Internasional. 18. Winn Rosch (1999). Hardware Bible Fifth Edition. ISBN0-7897-1743-3 pp. 50-51