Next Article in Journal
New Frontiers in Parallel Robots
Next Article in Special Issue
Enhancing Positional Accuracy of the XY-Linear Stage Using Laser Tracker Feedback and IT2FLS
Previous Article in Journal
A Coyote Optimization-Based Residual Attention Echo State Reactive Controller for Improving Power Quality in Grid-PV Systems
Previous Article in Special Issue
Performance Comparison of Two Architectures of 6R Articulated Robots
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Monitoring the Current Provided by a Hall Sensor Integrated in a Drive Wheel Module of a Mobile Robot

by
George Constantin
1,
Iosif-Adrian Maroșan
2,*,
Mihai Crenganiș
2,
Corina Botez
3,
Claudia-Emilia Gîrjob
2,
Cristina-Maria Biriș
2,
Anca-Lucia Chicea
2 and
Alexandru Bârsan
2
1
Department of Robots and Manufacturing Systems, Faculty of Industrial Engineering and Robotics, University Politehnica of Bucharest, Spl. Independentei 303, 060042 Bucharest, Romania
2
Department of Industrial Machines and Equipment, Engineering Faculty, Lucian Blaga University of Sibiu, Victoriei 10, 550024 Sibiu, Romania
3
Department of Engineering Graphics and Industrial Design, Faculty of Aerospace Engineering, University Politehnica of Bucharest, Spl. Independentei 303, 060042 Bucharest, Romania
*
Author to whom correspondence should be addressed.
Machines 2023, 11(3), 385; https://doi.org/10.3390/machines11030385
Submission received: 9 February 2023 / Revised: 11 March 2023 / Accepted: 13 March 2023 / Published: 15 March 2023
(This article belongs to the Special Issue Design and Control of Industrial Robots)

Abstract

:
This article describes a method for the real-time monitoring of the current consumed by a Dynamixel MX 64 AT servomotor used in the actuation system of modular mobile robotic platforms having differential locomotion and conventional wheels. The data acquisition method is based on an Arduino Mega 2560 development board interfaced with Matlab Simulink and the ASC712-5A hall sensor for current detection. A Simulink model is presented that performs the detection of a sensor reference voltage, which needs to be calibrated for a correct reading of the current. Due to the low resolution of the analog-to-digital converter with which the Arduino Mega is equipped, current monitoring is difficult to achieve, having large fluctuations and a lower resolution than the current absorbed by the servomotor. The solution to this problem is achieved by implementing, in the hardware construction, an ADS115 conversion module with 16-bit resolution, which leads to an increase in the measurement range of the ASC712-5A sensor. The current acquisition model with the Hall sensor is experimentally validated using measurements on the physical model of the drive wheel. This article further deals with the CAD and digital block modeling of mobile platforms with four and two wheels. The dynamic model of the robot is created in the Simulink–Simscape–Multibody environment and is used to determine the servomotor torques when the robot is moving along the predefined path. The torque variations are entered as variables in the Simulink digital block model of the robot. The Simulink model is simulated when moving along a square path, which determines the variation in the current absorbed by the motors. Experimental validation of the model is carried out using measurements on the functional models that operate in real conditions. A power consumption method is further proposed.

1. Introduction

Mobile robotic platforms have seen a major development in recent times. They include in their hardware structure a variety of mechatronic systems that have state-of-the-art sensors, actuators and microprocessors in their components. The fields of activity in which mobile robotic platforms are encountered are varied [1]. Thus, mobile robots are found in various industrial sectors, education, research and agriculture as well as in social assistance, helping people with disabilities.
Educational robotics platforms are introduced into the education system starting from the primary grades, and this enriches the learning environment, promotes knowledge and increases students’ interest in technology, science, engineering and mathematics activities [2]. In agriculture, climate change and the lack of a labor force are important threats worldwide. Mobile robots are very useful in various applications in agriculture because they reduce human labor and have the ability to collect large amounts of data about crops. They can work for long periods of time in adverse climatic conditions, having lower operating costs than human labor [3]. Another field where these mobile platforms are found is social assistance, where robots are used to support the elderly or to help persons with disabilities carry out daily activities independently [4].
Regarding industrial applications, industrial production is in a restructuring phase that aims to digitize conventional industrial companies in order to increase the degree of automation and networking in production chains [5] in the context of Industry 4.0. Achieving this goal requires increased speed, quality, innovation and, in particular, flexibility and customization options [6].
Mobile robots represent one of the solutions for digitization, automation and interconnection. They can move autonomously, i.e., without assistance from external human operators. Mobile robots can ensure transport operations of material, semi-finished products, sub-assemblies, or machined parts between two or more phases of a technological flow, or handle, load or unload products.
In the operation of mobile robots, several stages are identified such as perception, localization, cognition, movement control and navigation [7,8]. In the perception phase, the robot’s sensors intervene, extracting data following the analysis and interpretation of their output signals. With localization, the mobile robot determines the location based on external sensors. Then, the robot plans the necessary steps to reach the target. Motion control ensures the required trajectory is achieved by modifying the motor outputs using the control system. Navigation involves planning algorithms and the application of information theory and artificial intelligence.
For autonomous mobile robots, it is important to integrate sensors used to measure functional parameters during operation (internal sensors) or for localization (external sensors). These parameters can be used for monitoring (for example, the power consumed, battery charge level, etc.) [9,10,11] and for controlling movement (speed and acceleration), position and orientation [12,13] (trajectory and navigation control).
A problem that can be found with any mobile robotic platform is related to the power supply part. In most cases, the power sources are various types of batteries [14,15]. This is a disadvantage because depending on the performance of each type of platform and its energy consumption, it will have a certain degree of autonomy.

1.1. Literature Review

The field of mobile robots is vast and in continuous change. The interest of researchers in this field is constantly increasing, as is the number of publications that appear every year. This section presents an analysis of bibliographic sources that have made significant contributions to the current stage of research in the domain of mobile robotics. The analysis is carried out by following several areas that are also found in this article proposed by the authors:
  • Applications in which mobile robots and general aspects are integrated;
  • Aspects related to sensors used in mobile robotics, with details related to the Hall current sensor;
  • Research related to the modularity and reconfigurability of mobile robots;
  • The use of Matlab Simulink in modeling, simulation and developing mobile robots;
  • Energy consumption and efficiency of mobile robots.
The selected references are grouped by sections in Table 1. The relevance of the references is quantified by evaluating the searches and the number of citations using specialized search engines for scientific references such as Google Scholar or Web of Science [16].

1.1.1. General Aspects of Mobile Robots

Bruzzone at al. present in [17] state-of-the-art mobile robots that have a track-based locomotion system. A number of advantages are presented such as the large contact surface with the ground and running on rough terrain, but there is also a series of disadvantages such as low speed and low energy efficiency. The article presents three main directions that refer to the design type of the body and track profile and type.
In work [18], Wang et al. present an analysis of the progress made over the last 20 years in bypassing local obstacles with autonomous mobile robots using methods based on artificial intelligence, neuronal networks or fuzzy logic.
Taheri et al. present a review of robots using omnidirectional wheels [19]. Important information regarding each type of omnidirectional wheel together with the latest news regarding the type and use of these wheels is presented to help designers and researchers select the appropriate mechanism and control mode.
Article [20] presents the state-of-the-art navigation techniques used for current mobile robots. Patle et al. conducts a series of studies aimed at developing trajectory-planning strategies under different environmental conditions and also analyzed navigation from a static and dynamic point of view.
Rubio et al., in the work [8], provides a series of general information on the field of mobile robotics. There are classifications of mobile robots according to the locomotion system used and their control system. In addition, the article presents a series of applications integrating mobile robots.

1.1.2. Hall Sensors

Article [21] provides a perspective on current sensors based on the Hall effect. Crescentini et al. highlight the fundamental operating principles, methods of designing sensors and implementation techniques. The study focuses on sensors based on standard silicon technology. There is also a review of several typical architectures of the current transducers in the magnetic field, including a discussion on the influence of temperature and other external phenomena.
Article [22] by Wang et al. treats the Hall effect in semiconductors with an application to magnetic field detection. Disadvantages such as polarization dependence or influence of non-uniform current distribution on linearity are presented. The work proposes a new Hall sensor structure without polarization.
Reference [23] presents a number of problems related to the interference of Hall sensors with electromagnetic fields. Aiello performs a series of experimental tests that highlighted the defects of Hall sensors in different situations.
In [24], Romero-Perigault et al. present the operation of a current monitoring network using two variants of Hall sensors (ACS712 and ACS423). Information from the sensors is acquired with an Arduino board, which sends the information through a Bluetooth module to a smartphone. The application was integrated into an autonomous guided vehicle.
Similar to [23], in the article [25], Aiello and Fiori present problems arising from Hall sensors when interfering with the environment, for example, with radio frequency signals. The design of a new type of sensor and a series of simulations are presented in detail.

1.1.3. Modular and Reconfigurable Mobile Robots

A series of dynamic equations specific to a nonholonomic reconfigurable mobile robot used for space exploration and rescue operations are presented in [26]. Karamipour et al. propose a mechanical structure that can be adapted to bypass the obstacles without deviating from the trajectory. In addition, with reconfiguration, the power required for drive engines is small, which leads to optimizing energy consumption.
Luo et al. in [27] present the development of autonomous mobile robots used in industrial applications for automated intelligent fabrication based on a robot operating system (ROS). To increase mobility, the localization and simultaneous mapping system (SLAM) is used.
Tkacik et al. present in detail the design of a mobile robotic platform that can be used in education and research [29]. This platform was made using 3D printing and highlighted the development of robot control units and the implementation of control interfaces. It also presents the integration of individual sensor modules on the platform that use the ROS operating system.
In [29], a hybrid model of the chain autoreconfigurable robot type is shown. According to Kutzer et al., the connection between modules is made with a mechanical fixing system operated using a large couple actuator that allows self-assembly and also by optical and electric interfaces.
In [30], Ryland and Cheng show the stages for designing a modular mobile robot with four degrees of freedom used for search and rescue operations that can also be used in education and research.

1.1.4. Matlab Simulink Modeling for Mobile Robots

