You are on page 1of 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/334155810

Implementation of Digital Image Processing Using NI myRIO and Arduino


Mega 2560 as Controller On Rover Bogie Robot

Conference Paper · October 2018


DOI: 10.1109/iCAST1.2018.8751506

CITATIONS READS

6 1,658

3 authors, including:

Arif Ainur Rafiq Muhamad Yusuf


Politeknik Negeri Cilacap Universiti Teknologi Malaysia
14 PUBLICATIONS   31 CITATIONS    6 PUBLICATIONS   11 CITATIONS   

SEE PROFILE SEE PROFILE

Some of the authors of this publication are also working on these related projects:

NI myRIO development as segway controller for lecturer mobility in campus area View project

All content following this page was uploaded by Arif Ainur Rafiq on 18 March 2020.

The user has requested enhancement of the downloaded file.


2018 International Conference on Applied Science and Technology (ICAST)

Implementation of Digital Image Processing Using


NI myRIO and Arduino Mega 2560 as Controller
On Rover Bogie Robot
Arif Ainur Rafiq Electrical Muhamad Yusuf Electrical Pujono
Engineering Department State Engineering Department State Mechanical Engineering Department
Polytechnic of Cilacap Cilacap, Polytechnic of Cilacap Cilacap, State Polytechnic of Cilacap Cilacap,
Indonesia Indonesia Indonesia djovent@yahoo.com
arifainurrafiq@gmail.com muhamad.yusuf.1986@gmail.com

Abstract— the need for exploration of a place or area is suspension system, this explorers robot can go through a
sometimes necessary for research, documentation or special variety of terrains such as climbing obstacles with a certain
purpose in that area. It is like researching animal life in the height and pass through sandy terrain or unstable terrain [1].
forest, documenting historical sites or searching for the victim Rover bogie also has characteristics that it is suitable for use
because of a natural disaster and an area with a difficult
in areas prone to disaster or areas that are difficult to reach
terrain. However, in some such places, there are many possible
dangers if we send humans to carry out exploratory missions. when natural disaster.
The realization involves making a simulation of the system, This bogie rover robot is designed using Arduino
designing the software, designing the physical system Mega2560 as the control of four DC PG-36 motors, wireless
mechanically and electrically and finally implementing the joystick to build remote control system and NI myRIO 1900
controller to an NI myRIO hardware platform and Arduino as a processor of the image obtained from the camera
Mega 2560. This research will design a rover robot to explore integrated with LabVIEW, so the images and video obtained
in various places that have a variety of terrain characteristic. can be displayed in real time. Images obtained from the
Rover robot is designed with passive suspension rocker-bogie camera will be processed by LabVIEW via image
system. With this system, the robot can go through a variety of
processing tools. In this image processing will be
heavy terrain, a hill, sandy terrain and unstable terrain with a
certain height. An algorithm is created to process the images or enlightened from the picture quality. This control and image
video that captured by the camera. The controller is capture system will make the robot able to perform the
implemented using LabVIEW myRIO 2016 SP2 development exploration mission efficiently.
environment. Arduino will control the rover bogie motion
using velocity reference inputs via a joystick. The realization of II. MATERIAL AND METHODS
this project is successful, however further testing and dynamics In this research will be done in two stages, software
analysis is needed in order to control the robot and image design and hardware design.
processing optimally.

Keywords—Digital image processing, Rover bogie robot, NI LabVIEW


Design
myRIO, Arduino Mega 2560
System
Planning
Hardware Robot Rover
The need for supervision over certain areas, such as Design Bogie
offices, industry, banking and so on more and more. Not Fig 1 Design Planning
only in areas that are easy to reach but also in areas that are
difficult to access [1], such as in the mining exploration area Fig 1 is a block diagram the system to be made. System
or areas with post-disaster status. These things require a design is divided into two part, the design of software and
media that can be used for monitoring. hardware design. In software design will be subdivided into
Currently, exploration a place is needed for research two parts, they are programming in arduino mega and
purposes, exploration, documentation, or search for programming design in LabVIEW. The design of the
something in the area being explored. Such as animal life hardware is how the robot rover bogie is made.
research, forest exploration, historic cave documentation, or Robot rover bogie made using aluminum material that
the search for victims in the area of natural disasters. has good enough resistance. Arduino Mega2560 is used to
However, in certain places as mentioned above, sometimes control six PG-36 DC motors as the driving force of the
many dangers can happen if we send humans directly. For robot rover bogie, also for wireless joystick to control the
example, exploration of wild forests, exploring caves that robot rover bogie movement.
are prone to collapse, and the search for victims in post-
disaster areas that still have the potential for subsequent Arduino
Power Supply Motor Driver
disasters. Mega2560
Based on the description above, this research will design
and implement a robot that can explore in places that have a
variety of terrain characteristics. The robot is designed in the Wireless Robot Rover
Joystick Bogie
form of a robot rover or robot explorer using passive
suspension system rocker bogie. By using the bogie rocker Fig 2 Diagram Block for Rover Bogie Robot

