Essay: Mobile platforms

Essay details:

  • Subject area(s): Engineering essays
  • Reading time: 21 minutes
  • Price: Free download
  • Published on: August 18, 2019
  • File format: Text
  • Number of pages: 2
  • Mobile platforms Overall rating: 0 out of 5 based on 0 reviews.

Text preview of this essay:

This page of the essay has 3214 words. Download the full version above.

Mobile Platform

Figure 1: ROBO TX Explorer, Dimensions 465x80x320mm (source: [2])

This chapter introduces fundamental information about mobile platforms, their types, the process of choosing the current one and why. It also states the means of path tracking and the possible methods according to the nature of the project goals as well as the needed preparations, cabling and programming to achieve its target and the problems initiated as a reason for this choice and (if possible) its avoidance procedures in regards to this project and the applications of such platforms in the field of industrial manufacturing

In general, mobile robots are automatic machines that are capable of moving around the certain environment using traditional or untraditional locomotive principles to reach their destination. The way the reach their goal can be divided to autonomous or predefined (manual) or a combination of both methods. Autonomous navigation allows the robot through its sensors and programming algorithm to decide which way it should take to reach its destination, while predefined or manual navigation simply relies on human control as an input to get it to needed position. [3, p. 28]

Mobil robots are categorized according to their motion kinematics and how they anticipate the terrain under them. Each motion kinematic was developed to achieve certain feature and performance aspects (speed, weight, precision, type of terrain).

Legged Mobile Robots
Legged locomotion is characterized by a series of point contacts between the robot and the
ground. The key advantages include adaptability and maneuverability in rough terrain.
Because only a set of point contacts is required, the quality of the ground, between those
Points does not matter so long as the robot can maintain adequate ground clearance. Also, a walking robot is capable of crossing a hole or chasm so long as its reach exceeds the width of the hole. A final advantage of legged locomotion is the potential to manipulate
objects in the environment with great skill. An excellent insect example, the dung beetle, is
capable of rolling a ball while locomoting by way of its dexterous front legs. [3, p. 17]

The main disadvantages of legged locomotion include power and mechanical complexity.
The leg, which may include several degrees of freedom, must be capable of sustaining
part of the robot’s total weight, and in many robots, must be capable of lifting and lowering
the robot. Additionally, high maneuverability will only be achieved if the legs have a sufficient
number of degrees of freedom to impart forces in some different directions. [3, p. 18]

Due to their relatively low performance and reliability those are still in development phase and don’t have any real application in IM. However, there is substantial progress regarding performance and stability in the field done by companies like Boston Dynamics [4].

Wheeled Mobile Robots
As Siegwart stated, “The wheel is the most popular locomotion mechanism in mobile robotics and man-made vehicles in general” [3] due to its performance and uncomplex mechanism. A wheel mechanism in most cases is self-balanced and highly maneuverable. There are many variations for a wheel mechanism which depends on aspects like the wheel design, the number of wheels and their allocation. From just two wheels a mechanism can be stable, but because of its limitations, a system of 3 or more wheels is preferred [3, p. 33].

In the field of handling especially in assembly lines, mobile robots like KUKA’s KMP 1500 and omniMove [5] are used to manage machined parts (i.e. car bodies) between different assembly stations. As part of a full automation plan for the A. line/factory, they carry out multi-tasks simultaneously. Their omnidirectional wheels enable them more maneuverability in comparison to common solutions without scarifying performance. They have a load range from 1500 kg to 20.000 kg [5] that make them suitable for automotive and airplanes assembly lines.

Figure 2: Car body carried by KUKA KMP 1500 (left) and KUKA omniMove transports aircraft parts at Premium Aerotec in Augsburg (right). Image Source: Premium Aerotec (Source: Kuka [5])

Tracked slip/skid locomotion
For the former types of configurations, they weren’t based on a slip/slid mechanism. Such a mechanism is based on steering the robot by moving one or more wheels in a different direction and/or at different speeds. This type of asynchronous motion creates a deviation in a robot’s direction which with the right proportions can be manipulated into controlling the rotation of a mobile robot. An example of this concept is army tanks as a conventional vehicle and Fischertechnik Robo Explorer TX (Figure 1) in the field of mobile robots.