In [31], Piza et al. provide detailed information on sensor fusion, based on the Kalman filter, that allows the control of a holonomic mobile robot to follow an imposed trajectory. A two-speed non-uniform extended Kalman filter was considered, which allows the estimation of high and slow speeds of the robot from non-linear measurements. The proposed solution was simulated using a mecanum four-wheel mobile platform model based on Simscape Multibody (Matlab Simulink).
Article [32] aims to design a controller for mobile robots. Ahmadi et al. propose a method for creating a dynamic model that takes into account all the parameters of the drive motors and external disturbances. In addition, a new dynamic and adaptive controller for asymptotic trajectory tracking is proposed. The simulations were carried out in Simscape Multibody, and the results were compared with two controllers from the specialized literature.
In [33], Hassan and Saleem present the development of a mobile robot navigation system based on a controller for efficient tracking of the trajectory. Non-holonomic mobile robots were simulated based on an algorithm and compared with two-wheeled mobile robots with differential traction.
An integrated trajectory tracking control system for autonomous electric vehicles was proposed by Ren et al. in [34]. The control system provides three functions: complex trajectory tracking predictive control, lateral stability control and torque optimization control. The three components are integrated in a Matlab Carsim/Simulink model to evaluate the performance of the controller.
Siwek et al. describe the way of working in the Matlab Simulink and Simscape Multibody environment [35]. The steps for obtaining a dynamic model are presented: designing a CAD model of the mobile robot, importing it into Simscape Multibody and generating a kinematic chain that is actuated for making the desired simulations.

1.1.5. Energy Consumption of Mobile Robots

In [36], Stefek et al. present state-of-the-art differential traction mobile robot control models. A series of experimental research is carried out using an open-source code based on Python. Kinematic and dynamic models of the robot are created and simulated when moving along a predefined trajectory. Using control algorithms, the length of the trajectory is optimized to reduce energy consumption. The work makes the open-source code available to other users.
Article [37] by Jaramillo-Morales et al. proposes a model for calculating the energy consumed by a mobile robot with two wheels and differential traction, taking into account the dynamic parameters of the robot and drive motors. The movement of the Nomad Super Scout II robot is carried out on trajectories with variable accelerations and different payloads. The results show a precision of the simulated model compared to the experimental one of 96.67% on straight trajectories and 81.25% on curved trajectories.
Hou et al. propose a method for modeling the energy consumption of mobile robots [9] that can predict the energy consumption for various trajectories. The model takes into account the sensor, control and actuation systems. The concept is applied to a four-wheeled mecanum mobile robot. The experimental results show that the model allows a prediction of the energy consumption during the movement of the robot as a whole as well as for each subsystem of the robot separately.
In [38], Canfield et al. present aspects regarding the influences of slipping and friction on the energy consumption of mobile robots. The estimation method is based on the slipping parameters obtained based on the differential equations derived from the kinematic equations. The results for two different cases demonstrate that power and energy consumption depend on the payload and the movement along the path.
The work [39] proposes an algorithm for optimizing the trajectory traveled according to the energy consumption of a mobile robot. Valero et al. describe the dynamic modeling of a robot in which the inertial forces and the characteristics of the drive motors are taken into account. When moving the robot along a path without obstacles, the energy consumed, time required to complete the trajectory, maximum speed reached and distance covered are taken into account. The algorithm was applied to 101 examples, and it was possible to implement the proposed model on other constructive variants.

1.2. Research Objectives and Contributions

In this article, the authors present hard and soft concepts implemented in the development of a functional model for a mobile robotic platform that includes a motorized wheel module used to measure the absorbed current with the help of a Hall current sensor. Of the multitude of possible sensors, the current sensor can be used to measure, monitor, and detect changes in current so that it can be optimized when moving along different paths to minimize power consumption [40].
The Arduino Mega development board integrated into the drive wheel modules of the mobile robot is based on an Atmega328 microcontroller and an integrated analog-to-digital converter (ADC) with a 10-bit resolution. Following the preliminary experimental research [41], it was found that this development board has a series of hardware limitations. An attempt was made to avoid them using some software algorithms. The results were not effective, so an external ADNS 1115 module with a 16-bit resolution was integrated to replace the internal ADC of the development board. In this way, the same Arduino acquisition board can still be used. This has a low cost compared to a dedicated acquisition board. Another advantage of using the Arduino board is that it is based on open-source software that provides free access to a multitude of software libraries.
The proposed method of measuring the current in real time is necessary for several stages of the research and also for the use of the robot and future research. Thus, we can mention among them:
  • The need for a measurement system integrated into the actuation system to measure the absorbed current in order to compare the simulated current with the measured current for model validation.
  • The possibility of using the measurement system with a Hall sensor integrated with a controller for the optimization of energy consumption based on the control of the current absorbed by the motor.
  • The current values measured in real-time can be used to create an energy-efficient control algorithm for moving the robot along different trajectories between two points.
  • The real-time measurement of the current can also be used to produce statistics with reference to the energy consumption when traveling different trajectories in various situations. These statistics can be interpreted by the user, and based on them, hardware or software updates can be made to increase the autonomy of the mobile robot.
The main objectives of this research, whose results have the character of originality, are the following:
  • Presentation of the original concept of a modular mobile robot, with application to the variants with four and two conventional wheels and differential traction used in research:
    -
    Development of functional models (concept, design, realization with additive fabrication or machining, choice and verification of electric motors, integration of Hall current sensors and Arduino acquisition boards, assembly and verification of functionality).
  • A description for the creation of a Simulink digital block model to determine the energy consumption of a modular mobile platform having a configuration with four conventional wheels and differential traction:
    -
    Creating a Simulink digital block model that represents the dynamic model of the robotic configuration with four conventional wheels and differential traction.
    -
    The use of the dynamic model to determine the resistant torques in the kinematic joints when moving on a square path with a side of 1 m.
    -
    After completing the trajectory, the current absorbed by each individual motor is measured and acquired.
  • Experimental validation of the Simulink model comparing the simulation results with the values obtained using experimental measurements:
    -
    The development of an electric system for driving the robot wheels and monitoring the absorbed current at a low cost.
    -
    The use of an experimental monitoring method of the current provided by a Hall sensor integrated into the actuation module of the robotic configuration. The system is based on a bidirectional Hall current sensor ACS712-05Hall and on the acquisition of data from the sensor with an Arduino Mega 2560 board.
    -
    In order to monitor and interpret the data in real time, a Simulink digital block model of the current supplied by the sensor was created, which was adjusted and improved after experimental validation using a latest-generation digital multimeter.
  • Comparison of the results obtained for the configurations with four and two conventional wheels:
    -
    A Simulink model for the two-wheeled configuration was additionally created. The model was simulated for traveling the same path under the same conditions as in the case of the modular version with four wheels.
    -
    The experimental measurements were performed on the functional model.
  • Determination of the consumed power based on the simulated and respectively measured current with the Hall sensor, when moving along the preset path:
    -
    Calculation methods of energy and power consumed.
    -
    Determination of energy consumption for the two configurations of four-wheel and two-wheel drive mobile robots and interpretation of the results.

2. Materials and Methods

2.1. Aspects of Modularity

Modularity offers both functional and economic advantages with a major impact over traditional robots based on fixed structures, which are designed only for a single application. The reconfiguration and interconnectivity of the modules allow modular robots to adapt to environmental changes quickly with high flexibility. Modularity and configurability also allow mobile robots to perform tasks that a fixed robotic structure cannot perform. This is achieved by assembling additional specialized modules to perform an assigned task, resulting in an increased performance of the robotic structure. These specialized units can be battery modules or modules with special sensors such as LiDAR sensors. Modular robots also offer an economic advantage resulting from increased flexibility given by the possibility of adding new specialized modules [30].
The developed modular mobile platform uses modules directly connected to each other, without the need for an additional frame specific to a certain configuration. The basic geometric shape of the modules is a hexagon that allows the realization of the robotic unit with various component modules.
Figure 1 shows some examples of configurations that can be made using this concept. The main module is the command module, which has the role of commanding several actuation modules attached to it. The actuation module is based on a single actuated wheel, having a system that offers a quick change in the wheel type. This module was designed to work with three types of wheels, namely the conventional wheel, omnidirectional wheel and mecanum wheel. In addition to the drive modules, some auxiliary modules of the same geometric shape are used to build various robotic configurations and to accommodate computing devices, additional sensors or batteries.

2.2. Structure and Characteristics of the Modular Mobile Robot

This research was carried out using a modular mobile platform made of several hexagonal-shaped modules (Figure 1). This modular mobile platform was developed within the robotics laboratory of the Department of Machines and Industrial Equipment of the Lucian Blaga University in Sibiu. In addition, it has been tested in the production area of the automotive industry, in various applications such as the transport of semi-finished products from a workstation to a manufacturing line.
The configuration of the modular mobile robot with differential locomotion and four conventional wheels is shown in Figure 2a. The wheels are driven by four servomotors (M1, M2, M3 and M4, Figure 2b). This robot configuration includes the following modules:
  • One main module, which has the role of command and connection with the other modules;
  • Four motor wheel modules, which have the role of driving the robot.
The main characteristics of the robotic platform are presented in Table 2.
To demonstrate the modularity and reconfiguration capability within the original concept, the 3D CAD model of the robotic configuration with two drive wheels and two Ball Castor units is presented in Figure 3. The mobile robot configuration has the same characteristics as the four-wheeled one (Table 2), except for of its mass of 19.5 kg.
Figure 4a depicts a general view of the physical assembly of the mobile robot, while Figure 4b shows a bottom view of the robot to highlight the Ball Castor modules.

2.3. Characteristics of the Dynamixel MX 64 AT Servomotor

The actuation system of the modular mobile robot is the drive wheel module illustrated in Figure 5, where the construction and main components of the module are presented.
The module is made of several subsystems such as the suspension system or the quick coupling system of the wheel, shown in Figure 5a and Figure 6b, respectively. A DC servomotor, illustrated in Figure 5a and Figure 6a where the construction and main components of the module are presented, carries out the actuation of the modular mobile robot. After dimensioning and 3D modeling, all mechanical components were machined and the whole module was assembled and tested (Figure 6a).
The electrical components of the drive system are shown in Figure 7. It can be seen that each electrical system of the drive wheel module contains an Arduino Mega development board that communicates with the control boards in the main control module. The wheel is actuated with an MX64 AT servomotor that was previously chosen based on calculations in static and dynamic regimes of the required and maximum torques, respectively, and then checked. The main characteristics of the motor are detailed in Table 3. The servomotor has its own driving system, but in this application, an external VNH5019 driving system was used, which allows the control of two DC motors and is compatible with Arduino Mega. The ACS712-5A sensor is placed between the driver and the motor. It detects the current drawn by the servomotor and sends the signal to the Arduino Mega 2560 acquisition board.

2.4. ACS712 Sensor Interfaced with Arduino Mega