978-1-5386-7548-9/18/$31.00 ©2018 IEEE


210
A. Arduino Mega2560 (UART / RS232) which can work without clock path due to
The Arduino Mega 2560 is a microcontroller board each sender and receiver.
based on the ATmega2560. It has 54 digital input/output
pins (of which 15 can be used as PWM outputs), 16 analog
inputs, 4 UARTs (hardware serial ports), a 16 MHz crystal PS2_RECEIVER
VCC GND CLK ATT CMD DAT
oscillator, a USB connection, a power jack, an ISP header,
and a reset button.

MAIN_PROCESSOR

13
12

10

14
15
16
17
18
19
20
21
11

9
8

7
6
5
4
3
2
1
0
TX0 PE1/TXD0/PDO
PH4/OC4B
PH3/OC4A
PE3/OC3A/AIN1
PG5/OC0B
PE5/OC3C/INT5
PE4/OC3B/INT4

RX0 PE0/RXD0/PCINT8

RX3 PJ0/RXD3/PCINT9
TX2 PH1/TXD2
RX2 PH0/RXD2
TX1 PD3/TXD1/INT3

SDA PD1/SDA/INT1
TX3 PJ1/TXD3/PCINT10

RX1 PD2/RXD1/INT2

SCL PD0/SCL/INT0
PH6/OC2B
PH5/OC4C
AREF

PB6/OC1B/PCINT6
PB5/OC1A/PCINT5
PB4/OC2A/PCINT4
PB7/OC0A/OC1C/PCINT7
22
PA0/AD0
PA1/AD1 23
24
PA2/AD2
PA3/AD3 25
26
PA4/AD4
PA5/AD5 27
28
PA6/AD6
PA7/AD7 29
PC7/A15 30
PWM COMUNICATION 31
PC6/A14
microcontrolandos.blogspot.com 32
PC5/A13
33

DIGITAL
PC4/A12
34
PC3/A11
PC2/A10 35
36
PC1/A9
PC0/A8 37
ATMEGA2560 38
16AU 1126 PD7/T0
PG2/ALE 39
40
PG1/RD
41
Fig 3 Arduino Mega2560 PG0/W R
PL7
42
43
PL6 44
PL5/OC5C
B. BTS 7960B Motor Driver ANALOG IN
PL4/OC5B
PL3/OC5A
45
46
47
PL2/T5
48

PK2/ADC10/PCINT18

PK4/ADC12/PCINT20
PK5/ADC13/PCINT21
PK6/ADC14/PCINT22
PK7/ADC15/PCINT23
PK3/ADC11/PCINT19
The BTS 7960 is a fully integrated high current half PL1/ICP5

PK0/ADC8/PCINT16
PK1/ADC9/PCINT17
49
PL0/ICP4 50

PF6/ADC6/TDO
PF5/ADC5/TMS
PB3/MISO/PCINT3

PF4/ADC4/TCK
PF7/ADC7/TDI
51
bridge for motor drive supplications. It is part of that PB2/MOSI/PCINT2 52

PF0/ADC0
PF1/ADC1
PF2/ADC2
PF3/ADC3
PB1/SCK/PCINT1
PB0/SS/PCINT0 53

RESET
containing one p-channel low side MOSFET with an
integrated driver IC in one package. Due to the p-channel

A0
A1
A2
A3
A7
A6
A5
A4

A8
A9
A10
A11
A12
A13
A14
A15
ARDUINO MEGA2560 R3

high side switch the need for a charge pump is eliminated


thus minimizing EMI. Fig 6 Joystick Wireless Schematic

D. DC Motor
DC motors consist of one set of coils, called armature
winding, inside another set of coils or a set of permanent
magnets, called the stator. Applying a voltage to the coils
produces a torque in the armature, resulting in motion.In this
study used six PG-36 type DC motor that serves as a motion
media from robot rover bogie.
MA IN_PROCESSOR
ARDUINO MEGA2560 R3

GND VCC GND VCC


RESET
AREF
L_IS L_IS PB7/OC0A/OC1C/PCINT7
13 L_IS R_IS
12
PB6/ OC1B/PCINT6
11
A0 PB5/ OC1A/PCINT5
L_EN R_EN PF0/ADC0 10 L_EN R_EN
A1 PB4/ OC2A/PCINT4
PF1/ADC1 9
A2 PH6/OC2B
PF2/ADC2 8

Fig 4 BTS 7960B motor driver circuit LPW M RPW M A3 PH5/OC4C


LPW M RPW M
PWM

PF3/ADC3
A7 PF7/ADC7/TDI A6
PH4/OC4B 7
PF6/ADC6/ TDO A5
ANALOG IN

PH3/OC4A 6
PF5/ADC5/TMS
ATMEGA2560

5
IBT-2 IBT-2
16AU 1126

M+ M- A4 PE3/OC3A/AIN1 M+ M-
PF4/ADC4/TCK 4
microcontrolandos. blogspot.com

PG5/OC0B
3
A8 PE5/OC3C/INT5
PK0/ADC8/PCINT16 2
A9 PE4/ OC3B/INT4
PK1/ADC9/PCINT17 1

C. Wireless Joystick PS2 A10 TX0 PE1/ TXD0/PDO


PK2/ADC10/PCINT18 0
A11 RX0 PE0/RXD0/PCINT8
COMUNICATION

PK3/ADC11/ PCINT19
A12 PK4/ADC12/PCINT20
TX3 PJ1/TXD3/PCINT10 14
A13 PK5/ADC13/PCINT21
RX3 PJ 0/RXD3/PCINT9 15
A14 PK6/ADC14/PCINT22
TX2 PH1/ TXD2 16
A15

Joystick PS2 Wireless consists of two modules; they are


PK7/ADC15/PCINT23 17
RX2 PH0/RXD2
TX1 PD3/ TXD1/INT3 18
19
RX1 PD2/RXD1/INT2
20
PB2/MOSI/PCINT2
PB3/MISO/PCINT3

SDA PD1/SDA/INT1
PB1/SCK/PCINT1

the transmitter module and receiver module. The transmitter


PB0/SS/PCINT0

DIGITAL
PL5/OC5C
PL3/OC5A
PL4/OC5B

21
PL0/ICP4
PL1/ICP5

PG2/ALE

PC2/A10

PC4/A12

PC6/A14
PC7/A15
PA7/AD7
PA6/AD6
PA5/AD5
PA4/AD4
PA3/AD3
PA2/AD2
PA1/AD1
PG0/WR

PC5/A13

PA0/AD0

SCL PD0/SCL/INT0
PC3/A11
PG1/RD

PD7/T0
PC0/A8
PC1/A9
PL2/T5

module functions as input and transmits data the input data


PL6
PL7
53
52
51
50
49
48
47
46
45
44
43
42
41

39
38
37
36

34
33

31
30
29
28
27
26
25
24
23

to the receiver module. The receiver module works as the


40

35

32

22

receiver of the data sent from the transmitter module. There Fig 7 DC motor schematic
is a controller in charge of communicating with a play
station console. E. Rover Bogie Robot
This Robot uses the rocker bogie suspension system,
which was specifically designed for space exploration
vehicles have deep history embedded in its development.
The term “rocker” describes the rocking aspect of the larger
of the larger links present each side of the suspension
Fig 5 Pin configuration in Joystick wireless PS2 system and balance the bogie as these rockers are connected
to each other and the vehicle chassis through a selectively
The communication used is synchronous serial, i.e. data modified differential.
sent one by one through the data path. To coordinate
between the sender and receiver there is one clock line. This
is what distinguish serial sync with asynchronous serial

211
Fig 8 Rocker bogie suspension system

In the system, “bogie” refers to the conjoining links that


have a drive wheel attached at each end. Bogies were
commonly used to bare loading as tracks as idlers
distributing the load over the terrain.

Fig 11 Rover bogie front side

System employing spring tend to tip more easily as the