The locomotive of these types of vehicles are mainly based on threaded connected wheels. Those have a larger ground contact area which improves their maneuverability on different kinds terrain which regarded easy for steering ability but possess a challenge to be preciousely controlled due to its complexity as rotation isn’t rather on a point or even a fixed axis but in the area of the contacted thread which concludes interchanging axes during a turn [3, p. 42].

Platform Selection
Selection criteria
For the given task, a mobile robot is needed that has the following characteristics and capabilities:
1. a stable structure that can handle the robot arm mounted on it
2. simple and modular to best integrate with robot arm
3. has its own programmable microcontroller to manage and control its movement
4. has sensor and programming compatibility for path tracking and obstacles avoidance
5. communication option with arm’s microcontroller
6. Static and dynamic stability with mounted arm

Regarding those aspects and resources provided from UAS Technikum Wien two platforms were considered. Those platforms have features and equipment that allow them to carry out various navigational tasks including this required by this project. They are also relatively simple to control and program, but as a microcontroller they also have some limitations that can risk the achievement of this project’s goal.

In these processes both platforms and their characteristics/parameters will be analyzed and compared to the other platform. Only the relevant characteristics (including KO criteria) will be compared others will be excluded. Then each relevant parameter will be given points on a scale from 1 to 10 according to its criticality to the project.

Arduino Robot
The Arduino Robot is a wheeled mobile robot. It consists of two wheels with each has its own drive motor and two more points of contact for stability. Its control hierarchy is also based on two Arduino microcontrollers based on ATmega32u4 chip, one for controlling both motors (Motor board) and the other for reading sensors, end interface, and control of the motor board (Control board). Both microcontrollers are programmable.

Figure 3: Arduino Robot Dimensions: 185x85mm (Source: [6])
Table 1: Technical Specification of control board [6]
Control Board Summary
Microcontroller ATmega32u4
Operating Voltage 5V
Input Voltage 5V through flat cable
Digital I/O Pins 5
PWM Channels 6
Analog Input Channels 4 (of the Digital I/O pins)
Analog Input Channels (multiplexed) 8
DC Current per I/O Pin 40 mA
Flash Memory 32 KB (ATmega32u4) of which 4 KB used by bootloader
SRAM 2.5 KB (ATmega32u4)
EEPROM (internal) 1 KB (ATmega32u4)
EEPROM (external) 512 Kbit (I2C)
Clock Speed 16 MHz
Keypad 5 keys
Knob potentiometer attached to analog pin
Full color LCD over SPI communication
SD card reader for FAT16 formatted cards
Speaker 8 Ohm
Digital Compass
I2C soldering ports 3
Prototyping areas 4
Radius 185 mm
Height 85 mm

Figure 4: Arduino Robot Control Board, Radius: 185mm (Source: [6])
Table 2: Technical Specification of motor board [6]
Motor Board Summary
Microcontroller ATmega32u4
Operating Voltage 5V
Input Voltage 9V to battery charger
AA battery slot 4 alkaline or NiMh rechargeable batteries
Digital I/O Pins 4
PWM Channels 1
Analog Input Channels 4 (same as the Digital I/O pins)
DC Current per I/O Pin 40 mA
DC-DC converter generates 5V to power up the whole robot
Flash Memory 32 KB (ATmega32u4) of which 4 KB used by bootloader
SRAM 2.5 KB (ATmega32u4)
EEPROM 1 KB (ATmega32u4)
Clock Speed 16 MHz
Trimmer for movement calibration
IR line following sensors 5
I2C soldering ports 1
Prototyping areas 2

Figure 5: Arduino Robot Motor Board, Radius: 185mm (Source: [6])
Fischertechnik Robo TX Explorer
According to the official website, the Robo TX Explorer is a multi-function micro-mobile robot used mainly for teaching and experimental purposes which make it ideal for this project. It comes with various types of sensors like guidance, light, temperature .., etc. And output equipment such as lights, motors (with encoders) and sarin. The Robo TX Explorer is controlled exclusively by Fischertechnik microcontroller ROBOTICS TXT Controller.