Hall sensors are used to measure current in various applications—with photovoltaic panels, induction motors, wind power plants and direct current motors. The operating principle is based on the passage of electric current I through a magnetic field, generating a voltage proportional to the density of the magnetic field [22,43].
The working principle of the Hall effect sensor is based on the Lorentz force, as illustrated in Figure 8. When the magnetic field B (B—magnetic flux density) pierces the metal plate perpendicularly, a deflection force F will result in the plate, called the Lorentz force and expressed as F = q(v × B). This force will produce a deflection in the charge in a direction perpendicular to the direction of the speed and the field, which will generate a voltage v perpendicular to both the current I and magnetic field B. The tension expression is given by the relation [44]:
v = IB/(nqd),
where: q—charge on the carrier, n—carrier density and d—sheet thickness.
For materials such as indium antimonide (InSb), indium arsenide (InAs) and gallium arsenide (GaAs) used in Hall sensors, the material properties are grouped in the Hall coefficient:
RH = 1/(nq).
The ACS712 sensor based on the Hall principle is integrated in the drive wheel module electric system. Figure 9 shows an electrical diagram of the ACS712 sensor integrated with an integrated circuit from Allegro. The current sensor is a linear one that can measure both direct current and alternating current. The manufacturer produces the sensor in three constructive variants (±5, ±20 and ±30 A). Table 4 shows in detail each type of sensor, and Table 5 shows the main characteristics of this type of sensor [45].
To measure the current, the bidirectional sensor model ACS712ELCTR-05A was used, whose characteristic curve can be seen in Figure 10. This characteristic shows that the output voltage of the sensor is equal to 2.5 V, and for this value, the theoretical current is zero. However, in practice, the value of 0 A does not exist due to variations caused by several sources, such as interference with other magnetic fields, noise, etc. For this sensor model, the sensitivity is 185 mV/A, and if the voltage is lower than 2.5 V, then the current value is negative [46,47].

3. Construction, Modeling and Experimental Procedures

3.1. Construction of the Drive System of the Modular Mobile Robot

The actuation system of the modular robot consists of a drive wheel module illustrated in Figure 5 and Figure 6. Figure 11 presents the electrical diagram where all the electrical components of this system can be seen. The actuation module was designed so that it can be used for various configurations of robotic structures and for actuating several types of wheels. Starting from these considerations, it becomes important to carry out some research to monitor the current drawn by the electric motor for a series of five robotic configurations with three types of wheels, which move on various paths. In this context, this work presents the method by which it is possible to acquire, filter and interpret the current drawn by the DC servomotor from the actuation scheme presented in Figure 11.
The acquisition of analog signals is carried out according to the block diagram illustrated in Figure 12, which shows the connection of the robot’s actuation module with the Matlab Simulink virtual instrumentation software. The software provides users with a large series of libraries and software packages for signal interpretation and processing.
In the motor wheel module, there is an Arduino Mega acquisition board, and to it is connected the bidirectional current sensor ACS712-05 for detecting the current drawn by the MX64AT servo motor, transmitting a variable voltage to an analog pin of the Arduino board. When the input current passes through the Hall sensor, a magnetic field is generated, and through the Hall Effect, a voltage proportional to the field is generated. Thus, the generated voltage is used to measure the current value.
With the help of the Matlab Simulink library created especially for Arduino, the values acquired from the sensor are displayed in real time in Matlab, offering the possibility of integrating them into closed-loop control models for different types of DC motors, servomotors or stepper motors. It is also possible to acquire signals from sensors and peripheral devices, which are connected with Serial Peripheral Interface (SPI), or Inter-Integrated Circuit (I2C). Matlab uses a high-level programming language that makes the results of I/O signal instructions visible in real time without the need for compilation. Using Simulink, one can access a vast library that includes thousands of mathematical and specialized engineering functions. Some of them are used for quick analysis and visualization of the data acquired from the Arduino board.
To achieve data acquisition, the Arduino board connects to a Universal Serial Bus (USB) port of a personal computer (PC), on which the Matlab Simulink software is installed. For this work, the educational version of the R2022a program and the Simulink Support Package for the Arduino library were used. The analog input block from the Simulink model represents the analog-to-digital converter (ADC) of the Arduino board. In order to be able to measure analog signals in a digital computing system, they must be converted into discrete numerical values. The important characteristic of an ADC is the resolution, which represents the number of discrete values at the output of the converter in a measurement range. These values are stored in binary form, and for this reason, the resolution of an ADC is expressed in bits. The Arduino Mega board’s ADC has a 10-bit resolution, meaning it can provide 210 = 1024 different output values. If the measurement range is 0 to 5 V, then the measurement resolution will be:
K u = U a r e ,
where: K u —voltage value at the output of the analog-to-digital converter (ADC), U a —analog voltage measurement range and r e —ADC resolution.
K u = 5 V 1024 K u = 4.88   m V .
To monitor the current with the ACS712ELCTR-05A sensor, the characteristic curve in Figure 10 must be taken into account, which shows that the output voltage of the sensor is equal to 2.5 V, and for this value, the theoretical current is 0 A. The calculation relationship used to determine the current is the following:
I = V s c K v S s ,
where: I—electric current intensity, V s c —Voltage sensor calibration, K v —2.5 V constant of the sensor for I = 0 A and S s —sensor sensitivity (according to the technical sheet, 185 mV/A).
In practice, however, the value of 0 A does not exist because there are variations produced by several causes, such as interference with other magnetic fields, noises, etc. Because of this, the voltage value provided by the ADC of the acquisition board is one with large variations. To smooth out these voltage peaks, the voltage sensor calibration ( V s c ) block was used, as illustrated in Figure 13. In this block, the voltage K u is read 10 times at different intervals and entered into a summing block. At the block exit, an arithmetic average is calculated multiplying by the constant K c = 1/10. With this solution, the voltage fluctuations are still present, but their variation is smaller.
To obtain the current value using the model in Figure 14, it can be observed that an algebraic summation operation is performed, where the constant voltage of the sensor K v is subtracted from the calibrated voltage V s c , for I = 0 A. The obtained result is multiplied by the coefficient K s = 1 S s , obtaining the current I in milliamperes.

3.2. Determining the Voltages Provided by the Sensor

By simulating the model in Figure 14, the voltage variation from the graph in Figure 15 is obtained, and a fluctuation around the constant sensor voltage of 2.5 V is observed. According to this graph, there are voltage peaks between 2.52 V and 2.59 V, that is, a variation of about ±70 mV. These fluctuations also affect the value of the current, so the determination of the current cannot be carried out correctly. The causes of these fluctuations can be multiple, such as imperfect connections to noise, etc. A hardware solution to smooth these fluctuations would be to use a low-pass filter, but this would decrease the sensor’s resolution. Thus, a software solution was chosen, as presented in Figure 13, which performs the calibration of the voltage provided by the ADC of the acquisition board. Using this method, a series of 10 real-time readings of the voltage read by the ADC of the acquisition board is summed up and an arithmetic average is calculated. The results obtained using this method are presented in the graph in Figure 16.
Applying this software solution to reduce voltage fluctuations, it can be seen that they have not disappeared, but compared to the situation without calibration (Figure 15), the maximum and minimum values are in this case approximately 2.56 V and 2.54 V, respectively, which means that there are voltage variations of about ± 20 mV. According to the graph in Figure 16, this solution improves the accuracy of the voltage reading but not enough to accurately monitor the current drawn by the Dynamixel MX65AT servomotor.

3.3. Implementation in the Hardware Construction of a 16-Bit ADS1115 Conversion Module

In order to further reduce these voltage variations at the output of the current sensor or even eliminate them, it was decided to use an analog-to-digital conversion module with a higher resolution than the one integrated into the Arduino board. Thus, according to Figure 14, the ADS 1115 module with a resolution of 16 bits (216) has been integrated into the current determination block diagram, meaning the possibility of detecting 65,536 discrete signals.
As can be seen in Figure 17, the ADS1115 module communicates with the Arduino board via I2C. According to Equation (1), the voltage determination resolution with this module will be:
K u = 5 V 65536 = 0.076   m V ,
Integrating this module into the module’s hardware system, the Simulink model for current monitoring is modified by replacing the Analog Input block with the special I2C communication block from the Matlab Simulink library used to receive signals from the ADS1115 conversion module. The new Simulink model is presented in Figure 18.
Using the model in Figure 18, after the simulation, the results shown in the graph in Figure 19 are obtained. It can be observed that the voltage variations practically disappear, the voltage value being 2.55 V, which is almost constant over time. Small voltage fluctuations in the order of millivolts are caused by noise, but these are not displayed on the graphic, they are practically filtered and do not affect the accuracy of determining the current drawn by the servomotor.

3.4. Experimental Tests for Model Validation

Applying Equation (5), according to the Matlab Simulink models in Figure 14 and Figure 18, experimental testing is carried out on the functional model by acquiring the value of the current drawn by the electric servomotors that actuate the movement modules of the real mobile robot. The obtained values are used to validate the Simulink digital block model for two distinct cases—Case 1 and Case 2 presented in the following.

3.4.1. Case 1: Acquisition of Data from the Sensor without Current Consumption

The graphs in Figure 20 present the results obtained from the simulations performed on the functional model. In this case, the values obtained from the current sensor were acquired, so that the current I = 0 A and V s c = 2.54 V. The results in Figure 20a show a fluctuation of approximately ±200 mA when in reality no current flows through this sensor. These signal detection and interpretation errors are caused by the Arduino acquisition board’s analog-to-digital converter, which has a resolution of only 1024 divisions. This becomes a disadvantage for the ACS712-05 sensor with a high sensitivity of 185 mV/A. Figure 20b shows the results obtained using an external ADC module that has a 16-bit resolution. Using this conversion module, it can be seen that the current variations have decreased considerably, having maximum values of approximately 8 mA. This means that the current measurement error for the servomotor used is ±8 mA. This error cannot be accepted for measuring currents between 100 mA and 3000 mA.

3.4.2. Case 2: Acquisition of Data from the Sensor on the Bidirectional Operation of the Dynamixel MX64AT Servomotor

Figure 21 shows the graphs of the monitored current of the servomotor used in the actuation system of the real modular mobile robot for bidirectional operation. It can be seen that, on the graph in Figure 21a, when using the ADC with a 10-bit resolution of the Arduino board, the current value varies considerably, and when reversing the direction of rotation, there are current peaks of up to 1000 mA. Compared with the graph in Figure 21b, where the monitoring is performed with the ADC module with 16-bit resolution, the current variations are much smaller (±300 mA), and when reversing the direction of rotation of the servomotor, the current peaks have the value of about 400 mA.

3.5. The Dynamic Model of a Mobile Robot with Four Conventional Wheels and Differential Traction