Fig 9 Rocker Bogie Mechanism loaded side yields during obstacle course. Dependent upon
the center of overall weight, any vehicle developed on the
As accordance with the motion to maintain centre of basic of rocker bogie suspension can withstand a tilt of at
gravity of entire vehicle, when one rocker moves up-word, least 50 degrees in any direction without overturning which
the other goes down. The chassis plays vital role to maintain is the biggest advantage for any heavy loading vehicle. The
the average pitch angle of both rockers by allowing both system is designed to be implemented in low speed working
rockers to move as per the situation. As per the acute design, vehicle, such heavy truck which works at slow speed around
one end of a rocker is fitted with a drive wheel and other 10 centimeters per second so as to minimized dynamic
end is pivoted to a bogie which provides required motion shocks and consequential damage to the vehicle when
and degree of freedom. surmounting sizeable obstacles.
F. Brief About LabVIEW
LabVIEW (Laboratory Virtual Instrument Engineering
Workbench) is a graphical programming language used as a
powerful and flexible instrumentation and analysis software
system in industry and education. LabVIEW uses a
graphical programming language to create programs called
Virtual Instruments or VI in a pictorial form called a block
diagram, eliminating a lot of the syntactical details or other
programming language like C and MATLAB that use a text-
based programming approach. LabVIEW also includes
many tools for data acquisition, analysis and display of
results. The analysis library contains a multitude of function
in signal generation, signal processing, filtering and statistic.
It is available for all the major platforms and is easily
portable across platforms [2].
Fig 10 Realization of the rover bogie robot
Each VI contains 3 parts:
The rocker-bogie design consisting of no springs and • The front panel contains the user interface like
stub axles in each wheel which allows the chassis to climb knobs, push button, graphs, and many other
over any obstacles, such as rocks, ditches, sand, etc that are controls (inputs) and indicators (outputs).
up to double the wheel’s diameter in size while keeping all • The block diagram is the VI’s source code
wheels on the ground maximum time. As compared to any constructed in G and is the actual executable
suspension system, the tilt stability is limited by the height program. The block diagram has other level Vis
of the center of gravity and the proposed system has the and built in functions. The blocks can be connected
same. using wires to indicate the dataflow. Front panel
object has corresponding terminals on the block

212
diagram to allow dataflow from the user to the H. Image Processing
program and back to the user Image processing is a method to perform some operations
• Sub-Vis is analogous to subroutines in on an image, in order to get an enhanced image or to extract
conventional programming languages. some useful information from it. It is a type of signal
processing in which input is an image and output may be
G. NI myRIO
image or characteristics or features associated with that
The National Instrument myRIO-1900 is a portable image [4]. Nowadays, image processing is among rapidly
reconfiguration I/O (RIO) device that can be used to growing technologies. Image processing basically includes
implement control for mechatronics systems. The myRIO the following three steps:
platform is targeted for academic environment that are
interested in highly portable IO device to be used in • Importing the image via image acquisition tools;
academic project [3]. • Analyzing and manipulating the image;
• Output in which result can be altered image or
report that is based on image analysis.

There are two types of methods used for image


processing they are analogue and digital image processing.
Analogue image processing can be used for the hard copies
like printouts and photographs. Image analyses use various
fundamentals of interpretation while using these visual
techniques. Digital image processing techniques help in
manipulation of the digital of the digital images by using
computers. The three general phases that all types of data
have to undergo while using digital technique are pre-
processing, enhancement and display, information extraction.
Fig 12 The NI myRIO 1900 device In this article, the image processing will use the software to
manipulate and enhanced the image; it is LabVIEW [6].
An image may be defined as a two- dimensional function,
The myRIO has several specifications that suitable for f (x, y), where x and y are spatial (plane) coordinates, and the
projects, such as: amplitude of f at any pair of coordinates (x, y) is called the
• Xilinx Z-7010 processor 667 MHz (ARM Cortex A9 x2 intensity or gray level of the image at that point. When x,y
cores 28 nm process NEON SIMD, VFPv3 Vector Float. and the intensity values of f are all finite, discrete quantities,
• Memory: NV, 256 MB, DDR3 512MB, 533 MHz, 16 we call the image a digital image. The field of digital image
bits. processing refers to processing digital images by means of a
• FPGA type as processor. digital computer. Note that a digital image is composed of a
• Wireless: IEEE 802.11 b,g,n ISM 2.4 GHz 20 MHz. finite number of elements, each of which has a particular
• USB 2.0 Hi-Speed location and value. These elements are called picture
• Breakout Board Support elements, image elements, peels, and pixels. Pixel is the
terms used most widely do denote the elements of a digital
• 2 ports of 16 Digital I/O lines. image [5].
• 3 axis accelerometers. Digital image processing focuses on two major tasks:
• Max power consumption: 14 W • Improvement of pictorial information for human
• Typical idle: 2.6 W interpretation.
• LED’s • Processing of image data for storage, transmission
and representation for autonomous machine
After installing the required software for NI myRIO, start by perception.
following a customized getting started experience design to
ensure that success with NI myRIO and access to NI myRIO
resources directly from the LabVIEW getting started window
and the device ready to be used.

Fig 14 Digital Image concept

Some argument about where image processing ends and


fields such as image analysis and computer vision start. The
continuum from image processing to computer vision can be
Fig 13 Status monitors NI myRIO broken up into low-, mid- and high-level processes [7].

213
III. RESULT AND ANALYSIS

A. Image Processing Result


Image processing in LabVIEW need the steps for
capture and processing the images

Fig 16 Rover bogie robot

In order to overcome vertical obstacle faces, the front


wheels are forced against the obstacle by the center and rear
wheels which generate maximum required torque. The
rotation of the front wheel the lifts the front of the vehicle
up and over the obstacle and obstacle overtaken. Those
wheels which remain in the middle, is then pressed against
the obstacle by the rear wheels and pulled against the
obstacle by the front till the time it is lifted up and over.

Fig 17 Block diagram for single image

Fig 28 show the front panel from the LabVIEW block


Fig 15 General step for Image processing in LabVIEW
diagram for single image result.
In this stage will be tested image processing using
LabVIEW and NI myRIO software. The first is testing for a
single image. From the results below, it can be seen that the
NI myRIO with the camera can give the appropriate results.
This test uses a 2-megapixel webcam camera with
brightness level in the room.
B. Rover Bogie Robot Testing
Depend on the testing result, as per the research it’s find
that the rover bogie system can reduce the motion by half
compared to other suspension system because each of the
bogie’s six wheels has an independent mechanism for
motion and in which the two front and two rear wheels have
individual steering systems which allow the vehicle to turn
in place as 0 degree turning ratio.

Fig 18 Front panel for single diagram

214
Fig 19 shows the block diagram for take the image with REFERENCES
while loop, it means that the program can take picture
continue with the different condition. [1] M. Safary T. K., R. Sadeghian, M.T. Masouleh, “Design, Analysis
and Construction of a Novel Flexible Rover Robot”, Proceedings
of the 3rd RSI International Conference on Robotics and
Mechatronics, pp. 377–382, Tehran, Iran. October 2015.
[2] Fengzhou Wang, Xiaofan Wu, Tughrul Arslan “Mobile-
Controlled Robotic Measurement Setup for Microwave Imaging
Diagnosis”
[3] Ed Doering. NI myRIO Project Essential Guide. National
Instrument, 2016.
[4] R. Bitter, T.. Mohiuddin, M. Nawrocki, LabVIEW Advanced
Programming Techniques Second Edition. CRC Press, New York:
2007.
[5] Rafael C. Gozalez, Richard E. Woods, Digital Image Processing
Third Edition. Pearson Prentice Hill, New Jersey: 2008.
[6] IMAQ Vision for LabVIEW User Manual. National Instrument.
Fig 19 block diagram image processing using LabVIEW 2004
[7] LabVIEW Signal Processing Course Manual. National Instrument.
LabVIEW has the ability to create stand-alone 2007
executable applications, which run at compiled execution [8] Devipriya M, M. Brindha, “Moving Object Tracking Using
speeds. LabVIEW also give some advantages is the fact that FPGA”, Proceedings of the International Conference on
Intelligent Sustainable Systems (ICISS 2017). IEEE Xplore
it includes built in applications, such as the IMAQ Vision Compliant-Part Number:CFP17M19-ART, ISBN:978-1-5386-
for image processing. 1959-9. Pp:466-469. 2017
[9] Jeffrey Travis, Jim Kring. LabVIEW for Everyone, Graphical
Programming and Fun Third Edition. Prentice Hall. 2008
[10] Ricardo de Asmundo. LabVIEW Modeling, Programming and
Simulation. Intech, Rijeka:2011

Fig 20 Front panel with image result

IV. CONCLUSION
In this study it can be concluded that the bogie rover robot
can run according to the settings and commands of the
joystick. Camera installed inside the robot can also capture
images according to the expected conditions. We gave an
overview of Digital image processing using LabVIEW. We
describe the use of powerful visualization tools developed
using NI myRIO with LabVIEW and a few of the
demonstration developed were provided.

215

View publication stats

You might also like