Table 3: Fischertechnik TXT Controller & Robo TX Specifications [2]
Dual processor ARM Cortex A8 (32bit/600mHz) + Cortex M3
Memory capacity: 128 MB DDR3 RAM, 64 MB Flash
Memory expansion: Micro SD card slot
Display: Color 2.4“ touch display (320×240 pixels)
8 Universal inputs: Digital / analog 0-9VDC, analog 0–5kΩ
4 High-speed numerical inputs: Digital, frequency up to 1kHz
4 Motor outputs 9V/250mA (max: 800 mA): speed infinitely controllable, short-circuit proof, alternative 8 single outputs for components such as lights, etc.
Combined Bluetooth / WiFi RF module: BT 2.1 EDR+ 4.0, WLAN 802.11
Infrared receiver diode: for fischertechnik Control Set transmitter
USB 2.0 Client: Mini USB port for connection to PC
USB Host interface: USB-A port for fischertechnik USB camera, USB sticks, etc.
Camera interface: over USB host, Linux camera driver integrated into operating system
10-pin male connector for additional inputs and outputs as well as I2C interface Integrated loudspeaker
Integrated real time clock with replaceable buffer battery: for capturing measured values within a defined period of time
Linux-based, open source operating system
Programming ROBO Pro, C-Compiler, PC-Library, and many others.
Link to smartphones / tablet PC‘s via Bluetooth or WLAN
Power supply: 9V DC socket 3.45 mm or fischertechnik 2.5 mm sockets.
Dimensions 225x65x150 mm
Robo TX Explorer
Contents two encoder motors, three indicator lights, buzzer, NTC resistor, photoresistor, ultrasonic distance sensor, optical color sensor and an IR trail sensor.
Dimensions 465x80x320 mm

Cost Utility method (NWA)
As both microcontrollers are provided with the mind that they are suitable for the project’s goals and other options cannot be considered (resources) there was no need to KO criteria analysis and was proceeded to the next step.
For the next step, there will be a direct comparison between the two robots and respectively their microcontroller. The comparison will be based on the relevant properties essential for this project and will be assigned to factor (up to 10) according to their importance and criticality to meet its goals. Then each comparison point will be assigned a score from 1 to 10 as 1 is relatively very bad and 10 is excellent regarding nature of the comparison point.

After completing evaluating each robot according to the stated comparison points the point will be multiplied by their respective factors the summed for a total score. The robot with the higher total score is best suited for carrying out the needed task
Table 4: Evaluation of the 2 Mobile robots
Comparison points Arduino Robot Robo TX Explorer
Factor Score F x S Score F x S
Geometry 6 4 24 8 48
Functionality 9 2 18 9 81
Stability 8 5 40 7 56
Resources 6 8 48 4 24
Customizability 5 3 15 7 35
Sustaining load 8 3 21 8 64
Total Score 166 308

As concluded it the cost-utility analysis, the Robo TX Explorer was chosen to carry on further development of the project. The reason behind the assigned score for the comparison points can be summarized in following statements:
Better Geometry (rectangular and not circular)
More static and kinematic stability (lower center of gravity)
Modularity (ease of assembly)
Ease of coding: RoboPro (flow-chart based programing software)
Functionality (Performance problems by Arduino Robot)

Platform Configuration
For the basic configuration of the mobile robot, it will be assembled to best suitable form of stability while providing a horizontal base for the robot arm.

Figure 6: Basic assembly of Fischertechnik Robo explorer TX and Plugin Diagram, Scale 1:4 (source:[7])

The Robo explorer TX is formed of mini parts that are connected using friction. This method used to simplify and enhance customizing the robot mountable platform for additional part (i.e. robot arm) [7].

