# Scattering or Pushing for Object Singulation in Cluttered Environment: Case Study with Soma Cube
## 3 Modeling, Identification and Condition for Dynamic and Quasi-Static Manipulation
### Conditions for Quasi-Static and Dynamic Manipulation  
In this section, we will analyze the conditions for both quasi-static and dynamic manipulations. The robot manipulator UR5 and Soma puzzle cube are involved for the implementation of the impulse based model. In this case, the inertia of the robot manipulator is always much greater than the mass of the soma puzzle cube. It implies that the change in the end-effector velocity of the manipulator is much smaller as compared to the change in the velocity of the soma puzzle cube. Therefore, the external impulse given in (6) can be simply expressed as  
\[\hat{\mathbf{F}}_{ext}=-(1+e)m_{a}(v_{I}-\mathbf{v}_{a}). \tag{16}\]  
The dynamic equation of the block A is described as  
\[\sum\mathbf{F}=\hat{\mathbf{F}}_{ext}-\mu m_{a}g=m_{a}\dot{\mathbf{v}_{a}} \tag{17}\]  
where \(\mathbf{F}_{ext}\) and \(\mu m_{a}g\) denotes the external impulsive force exerted on the block A by the robot and the friction force between the block and the ground. Integrating (17) in very short period of time, it becomes  
\[\hat{\mathbf{F}}_{ext}=m_{a}\dot{\mathbf{v}_{a}}-\mu m_{a}g\xrightarrow{\int\cdot dt} \Delta\mathbf{v}_{a}{=m_{a}}^{-1}\hat{\mathbf{F}}_{ext} \tag{18}\]  
Substituting (16) into (18) yields  
\[\Delta\mathbf{v}_{a}=(1+e)(\mathbf{v}_{I}-\mathbf{v}_{a}). \tag{19}\]  
Since \(\Delta\mathbf{v}_{a}=\mathbf{v}_{a}{}^{\prime}-\mathbf{v}_{a}\), the general form of the block A's velocity vector after collision can be written as follows.  
\[\mathbf{v}^{\prime}_{a}(t_{o})=-e\mathbf{v}_{a}(t_{o})+(1+e)\mathbf{v}_{I}. \tag{20}\]  
where \(\mathbf{v}_{a}(t_{o})\) represents the initial velocity of the block A which is zero in this case at time \(t_{o}\). \(\mathbf{v}_{a}{}^{\prime}(t_{o})\) is the velocity of the block A just after collision with the robot manipulator.  
Since the motion of the block A just after impact is governed by (17), the velocity of the block A after collision with the manipulator can be described as  
\[\mathbf{v}^{\prime}_{a}(t){=}\mathbf{v}^{\prime}_{a}(t_{o})-\frac{\mathbf{v}^{\prime}_{a} (t)}{\left|\mathbf{v}^{\prime}_{a}(t)\right|}\mu_{a}gt+1/m_{a}\int_{t_{o}}^{t}\mathbf{ F}_{ext}dt \tag{21}\]  
by integrating (17) in time. Here, \(\mathbf{F}_{ext}\) becomes zero when the robot loses contact with the block A.  
As a result of collision, the robot and the block A can be separated or still stick each other. We can interpret this behavior analytically.  
It is noted that pushing and scattering are associated with the relative velocities of the robot and blocks after collision. If the robot and the block A stick together, it can be considered as pushing. Then, the following equation will hold the robot pushes the block A,  
\[\mathbf{v}^{\prime}_{I}=\mathbf{v}^{\prime}_{a}(t_{o}), \tag{22}\]  
where \(\mathbf{v}^{\prime}_{I}\) is the velocity vector of the end effector of robot just after collision.  
The above equality implies that the contact point velocity of the robot is equal to the velocity of the Soma block.  
In case of scattering, the following equation will hold the block A moves faster than the robot  
\[\mathbf{v}^{\prime}_{I}<\mathbf{v}^{\prime}_{a}(t_{o}), \tag{23}\]To know the final position of the block A in case of scattering, we need to know the dynamic parameters of the block A, coefficient of friction and coefficient of restitution. On the other hand, in case of pushing we only need to know the motion of manipulator to know the motion of the block A and this motion is independent of the dynamics of the block A.