The dynamic model of the mobile robot is necessary to determine the resultant forces acting on the robot and the torques that the motors must provide during the movement of the robot along a predefined trajectory. Knowing the evolution of the torque at the level of the motor axis, the electric current drawn by each servomotor in the robot structure when traveling the imposed trajectory can be determined. Thus, specific optimization algorithms can be used based on the current determined as precisely as possible for different ways of traveling a trajectory so that power consumption is minimized.
The Simulink–Simscape-Multibody work environment was used to create the dynamic model of the robot. Based on this model, it is possible to determine the values of the resistant torques at the level of the kinematic couples of the mobile robot when traveling a predefined trajectory.
Simscape is integrated into the Simulink environment as a physical modeling module [20]. There is no major difference between Simulink and Simscape. In Simscape, the signal flow between blocks is bidirectional, while in Simulink, it is unidirectional. In addition, in Simscape, there is an editable source code attached to each block for its customization. The Simscape programming language is used to create new blocks.
Usually, each block includes a set of equations, which represent the mathematical model. The block has input and output connections (connecting points) used for connecting blocks in the model. For example, the output of a torque source (electric motor) is connected to the input of a wheel and shaft block.
Simscape–Multibody offers a combined simulation environment of 3D mechanical systems—Rigid Body Simulation (RGS) with a Digital Block Simulation (DBS). Blocks that represent bodies, joints, constraints, force elements and sensors can be used in modeling. The Simscape–Multibody work environment illustrated in Figure 22 allows the complete mathematical modeling of a mechanical system by connecting the component blocks and solving the equations of motion. After creating the parametric CAD 3D model, it can be imported into Simulink–Simscape–Multibody using a special extension for the design software (Simscape Multibody Link plugin). Complete 3D CAD assemblies are imported, containing dimensional and mass parameters, moments of inertia, constraints between components, joint types and coordinate systems.
The Simscape library contains various categories of blocks that include aspects related to solid bodies, such as their mass, position and orientation, respective of the relationships between different coordinate systems attached to the bodies. In addition, the degrees of mobility can be defined by the blocks that define the kinematic couples between the bodies. In the library of the Simscape environment, there are blocks that define different ways of operating rigid elements as well as blocks related to motion sensors (relative displacement between three elements).
For modeling the mobile robot, after creating the 3D CAD model, the export to Simulink Simscape was made. Figure 23 shows the result after the import, i.e., the entire CAD model transformed into a kinematic chain consisting of several planar and rotational joints, coordinate systems and rigid bodies. Figure 24 presents the 3D model of the mobile robot after importing into Simulink Simscape.
The simulation environment allows visualization of the evolution of the system during the simulation. This is necessary for the correct construction of the kinematic chain and for the proper operation of the kinematic chain joints. A wrong parameterization in the construction of the dynamic model would lead to erroneous results regarding the resisting forces and would subsequently lead to an incorrect determination of the current drawn by the servomotor. Starting from the theoretical foundations related to the kinematics of mobile robots, the connection between the variables of the kinematic couples and the positions of the kinematic elements was realized, the relationships being established in two successive stages: the problem of direct kinematics and the problem of direct kinematics. In the case of the dynamic Simulink model of the mobile robot, it is not possible to model the connection between the workspace and the motion of the robot’s wheels.
The kinematics of the modular mobile robot with conventional four wheels is based on mathematical equations of motion specific to differential traction. This solution is based on the Mobile Robotics Simulation Toolbox [48] from the Matlab software package (The MathWorks Inc., Natick, MA, SUA), being adapted to the developed modular mobile robot. According to Figure 25, the input data of the kinematic model are the following:
v —Linear speed;
ω —Angular speed;
ω 1 —Angular speed of wheel driven by motor M1;
ω 2 —Angular speed of wheel driven by motor M2;
ω 3 —Angular speed of wheel driven by motor M3;
ω 4 —Angular speed of wheel driven by motor M4;
L —Distance between wheel centers;
r —Wheel radius;
θ —Robot rotation angle.
The following mathematical relations describe direct kinematics:
v = r 2 ( ω 2 + ω 1 ) ,   ω = r L ω 2 ω 1 ,
v = r 2 ( ω 4 + ω 3 ) ,   ω = r L ω 4 ω 1 ,
The following mathematical relations describe inverse kinematics:
ω 1 = 1 r ( v ω · L 2 ) , ω 2 = 1 r ( v + ω · L 2 ) ,
ω 3 = 1 r ( v ω · L 2 ) ,   ω 4 = 1 r ( v + ω · L 2 ) .
The inverse kinematics is necessary for the actuation of the robot’s body along a certain trajectory, resulting in inertial forces. Direct kinematics is necessary for the actuation of the wheels, from where the value of the inertial forces acting on the wheels during actuation can be found. Using the Jacobian matrix given by Equation (11), all resistive forces were transposed to the drive wheels to determine the torque variation during the movement of the mobile robot according to Equation (12).
J = r cos θ 2 r cos θ 2 r sin θ 2 r sin θ 2 r L r L
J * = r cos θ 2 r sin θ 2 r L r cos θ 2 r sin θ 2 r L
Figure 26 shows the original dynamic model of the robot in the form of a Simulink block diagram. It contains the characteristic block part of the robot’s kinematic chain, blocks specific to the actuators in the joints, blocks that define the monitoring of forces and torques in the joints and blocks for implementing the mathematical model of the robot’s kinematics for moving along the trajectory. At the same time, the dynamic model of the robot contains a calculation block that also takes into account the friction between the wheels and the environment [20].
Figure 27a shows the one meter square path traveled by the robot in the simulation. In Figure 27b, one can see the moment when the robot finishes the linear movement of 1 m, after which it starts to rotate around the center of mass by 90°. To complete the entire trajectory, the robot needs to make four linear movements and three rotations.
An open loop system was used to control the robot. A series of calibrations were carried out through which the distance traveled by the robot and the angle of rotation were physically measured. Using these calibrations, the times required to actuate the robot motors to move it 1 m and to perform a 90° rotation were determined. The programming of linear and rotation movements for the entire path was completed according to time with the help of the Arduino board.
The variations in the angular velocities of the wheels of the mobile robot when moving along the predefined path and used as input speeds in the dynamic model are shown in Figure 28. Figure 28a shows the angular velocity for wheel 1, and Figure 28b shows the angular velocity for wheel 2. The angular velocity of wheel 1 is similar to that of wheel 3, and the speed of wheel 2 is similar to the speed of wheel 4. It can also be observed that the speed of wheel 2 remains constant throughout the trajectory.

4. Results

4.1. Simulation of the Dynamic Model of the Mobile Robot

By simulating the dynamic model in the Simulink work environment, the resistant torques at the level of the electric motors that drive the wheels of the mobile robot were determined. The variable resistant torques at the level of the motor wheels are shown in Figure 29. The maximum value of the torque T recorded for the motor corresponding to wheel 1 (Figure 29a) has the value of T1 = 6 Nm at time t = 9.28 s. At this moment, the robot ends the 90° turn. The maximum value recorded for the motor corresponding to wheel 2 (Figure 29b) has the value of T2 = 3.5 Nm at time t = 9.28 s. The values recorded for the motors operating wheels 3 and 4 have identical variations to those of wheels 1 and 2.
Based on the determined resistant torques, a block diagram equivalent to the electric drive motor was created using Simulink. It was possible to determine the current drawn by the motors when traveling the imposed path using an as accurate as possible virtual model of the direct current electric motor. The model of the drive system also contains the moment of inertia related to the rotor of the direct current motor used. The specific block diagram of the actuation system is presented in Figure 30.
Using the simulation of the drive system model in the Simulink work environment, the currents drawn by the electric motors that drive the mobile robot wheels were determined. The variable currents drawn by the actuators are shown in Figure 31. The values recorded for wheels 3 and 4 have identical variations to those of wheels 1 and 2, respectively.
One can observe the four segments corresponding to the linear moves of the robot in which the current is constant, having the value of 0.15 A for all wheels. The curves have three steps for turning by 90°, where wheels 1 and 3 reverse the rotation (Figure 31a, a maximum of −3.08 A followed by a constant part of -0.61 A), and wheels 2 and 4 accelerate (Figure 31b, a maximum of −2.09 A followed by a constant step of −0.60 A).

4.2. Experimental Tests Performed on the Robot Configuration with Four Wheels

The experimental validation of the results obtained from the simulations in Matlab Simulink was carried out by monitoring the current consumed by each motor that drives the wheels of the functional model of the real robot represented in Figure 32. This is performed by integrating the ACS712-05 sensor and the ADNS 1115 module in the actuation system according to Figure 14. The data after the acquisition is interpreted and displayed according to the model in Figure 15.
The predefined physical path (one-meter square) on which the robot moves is illustrated in Figure 33. The running surface is made of material specific to industrial environments. During the tests, the current was measured in real time using a Fluke 115 professional multimeter (Figure 34), comparing the result with the measured current (diagrams in Figure 35).
Figure 35 shows the variation curves of the currents detected by the sensors on the real robot moving on the path.
On the four segments corresponding to the linear moves of the robot, the current has small oscillations around a constant having the value of 0.136 A for wheels 1 and 3 (Figure 35a) and 0.07 A for all wheels 2 and 4 (Figure 35b). The curves have three steps for turning by 90°, where wheels 1 and 3 reverse the rotation (Figure 35a, for the first turn there are a maximum of −3.62 A and a peak of −0.86 A) and wheels 2 and 4 accelerate (Figure 35b, for the first turn there is a maximum of −0.44 A and a peak of −0.77 A).
Experimental measurements with the Fluke 115 multimeter were performed by connecting it in series with the drive motor.
A digital chronometer (similar to the app on a smartphone) having the Lap function was used to measure the time. When the Lap button is pressed, the intermediate times are recorded, which in this application are the current measurement times. It is activated only while the chronometer measures the time between start and finish. The measurements of current and time were performed by simultaneously pressing the Hold button of the multimeter and the Lap button of the chronometer, while the robot is moving along the path.
It is important to specify that these measurements were performed during the linear movement of the robot where the current fluctuations are small and not during the turning. The values obtained after the measurements were compared with those measured using the ACS712-05 sensor. They are graphically represented in Figure 35a,b. On the graphs, one can see the position of the measurement times t1, t2 and t3, t4 and t1’, t2’, t3’ and t4’, respectively.
The values measured with the multimeter are very close to those detected by the current sensors, validating the current measuring system of the functional model. The comparison values measured using both methods and measurement errors are shown for motor M1 in Table 6 and for M2 in Table 7.
According to the experimental results obtained following the monitoring of the current drawn by the servomotors for traveling the imposed trajectory, a series of differences can be observed compared to the results obtained by simulating the model. Figure 36 shows the difference between the variation of the simulated currents for motors M1 and M2. For a better understanding of current evolution for the two motors M1 and M2 data statistics are given in Table 8 and Table 9, respectively.
In general, the variation in the measured current follows the shape of the simulated current curve. There are constant current steps on the straight segments of the trajectory for both the simulated and measured currents. In the 90° turning areas, the current jumps until it stabilizes at a constant value. Large peaks are caused by transient phenomena produced in relatively short intervals (acceleration, braking, reversal of the direction of rotation).

4.3. Experimental Tests Performed on the Robot Configuration with Two Wheels