As Basic functional configuration, the encoder motors are connected to TXT microcontroller. Each encoder motor consists of a simple motor with integrated encoder in one box and has 5 outlets; 2 for current (motor, encoder), 2 for ground (motor, encoder) and 1 for signal (encoder). The TX microcontroller is connected to a 9V Battery which transmits power to all connected peripherals [7].

Line following and obstacle avoidance strategy
The Robo explorer TX has a form of self-navigation & tracking capabilities as well as avoidance system. Due to its size, form and what is designed for (learning/proof of concept), it has the basic form of those features. Namely for self-navigation, it uses line following method and IR for obstacles detection as avoidance system. [8] [9]

Line following is one of the simplest forms for achieving a self-navigating mobile robot. It’s a semi-automated method that depends upon sensing a pre-drawn line (usually black) and follow it in a closed loop. The idea is based a pair of IR sensor that detects the black line. Each sensor is in a continuous reading whether it detects the line where the robot goal is to try keeping both sensors detecting the line simultaneously. An algorithm is used in this case to determine the action of the mobile robot based on the combination of signals from both sensors.
Table 5: IR pair sensor variables and their result actions
Left Sensor Right Sensor Action
On (detects line) On Move forward
Off On Move left
On Off Move right
Off Off Stop or move in circle (search for line)

The disadvantage of this method is the movement of the robot is not smooth as it wobbles around the line trying to figure the correct path. For a smoother yet more accurate line following is by using a PID controller. [8] [10]

Figure 7: Robot movement scenarios during line following (source:[10])
Obstacle avoidance
Local obstacle avoidance aims at identifying and managing solutions to overcome (if possible) objects and distortions in a planned or navigated path. It does so by changing robot’s trajectory in a suitable manner based on the input from its distance and body sensing sensors, then returns to its original path after the obstacle has been successfully avoided. This algorithm acts as a subprogram that is only activated once an obstacle in the robot path is detected. The nature of the obstacle and the complexity of the avoidance algorithm determines its effectiveness and efficiency [9].

Figure 8: Kuka youBot avoiding an obstacle by turning around it (source:[11])

Robot Arm
A robot arm is mainly built by connecting the chain of bodies called links each two are connected through joints. Joints are often an optimal place to setup up actuators. Actuators are motors (electrical) that allow the movement of links with respect to each other.

Degree of freedom
Robot’s configuration states the position parameters of all points of a robot. As the links are solid rigid bodies not all of them are needed to represent the robot’s configuration. Mathematically they are regarded constants, so they are represented as factors in displacement, velocity and acceleration formulas.
To define a planar body with a specific area on a plane, it needs coordinates in (x,y) in respect to the origin to pin point its position. It also needs a coordinate [theta] to specify its orientation at the given position.
As Lynch stated, “The number of degrees of freedom (DoF) of a robot is the smallest number of real-valued coordinates needed to represent its configuration.” [12, p. 11]. As stated above the links of a robot is of no particular interest of studying as they are with constant properties, while the joint the displace them and alter their orientation are much more relevant to determining the DoF of a robot.

Degrees of freedom = (Sum of freedoms of the bodies) – (Number of independent constraints)

For basic joints found in the typical robot, a joint connects only two links, joints that connect 3 or more links are excluded. In reality, joints are not found in planer surface though it can have planar or spatial movement. Due to their various mechanisms, there are many different types of joint with each has its gains and losses but for ease of determining a robots DoF, they are categorized in few groups relevant to their mechanisms. Using a different kind of joints is done according to the designer concept and his goals of how to provide a degree of motion freedom or in other cases motion constrains between links.
Table 6: Types of mechanical joint and their DoF [12]
Joint Type DoF Description
Revolute (R) 1 aka hinge joint, allows rotational motion about the joint axis
Prismatic (P) 1 aka sliding or linear joint, allows translational (or rectilinear) motion along the direction of the joint axis
Screw (H) 1 aka helical joint, allows simultaneous rotation and translation about a screw axis.
Cylindrical (C) 2 allows independent translations and rotations about a single fixed joint axis.
Universal (U) 2 consists of a pair of revolute joints arranged so that their joint axes are orthogonal.
Spherical (S) 3 ball-and-socket joint, has three degrees of freedom and functions much like our shoulder joint.

Grübler\’s Formula determines the degree of freedom of a kinematic chain, that is, a coupling of rigid bodies using mechanical constraints [13, p. 77]. While the formula is reliable to express the number of parameters that define the configuration of a linkage from the number of links and joints and the degree of freedom at each joint, It fails to compute the DoF of some closed chained mechanisms with over constrains (singularities) [12].

Grübler\’s formula for the number of degrees of freedom of the robot is:
Where N is the number of links, J is the number of joints; m is the number of DoF of a rigid body (m = 3 for planar mechanisms and m = 6 for spatial mechanisms), and f is DoF for a Joint i
Arm Kinematics
What is meant by forward kinematics in robotics, is the calculation of position and orientation of an end-effector of a robot arm given the parameters and joint values.

Figure 9: Robot arm of 2 link and 2 joints
Figure 9 illustrates the forward kinematics of a 2R planar open chain mechanism, where links lengths are L1, L2 and their incremental orientation based on the origin are θ1 and θ2 respectively. The Cartesian coordinates (x,y) and orientation of the end effector Φ will be as following:

x= L_1 cos⁡〖θ_1+L_2 cos⁡(θ_1-θ_2 ) 〗
y= L_1 sin⁡〖θ_1+L_2 sin⁡〖(θ_1-θ_2)〗 〗
This can also be more systematically calculated by attaching reference frame to the origin and the center of each joint (point of orientation between two links) [12]
Where T_01=[■(cosθ_1&-sinθ_1&[email protected]θ_1&cosθ_1&[email protected]&0&1)], T_12=[■(cosθ_2&sinθ_2&[email protected]θ_2&cosθ_2&[email protected]&0&1)] and , T_23=[■(1&0&[email protected]&1&[email protected]&0&1)]
The orientation of the end effector can be also described using this method assuming all joints’ angles are defaulting to origin, so the orientation of the end effector will be:
M=[■(1&0&〖L_1+L〗[email protected]&1&[email protected]&0&1)]

Arm Kinematics Details

Planer motion equation:
P(x¦y)= f(θ_1,θ_2 )
x= L_1 cos⁡〖θ_1+L_2 cos⁡(θ_1-θ_2 ) 〗
y= L_1 sin⁡〖θ_1+L_2 sin⁡〖(θ_1-θ_2)〗 〗
dx/dt= -θ ̇_1 L_1 sin⁡〖θ_1-(θ ̇_1-θ ̇_2 ) L_2 sin⁡〖(θ_1-θ_2)〗 〗
dy/dt= θ ̇_1 L_1 cos⁡〖θ_1+(θ ̇_1-θ ̇_2 ) L_2 cos⁡〖(θ_1-θ_2)〗 〗
dP/dt [■([email protected])]=[■(〖-θ ̇_1 sin〗⁡〖θ_1 〗&〖-(θ ̇_1-θ ̇_2 )sin〗⁡(θ_1-θ_2 )@〖θ ̇_1 cos〗⁡〖θ_1 〗&(θ ̇_1-θ ̇_2 )cos⁡〖(θ_1-θ_2)〗 )][■([email protected]_2 )]
If dx/dt≠0 ,dy/dt=0  movement only in x direction
If dx/dt=0 ,dy/dt≠0  movement only in y direction

Figure 10: Determining θ2 by solving the quadrable “L1cbd”
e=√(d^2+〖L_1〗^2-2db.cos⁡(180-(θ_1+θ_2 )) )=√(〖L_1〗^2+d^2+2db.cos⁡(θ_1+θ_2 ) )
e=√(c²+b²-2bc.cosφ_2 )
β=sin^(-1)⁡〖((bsinφ_2)/e) ……(2)〗

...(download the rest of the essay above)

About this essay:

This essay was submitted to us by a student in order to help you with your studies.

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay Sauce, Mobile platforms. Available from:<> [Accessed 23-09-19].

Review this essay:

Please note that the above text is only a preview of this essay.

Comments (optional)

Latest reviews: