Smartphone Control Robotics using Arduino and Android
Curious about controlling a Robot with smartphone, you have come to the right place. Learn the basic concept and programming required to design a fully functional Arduino Robot. For this course you will need the simplest but the most powerful and advanced Micro-Controller board called the Arduino UNO and a Bluetooth along with some basic electronics component.
Fundamentals of Robotics
Robotics is fundamentally a branch of technology that deals with the design, construction, operation, and application of robots. It is a powerful tool to understand the basic concepts of Computer Science, Mechanical engineering, and Electronics engineering. In this Arduino robot course will use a simplified version of C++ language for programming our Robot using the Arduino IDE.
Course Content and Overview
This course is designed for students interested in controlling an Arduino Robot with Android Smartphone. No coding experience is required; all you need is an Arduino, Bluetooth, some low cost hardware and electronics component for building the Robot. We will start from basics of Arduino programming and then move to higher topics.
Basics of Arduino
In this course you will first understand the basics of Arduino and then we will look at Arduino installation & setting up Arduino with your Computer or Laptop
Construction of Robot
After understanding the basics of Arduino next we will construct our Arduino Robot. All the components required for building this Robot are mentioned in Section 2
Time Control Robot
In the Time Control Robot section you will first understand the working of Motors Driver and how to control 2 motors using a single motor driver.
We will then write Arduino program so that the Robot moves in the following direction for a specific period of time
- Axial Left
- Axial Right
- Radial Right
- Radial Left
Serial Communication is essential for sending and receiving data between Electronic hardware devices. We will use Serial Communination to control Led’s, Potentiometer sensor and the Arduino Robot.
In this section you will learn to read analog values from sensors and display it on the Serial Monitor. You will also write (send data) values from PC to Arduino.
Android OS has taken the world by storm after its inception nearly 10 years back. One of the major benefits of owning an Android smartphone is the ability to use it as a Remote Control for controlling Robots and other Electronics devices.
In this course we will design 5 Android Applications using a tool called AppInventor2. AppInventor2 is a Graphical Programming Software using which even a non programmer can design amazing Android apps in a matter of minutes.
Controlling Arduino Robot using Android Smartphone
We will create 3 android applications for controlling the Arduino and each application works in different manner
In the Smartbot android app we will create 5 buttons (Forward, Backward, Left, Right and Stop). When the user clicks on any of the button the Robot will move in that particular direction.
In the AceleroControl Robot android app, we will use the accelerometer sensor from the android smartphone to control the Robot. So when the user tilts the forward direction the Robot will move forward, when the Smartphone is kept flat the Robot will Stop. Similarly by pointing the smartphone in direction you can control the direction of the Arduino Robot.
In the Voice Control Robot we will move our Robot in different direction by giving voice inputs
Basics of Arduino
In this video you understand the basics of Arduino Micro Controller. Arduino is an Open source hardware and is one of the most popular development board.
In this video we will download and install the Arduino IDE
Setting up the IDE is easy but it can become a tedious task if you dont know how to set it up. In this video I will teach you step by step on how to setup the Arduino UNO board with the Arduino IDE
Time to write some code. In this video I will introduce you to the basics of Arduino programming. We will write a very simple program to blink the Arduino on-board LED
CONSTRUCTION AND WIRING OF ROBOT
In this video I explain you what's a Robot Chassis and how you can choose a Good Robot chassis for building your Robot
After choosing a good Robot chassis, it's now time to look at all the parts that you will require for building the Robot
Finally its Time to construct our Time Control Robot
In this video we will explain you the basics of Motor Driver and I will show you how to choose a good Motor Driver
The Motor Driver breakout board consist of two H-Bridge which are required for running the Motors. One H-Bridge circuit control one Motor at a time. So in this video you will understand What is an H Bridge?and the working of H bridge
In this video we will look at the wiring connections between Arduino, Motor Driver and DC Motors.
TIME CONTROL ARDUINO ROBOT
Finally we write the first piece of code for moving our Time Control Robot. In this video we will only the program for the Robot in Forward direction. But after finishing the code do not upload the code inside the Arduino because you will get 3 different types of Output. What are the 3 different types? Check them in the next video
In the previous video we have written the program for moving the Robot Forward. But if you are wiring connections are not proper then you will not the desired output. Check this video to understand these 3 different outputs and make wiring changes between Arduino, Motor Driver and DC Motors
After moving the Robot Forward for 2 sec, its now time to move it Backward for 2 sec
A two wheel robot can take two types of tur
- AXIAL TURN
- RADIAL TURN
Understand the basic difference between the Axial & Radial turn.
In this video we will write the code for taking Axial Left turn and Axial Right turn
In this video we will write the code for taking Radial Left turn and Radial Right turn
After moving the Robot in 6 different direction its now time to Stop our Robot. So in this video we will write the programming logic for stopping the Robot.
In the previous video we have written the program to STOP the Robot, but the Robot Stopped only for 5 seconds so in this video I will explain you two things with single piece of code.
- How to permanently stop a Robot?
- How to execute an arduino program only once?
In this video you will learn how to use functions in Arduino ? Next we will stop the Robot permanently using the Infinity command
SERIAL COMMUNICATION & PC CONTROL ROBOTICS
In this video you will understand the basic working of Potentiometer Sensor
In this video you will write an arduino code to read value from an Analog Sensor and display it on the Serial Monitor
In this arduino program we will use the Serial Communications library to send data to the Arduino. The arduino will receive this data and turn the LED ON or OFF
In this arduino program we control the Robot from the Laptop or PC. We will only program the Robot to move in the Forward direction
After moving the Robot Forward we will now move the Robot Backward, Left, Right and Stop using different keys from the Laptop
ANDROID PROGRAMMING | CREATE YOUR FIRST ANDROID APP
In this video we look at different blocks in AppInventor2
Time to create your First Android App. In this video you will first create an Android app and install it inside your Android Smartphone
WIRELESS COMMUNICATION | SMARTPHONE CONTROL LED
In this video you will understand the basics of Bluetooth
In this video you will learn the basics of Wireless Communication and how it takes place between Bluetooth devices?
In this video we create an Android app called Smart LED to control the Arduino onboard LED i.e 13. We will design the User Interface of Smart LED application in this section
In this video we will finish the programming of Smart LED App
After completion of Android app, In this video we will finish the Arduino Program to receive data from Android Smartphone
Output for Smart LED Program
SMARTBOT - Smartphone Control Robot with Onscreen buttons
In this video we will design the User Interface for our SmartBot Android Application
In this video we will complete the Android programming for the SmartBot Android application
In this video we will finish the Arduino program for SMARTBOT to receive data from Android Smartphone
Output for SMARTBOT Program
ACELEROCONTROL ROBOT - ACCELEROMETER SENSOR ROBOTICS
In this video you will understand the basic working of an accelerometer sensor
After understanding the basics of accelerometer sensor, now we create an android app for reading the X, Y, Z axis value from an Android Smartphone
After developing the Accelerometer Reading Android App.In this video I will tilt the smartphone in different direction and we will note down this acceleration value.
In this video we will design the User Interface for the AceleroControl Robot Android Application
In this video we will complete the Android programming for the AceleControl Robot Android application
In this video we will write the arduino program for AceleroControl Robot
AceleroControl Robot Output Video
VOICEBOT - Voice Control Robot
In this video you will understand the concept of Voice Recognition in Android smartphone
In this video we will design the User Interface for the Voice Android app
In this video you will create an android app for recognizing Voice. We will call the Speech Recognizer component for recognizing the voice
In this video we will complete the Android programming for the VoiceBot Android application
In this video we will write the arduino program for Voice Control Robot