Next Article in Journal
Design of Broadband W-Band Waveguide Package and Application to Low Noise Amplifier Module
Previous Article in Journal
Mobile-Phone Antenna Array with Diamond-Ring Slot Elements for 5G Massive MIMO Systems
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Active Virtual Impedance Control for Sound-Following Robots to Avoid Obstacles

1
EV Components & Materials R&D Group, Korea Institute of Industrial Technology, Gwangju 61012, Korea
2
Department of Electrical Engineering, Chonnam National University, 77 Youngbong-ro, Buk-gu, Gwangju 61186, Korea
3
Industrial Technology (Robotics), Korea University of Science and Technology, 217 Gajeong-ro, Yuseong-gu, Daejeon 34113, Korea
*
Author to whom correspondence should be addressed.
Electronics 2019, 8(5), 522; https://doi.org/10.3390/electronics8050522
Submission received: 7 April 2019 / Revised: 6 May 2019 / Accepted: 7 May 2019 / Published: 10 May 2019
(This article belongs to the Section Systems & Control Engineering)

Abstract

:
A novel active virtual impedance algorithm is here proposed to help sound-following robots avoid obstacles while tracking a sound source. The tracking velocity of a mobile robot to a sound source is determined by virtual repulsive and attraction forces to avoid obstacles and to follow the sound source, respectively. Active virtual impedance is defined as a function of distances and relative velocities to the sound source and obstacles from the mobile robot, which is used to generate the tracking velocity of the mobile robot. Conventional virtual impedance methods have fixed coefficients for relative distances and velocities. However, in this research, the coefficients are dynamically adjusted to extend the obstacle avoidance performance to multiple obstacle environments. The relative distances and velocities are obtained using a microphone array consisting of three microphones in a row. The geometrical relationships of the microphones are utilized to estimate the relative position and orientation of the sound source with respect to the mobile robot, which carries the microphone array. The effectiveness of the proposed algorithm is demonstrated by experiments.

1. Introduction

Sound source and speech recognition technologies have been developed and used with various techniques utilizing microphone array. The magnitude of the sound signal arriving at the microphone is inversely proportional to the square of the distance from the microphone to the sound source. Normally, sound source detection for long distances is not feasible, because the sound signal is so susceptible to environmental noise. The sound signal experiences reflection, diffraction, and interferences with respect to the environment conditions, such as air temperature, existence of obstacles, size of the space, and surrounding sound signals, which cause signal distortions and degrade the reliability of the signal [1,2].
To obtain a specific value for a sound signal, the method of extracting maximum or threshold value has the advantage of requiring fewer calculations and being faster. However, it has the disadvantage of not being effective in environments with noise. On the other hand, to analyze the similarity between signals, a difference method, cross correlation, and generalized cross correlation are applied, which can demonstrate strong and robust performance even in noisy environments. The sound source location has been estimated by mapping the cross-correlation function onto a geometrical space instead of using the time difference function [3,4]. Additionally, head-related transfer function (HRTF), beam forming method (BFM), and artificial ear method (AEM) have been used to detect the sound source localization for robotics areas. However, most of these methods require heavy computations and are expensive for use in robotic applications [5,6].
Due to the fact that sound location recognition technology is very weak and not stable enough to be applied to actual robots, most studies have been conducted with an emphasis on signal processing that analyzes specific signals. Currently, based on these studies, technology and equipment have been developed to recognize sound sources that are fairly stable. Therefore, sound localization recognition technology has been applied and studied with respect to robotic systems. One of these areas is the application of mobile robots, and there is research on such robots moving and following markers to recognized locations, engaging in obstacle avoidance, etc. [7,8]. In particular, sound-position recognition mobile robots follow a sound source from any position using abnormal speed changes and rapid rotation of the mobile robot’s trajectory. Thus, the interaction between the target point, the moving robot, and the surrounding obstacles is very important in order for the robot to recognize and follow the moving sound source in real time and to avoid the obstacle.
Several studies have examined real-time obstacle avoidance using techniques, such as vector field histogram (VFH) approach, curvature velocity method (CVM), and dynamic window approach (DWA), which have local minima that can be avoided with certain modifications [9,10,11]. The potential field method (PFM) has been proposed to generate an attraction force to the target and a repulsive force against an obstacle to determine the direction and velocity of the mobile robot [12,13,14,15,16,17,18].
In this paper, the virtual impedance method has been adopted and elaborated to improve obstacle avoidance performance [15]. The relationship between the uncertain environment and the mobile robot has been modeled as an impedance formed by the damper and spring, which generates a potential vector for the mobile robot [16,17,18,19,20]. The conventional virtual impedance algorithm may be confronted with a local minimum during navigation by the obstacles with fixed coefficients of the impedance. In this study, the impedance coefficients have been adjusted dynamically to improve the collision avoidance performance, and the scheme is called the active virtual impedance method. The location of the sound source has been estimated based on the TDOA (Time Difference of Arrival), and the virtual impedance algorithm has been applied to allow a mobile robot to follow a sound and avoid obstacles.
This paper is organized in six sections. Section 2 explains how to estimate the location of the sound source. In Section 3, the main idea of this paper, the active virtual impedance algorithm, is proposed. The experimental systems of the mobile robot and sensors are illustrated in Section 4, and the experimental results are discussed in Section 5. Finally, Section 6 presents our conclusions.

2. Localization of Sound Source

2.1. Point Sound Source

Generally, sound waves are caused by vibrations of objects. We can use speakers or horns as sound sources to artificially generate sounds that are meant to occur at a time interval with a given rule to warn or to indicate a location. A sound that generates instantaneous sound in a relatively short time is a form of short-term energy release.
This type of sound source has relatively clear boundaries between the parts with and without sound waves.
The frequency of sound, f, traveling with the velocity v can be changed to f’ by the relative velocity at the observer point using the Doppler formula as follows:
f = f ( c ± v c c ± v s )
where v c and v s represent the velocity of the observer and sound source, respectively. c is the propagation velocity of the sound. The Doppler effect can be ignored when c > > v c and c > > v s , i.e., the velocities of the sound source and the mobile robot are considerably smaller than the propagation velocity of sound. Diffusion, diffraction, and reflection of the sound signal in the environment make the signal recognition for the localization difficult.
The sound signal velocity, c , is 340 m/s in the air at room temperature. Using this velocity and traveling time, the distance between the sound source and microphone can be calculated.

2.2. Arriving Time Difference Method

The distance from the sound source to i t h microphone, R i , can be obtained as follows:
R i [ m ] = t i [ s ] × c [ m / s ] ,       i = 1 , 2 , 3
where t i is the traveling time of the sound source to the i t h microphone.
For the two received signals x 1 and x 2 , the n sampling data can be expressed as:
x 1 ( 0 ) , x 1 ( 1 ) , , x 1 ( n 1 ) x 2 ( 0 ) , x 2 ( 1 ) , , x 2 ( n 1 ) .
The similarity function, S x 1 , x 2 , can be defined from these two data sets as follows:
S x 1 , x 2 = 1 / k = 0 n 1 ( x 1 ( k ) x 2 ( k ) ) 2 .
When the signal x j ( k ) is shifted j M steps, the similarity function can be represented as:
S x i , x j ( j M ) = 1 / k = 0 n 1 ( x i ( k ) x j ( k + j M ) ) 2
where j M is 0 ~ n 1 . Using Equation (5), j M , which gives the maximum similarity value, can be obtained. The arrival time difference between the two signals Δ t i j can be calculated using j M and the sampling period, which is represented as:
Δ t i j = j M × t s a m p l i n g
where t s a m p l i n g represents the sampling period of the data sets.

2.3. Recognition of Sound Source

For the simplicity of obtaining the distances, R i , and angles, θ i to the sound source, three microphones, M 1 , M 2 , and M 3 were installed on the same plane at a constant interval ( l = 40   cm ).

2.3.1. Distance Estimation in Two-Dimensional (2D) Space

In Figure 1, the geometrical relationships of R 1 , R 2 , and R 3 to D can be represented, respectively, as follows:
R 1 = c × t 1 = D R 2 = c × t 2 = D + c × Δ t 12 R 3 = c × t 3 = D + c × Δ t 13
where t i ( i = 1 , 2 , 3 ) represents the traveling time of the sound source to the i t h microphone, and Δ t 12 and Δ t 13 represent the arrival time difference between two microphones, 1–2 and 1–3, respectively.
In Figure 1, the distance to the sound source, D, can be obtained using the triangular area formula. Using Heron’s formula, the areas of two triangles, Δ S M 1 M 2 and Δ S M 2 M 3 , can be obtained as follows:
Δ S M 1 M 2 = s 1 ( s 1 R 1 ) ( s 1 R 2 ) ( s 1 l )
Δ S M 2 M 3 = s 2 ( s 2 R 2 ) ( s 2 R 3 ) ( s 2 l )
where s 1 = 1 2 ( R 1 + R 2 + l )   and   s 2 = 1 2 ( R 2 + R 3 + l ) .
The two areas are actually the same. By placing this relation into Equation (7), the distance D can be obtained as follows:
D = l 2 + l c ( Δ t 12 + Δ t 13 ) c 2 ( Δ t 12 2 + Δ t 12 Δ t 13 + Δ t 13 2 ) 2 c ( Δ t 12 + Δ t 13 )

2.3.2. Angle Estimation in 2D Space

The distance to the sound source from the microphone is much larger than the interval between the microphones. Therefore, the traveling path of the sound signal can be approximated as parallel lines, as shown in Figure 2. Using the cosine laws, the orientation angle, θ , can be estimated when the arrival time differences, Δ t i j , are available.
The arrival angle of the sound signal can be calculated as follows:
θ = cos 1 ( d 12 l ) = cos 1 ( c Δ t 12 l )
where d 12 is the difference of d 1 and d 2 , which are distances from microphones 1 and 2 to the sound source, respectively. The angle can be also calculated as follows:
θ = cos 1 ( d 23 l ) = cos 1 ( c Δ t 23 l )
where d 23 is the difference of d 2 and d 3 , which are distances from microphones 2 and 3 to the sound source, respectively.

2.4. Performance Evaluation of Sound Source Recognition

To check the performance of the sound source recognition using the microphone array, sound source detecting experiments were performed in a wide, obstacle-free, indoor environment. The distance between the sound source and microphone array, D, was selected as 1, 2, 3, and 4 m, whereas the angle, θ , was selected to be 0, 30, and 60°. Table 1 lists the mean values of D and θ from 100 measurements. Table 2 summarizes the standard deviations of the measurements for distances and angles.
An analysis of Table 1 and Table 2 reveal an increase in the errors in measuring the distance and angle with increasing distance. In addition, the error also increased with the increasing angle between the sound source and microphones, θ . With increasing D and θ , the possibility of signal distortion became larger and the intensity of the signal became weaker, which caused measurement difficulties and errors.

3. Obstacle Avoidance Using Active Virtual Impedance

For the navigation robot to avoid obstacles more efficiently, a new active virtual impedance algorithm is proposed here.

3.1. Collision Vector and Rotation

For a mobile robot to avoid obstacles during navigation, the locations of the obstacles need to be identified first. The distance vector from the sensor to an object, L ( i : integer), can be defined as:
L i = ( x i , y i ) ( r i cos θ i , d i sin θ i )
where r i represents the distance to an obstacle from the i t h sensor; θ i represents the angle between the robot moving direction Y R and i t h sensor, and ( x i , y i ) represent the location of the i t h sensor. To detect obstacles in front of the mobile robot, three distance sensors were attached in front of the mobile robot. A collision vector, C is defined using the sense data. Two different situations occur when defining the collision vector.
[Case I] When the obstacle is small, it can be detected only by a distance sensor. In this case, the collision vector, C is defined as:
C = L i
[Case II] When the obstacle is detected by two distance sensors, the collision vector, C can be defined using two pointing vectors, L i and L i + 1 . From the two pointing vectors, as shown in Figure 3, two obstacle vectors P i and P i + 1 can be obtained as follows:
P i = ( d i cos θ i , d i sin θ i )
P i + 1 = ( d i + 1 cos θ i + 1 , d i + 1 sin θ i + 1 )
The line between the two points, P i and P i + 1 can be obtained and represented as P i P i + 1 ¯ . Then, a collision vector from the mobile robot to an obstacle can be defined as P o P , which is vertical to the line P i P i + 1 ¯ from the origin of the mobile robot, P o . Thus, the collision vector, C , is defined as follows:
C = P 0 P C = ( x C , y C ) = ( V x i y i V + 1 V , x i + 1 V y i V + 1 V )
where V = y i y i + 1 x i x i + 1 and P 0 is defined as the origin of the sensors with respect to a world frame.
The collision vector is defined with respect to the mobile robot frame, which needs to be transformed to a world frame to drive to the mobile robot into a target position specified with respect to the world frame.
As shown in Figure 4, the orientation of the mobile robot can be transformed into the world frame by rotating θ R along the z -axis as follows.
[ x w y w θ w ] = [ cos θ R sin θ R 0 sin θ R cos θ R 0 0 0 1 ] [ x c y c θ c ]
Therefore, the collision vector can be represented with respect to the world frame as follows:
W C = ( x 0 + x w ,   y 0 + x w ) .

3.2. Virtual Impedance Model

The relative distance and velocity between the mobile robot and an obstacle can be modeled as a spring and damper, respectively, which is called the virtual impedance. Using this virtual impedance, the acceleration for the mobile robot to avoid the obstacle, x ¨ s , can be defined.
From the virtual impedance model illustrated in Figure 5, the motion equation of the mobile robot can be obtained as follows:
x ¨ s = 1 M s ( F m i = 1 n o s F o s , i i = 1 n o d F o d , i )
where F m represents the attraction force to the target point, X r ; M s represents the mass of the mobile robot; x ˙ S and x ¨ S represent the velocity and acceleration of the mobile robot, respectively; F o s and F o d are the repulsive force against the static and dynamic obstacles, respectively; and n o s and n o d represent the number of static and dynamic obstacles, respectively.
The addition of the three forces, F m , F o s , and F o d , guides the mobile robot to the target while avoiding the obstacles. The forces are described in detail as follows:
F S = F m + F b = F m + F o s + F o d
where F m = K r ( X r X s ) + D r ( x ˙ s ) , F o s = i = 1 n o s { K s , i ( X s x s , i ) + D s , i ( x ˙ s x ˙ s , i ) } , and F o d = i = 0 n o d { K d , i ( X s x d , i ) + D d , i ( x ˙ s x ˙ d , i ) } .
Note that x s , i and x d , i represent the position of the i t h static and dynamics obstacles, respectively.
The variables in Equation (18) are summarized in Table 3.
The repulsive force F b can be represented using the obtained collision vector W C with respect to the world frame as follows:
F b = { K o ( ρ 0 W C ) u c + D o ( d d t W C ) u c , w h e n W C < ρ 0 0 o t h e r w i s e
where K 0 is a spring coefficient, D 0 is a damping coefficient, u c = W C W C , and ρ 0 represents the safety margin for avoiding the collision. These repulsive forces are generated regardless of the types of obstacles, and all the repulsive forces are added together.
For the static obstacle, the conventional virtual impedance algorithm is effective. On the other hand, when there are multiple obstacles, the mobile robot is jammed and cannot navigate farther. In addition, the sudden repulsive force against the moving obstacle causes unstable velocity changes in the mobile robot so that the mobile robot vibrates on the path or deviates from the path.

3.3. Active Virtual Impedance Algorithm

A new active virtual impedance algorithm is proposed to overcome the disadvantages of the conventional virtual impedance method that generates attractive and repulsive forces proportional to the distance and relative velocities with respect to the target and obstacle. Because the collision possibility increases abruptly when the obstacle approaches the mobile robot with a high relative velocity, a new nonlinear active virtual impedance was defined to incorporate the situations as follows:
F b = K o ( ρ 0 W C ) u c + D o ( d d t W C ) u c
where K o = k r e f exp ( W C α ) W C , D o ( X s , o ) = d r e f exp ( d d t W C β ) ( μ 0 d d t W C ) and k r e f and d r e f are constants for repulsive forces; α and β determine the nonlinearities dynamically; and μ 0 is the maximum relative velocity of the obstacles, i.e., d d t W C < μ 0 . This new nonlinear virtual impedance can be applicable for both static and dynamic obstacles.
Figure 6 shows the repulsive forces as a function of the distance and velocity against an obstacle as it is represented in Equation (19-a). As shown in Figure 6a, the repulsive force by K o against an obstacle is not zero, even for the obstacle farther than ρ 0 . On the other hand, the repulsive force against the velocity is considered effective below, μ 0 , as shown in Figure 6b. Note that when the relative velocity to the obstacle is larger than, μ 0 , the obstacle can mostly pass by the mobile robot safely. Using Equation (19-b), the virtual repulsive force, F 0 can be represented as follows:
F 0 = k r e f exp ( W C α ) W C + d r e f exp ( d d t W C β ) ( μ 0 d d t W C ) .
In conventional virtual impedance, the repulsive force is increased linearly with decreasing distance to the obstacle within a certain range. On the other hand, in this active virtual impedance algorithm, the repulsive forces are increased nonlinearly without a bound, as shown in Figure 6. The advantage of this method is that a repulsive force is generated against a long-distance object to push away the mobile robot from the obstacle smoothly. This prevents the mobile robot from slipping caused by the abrupt change in direction and velocity.
To compare the distance and velocity factor, conventional virtual impedance holds that the repulsive force varies linearly in the positive or negative direction for the impact vector. Active virtual impedance determines the nonlinear form of the repulsive force in the exponential term. By multiplying the magnitude of the collision vector, the repulsive force cannot generate when the collision vector is zero or μ 0 . Consequently, the constraints of conventional and active virtual impedance differ, as shown in Table 4.
In active virtual impedance, α and β values can be selected by comparison with ρ 0 and μ 0 . In the case of α , the magnitude get smaller and the total repulsive force gets smaller with movement to the left. when C < ρ 0 , to develop sufficient magnitude for the repulsive force, the magnitude of collision vector must be ρ 0 / 2 , and the magnitude of the repulsive force should be K 0 ρ 0 / 2 ; in the case of β , the same is true.
At this point, α and β can be defined as follows:
α = ρ 0 2 ln ( k r e f / K 0 ) ( k r e f > K 0 )
α = ρ 0 2 ln ( k r e f / K 0 ) ( k r e f > K 0 ) .

4. The Configuration of a Mobile Robot

4.1. The System of Moving Object and Mobile Robot

In this paper, two differential-driving mobile robots were developed. A front robot generates sound signals while it is traveling. A rear robot follows the sound source according to the acceleration generated by the active virtual impedance algorithm.
Figure 7 shows the operations of the sound source tracking mobile robot system. Two major operations occur: sound recognition and the active virtual impedance algorithm. In order to estimate the location of blind sound that occurs at any time, part of the recognition of the position of the sound source is estimated in real time. To help with the sound recognition, the front robot generates a sound signal for 0.5 s every 2 s. To maintain the real-time navigation, the cycle time of the active virtual impedance algorithm is designed at 25 m/s.
Moving object (master robot): The mobile robot in Figure 8 was designed to carry the sound source, NT-Commander-1 generated by NTRexLAB. Two DC RB-35GM motors were used, produced by D&J WITH, which have 50:1 reduction gears and encoders (2600 pulses/rot). To amplify the sound signal, a R002(5 W) power amplifier by FunnyKIT Corp. was used with a LS-705(30 W) speaker produced by Lotte Electronics Corp. An ARM series MyCortex-LM 8962 was used as an MCU. Table 5 summarizes the hardware specifications of the moving object.
Mobile robot (slave robot): The differential-driving mobile robot in Figure 9 was designed using two DC IG-32PGM motors for each wheel and a ball caster to balance the system. Reduction gears with a 50:1 reduction ratio were used for motors with encoders (2600 pulses/rot). A microphone array was formed using three microphones of ETM-001, which has −23 dB omni-directional sensitivity for signals from 50 Hz to 18 kHz. The distance between the microphones was 40 cm. The received signal was amplified by K2372 (universal stereo pre-amplifier kit, Velleman Corp.) to 40 dB. An ARM series MyCortex-LM 8962 was used as an MCU, and the signal was sampled by 100 kHz pulses and converted into a digital signal using a 10-bit ADC(Analog to Digital Converter). Table 6 summarizes the hardware specifications of the mobile robot.

4.2. Sensors and Estimation of Distances to Obstacles

To detect the obstacles, an ultrasonic sensor SRF-05, which is low cost and easy to use, was utilized. Its detection angle, however, is limited by 30° within the range of 3 ~ 300 cm. To overcome the narrow detecting angle of the ultrasonic sensor, three ultrasonic sensors were installed on the mobile robot to follow the sound source while avoiding obstacles, as shown in Figure 10.
The obstacle avoidance performance was determined by the sensors to detect obstacles and control algorithms to avoid the obstacles. Therefore, the characteristics of the sensors should be considered carefully for obstacle avoidance. The ultrasonic sensor, SRF-05, radiates a 40 kHz signal, whose propagation velocity depends on the material of the path and the temperature of the material. Notice that the time of flight (TOF) of the ultrasonic signal is dependent on the velocity:
v   [ m / sec ] = 331.5 + 0.6 × T
where T is the temperature in °C.

5. Experiments and Discussions

In order to evaluate the performance of the model, the following three situations were tested. The experiment was carried out indoors with no concave or convex irregularities on the floor. In each experiment, spring and damper constants were selected through simulation to determine the attractive force of the sound source. The settings were K r = 2 and D r = 1 .

5.1. Experiment 1: Sound Source Tracking in Real Time

First of all, the sound source tracking performance of the mobile robot was checked in a 7.0 m × 7.0 m obstacle-free space.
Figure 11 shows the sound source tracking operations of the mobile robot, which follows the moving sound source by detecting the distance and angle to the sound source using a microphone array. The tracking performance shows that the distance and angle can be estimated properly using the microphone array for the sound source tracking robot.

5.2. Experiment 2: Avoidance of Multiple Static Obstacles

The active virtual impedance algorithm was applied to mobile robot navigation under a static obstacle environment, as shown in Figure 12, in which two obstacles were located in the path to the goal position.
Figure 13 compares the experimental trajectories using the conventional virtual impedance algorithm and the new active virtual impedance algorithm. For the conventional algorithm, the threshold value, ρ 0 , to detect the obstacle was selected as 800 mm, and for the active virtual impedance algorithm, the maximum approaching velocity of the mobile robot, μ 0 , was selected as 600 mm/s.
As shown in Figure 13, the trajectory of the mobile robot using the active virtual impedance algorithm was smoother than that using the conventional algorithm. This is the effect of the active virtual impedance, which detects long-distance obstacles and gradually changes the trajectory of the mobile robot earlier. Using this smooth trajectory, the mobile robot can reduce slippage on its path, i.e., it can increase the trajectory accurately during multiple obstacles avoidance.

5.3. Experiment 3: Avoidance of Dynamic Obstacles

The active virtual impedance algorithm was applied to dynamic obstacle avoidance for single and multiple obstacles.
Figure 14 shows the experimental environment of dynamic obstacle avoidance. The space was 6.0 m wide and 8.0 m long. The sound source was moving with a velocity of 300 mm/s, and μ 0 was set as 720 mm/s, which is the same as the maximum velocity of the mobile robot. Notice that the moving sound robot carried the sound source on the top of the robot.
Figure 15 shows the experimental results of the dynamic obstacle avoidance. As demonstrated in the sequence, the mobile robot successfully followed the sound source while avoiding the moving obstacle. As shown in Figure 15c, the mobile robot collided with the obstacle when the conventional virtual impedance algorithm was utilized to avoid a collision. However, a strong repulsive force was generated by the active virtual impedance to avoid the collision. Figure 15d illustrates the successful tracking of the sound source by the mobile robot while avoiding the two moving obstacles.
Figure 16 shows the experimental results of multiple dynamic obstacle avoidance. As demonstrated in the sequence, the mobile robot successfully followed the sound source while avoiding the two moving obstacles. As shown in Figure 16b, the mobile robot moved downward quickly by using the repulsive force against the obstacle to avoid the collisions effectively. When the conventional virtual impedance algorithm was applied to this experiment, collisions occurred, as shown in Figure 16c, because the impedance could not be adjusted properly for obstacle avoidance.
Figure 17 shows the experimental environment of multiple dynamic obstacle avoidance. The space was 6.0 m wide and 8.0 m long. The sound source was moving with a velocity of 300 mm/s, and μ 0 was set as 720 mm/s, which was the same as the maximum velocity of the mobile robot.

6. Conclusions

This paper proposed an active virtual impedance algorithm for obstacle avoidance and for following sound sources in real time using a mobile robot. The active virtual impedance algorithm changes the coefficients of the damper and spring dynamically depending on the possibility of collision with the obstacle, which makes the avoidance of the obstacle more efficient than when using the conventional virtual impedance algorithm. Before the mobile robot reaches obstacles, the motion trajectory of the mobile robot needs to be modified to prevent abrupt changes in the path, which may cause slippage of the mobile robot. The accuracy of the robot’s trajectory was demonstrated through real experiments. A microphone array was used to detect the location of the sound source, which is also a critical factor for successful sound source tracking. When there are omnidirectional dynamic obstacles in the working environment, three more ultrasonic sensors are necessary for the backside of the mobile robot to avoid collisions using an efficient algorithm, which will be the subject of a future study.

Author Contributions

Data curation, D.-H.K.; Formal analysis, M.-H.H. and G.-S.L.; Methodology, J.H.H.; Review and editing, J.H.H. and H.-R.C.

Funding

This research was funded by the support of the Korea Institute of Industrials Technology as “Variable Architecture Powertrain Platform and Self-Driving Factor Technology Development for Industrial EV Self-Driving Vehicle” (KITECH EO-19-0038).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Yoon, J.H.; Choi, G.H.; Yoo, J.M. A Study about Direction Estimate Device of the Sound Source using Input Time Difference by Microphones Arrangement. J. Korean Soc. Precis. Eng. 2014, 21, 91–98. [Google Scholar]
  2. Kodera, K.; Itai, A.; Yasukawa, H. Sound Localization of Approaching Vehicles Using Uniform Microphone Array. In Proceedings of the 2007 IEEE Intelligent Transportation Systems Conference, Bellevue, WA, USA, 30 September–3 October 2007. [Google Scholar]
  3. Kim, Y.E.; Hong, S.H.; Chung, J.G. Efficient Implementation of IFFT and FFT for PHAT Weighting Speech Source Localization System. Inst. Electron. Eng. Korean 2009, 46, 71–78. [Google Scholar]
  4. Kwon, B.; Park, Y.; Park, Y. Spatially Mapped GCC Function Analysis for Multiple Source and Source Localization Method. J. Inst. Control Rob. Syst. 2009, 16, 415–419. [Google Scholar] [CrossRef]
  5. Tsuchiya, H.; Niaasto, T.; Hasegawa, H.; Matsumoto, S.; Koike, A.; Takagi, K.; Kasuga, M. Sound Distance Localization Using Head-Related Transfer Functions (HRTFs) Approximated by IIR Filters. In Proceedings of the International Technical Conference on Circuits Systems, Computers and Communications, Seoul, Korean, 7–9 July 2003. [Google Scholar]
  6. Hwang, S.; Shin, K.; Park, Y. Artificial ear for robots. In Proceedings of the IEEE Conference on Sensors, Daegu, Korea, 22–25 October 2006. [Google Scholar]
  7. Jang, I.H.; Park, K.J.; Yang, H.C.; Lee, J.C.; Sim, K. Object Tracking Algorithm for Intelligent Robot using Sound Source Tracking Sensor Network. Inst. Control Rob. Syst. 2007, 13, 983–989. [Google Scholar] [Green Version]
  8. Uchiyama, N.; Sano, S.; Yamamoto, A. Sound source tracking considering obstacle avoidance for a mobile robot. Robotica 2010, 28, 1057–1067. [Google Scholar] [CrossRef]
  9. Borenstein, J.; Koren, Y. The vector field histogram fast obstacle avoidance for mobile robots. IEEE J. Rob. Autom. 1991, 7, 278–288. [Google Scholar] [CrossRef]
  10. Simmons, R. The Curvature-Velocity Method for Local Obstacle Avoidance. In Proceedings of the IEEE International Conference on Robotics and Automation, Minneapolis, MN, USA, 22–28 April 1996. [Google Scholar]
  11. Ögren, P.; Leonard, N.E. A Convergent Dynamic Window Approach to Obstacle Avoidance. IEEE Trans. Rob. 2005, 21, 188–198. [Google Scholar] [CrossRef]
  12. Park, J.J.; Kim, H.S.; Song, J.B. Collision-Free Path Planning for a Redundant Manipulator Based on PRM and Potential Field Methods. Inst. Control Rob. Syst. 2011, 17, 362–367. [Google Scholar] [CrossRef]
  13. Xu, Q.; Yang, P.; Wang, J.; Sn, H. Sound source localization system based on mobile robot. In Proceedings of the 2012 24th Chinese Control and Decision Conference (CCDC), Taiyuan, China, 23–25 May 2012. [Google Scholar]
  14. Woo, K.S.; Park, J.H.; Huh, U.Y. Dynamic Path Planning for Mobile Robots Using Fuzzy Potential Field Method. Korean Inst. Elec. Eng. 2012, 61, 291–297. [Google Scholar] [Green Version]
  15. Jin, T. Obstacle avoidance of Mobile Robot with Virtual Impedance. J. Korean Inst. Intell. Syst. 2009, 19, 451–456. [Google Scholar] [CrossRef] [Green Version]
  16. Liu, Y.; Chen, D.; Zhang, S. Obstacle avoidance method based on the movement trend of dynamic obstacles. In Proceedings of the 2018 3rd International Conference on Control and Robotics Engineering (ICCRE), Nagoya, Japan, 20–23 April 2018. [Google Scholar]
  17. Peng, Y.; Qu, D.; Zhong, Y.; Xie, S.; Luo, J.; Gu, J. The obstacle detection and obstacle avoidance algorithm based on 2-D lidar. In Proceedings of the 2015 IEEE International Conference on Information and Automation, Lijiang, China, 8–10 August 2015. [Google Scholar]
  18. Zhong, X.; Peng, X.; Zhou, J. Dynamic collision avoidance of mobile robot based on velocity obstacles. In Proceedings of the Proceedings 2011 International Conference on Transportation, Mechanical, and Electrical Engineering (TMEE), ChangChun, China, 16–18 December 2011. [Google Scholar]
  19. Upadhyay, S.; Ratnoo, A. Continuous-Curvature Path Planning with Obstacle Avoidance Using Four Parameter Logistic Curves. IEEE Rob. Autom. Lett. 2016, 1, 609–616. [Google Scholar] [CrossRef]
  20. Yang, H.; Fan, X.; Shi, P.; Hua, C. Nonlinear Control for Tracking and Obstacle Avoidance of a Wheeled Mobile Robot With Nonholonomic Constraint. IEEE Trans. Control Syst. Technol. 2016, 24, 741–746. [Google Scholar] [CrossRef]
Figure 1. Geometric structure of the microphones and sound source in two-dimensional (2D) space.
Figure 1. Geometric structure of the microphones and sound source in two-dimensional (2D) space.
Electronics 08 00522 g001
Figure 2. Principle of the angle measurement to the sound source in 2D space.
Figure 2. Principle of the angle measurement to the sound source in 2D space.
Electronics 08 00522 g002
Figure 3. Diagram of the collision vectors.
Figure 3. Diagram of the collision vectors.
Electronics 08 00522 g003
Figure 4. Rotation of the collision vector.
Figure 4. Rotation of the collision vector.
Electronics 08 00522 g004
Figure 5. Impedance model.
Figure 5. Impedance model.
Electronics 08 00522 g005
Figure 6. Repulsive forces as a function of the distance and velocity against an obstacle.
Figure 6. Repulsive forces as a function of the distance and velocity against an obstacle.
Electronics 08 00522 g006
Figure 7. Flowchart of the sound source tracking mobile robot system.
Figure 7. Flowchart of the sound source tracking mobile robot system.
Electronics 08 00522 g007
Figure 8. Moving object (master robot).
Figure 8. Moving object (master robot).
Electronics 08 00522 g008
Figure 9. Components of the experimental mobile robot (slave robot).
Figure 9. Components of the experimental mobile robot (slave robot).
Electronics 08 00522 g009
Figure 10. Configuration of the ultrasonic sensors on the mobile robot.
Figure 10. Configuration of the ultrasonic sensors on the mobile robot.
Electronics 08 00522 g010
Figure 11. Experiments for checking the performance of sound tracking.
Figure 11. Experiments for checking the performance of sound tracking.
Electronics 08 00522 g011
Figure 12. Environment for multiple fixed obstacle avoidance. The sizes of the obstacles were 100 (W) × 30 (H) × 50 (D) mm for Obstacle 1 and 80 (W) × 30 (H) × 50 (D) mm for Obstacle 2.
Figure 12. Environment for multiple fixed obstacle avoidance. The sizes of the obstacles were 100 (W) × 30 (H) × 50 (D) mm for Obstacle 1 and 80 (W) × 30 (H) × 50 (D) mm for Obstacle 2.
Electronics 08 00522 g012
Figure 13. Experimental results of collision-free navigation with multiple fixed obstacles.
Figure 13. Experimental results of collision-free navigation with multiple fixed obstacles.
Electronics 08 00522 g013
Figure 14. Experimental environment for moving obstacle avoidance. The size of the moving obstacle was 80 (W) × 30 (H) × 50 (D) mm.
Figure 14. Experimental environment for moving obstacle avoidance. The size of the moving obstacle was 80 (W) × 30 (H) × 50 (D) mm.
Electronics 08 00522 g014
Figure 15. (a,b,d) The successful tracking of the sound source by the mobile robot using the active virtual impedance; (c) the collision situation when the conventional virtual impedance algorithm was used for tracking.
Figure 15. (a,b,d) The successful tracking of the sound source by the mobile robot using the active virtual impedance; (c) the collision situation when the conventional virtual impedance algorithm was used for tracking.
Electronics 08 00522 g015
Figure 16. (a,b,d) The successful tracking of the sound source by the mobile robot using the active virtual impedance; (c) the collision situation when the conventional virtual impedance algorithm was used for tracking.
Figure 16. (a,b,d) The successful tracking of the sound source by the mobile robot using the active virtual impedance; (c) the collision situation when the conventional virtual impedance algorithm was used for tracking.
Electronics 08 00522 g016aElectronics 08 00522 g016b
Figure 17. Experimental environment for multiple moving obstacle avoidance. The sizes of the moving obstacles were 80 (W) × 30 (H) × 50 (D) mm for Obstacle 1 and 50 (W) × 25 (H) × 20 (D) mm for Obstacle 2.
Figure 17. Experimental environment for multiple moving obstacle avoidance. The sizes of the moving obstacles were 80 (W) × 30 (H) × 50 (D) mm for Obstacle 1 and 50 (W) × 25 (H) × 20 (D) mm for Obstacle 2.
Electronics 08 00522 g017
Table 1. Distance and angle measurements.
Table 1. Distance and angle measurements.
Angle30°60°
Distance
1 m0.4°, 1.04 m29.9°, 0.99 m60.0°, 0.99 m
2 m0.4°, 1.98 m30.0°, 1.90 m61.3°, 1.98 m
3 m0.4°, 3.07 m30.1°, 2.86 m61.6°, 2.89 m
4 m0.4°, 3.93 m30.4°, 3.72 m59.7°, 3.82 m
Table 2. Standard deviations of the distance and angle measurements.
Table 2. Standard deviations of the distance and angle measurements.
Angle30°60°
Distance
1 m0.08°, 0.02 m0.20°, 0.03 m0.2°, 0.07 m
2 m0.05°, 0.05 m0.34°, 0.08 m0.54°, 0.13 m
3 m0.15°, 0.09 m0.35°, 0.12 m0.66°, 0.37 m
4 m1.12°, 0.48 m2.27°, 0.20 m2.40°, 0.43 m
Table 3. Constants for virtual impedance algorithm.
Table 3. Constants for virtual impedance algorithm.
VariableDefinition
K r Spring constant to target position
D r Damping constant to target position
K s , i Spring constant for i t h static obstacle
D s , i Damping constant for i t h static obstacle
K d , i Spring constant for i t h dynamic obstacle
D d , i Damping constant for i t h dynamic obstacle
Table 4. The comparison of virtual impedance algorithms.
Table 4. The comparison of virtual impedance algorithms.
Virtual ImpedanceActive Virtual Impedance
Spring constant K 0 K r e f
Damper constant D 0 D r e f
Distance factor ρ 0 C exp ( C α ) C
Velocity factor Δ C exp ( Δ C β ) ( μ 0 Δ C )
Constraint condition C < ρ 0 Δ C < μ 0
Table 5. Hardware specifications of the moving object.
Table 5. Hardware specifications of the moving object.
ListSpecification
Size (mm)352 (W) × 326 (L) × 320 (H)
Weight (kg)5.3
Distance between wheels (mm)290
Radius of wheel (mm)60
Table 6. Hardware specifications of the mobile robot.
Table 6. Hardware specifications of the mobile robot.
ListSpecification
Size (mm)350 (W) × 820 (L) × 260 (H)
Weight (Kg)3.94
Distance between wheels (mm)410
Radius of wheel (mm)60

Share and Cite

MDPI and ACS Style

Han, J.-H.; Kim, D.-H.; Hwang, M.-H.; Lee, G.-S.; Cha, H.-R. Active Virtual Impedance Control for Sound-Following Robots to Avoid Obstacles. Electronics 2019, 8, 522. https://doi.org/10.3390/electronics8050522

AMA Style

Han J-H, Kim D-H, Hwang M-H, Lee G-S, Cha H-R. Active Virtual Impedance Control for Sound-Following Robots to Avoid Obstacles. Electronics. 2019; 8(5):522. https://doi.org/10.3390/electronics8050522

Chicago/Turabian Style

Han, Jong-Ho, Dong-Hyun Kim, Myeong-Hwan Hwang, Gye-Seong Lee, and Hyun-Rok Cha. 2019. "Active Virtual Impedance Control for Sound-Following Robots to Avoid Obstacles" Electronics 8, no. 5: 522. https://doi.org/10.3390/electronics8050522

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