1 Introduction

The Carpe Noctem Cassel team of the University of Kassel has been participating in the Middle Size League (MSL) of the RoboCup since 2006. Our latest hardware and construction update is the CN2010 robot, which we still use today. In recent years it has become essential to focus on hardware elaboration in order to keep up with the competition. Not only do the competing teams advance, but the rules also get updated to move the challenge closer to human soccer.

In robot soccer, as in human soccer, it is essential to control the ball and dribble it alongside the player according to the applicable rules. The robot dribbles around opponents, runs free for a pass to a fellow player or turns on the spot to find a free fellow player. The movements of the robot with the ball are limited by the rules to shift the gameplay to fast passes instead of long distance forward driving. Due to the fast and highly dynamic movements, the reliable guiding of the ball on the robot becomes particularly important. This movement is carried out by the ball handle mechanism as an actuator of the robot.

One of the latest updates in the MSL rules [12] was “natural dribbling”, meaning, that the ball has to rotate in the direction of its movement during dribbling. That imposes high demands on the ball handling mechanism. A passive mechanism, like most teams used in the first years, would either lose the ball quickly or prevent the ball from rolling naturally. Another significant advantage of the active versus the passive ball handle mechanism is the duel strength. Hence, an active mechanism, which actuates the ball according to the movement of the robot, is inevitable. This paper portraits the kinematic and dynamic challenges of actuating the ball, especially the role of the robot design and the active wheel positioning.

There is a set of rules that define the hardware and construction criteria for soccer robots in the MSL, but leave the design itself to each team for the promotion of innovation. In the MSL, the de facto standard uses two actively driven wheels attached to movable arms for the ball handle mechanism [1,2,3, 7]. As this approach turned out the most promising so far, we stay with this concept for the redesign of the Carpe Noctem robots. We collect the aspects that need to be taken into account when designing an effective ball handling. We analyze requirements like the rules of the MSL and the conditions for a stable run, as well as the strategic consideration of robot movements in certain game situations. We figured out that the first most crucial decision for reasonable ball control is the choice of contact points between the wheels and the ball. As our examination of the topic might be useful to other teams redesigning their robots in the future, we want to deliver a guide for this decision process. Therefore, this paper shows how to quantify the optimal position of the wheels on the ball to have a safe grip and move as if the ball was rolling freely at the same time.

The remainder of this paper is organized as follows: Sect. 2 presents related work. We gather the requirements that are imposed on the system by rules and desirable behavior in Sect. 3. In Sect. 4, we analyze how two active wheels can induce the required ball movements. We present their kinematic solution depending on the wheel positioning. We analyze the aspects that need to be taken into account regarding the stability of the ball guidance in Sect. 5 and discuss the optimal position in Sect. 6. There we also discuss changes that would occur with other hardware choices. Eventually, we conclude with Sect. 7.

2 Related Work

Junkai et al. [2] present the history of various approaches to ball dribbling in the MSL from the beginnings with passive ball handling to the present use of active ball handling. As a best practice, the concept of ball handling with two actively driven wheels on movable lever arms [1] has established and is now the de facto standard in the MSL. Each team has adapted this basic concept for its robots.

The stabilization of the ball to solve the handling problem is currently solved via a closed-loop-control [1, 2, 4, 6, 7] by most teams. They treat the motion model as Lagrange equations after a linearization in the control algorithm. From the measured position of the lever arms, the position of the ball in the ball handle is estimated and, in case of deviation from the ideal position, compensated by adjusting the wheel speeds. In order to obtain stable dribbling, at least one iteration of the closed-loop-control must have been performed, because a stable condition can only be achieved by constantly adjusting the wheel speeds based on measured values.

Another approach is the application of the nonlinear equations of motion of rigid bodies from classical mechanics. The kinematics of ball motion can be described by the velocity state, as shown by Chikushi et al. [3] and Kimura et al. [5]. The spectrum of modeling motion problems reaches from mathematical models and continuous systems over multi-body-systems to finite element systems. There is a vast number of formalisms to describe multi-body-systems, but all of them are based either on Lagrange equations or Newton-Euler equations. Saha et al. give an overview of the evolution of these formalisms in the last decades [14]. The way via Newton-Euler equations is more error-prone than Euler-Lagrange equations because they consider nonlinear effects between bodies. For solving the motion problem with Newton-Euler equations, it is crucial to know the joints between and the types of bodies in the multibody system. We use the work of Kimura et al. [5] and extend their model by properties of the actuation with two active wheels. Chikushi et al. [9] also pursued this extension with an experimental approach. We use a more theoretic approach instead.

The rolling behavior of the ball imposed by two active wheels is similar to the driving behavior of cars, which has been researched in the automotive sector for decades [8]. The results from this extensively researched field are suitable for optimizing the driving behavior of a car through the design of the wheel suspension. We apply them to choose the optimal position of the contact point between wheel and ball concerning a stable dribbling behavior. Proper positioning can create a solid basis for subsequent control. We will elaborate on the similarities to car driving behavior in detail in the following sections.

3 Requirement Analysis

3.1 Artificial Requirements by Rules of the MSL [12]

  1. A

    The diameter of the ball is 22.28 cm according to the current FIFA rules [11].

  2. B

    There is maximum coverage of the ball by the robot at 1/3 of the top projection convex hull.

  3. C

    The ball has to rotate continuously in the direction of its movement. We call this requirement further on natural rolling.

  4. D

    Movement with the ball is only allowed within a radius of 3 m around the place where the ball was picked up.

  5. E

    Reverse travel with the ball is limited to a maximum of 2 m and can only be repeated after the ball has been picked up again.

3.2 Gameplay Situation (User Story)

If opponents occupy the robot that holds the ball, it is essential for this robot to react quickly to gaps in the opponent’s formation. The reaction can be dribbling around the opponent or aligning to play a pass to a fellow player. Both options require an agile behavior of the robot, which guides the ball safely. An agile behavior means to execute many different movement possibilities in a quick fashion. Due to the rigid position of the wheels on the ball, some movements are possible with safer ball guidance than others.

Regarding these situations, we set the focus on fast cornering, hence combining movement in x- and y-direction as well as rotating with fast direction changes. However, the ball should still be guided reliably in a longitudinal direction. The forward motion is more important than the backward motion because the backward motion is only allowed in a smaller range than the forward motion though it is necessary after gaining the ball in a duel. Turning on the spot and the transversal movement to the side is also useful, but less critical since the robot usually acts from a forward movement when it is not stopped. Braking and acceleration must also be observed so that the ball is not lost due to the nonholonomic constraint.

4 Movement Analysis

The main focus of our analysis lies in the question, how two active wheels can generate a natural rolling movement and how the positioning affects the movement possibilities of the robot-ball combination. The movement of the robot guiding the ball determines the desired movements of the ball. This section contains a holistic analysis of the guided ball movement. We follow the explanations of Lynch and Park on nonholonomic constraints [13]. The aspects of friction, the characteristic of the rigid steering axle, and the resulting movements are covered. We extend the motion analysis from Kimura et al. [5].

The basis of this study is the natural rolling movement of a ball on the ground. This movement is described by Eq. (1) and means a simultaneous translation \(V_{trans}\) and rotation \(\omega _{ball}\) of the ball, where the point of the ball touching the ground has an instantaneous speed of zero (Eq. 2) and thereby forms the instantaneous pole at this moment. The rotational axis of the ball runs through the instantaneous pole.

$$\begin{aligned} {\varvec{V}}_{\varvec{rolling}}= \begin{bmatrix} V_{trans} \\ \omega _{ball} \end{bmatrix} \qquad with \quad V_{trans} = \omega _{ball} r_{ball} \end{aligned}$$
(1)
$$\begin{aligned} {\varvec{V}}_{{\varvec{I}}_{\varvec{U}}} =~0 \end{aligned}$$
(2)
Fig. 1.
figure 1