The same methodology applied to the mobile robot configuration with four drive wheels was also applied to the configuration with two drive wheels and differential traction (see Figure 4) starting from the 3D CAD model, simulation of the dynamic model of the robot and up to the tests on the physical model. The latter was easily achieved and was used for validating the measurement system and the mobile robot model.
The physical path on which the robot moves is illustrated in Figure 37. It is very important to specify that the path is identical to the one used in the configuration with four wheels, the dimensions of the robot are similar and the wheels are similar, the only difference being that the mass of the two-wheeled robot is 2 kg less than the four-wheeled version.
Following the simulation of the mobile robot model, the currents consumed by the electric motors driving each individual wheel were determined. The values of the simulated current for the wheel driven by the M1 motor are presented in Figure 38a, and the values for the M2 motor are illustrated in Figure 38b.
The values obtained from the current measurements for the wheel driven by the M1 motor are presented in Figure 39a, and the values for the M2 motor are illustrated in Figure 39b.
In Figure 40, the current diagrams obtained from the simulation of the mobile robot model and using experimental tests for both servomotors M1 and M2 are presented in comparison.
In order to obtain an image of the differences between the simulated and measured values of the current absorbed by the two motors, the statistical data are presented for M1 in Table 10 and for M2 in Table 11, respectively.

4.4. Calculation of Consumed Energy

There are different approaches to modeling energy in direct current [10,11] such as:
  • The engineering method (power integration), which is applied to controllers with regeneration;
  • The energy cost method (absolute power integration);
  • The positive power integration method, which is applied to controllers without regeneration.
For the first method, the electrical energy consumed Ee is obtained by integrating the power of the electric motor Pem as a function of time:
E e = P e m t d t
In the second method, it is presumed that the cost of absorbed power is proportional to the power of the source. Thus, in Equation (13), the source power module is used:
E e = | P e m t | d t
The third method is used infrequently.
Based on the relationship between energy E, power P and time t in direct current, E = Ut, for the present research and based on Equation (14), we obtain the relation of the consumed energy:
E e = | U I t | d t .
Since the measurements were made for a maximum supply voltage U = 12 V (corresponding to the maximum speed), the relationship becomes:
E e = U | I t | d t .
The sampling time used in the current measurement with the Hall sensor is a characteristic of the sensor and has the value ts = 0.005 s. The total number of measurements is n. During the time ttot = nts of the absorbed current measurement when the mobile robot is moving along the path, the total absorbed energy is calculated with the definite integral:
E e = U 0 t t o t I t d t .
If we are interested in the consumed power Pe, then the relationship becomes:
P e = U t t o t 0 t t o t I t d t .
Basically, the value of the definite integral is the area A schematically represented in Figure 41.
The calculation can be performed by approximation using the trapezoidal method as the sum of the areas of the component trapezoids:
A = 1 2 t s i = 1 n | I i + I i + 1 | = t s i = 1 n | I i | .
If we consider the sampling time (infinitesimal step width) as the ratio ts = ttot/n, then the power over the entire measurement range is:
P e = U t t o t t t o t n i = 1 n | I i | = U n i = 1 n | I i | ,
which is approximated as the product of the constant voltage and the average of the measured current.
Methods that are more precise involve current approximation using a spline curve or polynomials and increasing the number of component areas by reducing the infinitesimal step width. The Matlab program offers specialized functions for a more precise calculation of the definite integral—TRAPZ and CUMTRAPZ.
Next, the power consumed by the mobile robot when moving along the predefined path is determined as the sum of the powers consumed by the four motors. The procedure was applied to both simulated and measured data sets for each actuator. Figure 42 shows the simulated consumed power, and Figure 43 the measured one in the case of the four-wheeled robot.
The cumulated information about current and power absorbed at the level of servomotors and mobile robots (simulated and measured) along with the errors are presented in Table 12. It was found that the relative error of the total consumed power determined after the simulation is 2.2%.
For the two-wheeled configuration, the power consumption is shown in Figure 44 and Figure 45 for the simulated and measured power, respectively. In addition, the simulated and measured current and power balance are presented in Table 13. The simulated power is estimated with an error of 29.5%.

5. Discussion

It must be stated that the methodology for creating the dynamic model presented for the four-wheeled configuration can be used for all possible configurations by making specific adaptations.
Thus, the two-wheeled version highlights the fact that modularity offers flexibility, the platform being able to be used for various low-cost applications. In addition, the analysis of this configuration reveals new elements related to the accuracy of the dynamic model.
The comparison of the results obtained when measuring the current absorbed by the electric motors of the four-wheeled configuration with the Hall sensor and the multimeter presented in Table 6 and Table 7 shows close values for the measurements made at the same time. The errors for the M1 motor vary between 0.38% and 2.48%, with an average of 1.88%, and for M2 between 4.58% and 13.75%, with an average of 9.56%. Thus, the physical current measurement system is validated.
From the analysis of the variation in the simulated and the measured current for the two configurations of the modular mobile robot, the following conclusions can be drawn:
-
For the four-wheeled configuration (Table 8 and Table 9) of the M1 and M3 engines, the error of the average simulated values is less than 1%, and for M2 and M4, it is 41.6%. The maxima and minima show greater differences. In general, there are greater differences between the simulated and measured currents for motors M2 and M4.
-
In the two-wheeled configuration (Table 10 and Table 11) of the M1 engine, a behavior similar to the four-wheeled configuration is observed, with the error of the average value being 1.4%. For the M2 motor, the error is 24.6%. With this version, there are greater differences between the simulated currents and those measured with the M2 motor.
If we compare the simulated current curves for both the mobile robot configurations (Figure 36 and Figure 40), we can make a few remarks.
It is found that there are very small differences in the areas of linear movement. In general, the differences definitely come from the approximation of the wheel–ground friction coefficient in the model. Only in the turning areas, there are greater differences where the measured current shows variations (large peak followed by oscillations). By comparison, when turning, the simulated current curve consists of a peak and a constant zone. These large variations are the instantaneous current peaks with a duration of several milliseconds. The total power consumption of the robot for the trajectory will not be significantly influenced by these peaks.
The differences between the simulated and measured currents can have the following possible causes:
-
Approximation of moments of inertia on the Simulink model. It can be related to the value of the moment of inertia or the position of the center of mass of the robot model.
-
Approximation of the coefficient of friction between the robot wheel and the running surface.
-
Variations in the simulated current in the transient phases of acceleration or breaking can be caused by the model of the friction phenomena when changing the robot’s direction of movement or in speed variations with wheel–ground slip.
Great differences between the simulated and measured current values appear in configuration with two wheels, especially in wheel 2 (Figure 40b) at the time of turning, when practically the whole wheel rotates in place about a vertical axis. The model cannot catch exactly this type of movement, the real phenomenon being more complex. In addition, the big differences can come from the approximation of the Ball caster units in the Matlab Simulink model using a friction coefficient. The dynamic model can be improved by including the ball–support–cage model.
-
The larger variations (peaks) in the simulated current could be produced by the settings of the blocks in the Simulink model.
-
Possible differences between the physical and simulated trajectories can be attributed to the lack of position control in the functional model.
If one follows Table 12 (four-wheeled configuration) and Table 13 (two-wheeled configuration) from the point of view of the simulated and measured consumed power, then one can see differences in the values for each motor separately, but also in the total value. Obviously, they can come from the discussed differences between the simulated and measured current.
Here, we can observe that on the comparison graphs presented in Figure 36 and Figure 40, the total times are identical, both for simulation and for measurement, for the reasons of correct interpretation of the current values with regard to the path. In reality, the times are slightly different. The measurement time of 18.61 s differs by 6% from the simulation time of 17.47 s. This difference derives from the impossibility of total trajectory control when measuring using the functional model.
It should be specified that, in the calculation of the power consumed when moving the robot along the trajectory, the times used were the actual ones.
Therefore, the concept presented can be further used for analysis and optimization procedures using more accurate models of power consumption. The detected errors and their causes can be further considered in refining the mobile robot models.

6. Conclusions

The modular robotic platform described and used in this research is a concept that highlights modularity, that is, the possibility of forming several robotic structures using the same hardware components, but with different configurations of the locomotion system. Due to modularity, the performance of mobile robots can increase in terms of autonomy and flexibility for integration into various applications.
The research presented in the article leads to hardware and software solutions that are the basis of a system for measuring the currents drawn by a DC servomotor used to actuate a modular mobile robot with four motorized wheels, using an ACS712-05 hall sensor. The methods and hardware solutions proposed in this work are very low-cost solutions. The experimental validation of the Simulink models shows that to measure currents on the order of tens of milliamps, it is necessary to use an ADC module with a resolution of 16 bits, which has a measurement error of ±8 mA. If the measured value is on the order of amperes, then the ADC with 10-bit resolution, integrated in the Arduino development board, can also be used. In addition, the validated mobile robot models with four and two drive wheels can be used for analysis and power consumption prediction and optimization studies for several types of configurations of the presented modular mobile robot, when traveling different paths in various conditions. Moreover, the functional model can be integrated with position sensors and controlled using digital block simulation programs.

Author Contributions

Conceptualization, G.C. and I.-A.M.; methodology, G.C., I.-A.M., M.C., C.-E.G. and C.-M.B.; software, I.-A.M., M.C. and A.B.; investigation, I.-A.M., M.C., C.B., C.-E.G. and A.-L.C.; resources, G.C., I.-A.M., C.B., C.-M.B., A.B. and A.-L.C.; writing—original draft preparation, G.C., I.-A.M. and M.C.; writing—review and editing, I.-A.M., G.C. and C.B. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

Not applicable.

Acknowledgments

This work has been funded by the European Social Fund from the Sectoral Operational Programme Human Capital 2014–2020, through the Financial Agreement with the title “Training of PhD students and postdoctoral researchers in order to acquire applied research skills-SMART”, Contract no. 13530/16.06.2022-SMIS code: 153734.

Conflicts of Interest

The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript; or in the decision to publish the results.

