Post on 28-Dec-2015
Group #2 / Embedded Motion Control
1
[5HC99] Embedded Visual Control
Group #5 / Embedded Visual Control
Self-Balancing
Robot Navigation
Paul Padila
Vivian Zhang
Amritam Das
Michail Papamichail
Group #2 / Embedded Motion Control
2
Overview
1. Introduction
2. Objectives
3. Design
4. Control
5. Vision
6. Conclusions and Recommendations
Group #5 / Embedded Visual Control
Group #2 / Embedded Motion Control
3
1. Introduction
Group #5 / Embedded Visual Control
► The Self-balancing robots not so popular and do not have many applications yet.
► They are mostly used for educative purposes
► Possible reason: hard to be stabilized under certain conditions.
Application of self-balancing robot
Two wheels self-balance electric scooter
Group #2 / Embedded Motion Control
4
1. Introduction
Group #5 / Embedded Visual Control
► The color tracking method is also not very popular yet.
► Possible reasons could be that colors are hard to be tracked during intense sunshine or during the night.
Application of color tracking method
Color-based Object Tracking in Surveillance
Group #2 / Embedded Motion Control
5
1. Introduction
Group #5 / Embedded Visual Control
► The camera is mounted in a robot and not anchored in a wall.
► The robot have automated navigation and can scout areas.
► Limits the amount of cameras that are needed.
► Cameras cannot be tricked by changing clothing color in blind spots.
► There can be a network of cameras that can track the target cooperatively.
Possible application in the future
By Combining the previous two applications one can achieve
a new improved Surveillance system with great advantages.
Group #2 / Embedded Motion Control
6
1. Introduction
Group #5 / Embedded Visual Control
► Gesture detection
► Shape detection
Playstation eye gesture detection
Other visual methods
Group #2 / Embedded Motion Control
7
1. Introduction
Group #5 / Embedded Visual Control
► A robot that can perform certain tasks in a hospital.– Empties the trash.– Refills supplies.
Future applications in general
By Combining a self-balanced robot with any of the visual
method of detection.
► A robot that can identify flawed parts in constructions.– It recognizes skewed shapes.– It can work even if the construction site is closed.– It increases the safety of the construction site.– It protects the investments.
Group #2 / Embedded Motion Control
8
3. Design
Group #5 / Embedded Visual Control
Mechanical Design
► Multi-layer.
► Rigid supports.– Electronics– Motors
Group #2 / Embedded Motion Control
9
3. Design
Group #5 / Embedded Visual Control
Support Structure► The selected thickness of
the material is able to support the weight of the set of batteries used.
► This material is lightweight (minimizes the total weigh). This means an improvement in the energy consumption of the robot.
► MDF is easy to and inexpensive material that can be used with laser cutting machines.
Group #2 / Embedded Motion Control
10
3. Design
Group #5 / Embedded Visual Control
Plates
Group #2 / Embedded Motion Control
11
3. Design
Group #5 / Embedded Visual Control
Motor Base
► Motors should be perfectly aligned.
► Misalignment causes vibrations and deviations during the displacement of the Robot
Group #2 / Embedded Motion Control
12
3. Design
Group #5 / Embedded Visual Control
Motor
► Functions:– Stabilization – Displacement of
the robot
►Fast reactions
►Large torque
Group #2 / Embedded Motion Control
13
3. Design
Group #5 / Embedded Visual Control
Batteries
► Maximum energy consumption: 12V at 5.2A.
► 18650 batteries: 3.7V(x3) at 5.3A
Group #2 / Embedded Motion Control
14
3. Design
Group #5 / Embedded Visual Control
Arduino Shield
► Compact and easy to install.
► The interfaces between the sensors and the control are ready to use
►MPU-6050: 3-axis gyroscope and a 3-axis accelerometer in a single chip with I2C communication
►L298P: Motor driver, high voltage (50V) and high current (4A) dual channel full-bridge
Group #2 / Embedded Motion Control
15
3. Design
Group #5 / Embedded Visual Control
Arduino UNO
► Control unit.– Sensors– Actuators
Group #2 / Embedded Motion Control
16
4. Control
Group #5 / Embedded Visual Control
Control Problem
► Stabilization Problem
► Position Problem
Group #2 / Embedded Motion Control
17
4. Control
Group #5 / Embedded Visual Control
Stabilization Problem
► P
► PD
► PI
Group #2 / Embedded Motion Control
18
4. Control
Group #5 / Embedded Visual Control
Position Problem
► P
► PD
► PI
Group #2 / Embedded Motion Control
19
4. Control
Group #5 / Embedded Visual Control
Control Design
► Different control objectives.
► Same actuator.
► Different time constants are fundamental to guarantee stability
Group #2 / Embedded Motion Control
20
4. Control
Group #5 / Embedded Visual Control
Performance
Parameter Value
Settling time 3 sec
Position tolerance
+/- 4cm
Tracking tolerance
+/- 4 cm
Group #2 / Embedded Motion Control
21
Vision
–Image Processing– Colour Tracking
– Open CV
– Integration with Control
– Hardware
– Object Following
Group #2 / Embedded Motion Control
22
Choice of Hardware - Raspberry Pi 2 + pi Camera
Group #2 / Embedded Motion Control
23
Capturing Consistent Image
► To fix exposure time, set the shutter_speed attribute to a reasonable value.
► To fix exposure gains, let analog_gain and digital_gain settle on reasonable values, then set exposure_mode to 'off'.
► To fix white balance, set the awb_mode to 'off', then set awb_gains to a (red, blue) tuple of gains. Optionally, set iso to a fixed value.
Group #2 / Embedded Motion Control
24
Capturing Consistent Image – Sample Implementation
Group #2 / Embedded Motion Control
25
Color Tracking
► Image Conversion
Group #2 / Embedded Motion Control
26
Noise Elimination
► Morphological Operation
► Erosion
Dilation
Group #2 / Embedded Motion Control
27
Thresholded Image with Morphological Operation
Group #2 / Embedded Motion Control
28
Edge Detection + Contour Analysis
► Canny Edge Detection + Gaussian Blur Filter
Group #2 / Embedded Motion Control
29
Integrating Raspberry pi with Arduino
► Serial Communication
Group #2 / Embedded Motion Control
30
Object Tracking Algorithm
► Boolean Logic
Group #2 / Embedded Motion Control
31
Object Tracking Algorithm
► Proportionate Controller
Group #2 / Embedded Motion Control
32
Performance of Object Tracking
Camera Reaction Time
– camera
– object
Group #2 / Embedded Motion Control
33
Performance of Object Tracking
Change in The object Distance
Group #2 / Embedded Motion Control
34
Performance of Object Tracking
Movement of the Camera