(a) Forces on the ball for movement in the positive x-direction. The upper pushing force is transmitted by the active wheels, the lower one by the passive balls. The rolling condition holds when the instantaneous pole of the ball lies at the contact point between the ball and the ground (blue point). The momentary velocity at this point is zero and defines the position of the ball’s rotational axis. (b) Four angles describe the positions of the wheels on the ball. The angles \(\phi \) and \(\psi \) describe the point of contact between the ball and the wheel. The other angles \(\delta \) and \(\theta \) describe the pose of the wheel at this point. (Color figure online)

To achieve this configuration, the rolling friction between the ball and floor \(F_{friction}\) (Fig. 1a) has to be higher than the summed up force in x-direction \(F_x\) introduced onto the instantaneous pole by the ball handling mechanism. During braking and acceleration, the position of the instantaneous pole on the Z-axis of the ball is shifted in proportion to the velocity gradient. The resulting behavior: When braking too hard, the ball is pressed so firmly against the ground that it jams. In the opposite case, the acceleration force is so strong that the instantaneous pole of the ball is at the center of the ball, causing the ball to rotate on the spot.

4.1 How to Generate the Desired Ball Movement

The position of the contact point and the corresponding pose of the wheel is described by the four angles \(\phi \), \(\psi \), \(\theta \), and \(\delta \) in Fig. 1b.

An active wheel can transmit a velocity onto the surface of the ball. The virtual path that it would take on the surface of the ball is called centrode and forms a circle. It is determined by the intersection of the ball surface and a plane, that is formed by the wheel’s velocity vector and the ball center (see \(V_{wheel,left}\) in Fig. 2a). Two active wheels can actuate a ball supported without friction in various rotations. The virtual velocity results from Jourdain’s principle of virtual power [8]. To determine the resulting movement of the ball, the virtual velocity vector of each wheel can be mentally shifted along the centrode of the wheel. At the point of contact of the two centrodes, the two vectors of the virtual velocities add up. The resulting vector forms the real centrode of the two active wheels. As the wheels have one DOF each, they cannot fully access all three rotational DOFs of the ball. That means the actuation cannot generate a rotation around the axis that is formed by the intersection of the centrodes and the center of the ball. When the ball is rolling on a floor with friction, the instantaneous pole at the contact point between the ball and floor forms a third centrode on the ball. Its alignment depends on the movement direction of the ball. This third centrode can add another DOF to the ball actuation, making its rotation fully controllable. However, for an arbitrary wheel positioning, the intersection of the three centrodes only coincides in one single movement direction. This makes the calculation of the resulting ball movement difficult and complex because the transmitted velocities can only be compared in pairs. The resulting velocity of one combination forms a new centrode that intersects with the third centrode. The final resulting velocity can be determined at this new intersection, but the location of this intersection changes for every variation in velocities. When all three centrodes intersect at the same point, the calculation is less complicated, but the third rotational DOF is lost again. In reality, the transverse forces created through transverse slip between the wheel and ball change this theoretic movement. Hence some ball movements might be actuatable which are not in theory and the other way around.

Fig. 2.
figure 2

(a) The centrode (red circles) is formed by the intersection of the ball surface and the plane (brown) defined by the wheel velocity vector and the ball center. At the point of contact of the two centrodes (blue point), the two vectors of the virtual velocities add up. The resulting vector forms the real centrode (black circle) of the two active wheels. (b) The sideways translation of the robot leads to a momentary velocity \(V_{push}\) of the ball orthogonal to the contact area. To produce a sideways movement, the wheel actuation \(V_{wheel,left}\) and \(V_{wheel,right}\) have to sum up with the rotational part of the momentary velocity \(V_{push,rot}\) to \(2~V_{trans}\) in the y-direction. (Color figure online)

For the following thoughts on actuatable robot ball movements, we assume a symmetrical arrangement of the active wheels, so the intersection of the centrodes lies somewhere on the x-z-plane.

Translation in X. The simultaneous movement of the robot and ball in positive x-direction can be fully controlled. The translation part of the rolling motion \(V_{trans}\) from Eq. (1) is actuated through the push by the robot’s translation. The rotation part \(\omega _{ball}\) is generated by the two driving wheels of the ball handle mechanism. The linear combination of the wheel velocities has to be twice the translation velocity to follow the rolling condition, as shown in Fig. 1a. It is almost indifferent where the active wheels are located, as long as they are positioned symmetrically around the x-z-plane and do not share the same moving centrode. When the centrodes intersect at the z-axis, the following velocities for the wheels can be deduced from the kinematic relationship (with \(\phi \) and \(\psi \) as defined in Fig. 1b).

$$\begin{aligned} V_{wheel,l} = V_{wheel,r} = \frac{V_{trans}}{cos\phi } \end{aligned}$$
(3)

The opposite movement in negative x-direction can only be influenced by the rotation of the wheels. It follows the same rules of the ratio between translation and rotation, but the friction between the ball and the ground limits the maximum acceleration. The translational part of the rolling motion is generated solely by the friction \(F_{friction}\) in Fig. 1a that hinders the ball from sliding over the ground, because the pushing force \(F_{robot,x}\) of the robot can not become negative. If the wheels exceed the maximum permissible acceleration, the ball will start to slide and rotate on the ground. Forces in y-direction cancel out due to the symmetrical arrangement of the wheels.

Translation in Y. The movement of the robot-ball system is the same for translation in the positive and negative y-direction. In contrast to the movement in the x-direction, the wheels are not symmetrical to the plane that is orthogonal to the rotational axis. Hence, forces and velocities do not cancel out as easily when moving into y-direction. Imagine the case where both wheels do not turn. The sideways movement of the robot will push the ball with one wheel. As the force transmission always happens orthogonal to the contact area, the ball accelerates not only in y-direction but also partly in the positive x-direction. The x-fraction of the contact force will lead the ball to leave the ball handle mechanism. The actuation of the wheels can partially compensate this effect, by adding the actuation velocities as shown in Fig. 2(b). With the right amount, the actuation can add up to a rotation around the x-axis, which would be natural rolling in the y-direction.

$$\begin{aligned} V_{push}=&~ sin\phi V_{trans};\qquad V_{push,rot}= V_{push}\frac{2 }{1+cos\psi }\end{aligned}$$
(4)
$$\begin{aligned} V_{wheel,l}\;&= -\frac{V_{trans}}{sin\phi } \end{aligned}$$
(5)
$$\begin{aligned} V_{wheel,r}\;&= V_{trans}\left( \frac{1}{sin\phi }-\frac{2~sin\phi }{1+cos\psi }\right) \end{aligned}$$
(6)

Rotation. A pure rotation around the z-axis of the robot resembles the translation in the y-direction because the desired momentary velocity of the ball center is purely directed in the y-direction (we assume the ball handling mechanism is symmetrical in front of the robot). The difference arises from the varying momentary velocities of the two wheels. One wheel has a slightly positive x-velocity, while the other one has a negative one. This means the wheel actuation has to give the ball the same velocity as the backward moving wheel to prevent it from losing contact with it. This is equivalent to the desired acceleration towards the rotational center, which ensures a circular orbit.

$$\begin{aligned} V_{push}=&~ sin\phi ~d\omega ; \qquad V_{push,rot}= V_{push}\frac{2}{1+cos\psi }\end{aligned}$$
(7)
$$\begin{aligned} V_{wheel,l}\;&= -\frac{d\omega }{sin\phi }-sin\psi ~r\omega \left( \frac{sin\phi }{cos\phi }-\frac{cos\phi }{sin\phi }\right) \end{aligned}$$
(8)
$$\begin{aligned} V_{wheel,r}\;&= \frac{d\omega }{sin\phi }-\frac{sin\psi ~r\omega }{sin\phi cos\phi }+2d\omega \frac{sin\phi }{1+cos\psi } \end{aligned}$$
(9)

Combinations. The omnidirectional drive of the robot allows any combination of the three above mentioned behaviors. With the intersection of the centrodes located at the z-axis, every x-y-combination is a simple linear combination of the wheel velocities as seen in Fig. 2, following the ration between translation and rotation.

Combining translational and rotational movement of the robot leads to a curve and hence cornering. This is important in order to avoid obstacles while using the properties of movement in positive x-direction as often as possible. In most cases, the right actuation can be approximated by the linear combination of the solution for translation and rotation. There are some cases, like the combination of rotation in the positive z and translation in the negative y-direction in which a natural ball movement cannot be actuated. In this case, the ball should lay still while the robot rotates around it.

5 Effects of the Wheel Positioning on Stability

The arrangement of the wheels is of particular importance under the condition of the fixed steering axle because it cannot be changed during the game. We will, therefore, analyze the alignment of the wheels from a strategic and mechanical point of view in this section. We will transfer results from the automotive sector on driving stability with wheels to the problem of ball guidance. This section elaborates the effect positioning in a purely qualitative fashion. The quantitative aspects follow in the next section.

The geometric arrangement of the wheels in the multi-body system influences the motion behavior of the ball. Positioning is, therefore, of decisive importance for the ball’s stable motion behavior. The position of the contact point and the corresponding pose of the wheel is described by the four angles \(\phi \), \(\psi \), \(\theta \), and \(\delta \) in Fig. 1b. Thus four degrees of freedom are available for the positioning of the respective wheel. The four angles influence each other under the constraints of the rules and cannot be chosen independently. This situation will be discussed in detail in the next section. In this section, the conditions for a stable running behavior are mentioned and set in context to the four DOFs of the wheel position.

A rest position is a stable system state. The arrangement of the wheels on the ball can achieve a rest position of the ball movement in positive x-direction. Small deviations from the ideal x-direction will then be compensated by automatically returning the ball to the track in the positive x-direction. All other directions of movement need to be transferred into a stable condition in another way.

The models for driving stability from the automotive sector [10] take many parameters into account. We limit ourselves to the parameters that are most relevant for us and which directly influence the stability of the running behavior through the position and pose of the tire, namely caster, toe, and camber angle.

5.1 Caster

The caster is the distance from the momentary pole of a wheel to the intersection between the steering axis and the ground. The higher this distance, the more stable is the running behavior of the wheel, which also leads to an increased cornering angle. The ball handle mechanism does not have a real steering axis, but we can approximate it as the line between the middle of the active wheel contacts and the ball center (Fig. 3a). For the caster to produce a stable running behavior of the ball, the wheel contacts must lie behind the ball and above its equator. Then this line intersects with the ground in the direction of the ball movement and small disturbances do not threaten the stability of the running behavior. The highest caster can be achieved with \(\phi = 0\) and \(\psi = \frac{\pi }{2}\). However, the caster behavior can only be assumed to be valid, as long as the ball stays in the holonomic state with the ball handling mechanism.

Fig. 3.
figure 3

(a) Transfer of the caster idea from a steered wheel to the actuated ball. The distance \(d_{caster}\) between the intersection of the steering axis with the ground and the instantaneous pole (blue point) defines the stability of the forward movement. (b) The red line shows the 1/3 limit to the wheels given by the rules. The blue line shows the progression of the contact point between wheel and ball by positioning the wheels far as possible to the limit as possible when the running direction of the wheels shows to the z-axis. The blue area shows the possible contact positions with regards to the rules and a positive caster. (Color figure online)

5.2 Toe

The preset deviation of the running direction of a wheel from the moving direction in the x-direction is called toe. It influences the cornering behavior by creating an artificial slip angle. This increases grip by tensing the tread particles in the tire and creating a slip. The orientation of the tires inwards, i.e., towards each other, is called toe-in. This decreases the cornering radius because the outer wheel already points in curve direction and the wheel inside the curve brakes the ball and thus reduces the radius of the curvature. The opposite is the toe-out, in which the cornering radius is increased because the outer wheel tends to break while the inner wheel pushes in curve direction. The angle \(\theta \) influences the toe.

5.3 Camber Angle

The camber angle describes the degree of lateral tilting of the wheel, whereby the running surface is pressed more firmly against the ball on either the inside or the outside of the tire. This increases the slip effect and hence the amount of transversal force, that can be transmitted from the wheel to the ball in the defined direction. It can be used to allow smaller cornering angles and higher backward grip by tilting the wheel in positive x-direction or faster forward acceleration by tilting the wheel in the negative x-direction. It is presented by the angle \(\delta \) in our model.

5.4 Symmetrical Arrangement of the Wheels

The uniform arrangement of the wheels around the x-z-plane causes a stable behavior by uniform force and torque transmission via the contact surfaces onto the ball. This results in a defined movement without disturbing secondary movement. The angles \(\phi \) and \(\psi \) from Fig. 1b are primarily affected by this condition.

5.5 Arrangement in y-direction

An important measure of stability is the possible deviation from the stable position that does not lead to unstable behavior. For the ball handle mechanism, the switching point between stable and unstable behavior is when an active wheel changes the hemisphere of the ball, e.g., the ball moves so much to one side, that it is considered as besides the ball handling mechanism. The wider the two wheels spread in the y-direction, the bigger is the distance the ball has to travel to leave the handler to the side and the more stable is the forward driving behavior. This also affects \(\phi \) and \(\psi \).

5.6 Alignment

The alignment of the wheels can affect stability in two ways. The pushing behavior without wheel actuation is more stable with wheels that point to the outside because the wheels can act as guard rails, that lead the ball into the middle of the mechanism. When the wheels spin during the forward movement, the effect turns around and the wheels pointing to the outside lead to more unstable behavior. This is due to the fact that each wheels actuation points away from the other wheel. When there is a small deviation in the ball position, and it loses contact to one wheel, the other wheels actuation increases the deviation further, which is the definition of unstable. Wheels that point to the inside decrease this kind of deviation and hence lead to a stable forward driving.

5.7 Intersecting the Z Axis

Aligning the wheels in a way that their centrodes intersect at the z-axis enables a more straightforward calculation of the resulting ball movement, as shown in Sect. 4. This does not mechanically affect stability, but it leads to an easier calculation of control, which makes the design of a stable control loop much more manageable. The angles \(\phi \) and \(\theta \) of the respective wheel must coincide so that the effect occurs.

6 Discussion

We will discuss the weighting of the different design decisions for stability against each other to find an optimal positioning of the wheel contact and find quantitative values.

6.1 Finding the Optimal Contact Point

First, we construct the possible range for the angles \(\phi \) and \(\psi \) on the ball surface. The caster from Sect. 5.1 must be confident of having a positive effect on the stability. Therefore the wheels must be placed above the ball equator. The permissible range for the placement, as given by the MSL rules in Sect. 3.1, is inside the 1/3 of the ball surface facing the robot. Hence, every part of the wheel must be within the maximum 1/3 boundary line. We model the real expansions of the wheels as ideal cylinders with the real dimensions of the wheels. In our case, the wheels are 3 cm wide with a diameter of 8 cm. Together with the condition of intersecting the wheel centrodes at the z-axis, we get that the possible course of the positions results in the blue half circle in Fig. 3(b). The slightly tilted track of the possible positions results from the changing angle \(\theta \) and the resulting different expanse of the wheel in the x-direction.

Although we could choose any position in the blue area, only positions on the blue line are desirable, considering the requirements and conditions. The intuition would tell us, to grab a ball around the center instead of balancing it one finger for higher control and the stability conditions and actuation requirements support this intuition. The wider the distance in the y-direction is, the more stable is the guided forward movement. The closer the wheels are to the y-z-plane, the higher is the force that they can transmit into negative x-direction, which affects the duel strength and the possible backward acceleration. We therefore only consider positions on the blue line, which makes \(\phi \), \(\psi \), and \(\theta \) dependent.

The volume of the wheels gives the maximum z-position, so they do not touch each other. The highest located position follows as \(\phi =~20.57^\circ \) and \(\psi =~20.80^\circ \). The minimal z-position is given by the ball equator, which lies at \(\psi =90^\circ \) with \(\phi =63,96^\circ \). This gives us a dependent range for \(\phi \), \(\psi \), and \(\theta \), which we analyzed regarding their stable movement possibilities.

6.2 Possible Stable Movements

The possible movements with the fixed steering axles of the wheels are limited. When the running directions of the wheels point in another direction than the movement of the ball, this creates slippage on the contact surface between the wheel and the ball. If the slippage is in the low ideal range (deviation angle up to \(50^{\circ }\)), the grip increases. Otherwise (deviation angle higher than \(50^{\circ }\)), the slippage is too high and the wheel starts sliding. This sliding effect has non-linear behavior, which causes instability. Therefore, directions in which sliding occurs should be avoided.

We analyzed four different wheel positions in the before defined range on the amount of critical area in x-y-direction. The result is shown in Fig. 4.

For \(\phi =30^\circ \) this would completely exclude sideways travel and hence rotation. The strategic analysis of the dribbling movements from Sect. 3.1 gave us a prioritization of short, agile movements. Therefore, the ball handling mechanism should be able to cope with fast sideways direction changes.

The requirement for the natural rolling behavior is a sufficiently high friction force at the momentary pole between ball and ground. This friction force depends on the weight of the ball and the contact force introduced by the wheel. The contact force is always orthogonal to the ball surface, which defines the lowest position of the wheels. \(\phi =60^\circ \) has only a few critical directions and therefore many movement possibilities, but the proportion of contact force in the z-direction is too small to support the friction between ball and ground. We chose a minimal proportion of 50% force in the z-direction. This decision might differ for heavier or lighter balls and a floor with higher or lower friction.

Fig. 4.
figure 4

Critical areas (orange) with \(\phi = 30^\circ , \phi = 45^\circ , \phi = 60^\circ \) and \(\phi = 54^\circ \) from left to right. (Color figure online)

Table 1. Comparison of contact force in the negative z-direction and the amount of critical area in x-y-direction, depending on the position for different angles of \(\phi /\theta \)

We determined that the position with the angle \(\phi \)\(54^\circ \) is the optimal position for stable dribbling. At this position, the contact force has \({\sim }50\%\) in the z-direction (Table 1). The critical area is smaller than the non-critical area, i.e., more than \(50\%\) of the directions can be approached. In the X direction, a deviation of 15.55\(^\circ \) from the longitudinal drive is possible without restriction due to friction effects on the tire. The corresponding gap in the Y direction is larger (\(67.1^\circ \)) and allows the ball to roll sideways. The critical direction at 36\(^\circ \) between the orientation of the robot and that of the ball should not be approached.

The inclination of the wheels by the toe-in causes a slip angle when the robot moves straight ahead. In combination with a negative camber angle \(\delta \) the grip increases, allowing higher forward dribbling speeds. The heavy wear as a disadvantage of this arrangement can be ignored because the support possibilities at the tournament are given to change a wheel between games and the wheels are low cost. A combination with a positive camber angle would instead lead to a smaller cornering radius. We chose a camber angle of zero to make a compromise between both options.

The position of the wheels that we found as optimal for our requirements is hence is given by \({\varvec{P}}_{\varvec{wheel}}~=~\left( \phi ~ \psi ~ \theta ~ \delta \right) ^T~=~ \left( 54^\circ ~ 60.95^\circ ~ 54^\circ ~ 0^\circ \right) ^T\).

7 Conclusion

We presented an all-embracing analysis of the mechanical ball handling problem with two active wheels. We indicated the general open-loop control inputs for movement with the ball. The difficulties in calculating the complete systems lie in the displacement of the wheel contact points when the ball moves out of the handler. The centrodes would no longer intersect at one point, which leads to highly nonlinear behavior of the system. The analysis would, however, benefit from a complete simulation. We hope that this analysis is of use to other teams designing or redesigning a ball handle mechanism. We offer help to anyone interested in deriving the full kinematic equations. Our findings can be used for a ball handling mechanism that actively changes the contact point with the ball, by reweighting the requirements for different game situations, which would lead to different optimal contact positions.