References

  1. Niloy, M.A.; Shama, A.; Chakrabortty, R.K.; Ryan, M.J.; Badal, F.R.; Tasneem, Z.; Ahamed, M.H.; Moyeen, S.I.; Das, S.K.; Ali, M.F. Critical Design and Control Issues of Indoor Autonomous Mobile Robots: A Review. IEEE Access 2021, 9, 35338–35370. [Google Scholar] [CrossRef]
  2. Chatzopoulos, A.; Kalogiannakis, M.; Papadakis, S.; Papoutsidakis, M. A Novel, Modular Robot for Educational Robotics Developed Using Action Research Evaluated on Technology Acceptance Model. Educ. Sci. 2022, 12, 274. [Google Scholar] [CrossRef]
  3. Iqbal, J.; Xu, R.; Sun, S.; Li, C. Simulation of an Autonomous Mobile Robot for LiDAR-Based in-Field Phenotyping and Navigation. Robotics 2020, 9, 46. [Google Scholar] [CrossRef]
  4. Jara, C.A.; Corrales, J.A. Robotic Platforms for Assistance to People with Disabilities. Appl. Sci. 2022, 12, 2235. [Google Scholar] [CrossRef]
  5. Kubr, E. Entwicklung Eines Antriebsmoduls Für Einen Modular Aufgebauten Kooperativen Roboter. Diploma Thesis, Technische Universität Wien, Vienna, Austria, 2022. [Google Scholar]
  6. Pistorius, J. Industrie 4.0–Schlüsseltechnologien Für Die Produktion: Grundlagen• Potenziale• Anwendungen; Springer: Berlin/Heidelberg, Germany, 2020; ISBN 3-662-61580-0. [Google Scholar]
  7. Panigrahi, P.K.; Bisoy, S.K. Localization Strategies for Autonomous Mobile Robots: A Review. J. King Saud Univ.-Comput. Inf. Sci. 2021, 34, 6019–6039. [Google Scholar] [CrossRef]
  8. Rubio, F.; Valero, F.; Llopis-Albert, C. A Review of Mobile Robots: Concepts, Methods, Theoretical Framework, and Applications. Int. J. Adv. Robot. Syst. 2019, 16, 1729881419839596. [Google Scholar] [CrossRef] [Green Version]
  9. Hou, L.; Zhang, L.; Kim, J. Energy Modeling and Power Measurement for Mobile Robots. Energies 2018, 12, 27. [Google Scholar] [CrossRef] [Green Version]
  10. Verstraten, T.; Furnémont, R.; Mathijssen, G.; Vanderborght, B.; Lefeber, D. Energy Consumption of Geared DC Motors in Dynamic Applications: Comparing Modeling Approaches. IEEE Robot. Autom. Lett. 2016, 1, 524–530. [Google Scholar] [CrossRef]
  11. Rapalski, A.; Dudzik, S. Energy Consumption Analysis of the Selected Navigation Algorithms for Wheeled Mobile Robots. Energies 2023, 16, 1532. [Google Scholar] [CrossRef]
  12. Alatise, M.B.; Hancke, G.P. A Review on Challenges of Autonomous Mobile Robot and Sensor Fusion Methods. IEEE Access 2020, 8, 39830–39846. [Google Scholar] [CrossRef]
  13. Rijalusalam, D.U.; Iswanto, I. Implementation Kinematics Modeling and Odometry of Four Omni Wheel Mobile Robot on the Trajectory Planning and Motion Control Based Microcontroller. J. Robot. Control. (JRC) 2021, 2, 448–455. [Google Scholar] [CrossRef]
  14. Krot, K.; Iskierka, G.; Poskart, B.; Gola, A. Predictive Monitoring System for Autonomous Mobile Robots Battery Management Using the Industrial Internet of Things Technology. Materials 2022, 15, 6561. [Google Scholar] [CrossRef]
  15. De Fazio, R.; Katamba, D.M.; Ekuakille, A.L.; Ferreira, M.J.; Kidiamboko, S.; Giannoccaro, N.I.; Velazquez, R.; Visconti, P. Sensors-Based Mobile Robot for Harsh Environments: Functionalities, Energy Consumption Analysis and Characterization. Acta IMEKO 2021, 10, 209–219. [Google Scholar] [CrossRef]
  16. Jahn, U.; Heß, D.; Stampa, M.; Sutorma, A.; Röhrig, C.; Schulz, P.; Wolff, C. A Taxonomy for Mobile Robots: Types, Applications, Capabilities, Implementations, Requirements, and Challenges. Robotics 2020, 9, 109. [Google Scholar] [CrossRef]
  17. Bruzzone, L.; Nodehi, S.E.; Fanghella, P. Tracked Locomotion Systems for Ground Mobile Robots: A Review. Machines 2022, 10, 648. [Google Scholar] [CrossRef]
  18. Wang, Y.; Li, X.; Zhang, J.; Li, S.; Xu, Z.; Zhou, X. Review of Wheeled Mobile Robot Collision Avoidance under Unknown Environment. Sci. Prog. 2021, 104, 00368504211037771. [Google Scholar] [CrossRef] [PubMed]
  19. Taheri, H.; Zhao, C.X. Omnidirectional Mobile Robots, Mechanisms and Navigation Approaches. Mech. Mach. Theory 2020, 153, 103958. [Google Scholar] [CrossRef]
  20. Patle, B.K.; Babu, G.L.; Pandey, A.; Parhi, D.R.K.; Jagadeesh, A. A Review: On Path Planning Strategies for Navigation of Mobile Robot. Def. Technol. 2019, 15, 582–606. [Google Scholar] [CrossRef]
  21. Crescentini, M.; Syeda, S.F.; Gibiino, G.P. Hall-Effect Current Sensors: Principles of Operation and Implementation Techniques. IEEE Sens. J. 2021, 22, 10137–10151. [Google Scholar] [CrossRef]
  22. Wang, X.; Sun, X.; Cui, S.; Yang, Q.; Zhai, T.; Zhao, J.; Deng, J.; Ruotolo, A. Physical Investigations on Bias-Free, Photo-Induced Hall Sensors Based on Pt/GaAs and Pt/Si Schottky Junctions. Sensors 2021, 21, 3009. [Google Scholar] [CrossRef]
  23. Aiello, O. Hall-Effect Current Sensors Susceptibility to EMI: Experimental Study. Electronics 2019, 8, 1310. [Google Scholar] [CrossRef] [Green Version]
  24. Romero-Perigault, J.; Flores-Fuentes, W.; Jo, K.-H.; Caceres Hernandez, D. Wireless Current Monitoring for Autonomous Robot Navigation. In Proceedings of the 2019 IEEE 28th International Symposium on Industrial Electronics (ISIE), Vancouver, BC, Canada, 12–14 June 2019; IEEE Ind Elect Soc: New York City, NY, USA, 2019; pp. 1717–1722. [Google Scholar]
  25. Aiello, O.; Fiori, F. A New MagFET-Based Integrated Current Sensor Highly Immune to EMI. Microelectron. Reliab. 2013, 53, 573–581. [Google Scholar] [CrossRef]
  26. Karamipour, E.; Dehkordi, S.F.; Korayem, M.H. Reconfigurable Mobile Robot with Adjustable Width and Length: Conceptual Design, Motion Equations and Simulation. J. Intell. Robot. Syst. 2020, 99, 797–814. [Google Scholar] [CrossRef]
  27. Luo, R.C.; Lee, S.L.; Wen, Y.C.; Hsu, C.H. Modular ROS Based Autonomous Mobile Industrial Robot System for Automated Intelligent Manufacturing Applications. In Proceedings of the 2020 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), Boston, MA, USA, 6–9 July 2020; ASME: New York City, NY, USA, 2020; pp. 1673–1678. [Google Scholar]
  28. Tkacik, M.; Brezina, A.; Jadlovska, S. Design of a Prototype for a Modular Mobile Robotic Platform. IFAC PapersOnLine 2019, 52, 192–197. [Google Scholar] [CrossRef]
  29. Kutzer, M.D.M.; Moses, M.S.; Brown, C.Y.; Scheidt, D.H.; Chirikjian, G.S.; Armand, M. Design of a New Independently-Mobile Reconfigurable Modular Robot. In Proceedings of the 2010 IEEE International Conference on Robotics and Automation (ICRA), Anchorage, AK, USA, 3–7 May 2010; pp. 2758–2764. [Google Scholar]
  30. Ryland, G.G.; Cheng, H.H. Design of IMobot, an Intelligent Reconfigurable Mobile Robot with Novel Locomotion. In Proceedings of the 2010 IEEE International Conference on Robotics and Automation (ICRA), Anchorage, AK, USA, 3–7 May 2010; pp. 60–65. [Google Scholar]
  31. Piza, R.; Carbonell, R.; Casanova, V.; Cuenca, A.; Salt Llobregat, J.J. Nonuniform Dual-Rate Extended Kalman-Filter-Based Sensor Fusion for Path-Following Control of a Holonomic Mobile Robot with Four Mecanum Wheels. Appl. Sci. 2022, 12, 3560. [Google Scholar] [CrossRef]
  32. Ahmadi, S.M.; Taghadosi, M.B.; Haqshenas, A.M. A State Augmented Adaptive Backstepping Control of Wheeled Mobile Robots. Trans. Inst. Meas. Control. 2020, 43, 434–450. [Google Scholar] [CrossRef]
  33. Hassan, N.; Saleem, A. Analysis of Trajectory Tracking Control Algorithms for Wheeled Mobile Robots. In Proceedings of the Ieacon 2021: 2021 IEEE Industrial Electronics and Applications Conference (IEACON), George Town, Penang, Malaysia, 22–23 November 2021; pp. 236–241. [Google Scholar]
  34. Ren, Y.; Zheng, L.; Khajepour, A. Integrated Model Predictive and Torque Vectoring Control for Path Tracking of 4-Wheel-Driven Autonomous Vehicles. IET Intell. Transp. Syst. 2019, 13, 98–107. [Google Scholar] [CrossRef]
  35. Siwek, M.; Baranowski, L.; Panasiuk, J.; Kaczmarek, W. Modeling and Simulation of Movement of Dispersed Group of Mobile Robots Using Simscape Multibody Software. In Proceedings of the Computational Technologies in Engineering (TKI’2018), Jora Wielka, Polska, 16–19 October 2018; Volume 2078. [Google Scholar]
  36. Stefek, A.; Pham, T.V.; Krivanek, V.; Pham, K.L. Energy Comparison of Controllers Used for a Differential Drive Wheeled Mobile Robot. IEEE Access 2020, 8, 170915–170927. [Google Scholar] [CrossRef]
  37. Jaramillo-Morales, M.F.; Dogru, S.; Gomez-Mendoza, J.B.; Marques, L. Energy Estimation for Differential Drive Mobile Robots on Straight and Rotational Trajectories. Int. J. Adv. Robot. Syst. 2020, 17, 1729881420909654. [Google Scholar] [CrossRef] [Green Version]
  38. Canfield, S.L.; Hill, T.W.; Zuccaro, S.G. Prediction and Experimental Validation of Power Consumption of Skid-Steer Mobile Robots in Manufacturing Environments. J. Intell. Robot. Syst. 2019, 94, 825–839. [Google Scholar] [CrossRef]
  39. Valero, F.; Rubio, F.; Llopis-Albert, C. Assessment of the Effect of Energy Consumption on Trajectory Improvement for a Car-like Robot. Robotica 2019, 37, 1998–2009. [Google Scholar] [CrossRef]
  40. Innah, H.; Sari, P. Current Measurement Role For Supporting Smart Grid Appliances Based On Hall Effect Sensor. SITIA 2013, 2013, 212–214. [Google Scholar]
  41. Racz, S.-G.; Crenganiș, M.; Breaz, R.-E.; Maroșan, A.; Bârsan, A.; Gîrjob, C.-E.; Biriș, C.-M.; Tera, M. Mobile Robots—AHP-Based Actuation Solution Selection and Comparison between Mecanum Wheel Drive and Differential Drive with Regard to Dynamic Loads. Machines 2022, 10, 886. [Google Scholar] [CrossRef]
  42. Servomotor Dynamixel MX-64AR, MX-64AT. Available online: https://emanual.robotis.com/docs/en/dxl/mx/mx-64/#specifications (accessed on 12 December 2022).
  43. Sari, M.B.; Yuliantini, L.; Prihtiadi, H.; Djamal, M. Easy Monitoring and Data Record System of Electric Current Detected by ACS712 Affordable Non-Destructive Electrical Current Sensor. Pillar Phys. 2021, 13, 82–88. [Google Scholar]
  44. Ziegler, S.; Woodward, R.C.; Iu, H.H.-C.; Borle, L.J. Current Sensing Techniques: A Review. IEEE Sens. J. 2009, 9, 354–376. [Google Scholar] [CrossRef]
  45. Mnati, M.J.; Van den Bossche, A.; Chisab, R.F. A Smart Voltage and Current Monitoring System for Three Phase Inverters Using an Android Smartphone Application. Sensors 2017, 17, 872. [Google Scholar] [CrossRef] [PubMed]
  46. Allegro Fully Integrated, Hall Effect-Based Linear Current Sensor with 2.1 KVRMS Voltage Isolation and a Low-Resistance Current Conductor. Available online: https://www.sparkfun.com/datasheets/BreakoutBoards/0712.pdf (accessed on 13 November 2022).
  47. García, E.; Ponluisa, N.; Quiles, E.; Zotovic-Stanisic, R.; Gutiérrez, S.C. Solar Panels String Predictive and Parametric Fault Diagnosis Using Low-Cost Sensors. Sensors 2022, 22, 332. [Google Scholar] [CrossRef]
  48. MathWorks Student Competitions Team Mobile Robotics Simulation Toolbox. Available online: https://github.com/mathworks-robotics/mobile-robotics-simulation-toolbox (accessed on 15 January 2023).
