1 Introduction

Assembly and disassembly of mechanical parts require operators to have professional assembly knowledge and rich experience; hence, training for assembly engineers is essential. Comparing with traditional physical training methods, virtual assembly training emerges as a more and more popular training approach due to its unique advantages. Firstly, parts only need to be modeled in the related CAD software. This saves the time and cost of manufacturing their physical counterparts [1]. In addition, virtual assembly training also avoids possible dangers to operators and equipment damage caused by mis-operations [2]. Among different interactive modalities in virtual assembly, haptics technology offers a revolutionary solution for realistic interaction in virtual environment, with which users can feel and manipulate virtual objects by using special input/output devices to get tactile and force feedback [3]. In the field of virtual assembly, researchers have proved that haptic feedback can improve the assembly efficiency and enhance the immersion, which are of great application significance [4,5,6]. In actual mechanical assembly, precise force perception affects the accuracy to position parts with each other and eventually has impact on product quality. This is especially crucial for mechanical assemblies defined with different tolerance levels. For this reason, precise haptic rendering is important to ensure the performance of virtual assembly.

Robotic assembly is widely used for high-efficiency and high-quality industrial production [7]. A robotic assembly operation can be designed and adjusted according to computer simulation [8], machine vision [9], feedback force [10], and artificial intelligence [11]. Among them, the feedback force is the real assembly resistance sensed by sensors. However, for a virtual assembly process, the assembly resistance needs to be simulated and fed back to the user. Therefore, how to achieve realistic and stable virtual assembly force rendering is key to virtual assembly training applications [12]. Over the past decades, researchers have proposed various approaches that can be classified into two categories, i.e., constraint-based methods and physics-based methods [13, 14]. For constraint-based methods, Liu et al. [15] decomposed the assembly process into two basic types of manipulations, i.e., axis-alignment assembly and face-mating assembly. For axis-alignment assembly, a constraint force and a constraint torque are set to constrain the part to move along the axis, while for the latter, the part to be assembled is constrained to move on the mating face due to the face-mating requirement. Tching et al. [16] proposed the idea of virtual constraint guidance for insertion tasks. To apply this guidance, mechanical constraints are set between two parts (hinge, cylinder joint, etc.). Moreover, virtual fixtures like virtual walls are modelled to limit the movement of the mechanical parts.

It is known that force rendering devices require a refresh rate of more than 1kHz to ensure the stability of force output. However, it is hard to keep up with this frequency with the geometrical calculations of collision detections during virtual assembly, especially for parts with complex shapes. So, constraint-based methods normally restrict the posture and movement of the parts during a virtual assembly process, which ensures stable force output by cutting down the cost of collision detection, but the fidelity of the assembly force is largely compromised.

As for physics-based methods, commercial physics engines are integrated to simulate the parts’ physics properties, such as accelerated velocity, friction, and driving force. Therefore, their force rendering perceptions are more realistic. Xia et al. [17] integrated the physics engine for collision detection and parts’ penetration depth calculation. And then the collision force is computed using the penetration depth, based on which geometry constraints are applied. For example, when two parts were close enough, a geometrical constraint was captured. Then a pseudo-attractive force was generated to guide the user to assemble the part along the correct direction and the repulsive force could also be generated when the part deviated from the mating axis. Jiang et al. [18] did a peg-in-hole virtual assembly test by integrating physics engine and force feedback. Due to complexity of the collision detection, when inserting the cylinder into the hole virtually, the cylinder may end up jumping out of the hole by physics engine once its moving direction deviated from its assembling axis and penetrated into the wall of the hole. To solve this problem, this work allowed a pair of assembly parts to penetrate each other but set constraints to guide the parts to move along the predetermined trajectory. The experiment verified that this method not only simplified the assembly operation and shorten the assembly time, but also increased the visual realism.

However, studies so far have not yet considered the influence of actual geometrical deviations of the workpiece surfaces on the assembly force. Hence, the force rendering models cannot provide delicate haptic perception changes caused by the geometrical variations, which greatly reduces the fidelity of virtual assembly training. In fact, for mechanical assemblies, geometrical deviations are inevitably observable on manufactured workpieces and have huge influences on the quality and function of mechanical products [19]. Based on different functional requirements, tolerances are designed on the part’s surface. Such tolerances are guaranteed by different manufacturing processes, and the resulted geometrical deviations of mating surfaces certainly affect the assembly force, which is more critical for important and precise mechanical assemblies. However, in the fields of force rendering for virtual assembly, mechanical part models used in existing studies are either ideal solid feature models or triangular mesh models, which cannot represent the superficial tolerance information of the parts. Furthermore, existing methods to simulate deformations and forces, such as finite element method (FEM), require more time and calculation efforts, which cannot meet the requirements of real-time force rendering.

In order to represent different geometrical variations, geometrical product specification (GPS) standard, ISO 17450-1, defines the skin model, a model of the physical interface of the workpiece with its environment [20]. Since the skin model is an infinite model, it can neither be identified nor simulated [21]. Hence, the discrete shape approach proposed by Zhang et al. [22, 23] paved the way for skin model representation and simulation. Their approach can model form, orientation, and position deviations by employing second-order shapes and different methods to obtain randomly deviated geometry. Anwer et al. [24] investigates the concept of skin model shapes (SMSs), which provides a digital representation of the skin model concept and the unified discrete geometry representation for tolerance representation and analysis. Their SMS was used to simulate the mobility and contact of the mechanical parts. Based on the same concept, Schleich et al. [25] presented a novel approach for contact and mobility simulation by addressing three issues, i.e., the geometrical modeling of the contact, the contact quality evaluation, and the motion analysis. Furthermore, approaches for contact simulation [26] and assembly simulation [27] have been developed and can be used for tolerance analysis of mechanism employing SMS. Therefore, it is possible to employ SMS for virtual assembly resistance calculation so that the contact of parts can be analyzed more accurately.

This paper proposes a GPS-based force rendering model for virtual assembly of mechanical parts. The rest of the paper is organized as follows. Section 2 introduces the SMS constructed for mechanical parts, which consider the GPS-defined geometrical properties such as dimension, form, and surface characteristics. Then the force rendering model is proposed in Section 3, while Section 4 presents the case studies to evaluate the proposed model. And the last section, Section 5, concludes the work.

2 A GPS-based skin model shapes for virtual assembly

2.1 Classification of mating surfaces

Assembly of mechanical parts involves different types of connections with/without fasteners. No matter which connection is adopted, there will be physical contact between two mating surfaces; therefore, how to represent such surfaces is key to model the assembly force.

By analyzing typical mechanical connections and considering different geometrical features of mating surfaces of the parts, mating surfaces of general mechanical assemblies can be divided into two categories, namely common surface mating and specific surface mating, as shown in Table 1.

Table 1 The description of assembly type

Category 1: Common surface mating. Such surfaces can be a pair of cylindrical, planar, conical, or spherical surfaces. They share common types of GPS geometrical characteristics such as dimensional characteristic, axis straightness, and generatrix straightness.

Category 2: Specific surface mating. In this category, the mating surfaces are relatively complex. One typical example is bolted assembly, and the mating surfaces are threaded with specific shapes, whose GPS geometrical characteristic is specially designed with pitch error, tread angle error, etc.

This paper focuses on the first category of assemblies with common mating surfaces since it covers more types of mechanical connections, while for the second category, similar approach can be formulated but may need more consideration on calculation cost.

2.2 The GPS-based skin model shapes for common mating surfaces

SMS describes the profile variations of the parts. Hence, the clearance or interference value of two contacting surfaces can be calculated. In this section, a SMS constructing method according to the GPS standard is proposed for force rendering of virtual assembly. The corresponding flow chart is shown in Fig. 1. More specifically, a typical cylindrical shaft-bushing assembly is adopted here as an example to illustrate the constructing steps, which are explained in detail below.

Fig. 1
figure 1

The flow chart of the SMS constructing method

Step 1: discretization of the mating surfaces

With reference to a shaft-bushing assembly, for either the shaft or bushing, the cylindrical mating surface of the part is discretized first to model the geometrical deviation of skin profile. As shown in Fig. 2, in order to reduce the calculation efforts, the cylindrical surface is partitioned into quadrilateral meshes of equal size. And the center of each mesh is set as the discrete point of the SMS, and the variations in the same mesh are set to be constant.

Fig. 2
figure 2

The illustration of discretization of mating surface

More specifically, on the axial direction, the surface is equally partitioned into m sections, while along the circumferential direction, the surface is equally partitioned into n sections. The values of m and n are impacted by the area of the part surfaces indicated by length l and diameter d. Obviously, the bigger the l and d are, the greater the values of m and n would be respectively. However, since the skin profile variation on each discrete point is used to calculate the assembly resistance, and in order to meet the 1-kHz refresh frequency of force rendering, the calculation efforts must be limited. Therefore, the limit of m×n can be determined accordingly by the operating power of the hardware.

Step 2: analyzing GPS-based variations of the profile for the mating surface

There are nine geometrical properties identified in the ISO GPS system, such as size, location, orientation, form, and surface texture [28]. Among them, the properties that affect the assembly force are mainly dimension, form, and surface texture related. Correspondingly, in this work, the skin profile variations of these three properties are represented as VDimension, VForm and VSurface respectively. Since the geometrical variations of the parts are mainly impacted by its machining process, machine tool precision, and other uncertain factors randomly, hence the variations caused by different characteristics are modeled with the random functions.

Generation of the dimensional variations V Dimension

For dimensional variation, it is represented by the design tolerance, which is the allowable varying range of the part’s basic dimension. For example, for a shaft-bushing assembly, the basic dimension is the diameters of the shaft or the mating hole.

However, the actual variations of the dimension at different location are random. So, assuming the upper and lower limit deviation are tmax and tmin, the skin profile variation caused by the dimension characteristic can be generated as:

$$ {V}_{\mathrm{Dimension}}=\operatorname{rand}\left({t}_{\mathrm{min}},{t}_{\mathrm{max}}\right) $$
(1)

The constraint relation of the surface variations is:

$$ \forall i\le m,j\le n,{t}_{\mathrm{min}}<V\left({P}_{i,j}\right)<{t}_{\mathrm{max}} $$
(2)

where V(Pi, j) is the total variation at discrete point Pi, j.

Generation of the form variations V Form

Form properties include straightness, flatness, roundness, cylindricity, line profile, and surface profile. According to GPS standard, the wavelength λform of the form variation profile is more than 10 mm. Therefore, λform is generated randomly between (10, l) (l is the length of the part). As shown in Fig. 3, the discrete points at each peak and trough of the wave are set as sampling points. And each sampling point corresponds to an axial position ik. So, the variations at the sampling points are generated according to the method described below. Finally, the variations of the discrete points between the two adjacent sampling points are calculated by interpolation.

Fig. 3
figure 3

The illustration of sampling points

For a shaft-bushing assembly, the form property includes characteristics such as axis straightness, generatrix straightness, cylindricity, and roundness. Here, the axis straightness is used as an example to illustrate how the variations are generated.

The axis straightness is defined to describe the variations of the actual axis relative to the ideal one. As shown in Fig. 4a, each sampling point corresponds to a circle section, whose position is offset with the variations of the axis, based on which, assuming the allowable variation of the axis is ts, the axis variation at the axial position ts can be represented by (α, e), as shown in Fig. 4b, where α represents the direction angle of the axis variation in the cross-section, and e represents the magnitude of the axis variation. Similarly, the axial variation at the axial position ik is generated randomly as:

$$ a\left({i}_k\right)=\operatorname{rand}\left(0,2\pi \right),e\left({i}_k\right)=\operatorname{rand}\left(0,{t}_s/2\right) $$
(3)
Fig. 4
figure 4

The illustration of axis straightness. a Representation of the axis variations in longitudinal section. b Representation of axis variations in cross-section view. c Representation of skin profile variations at Pi, j

As shown in Fig. 4c, the profile variation generated by the axis straightness of the part at sampling point Pi, j is:

$$ {V}_s\left({P}_{i,j}\right)=e(i)\cos \left(\alpha -\beta (j)\right) $$
(4)

where β(j) represents the direction angle of Pi, j in cross-section. e(i) represents the magnitude of the axis variation at point Pi, j.

The corresponding constraint of the skin variations is:

$$ \forall i\le m,e(i)<{t}_{s/2} $$
(5)

After generating the variation for axis straightness, similar analysis and calculation can be applied to other shape characteristics defined.

Generation of the surface property variations V Surface

The surface property in the GPS standard matrix includes roughness, waviness, and surface defects. Surface defects are affected by respective processing technology and processing tools applied during manufacturing. Hence, such defects randomly exist due to processing technics and are difficult to predict, which are not considered here in the general SMS for assembly force rendering. While for the others, i.e., surface waviness and roughness, according to the GPS standard, the range of the wavelength λwaviness of the waviness profile is 1mm < λwaviness < 10mm and the range of the wavelength λroughness of the roughness profile is λroughness < 1mm, which indicates that the profile variations of the surface property are microscopic, and such specific variations hardly affect the macroscopic assembly force. So, instead of generating the specific variations on SMS for such surface texture variations, this work considers the macroscopic effect of the surface variations on assembly force with different parameters. More specifically:

$$ {V}_{\mathrm{Surface}}={V}_{\mathrm{Waviness}}+{V}_{\mathrm{Roughness}} $$
(6)

The distribution of surface profile variation satisfies the Gaussian distribution with a limit of (−A/2 − Rz/2, A/2 + Rz/2) [29], where A is the maximum amplitude of waviness and Rz is the largest depth of the roughness. Also, the contact of two rough surfaces can be equivalent to the contact of a rough surface and a smooth surface [30]; as shown in Fig. 5b, the range of the rough surface profile variation is (−A − Rz, A + Rz). Therefore, as long as the distance of the two mating meshes is within the range of (−A − Rz, A + Rz), its interference would satisfy the Gaussian distribution.

Fig. 5
figure 5

The illustration of the surface profile variations. a The surface profile variations on a mesh. b The equivalent contact of two rough surfaces

Step 3: integrating variations to form the SMS

As discussed in step 2, form property includes several form characteristics. Since the surface variations are supposed to satisfy all characteristics’ tolerances, in other words, the variations need to be within the range of the intersection of all characteristics’ tolerances. Therefore, the construction of final SMS starts from integrating form variations. The characteristics are used to generate the profile variations and correct the generated profile variations one by one. If the profile variations exceed the characteristic’s tolerance, the variations need to be regenerated.

After integrating the form property, the total skin profile variations of the part are integrated by the superposition of all the three variations:

$$ V={V}_{\mathrm{Dimension}}+{V}_{\mathrm{Form}}+{V}_{\mathrm{Surface}} $$
(7)

And finally, the dimensional tolerance, which is the most common variation, is applied again to satisfy the profile variations, i.e., if the profile variations exceed the dimensional tolerance threshold, they are scaled down to the range of the dimensional tolerance.

To illustrate the generated surface profile, a display widget is developed, as shown in Fig. 6. More specifically, the surface profiles are illustrated based on three mechanical assembly fit types, i.e., clearance fit, transition fit, and interference fit. Moreover, it can be seen that for the same fit type, bigger shape tolerances not only result in wider variation range of surface profile variations but also cause the profile change more drastically.

Fig. 6
figure 6

The illustration of the shaft surface profiles with different fits. a Clearance fit. b Transition fit. c Interference fit

3 The GPS-based force rendering model for virtual assembly

In general, a virtual assembly process can be divided into two stages, i.e., positioning stage and constrained assembly stage. In the positioning stage, the part is navigated to where its assembly counterpart locates and then is postured [31], while in constrained assembly stage the assembling part moves along a certain assembly direction within a constrained geometrical space. For example, for a shaft-bushing assembly, the shaft is constrained within the hole at this stage. This paper focuses on the method of assembly resistance rendering at constrained assembly stage.

3.1 The formulation of the assembly space during assembly process

When two parts are mated, due to their geometrical tolerances of the skin profile, the clearance or interference condition between the mating surfaces may be different at different locations. Hence, the concept of tolerance space (TS) is defined to describe the assembly clearance or interference variations between two mating surfaces, based on which the assembly space (AS) is defined to describe the movable space of assembling parts. For different types of fits, the distributions of TS and AS are different, which are shown in Fig. 7 respectively. For clearance fit, due to the clearance between the mating surfaces, the shaft can move in AS, whose value is equal to that of TS. However, for transition or interference fit, due to the interference between the mating surfaces, surfaces are pressed against each other and hence there is no space for the shaft to move radially in the hole; accordingly, the section of AS is a point at such situations (see the enlarged drawing in Fig. 7b and c).

Fig. 7
figure 7

The illustration of the TS and AS from cross-section view. a TS and AS for clearance fit. b TS and AS for transition fit. c TS and AS for interference fit

The radial space of TS and AS at the point Pi, j is recorded as ST(Pi, j) and SA(Pi, j) respectively (see the drawing in Fig. 7a). In calculation of ST(Pi, j), both the profile variations of the shaft and bushing need to be considered. It can be calculated as:

$$ {S}_T\left({P}_{i,j}\right)={V}_{\mathrm{bushing}}\left({P}_{i,j}\right)-{V}_{\mathrm{shaft}}\left({P}_{i,j}\right) $$
(8)

where Vshaft(Pi, j) and Vbushing(Pi, j) denote the skin profile variations of the shaft and bushing at point Pi, j respectively.

For clearance fit, as shown in Fig. 8, when the shaft is inserted by a depth of di along the axis, the AS sections are different at different cross-sections. Considering the moving space of the whole shaft, the AS of the whole shaft should be the intersection of all AS sections at this insertion depth.

Fig. 8
figure 8

The illustration of AS of the shaft

3.2 The assembly resistance model

Due to the contact of shaft and bushing, the assembly resistance at constrained assembly stage can be divided into three force components: the axial frictional resistance Fy and the radial contact resistance Fx and Fz, which are shown in Fig. 9.

Fig. 9
figure 9

The three force components of assembly resistance for shaft-bushing assembly

As discussed in Section 3.1, there may be two cases of TS between the mating surfaces, without or with interference in TS. For the second case, due to the interference between the surfaces, the influence of the interference on contact stress should also be considered. Hence, this paper proposes a novel assembly resistance model applicable for virtual assembly in these two cases.

3.2.1 The assembly resistance model without interference

For the first case, i.e., there is no interference in TS, as shown in Fig. 10; assuming the angle between the radial offset of the shaft’s axis and the x-axis is γi, ∆d is the distance between the axis of the shaft and bushing. Then the position of the shaft’s axis may be either in or outside the area of AS.

Fig. 10
figure 10

The illustration of the radial offset during assembly. a The position of shaft’s axis is within AS. b The position of shaft’s axis is out of AS

When the position of the shaft’s axis is in the area of AS, i.e., ∆d < SA(γi), it means that the shaft and the bushing are not in contact; hence, the user will not feel any resistance.

When the position of the shaft’s axis is outside the area of AS, i.e., ∆d > SA(γi), the user will feel both the radial contact and axial frictional resistances. The radial contact resistance Fx and Fz here are implemented based on the mass-spring model [32], which is widely used to calculate the contact force of two rigid bodies in force rendering. And for the axial frictional resistance Fy, it is implemented based on the Coulomb friction model due to its small amount of calculation and its wide application on calculating the friction in force rendering [33]. Therefore, all the three assembly resistance components can be calculated as follows:

$$ \left\{\begin{array}{c}{F}_x={k}_p\left({S}_A\left({\gamma}_i\right)-\Delta d\right)\cos {\gamma}_i\\ {}{F}_y=-\mu \sqrt{{\left({F}_x\right)}^2+{\left({F}_z\right)}^2}\\ {}{F}_x={k}_p\left({S}_A\left({\gamma}_i\right)-\Delta d\right)\sin {\gamma}_i\end{array}\right. $$
(9)

where kp denotes the contact stiffness of the mating parts. γi denotes the angle between the radial offset of the shaft’s axis and the x-axis; SA(γi) denotes the value of the AS at angle γi at the current insertion depth; μ denotes the coefficient of friction of the mating parts.

3.2.2 The assembly resistance model with interference

For this case, due to the interference between the two mating surfaces, the surfaces are pressed against each other. Hence, the shaft cannot move in the radial direction and the AS is zero. Therefore, a radial contact resistance is applied to limit the movement of the shaft. Such contact resistance is implemented by mass-spring model.

Due to the interference between parts, there is compressive stress between parts, and it has impact on the axial frictional resistance. Assuming that the interference depth is δ(Pi, j), which indicates the amount of interference at Pi, j. If ST(Pi, j) > 0, δ(Pi, j) is equal to zero. If ST(Pi, j) < 0, δ(Pi, j) is equal to −ST(Pi, j) in value. Since the shaft and the bushing can be abstracted as the cylinder and the thick-walled round tube respectively, the compressive stress between the parts can be analyzed according to the thick-walled cylinder theory [34]. Then the compressive stress p(Pi, j) at Pi, j due to the interference of the skin profile of the parts is:

$$ p\left({P}_{i,j}\right)=\frac{2\delta \left({P}_{i,j}\right)}{d_1}\times \frac{1}{\frac{1-{\mu}_1}{E_1}+\frac{{d_2}^2+{d_1}^2}{E_2\left({d_2}^2-{d_1}^2\right)}+\frac{\mu_2}{E_2}} $$
(10)

where d1 denotes the diameter of the shaft, and d2 denotes the outer diameter of the bushing. E1 and E2 denote Young’s modulus of the material for shaft and bushing respectively, and μ1 and μ2 denote Poisson’s ratio of the material for shaft and bushing respectively.

According to Coulomb friction model, the frictional resistance caused by the interference is as follows.

$$ {F}_y=-\mu \sum \limits_{i=1}^m\sum \limits_{j=1}^np\left({P}_{i,j}\right)\Delta s $$
(11)

where ∆s denotes the unit sampling area of the discrete meshes divided in section 2, and m and n denote the mesh amounts in axial direction and radial direction respectively.

Therefore, the algorithm for assembly resistance can be described as follows:

$$ \left\{\begin{array}{c}{F}_x=-{k}_p\Delta dcos{\gamma}_i\kern23.75em \\ {}{F}_y=-\mu \sqrt{{\left({F}_x\right)}^2+{\left({F}_Z\right)}^2}-\mu \sum \limits_{i=1}^m\sum \limits_{j=1}^n\frac{2\delta \left({P}_{i,j}\right)}{d_1}\times \frac{1}{\frac{1-{\mu}_1}{E_1}+\frac{{d_2}^2+{d_1}^2}{E_2\left({d_2}^2-{{\mathrm{d}}_1}^2\right)}+\frac{\mu_2}{E_2}}\Delta s\\ {}{F}_z=-{k}_p\Delta dsin{\gamma}_i\end{array}\right. $$
(12)

Moreover, as shown in Fig. 11a, a display widget is developed to visualize the axial resistance Fy, radial resistance Fr, and the distribution of the compressive stress during assembly, while \( {F}_r=\sqrt{\ {F_x}^2+{F_z}^2} \).

Fig. 11
figure 11

The visual display of the resistance and stress during assembly. a The display widget. b The illustration of redial resistance

In the widget, the total axial and radial resistances are illustrated with arrows, whose length changes with the value and the directions illustrate the force direction, while the compressive stress due to interference is shown with a color map.

4 Case studies

To conduct the case study, a prototype system for virtual assembly is developed based on Unity3D development platform and adopts Phantom® Desktop as the force feedback device. And the communication between the device and Unity3D is via a dynamic link library developed. At first, the user can specify the dimensional tolerance, shape tolerance, waviness, roughness, and other parameters of the parts in the parameter selection interface. And then the system will build SMS of the parts accordingly and calculate and render the assembly resistance during the course of assembly.

There are two case studies designed. Each includes an actual assembly experiment and two virtual assembly experiments with force feedback. In case study 1, comparative experiments are carried out to verify the proposed force rendering algorithm, while the second one adopts heuristic evaluation method to compare the performance of force rendering approaches.

4.1 Case study 1

Three sets of experiments are designed: real experiment (RE), virtual experiment 1 (VE1), and virtual experiment 2 (VE2). And to be comparative, the design parameters of the parts in the three sets of experiments are identical. The values are listed in Table 2. Moreover, the gravity of the shaft is 2N, the friction coefficient is 0.15, and the assembly speed is 10mm/s.

Table 2 The parameters of the experiments

Along the radial direction, the gravity of the shaft causes an offset of its axis vertically downward, which introduces a radial force upwards to balance the gravity. In the axial direction, the real-time frictional resistance is recorded for comparison.

In RE, an assembly setup is designed to measure the actual assembly resistance (Fig. 12a). As designed, the bushing is fixed, and the shaft is positioned properly first and then is inserted into the hole along the axial direction by the robot arm at 10mm/s, while at the same time a force sensor installed on the arm records the assembly resistance along the axial direction. To avoid random errors, three sets of data are recorded, and the average is taken.

Fig. 12
figure 12

The assembly setups in case study 1. a The assembly setup for RE. b The virtual assembly environment for VE1 and VE2

In VE1, the force rendering approach in literature [18] is used. The constraints are set, and a physics engine is integrated as per the approach. After setting the frictional parameters, the shaft is inserted into the bushing at the same speed.

In VE2, the force rendering approach proposed is applied. Firstly, the SMS of the parts is established. Then, the shaft is inserted into the bushing at the same speed of 10mm/s as that in VE1. The virtual environment for VE1 and VE2 is shown in Fig. 12b.

Moreover, other than the different ways of calculating assembly resistance, identical software and hardware, virtual environment, virtual parts, and collision detection algorithms are used in the two virtual experiments, based on which the axial resistance recorded in RE, VE1, and VE2 are shown in Fig. 13. Moreover, the visual display of the resistance in VE1 and VE2 during assembly is shown in Fig. 14.

Fig. 13
figure 13

The axial assembly resistance in different experiments

Fig. 14
figure 14

The visual display of the assembly resistance and compressive stress in VE1 and VE2

From the force data recorded in RE, it can be seen that the assembly resistance fluctuates between 0.348N and 1.132N due to the interference between the mating surfaces. However, in VE1, since the approach proposed in literature [18] does not consider the profile variations, so no matter what tolerance level is set, there is no interference between the shaft and bushing, as shown in Fig. 14. Hence, both the real-time axial resistance and its average are constant, as shown in Fig. 13. This indicates that the force rendering approach in VE1 can provide the force feedback, but no actual changes of the force reflected. Furthermore, the average resistance in VE1 is 0.3N while the counterpart in RE is 0.621N. Such difference is too big for users to get the real perception of the assembly resistance.

On the other hand, with the proposed approach, there is slight interference between the shaft and bushing in VE2, as shown in Fig. 14. Hence, the force recorded fluctuates between 0.360N and 1.074N. Also, the average resistance is 0.58N, which maintains close to that of RE. So, the user can feel not only the actual quantity of the assembly force but also the delicate changes of it. However, due to the randomness of the tolerances both in generating the SMS in VE2 and in the manufacturing processes of the part in RE, the trend of the curves’ fluctuations in VE2 and RE are not exactly the same. This is acceptable as the resistance during the assembly is dynamic changing with the insertion and such difference can hardly perceived by human beings in virtual assembly. Furthermore, it can be improved by building the SMS of the part with accurate surface information by measuring the part profile specifically.

4.2 Case study 2

After the objective comparison with different approaches, 10 students who are familiar with virtual reality and CAD/CAM-related fields were invited as the evaluators to conduct heuristic evaluation on the proposed approach. Moreover, before the experiment, all of them took virtual assembly operation training so as to get themselves familiar with the environmental setup. Then, each of them conducts the actual assembly by inserting the shaft into the hole, and then practice VE1 and VE2 in person successively. While VE1 and VE2 are as same as those in case study 1, except that the shaft is controlled by the users with the force device, so the insertion may not be at a constant speed. Afterwards, they are asked to evaluate the assembly force in VE1 and VE2 in two aspects by comparing with that in actual assembly.

The first evaluation aspect is about the reality of the assembly resistance. The participants scored the assembly resistance for its fidelity in VE1 and VE2 with a score range of 1–10 by comparing with the haptic perception they felt in actual assembly, while the higher the score indicates the more realistic the force is. The second aspect is about sensation of the tolerance level. More specifically, during the assembly process, the evaluators feel the assembly resistance when inserting the shaft into bushing and judge which tolerance level is of the two mating surfaces subjectively. To simplify the process, they are given two tolerance levels to choose, one is a transition fit with a slight interference (H7js6), and the other is a clearance fit (H7g6). The data collected are shown in Table 3 respectively.

Table 3 The feedback results of subjective evaluation

As seen from the feedback, for the fidelity of the assembly force, the average score of VE1 is 7.6 and 8.2 for VE2, indicating that both approaches can provide relatively real feeling of the assembly force, while the proposed approach in VE2 outweighs VE1, which provides a constant assembly force. This is due to that the SMS proposed simulates the delicate geometrical features of the parts’ profile, hence, at certain location along the insertion depth, changes of the assembly force can be rendered. While for the sense of tolerance level, the accuracy rate of right judgment on the tolerance level is 90% in VE2. Conversely, only 30% of the participants made it correctly in VE1. This is prominent to show that the force rendering model proposed has provided the operators with delicate assembly resistance changes, and hence improve the operators’ assembly perception in determining the tolerance level. This in turn verified that the force sensation provided is more realistic.

5 Conclusion

This paper presents a GPS-based virtual assembly force rendering approach. Firstly, SMS of the assembly workpieces is established according to their geometrical properties designed with GPS. And then by analyzing the tolerance space and assembly space, the force rendering model considering both radial contact resistance and axial frictional resistance is proposed. To verify the proposed approach, two comparative studies are designed, where the proposed approach is compared with the real assembly process and another virtual force rendering approach. The results have shown that the assembly resistance proposed is generally similar to that with the real assembly resistance. Moreover, it certainly outweighs the other force rendering approach in terms of the accuracy of the force and the delicate changes of the force during assembly. Although the proposed force model achieves better force rendering, its accuracy may not be as good as that with the finite element model. Therefore, it is important to further improve its accuracy. And, other than the common mating surfaces discussed in this work, specific mating surfaces such as bolt and screw connections are also widely applied in mechanical assemblies, and how to render their virtual assembly force is also under further research.