Figure 1. Possible configurations of the modular mobile platform. (a) Mobile robot with two conventional wheels. (b) Mobile robot with three omnidirectional wheels. (c) Mobile robot with four conventional wheels.
Figure 1. Possible configurations of the modular mobile platform. (a) Mobile robot with two conventional wheels. (b) Mobile robot with three omnidirectional wheels. (c) Mobile robot with four conventional wheels.
Machines 11 00385 g001
Figure 2. Modular mobile robot with four conventional wheels (3D model). (a) Isometric view. (b) Bottom view.
Figure 2. Modular mobile robot with four conventional wheels (3D model). (a) Isometric view. (b) Bottom view.
Machines 11 00385 g002
Figure 3. Modular mobile robot with two conventional wheels (3D model). (a) Isometric view. (b) Top view.
Figure 3. Modular mobile robot with two conventional wheels (3D model). (a) Isometric view. (b) Top view.
Machines 11 00385 g003
Figure 4. Modular mobile robot with two conventional wheels (real model). (a) Isometric view. (b) Bottom view.
Figure 4. Modular mobile robot with two conventional wheels (real model). (a) Isometric view. (b) Bottom view.
Machines 11 00385 g004
Figure 5. Drive wheel module of the modular mobile robot (3D model). (a) External view. (b) Internal view.
Figure 5. Drive wheel module of the modular mobile robot (3D model). (a) External view. (b) Internal view.
Machines 11 00385 g005
Figure 6. Drive wheel module assembly (physical model). (a) Internal view. (b) External view.
Figure 6. Drive wheel module assembly (physical model). (a) Internal view. (b) External view.
Machines 11 00385 g006
Figure 7. Block diagram of the drive wheel module electric system.
Figure 7. Block diagram of the drive wheel module electric system.
Machines 11 00385 g007
Figure 8. Hall effect in a thin sheet of conductive material [43].
Figure 8. Hall effect in a thin sheet of conductive material [43].
Machines 11 00385 g008
Figure 9. Electrical diagram of the current sensor [45].
Figure 9. Electrical diagram of the current sensor [45].
Machines 11 00385 g009
Figure 10. Current sensor operating curve [46,47].
Figure 10. Current sensor operating curve [46,47].
Machines 11 00385 g010
Figure 11. Electrical diagram of the actuation module.
Figure 11. Electrical diagram of the actuation module.
Machines 11 00385 g011
Figure 12. Data acquisition scheme of the drive wheel module and connection with Matalb/Simulink using 10-bit ADC.
Figure 12. Data acquisition scheme of the drive wheel module and connection with Matalb/Simulink using 10-bit ADC.
Machines 11 00385 g012
Figure 13. Voltage sensor calibration.
Figure 13. Voltage sensor calibration.
Machines 11 00385 g013
Figure 14. Simulink model for current monitoring.
Figure 14. Simulink model for current monitoring.
Machines 11 00385 g014
Figure 15. Voltage variation detected with the ACS712-05 sensor for I = 0 A.
Figure 15. Voltage variation detected with the ACS712-05 sensor for I = 0 A.
Machines 11 00385 g015
Figure 16. Voltage variation in the ACS712-05 sensor for I = 0 A after calibration.
Figure 16. Voltage variation in the ACS712-05 sensor for I = 0 A after calibration.
Machines 11 00385 g016
Figure 17. Motor wheel module data acquisition scheme and Matlab Simulink connection for the 16-bit ADC.
Figure 17. Motor wheel module data acquisition scheme and Matlab Simulink connection for the 16-bit ADC.
Machines 11 00385 g017
Figure 18. Simulink model for signal reading using the 16-bit ADC.
Figure 18. Simulink model for signal reading using the 16-bit ADC.
Machines 11 00385 g018
Figure 19. ACS712-05 sensor voltage variation for I = 0 A using the 16-bit ADC after calibration.
Figure 19. ACS712-05 sensor voltage variation for I = 0 A using the 16-bit ADC after calibration.
Machines 11 00385 g019
Figure 20. Variation in the current provided by the ACS712-05 sensor without current consumption: (a) for a 10-bit ADC and (b) for a 16-bit ADC.
Figure 20. Variation in the current provided by the ACS712-05 sensor without current consumption: (a) for a 10-bit ADC and (b) for a 16-bit ADC.
Machines 11 00385 g020
Figure 21. Variation in the current provided by the ACS712-05 sensor in the bidirectional operation of the Dynamixel MX64AT servomotor: (a) for a 10-bit ADC and (b) for a 16-bit ADC.
Figure 21. Variation in the current provided by the ACS712-05 sensor in the bidirectional operation of the Dynamixel MX64AT servomotor: (a) for a 10-bit ADC and (b) for a 16-bit ADC.
Machines 11 00385 g021
Figure 22. The connection between the 3D CAD model and Simulink–Simscape–Multibody.
Figure 22. The connection between the 3D CAD model and Simulink–Simscape–Multibody.
Machines 11 00385 g022
Figure 23. Result of the CAD model import in Simulink Simscape.
Figure 23. Result of the CAD model import in Simulink Simscape.
Machines 11 00385 g023
Figure 24. The 3D model of the mobile robot in Simulink Simscape. (a) Top view. (b) Isometric view. (c) Lateral view.
Figure 24. The 3D model of the mobile robot in Simulink Simscape. (a) Top view. (b) Isometric view. (c) Lateral view.
Machines 11 00385 g024
Figure 25. Schematic kinematic model of the modular mobile robot with differential traction.
Figure 25. Schematic kinematic model of the modular mobile robot with differential traction.
Machines 11 00385 g025
Figure 26. Dynamic model of the mobile robot—block diagram.
Figure 26. Dynamic model of the mobile robot—block diagram.
Machines 11 00385 g026
Figure 27. The path traveled by the robot. (a) Trajectory resulting from the simulation. (b) The 90° turn of the robot in the simulation.
Figure 27. The path traveled by the robot. (a) Trajectory resulting from the simulation. (b) The 90° turn of the robot in the simulation.
Machines 11 00385 g027
Figure 28. Variations in the input speeds in the dynamic model of the wheels. (a) For wheel 1 (similar to wheel 3). (b) For wheel 2 (similar to wheel 4).
Figure 28. Variations in the input speeds in the dynamic model of the wheels. (a) For wheel 1 (similar to wheel 3). (b) For wheel 2 (similar to wheel 4).
Machines 11 00385 g028
Figure 29. Torque variation for a 1 m square trajectory. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Figure 29. Torque variation for a 1 m square trajectory. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Machines 11 00385 g029
Figure 30. Block diagram of the actuation system.
Figure 30. Block diagram of the actuation system.
Machines 11 00385 g030
Figure 31. Current variation determined in the model simulation for a 1 m square trajectory. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Figure 31. Current variation determined in the model simulation for a 1 m square trajectory. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Machines 11 00385 g031
Figure 32. Modular mobile robot with conventional four wheels. (a) Without transport box. (b) With load carried.
Figure 32. Modular mobile robot with conventional four wheels. (a) Without transport box. (b) With load carried.
Machines 11 00385 g032
Figure 33. Physical path and real mobile robot.
Figure 33. Physical path and real mobile robot.
Machines 11 00385 g033
Figure 34. Fluke 115 Digital Multimeter.
Figure 34. Fluke 115 Digital Multimeter.
Machines 11 00385 g034
Figure 35. Current variation measured using the functional model for moving on the redefined path. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Figure 35. Current variation measured using the functional model for moving on the redefined path. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Machines 11 00385 g035
Figure 36. Variation in the simulated and measured current. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Figure 36. Variation in the simulated and measured current. (a) Wheel 1 (similar to wheel 3). (b) Wheel 2 (similar to wheel 4).
Machines 11 00385 g036
Figure 37. Physical path and real mobile robot. (a) Close view. (b) Mobile robot on the path.
Figure 37. Physical path and real mobile robot. (a) Close view. (b) Mobile robot on the path.
Machines 11 00385 g037
Figure 38. Current variation simulated for a 1 m square path. (a) Wheel 1. (b) Wheel 2.
Figure 38. Current variation simulated for a 1 m square path. (a) Wheel 1. (b) Wheel 2.
Machines 11 00385 g038
Figure 39. Current variation measured using the functional model for moving on the predefined path. (a) Wheel 1. (b) Wheel 2.
Figure 39. Current variation measured using the functional model for moving on the predefined path. (a) Wheel 1. (b) Wheel 2.
Machines 11 00385 g039
Figure 40. Variation in the simulated and measured current. (a) Wheel 1. (b) Wheel 2.
Figure 40. Variation in the simulated and measured current. (a) Wheel 1. (b) Wheel 2.
Machines 11 00385 g040
Figure 41. Calculation of the definite integral.
Figure 41. Calculation of the definite integral.
Machines 11 00385 g041
Figure 42. Power consumption—simulated in the case of the four-wheeled robot.
Figure 42. Power consumption—simulated in the case of the four-wheeled robot.
Machines 11 00385 g042
Figure 43. Power consumption—measured in the case of the four-wheeled robot.
Figure 43. Power consumption—measured in the case of the four-wheeled robot.
Machines 11 00385 g043
Figure 44. Power consumption—simulated in the case of the two-wheeled robot.
Figure 44. Power consumption—simulated in the case of the two-wheeled robot.
Machines 11 00385 g044
Figure 45. Power consumption—measured in the case of the two-wheeled robot.
Figure 45. Power consumption—measured in the case of the two-wheeled robot.
Machines 11 00385 g045
Table 1. References of the state of the art on sections.
Table 1. References of the state of the art on sections.
Title [Source]Document TypeCited Reference CountTimes Cited, All DatabasesYearCategories
General aspects of mobile robots
Mobile Robots Locomotion [17]Review7332022Engineering, Mechanical
Wheeled mobile robot [18]Review11822021Disciplines, Multidisciplinary
Omnidirectional mobile robots [19]Article354212020Engineering, Mechanical
Navigation of mobile robot [20]Review2082202019Engineering, Multidisciplinary
A review of mobile robots [8]Review1881202019Robotics
Hall sensors
Hall-Effect Current Sensors [21]Article10362022Engineering, Applied
Photo-Induced Hall Sensors [22]Article3432021Engineering, Electrical
Current Sensors [23]Article21152019Engineering, Electrical
Wireless Current Monitoring [24]C. Paper802019Engineering, Electrical
MagFET-current sensor [25]Article23142013Engineering, Electrical
Modular and reconfigurable mobile robots
Reconfigurable Mobile Robot [26]Article2382020Artificial Intelligence; Robotics
Modular ROS [27]C. Paper3112020Engineering, Robotics
Modular Mobile Platform [28]C. Paper1632019Automation and Control Systems
Reconfigurable Robot [29]C. Paper16252010Automation and Control Robotics
Design of iMobot [30]C. Paper12512010Automation and Control Robotics
Matlab Simulink modeling for mobile robots
Holonomic Mobile Robot [31]Article4042022Multidisciplinary; Engineering
Control of wheeled robots [32]Article6652021Automation and Control Systems
Trajectory Mobile Robots [33]C. Paper2712021Engineering, Industrial
Four-wheel-driven autonomous [34]Article29302019Engineering, Electrical
Mobile Robots Simscape [35]C. Paper1452019Engineering, Multidisciplinary
Energy consumption of mobile robots
Energy Differential Drive [36]Article30122020Engineering, Electrical
Energy estimation robots [37]Article23112020Robotics
Energy Modeling robots [9]Article30272019Energy and Fuels
Power Consumption Robots [38]Article25182019Computer Science, Robotics
Energy Consumption on Trajectory [39]Article21172019Robotics
All searches were completed in February 2023.
Table 2. Technical characteristics of the conventional two-wheeled modular mobile robot.
Table 2. Technical characteristics of the conventional two-wheeled modular mobile robot.
Size493 × 421 × 210 mm3
Robot mass21.5 kg
Maximum transported mass~10 kg
Maximum travel speed0.5 m/s
Maximum acceleration1 m/s2
Motor supply voltage12 V
Maximum torque developed by the enginemax. 7.3 Nm
Whell diameter100 mm
Whell typeConventional NBR
Suspension systemAdjustable suspension with hydraulic shock absorbers
Navigation sensorsRPLidar A2 360 grade, QTR-8RC for line tracking
Inertial sensorsGyro and accelerometer module MPU 6065
Current monitoring sensorsSensors Hall ACS712-5A
Command boardsRaspberry Pi 4, Ardunio Mega 2560
SoftwarePossibility of integration of the ROS operating system
Table 3. Features of the servo motor Dynamixel MX64 AT [42].
Table 3. Features of the servo motor Dynamixel MX64 AT [42].
ItemSpecifications
Dimensions (W × H × D)40.2 × 61.1 × 41 mm3
Weight135 g
Gear Ratio200:1
Stall Torque5.5 Nm (at 11.1 V, 3.9 A)
6.0 Nm (at 12 V, 4.1 A)
7.3 Nm (at 14.8 V, 5.2 A)
No Load Speed58 rev/min (at 11.1 V)
63 rev/min (at 12 V)
78 rev/min (at 14.8 V)
Input voltage10.0–14.8 V (Recommended: 12.0 V)
Standby current100 mA
Command signalDigital Packet
Operating temperature−5 to +80 °C
MCUARM CORTEX-M3 (72 MHz, 32 Bit)
MotorCoreless (Maxon)
Position sensorContactless absolute encoder AS5045 (12 Bit, 360°) Makerams
Resolution4096 positions/rev
Table 4. Constructive variants of the ACS712 sensor [46,47].
Table 4. Constructive variants of the ACS712 sensor [46,47].
Sensor ModelTemperature (°C)Measurement RangeSensitivity (mV/A)
ACS712ELCTR-05A−40 to 85±5185
ACS712ELCTR-20A−40 to 85±20100
ACS712ELCTR-30A−40 to 85±3066
Table 5. Main features of the ACS712 sensor [46,47].
Table 5. Main features of the ACS712 sensor [46,47].
ParametersValues
Minimum Isolation Voltage (Input and Output)2.1 kVrms
Working TemperatureFrom (−40 to + 85) °C
Supply Voltage5 V
Sensitivity (±5, ±20 and ±30) A(66, 100, 185) mV/A
Drawn current10 mA
Table 6. Values obtained experimentally with the current sensor and the multimeter for motor M1.
Table 6. Values obtained experimentally with the current sensor and the multimeter for motor M1.
Time (s)M1 Current Measured Using Sensor ACS712-05M1 Current Measured Using Multimeter Fluke 115Error (%)
t11.110.160.1631.84%
t25.950.1770.1722.82%
t39.440.2610.2620.38%
t417.290.1570.1612.48%
Table 7. Values obtained experimentally with the current sensor and the multimeter for motor M2.
Table 7. Values obtained experimentally with the current sensor and the multimeter for motor M2.
Time (s)M2 Current Measured Using Sensor ACS712-05M2 Current Measured Using Multimeter Fluke 115Error (%)
t110.1240.1368.82%
t25.210.1250.1314.58%
t311.380.0810.07211.1%
t417.250.080.06913.75%
Table 8. Comparison between simulated and measured current—data statistics for motor M1.
Table 8. Comparison between simulated and measured current—data statistics for motor M1.
DescriptionVariation in Simulated Current (A)Variation in Measured Current (A)Error (%)
Maximum value3.083.152.3%
Average or mean value0.01360.01313.9%
Median value0.1520.1511.0%
Smallest value−3.08−3.183.2%
Most frequent value0.1520.1540.9%
Standard deviation0.340.4829.1%
Table 9. Comparison between simulated and measured current—data statistics for motor M2.
Table 9. Comparison between simulated and measured current—data statistics for motor M2.
DescriptionVariation in Simulated Current (A)Variation in Measured Current (A)Error (%)
Maximum value2.861.6243.2%
Average or mean value0.230.1822.8%
Median value0.150.0841.6%
Smallest value−2.10−0.4479.0%
Most frequent value0.150.0842.1%
Standard deviation0.220.217.4%
Table 10. Comparison between simulated and measured current—data statistics for motor M1.
Table 10. Comparison between simulated and measured current—data statistics for motor M1.
DescriptionVariation in Simulated Current (A)Variation in Measured Current (A)Error (%)
Maximum value1.383.1556.1%
Average or mean value0.130.1619.2%
Median value0.2050.2081.4%
Smallest value−1.38−3.1856.6%
Most frequent value0.200.192.9%
Standard deviation2.750.37242.6%
Table 11. Comparison between simulated and measured current—data statistics for motor M2.
Table 11. Comparison between simulated and measured current—data statistics for motor M2.
DescriptionVariation in Simulated Current (A)Variation in Measured Current (A)Error (%)
Maximum value0.540.6516.9%
Average or mean value0.200.2930.5%
Median value0.200.2724.6%
Smallest value−0.14−0.2544.2%
Most frequent value0.200.2519.6%
Standard deviation0.680.9024.4%
Table 12. Current and power consumption values of the motors and of the entire mobile robot with four drive wheels.
Table 12. Current and power consumption values of the motors and of the entire mobile robot with four drive wheels.
M1M2M3M4Total
Measured current (A)0.190.320.190.321.02
Simulated current (A)0.240.250.240.250.98
Current error (%)−26.321.9−26.321.93.9
Power consumption based on measurements (W)2.223.782.223.7812.00
Power consumption based on simulations (W)2.922.952.922.9511.74
Power error (%)−31.522.0−31.522.02.2
Table 13. Current and power consumption values of the motors and the entire mobile robot with two drive wheels.
Table 13. Current and power consumption values of the motors and the entire mobile robot with two drive wheels.
M1M2Total
Measured current (A)0.290.280.57
Simulated current (A)0.200.200.4
Current error (%)31.028.629.8
Power consumption based on measurements (W)3.593.457.04
Power consumption based on simulations (W)2.502.464.96
Power error (%)30.428.729.5
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Constantin, G.; Maroșan, I.-A.; Crenganiș, M.; Botez, C.; Gîrjob, C.-E.; Biriș, C.-M.; Chicea, A.-L.; Bârsan, A. Monitoring the Current Provided by a Hall Sensor Integrated in a Drive Wheel Module of a Mobile Robot. Machines 2023, 11, 385. https://doi.org/10.3390/machines11030385

AMA Style

Constantin G, Maroșan I-A, Crenganiș M, Botez C, Gîrjob C-E, Biriș C-M, Chicea A-L, Bârsan A. Monitoring the Current Provided by a Hall Sensor Integrated in a Drive Wheel Module of a Mobile Robot. Machines. 2023; 11(3):385. https://doi.org/10.3390/machines11030385

Chicago/Turabian Style

Constantin, George, Iosif-Adrian Maroșan, Mihai Crenganiș, Corina Botez, Claudia-Emilia Gîrjob, Cristina-Maria Biriș, Anca-Lucia Chicea, and Alexandru Bârsan. 2023. "Monitoring the Current Provided by a Hall Sensor Integrated in a Drive Wheel Module of a Mobile Robot" Machines 11, no. 3: 385. https://doi.org/10.3390/machines11030385

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop